Christopher Robinson
2007-May-11 08:12 UTC
[asterisk-users] Problems with outbound calls through VSP
Bear with me this is a bit long winded. I am having some issues making automated outbound calls over Broadvoice from my Asterisk 1.4.2 server. For reference, none of the below issues happen when I make the calls to VoIP phones attached to the Asterisk server. What I am trying to do is call, using a .call file, out via the SIP trunk we have setup, and when the party picks up use AMD to detect if it's reached a human or machine. If it's human then one message will be played, and if machine another will be played theoretically after the answering machine/voicemail is done playing. By the way, I'd like to mention that this is not at all for spamming, or telemarketing. This is an appointment reminder service. from extensions.conf: [mycontext] exten => 899,1,Answer exten => 899,2,Wait(2) exten => 899,3,AMD exten => 899,n,GotoIf($[${AMDSTATUS}=HUMAN]?humn:mach) exten => 899,n(mach),WaitForSilence(2500) exten => 899,n,Playback(were-sorry) exten => 899,n,Hangup exten => 899,n(humn),WaitForSilence(500) exten => 899,n,Playback(welcome) exten => 899,n,Hangup The call goes out fine. When I pick it up AMD basically locks up, although not exactly because as you can see below it does recognize the HANGUP. However, it will not recognize my voice or dead air no matter how long I stay on the call to try. If I just let my voicemail pickup it does the same thing...takes forever for the call to terminate. Again, this all works as expected when I make the call to a SIP phone attached to the Asterisk server. -- Attempting call on SIP/1716XXXXXXX@sip.broadvoice.com for 899@mycontext:1 (Retry 1) > Channel SIP/sip.broadvoice.com-08bad080 was answered. -- Executing [899@mycontext:1] Answer("SIP/sip.broadvoice.com-08bad080", "") in new stack -- Executing [899@mycontext:2] AMD("SIP/sip.broadvoice.com-08bad080", "") in new stack -- AMD: SIP/sip.broadvoice.com-08bad080 (null) (Fmt: 4) -- AMD: initialSilence [2500] greeting [1500] afterGreetingSilence [800] totalAnalysisTime [5000] minimumWordLength [100] betweenWordsSilence [50] maximumNumberOfWords [3] silenceThreshold [256] -- AMD: HANGUP I did find a solution to this "lock up". That was to play a bit of silence at any point before I actually call AMD (even before Answer works): [mycontext] exten => 899,1,Playback(silence/1) exten => 899,2,Answer .... Although I don't particularly like this solution, as I'm just patching the problem that I still don't understand, plus it adds a little more delay that confuses the called party. Also, when I tried this I realized yet another issue, which could be the underlying cause of the whole thing. No matter what sound it is, no matter if I use AMD or not, the very first sound that I play results in a short "screech" sound before it is played. This happens every time without fail. If I were to guess, I would say that there is some data in the audio channel that is not audio data, and is being represented with that screech sound...but of course that's just a guess. Any help would be greatly appreciated. Below are some relevant configuration settings: sip.conf: [general] context=testusers ; Default context for incoming calls allowoverlap=no ; Disable overlap dialing support. (Default is yes) bindport=5060 ; UDP Port to bind to (SIP standard port is 5060) externip=xx.xx.xx.xx localnet=192.168.1.0/255.255.255.0 bindaddr=0.0.0.0 ; IP address to bind to (0.0.0.0 binds to all) srvlookup=yes ; Enable DNS SRV lookups on outbound calls pedantic=no register => 7165555555@sip.broadvoice.com:mysecret:7165555555@sip.broadvoice.com [sip.broadvoice.com] allow=ulaw type=peer user=phone host=sip.broadvoice.com fromdomain=sip.broadvoice.com fromuser=716XXXXXXX secret=mysecret username=716XXXXXXX insecure=very context=from_broadvoice authname=716XXXXXXX dtmf=inband dtmfmode=inband ;Disable canreinvite if you are behind a NAT ;canreinvite=no nat=yes
Christopher Robinson
2007-May-11 14:34 UTC
[asterisk-users] Problems with outbound calls through VSP
Update: I was able to obtain another VSP to try and rule out Broadvoice. Seems that either my Broadvoice settings, or something on their end is causing the brief screech noise upon playing the first sound. However, with this new VSP I still have the AMD (Answering Machine Detect) problem where it locks up unless I play some sound before calling AMD. So my modified question is, has anyone ever had a problem with AMD through a VSP (SIP, in this case). And it does *not* lock up when calling phones local to the server. Christopher Robinson wrote:> Bear with me this is a bit long winded. I am having some issues > making automated outbound calls over Broadvoice from my Asterisk 1.4.2 > server. For reference, none of the below issues happen when I make > the calls to VoIP phones attached to the Asterisk server. What I am > trying to do is call, using a .call file, out via the SIP trunk we > have setup, and when the party picks up use AMD to detect if it's > reached a human or machine. If it's human then one message will be > played, and if machine another will be played theoretically after the > answering machine/voicemail is done playing. By the way, I'd like to > mention that this is not at all for spamming, or telemarketing. This > is an appointment reminder service. > > from extensions.conf: > [mycontext] > exten => 899,1,Answer > exten => 899,2,Wait(2) > exten => 899,3,AMD > exten => 899,n,GotoIf($[${AMDSTATUS}=HUMAN]?humn:mach) > exten => 899,n(mach),WaitForSilence(2500) > exten => 899,n,Playback(were-sorry) > exten => 899,n,Hangup > exten => 899,n(humn),WaitForSilence(500) > exten => 899,n,Playback(welcome) > exten => 899,n,Hangup > > > The call goes out fine. When I pick it up AMD basically locks up, > although not exactly because as you can see below it does recognize > the HANGUP. However, it will not recognize my voice or dead air no > matter how long I stay on the call to try. If I just let my voicemail > pickup it does the same thing...takes forever for the call to > terminate. Again, this all works as expected when I make the call to > a SIP phone attached to the Asterisk server. > > -- Attempting call on SIP/1716XXXXXXX@sip.broadvoice.com for > 899@mycontext:1 (Retry 1) > > Channel SIP/sip.broadvoice.com-08bad080 was answered. > -- Executing [899@mycontext:1] > Answer("SIP/sip.broadvoice.com-08bad080", "") in new stack > -- Executing [899@mycontext:2] > AMD("SIP/sip.broadvoice.com-08bad080", "") in new stack > -- AMD: SIP/sip.broadvoice.com-08bad080 (null) (Fmt: 4) > -- AMD: initialSilence [2500] greeting [1500] afterGreetingSilence > [800] totalAnalysisTime [5000] minimumWordLength [100] > betweenWordsSilence [50] maximumNumberOfWords [3] silenceThreshold [256] > -- AMD: HANGUP > > I did find a solution to this "lock up". That was to play a bit of > silence at any point before I actually call AMD (even before Answer > works): > [mycontext] > exten => 899,1,Playback(silence/1) > exten => 899,2,Answer > .... > > Although I don't particularly like this solution, as I'm just patching > the problem that I still don't understand, plus it adds a little more > delay that confuses the called party. > Also, when I tried this I realized yet another issue, which could be > the underlying cause of the whole thing. No matter what sound it is, > no matter if I use AMD or not, the very first sound that I play > results in a short "screech" sound before it is played. This happens > every time without fail. If I were to guess, I would say that there > is some data in the audio channel that is not audio data, and is being > represented with that screech sound...but of course that's just a guess. > > Any help would be greatly appreciated. Below are some relevant > configuration settings: > > sip.conf: > [general] > context=testusers ; Default context for incoming calls > allowoverlap=no ; Disable overlap dialing support. > (Default is yes) > bindport=5060 ; UDP Port to bind to (SIP standard > port is 5060) > externip=xx.xx.xx.xx > localnet=192.168.1.0/255.255.255.0 > bindaddr=0.0.0.0 ; IP address to bind to (0.0.0.0 binds > to all) > srvlookup=yes ; Enable DNS SRV lookups on outbound > calls > pedantic=no > register => > 7165555555@sip.broadvoice.com:mysecret:7165555555@sip.broadvoice.com > > [sip.broadvoice.com] > allow=ulaw > type=peer > user=phone > host=sip.broadvoice.com > fromdomain=sip.broadvoice.com > fromuser=716XXXXXXX > secret=mysecret > username=716XXXXXXX > insecure=very > context=from_broadvoice > authname=716XXXXXXX > dtmf=inband > dtmfmode=inband > ;Disable canreinvite if you are behind a NAT > ;canreinvite=no > nat=yes > > > > > _______________________________________________ > --Bandwidth and Colocation provided by Easynews.com -- > > asterisk-users mailing list > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-users > >