How to set auto hangup channels where silents is more than 20s

Hi,

I have dialplan which works but sometimes didnt send BYE to operator and my calls hangs more then thousands of seconds. It is possible to kill al channels where is no talk ?

yes
there are 2 ways to do it
Session-timers and rtp timeout
I recommend using both at the same time

rtp_keepalive=20
rtp_timeout=30
rtp_timeout_hold=300
timers_sess_expires=360
timers=always

https://wiki.asterisk.org/wiki/display/AST/Asterisk+18+Configuration_res_pjsip#Asterisk18Configuration_res_pjsip-endpoint_timers
https://wiki.asterisk.org/wiki/display/AST/Asterisk+18+Configuration_res_pjsip#Asterisk18Configuration_res_pjsip-endpoint_rtp_timeout

also in the console “hangup request CHANNEL”
https://wiki.asterisk.org/wiki/display/AST/Creating+and+Manipulating+Channels+from+the+CLI

It should be doing automatically so this answer is not for that issue but good to know

That options is for situations when asterisk stop receiving RTP but silent is still RTP but it is silent

yes the first 2 option will automatic hangup dead calls
session-timers will every 360/2 seconds check if the other end of the call is still active
and the rtp timeout hangup if the remote end stop sending sound
if remote end acknowledge session-timer and are sending RTP, there is no way of detecting that the call is dead
but for both ends of the call to do that is rare
also to to hangup un answered calls (dead during ringing)

https://wiki.asterisk.org/wiki/display/AST/Asterisk+18+Application_Dial

Dial(Technology/Resource&[Technology2/Resource2[&...]],[timeout,[options,[URL]]]])
S( x ) - Hang up the call x seconds after the called party has answered the call

I recommend using a time out of at least 180sec and hangup calls that are longer than 6h
Dial(PJSIP/XXX,180,S(21600))

Perhaps we should see some debugs as to why a call isnt tearing down properly.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.