]> 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:29:10 +0000 (12:29 -0400)
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 d44171cf8fd636cc105a34023f62a1be456b7741..52ae65cc7bf7ed03659333f771d24640e4f93bf0 100644 (file)
@@ -163,6 +163,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);