asterisk@stephenamadei.com
2005-Jan-27 15:01 UTC
[Asterisk-Users] Stumped by BroadVoice SIP
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@147.135.8.128:5060 register => 2129999999:<password>:2129999999@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@misery.digium.com/s@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
I had a lot of problem with them to set up.. You need to register to sip.broadvoice.com And need to have all of their four servers to listen to incoming calls as ony one can send it in.. Just posted my config two days ago. lists.digium.com/pipermail/asterisk-users/2005-January/085736.html hope that helps -----Original Message----- From: asterisk@stephenamadei.com [mailto:asterisk@stephenamadei.com] Sent: Thursday, January 27, 2005 2:02 PM To: asterisk-users@lists.digium.com Subject: [Asterisk-Users] Stumped by BroadVoice SIP 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@147.135.8.128:5060 register => 2129999999:<password>:2129999999@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@misery.digium.com/s@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