discord_add_intents - add events to listen to#
-
void discord_add_intents(struct discord *client, enum discord_gateway_intents code)#
Subscribe to Discord Events.
- Parameters:
client – the client created with discord_init()
code – the intents opcode, can be set as a bitmask operation
Example#
discord_event_scheduler_t scheduler(struct discord *client,
struct sized_buffer *data,
enum discord_gateway_events event)
{
switch (event) {
case DISCORD_GATEWAY_EVENTS_MESSAGE_CREATE:
case DISCORD_GATEWAY_EVENTS_MESSAGE_UPDATE: {
struct discord_message msg;
discord_message_from_json(data->start, data->size, &msg);
struct discord_create_message_params params = {
.content = "A message has been created or updated"
};
discord_create_message(client, msg.channel_id, ¶ms, NULL);
discord_message_cleanup(&msg);
} return DISCORD_EVENT_IGNORE;
default:
return DISCORD_EVENT_MAIN_THREAD;
}
}
int main(void)
{
struct discord *client = discord_init(BOT_TOKEN);
discord_add_intents(client, DISCORD_GATEWAY_GUILD_MESSAGES
| DISCORD_GATEWAY_DIRECT_MESSAGES);
discord_set_event_scheduler(client, &scheduler);
discord_run(client);
discord_cleanup(client);
}