[asterisk-users] Call does not go to voicemail

thelma at sys-concept.com thelma at sys-concept.com
Mon May 8 18:51:37 CDT 2017

On 05/08/2017 04:37 PM, Tim S wrote:
> The "error" I was talking about was in your log:
> "...== Spawn extension (extensions, 4, 3) exited non-zero on
> 'IAX2/home_server-6364'..."
> The call terminated here in a error which prevented the dialplan from
> continuing.  Something there is broken, my recommendation is to check
> you registrations first inside asterisk:
>> sip show peers

"sip show peers" is showing FD_L2 (SIP/54 is registered)
Name/username             Host                                    Dyn Forcerport Comedia    ACL Port     Status      Description                      
12                        (Unspecified)                            D  No         No             0        Unmonitored                                  
4/4                                             D  No         No             5060     Unmonitored                                  
54/54                                          D  No         No             5060     Unmonitored

> Something wasn't "happy" about SIP/54 in your system when Asterisk tried
> talking to it.
> So you tried this:
> "...
> Even when I put:
> exten => 4,n,GotoIf($["${DIALSTATUS}"="BUSY"]?line2)
> exten => 4,n(line2),Dial(${FD_L2},20,trw)
> exten => 4,n(line2),Voicemail(4)
> ..."
> What that will do is go to the first instance of "4,n(line2)", which is
> the line that seems to be triggering the channel failure.  If you have
> the Asterisk console open, I'll bet you see it spew some errors when you
> try that extension routine.
> Asterisk dial plans are a serial processes, the first line that Asterisk
> comes across that meets the matching for a given extension and label is
> what it will run first.  What you have is two lines that will match both
> extension and label - that's not really good form.
> My dial plan suggestion from last night would result in the functionality:
> Ring extension 4/Line_1, timeout 25 seconds --> if not busy then
> voicemail, else ring extension 4/Line_2, timeout 20 seconds --> voicemail.
> Again, I think you have two problems, and the bigger one is causing the
> annoying unexpected behavior in your dial plan
> Try doing the extension 4 without the Line_1 and see what happens:
> "...
> exten => 4,1,Dial(${FD_L2},20,trw)
> exten => 4,n(vmail),Voicemail(4)
> exten => 4,n,Hangup()
> ..."

I have tired the above plan with small change 4,n,Voicemail(4) (as there is no gotoif statement)
exten => 4,1,Dial(${FD_L2},20,trw)
exten => 4,n,Voicemail(4)
exten => 4,n,Hangup()

Line 2 is ring OK, and if nobody pickup the phone it goes to "Voicemail(4)" so this part is working; there were no errors on the command line.


But I've tired it again, this dialplan) as before and you are correct something is wrong but command line is not showing any errors:

exten => 4,1,Dial(${FD_L1},25,trw)
exten => 4,n,GotoIf($["${DIALSTATUS}"="BUSY"]?line2:)
exten => 4,n(line2),Dial(${FD_L2},20,rw)
exten => 4,n,Voicemail(4)
exten => 4,n,Hangup()

I've tried: 
exten => 4,n,GotoIf($["${DIALSTATUS}"="BUSY"]?line2)
exten => 4,n,GotoIf($["${DIALSTATUS}"="BUSY"]?line2:)
exten => 4,n,GotoIf($["${DIALSTATUS}"="BUSY"]?:line2)

And I get:

   -- Called SIP/4
    -- SIP/4-00000306 is ringing
    -- Nobody picked up in 25000 ms
    -- Executing [4 at extensions:2] GotoIf("IAX2/home_server-435", "0?line2:") in new stack
    -- Executing [4 at extensions:3] Dial("IAX2/home_server-435", "SIP/54,20,rw") in new stack
  == Using SIP RTP CoS mark 5
    -- Called SIP/54
    -- SIP/54-00000307 is ringing
  == Spawn extension (extensions, 4, 3) exited non-zero on 'IAX2/home_server-435'
    -- Hungup 'IAX2/home_server-435'

So FD_L1 (exten: 4) is ringing for 25sec.; nobody pickup the phone and command line is showing it goes to: FD_L2 (SIP/54) 
-- SIP/54-00000307 is ringing

but in reality FD_L2 (SIP/54) is not ringing at all, it should ring line_2 for 20sec and go to Voicemail but as soon as it prints line:
-- SIP/54-00000307 is ringing

it hangs up the phone.


More information about the asterisk-users mailing list