We're trying to set up a phone number that customers can call to get a hold of 
anyone of a group of sysadmins (and not their voice mails!). We found the 
findme example ([1]) that makes the callees press 1 to accept the call. It 
almost works, but it doesn't work correctly when one of the callees, the 
sysadmins, hangs up after accepting the call.

We're using this 'screen' macro:

==============================
[default]
exten => _9999XXXXXXXXXX,1,Dial(SIP/bla/${EXTEN:4},40,M(screen))
exten => _9999XXXXXXXXXX,2,Hangup

[macro-screen]
exten => s,1,Wait(1)
exten => s,n,Background(press-1)
exten => s,n,WaitExten(10) ; the value is the Wait time before we assume the 
call is not accepted
exten => 1,1,NoOp(Caller accepted) ; Do not set MACRO_RESULT to anything to 
connect the caller
exten => t,1,Playback(weasels-eaten-phonesys) ; if you're too late with 
pressing 1
exten => t,n,Set(MACRO_RESULT=CONTINUE)

[findme]
exten =>  s,1,Set(CALLERID(all)="Alarm" <911>)
same  =>   n,Playback(please-wait-connect-oncall-eng)
same  =>   n,Dial(LOCAL/9999${WIEBE_MOBILE})
same  =>   n,Playback(vm-nobodyavail)
exten  =>  t,1,Playback(vm-nobodyavail)
=============================

First of all, what is MACRO_RESULT? I can't seem to find anything about that. 
Googling for it yields basically nothing.

But the biggest problem is when the callee answers, then hangs up. The person 
calling is connected to the phone that hangs up, instead of hearing 
'vm-nobodyavail'. This seems to be because there is nothing that sets 
MACRO_RESULT in that event (it's only set on 't', timeout).

I tried adding:

exten => h,1,Verbose(0,"The callee hung up")
exten => h,n,Set(MACRO_RESULT=CONTINUE)

to handle the hangup (h), but it's not doing that.

WaitExten() pushes the result back on the stack and restarts the context, 
right? So what is the result when the person hangs up?

Regards,

Wiebe

Sorry, but why is a simple

Dial(SIP/A&SIP/B&...,${CALLTIMEOUT},${DIALOPTS})
...
Hangup()

not acceptable? If necessary, one can try to find out which devices are technically available to avoid dialing a non-existent device. If pressing a "1" is acceptable, then why not pressing the "DND" to not accept the call?

jg

There's

--
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
New to Asterisk? Join us for a live introductory webinar every Thurs:
              http://www.asterisk.org/hello

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
  http://lists.digium.com/mailman/listinfo/asterisk-users

Reply via email to