diff options
author | ouwou <26526779+ouwou@users.noreply.github.com> | 2020-09-21 18:47:34 -0400 |
---|---|---|
committer | ouwou <26526779+ouwou@users.noreply.github.com> | 2020-09-21 18:47:34 -0400 |
commit | 3b4edbfa16861b5013663396e1af827ba889e9df (patch) | |
tree | 51686baf5997c32a3e3aac0aa20368c404f6f3f1 /discord/discord.hpp | |
parent | 23b32f8de957204597308f2c1823d5e89f632610 (diff) | |
download | abaddon-portaudio-3b4edbfa16861b5013663396e1af827ba889e9df.tar.gz abaddon-portaudio-3b4edbfa16861b5013663396e1af827ba889e9df.zip |
join/leave guild
Diffstat (limited to 'discord/discord.hpp')
-rw-r--r-- | discord/discord.hpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/discord/discord.hpp b/discord/discord.hpp index 93f5527..cda3854 100644 --- a/discord/discord.hpp +++ b/discord/discord.hpp @@ -68,6 +68,7 @@ public: std::set<Snowflake> GetMessagesForChannel(Snowflake id) const; std::set<Snowflake> GetPrivateChannels() const; + void FetchInviteData(std::string code, std::function<void(Invite)> cb, std::function<void(bool)> err); void UpdateSettingsGuildPositions(const std::vector<Snowflake> &pos); void FetchMessagesInChannel(Snowflake id, std::function<void(const std::vector<Snowflake> &)> cb); void FetchMessagesInChannelBefore(Snowflake channel_id, Snowflake before_id, std::function<void(const std::vector<Snowflake> &)> cb); @@ -83,6 +84,8 @@ public: void DeleteMessage(Snowflake channel_id, Snowflake id); void EditMessage(Snowflake channel_id, Snowflake id, std::string content); void SendLazyLoad(Snowflake id); + void JoinGuild(std::string code); + void LeaveGuild(Snowflake id); void UpdateToken(std::string token); @@ -91,6 +94,9 @@ private: std::vector<uint8_t> m_compressed_buf; std::vector<uint8_t> m_decompress_buf; z_stream m_zstream; + + void ProcessNewGuild(Guild &guild); + void HandleGatewayMessageRaw(std::string str); void HandleGatewayMessage(std::string str); void HandleGatewayReady(const GatewayMessage &msg); @@ -98,6 +104,8 @@ private: void HandleGatewayMessageDelete(const GatewayMessage &msg); void HandleGatewayMessageUpdate(const GatewayMessage &msg); void HandleGatewayGuildMemberListUpdate(const GatewayMessage &msg); + void HandleGatewayGuildCreate(const GatewayMessage &msg); + void HandleGatewayGuildDelete(const GatewayMessage &msg); void HeartbeatThread(); void SendIdentify(); @@ -137,6 +145,8 @@ public: typedef sigc::signal<void, Snowflake, Snowflake> type_signal_message_delete; typedef sigc::signal<void, Snowflake, Snowflake> type_signal_message_update; typedef sigc::signal<void, Snowflake> type_signal_guild_member_list_update; + typedef sigc::signal<void, Snowflake> type_signal_guild_create; + typedef sigc::signal<void, Snowflake> type_signal_guild_delete; type_signal_gateway_ready signal_gateway_ready(); type_signal_channel_list_refresh signal_channel_list_refresh(); @@ -144,6 +154,8 @@ public: type_signal_message_delete signal_message_delete(); type_signal_message_update signal_message_update(); type_signal_guild_member_list_update signal_guild_member_list_update(); + type_signal_guild_create signal_guild_create(); + type_signal_guild_delete signal_guild_delete(); protected: type_signal_gateway_ready m_signal_gateway_ready; @@ -152,4 +164,6 @@ protected: type_signal_message_delete m_signal_message_delete; type_signal_message_update m_signal_message_update; type_signal_guild_member_list_update m_signal_guild_member_list_update; + type_signal_guild_create m_signal_guild_create; + type_signal_guild_delete m_signal_guild_delete; }; |