[asterisk-dev] Need to run an AGI from dialplan only upon call hold

Olle E. Johansson oej at edvina.net
Fri Aug 31 03:08:10 CDT 2012


During a call hold the call is still in a bridge and can't really execute the dialplan without serious effects. Call hold is just a media state.

Brainstorming, we could implement a function where a call hold breaks the bridge and each call leg goes back to the dialplan (HOLD_CONTEXT) to do some cool things instead of being on hold. The problem then is what unhold means and how to explain to the phones (that are on hold state) what you want to do.

Better would be to develop an AMI client that makes the decision for you on what you want to do with the call.

/O


31 aug 2012 kl. 09:05 skrev Lenz Emilitri <lenz.loway at gmail.com>:

> We developed something along these lines as a general solution that would not be linked to a specific channel types. This was needed as it would be very useful in call-center scenarios to keep track of channel holds done by agents, and as QueueMetrics implements this functionality, we would have liked to offer a general solution that could be of interest in many cases.
> 
> You can find it at https://issues.asterisk.org/jira/browse/ASTERISK-19319 - it was not accepted into the main trunk as it may be quite dangerous as it allows arbitrary code execution on a single thread, but if you are careful and you know what you are doing, it basically works.
> 
> So, as there is an actual need out there for something along these lines, if anybody has a better implementation idea, it would be great to share it :)
> 
> Thanks
> l.
> 
> 
> 
> 
> 2012/8/27 uma udupi <umaudupi at yahoo.com>
> Hi there,
> 
> I'm new to Asterisk. I need to call (from dialplan) a macro or a gosub or an AGI upon one of the connected party in a bridged call (on sip trunk) puts the call on HOLD. Anyhelp greatly appreciated
> 
> PS: I looked into app_dial.c if I can capture AST_CONTROL_HOLD event, and call a macro, however once ast_bridge_call() is called, Dial app does not get mid-call events on the call (like  AST_CONTROL_HOLD/AST_CONTROL_UNHOLD)
> 
> I also tried to use frame_trigger.c but it didn't work too. I understand this is not a good approach.
> 
> Thanks,
> Uma
> 
> --
> _____________________________________________________________________
> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
> 
> asterisk-dev mailing list
> To UNSUBSCRIBE or update options visit:
>    http://lists.digium.com/mailman/listinfo/asterisk-dev
> 
> 
> 
> -- 
> Loway - home of QueueMetrics - http://queuemetrics.com
> Test-drive WombatDialer alpha @ http://wombatdialer.com
> 
> --
> _____________________________________________________________________
> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
> 
> asterisk-dev mailing list
> To UNSUBSCRIBE or update options visit:
>   http://lists.digium.com/mailman/listinfo/asterisk-dev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20120831/2f1f3739/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2307 bytes
Desc: not available
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20120831/2f1f3739/attachment-0001.bin>


More information about the asterisk-dev mailing list