[asterisk-users] Struggling with Macros and "s" Extension
Alan Lord (News)
alanslists at gmail.com
Thu Jul 16 07:08:25 CDT 2009
Hi all,
I'm sure this has been done before but I just can't figure it out.
On my * box I have a simple IVR:
[tolc_menu] ; Welcome and information to callers
exten => s,1,Answer()
exten => s,n,Wait(2)
exten => s,n,Background(welcome-to-tolc) ; Say Hello
exten => s,n,Wait(1)
exten => s,n(tryagain),Background(enter-ext-of-person&or) ; Enter
extension number if known, or
exten => s,n,Background(pls-stay-on-line) ; Trying to connect...
exten => s,n,WaitExten(5)
exten => s,n,Macro(belllord,${ALANL}&${ALANB},303)
exten => _10[1-5],1,Macro(call_extension,SIP/${EXTEN})
exten => _20[1-5],1,Macro(call_extension,IAX2/alanb/${EXTEN})
.
.
.
Hopefully you'll see that the caller can either enter an extension
number or wait. If they wait, we use macro-belllord:
[macro-belllord]
exten => s,1,Dial(${ARG1},20,t)
exten => s,n,Goto(s-${DIALSTATUS},1)
exten => s-NOANSWER,1,Voicemail(${ARG2}@business,u) ; business is the
voicemail context, ${ARG2} is the mailbox number to dial
exten => s-NOANSWER,n,Hangup()
exten => s-BUSY,1,Voicemail(${ARG2}@business,b)
exten => s-BUSY,n,Hangup()
exten => _s-.,1,Goto(s-NOANSWER,1)
The Vars ALANL and ALANB are:
ALANL=SIP/101
ALANB=IAX2/alanb/202
If I call in, dial the extension (say 101) and connect, then the Link
Event on the AMI port (and in CDRs) correctly displays *both* numbers of
the connection.
For that scenario we use macro-call_extention:
[macro-call_extension]
exten => s,1,Dial(${ARG1},20,t) ; Ring channel for up to 20s
exten => s,n,Goto(s-${DIALSTATUS},1) ; Go to either no answer or busy.
exten => s-NOANSWER,1,Voicemail(${MACRO_EXTEN}@garden_house,u)
exten => s-BUSY,1,Voicemail(${MACRO_EXTEN}@garden_house,b)
exten => _s-.,1,Goto(s-NOANSWER,1)
If however I wait and let macro-belllord do it's stuff. I only ever see
"s" as the called party's number.
I really need to know what that extension number is.
Could someone help me and show how I can rejig this? It was suggested to
do something with ${MACRO_EXTEN} but I can't get it at all...
Many thanks in advance.
Alan
More information about the asterisk-users
mailing list