Files
mattf fffcb49a80 Created stable release branch of 2.11
git-svn-id: svn://192.168.202.10@2292 3d104415-ff17-0410-8863-d5cf3c621b8a
2015-03-02 14:35:39 +00:00

42 lines
1.3 KiB
Diff

diff -Naur asterisk-1.8.19.0-vici-beta.old/channels/chan_sip.c asterisk-1.8.19.0-vici-beta/channels/chan_sip.c
--- asterisk-1.8.19.0-vici-beta.old/channels/chan_sip.c 2012-12-05 12:43:37.000000000 -0500
+++ asterisk-1.8.19.0-vici-beta/channels/chan_sip.c 2013-04-17 13:54:35.000000000 -0400
@@ -21462,6 +21462,20 @@
if (owner) {
const char *rp = NULL, *rh = NULL;
+ /* Send manager event for sip hangup cause code */
+ if ((resp >= 400) && (resp <= 900))
+ manager_event(
+ EVENT_FLAG_SYSTEM,
+ "SIP-Hangup-Cause",
+ "ChannelDriver: SIP\r\nChannel: %s\r\nCallerIDName: %s\r\nUniqueid: %s\r\nResult: %i|%s\r\n",
+ p->owner->name,
+ S_COR(p->owner->caller.id.name.valid, p->owner->caller.id.name.str, "<unknown>"),
+ p->owner->uniqueid,
+ resp,
+ rest
+ );
+
+
owner->hangupcause = 0;
if (ast_test_flag(&p->flags[1], SIP_PAGE2_Q850_REASON) && (rh = get_header(req, "Reason"))) {
rh = ast_skip_blanks(rh);
@@ -21477,6 +21491,16 @@
if (!owner->hangupcause)
owner->hangupcause = hangup_sip2cause(resp);
+ } else {
+ /* Send manager event for sip hangup cause code */
+ manager_event(
+ EVENT_FLAG_SYSTEM,
+ "SIP-Response",
+ "ChannelDriver: SIP\r\nMethod: %s\r\nResult: %i|%s\r\n",
+ sip_methods[sipmethod].text,
+ resp,
+ rest
+ );
}
if (p->socket.type == SIP_TRANSPORT_UDP) {