[Asterisk-Users] Stumped by BroadVoice SIP

asterisk at stephenamadei.com asterisk at stephenamadei.com
Thu Jan 27 15:01:54 MST 2005



Hello guys.

I am a fairly new user to Asterisk, and I'm just having a tough time.

My goal is to set up a VOIP PBX.  I have signed up with a BroadVoice
number, and I have three systems with SIP phones.

The PBX and the SIP phones are all behind a Cisco PIX running NAT.
I am using Asterisk CVS version from yesterday.  I also tried 1.0.3 with
little luck.

The SIP phones are two X-Lites on Windows and one Kphone on Linux (running
from the same system that Asterisk runs on).

It appears that the BroadVoice SIP registers and the SIP phones register,
as I can call from one Xlite to the Kphone.  However, I cannot get
incoming calls from BroadVoice.  Calling the BroadVoice number results in
a 'The party you wish to reach is busy and cannot...' message.  I sniffed
packets and I can see packets coming in from BroadVoice on port 5060 to
the PBX, but they do not correspond with my call attempts.  And debugging
the sip session shows alot of '404 Not Found'.

Also, even though this is meant as a incoming only PBX, I tried to test
outgoing calls from an X-Lite softphone to BroadVoice, but it doesn't
work, either.

I've probably screwed my configs to hell trying to get this to work, but
here they are.  Any suggestions would be appreciated.

Here are my configs, decrufted...

sip.conf
------------------------------------------------------------
[general]
context=sip
recordhistory=yes
port = 5060
bindaddr = 0.0.0.0

allow=gsm
allow=alaw
allow=ulaw
allow=adpcm
allow=speex
allow=ilbc
allow=slinear
[general]
nat=yes

register => 2129999999:<password>:2129999999 at 147.135.8.128:5060
register => 2129999999:<password>:2129999999 at 147.135.0.128:5060

externip = 208.59.47.2

localnet=192.168.1.0/255.255.0.0

[sip_proxy]
type=user
context=from-broadvoice

[xlite1]
type=friend
regexten=101
username=xlite1
secret=<password>
callerid="Stephen's Laptop" <101>
host=dynamic
nat=no
canreinite=yes
disallow=all
allow=gsm
allow=ulaw
allow=alaw
dtmfmode=inband
qualify=yes

[xlite2]
type=friend
regexten=103
context=sip
username=103
secret=<password>
callerid="Ben's Laptop" <103>
host=dynamic
nat=no
allow=gsm
allow=ulaw
allow=alaw
dtmfmode=inband
quality=yes

[kphone1]
type=friend
username=kphone1
secret=<password>
callerid="Diablo" <102>
host=dynamic
allow=gsm
qualify=yes

[sip.broadvoice.com]
type=peer
host=proxy.dca.broadvoice.com
fromdomain=sip.broadvoice.com
fromuser=2129999999
secret=<password>
context=incoming
canreinvite=no

[broadvoice-out]
type=peer
dtmfmode=inband
host=147.135.0.128
user=2129999999
username=2129999999
authuser=2129999999
fromuser=2129999999
fromdomain=sip.broadvoice.com
md5secret=<password>
qualify=yes
canreinvite=no
disallow=all
allow=ulaw

[broadvoice-out2]
type=peer
dtmfmode=inband
host=147.135.8.128
user=2129999999
username=2129999999
authuser=2129999999
fromuser=2129999999
fromdomain=sip.broadvoice.com
md5secret=<password>
qualify=yes
canreinvite=no
disallow=all
allow=ulaw

[broadvoice-incoming]
type=peer
dtmfmode=inband
host=147.135.8.128
context=incoming
qualify=yes
nat=yes
canreinvite=no
fromdomain=sip.broadvoice.com
username=2129999999
fromuser=2129999999
insecure=very

[broadvoice-incoming2]
type=peer
dtmfmode=inband
host=147.135.0.128
context=incoming
qualify=yes
nat=yes
canreinvite=no
fromdomain=sip.broadvoice.com
username=2129999999
fromuser=2129999999
insecure=very
---------------------------------------------------------

extensions.conf
---------------------------------------------------------
[general]
static=yes
writeprotect=no


[globals]
CONSOLE=Console/dsp				; Console interface for demo
IAXINFO=guest					; IAXtel username/password
TRUNK=Zap/g2					; Trunk interface
TRUNKMSD=1					; MSD digits to strip (usually 1 or 0)


[iaxtel700]
exten => _91700XXXXXXX,1,Dial(IAX2/${IAXINFO}@iaxtel.com/${EXTEN:1}@iaxtel)

[iaxprovider]

[trunkint]
exten => _9011.,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _9011.,2,Congestion

[trunkld]
exten => _91NXXNXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _91NXXNXXXXXX,2,Congestion

[trunklocal]
exten => _9NXXXXXX,1,Dial(${TRUNK}/${EXTEN:${TRUNKMSD}})
exten => _9NXXXXXX,2,Congestion

