]> git.ipfire.org Git - thirdparty/asterisk.git/commitdiff
res_pjsip_sdp_rtp: Set hangup cause for RTP timeouts
authorSean Bright <sean.bright@gmail.com>
Fri, 24 Mar 2017 16:29:10 +0000 (12:29 -0400)
committerSean Bright <sean.bright@gmail.com>
Fri, 24 Mar 2017 16:31:34 +0000 (10:31 -0600)
chan_sip sets the hangup cause code to AST_CAUSE_REQUESTED_CHAN_UNAVAIL
(44) when a channel is hung up due to an RTP timeout. So do the same
when it happens with PJSIP for parity.

Change-Id: I3546ebbde6460c22a27c9da1bf321711b5961ab8

res/res_pjsip_sdp_rtp.c

index 3d292120695e451e90210232b445ce0ee2548661..1552b362aeb996913908e438aec8c14a0e713b76 100644 (file)
@@ -164,6 +164,10 @@ static int rtp_check_timeout(const void *data)
        ast_log(LOG_NOTICE, "Disconnecting channel '%s' for lack of RTP activity in %d seconds\n",
                ast_channel_name(chan), elapsed);
 
+       ast_channel_lock(chan);
+       ast_channel_hangupcause_set(chan, AST_CAUSE_REQUESTED_CHAN_UNAVAIL);
+       ast_channel_unlock(chan);
+
        ast_softhangup(chan, AST_SOFTHANGUP_DEV);
        ast_channel_unref(chan);