AMI: Fixed OriginateResponse message

When the asterisk sending OriginateResponse message,
it doesn't set the "Uniqueid".
And it didn't support correct response message for
Application originate.

ASTERISK-25624 #close

Change-Id: I26f54f677ccfb0b7cfd4967a844a1657fd69b74d
changes/05/1805/7
pchero 10 years ago
parent 14b41115e3
commit fe8011cc50

@ -651,6 +651,8 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
<parameter name="Channel"/>
<parameter name="Context"/>
<parameter name="Exten"/>
<parameter name="Application"/>
<parameter name="Data"/>
<parameter name="Reason"/>
<parameter name="Uniqueid"/>
<parameter name="CallerIDNum"/>
@ -4969,22 +4971,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) : "<null>",
S_OR(in->cid_num, "<unknown>"),
S_OR(in->cid_name, "<unknown>")
);
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->channelid, "<unknown>"),
S_OR(in->cid_num, "<unknown>"),
S_OR(in->cid_name, "<unknown>")
);
} 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->channelid, "<unknown>"),
S_OR(in->cid_num, "<unknown>"),
S_OR(in->cid_name, "<unknown>")
);
}
/* Locked and ref'd by ast_pbx_outgoing_exten or ast_pbx_outgoing_app */
if (chan) {

Loading…
Cancel
Save