[trunktollfree]
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

[international]
ignorepat => 9
include => longdistance
include => trunkint

[longdistance]
ignorepat => 9
include => local
include => trunkld

[local]
ignorepat => 9
include => default
include => parkedcalls
include => trunklocal
include => iaxtel700
include => trunktollfree
include => iaxprovider

[macro-stdexten];
exten => s,1,Dial(${ARG2},20)					; Ring the interface, 20 seconds maximum
exten => s,2,Goto(s-${DIALSTATUS},1)				; Jump based on status (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)

exten => s-NOANSWER,1,Voicemail(u${ARG1})		; If unavailable, send to voicemail w/ unavail announce
exten => s-NOANSWER,2,Goto(default,s,1)			; If they press #, return to start

exten => s-BUSY,1,Voicemail(b${ARG1})			; If busy, send to voicemail w/ busy announce
exten => s-BUSY,2,Goto(default,s,1)				; If they press #, return to start

exten => _s-.,1,Goto(s-NOANSWER,1)				; Treat anything else as no answer

exten => a,1,VoicemailMain(${ARG1})				; If they press *, send the user into VoicemailMain

[demo]
exten => s,1,Wait,1			; Wait a second, just for fun
exten => s,2,Answer			; Answer the line
exten => s,3,DigitTimeout,5		; Set Digit Timeout to 5 seconds
exten => s,4,ResponseTimeout,10		; Set Response Timeout to 10 seconds
exten => s,5,BackGround(demo-congrats)	; Play a congratulatory message
exten => s,6,BackGround(demo-instruct)	; Play some instructions

exten => 2,1,BackGround(demo-moreinfo)	; Give some more information.
exten => 2,2,Goto(s,6)

exten => 3,1,SetLanguage(fr)		; Set language to french
exten => 3,2,Goto(s,5)			; Start with the congratulations

exten => 1000,1,Goto(default,s,1)
exten => 1234,1,Playback(transfer,skip)		; "Please hold while..."
					; (but skip if channel is not up)
exten => 1234,2,Macro(stdexten,1234,${CONSOLE})

exten => 1235,1,Voicemail(u1234)		; Right to voicemail

exten => 1236,1,Dial(Console/dsp)		; Ring forever
exten => 1236,2,Voicemail(u1234)		; Unless busy

exten => #,1,Playback(demo-thanks)		; "Thanks for trying the demo"
exten => #,2,Hangup			; Hang them up.

exten => t,1,Goto(#,1)			; If they take too long, give up
exten => i,1,Playback(invalid)		; "That's not valid, try again"

exten => 500,1,Playback(demo-abouttotry); Let them know what's going on
exten => 500,2,Dial(IAX2/guest at misery.digium.com/s at default)	; Call the Asterisk demo
exten => 500,3,Playback(demo-nogo)	; Couldn't connect to the demo site
exten => 500,4,Goto(s,6)		; Return to the start over message.

exten => 600,1,Playback(demo-echotest)	; Let them know what's going on
exten => 600,2,Echo			; Do the echo test
exten => 600,3,Playback(demo-echodone)	; Let them know it's over
exten => 600,4,Goto(s,6)		; Start over

exten => 8500,1,VoicemailMain
exten => 8500,2,Goto(s,6)


[default]
include => demo

; I modified stuff from here down...

exten=_9NXXNXXXXXX, 1, dial(SIP/${EXTEN}@broadvoice-out,30)
exten=_9NXXNXXXXXX, 2, dial(SIP/${EXTEN}@broadvoice-out2,30)
exten=_9NXXNXXXXXX, 3, congestion()
exten=_9NXXNXXXXXX, 103, busy()

[sip]
exten => 1,1,Dial(SIP/xlite1,20,tr)
exten => 2,1,Dial(SIP/kphone1,20,tr)
exten => 3,1,Dial(SIP/xlite2,20,tr)
exten => 1000,1,Dial(SIP/xlite1&SIP/kphone1&SIP/xlite2,20,tr)

[incoming]
exten => 1,1,Dial(SIP/xlite1,20,tr)
exten => 2,1,Dial(SIP/kphone1,20,tr)
exten => 3,1,Dial(SIP/xlite2,20,tr)
exten => 1000,1,Dial(SIP/xlite1&SIP/kphone1&SIP/xlite2,20,tr)

[from-broadvoice]
exten => 1,1,Dial(SIP/xlite1,20,tr)
exten => 2,1,Dial(SIP/kphone1,20,tr)
exten => 3,1,Dial(SIP/xlite2,20,tr)
exten => 1000,1,Dial(SIP/xlite1&SIP/kphone1&SIP/xlite2,20,tr)

-----------------------------------------------------------

					----Steve
Stephen Amadei
5114 Harbor Beach Blvd
Brigantine Beach, NJ 08203
(609) 703-9649



More information about the asterisk-users mailing list