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)
  InteractionCreate(interaction_create.InteractionCreate)
  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

  • InteractionCreate(interaction_create.InteractionCreate)

    INTERACTION_CREATE 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.

Search Document