From: pchero Date: Wed, 9 Dec 2015 23:23:59 +0000 (+0100) Subject: AMI: Fixed OriginateResponse message X-Git-Tag: 11.22.0-rc1~56^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b9f9ffb3517448eb780b4cad665bd4c9fa56c3b3;p=thirdparty%2Fasterisk.git AMI: Fixed OriginateResponse message When asterisk sends the OriginateResponse event message, it doesn't send the correct information for origination to an application. ASTERISK-25624 #close Change-Id: I8fb6bc533d7f812c66a24cc2b0354ddb09d0f640 --- diff --git a/main/manager.c b/main/manager.c index 19c00b35bd..e588c219f6 100644 --- a/main/manager.c +++ b/main/manager.c @@ -499,6 +499,8 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$") + + @@ -4146,22 +4148,43 @@ static void *fast_originate(void *data) } /* Tell the manager what happened with the channel */ chans[0] = chan; - ast_manager_event_multichan(EVENT_FLAG_CALL, "OriginateResponse", chan ? 1 : 0, chans, - "%s" - "Response: %s\r\n" - "Channel: %s\r\n" - "Context: %s\r\n" - "Exten: %s\r\n" - "Reason: %d\r\n" - "Uniqueid: %s\r\n" - "CallerIDNum: %s\r\n" - "CallerIDName: %s\r\n", - in->idtext, res ? "Failure" : "Success", - chan ? ast_channel_name(chan) : requested_channel, in->context, in->exten, reason, - chan ? ast_channel_uniqueid(chan) : "", - S_OR(in->cid_num, ""), - S_OR(in->cid_name, "") - ); + if (!ast_strlen_zero(in->app)) { + ast_manager_event_multichan(EVENT_FLAG_CALL, "OriginateResponse", chan ? 1 : 0, chans, + "%s" + "Response: %s\r\n" + "Channel: %s\r\n" + "Application: %s\r\n" + "Data: %s\r\n" + "Reason: %d\r\n" + "Uniqueid: %s\r\n" + "CallerIDNum: %s\r\n" + "CallerIDName: %s\r\n", + in->idtext, res ? "Failure" : "Success", + chan ? ast_channel_name(chan) : requested_channel, + in->app, in->appdata, reason, + chan ? ast_channel_uniqueid(chan) : "", + S_OR(in->cid_num, ""), + S_OR(in->cid_name, "") + ); + } else { + ast_manager_event_multichan(EVENT_FLAG_CALL, "OriginateResponse", chan ? 1 : 0, chans, + "%s" + "Response: %s\r\n" + "Channel: %s\r\n" + "Context: %s\r\n" + "Exten: %s\r\n" + "Reason: %d\r\n" + "Uniqueid: %s\r\n" + "CallerIDNum: %s\r\n" + "CallerIDName: %s\r\n", + in->idtext, res ? "Failure" : "Success", + chan ? ast_channel_name(chan) : requested_channel, + in->context, in->exten, reason, + chan ? ast_channel_uniqueid(chan) : "", + S_OR(in->cid_num, ""), + S_OR(in->cid_name, "") + ); + } /* Locked by ast_pbx_outgoing_exten or ast_pbx_outgoing_app */ if (chan) {