[Asterisk-Users] Dial() Jumping behaviour and Vesrsion 1.2
bbench at mail.bg
bbench at mail.bg
Sun Jan 22 00:48:48 MST 2006
see inline
> The version 1.2 Dial() command does not use the n+101 jumping
> behaviour by default. I know about the j option and setting
> "priorityjumping=yes" as described here:
>
> http://www.voip-info.org/wiki/index.php?page=Asterisk+cmd+Dial
>
> But if I use the default behaviour does that mean I have to check the
> DIALSTATUS to determine whether or not to go to voicemail?
No but is good idea
> For example I used to do this:
>
> exten => s,1,Dial(SIP/${EXTEN}@2123456789,20,t)
> exten => s,2,Voicemail(u${EXTEN})
> exten => s,3,Goto(s,200)
> ;
> exten => s,102,Voicemail(b${EXTEN})
> exten => s,103,Goto(s,200)
> ;
> exten => s,200,Playback(CallAgainRealSoon)
> exten => s,201,Hangup
> ;
> exten => h,1,Hangup
>
> So in 1.2 would I do the following or am I missing something?
No but is good idea
or you can use "n" instead of "s"
or
exten => 1234,1,Dial(SIP/${EXTEN}@2123456789,20,t)
exten => 1234,n,Voicemail(u${EXTEN)
exten => 1234,dial+101,Voicemail(b${EXTEN})
or even better use a macro (since your way is very close to that)
(see below)
> exten => s,1,Dial(SIP/${EXTEN}@2123456789,20,t)
> exten => s,2,GotoIf($["${DIALSTATUS }" = "BUSY"]?10)
> exten => s,3,GotoIf($["${DIALSTATUS }" = "NOANSWER"]?20)
> ;
> exten => s,10,Voicemail(b${EXTEN})
> exten => s,11,Goto(s,100)
> ;
> exten => s,20,Voicemail(u${EXTEN})
> exten => s,21,Goto(s,100)
> ;
> exten => s,100,Playback(CallAgainRealSoon)
> exten => s,101,Hangup
> ;
> exten => h,1,Hangup
[your-internal-context]
exten =>1234,1,Macro(stdexten,${EXTEN},SIP/${EXTEN},20,t)
[macro-stdexten]; straight from the extensionsconf sample
;; ${ARG1} - Extension (we could have used ${MACRO_EXTEN} here as well
;; ${ARG2} - Device(s) to ring
;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(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(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})
benchev
More information about the asterisk-users
mailing list