[TriLUG] [Trilug-announce] And now from the get rid of Ma and PaBell for good department: how to set up your own Asterix server

Jon Carnes jonc at nc.rr.com
Mon Jun 7 13:49:54 EDT 2004


> >>    
> >>
> >I don't have Static IP at my house, but I'm willing to play from my home
> >box - I'd have to share with you my current IP during your tests. 
> >
> >I'm very interested in playing with IAX trunking as well. I'm especially
> >interested in how well the trunk works while staying inside RoadRunners
> >cloud.
> >
> >Jon Carnes
> >
> >  
> >
> Jon,
> 
>     Thank you very much! I too am in RR cloud.
> I am just learning so set expectations accordingly.
> Should we work out logistics outside of list?

Lets stay on list (so it goes into the archives) unless someone else
complains. (I won't ship you my ip data on list - though that would be
fairly easy to find).

Most of your questions are answered in this old Linux Journal article"
  http://www.linuxjournal.com/article.php?sid=6769

(be sure to read the emailed notes at the bottom of the article as it
has some corrections to the examples)

> 
> My goal is to learn how to do the following:
> 1. Place call to POTS line of Asterisk#1

You'll need some hardware on your Linux box (with some drivers) to get
this to work. You can buy the hardware from Digum ($175)
  http://www.digium.com/index.php?menu=developerskit_tdm

> 2. Authenticate myself. (pin code?)

There are a dazzling array of authentication techniques. Remember you
are moving data around, so you can use any form of data authentication.

You can definitely use the IVR functionality of Asterisk and have it use
pin codes for access to any number of functions.

> 3. Be dropped into voice menu that gives me choice of people to call.

This is pretty much the default mode of Asterisk. You would set it up in
/etc/asterisk/extensions.conf ... and here is the example from that
file:

;[mainmenu]
;
; Example "main menu" context with submenu
;
;exten => s,1,Answer
;exten => s,2,Background(thanks) 
; ;     "Thanks for calling press 1 for sales, 2 for support, ..."

;exten => 1,1,Goto(submenu,s,1)
;exten => 2,1,Hangup
;include => default
;
;[submenu]
;exten => s,1,Ringing 
; ;     Make them comfortable with 2 seconds of ringback

;exten => s,2,Wait,2
;exten => s,3,Background(submenuopts) 
; ;  "Thanks for calling the sales depart.  Press 1 for steve, 2 for..."
;exten => 1,1,Goto(default,steve,1)
;exten => 2,1,Goto(default,mark,2)
                                                                                                                    ; Real extensions would go here.  
;  Generally you want real extensions to be 4 or 5
;  digits long (although there is no such requirement)
;  and start with a single
;  digit that is fairly large (like 6 or 7) so that you
;  have plenty of room to
;  overlap extensions and menu options without conflict. 
;  You can alias them with
;  names, too and use global variables
 
 
;exten => 6275,1,Macro(stdexten,6275,${MARK})
; ;   assuming ${MARK} is something like Zap/2
;exten => mark,1,Goto(6275|1)                                          
; ;   alias mark to 6275
;exten => 6236,1,Macro(stdexten,6236,${WIL}) 
; ;   Ditto for wil
;exten => wil,1,Goto(6236|1)
;
; Some other handy things are an extension for checking voicemail via
; voicemailmain
;
;exten => 8500,1,VoicemailMain
;exten => 8500,2,Hangup


> 4. select who to call and have Asterisk#1 tell Asterisk#2 to place the 
> call out its PSTN line.

If you are calling a known phone then this is setup as part of the
phones definition. If you are simply dialing out to the public network,
then the routing is setup in your dialplan (which is basically in
extensions.conf):
[trunkint]
;
; International long distance through trunk
;
exten => _9011.,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _9011.,2,Congestion
 
[trunkld]
;
; Long distance context accessed through trunk
;
exten => _91NXXNXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91NXXNXXXXXX,2,Congestion
 
[trunklocal]
;
; Local seven-digit dialing accessed through trunk interface
;
exten => _9NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _9NXXXXXX,2,Congestion
 
[trunktollfree]
;
; Long distance context accessed through trunk interface
;
exten => _91800NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91800NXXXXXX,2,Congestion
exten => _91888NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91888NXXXXXX,2,Congestion
exten => _91877NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91877NXXXXXX,2,Congestion
exten => _91866NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91866NXXXXXX,2,Congestion


> -- 
> Glen Ford
> gford at idiom.com
> 




More information about the TriLUG mailing list