Hi, Corneliu,
I put together this howto and would like to share it with our
community. But I guess it will take me X hours to figure out how to
put it on the wiki and I am kind of busy or lazy... -:)
So could you please upload it to the wiki. Also my English is bad so
feel free to correct it if needed. Thanks you.
Jian
==============================================
AsteriskCallbackDISA
Who need this?
If you have a unlimited incoming cellphone service plan, you can use
this method to call out without paying outgoing minute charge. You
may also take advantage of your low long distance calling rate of
your VoIP service by calling out through your home Asterisk server.
Requirement:
1. Your Asterisk box (in my case this is the Slug) should be able to
make at least two simultaneous outgoing calls. (One to call you back
and the other provides DISA to dial out.)
2. A separate Direct-Inward-Dial (DID) number dedicated to this task.
3. Your cellphone should have a legitimate CallerID number. (We use
this to identify the caller.)
How it works?
1. Call your DID number on your Asterisk box from your cellphone.
When you hear the ringing tone, just hang up your cellphone.
2. Wait 20 sec, your cellphone will get a incoming call from your
Asterisk box. Answer it, follow the instruction, press your password
and the #, if everything is all right, you should get a dial tone.
3. Now you may make an outgoing call from there. All calls should be
routed from your Asterisk PBX using the lowest calling rate.
Setup
Here is how I setup my home Asterisk on Slug. I am using UnSlung 6.8
with Asterisk14 installed. A DID number 6085558888 from MyVSP is
setup for this task. My cellphone number is 6081112222. You should
change these to fit your situation.
1. Create a file named /opt/etc/asterisk/callback.call with the
following lines:
Channel: SIP/6081112222@MyVSP
Context: custom-DISA-out
Extension: s
Priority: 1
CallerID: 6085558888
2. Create a file named /opt/etc/asterisk/callback_exe with the
following lines:
sleep 20
cp /opt/etc/asterisk/callback.call /opt/var/spool/asterisk/outgoing
Make this file executable:
chmod +x /opt/etc/asterisk/callback_exe
3. In your extensions.conf:
[MyVSP-incoming]
exten => 6085558888 ,1,NoOp(Incoming call from # ${CALLERID(num)})
exten => 6085558888 ,n,GotoIf($["${CALLERID(num)}" = "6081112222"]?
custom-CallBack,s,1)
[custom-CallBack]
;;prepare for callback and DISA
exten => s,1,NoOp(Hangup then callback to cellphone)
exten => s,2,Hangup()
exten => h,1,NoOp(copy callback.call file
to /opt/var/spool/asterisk/outgoing)
exten => h,2,System(/opt/etc/asterisk/callback_exe)
exten => h,3,Hangup()
[custom-DISA-out]
exten => s,1,Wait(1)
exten => s,n,Background(agent-pass)
exten => s,n,Authenticate(87235) ;this number is the password
exten => s,n,Background(pls-wait-connect-call)
exten => s,n,DISA(no-password|out-pstn)
4. in your modules.conf, make sure the following modules are loaded:
load=app_authenticate.so
load=app_disa.so
load=app_system.so
load=pbx_spool.so
load=func_callerid.so
5. Restart Asterisk and test it.
==============================================
--- In nslu2-asterisk@yahoogroups.com, "gaojian858" <gaojian858@...>
wrote:
>
> Thank you, Corneliu,
>
> Now I made the callback/DISA works in a very simply way. But it is
> not as flexible as yours. I need to improve it then I'll post it
here.
>
> By the way, for this callback/DISA to work, you have to make sure
> that the following modules is loaded:
> app_authenticate.so
> app_disa.so
> app_system.so
> pbx_spool.so
>
> I think you should add this to the wiki.
>
> Best Regards,
>
> Jian
>
> --- In nslu2-asterisk@yahoogroups.com, "Corneliu Doban"
> <corneliu_doban@> wrote:
> >
> > Hi Jian,
> >
> > I had in mind for a long time to make a callback feature but only
> now
> > I found some time and energy to do it. I posted the info here:
> > http://www.nslu2-linux.org/wiki/Optware/AsteriskCallbackMacro
> >
> > I'm not using DISA, but I suppose it can be used with the same
> results
> > (in the callthrough context).
> >
> > Regards,
> > Corneliu
> >
> > --- In nslu2-asterisk@yahoogroups.com, "gaojian858" <gaojian858@>
> > wrote:
> > >
> > > Hi, I installed Asterisk14 in Unslug6.8. After enabled DISA
> module I
> > > can use DISA to dial out. Now I would like to config my NSLU2
to
> > > something like this: When I use my cellphone calls in, the
NSLU2
> give
> > > me a busy sound then hang up. After 10 sec, NSLU2(Asterisk)
call
> my
> > > cell back and give me a dial tone so I can dial out via a VoIP
> channel.
> > > I really need this feature to work with my unlimited incoming
> cellphone
> > > plan.
> > >
> > > It seems need a AGI script but I couldn't figure out how tomake
> it
> > > work. I also tried Nerd Vittles method
> > > (http://nerdvittles.com/index.php?p=73)but no success. :(
> > >
> > > Is there anyone succeed config this? I really appreciate if
> anyone can
> > > help me.
> > >
> > > Thanks.
> > >
> > > Jian
> > >
> >
>