Add listener helpers (#69)
Some checks failed
Deploy MkDocs / deploy (push) Has been cancelled
Some checks failed
Deploy MkDocs / deploy (push) Has been cancelled
This commit is contained in:
parent
e693f00abe
commit
7c7bebc95a
@ -539,6 +539,20 @@ class Client:
|
||||
|
||||
return decorator
|
||||
|
||||
def add_listener(
|
||||
self, event_name: str, coro: Callable[..., Awaitable[None]]
|
||||
) -> None:
|
||||
"""Register ``coro`` to listen for ``event_name``."""
|
||||
|
||||
self._event_dispatcher.register(event_name, coro)
|
||||
|
||||
def remove_listener(
|
||||
self, event_name: str, coro: Callable[..., Awaitable[None]]
|
||||
) -> None:
|
||||
"""Remove ``coro`` from ``event_name`` listeners."""
|
||||
|
||||
self._event_dispatcher.unregister(event_name, coro)
|
||||
|
||||
async def _process_message_for_commands(self, message: "Message") -> None:
|
||||
"""Internal listener to process messages for commands."""
|
||||
# Make sure message object is valid and not from a bot (optional, common check)
|
||||
|
@ -1,7 +1,7 @@
|
||||
# Events
|
||||
|
||||
Disagreement dispatches Gateway events to asynchronous callbacks. Handlers can be registered with `@client.event` or `client.on_event`.
|
||||
Listeners may be removed later using `EventDispatcher.unregister(event_name, coro)`.
|
||||
Disagreement dispatches Gateway events to asynchronous callbacks. Handlers can be registered with `@client.event`, `client.on_event`, or `client.add_listener(event_name, coro)`.
|
||||
Listeners may be removed later using `client.remove_listener(event_name, coro)` or `EventDispatcher.unregister(event_name, coro)`.
|
||||
|
||||
## Raw Events
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user