diff options
author | ouwou <26526779+ouwou@users.noreply.github.com> | 2020-10-13 02:05:59 -0400 |
---|---|---|
committer | ouwou <26526779+ouwou@users.noreply.github.com> | 2020-10-13 02:05:59 -0400 |
commit | c17842c16f10f55f2f0923e94033a482ef98838e (patch) | |
tree | 58888e4401fa23b2ea231e591367cd1c1a8cf73b /discord/discord.cpp | |
parent | f29cfc69519593017986f3b969ad62f9b8672375 (diff) | |
download | abaddon-portaudio-c17842c16f10f55f2f0923e94033a482ef98838e.tar.gz abaddon-portaudio-c17842c16f10f55f2f0923e94033a482ef98838e.zip |
handle GUILD_MEMBER_UPDATE
Diffstat (limited to 'discord/discord.cpp')
-rw-r--r-- | discord/discord.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/discord/discord.cpp b/discord/discord.cpp index 725f76f..73b03a3 100644 --- a/discord/discord.cpp +++ b/discord/discord.cpp @@ -516,6 +516,9 @@ void DiscordClient::HandleGatewayMessage(std::string str) { case GatewayEvent::MESSAGE_DELETE_BULK: { HandleGatewayMessageDeleteBulk(m); } break; + case GatewayEvent::GUILD_MEMBER_UPDATE: { + HandleGatewayGuildMemberUpdate(m); + } break; } } break; default: @@ -591,6 +594,12 @@ void DiscordClient::HandleGatewayMessageDeleteBulk(const GatewayMessage &msg) { } } +void DiscordClient::HandleGatewayGuildMemberUpdate(const GatewayMessage &msg) { + GuildMemberUpdateMessage data = msg.Data; + auto member = GuildMember::from_update_json(msg.Data); // meh + m_store.SetGuildMemberData(data.GuildID, data.User.ID, member); +} + void DiscordClient::HandleGatewayMessageUpdate(const GatewayMessage &msg) { Snowflake id = msg.Data.at("id"); @@ -718,6 +727,7 @@ void DiscordClient::LoadEventMap() { m_event_map["GUILD_CREATE"] = GatewayEvent::GUILD_CREATE; m_event_map["GUILD_DELETE"] = GatewayEvent::GUILD_DELETE; m_event_map["MESSAGE_DELETE_BULK"] = GatewayEvent::MESSAGE_DELETE_BULK; + m_event_map["GUILD_MEMBER_UPDATE"] = GatewayEvent::GUILD_MEMBER_UPDATE; } DiscordClient::type_signal_gateway_ready DiscordClient::signal_gateway_ready() { |