[asterisk-users] setting up callback

Mikhail (Plus Plus) m at plus-plus.su
Thu Nov 20 11:19:31 CST 2008


Nobody responded, but I was able to resolve this issue the way I wanted.
In my extensions.conf I put the following:

[callback-dialtone-auth]
exten => s,1,answer()
exten => s,n,authenticate(5678)
exten => s,n,Read(fwd_callback_to)
exten => s,n,NoOP(${fwd_callback_to})
exten => s,n,Dial(SIP/${fwd_callback_to}@callcentric)

Now when I receive a callback, I enter password and after entering 
password I enter the phone number ending with # I wish to call and it 
gets passed to callcentric SIP and all works great.

I posted the solution just in case someone else will have similar issues.

M.

Михаил (Плюс Плюс) wrote:
> Greetings Asterisk users!
> 
> I'm trying to setup Asterisk system to act as a callback system together
> with callcentric (http://callcentric.com) but it appears that I hit common
> DTMF issue and I want to workaround this problem. Basically my current
> setup is the following:
> 
> 1) I have dedicated Asterisk server that it is linked to my callcentric
> account
> 2) I have US phone number (DID) from callcentric attached to my account
> 3) I want to make calls from my cell phone to (real US) callcentric number
> and receive a callback to my cell phone number. After receiving callback,
> I enter 4-digit password to auth myself and then I get a line via DISA
> feature of Asterisk.
> 
> I guess my setup is very common, and all is great (e.g. I'm able to
> receive a callback, enter password and then get callcentric line), except
> that callcentric does not appear to be getting DTMF tones from my cell
> phone correctly and I am unable to make a call.
> I have searched all day long today and all I was able to find is that some
> people have callback DTMF working with callcentric fine and others not. I
> tweaked my sip.conf with all possible combinations of "dtmfmode" setting,
> but still no luck.
> 
> Maybe I want something strange, but it appears that in my case Asterisk is
> able to read DTMF tones correctly while making callback and asking me to
> enter password to authenticate myself (I am able to pass authentication
> process with no problems), so what I want to do is to use that instead of
> using DISA feature of Asterisk. In other words I want something like this:
> 
> -> I call callcentric from my cell
> -> Asterisk calls me back using callcentric line
> -> I enter 4-digit password to authenticate first
> -> if authentication went through, I type a phone number I wish to call
> -> Asterisk initiates a SIP call to provided phone number through
> callcentric, and all this has to work so that I can speak and hear remote
> party on my cell phone.
> 
> I hope the above scheme is clear enough to understand.
> The problem is that I cannot understand how to implement the above -
> should this be done with "WaitExten()" feature? If so, can someone share
> examples of their setup? I would appreciate any pointers to implement the
> above.
> 
> My current GSM provider in Russia is Megafon, and I believe this has
> something to do with them that DTMF tones don't get passed correctly.
> 
> Here's my current parts of config files responsible for callback:
> 
> sip.conf:
> 
> register => 1777286XXXX:XXXXXXX at callcentric.com/1862772XXXX
> ...
> [callcentric]
> type=peer
> context=from-callcentric
> host=callcentric.com
> username=1777286XXXX
> secret=XXXXXXX
> fromuser=1777286XXXX
> fromdomain=callcentric.com
> disallow=all
> allow=alaw
> dtmfmode=inband
> canreinvite=no
> ;rfc2833compensate=yes
> insecure=very
> 
> 
> 
> extensions.conf:
> 
> NOTE: 1862772XXXX is a real phone # I have in my callcentric account
> 
> [from-callcentric]
> exten => 1862772XXXX,1,NoOp(callcentric callback to ${CALLERID(num))
> exten => 1862772XXXX,2,Wait(1)
> exten => 1862772XXXX,3,system(cp /var/spool/asterisk/skelett.call
> /var/spool/asterisk/skelett.tmp.call)
> exten => 1862772XXXX,4,system(echo 'Channel:
> SIP/+${CALLERID(num)}@callcentric' >>
> /var/spool/asterisk/skelett.tmp.call)
> exten => 1862772XXXX,5,system(mv /var/spool/asterisk/skelett.tmp.call
> /var/spool/asterisk/outgoing)
> exten => 1862772XXXX,6,HangUp
> 
> [callback-dialtone-auth]
> exten => s,1,answer()
> exten => s,n,authenticate(5678)
> exten => s,n,DISA(no-password,home)
> 
> 
> 
> /var/spool/asterisk/skelett.call:
> 
> Context: callback-dialtone-auth
> Extension: s
> MaxRetries: 2
> RetryTime: 1
> 
> 
> 
> Thank you,
> Mikhail.
> 
> 
> 
> _______________________________________________
> -- Bandwidth and Colocation Provided by http://www.api-digital.com --
> 
> asterisk-users mailing list
> To UNSUBSCRIBE or update options visit:
>    http://lists.digium.com/mailman/listinfo/asterisk-users




More information about the asterisk-users mailing list