Event reference#

EventID#

enum daf.events.EventID(value)#

Enum of all available events.

Global events (get_global_event_ctrl()) have a g_ prefix on their name. Other events are controlled by account bound daf.events.EventController.

Valid values are as follows:

g_daf_startup = <EventID.g_daf_startup: 0>#
g_daf_shutdown = <EventID.g_daf_shutdown: 1>#
g_trace = <EventID.g_trace: 2>#
g_account_expired = <EventID.g_account_expired: 3>#
account_update = <EventID.account_update: 4>#
message_ready = <EventID.message_ready: 5>#
message_removed = <EventID.message_removed: 6>#
message_added = <EventID.message_added: 7>#
message_update = <EventID.message_update: 8>#
server_removed = <EventID.server_removed: 9>#
server_added = <EventID.server_added: 10>#
server_update = <EventID.server_update: 11>#
auto_guild_start_join = <EventID.auto_guild_start_join: 12>#
discord_member_join = <EventID.discord_member_join: 13>#
discord_invite_delete = <EventID.discord_invite_delete: 14>#

get_global_event_ctrl#

daf.events.get_global_event_ctrl() EventController | None#

Returns the global event controller

g_daf_startup#

async daf.events.g_daf_startup()#

Event that is emitted after DAF has started.

g_daf_shutdown#

async daf.events.g_daf_shutdown()#

Event that is emitted after DAF has shutdown.

g_trace#

async daf.events.g_trace(level, message: str)#

Event that is emitted when a message has been printed with trace().

Parameters:
  • level (TraceLEVELS) – The trace detail.

  • message (str) – The message traced.

g_account_expired#

async daf.events.g_account_expired(account)#

Event that is emitted when an account has it’s token invalidated and is being forcefully removed.

Parameters:

account (daf.client.ACCOUNT) – The account updated

account_update#

async daf.events.account_update(account)#

Event that is emitted before an account update.

Parameters:

account (daf.client.ACCOUNT) – The account updated

message_ready#

async daf.events.message_ready(guild, message)#

Event that is emitted when the message is ready to be sent.

Parameters:

message_removed#

async daf.events.message_removed(guild, message)#

Event that is emitted before the message is be removed.

Parameters:

message_added#

async daf.events.message_added(guild, message)#

Event that is emitted before the message is added.

Parameters:

message_update#

async daf.events.message_update(guild, message)#

Event that is emitted before the message is updated.

Parameters:

server_removed#

async daf.events.server_removed(server)#

Event that is emitted before the server is be removed.

Parameters:

server (daf.guild.GUILD | daf.guild.USER | daf.guild.AutoGUILD) – The server removed.

server_added#

async daf.events.server_added(server)#

Event that is emitted before the server is added.

Parameters:

server (daf.guild.GUILD | daf.guild.USER | daf.guild.AutoGUILD) – The server added.

server_update#

async daf.events.server_update(server)#

Event that is emitted before the server is updated.

Parameters:

server (daf.guild.GUILD | daf.guild.USER | daf.guild.AutoGUILD) – The server updated.

auto_guild_start_join#

async daf.events.auto_guild_start_join(auto_guild)#

Event that is emitted when the join for new server should start.

Parameters:

auto_guild (daf.guild.AutoGUILD) – The AutoGUILD responsible for the new server join.

EventListener#

class daf.events.EventListener(fnc: Callable, predicate: Callable[[T], bool] | None = None)#

EventController#

class daf.events.EventController#

Responsible for controlling the event loop, listening and emitting events.

start()#

Starts the event loop.

critical()#

Asynchronous Context manager (async with statement), that prevents any events from being processed until this critical section is exited.

stop()#

Stops event loop asynchronously

add_listener(event: EventID, fnc: Callable, predicate: Callable[[Any], bool] | None = None)#

Registers the function fnc as an event listener for event.

Parameters:
  • event (EventID) – The event of listener to add.

  • fnc (Callable) – The function listener to add.

remove_listener(event: EventID, fnc: Callable)#

Remove the function fnc from the list of listeners for event.

Parameters:
  • event (EventID) – The event of listener to remove.

  • fnc (Callable) – The function listener to remove.

Raises:
  • KeyError – The event doesn’t have any listeners.

  • ValueError – Provided function is not a listener.

listen(event: EventID)#

Decorator used to register the function as an event listener.

Parameters:

event (EventID) – The event that needs to occur for the function to be called.

emit(event: EventID, *args, **kwargs) Future#

New in version 3.0.

Emits an event by calling all the registered listeners.

Returns:

A future object that can be awaited. You can use this to wait for the event to actually be processed. The result of the future will always be None.

Return type:

asyncio.Future

Raises:

TypeError – Arguments provided don’t match all the listener parameters.

async event_loop()#

Event loop task.