Unable to access VM "My Mailbox' feature code

Well without the contexts over each dialplan section noone can help you. From what you have posted, it seems that you have a ringgoup with the same extension number as your phone. Also the ##1602 extension is different from the one that you have posted earlier. Finally the last message means that you have a dialpattern at your outbound route or your trunk with only a . In the trunk is ok but if it is in the outbound route might cause you problems. Jut replace it with the following pattern

XXXX.

Don’t know if it has anything to do with your problem but changed it. Related to your problem try again to dial from your extension the ##1602 extension and upload the log.

I’m more than happy to upload the entire extensions_additional file, but it’s not letting me - it only allows graphics…

There was a framework update today. Info didn’t indicate anything that I’d expect to pertain to this issue, but after it was installed, I’m now at least able to use my direct-to-vm codes again (##+extension). Still can’t access my voicemail box directly via feature code.

Did some additional testing now - Made the code *92 (no conflicts with other codes on the features page (did a text search to confirm), and it also has the same failure. But when I make it a 4-digit extension, it’s fine. I then made the code #93 - it worked. Made it *93, it failed. Made it #0#, it worked.

Seems to not like the * codes now instead of the # codes.

I’ve not touched the system since my initial testing yesterday, except to load the new framework module today (and then re-test with these results).

Post a log from the cli to see what is happenig when you dial *93.

Are you sure you’re trying to solve the right issue? Keep in mind that I often ask stupid questions, but I’m not clear on the problem:

## is “In-Call blind transfer”. That makes sense, why would you transfer a call that isn’t there?
##extension is “blind transfer to extension”
##*extension is “blind transfer to voice mail at extension”

Note the “*” on that last one. Without that, you are transferring to an extension.
Also, the “##” code is only useful while you are in a call. If you want a cheap thrill, try it with “*2*extension” which is an attended transfer to an extension’s voicemail. This way, you can listen in on them connecting to the extension’s voicemail.

*98 is ComedianMail “Front End”
*97 is “Voicemail for my extension” assuming you have a voicemail box associated with this extension.
*65 is “announce my extension” but it requires a VM Mailbox to work, so if you dial *65 and get “Your extension number is” without anything else, your mailbox number isn’t set.

Connected to Asterisk 13.7.2 currently running on pbx-admin (pid = 2266)
[2016-05-05 14:31:30] SECURITY[2636]: res_security_log.c:116 security_event_stasis_cb: SecurityEvent=“ChallengeSent”,EventTV=“2016-05-05T14:31:30.154-0400”,Severity=“Informational”,Service=“SIP”,EventVersion=“1”,AccountID=“sip:1602@”,SessionID=“0x7f5d743763e8”,LocalAddress=“IPV4/UDP//5060”,RemoteAddress=“IPV4/UDP//22480”,Challenge=“42dbfc68”
== Using SIP VIDEO TOS bits 136
== Using SIP VIDEO TOS bits 136 in TCLASS field.
== Using SIP VIDEO CoS mark 5
== Using SIP RTP TOS bits 184
== Using SIP RTP TOS bits 184 in TCLASS field.
== Using SIP RTP CoS mark 6
== Extension Changed 1602[ext-local] new state InUse for Notify User 1777
== Extension Changed 1602[ext-local] new state InUse for Notify User 1601
== Extension Changed 1602[ext-local] new state InUse for Notify User 1602
[2016-05-05 14:31:30] SECURITY[2636]: res_security_log.c:116 security_event_stasis_cb: SecurityEvent=“SuccessfulAuth”,EventTV=“2016-05-05T14:31:30.242-0400”,Severity=“Informational”,Service=“SIP”,EventVersion=“1”,AccountID="*0#",SessionID=“0x7f5d743763e8”,LocalAddress=“IPV4/UDP//5060”,RemoteAddress=“IPV4/UDP//22480”,UsingPassword=“1”
– Executing [*0#@from-internal:1] GotoIf(“SIP/1602-00000244”, “1?hangup”) in new stack
– Goto (from-internal,*0#,3)
– Executing [*0#@from-internal:3] Hangup(“SIP/1602-00000244”, “”) in new stack
== Spawn extension (from-internal, *0#, 3) exited non-zero on ‘SIP/1602-00000244’
– Executing [h@from-internal:1] Macro(“SIP/1602-00000244”, “hangupcall”) in new stack
– Executing [s@macro-hangupcall:1] GotoIf(“SIP/1602-00000244”, “1?theend”) in new stack
– Goto (macro-hangupcall,s,3)
– Executing [s@macro-hangupcall:3] ExecIf(“SIP/1602-00000244”, “0?Set(CDR(recordingfile)=)”) in new stack
– Executing [s@macro-hangupcall:4] Hangup(“SIP/1602-00000244”, “”) in new stack
== Spawn extension (macro-hangupcall, s, 4) exited non-zero on ‘SIP/1602-00000244’ in macro ‘hangupcall’
== Spawn extension (from-internal, h, 1) exited non-zero on ‘SIP/1602-00000244’
== Extension Changed 1602[ext-local] new state Idle for Notify User 1777 (queued)
== Extension Changed 1602[ext-local] new state Idle for Notify User 1601 (queued)
== Extension Changed 1602[ext-local] new state Idle for Notify User 1602 (queued)

Calling from x1602 in this test to *0#. Just like the previous log print, it seems to only show a few lines of the script it’s following - when I make it a successful call (change the code to something like “1234”), there are many more lines to the script, but the snippets from the config show 21 lines for the app-dial-vm.

Basically, it looks like it jumps right to the “Hangup” line.

Cynjut, I don’t use the default feature codes - haven’t for years.
Dial VM: #0*
My VM: *0#

There is no duplication of these codes, unless a remnant was left behind in the config somewhere (which would certainly be odd, since we haven’t changed these codes in years).

Clearly not, according to your own log file output. There is no “*0#” in the “from-internal” context.

Of course, I’m probably wrong. Sorry to bother you.

That’s what’s so strange - here’s what’s in the dialplan:

[app-vmmain]
include => app-vmmain-custom
exten => *0#,1,Answer
exten => *0#,n,Wait(1)
exten => *0#,n,Macro(user-callerid,)
exten => *0#,n,Macro(get-vmcontext,${AMPUSER})
exten => *0#,n(check),Set(VMBOXEXISTSSTATUS=${IF(${VM_INFO(${AMPUSER}@${VMCONTEXT},exists)}?SUCCESS:FAILED)})
exten => *0#,n,GotoIf($["${VMBOXEXISTSSTATUS}" = “SUCCESS”]?mbexist)
exten => *0#,n,VoiceMailMain()
exten => *0#,n,GotoIf($["${IVR_RETVM}" = “RETURN” & “${IVR_CONTEXT}” != “”]?playret)
exten => *0#,n,Macro(hangupcall,)
exten => *0#,check+101(mbexist),GotoIf($["${DB(AMPUSER/${AMPUSER}/novmpw)}"!=""]?novmpw:vmpw)
exten => *0#,n(novmpw),Noop(Verifying channel ${CHANNEL} is actually ${AMPUSER})
exten => *0#,n,GotoIf($["${REGEX("^${DB(DEVICE/${AMPUSER}/dial)}-[0-9a-fx]+$" ${CHANNEL})}"!=“1”]?vmpws)
exten => *0#,n,VoiceMailMain(${AMPUSER}@${VMCONTEXT},s)
exten => *0#,n,Goto(vmend)
exten => *0#,n(vmpws),Noop(Channel ${CHANNEL} is NOT ${AMPUSER} forcing VM Password)
exten => *0#,n(vmpw),VoiceMailMain(${AMPUSER}@${VMCONTEXT})
exten => *0#,n,Goto(vmend)
exten => *0#,n(vmend),GotoIf($["${IVR_RETVM}" = “RETURN” & “${IVR_CONTEXT}” != “”]?playret)
exten => *0#,n,Macro(hangupcall,)
exten => *0#,n(playret),Playback(beep&you-will-be-transfered-menu&silence/1)
exten => *0#,n,Goto(${IVR_CONTEXT},return,1)

;–== end of [app-vmmain] ==–;

[app-dialvm]
include => app-dialvm-custom
exten => #0*,1,Macro(user-callerid,)
exten => #0*,n,Answer
exten => #0*,n(start),Wait(1)
exten => #0*,n,Noop(app-dialvm: Asking for mailbox)
exten => #0*,n,Read(MAILBOX,vm-login,3,2)
exten => #0*,n(check),Noop(app-dialvm: Got Mailbox ${MAILBOX})
exten => #0*,n,Macro(get-vmcontext,${MAILBOX})
exten => #0*,n,Set(VMBOXEXISTSSTATUS=${IF(${VM_INFO(${MAILBOX}@${VMCONTEXT},exists)}?SUCCESS:FAILED)})
exten => #0*,n,GotoIf($["${VMBOXEXISTSSTATUS}" = “SUCCESS”]?good:bad)
exten => #0*,n,Macro(hangupcall,)
exten => #0*,n(good),Noop(app-dialvm: Good mailbox ${MAILBOX}@${VMCONTEXT})
exten => #0*,n,VoiceMailMain(${MAILBOX}@${VMCONTEXT})
exten => #0*,n,GotoIf($["${IVR_RETVM}" = “RETURN” & “${IVR_CONTEXT}” != “”]?playret)
exten => #0*,n,Macro(hangupcall,)
exten => #0*,n(bad),Noop(app-dialvm: BAD mailbox ${MAILBOX}@${VMCONTEXT})
exten => #0*,n,Wait(1)
exten => #0*,n,Noop(app-dialvm: Asking for password so people can’t probe for existence of a mailbox)
exten => #0*,n,Read(FAKEPW,vm-password,3,2)
exten => #0*,n,Noop(app-dialvm: Asking for mailbox again)
exten => #0*,n,Read(MAILBOX,vm-incorrect-mailbox,3,2)
exten => #0*,n,Goto(check)
exten => #0*,n,Macro(hangupcall,)
exten => #0*,n(playret),Playback(beep&you-will-be-transfered-menu&silence/1)
exten => #0*,n,Goto(${IVR_CONTEXT},return,1)

How is this getting included in [from-internal]? I don’t see it getting called anywhere.

You should check where these two apps are included in your dialplan as cynjut asked. I think they are in ext-local in extensions_additional but I am not sure. Don’t grep the file, open it with vim and search the two apps using the following triggers

/app-vmmain
/app-dialvm

Nevertheless this is kinda weird, why the apps are included in the dialplan when normal numbers are being used?

That was a snippit from the FPBX-generated file “extensions_additional”, so I would assume it is called from another section of the file, or another file entirely by the FPBX 13 deployment design.

But, in fact, it isn’t. You’d see the call to the app in the log file output, and we clearly don’t. Off hand, I’d say there’s an missing or errant “#include” or the custom-context isn’t registered in the custom-context context.

Every file that starts with the word extensions is your dialplan, somewhere is these files the two apps are being included. Normally in the extensions_additional.

But when I change the code to, say, “1234”, it now works. Would that be an issue with FPBX not assembling the file properly because of what that code is (seems somewhat odd for that to be the case, especially since we deploy these feature codes on new builds all the time). I’m thinking there’s logic somewhere else that includes the contents of these other files.

There’s been a lot of discussion about the order in which things get included. It could be that something has changed in the order in which input gets handled.

Also, remember that “*0” is already being used in the system in a couple of different ways. Also, the “#” character at the end of a dial-string has some specific meaning to Asterisk.

One other thing - there’s a new way to add apps to the system. I remember seeing something about a change to the way that applications were being registered in the system - I don’t have any more info than it was six weeks/two months ago. It was something about “in call” features that could be added in the context. Maybe that will remind one of the pros.

If you’re an old hand at reading all of the contexts, you can probably find it. There’s probably not more than a couple hundred thousand lines of admin code and a few thousand lines of new context information.

Also, there’s no guarantee that it’s not an Asterisk thing (FreePBX and Asterisk are different things). It could be a new limitation imposed on Asterisk that we just haven’t figured out yet. Knowing that there have been a literal sh*t-ton of changes in Asterisk 13, it’s becoming clear that something is jacking you up in a way that no one expected to be an issue.

Regardless - SOMETHING in your current configuration is keeping this from working.

To clarify, #0 or *0 are not used anywhere else -all default feature codes were changed long ago and there are no conflicts. Whatever this was, it happened over the weekend. There was an improvement with a recent framework update - I’m thinking the way a file is formatted or organized might have changed, causing the issue.

Submit a ticket - you’ve stumped the band.

I admit I didn’t read the whole thread, but had this this morning. Found out that the voicemail was disabled and waiting for an upgrade. Once we did that voila it worked fine. For what it’s worth…

In this case, if I change the feature code to something else, I can access just fine. Also my direct to voicemail codes work. :frowning:

Well to end all this misery, change the feature codes to only numerical extensions and put the following dialplan in your extensions_custom under the from-internal-custom context

exten => 0#,1,Goto(app-vmmain,the extension number of this feature code,1)
exten => #0
,1,Goto(app-dialvm,the extension number of this feature code,1)