diff options
author | ouwou <26526779+ouwou@users.noreply.github.com> | 2021-03-14 17:59:52 -0500 |
---|---|---|
committer | ouwou <26526779+ouwou@users.noreply.github.com> | 2021-03-14 17:59:52 -0500 |
commit | 927acfb9fe9232ae05cdae165393a60e9419d30f (patch) | |
tree | bec06902567ef7d925eada38c482b6d831c61948 /discord/discord.cpp | |
parent | ba6b8b27734ed92928fa5aace9b9291dabd4f7c1 (diff) | |
download | abaddon-portaudio-927acfb9fe9232ae05cdae165393a60e9419d30f.tar.gz abaddon-portaudio-927acfb9fe9232ae05cdae165393a60e9419d30f.zip |
add ability to create replies
Diffstat (limited to 'discord/discord.cpp')
-rw-r--r-- | discord/discord.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/discord/discord.cpp b/discord/discord.cpp index 4fa1a63..1461a74 100644 --- a/discord/discord.cpp +++ b/discord/discord.cpp @@ -345,12 +345,18 @@ bool DiscordClient::CanManageMember(Snowflake guild_id, Snowflake actor, Snowfla return actor_highest->Position > target_highest->Position; } -void DiscordClient::SendChatMessage(std::string content, Snowflake channel) { +void DiscordClient::SendChatMessage(const std::string &content, Snowflake channel) { // @([^@#]{1,32})#(\\d{4}) CreateMessageObject obj; obj.Content = content; - nlohmann::json j = obj; - m_http.MakePOST("/channels/" + std::to_string(channel) + "/messages", j.dump(), [](auto) {}); + m_http.MakePOST("/channels/" + std::to_string(channel) + "/messages", nlohmann::json(obj).dump(), [](auto &) {}); +} + +void DiscordClient::SendChatMessage(const std::string &content, Snowflake channel, Snowflake referenced_message) { + CreateMessageObject obj; + obj.Content = content; + obj.MessageReference.emplace().MessageID = referenced_message; + m_http.MakePOST("/channels/" + std::to_string(channel) + "/messages", nlohmann::json(obj).dump(), [](auto &) {}); } void DiscordClient::DeleteMessage(Snowflake channel_id, Snowflake id) { |