[asterisk-dev] Bridging Question
Kaloyan Kovachev
kkovachev at varna.net
Fri Mar 23 00:42:00 MST 2007
On Thu, 22 Mar 2007 20:29:55 -0400, Alexander Lopez wrote
> Look at using the Local channel for the timeout. And the d option in Dial.
The only issue you have is depending on the type of Zap channel used you may
not be ale to use the d option as the call would be answered. However if you
are using a PRI you can use the one-way audio.
>
> Lastly you can just modify the Dial app(GASP!!!,) to ignore the answer and
always listen for the DTMF.
this can be done with a DYNAMIC_FEATURE without modifications
>
> Hope that helps…..
>
> Alex
>
>
>
>
-----------------------------------------------------------------------
> From: asterisk-dev-bounces at lists.digium.com
[mailto:asterisk-dev-bounces at lists.digium.com] On Behalf Of Norman Franke
> Sent: Thursday, March 22, 2007 7:15 PM
> To: asterisk-dev at lists.digium.com
> Subject: [asterisk-dev] Bridging Question
>
>
> (I didn't hear anything on this, so I'll try again.)
>
>
>
>
> I'm attempting to modify app_queue to support a legacy system we have.
Basically, after a timeout (e.g. 3 or 4 rings), I want it to patch the call to
another system (via a Zap channel) that plays a message specific to the
incoming call's extension, e.g. "Welcome to Foo Bar, Inc, please hold." These
files are not stored where Asterisk can get to them and they are in a
proprietary format. We have like 4000 of these, so re-recording isn't an
option either.
>
>
>
> I figured I could modify app_queue to dial this number and and wait until
that message is done (the other system hangs up) and then go to MoH. This
works synchronously, e.g. I have to block while bridged. I want to be able to
check for digits being pressed while in this mode (and do something as a
result) and to abort the connection if an agent frees up (so they don't have
to listen to the entire message if an agent becomes available.)
>
>
>
> This can't be done with ast_bridge_call, AFAIK. Calling it in a thread dumps
tons of these:
>
>
>
> channel.c:1802 ast_waitfor_nandfds: Thread -1230656592 Blocking
'SIP/normanoffice-082001b8', already blocked by thread -1230656592 in
procedure ast_waitfor_nandfds
>
>
>
> I assume one can't monitor a channel from two threads.
>
>
>
> What's the best way to handle something like this? I looked inside
app_meetme, and there is a LOT of code there to do what is conceptually very
simple. Something like ast_moh_start that takes another channel instead of a
music channel, and streams that channel much like MoH would be slick.
>
>
>
> Thanks!
>
> Norman
>
>
More information about the asterisk-dev
mailing list