comparison mcabber/mcabber/xmpp.c @ 1869:fe385f2cfb93

Partial update for XEP-0184 v1.1 Added 'id' attribute to <received/> element
author Mikael Berthe <mikael@lilotux.net>
date Sun, 04 Apr 2010 10:31:38 +0200
parents e45d13074721
children 7043542b3565
comparison
equal deleted inserted replaced
1868:fdb2f88b908b 1869:fe385f2cfb93
1270 if (from && (body || subject)) 1270 if (from && (body || subject))
1271 gotmessage(mstype, from, body, enc, subject, timestamp, 1271 gotmessage(mstype, from, body, enc, subject, timestamp,
1272 lm_message_node_find_xmlns(m->node, NS_SIGNED)); 1272 lm_message_node_find_xmlns(m->node, NS_SIGNED));
1273 // Report received message if message receipt was requested 1273 // Report received message if message receipt was requested
1274 if (lm_message_node_get_child(m->node, "request")) { 1274 if (lm_message_node_get_child(m->node, "request")) {
1275 const gchar *mid;
1276 LmMessageNode *y;
1275 LmMessage *rcvd = lm_message_new(from, LM_MESSAGE_TYPE_MESSAGE); 1277 LmMessage *rcvd = lm_message_new(from, LM_MESSAGE_TYPE_MESSAGE);
1276 lm_message_node_set_attribute(rcvd->node, "id", lm_message_get_id(m)); 1278 mid = lm_message_get_id(m);
1277 lm_message_node_set_attribute 1279 // For backward compatibility (XEP184 < v.1.1):
1278 (lm_message_node_add_child(rcvd->node, "received", NULL), 1280 lm_message_node_set_attribute(rcvd->node, "id", mid);
1279 "xmlns", NS_RECEIPTS); 1281 y = lm_message_node_add_child(rcvd->node, "received", NULL);
1282 lm_message_node_set_attribute(y, "xmlns", NS_RECEIPTS);
1283 lm_message_node_set_attribute(y, "id", mid);
1280 lm_connection_send(connection, rcvd, NULL); 1284 lm_connection_send(connection, rcvd, NULL);
1281 lm_message_unref(rcvd); 1285 lm_message_unref(rcvd);
1282 } 1286 }
1283 1287
1284 if (from) { 1288 if (from) {