Solution to terminate silent/inactive calls on FreePBX

We want to terminate if they don’t have voice activity for some period of time

the only option i found is to use AMI RPC , it’s function TALK_DETECT and ChannelTalkingStop/ChannelTalkingStart events generated.

possible course of action is

  • -enable TALK_DETECT on the system so that all new channels will have it enabled
  • -periodically scan list of opened channels
  • -for every channel in both directions check if the last event for the channel is ChannelTalkingStop
  • -if the time passed from ChannelTalkingStop is >600/1200 seconds ( and there were no ChannelTalkingStop) , terminate the channel

Did anybody implement something similar ? Please help.

I am not seeing a lot of forum posts with TALK_DETECT here, but there are several in the Asterisk forum. You might find some consults there.

https://community.asterisk.org/search?q=TALK_DETECT

Not sure where in the call you want to implement this, but you might want to take a look at BackgroundDetect()
https://wiki.asterisk.org/wiki/display/AST/Asterisk+13+Application_BackgroundDetect

2 Likes

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