[asterisk-dev] [Code Review] Allow app_dial to play 'indication tone while ringing' like 'option m' which will provide music on hold while ringing
Alec Davis
sivad.a at paradise.net.nz
Thu Dec 17 03:07:28 CST 2009
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/448/
-----------------------------------------------------------
(Updated 2009-12-17 03:07:28.290875)
Review request for Asterisk Developers.
Changes
-------
change as requested.
Also fixed situation where no option 'r' is present, the OPT_ARG_RINGBACK wasn't null, required nulling!
at line 921 the ast_channel_make_compatible(..) needs to be in the if RINGBACK or MUSICBACK, otherwise you get 100's of
"Asked to transmit frame type slin, while native formats is 0x4 (ulaw) read/write = 0x4 (ulaw)/0x4 (ulaw"
I believe this ast_channel_make_compatible at line 921, is a bug in itself, we will execute another ast_channel_make_compatible when the called channel is answered.
Summary
-------
This senario is based on an ETSI ISDN installation, but I'm sure applies to others.
option 'r' sends a Ringing Indication to the network, which informs the network we can deliver the call, but ultimately we may not be able to, and need to issue Congestion.
option 'm' sends a Proceeding Indication, which allows us to indicate Congestion and let the call go, and let the network providor try the next provider.
The current ugly solution, is to record a music file, of Ringing, and play it, something like.
exten => 80,1,Dial(DAHDI/2,30,m(myring))
exten => 80,n,Congestion()
This patch provides an optional argument for option 'r' as in 'r(vodaring)'
Now a tidy and customizable way to play out any tones from the indications.conf file like.
exten => 80,1,Dial(DAHDI/2,30,r(vodaring))
exten => 80,n,Congestion()
This addresses bug 14504.
https://issues.asterisk.org/view.php?id=14504
Diffs (updated)
-----
trunk/apps/app_dial.c 235418
Diff: https://reviewboard.asterisk.org/r/448/diff
Testing
-------
100% test results with examples below.
exten => 80,1,Dial(DAHDI/2,,r(vodaring))
exten => 80,1,Dial(DAHDI/2,,r)
exten => 80,1,Dial(DAHDI/2,,m)
exten => 80,1,Dial(DAHDI/2,,)
Thanks,
Alec
More information about the asterisk-dev
mailing list