discord_gleam/event_handler
Types
pub type EventHandler =
fn(bot.Bot, Packet) -> Nil
The supported packets
pub type Packet {
MessagePacket(message.MessagePacket)
MessageUpdatePacket(message_update.MessageUpdatePacket)
ReadyPacket(ready.ReadyPacket)
MessageDeletePacket(message_delete.MessageDeletePacket)
InteractionCreatePacket(
interaction_create.InteractionCreatePacket,
)
ChannelCreatePacket(channel_create.ChannelCreatePacket)
ChannelDeletePacket(channel_delete.ChannelDeletePacket)
ChannelUpdatePacket(channel_update.ChannelUpdatePacket)
UnknownPacket(generic.GenericPacket)
}
Constructors
-
MessagePacket(message.MessagePacket)
MESSAGE_CREATE
event -
MessageUpdatePacket(message_update.MessageUpdatePacket)
MESSAGE_UPDATE
event -
ReadyPacket(ready.ReadyPacket)
READY
event -
MessageDeletePacket(message_delete.MessageDeletePacket)
MESSAGE_DELETE
event -
InteractionCreatePacket( interaction_create.InteractionCreatePacket, )
INTERACTION_CREATE
event -
ChannelCreatePacket(channel_create.ChannelCreatePacket)
CHANNEL_CREATE
event -
ChannelDeletePacket(channel_delete.ChannelDeletePacket)
CHANNEL_DELETE
event -
ChannelUpdatePacket(channel_update.ChannelUpdatePacket)
CHANNEL_UPDATE
event -
UnknownPacket(generic.GenericPacket)
When we receive a packet that we don’t know how to handle
Functions
pub fn handle_event(
bot: Bot,
msg: String,
handlers: List(fn(Bot, Packet) -> Nil),
state_uset: USet(#(String, String)),
) -> Nil
Handle an event from the Discord API, using a set of event handlers.