tadpole/gateway/opcode

Gateway opcodes, with a safe slot for opcodes Discord adds later: from_int never fails, unknown values land in UnknownOpcode(value) and are ignored by the shard. Pure data; see tadpole/gateway/frame for the envelopes that carry these.

Types

pub type Opcode {
  Dispatch
  Heartbeat
  Identify
  PresenceUpdate
  VoiceStateUpdate
  Opcode5
  Resume
  Reconnect
  RequestGuildMembers
  InvalidSession
  Hello
  HeartbeatAck
  UnknownOpcode(Int)
}

Constructors

  • Dispatch

    0 — receive. A dispatched event; payload in d, name in t.

  • Heartbeat

    1 — send/receive. Heartbeat; payload is the last sequence number.

  • Identify

    2 — send. Authenticate and subscribe to intents.

  • PresenceUpdate

    3 — send. Update presence status.

  • VoiceStateUpdate

    4 — send. Join/move/disconnect voice channels.

  • Opcode5

    5 — reserved, unused.

  • Resume

    6 — send. Resume a dropped session.

  • Reconnect

    7 — receive. Discord asks us to reconnect; resume afterwards.

  • RequestGuildMembers

    8 — send. Request guild members.

  • InvalidSession

    9 — receive. Invalid session; d says whether resume is possible.

  • Hello

    10 — receive. First payload after connect; carries heartbeat interval.

  • HeartbeatAck

    11 — receive. Heartbeat acknowledgment.

  • UnknownOpcode(Int)

Values

pub fn from_int(value: Int) -> Opcode

Never fails: unknown opcodes land in UnknownOpcode instead.

pub fn name(opcode: Opcode) -> String
pub fn to_int(opcode: Opcode) -> Int
Search Document