[Asterisk-Users] anyone use mailboxexists?

Michael George george at auroravideosys.com
Fri Jun 18 12:44:31 MST 2004


On Jun 18, 2004, at 10:57 AM, Jeremy Jones wrote:
>>  From the docs, it looks like MailboxExists() will add 101 to the
>> priority if the box *does* exist and goes to the next priority if not.
>
> I think the "show application mailboxexists" documentation is wrong.  I
> believe it's the other way around.  It does exits? Jump to next
> priority.  It doesn't?  Jump to n+101.  Here's my extension macro (sift
> out the forwarding stuff if you don't like that), and it works:

Odd...  I did a make update and how the MailboxExists works fine.  
However, it works just as the docs say: add 101 to priority if the box 
*does* exist, add 1 if not.  I have tested it and this seems to be how 
it works.  You may wish to test your flow and make sure it works as you 
think it does.

> [macro-stdexten]
> exten=s,1,MailboxExists(${MACRO_EXTEN:3}@${MACRO_CONTEXT})	;If
> mailbox exists continue at 2, otherwise goto 102
> exten=s,2,NoOp							;Filler
> exten=s,3,NoOp							;Filler
> exten=s,4,NoOp							;Filler
> exten=s,5,NoOp							;Filler
> exten=s,6,DBget(temp=CFIM/${ARG1})				;Get
> CFIM key, if not existing, goto 107
> exten=s,7,Dial(${TRUNK}/9${temp})
> ;Unconditional forward
> exten=s,8,NoOp							;Filler
> exten=s,9,Dial(${ARG2},25,rtT)				;Dial device for
> 25 seconds, goto 10 if busy, goto 110 if unavailable
> exten=s,10,NoOp							;Filler
> exten=s,11,DBget(temp=CFBS/${ARG1})				;Get
> CFBS key, if not existing, goto 112
> exten=s,12,Dial(${TRUNK}/9${temp})				;Forward
> on busy or unavailable
> exten=s,102,DBget(temp=CFIM/${ARG1})			;Get CFIM key,
> if not existing, goto 203
> exten=s,103,Dial(${TRUNK}/9${temp})
> ;Unconditional forward
> exten=s,104,Dial(${ARG2},120,rtT)				;Dial
> device for 120 seconds, goto 105 if busy, goto 205 if unavailable
> exten=s,105,DBget(temp=CFBS/${ARG1})			;Get CFBS key,
> if not existing, goto 206
> exten=s,106,Dial(${TRUNK}/9${temp})				;Forward
> on busy or unavailable
> exten=s,107,Goto(s,9)						;Goto 9
> exten=s,110,Voicemail(u${MACRO_EXTEN:3}@${MACRO_CONTEXT})	;To VM
> if unavailable
> exten=s,111,Hangup						;Hang up
> the channel when vm exits
> exten=s,112,Voicemail(b${MACRO_EXTEN:3}@${MACRO_CONTEXT})	;To VM
> if busy
> exten=s,113,Hangup						;Hang up
> the channel when vm exits
> exten=s,203,Goto(s,104)						;Goto
> 104 for accounts w/out vm
> exten=s,205,Busy()						;Busy
> signal if busy & no vm
> exten=s,206,Busy()						;Busy
> signal if no answer in 2 min & no vm
>
> It's a little ugly w/all those NoOps, but I think I need those to get
> the priorities right.
>
> Jeremy Jones
>
>
>
> _______________________________________________
> Asterisk-Users mailing list
> Asterisk-Users at lists.digium.com
> http://lists.digium.com/mailman/listinfo/asterisk-users
> To UNSUBSCRIBE or update options visit:
>    http://lists.digium.com/mailman/listinfo/asterisk-users
>
>

-Michael




More information about the asterisk-users mailing list