Events
How to use events
discorb uses event driven programming. You can register event handlers with Client#on. Alternatively, you can use Client#once to register a one-time event handler.
client.on :message do |event|
puts event..content
end
This example will print the content of every message received.
Event reference
Client events
event_receive(event_name, data)
Fires when a event is received.
Parameter | Type | Description |
---|---|---|
event_name |
Symbol | The name of the event. |
data |
Hash | The data of the event. |
ready(task)
Fires when the client is ready.
resumed(task)
Fires when the client is resumed connection.
Guild events
guild_join(guild)
Fires when client joins a guild.
Parameter | Type | Description |
---|---|---|
guild |
Discorb::Guild | The guild that was joined. |
guild_available(guild)
Fires when a guild becomes available.
Parameter | Type | Description |
---|---|---|
guild |
Discorb::Guild | The guild that became available. |
guild_update(before, after)
Fires when client updates a guild.
Parameter | Type | Description |
---|---|---|
before |
Discorb::Guild | The guild before the update. |
after |
Discorb::Guild | The guild after the update. |
guild_leave(guild)
Fires when client leaves a guild.
Parameter | Type | Description |
---|---|---|
guild |
Discorb::Guild | The guild that was left. |
guild_destroy(guild)
Fires when guild is destroyed.
Parameter | Type | Description |
---|---|---|
guild |
Discorb::Guild | The guild that was destroyed. |
guild_integrations_update(guild)
Fires when guild integrations are updated.
Parameter | Type | Description |
---|---|---|
guild |
Discorb::Guild | The guild that integrations were updated for. |
guild_ban_add(guild, user)
Fires when a user is banned from a guild.
Parameter | Type | Description |
---|---|---|
guild |
Discorb::Guild | The guild that the user was banned from. |
user |
Discorb::User | The user that was banned. |
guild_ban_remove(guild, user)
Fires when a user is unbanned from a guild.
Parameter | Type | Description |
---|---|---|
guild |
Discorb::Guild | The guild that the user was unbanned from. |
user |
Discorb::User | The user that was unbanned. |
Channel events
channel_create(channel)
Fires when a channel is created.
Parameter | Type | Description |
---|---|---|
channel |
Discorb::Channel | The channel that was created. |
channel_update(before, after)
Fires when a channel is updated.
Parameter | Type | Description |
---|---|---|
before |
Discorb::Channel | The channel before the update. |
after |
Discorb::Channel | The channel after the update. |
channel_delete(channel)
Fires when a channel is deleted.
Parameter | Type | Description |
---|---|---|
channel |
Discorb::Channel | The channel that was deleted. |
webhooks_update(event)
Fires when a webhook is updated.
Parameter | Type | Description |
---|---|---|
event |
Discorb::WebhooksUpdateEvent | The webhook update event. |
thread_new(thread)
Fires when a thread is created.
Parameter | Type | Description |
---|---|---|
thread |
Discorb::ThreadChannel | The thread that was created. |
thread_join(thread)
Fires when client joins a thread.
Parameter | Type | Description |
---|---|---|
thread |
Discorb::ThreadChannel | The thread that was joined. |
thread_delete(thread)
Fires when a thread is deleted.
Parameter | Type | Description |
---|---|---|
thread |
Discorb::ThreadChannel | The thread that was deleted. |
thread_update(before, after)
Fires when a thread is updated.
Parameter | Type | Description |
---|---|---|
before |
Discorb::ThreadChannel | The thread before the update. |
after |
Discorb::ThreadChannel | The thread after the update. |
thread_members_update(thread, added, removed)
Fires when a thread's members are updated.
Parameter | Type | Description |
---|---|---|
thread |
Discorb::ThreadChannel | The thread that the members were updated for. |
added |
Array<ThreadChannel::Member> | An array of Discorb::ThreadChannel::Member objects that were added to the thread. |
removed |
Array<ThreadChannel::Member> | An array of Discorb::ThreadChannel::Member objects that were removed from the thread. |
thread_member_update(before, after)
Fires when a thread member is updated.
Parameter | Type | Description |
---|---|---|
thread |
Discorb::ThreadChannel | The thread that the member was updated for. |
before |
Discorb::ThreadChannel::Member | The thread member before the update. |
after |
Discorb::ThreadChannel::Member | The thread member after the update. |
Integration events
integration_create(integration)
Fires when a guild integration is created.
Parameter | Type | Description |
---|---|---|
integration |
Discorb::Integration | The created integration. |
integration_update(before, after)
Fires when a guild integration is updated.
Parameter | Type | Description |
---|---|---|
before |
Discorb::Integration | The integration before the update. |
after |
Discorb::Integration | The integration after the update. |
integration_delete(integration)
Fires when a guild integration is deleted.
Parameter | Type | Description |
---|---|---|
integration |
Discorb::Integration | The deleted integration. |
Message events
message(message)
Fires when a message is created.
Parameter | Type | Description |
---|---|---|
message |
Discorb::Message | The created message. |
message_update(event)
Fires when a message is updated.
Parameter | Type | Description |
---|---|---|
event |
Discorb::Gateway::MessageUpdateEvent | The message after the update. |
message_delete(message, channel, guild)
Fires when a message is deleted.
Parameter | Type | Description |
---|---|---|
message |
Discorb::Message | The deleted message. |
channel |
Discorb::Channel | The channel the message was deleted from. |
guild |
?Discorb::Guild | The guild the message was deleted from. |
Note
This will fire when cached messages are deleted.
message_delete_id(message_id, channel, guild)
Fires when a message is deleted. Not like #message_delete this will fire even message is not cached.
Parameter | Type | Description |
---|---|---|
message_id |
Discorb::Snowflake | The deleted message ID. |
channel |
Discorb::Channel | The channel the message was deleted from. |
guild |
?Discorb::Guild | The guild the message was deleted from. |
message_delete_bulk(messages)
Fires when a bulk of messages are deleted.
Parameter | Type | Description |
---|---|---|
messages |
Array<Discorb::Message, Discorb::Gateway::UnknownDeleteBulkMessage> | The deleted messages. |
message_pin_update(event)
Fires when a message is pinned or unpinned.
Parameter | Type | Description |
---|---|---|
event |
Discorb::Gateway::MessagePinUpdateEvent | The event object. |
typing_start(event)
Fires when a user starts typing.
Parameter | Type | Description |
---|---|---|
event |
Discorb::Gateway::TypingStartEvent | The event object. |
Reaction events
reaction_add(event)
Fires when a reaction is added to a message.
Parameter | Type | Description |
---|---|---|
event |
Discorb::Gateway::ReactionEvent | The event object. |
reaction_remove(event)
Fires when someone removes a reaction from a message.
Parameter | Type | Description |
---|---|---|
event |
Discorb::Gateway::ReactionEvent | The event object. |
reaction_remove_all(event)
Fires when all reactions are removed from a message.
Parameter | Type | Description |
---|---|---|
event |
Discorb::Gateway::ReactionRemoveAllEvent | The event object. |
reaction_remove_emoji(event)
Fires when a reaction is removed from a message.
Parameter | Type | Description |
---|---|---|
event |
Discorb::Gateway::ReactionRemoveEmojiEvent | The event object. |
Role events
role_create(role)
Fires when a role is created.
Parameter | Type | Description |
---|---|---|
role |
Discorb::Role | The created role. |
role_update(before, after)
Fires when a role is updated.
Parameter | Type | Description |
---|---|---|
before |
Discorb::Role | The role before the update. |
after |
Discorb::Role | The role after the update. |
role_remove(role)
Fires when a role is deleted.
Parameter | Type | Description |
---|---|---|
role |
Discorb::Role | The deleted role. |
Member events
Note
These events requires the guild_members
intent.
member_add(member)
Fires when a member joins a guild.
Parameter | Type | Description |
---|---|---|
member |
Discorb::Member | The member that joined. |
member_update(before, after)
Fires when a member is updated.
Parameter | Type | Description |
---|---|---|
before |
Discorb::Member | The member before the update. |
after |
Discorb::Member | The member after the update. |
member_remove(member)
Fires when a member is removed from a guild.
Parameter | Type | Description |
---|---|---|
member |
Discorb::Member | The member that left. |
Role events
role_create(role)
Fires when a role is created.
Parameter | Type | Description |
---|---|---|
role |
Discorb::Role | The created role. |
role_update(before, after)
Fires when a role is updated.
Parameter | Type | Description |
---|---|---|
before |
Discorb::Role | The role before the update. |
after |
Discorb::Role | The role after the update. |
role_remove(role)
Fires when a role is deleted.
Parameter | Type | Description |
---|---|---|
role |
Discorb::Role | The deleted role. |
Invite events
invite_create(invite)
Fires when a invite is created.
Parameter | Type | Description |
---|---|---|
invite |
Discorb::Invite | The created invite. |
invite_delete(invite)
Fires when a invite is deleted.
Parameter | Type | Description |
---|---|---|
invite |
Discorb::Invite | The deleted invite. |
Interaction events
button_click(interaction)
Fires when a button is clicked.
Parameter | Type | Description |
---|---|---|
interaction |
Discorb::MessageComponentInteraction::Button | The interaction object. |
select_menu_select(interaction)
Fires when a select menu is selected.
Parameter | Type | Description |
---|---|---|
interaction |
Discorb::MessageComponentInteraction::SelectMenu | The interaction object. |
Voice events
It's too big, so they're documented in Voice Events
Low-level events
guild_create(guild)
Fires when GUILD_CREATE
is received.
Parameter | Type | Description |
---|---|---|
guild |
Discorb::Guild | The guild of the event. |
guild_delete(guild)
Fires when GUILD_DELETE
is received.
Parameter | Type | Description |
---|---|---|
guild |
Discorb::Guild | The guild of the event. |
thread_create(thread)
Fires when THREAD_CREATE
is received.
Parameter | Type | Description |
---|---|---|
thread |
Discorb::ThreadChannel | The thread of the event. |