[Asterisk-Users] Stumped on vMail problem, any ideas?

Howard Leadmon howard at leadmon.net
Tue Jul 26 05:06:43 MST 2005



    Hello all,

 I think I have most of my AAH 1.3 setup running (Asterisk 1.0.9), but somehow
something is not quite right with my vMail setup.  I would have sworn this was
all working, but maybe I was just dreaming.

 Anyway here is what is happening, say I am on extension 200 and I want to
call to extension 201.   If extension 201 is no connected, then it rolls right
into vMail with the message the user is not available.   If I am talking on
201 then vMail responds with the user is currently on the phone, which is
great.   Where this goes wrong is if 201 is on hook, and ringing, in this case
it will just keep on ringing 201 forever, and never transfer into the vMail
system.   Needless to say this is NOT what I am looking to have happen, I
would like it to ring for say 30 seconds, and then transfer over to the
mailbox if the person doesn't answer.

Looking at my AAH extensions_additional.conf I see:

[ext-local]
include => ext-local-custom
exten => 200,1,Macro(exten-vm,200 at default,200)
exten => ${VM_PREFIX}200,1,Macro(vm,200)
exten => 201,1,Macro(exten-vm,201 at default,201)
exten => ${VM_PREFIX}201,1,Macro(vm,201)


Looking under my AAH extensions.conf I see the following marcro's:

; Ring an extension, if the extension is busy or there is no answer send it
; to voicemail
; ARGS: $VMBOX, $EXT
[macro-exten-vm]
exten => s,1,Setvar(FROMCONTEXT=exten-vm)
exten => s,2,Macro(record-enable,${ARG2},IN)
exten => s,3,Macro(dial,${RINGTIMER},${DIAL_OPTIONS},${ARG2})
exten => s,4,GotoIf($[${CHANNEL:0:5} = Local]?s-${DIALSTATUS},1) ; if the
channel is Local, then do not go to voicemail.  This is primarily to avoid vm
for call-forwarded extensions in ring groups
exten => s,5,GotoIf($[${ARG1} = novm]?s-${DIALSTATUS},1) ; no voicemail in use
for this extension
exten => s,6,NoOp(Sending to Voicemail box ${ARG1})
exten => s,7,Macro(vm,${ARG1},${DIALSTATUS})
exten => s-BUSY,1,NoOp(Extension is reporting BUSY and has no Voicemail)
exten => s-BUSY,2,Busy()
exten => s-BUSY,3,Wait(60)
exten => s-BUSY,4,NoOp()
exten => _s-.,1,Congestion()

[macro-vm]
exten => s,1,Goto(s-${ARG2},1)
exten => s-BUSY,1,Voicemail(b${ARG1})   ; Voicemail Busy message
exten => s-BUSY,2,Hangup()
exten => _s-.,1,Voicemail(u${ARG1})     ; Voicemail Unavailable message
exten => _s-.,2,Hangup()
exten => o,1,Background(one-moment-please)      ; 0 during vm message will
hangup
exten => o,2,GotoIf($["foo${FROM_DID}" =
"foo"]?from-pstn,s,1:from-pstn,${FROM_DID},1)
exten => a,1,VoiceMailMain(${ARG1})
exten => a,2,Hangup


Also looking I see the following globals defined that appear to apply:

RINGTIMER = 20
DIAL_OPTIONS = tr



I am quite new at this, but heck looks like it should work, but sure I am
probably missing something.   If someone has any ideas, or can lend a hand
getting this straight, I would sure appreciate it.  If I am not providing some
info that is needed to help, please let me know.  As heck I think I about have
this sucker running good enough to try and use it for real..  :)


 
---
Howard Leadmon - howard at leadmon.net
http://www.leadmon.net 






More information about the asterisk-users mailing list