From 719d49ba7d2484e2ff569c2e6a6203fe52dc40ee Mon Sep 17 00:00:00 2001 From: George Hazan Date: Fri, 25 Nov 2022 16:32:33 +0300 Subject: fix for applying user devices list to groupchat messages --- protocols/WhatsApp/src/message.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'protocols') diff --git a/protocols/WhatsApp/src/message.cpp b/protocols/WhatsApp/src/message.cpp index eef12963f1..2903d40f49 100644 --- a/protocols/WhatsApp/src/message.cpp +++ b/protocols/WhatsApp/src/message.cpp @@ -461,9 +461,16 @@ int WhatsAppProto::SendTextMessage(const char *jid, const char *pszMsg) void WhatsAppProto::FinishTask(WASendTask *pTask) { - if (auto *pUser = FindUser(pTask->payLoad.getAttr("to"))) - for (auto &it : pUser->arDevices) + if (auto *pUser = FindUser(pTask->payLoad.getAttr("to"))) { + if (pUser->bIsGroupChat) { + for (auto &it : pUser->si->getUserList()) + if (auto *pChatUser = FindUser(T2Utf(it->pszUID))) + for (auto &cc: pChatUser->arDevices) + pTask->arDest.insert(new WAJid(*cc)); + } + else for (auto &it : pUser->arDevices) pTask->arDest.insert(new WAJid(*it)); + } SendTask(pTask); } -- cgit v1.2.3