It looks like I’ve got a problem with FreePBX. Callers are unable to leave a message when they are transfered to voice mail and the extension has VmX Locator enabled. Has any one seen this before?
Here’s how it happens. A caller dials in and reaches an extension. A person answers the extension. Then, the person presses the Flash button, enters the feature code for voice mail and their extension, and then hangs up. The caller hears the unavailable message, but then hears an error message and the call disconnects.
If I disable VmX Locator on the extension, the above process works. It also works if the person does an attended transfer, staying on the line until the message has been left.
Software version: Asterisk 1.6.0.6, FreePBX 2.5.1.1
Excerpt from the log file: (DAHDI/32 = extension, DAHDI/2 = incoming line)
– Goto (macro-vm,vmx,1)
– Executing [vmx@macro-vm:1] GotoIf(“DAHDI/31-2”, “0?s-DIRECTDIAL,1”) in new stack
– Executing [vmx@macro-vm:2] Set(“DAHDI/31-2”, “MODE=unavail”) in new stack
– Executing [vmx@macro-vm:3] GotoIf(“DAHDI/31-2”, “0?notdirect”) in new stack
– Executing [vmx@macro-vm:4] Set(“DAHDI/31-2”, “MODE=unavail”) in new stack
– Executing [vmx@macro-vm:5] NoOp(“DAHDI/31-2”, “Checking if ext 252 is enabled: enabled”) in new stack
– Executing [vmx@macro-vm:6] GotoIf(“DAHDI/31-2”, “0?s-DIRECTDIAL,1”) in new stack
– Executing [vmx@macro-vm:7] Macro(“DAHDI/31-2”, “get-vmcontext,252”) in new stack
– Executing [s@macro-get-vmcontext:1] Set(“DAHDI/31-2”, “VMCONTEXT=default”) in new stack
– Executing [s@macro-get-vmcontext:2] GotoIf(“DAHDI/31-2”, “0?200:300”) in new stack
– Goto (macro-get-vmcontext,s,300)
– Executing [s@macro-get-vmcontext:300] NoOp(“DAHDI/31-2”, “”) in new stack
– Executing [vmx@macro-vm:8] AGI(“DAHDI/31-2”, “checksound.agi,/var/spool/asterisk/voicemail/default/252/temp”) in new stack
– Launched AGI Script /var/lib/asterisk/agi-bin/checksound.agi
checksound.agi,/var/spool/asterisk/voicemail/default/252/temp: VmX requires: /var/spool/asterisk/voicemail/default/252/temp.wav or .WAV exist in order to function
– <DAHDI/31-2>AGI Script checksound.agi completed, returning 0
– Executing [vmx@macro-vm:9] GotoIf(“DAHDI/31-2”, “0?tmpgreet”) in new stack
– Executing [vmx@macro-vm:10] AGI(“DAHDI/31-2”, “checksound.agi,/var/spool/asterisk/voicemail/default/252/unavail”) in new stack
– Launched AGI Script /var/lib/asterisk/agi-bin/checksound.agi
– <DAHDI/31-2>AGI Script checksound.agi completed, returning 0
– Executing [vmx@macro-vm:11] GotoIf(“DAHDI/31-2”, “0?nofile”) in new stack
– Executing [vmx@macro-vm:12] Set(“DAHDI/31-2”, “LOOPCOUNT=0”) in new stack
– Executing [vmx@macro-vm:13] GotoIf(“DAHDI/31-2”, “1?vmxtime”) in new stack
– Goto (macro-vm,vmx,15)
– Executing [vmx@macro-vm:15] GotoIf(“DAHDI/31-2”, “1?vmxloops”) in new stack
– Goto (macro-vm,vmx,17)
– Executing [vmx@macro-vm:17] GotoIf(“DAHDI/31-2”, “1?vmxanswer”) in new stack
– Goto (macro-vm,vmx,19)
– Executing [vmx@macro-vm:19] Answer(“DAHDI/31-2”, “”) in new stack
– Executing [vmx@macro-vm:20] Read(“DAHDI/31-2”, “ACTION,/var/spool/asterisk/voicemail/default/252/unavail,1,skip,1,2”) in new stack
– Accepting a maximum of 1 digits.
– <DAHDI/31-2> Playing ‘/var/spool/asterisk/voicemail/default/252/unavail.slin’ (language ‘en’)
– Hungup ‘DAHDI/2-1’
– User entered nothing.
– Executing [vmx@macro-vm:21] GotoIf(“DAHDI/2-1”, “0?checkopt”) in new stack
– Executing [vmx@macro-vm:22] NoOp(“DAHDI/2-1”, “Timeout: going to timeout dest”) in new stack
– Executing [vmx@macro-vm:23] Set(“DAHDI/2-1”, “VMX_OPTS=”) in new stack
– Executing [vmx@macro-vm:24] GotoIf(“DAHDI/2-1”, “1?chktime”) in new stack
– Goto (macro-vm,vmx,26)
– Executing [vmx@macro-vm:26] GotoIf(“DAHDI/2-1”, “1?dotime”) in new stack
– Goto (macro-vm,vmx,32)
– Executing [vmx@macro-vm:32] Goto(“DAHDI/2-1”, “,dovm,1”) in new stack
– Goto (macro-vm,dovm,1)
– Executing [dovm@macro-vm:1] NoOp(“DAHDI/2-1”, “VMX Timeout - go to voicemail”) in new stack
– Executing [dovm@macro-vm:2] VoiceMail(“DAHDI/2-1”, “12@default,”"") in new stack
app_voicemail.c: No entry in voicemail config file for ‘12’
– Executing [dovm@macro-vm:3] Goto(“DAHDI/2-1”, “exit-FAILED,1”) in new stack
– Goto (macro-vm,exit-FAILED,1)
– Executing [exit-FAILED@macro-vm:1] Playback(“DAHDI/2-1”, “im-sorry&an-error-has-occured”) in new stack
– <DAHDI/2-1> Playing ‘im-sorry.slin’ (language ‘en’)
– <DAHDI/2-1> Playing ‘an-error-has-occured.slin’ (language ‘en’)