summaryrefslogtreecommitdiff
path: root/protocols/SkypeWeb/src/skype_messages.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'protocols/SkypeWeb/src/skype_messages.cpp')
-rw-r--r--protocols/SkypeWeb/src/skype_messages.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/protocols/SkypeWeb/src/skype_messages.cpp b/protocols/SkypeWeb/src/skype_messages.cpp
index d4fdd4c373..71bd4aea31 100644
--- a/protocols/SkypeWeb/src/skype_messages.cpp
+++ b/protocols/SkypeWeb/src/skype_messages.cpp
@@ -224,8 +224,16 @@ void CSkypeProto::OnMarkRead(MCONTACT hContact, MEVENT hDbEvent)
{
if (IsOnline()) {
DB::EventInfo dbei(hDbEvent, false);
- if (dbei && dbei.szId)
- PushRequest(new MarkMessageReadRequest(getId(hContact), _atoi64(dbei.szId)));
+ if (dbei && dbei.szId) {
+ auto *pReq = new AsyncHttpRequest(REQUEST_PUT, HOST_DEFAULT, "/users/ME/conversations/" + mir_urlEncode(getId(hContact)) + "/properties?name=consumptionhorizon");
+ auto msgTimestamp = _atoi64(dbei.szId);
+
+ JSONNode node(JSON_NODE);
+ node << CHAR_PARAM("consumptionhorizon", CMStringA(::FORMAT, "%lld;%lld;%lld", msgTimestamp, msgTimestamp, msgTimestamp));
+ pReq->m_szParam = node.write().c_str();
+
+ PushRequest(pReq);
+ }
}
}