diff options
| author | Linus Jahn <lnj@kaidan.im> | 2022-05-06 17:08:57 +0200 |
|---|---|---|
| committer | Linus Jahn <lnj@kaidan.im> | 2022-05-20 17:28:43 +0200 |
| commit | cb8029c7644f3d31503ccea7b14f546589c7c326 (patch) | |
| tree | 579d4086079640166a99b354baa9a7bbf083d2da /src/client/QXmppMessageReceiptManager.cpp | |
| parent | 62e2248c30d72ff9c8e2a9acc265d8c39f3c83ca (diff) | |
| download | qxmpp-cb8029c7644f3d31503ccea7b14f546589c7c326.tar.gz | |
MessageReceiptHandler: Implement MessageHandler
Diffstat (limited to 'src/client/QXmppMessageReceiptManager.cpp')
| -rw-r--r-- | src/client/QXmppMessageReceiptManager.cpp | 14 |
1 files changed, 4 insertions, 10 deletions
diff --git a/src/client/QXmppMessageReceiptManager.cpp b/src/client/QXmppMessageReceiptManager.cpp index 23066bd9..b8e5c90e 100644 --- a/src/client/QXmppMessageReceiptManager.cpp +++ b/src/client/QXmppMessageReceiptManager.cpp @@ -26,17 +26,11 @@ QStringList QXmppMessageReceiptManager::discoveryFeatures() const return QStringList(ns_message_receipts); } -bool QXmppMessageReceiptManager::handleStanza(const QDomElement &stanza) +bool QXmppMessageReceiptManager::handleMessage(const QXmppMessage &message) { - if (stanza.tagName() != "message") + if (message.type() == QXmppMessage::Error) { return false; - - QXmppMessage message; - message.parse(stanza); - - if (message.type() == QXmppMessage::Error) - return false; - + } // Handle receipts and cancel any further processing. if (!message.receiptId().isEmpty()) { // Buggy clients also mark carbon messages as received; to avoid this @@ -52,7 +46,7 @@ bool QXmppMessageReceiptManager::handleStanza(const QDomElement &stanza) QXmppMessage receipt; receipt.setTo(message.from()); receipt.setReceiptId(message.id()); - client()->sendPacket(receipt); + client()->reply(std::move(receipt), message.e2eeMetadata()); } // Continue processing. |
