summaryrefslogtreecommitdiff
path: root/src/discord/discord.cpp
diff options
context:
space:
mode:
authorouwou <26526779+ouwou@users.noreply.github.com>2022-01-20 02:45:28 -0500
committerouwou <26526779+ouwou@users.noreply.github.com>2022-01-20 02:45:28 -0500
commitb6b215ee6f08e4e7d6d987ffd676cebeb8638a62 (patch)
treeac7ef5263dc5cc9dcb0f868a1ffcae465895aa62 /src/discord/discord.cpp
parentd7f3ee9f983458bdaf504c5813adc93bed1404e4 (diff)
downloadabaddon-portaudio-b6b215ee6f08e4e7d6d987ffd676cebeb8638a62.tar.gz
abaddon-portaudio-b6b215ee6f08e4e7d6d987ffd676cebeb8638a62.zip
add mark as unread/toggle mute for threads
Diffstat (limited to 'src/discord/discord.cpp')
-rw-r--r--src/discord/discord.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/discord/discord.cpp b/src/discord/discord.cpp
index ab821a8..8d1cf12 100644
--- a/src/discord/discord.cpp
+++ b/src/discord/discord.cpp
@@ -983,6 +983,24 @@ void DiscordClient::UnmuteGuild(Snowflake id, sigc::slot<void(DiscordError code)
});
}
+void DiscordClient::MuteThread(Snowflake id, sigc::slot<void(DiscordError code)> callback) {
+ m_http.MakePATCH("/channels/" + std::to_string(id) + "/thread-members/@me/settings", R"({"muted":true})", [this, callback](const http::response_type &response) {
+ if (CheckCode(response))
+ callback(DiscordError::NONE);
+ else
+ callback(GetCodeFromResponse(response));
+ });
+}
+
+void DiscordClient::UnmuteThread(Snowflake id, sigc::slot<void(DiscordError code)> callback) {
+ m_http.MakePATCH("/channels/" + std::to_string(id) + "/thread-members/@me/settings", R"({"muted":false})", [this, callback](const http::response_type &response) {
+ if (CheckCode(response))
+ callback(DiscordError::NONE);
+ else
+ callback(GetCodeFromResponse(response));
+ });
+}
+
void DiscordClient::FetchPinned(Snowflake id, sigc::slot<void(std::vector<Message>, DiscordError code)> callback) {
// return from db if we know the pins have already been requested
if (m_channels_pinned_requested.find(id) != m_channels_pinned_requested.end()) {