Add an optional `final` parameter (defaulting to True) to the `send_message` method in the `Bot` class, and pass it through to the underlying `self.rpc.send_message` call. This allows callers to control whether the message is marked as final when sent via RPC.
- Add missing `await super().on_join(channel_uid)` and `await super().on_leave(channel_uid)` calls to ensure parent class lifecycle hooks execute
- Update `on_own_message` method signature to include `channel_uid` parameter, aligning with the expected interface
- Remove try-except wrapper around ws.send_json in RPC.method to let exceptions propagate naturally
- Move asyncio.sleep(1) inside the except block in Bot.run to avoid delay on successful iterations
- Add raise statement in Bot message handling to propagate AttributeError instead of silently logging
Replace two silent `break` statements with explicit `Exception` raises when WebSocket
closes or encounters an error, and remove a stray debug print statement. This ensures
the caller is notified of connection failures instead of silently exiting the receive loop.
Replace erroneous `f{data.channel_uid}` and similar f-string expressions with correct `{data.channel_uid}` syntax in on_join, on_leave, on_ping, on_mention, and on_message methods. Also fix hardcoded password placeholder in bot instantiation from "xxxxxx" to "example".
- Fix incorrect f-string prefix 'f{' to '{' in README example bot's on_message debug print
- Replace hardcoded 'python bot.py' with generic '[your-script].py' placeholder in run instructions
- Remove license field from pyproject.toml metadata configuration