diff options
author | George Hazan <ghazan@miranda.im> | 2017-01-11 15:28:56 +0300 |
---|---|---|
committer | George Hazan <ghazan@miranda.im> | 2017-01-11 15:29:06 +0300 |
commit | 499aee4b2b43b2835a4fb13410cd195fb5a4311a (patch) | |
tree | 2bb70f2b64a96b31ebbb32cec1d37e4b4465bc5c /protocols/Discord/src/server.cpp | |
parent | 16fe45e4297e335f76719fcade05999a45a85349 (diff) |
message acks: read confirmations
Diffstat (limited to 'protocols/Discord/src/server.cpp')
-rw-r--r-- | protocols/Discord/src/server.cpp | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/protocols/Discord/src/server.cpp b/protocols/Discord/src/server.cpp index 82b6113dfc..270127a904 100644 --- a/protocols/Discord/src/server.cpp +++ b/protocols/Discord/src/server.cpp @@ -241,7 +241,7 @@ void CDiscordProto::OnReceiveGuilds(NETLIBHTTPREQUEST *pReply, AsyncHttpRequest* ///////////////////////////////////////////////////////////////////////////////////////// -void CDiscordProto::OnReceiveMessageAck(NETLIBHTTPREQUEST *pReply, AsyncHttpRequest *pReq) +void CDiscordProto::OnReceiveMessage(NETLIBHTTPREQUEST *pReply, AsyncHttpRequest *pReq) { MCONTACT hContact = (MCONTACT)pReq->pUserInfo; @@ -262,6 +262,25 @@ void CDiscordProto::OnReceiveMessageAck(NETLIBHTTPREQUEST *pReply, AsyncHttpRequ ///////////////////////////////////////////////////////////////////////////////////////// +void CDiscordProto::OnReceiveMessageAck(NETLIBHTTPREQUEST *pReply, AsyncHttpRequest*) +{ + if (pReply->resultCode != 200) + return; + + JSONNode root = JSONNode::parse(pReply->pData); + if (!root) + return; + + CMStringW wszToken(root["token"].as_mstring()); + if (!wszToken.IsEmpty()) { + JSONNode props; props.set_name("properties"); + root << CHAR_PARAM("event", "ack_messages") << props; + Push(new AsyncHttpRequest(this, REQUEST_POST, "/track", NULL, &root)); + } +} + +///////////////////////////////////////////////////////////////////////////////////////// + void CDiscordProto::OnReceiveToken(NETLIBHTTPREQUEST *pReply, AsyncHttpRequest*) { if (pReply->resultCode != 200) { |