Quoting Philipp Kempgen <[EMAIL PROTECTED]>: >> exten => s,1,Answer() >> exten => s,n,Goto(s-${DIALSTATUS},1) > > This still doesn't make sense because you did not Dial() > before jumping based on ${DIALSTATUS}.
Ok, make sense. But still no go: ----- s n i p ----- [default] exten => s,1,Answer() exten => s,2,Dial(SIP/${EXTEN},20,t) exten => s,4,Goto(default,s-${DIALSTATUS},1) exten => s-CANCEL,1,Hangup() exten => s-DONTCALL,1,Voicemail(${EXTEN},u) exten => s-NOANSWER,1,Voicemail(${EXTEN},u) exten => s-BUSY,1,Voicemail(${EXTEN},b) exten => 2403,1,Hangup() exten => _X.,1,Playback(pbx-invalid) exten => _X.,2,Hangup() ----- s n i p ----- If I didn't have the '2403,1,Hangup()' line, I just got 'No such extension'. If I instead put: ----- s n i p ----- exten => 2403,1,Dial(SIP/${EXTEN},20,t) exten => 2403,2,Set(GLOBAL(ORIGEXTEN)=${EXTEN}) exten => 2403,3,Goto(default,s-${DIALSTATUS},1) ----- s n i p ----- And changed the 'EXTEN' to 'ORIGEXTEN' in some places, added the 'Set()' in some other (mainly as prio 3 in the 's,...' lines) it works. But the whole idea here was so that I wouldn't have to use so many lines... The 's,...' part is STILL not 'executed'...! >>> exten => _X.,1,Dial(SIP/${EXTEN},20) >>> exten => _X.,n,Goto(s-${DIALSTATUS},1) >> >> > Well, I don't want the first part > > Then maybe > > [default] > exten => _X.,1,Dial(SIP/${EXTEN},20) > exten => _X.,n,Goto(s-${DIALSTATUS},1) How are these different? > Or you could define every extension and use a macro. There's an example > in the default extensions.conf file (if you ran `make samples`). Ah, got it... A little modifications for my need, and of I went! For the archive: ----- s n i p ----- [macro-catchstatus] exten => s,1,Dial(SIP/${ARG1},20,t) ; Dial the extension, maximum 20 seconds exten => s,2,Goto(s-${DIALSTATUS},1) ; Go to relevant dial status exten => s-CANCEL,1,Hangup() exten => s-DONTCALL,1,Voicemail(${ARG2},u) ; Direct caller to the voicemail w/ unavailible exten => s-NOANSWER,1,Voicemail(${ARG2},u) ; Direct caller to the voicemail w/ unavailible exten => s-NOANSWER,2,Goto(default,s,1) ; If they press #, return to start exten => s-BUSY,1,Voicemail(${ARG2},b) ; Direct caller to the voicemail w/ busy exten => s-BUSY,2,Goto(default,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(${ARG2}) ; If they press *, send the user into VoicemailMain [default] exten => s,1,Answer() ; Can't Playtones unless we answer the line first exten => 2403,1,Macro(catchstatus,${EXTEN},${EXTEN}) ----- s n i p ----- One line per extension, exactly how I wanted it originally. Thanx for the pointers! _______________________________________________ --Bandwidth and Colocation Provided by http://www.api-digital.com-- asterisk-users mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-users