void QXmppDeliveryReceiptsManager::sendReceipt(const QString &jid, const QString &id) { QXmppMessage msg; msg.setTo(jid); QXmppElement elem; elem.setTagName("received"); elem.setAttribute("xmlns", ns_message_receipts); elem.setAttribute("id", id); msg.setExtensions(QXmppElementList(elem)); client()->sendPacket(msg); }
void QXmppCarbonManager::setCarbonsEnabled(bool enabled) { if(m_carbonsEnabled == enabled) return; m_carbonsEnabled = enabled; if(client()) { QXmppIq iq(QXmppIq::Set); QXmppElement carbonselement; carbonselement.setTagName(m_carbonsEnabled ? "enable" : "disable"); carbonselement.setAttribute("xmlns", ns_carbons); iq.setExtensions(QXmppElementList() << carbonselement); client()->sendPacket(iq); } }
void AdHocCommandServer::SendCompleted (const QDomElement& sourceElem, const QString& node, const QString& sessionId) { QXmppElement elem; elem.setTagName ("command"); elem.setAttribute ("xmlns", NsCommands); elem.setAttribute ("node", node); elem.setAttribute ("status", "completed"); elem.setAttribute ("sessionid", sessionId); QXmppIq iq; iq.setTo (sourceElem.attribute ("from")); iq.setId (sourceElem.attribute ("id")); iq.setType (QXmppIq::Result); iq.setExtensions (QXmppElementList () << elem); Conn_->GetClient ()->sendPacket (iq); }
bool LegacyEntityTimeExt::handleStanza (const QDomElement& elem) { if (elem.tagName () != "iq" || elem.attribute ("type") != "get") return false; if (elem.firstChildElement ("query").namespaceURI () != NsLegacyEntityTime) return false; const QString& from = elem.attribute ("from"); if (from.isEmpty ()) return false; const QDateTime& date = QDateTime::currentDateTime ().toUTC (); QXmppElement utcElem; utcElem.setTagName ("utc"); utcElem.setValue (date.toString ("yyyyMMddThh:mm:ss")); const QString& displayStr = "Your client/bot sucks since it " "uses the long-deprecated XEP-0090. Upgrade your code. " "Ah, and, regarding your question, it's " + QDateTime::currentDateTime ().toString () + " here"; QXmppElement displayElem; displayElem.setTagName ("display"); displayElem.setValue (displayStr); QXmppElement queryElem; queryElem.setTagName ("query"); queryElem.setAttribute ("xmlns", NsLegacyEntityTime); queryElem.appendChild (utcElem); queryElem.appendChild (displayElem); QXmppIq iq (QXmppIq::Result); iq.setTo (from); iq.setId (elem.attribute ("id")); iq.setExtensions (QXmppElementList () << queryElem); client ()->sendPacket (iq); return true; }