[Asterisk-Users] External MW Lamp On/Off
Dunc
duncan at fizzypop.org
Wed Aug 18 05:19:29 MST 2004
Greg,
> Yes, it helps quite a bit. It shows me where Comedian Mail spawns the
> external app.
>
> Do you have a copy of your SIP MWI script? I may be able to use it as a
> starting point.
FWIW, I've been using my extensions.conf to set/unset MWI on phones
attached to Cisco Call Manager - it's a bit of a hack but I couldn't
find anything better searching around. We've got CM4 interconnected to
* with a SIP trunk.
To change the MWI status I spoof the caller ID and send a call from * to
the CM set or unset number, which doesn't sound so different from what
you need to do other than it's a SIP call that changes the MWI. I guess
you wouldn't need to worry about caller id as you'd be dialling out on
an analogue line.
It's not very pretty, but it seems to work OK, the main drawback is that
if a user retrieves their mail from someone else's phone the light stays
lit. I think that's fixable, but at the moment it's not a big deal for me.
Extract below - 100 is the voicemail entry point, and the 600/700
sequences in the h extension deal with figuring out what to do after
exit from voicemail.
Dunc
---
[globals]
VMAIL=0
[local]
; h - hangup
;
exten => h,1,GotoIf($[${VMAIL} != 0]?600)
exten => h,2,Hangup
;
; When exiting voicemail, check for new messages in the recipients
; mailbox and check that their MWI is set accordingly. 102022 at ccm
; unsets MWI, 112022 at ccm sets. Silly numbers that came about from
; getting the config togther. They need changing.
;
; This stuff actually needs to be in a context of its own, so that
; the h extension doesn't have to have the gotoif stuff. (maybe)
exten => h,600,SetCIDNum(${VMAIL})
exten => h,601,SetGlobalVar(VMAIL=0)
exten => h,602,HasNewVoicemail(${CALLERIDNUM}@default:INBOX)
exten => h,603,Dial(SIP/102022 at ccm)
exten => h,604,Hangup
exten => h,703,Dial(SIP/112022 at ccm)
exten => h,704,Hangup
;
;
;
; Voicemail.
; First, check if the call is a redirection (ie someone
; being transferred in to leave a message) - CM redirects to 1+<ccm ext>
; to indicate that this is the case. Set $VMAIL to the destination
; mailbox for exit handling (ugly).
;
; If it's not a redirect, send to voicemail with the callerid as the
; mailbox, otherwise use the diversion field.
exten => 100,1,Wait(1)
exten => 100,2,GotoIf($[${RDNIS}:1....]?9)
exten => 100,3,SetGlobalVar(VMAIL=${CALLERIDNUM})
exten => 100,4,VoicemailMain(${CALLERIDNUM})
exten => 100,5,Hangup
exten => 100,9,SetGlobalVar(VMAIL=${RDNIS:1})
exten => 100,10,Voicemail(u${RDNIS:1})
exten => 100,11,Hangup
More information about the asterisk-users
mailing list