summaryrefslogtreecommitdiff
path: root/protocols/Teams/src/teams_http.cpp
diff options
context:
space:
mode:
authorGeorge Hazan <george.hazan@gmail.com>2025-04-11 18:10:09 +0300
committerGeorge Hazan <george.hazan@gmail.com>2025-04-11 18:10:09 +0300
commit17ec7bcbd5cb500f73c81c0275c0200b9bf4a2f1 (patch)
tree016391b6ef9d0b307f03db759217120046b11326 /protocols/Teams/src/teams_http.cpp
parent9bd79fa9cbff4a517d171c58e8c2ad2d4fa7a02c (diff)
fixes #4963 (Teams: невозможно изменить статус после подключения)
Diffstat (limited to 'protocols/Teams/src/teams_http.cpp')
-rw-r--r--protocols/Teams/src/teams_http.cpp18
1 files changed, 16 insertions, 2 deletions
diff --git a/protocols/Teams/src/teams_http.cpp b/protocols/Teams/src/teams_http.cpp
index a24b44bfbc..66043ed5ad 100644
--- a/protocols/Teams/src/teams_http.cpp
+++ b/protocols/Teams/src/teams_http.cpp
@@ -26,11 +26,12 @@ AsyncHttpRequest::AsyncHttpRequest(int type, SkypeHost host, LPCSTR url, MTHttpR
case HOST_CONTACTS: m_szUrl = "contacts.skype.com/contacts/v2"; break;
case HOST_GRAPH: m_szUrl = "skypegraph.skype.com"; break;
case HOST_LOGIN: m_szUrl = "login.microsoftonline.com"; break;
- case HOST_TEAMS: m_szUrl = "teams.live.com"; break;
+ case HOST_TEAMS: m_szUrl = TEAMS_BASE_HOST; break;
+ case HOST_PRESENCE: m_szUrl = "presence." TEAMS_BASE_HOST "/v1"; break;
case HOST_DEFAULT:
AddHeader("MS-IC3-Product", "Sfl");
- m_szUrl = "msgapi.teams.live.com/v1";
+ m_szUrl = "msgapi." TEAMS_BASE_HOST "/v1";
break;
}
@@ -111,6 +112,8 @@ MHttpResponse* CTeamsProto::DoSend(AsyncHttpRequest *pReq)
}
}
+ pReq->AddHeader("X-MS-Client-Consumer-Type", "teams4life");
+
switch (pReq->m_host) {
case HOST_API:
case HOST_PEOPLE:
@@ -129,6 +132,17 @@ MHttpResponse* CTeamsProto::DoSend(AsyncHttpRequest *pReq)
pReq->AddHeader("Accept", "application/json");
break;
+ case HOST_PRESENCE:
+ if (m_szSkypeToken)
+ pReq->AddHeader("X-Skypetoken", m_szSkypeToken);
+
+ pReq->AddHeader("Accept", "application/json");
+ pReq->AddHeader("x-ms-client-user-agent", "Teams-V2-Desktop");
+ pReq->AddHeader("x-ms-correlation-id", "1");
+ pReq->AddHeader("x-ms-client-version", TEAMS_CLIENTINFO_VERSION);
+ pReq->AddHeader("x-ms-endpoint-id", m_szEndpoint);
+ break;
+
case HOST_LOGIN:
#ifndef _DEBUG
pReq->flags |= NLHRF_NODUMP;