|
Orca
A bot framework that is easy to reason about, easy to debug, and easy to use.
|
The handle used for establishing a Discord Gateway connection via WebSockets. More...
#include <discord-internal.h>

Public Attributes | |
| struct websockets * | ws |
| the websockets handle that connects to Discord | |
| struct { | |
| bool enable | |
| will attempt reconnecting if true | |
| int attempt | |
| current reconnect attempt (resets to 0 when succesful) | |
| int threshold | |
| max amount of reconnects before giving up | |
| } | reconnect |
| bool | is_resumable |
| will attempt to resume session if connection shutsdowns | |
| bool | is_ready |
| can start sending/receiving additional events to discord | |
| bool | shutdown |
| if true shutdown websockets connection as soon as possible | |
| struct discord_gateway_identify * | id |
| this info sent expecting a connection authentication | |
| char | session_id [512] |
| the session id (for resuming lost connections) | |
| struct { | |
| enum discord_gateway_opcodes opcode | |
| field 'op' | |
| int seq_number | |
| field 's' | |
| char event_name [64] | |
| field 't' | |
| struct sized_buffer event_data | |
| field 'd' | |
| } | payload |
| struct { | |
| u64_unix_ms_t interval_ms | |
| fixed interval between heartbeats | |
| u64_unix_ms_t tstamp | |
| start pulse timestamp in milliseconds | |
| } | hbeat |
| struct discord_session | session |
| on-going Discord Gateway session | |
| struct sized_buffer | prefix |
| the prefix expected before every command More... | |
| struct discord_gateway_cmd_cbs on_default_cmd * | on_cmd |
| user's command/callback pair and amount of callback pairs More... | |
| size_t | num_cmd |
| struct { | |
| idle_cb on_idle | |
| triggers on every event loop iteration | |
| event_raw_cb on_event_raw | |
| triggers for every event if set, receive its raw JSON string | |
| idle_cb on_ready | |
| triggers when connection first establishes | |
| guild_role_cb on_guild_role_create | |
| triggers when a guild role is created | |
| guild_role_cb on_guild_role_update | |
| triggers when a guild role is updated | |
| guild_role_delete_cb on_guild_role_delete | |
| triggers when a guild role is deleted | |
| guild_member_cb on_guild_member_add | |
| triggers when a guild member joins a guild | |
| guild_member_remove_cb on_guild_member_remove | |
| triggers when a guild member is removed from a guild | |
| guild_member_cb on_guild_member_update | |
| triggers when a guild member status is updated (ex: receive role) | |
| guild_ban_cb on_guild_ban_add | |
| triggers when a ban occurs | |
| guild_ban_cb on_guild_ban_remove | |
| triggers when a ban is removed | |
| channel_cb on_channel_create | |
| triggers when a channel is created | |
| channel_cb on_channel_update | |
| triggers when a channel is updated | |
| channel_cb on_channel_delete | |
| triggers when a channel is deleted | |
| channel_pins_update_cb on_channel_pins_update | |
| triggers when a channel pinned messages updates | |
| message_cb on_message_create | |
| triggers when a message is created | |
| sb_message_cb sb_on_message_create | |
| message_cb on_message_update | |
| trigger when a message is updated | |
| sb_message_cb sb_on_message_update | |
| message_delete_cb on_message_delete | |
| triggers when a message is deleted | |
| message_delete_bulk_cb on_message_delete_bulk | |
| triggers when a bulk of messages is deleted | |
| message_reaction_add_cb on_message_reaction_add | |
| triggers when a reaction is added to a message | |
| message_reaction_remove_cb on_message_reaction_remove | |
| triggers when a reaction is removed from a message | |
| message_reaction_remove_all_cb on_message_reaction_remove_all | |
| triggers when all reactions are removed from a message | |
| message_reaction_remove_emoji_cb on_message_reaction_remove_emoji | |
| triggers when all occurences of a specific reaction is removed from a message | |
| voice_state_update_cb on_voice_state_update | |
| triggers when a voice state is updated | |
| voice_server_update_cb on_voice_server_update | |
| triggers when a voice server is updated | |
| } | cbs |
| enum discord_event_handling_mode(* | blocking_event_handler )(void *cxt) |
| int | ping_ms |
| latency between client and websockets server, calculated by the interval between HEARTBEAT and HEARTBEAT_ACK | |
| pthread_mutex_t | lock |
| struct discord_user * | bot |
| the bot user structure | |
| struct sized_buffer | sb_bot |
| struct discord * | p_client |
| pointer to client this struct is part of | |
The handle used for establishing a Discord Gateway connection via WebSockets.
| struct discord_gateway_cmd_cbs on_default_cmd* discord_gateway::on_cmd |
user's command/callback pair and amount of callback pairs
| struct sized_buffer discord_gateway::prefix |
the prefix expected before every command
| struct sized_buffer discord_gateway::sb_bot |
| sb_message_cb discord_gateway::sb_on_message_create |
| sb_message_cb discord_gateway::sb_on_message_update |
1.8.17