From 2d902e728fd2cd9aac723f3d416d2d1b9ad403e1 Mon Sep 17 00:00:00 2001 From: Kinsey Moore Date: Fri, 6 Sep 2013 19:28:16 +0000 Subject: [PATCH] Fix Jabber/XMPP distributed MWI The mailbox and context are swapped on the receiving end for all users of Jabber and XMPP distributed MWI in Asterisk 1.8 and all more recent versions. This swaps those values to be correct when publishing to the internal event system from Jabber/XMPP distributed MWI state. (closes issue ASTERISK-22435) Reported by: abelbeck Tested by: Michael Keuter Patches: asterisk-1.8-res_jabber-aji_handle_pubsub_event.patch uploaded by abelbeck asterisk-11-res_xmpp-xmpp_pubsub_handle_event.patch uploaded by abelbeck ........ Merged revisions 398523 from http://svn.asterisk.org/svn/asterisk/branches/1.8 git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/11@398558 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- res/res_jabber.c | 4 ++-- res/res_xmpp.c | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/res/res_jabber.c b/res/res_jabber.c index 0cdbc9b215..1c7a2349ef 100644 --- a/res/res_jabber.c +++ b/res/res_jabber.c @@ -3356,8 +3356,8 @@ static int aji_handle_pubsub_event(void *data, ikspak *pak) sscanf(iks_find_cdata(item_content, "OLDMSGS"), "%10d", &oldmsgs); sscanf(iks_find_cdata(item_content, "NEWMSGS"), "%10d", &newmsgs); if (!(event = ast_event_new(AST_EVENT_MWI, AST_EVENT_IE_MAILBOX, - AST_EVENT_IE_PLTYPE_STR, item_id, AST_EVENT_IE_CONTEXT, - AST_EVENT_IE_PLTYPE_STR, context, AST_EVENT_IE_OLDMSGS, + AST_EVENT_IE_PLTYPE_STR, context, AST_EVENT_IE_CONTEXT, + AST_EVENT_IE_PLTYPE_STR, item_id, AST_EVENT_IE_OLDMSGS, AST_EVENT_IE_PLTYPE_UINT, oldmsgs, AST_EVENT_IE_NEWMSGS, AST_EVENT_IE_PLTYPE_UINT, newmsgs, AST_EVENT_IE_EID, AST_EVENT_IE_PLTYPE_RAW, &pubsub_eid, sizeof(pubsub_eid), AST_EVENT_IE_END))) { diff --git a/res/res_xmpp.c b/res/res_xmpp.c index 8f0f8b5a14..30e2c4059a 100644 --- a/res/res_xmpp.c +++ b/res/res_xmpp.c @@ -1345,8 +1345,8 @@ static int xmpp_pubsub_handle_event(void *data, ikspak *pak) sscanf(iks_find_cdata(item_content, "OLDMSGS"), "%10d", &oldmsgs); sscanf(iks_find_cdata(item_content, "NEWMSGS"), "%10d", &newmsgs); if (!(event = ast_event_new(AST_EVENT_MWI, AST_EVENT_IE_MAILBOX, - AST_EVENT_IE_PLTYPE_STR, item_id, AST_EVENT_IE_CONTEXT, - AST_EVENT_IE_PLTYPE_STR, context, AST_EVENT_IE_OLDMSGS, + AST_EVENT_IE_PLTYPE_STR, context, AST_EVENT_IE_CONTEXT, + AST_EVENT_IE_PLTYPE_STR, item_id, AST_EVENT_IE_OLDMSGS, AST_EVENT_IE_PLTYPE_UINT, oldmsgs, AST_EVENT_IE_NEWMSGS, AST_EVENT_IE_PLTYPE_UINT, newmsgs, AST_EVENT_IE_EID, AST_EVENT_IE_PLTYPE_RAW, &pubsub_eid, sizeof(pubsub_eid), AST_EVENT_IE_END))) { -- 2.47.2