David P
2019-Dec-27 16:01 UTC
[asterisk-users] Handling a non-responsive peer after it answers
I'm looking for a way of detecting in my dialplan when a peer becomes non-responsive after answering. It seems that Asterisk knows when the peer becomes non-responsive because it logs "Remote UNIX connection disconnected" around the same time, and it seems that if there is no following "Remote UNIX connection" within a short time, then the peer can be considered non-responsive. Is there a way to configure a handler for this state? We use v14.7.6 and we dial the peer this way: same => n,Set(CHANNEL(hangup_handler_push)=${CONTEXT},handleHangupByCaller,1(args)) same => n,Dial(${AddressToReachPeer},2,b(${CONTEXT}^afterDialingPeerLogIpOfCb^1(${UUID}^${StartEpoch}))) same => n,Goto(handle${DIALSTATUS},1) Cheers, David -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.digium.com/pipermail/asterisk-users/attachments/20191227/31f33f9d/attachment.html>
Joshua C. Colp
2019-Dec-27 18:33 UTC
[asterisk-users] Handling a non-responsive peer after it answers
On Fri, Dec 27, 2019 at 12:02 PM David P <davidswalkabout at gmail.com> wrote:> > I'm looking for a way of detecting in my dialplan when a peer becomes > non-responsive after answering. It seems that Asterisk knows when the peer > becomes non-responsive because it logs "Remote UNIX connection > disconnected" around the same time, and it seems that > if there is no following "Remote UNIX connection" within a short time, > then the peer can be considered non-responsive. Is there a way to configure > a handler for this state? > > We use v14.7.6 and we dial the peer this way: > > same => > n,Set(CHANNEL(hangup_handler_push)=${CONTEXT},handleHangupByCaller,1(args)) > same => > n,Dial(${AddressToReachPeer},2,b(${CONTEXT}^afterDialingPeerLogIpOfCb^1(${UUID}^${StartEpoch}))) > same => n,Goto(handle${DIALSTATUS},1) >The referenced message is not related to the call at all. It occurs when an "asterisk -r" console disconnects. As for hanging up a call when the remote goes away that depends on the channel driver. For SIP both chan_sip and chan_pjsip provide session timers which use SIP messages to determine if the call is no longer valid, or RTP timeout which hangs up the call if media is not flowing for a period of time. These are configured in the respective channel driver configuration file. -- Joshua C. Colp Asterisk Technical Lead Sangoma Technologies Check us out at www.sangoma.com and www.asterisk.org -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.digium.com/pipermail/asterisk-users/attachments/20191227/ea5cdf34/attachment.html>
Apparently Analagous Threads
- Handling a non-responsive peer after it answers
- How to execute priorities following a caller hangup in a successful Dial?
- How to execute priorities following a caller hangup in a successful Dial?
- Looking for sample hangup_handler_pop and _wipe using vars
- Answered time on channel