Unable to access VM "My Mailbox' feature code

Good morning all.

This morning we came in and were unable to access voicemail. Our feature code is *0# for voicemail (and has worked for years on various deployments).

When we change the feature code to something like 1234, it works fine, but when it’s put back to 0#, the phones report NO RESPONSE (even though it’s an instant NO RESPONSE - no time for a timeout to occur), which is what it was doing this morning. Also, our Voicemail access feature code (#0 or #0*+Extension) works just fine.

Does anyone have any thoughts?

Here’s are two Asterisk traces of a successful call attempt (when we made the feature code “1234”, and when the feature code was back to it’s normal “*0#” (what bothers me is the *0# code, the call attempt looks like it’s missing the first part of the call setup when I compare it to a working call to a working feature code).

FAILED:
[2016-05-02 12:16:52] SECURITY[2636]: res_security_log.c:116 security_event_stasis_cb: SecurityEvent=“ChallengeSent”,EventTV=“2016-05-02T12:16:52.578-0400”,Severity=“Informational”,Service=“SIP”,EventVersion=“1”,AccountID="sip:[email protected]",SessionID=“0x7f5d7430dfe8”,LocalAddress=“IPV4/UDP//5060”,RemoteAddress=“IPV4/UDP//22443”,Challenge=“535c86d3”
== 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 1601
== Extension Changed 1602[ext-local] new state InUse for Notify User 1777
== Extension Changed 1602[ext-local] new state InUse for Notify User 1602
– Executing [*0#@from-internal:1] GotoIf(“SIP/1602-0000000c”, “1?hangup”) in new stack
– Goto (from-internal,*0#,3)
– Executing [*0#@from-internal:3] Hangup(“SIP/1602-0000000c”, “”) in new stack
== Spawn extension (from-internal, *0#, 3) exited non-zero on ‘SIP/1602-0000000c’
– Executing [h@from-internal:1] Macro(“SIP/1602-0000000c”, “hangupcall”) in new stack
– Executing [s@macro-hangupcall:1] GotoIf(“SIP/1602-0000000c”, “1?theend”) in new stack
– Goto (macro-hangupcall,s,3)
– Executing [s@macro-hangupcall:3] ExecIf(“SIP/1602-0000000c”, “0?Set(CDR(recordingfile)=)”) in new stack
– Executing [s@macro-hangupcall:4] Hangup(“SIP/1602-0000000c”, “”) in new stack
== Spawn extension (macro-hangupcall, s, 4) exited non-zero on ‘SIP/1602-0000000c’ in macro ‘hangupcall’
== Spawn extension (from-internal, h, 1) exited non-zero on ‘SIP/1602-0000000c’
== Extension Changed 1602[ext-local] new state Idle for Notify User 1601 (queued)
== Extension Changed 1602[ext-local] new state Idle for Notify User 1777 (queued)
== Extension Changed 1602[ext-local] new state Idle for Notify User 1602 (queued)

WORKING:
[2016-05-02 12:22:02] SECURITY[2636]: res_security_log.c:116 security_event_stasis_cb: SecurityEvent=“ChallengeSent”,EventTV=“2016-05-02T12:22:02.133-0400”,Severity=“Informational”,Service=“SIP”,EventVersion=“1”,AccountID=“sip:1602@”,SessionID=“0x7f5d74265f18”,LocalAddress=“IPV4/UDP//5060”,RemoteAddress=“IPV4/UDP//22443”,Challenge=“047a77bb”
== 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 1601
== Extension Changed 1602[ext-local] new state InUse for Notify User 1777
== Extension Changed 1602[ext-local] new state InUse for Notify User 1602
– Executing [1234@from-internal:1] Answer(“SIP/1602-00000011”, “”) in new stack
> 0x7f5d74322e70 – Probation passed - setting RTP source address to :15000
– Executing [1234@from-internal:2] Wait(“SIP/1602-00000011”, “1”) in new stack
– Executing [1234@from-internal:3] Macro(“SIP/1602-00000011”, “user-callerid,”) in new stack
– Executing [s@macro-user-callerid:1] Set(“SIP/1602-00000011”, “TOUCH_MONITOR=1462206122.62”) in new stack
– Executing [s@macro-user-callerid:2] Set(“SIP/1602-00000011”, “AMPUSER=1602”) in new stack
– Executing [s@macro-user-callerid:3] GotoIf(“SIP/1602-00000011”, “0?report”) in new stack
– Executing [s@macro-user-callerid:4] ExecIf(“SIP/1602-00000011”, “1?Set(REALCALLERIDNUM=1602)”) in new stack
– Executing [s@macro-user-callerid:5] Set(“SIP/1602-00000011”, “AMPUSER=1602”) in new stack
– Executing [s@macro-user-callerid:6] GotoIf(“SIP/1602-00000011”, “0?limit”) in new stack
– Executing [s@macro-user-callerid:7] Set(“SIP/1602-00000011”, “AMPUSERCIDNAME=Kristian Guntzelman”) in new stack
– Executing [s@macro-user-callerid:8] GotoIf(“SIP/1602-00000011”, “0?report”) in new stack
– Executing [s@macro-user-callerid:9] Set(“SIP/1602-00000011”, “AMPUSERCID=1602”) in new stack
– Executing [s@macro-user-callerid:10] Set(“SIP/1602-00000011”, “__DIAL_OPTIONS=r”) in new stack
– Executing [s@macro-user-callerid:11] Set(“SIP/1602-00000011”, “CALLERID(all)=“Kristian Guntzelman” <1602>”) in new stack
– Executing [s@macro-user-callerid:12] GotoIf(“SIP/1602-00000011”, “0?limit”) in new stack
– Executing [s@macro-user-callerid:13] ExecIf(“SIP/1602-00000011”, “0?Set(GROUP(concurrency_limit)=1602)”) in new stack
– Executing [s@macro-user-callerid:14] ExecIf(“SIP/1602-00000011”, “0?Set(CHANNEL(language)=)”) in new stack
– Executing [s@macro-user-callerid:15] GotoIf(“SIP/1602-00000011”, “0?continue”) in new stack
– Executing [s@macro-user-callerid:16] ExecIf(“SIP/1602-00000011”, “1?Set(__CALLEE_ACCOUNCODE=)”) in new stack
– Executing [s@macro-user-callerid:17] Set(“SIP/1602-00000011”, “__TTL=64”) in new stack
– Executing [s@macro-user-callerid:18] GotoIf(“SIP/1602-00000011”, “1?continue”) in new stack
– Goto (macro-user-callerid,s,29)
– Executing [s@macro-user-callerid:29] Set(“SIP/1602-00000011”, “CALLERID(number)=1602”) in new stack
– Executing [s@macro-user-callerid:30] Set(“SIP/1602-00000011”, “CALLERID(name)=Kristian Guntzelman”) in new stack
– Executing [s@macro-user-callerid:31] Set(“SIP/1602-00000011”, “CDR(cnum)=1602”) in new stack
– Executing [s@macro-user-callerid:32] Set(“SIP/1602-00000011”, “CDR(cnam)=Kristian Guntzelman”) in new stack
– Executing [s@macro-user-callerid:33] Set(“SIP/1602-00000011”, “CHANNEL(language)=en”) in new stack
– Executing [1234@from-internal:4] Macro(“SIP/1602-00000011”, “get-vmcontext,1602”) in new stack
– Executing [s@macro-get-vmcontext:1] Set(“SIP/1602-00000011”, “VMCONTEXT=default”) in new stack
– Executing [s@macro-get-vmcontext:2] GotoIf(“SIP/1602-00000011”, “0?200:300”) in new stack
– Goto (macro-get-vmcontext,s,300)
– Executing [s@macro-get-vmcontext:300] NoOp(“SIP/1602-00000011”, “”) in new stack
– Executing [1234@from-internal:5] Set(“SIP/1602-00000011”, “VMBOXEXISTSSTATUS=SUCCESS”) in new stack
– Executing [1234@from-internal:6] GotoIf(“SIP/1602-00000011”, “1?mbexist”) in new stack
– Goto (from-internal,1234,106)
– Executing [1234@from-internal:106] GotoIf(“SIP/1602-00000011”, “1?novmpw:vmpw”) in new stack
– Goto (from-internal,1234,107)
– Executing [1234@from-internal:107] NoOp(“SIP/1602-00000011”, “Verifying channel SIP/1602-00000011 is actually 1602”) in new stack
– Executing [1234@from-internal:108] GotoIf(“SIP/1602-00000011”, “0?vmpws”) in new stack
– Executing [1234@from-internal:109] VoiceMailMain(“SIP/1602-00000011”, “1602@default,s”) in new stack
– <SIP/1602-00000011> Playing ‘vm-youhave.gsm’ (language ‘en’)
– <SIP/1602-00000011> Playing ‘digits/3.gsm’ (language ‘en’)
– <SIP/1602-00000011> Playing ‘vm-INBOX.gsm’ (language ‘en’)
– <SIP/1602-00000011> Playing ‘vm-messages.gsm’ (language ‘en’)
– <SIP/1602-00000011> Playing ‘vm-onefor.gsm’ (language ‘en’)
== Spawn extension (from-internal, 1234, 109) exited non-zero on ‘SIP/1602-00000011’
– Executing [h@from-internal:1] Macro(“SIP/1602-00000011”, “hangupcall”) in new stack
– Executing [s@macro-hangupcall:1] GotoIf(“SIP/1602-00000011”, “1?theend”) in new stack
– Goto (macro-hangupcall,s,3)
– Executing [s@macro-hangupcall:3] ExecIf(“SIP/1602-00000011”, “0?Set(CDR(recordingfile)=)”) in new stack
– Executing [s@macro-hangupcall:4] Hangup(“SIP/1602-00000011”, “”) in new stack
== Spawn extension (macro-hangupcall, s, 4) exited non-zero on ‘SIP/1602-00000011’ in macro ‘hangupcall’
== Spawn extension (from-internal, h, 1) exited non-zero on ‘SIP/1602-00000011’
== Extension Changed 1602[ext-local] new state Idle for Notify User 1601
== Extension Changed 1602[ext-local] new state Idle for Notify User 1777
== Extension Changed 1602[ext-local] new state Idle for Notify User 1602

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

Failed:
[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)

*0# seems to being used somewhere else. Check your extensions_custom file in case of a custom dialplan.

These are the only items build in custom:
[macro-shutdown]
exten => s,1,Authenticate(124578)
exten => s,n,NoOp(Looks like we’re going to shutdown!)
exten => s,n,Playback(vm-goodbye)
exten => s,n,System(/usr/bin/sudo /sbin/shutdown -h -t 1)
exten => s,n,hangup()

[macro-reboot]
exten => s,1,Authenticate(124578)
exten => s,n,NoOp(Looks like we’re going to reboot!)
exten => s,n,Playback(vm-goodbye)
exten => s,n,System(/usr/bin/sudo /sbin/shutdown -r -t 1)
exten => s,n,hangup()

I also did a search for *0# in the ExtensionsAdditional file, and only the 21 entries that were auto-generated.

What phones are you using to dial this feature code?

Grandstream - 2140, 3275, 3240, 2170 and 2135.

Remove the hash from the dialplan and try again.

Well, that worked as well - very strange. The phones have “use # as a dial indicator” disabled (so the # key actually gets sent in the call setup) and the phones had no firmware upgrades over the weekend.

Direct to VM code (##+extension) also no longer works either (that one shows 404-not found), but the dialplan entries are in there. I’m going to try getting a non-grandstream phone to test.

exten => ##1602,1,Macro(vm,1602,DIRECTDIAL,${IVR_RETVM})
exten => ##1602,n,Goto(vmret,1)

[2016-05-02 13:10:30] NOTICE[2578][C-00000028]: chan_sip.c:25697 handle_request_invite: Call from ‘1602’ (:22443) to extension ‘##3101’ rejected because extension not found in context ‘from-internal’.

Check the phones web interface again but using a private session, they maybe have upgraded during the weekend but you are viewing a cached version of the web interface that shows the option disabled. Sometimes grandstream phones do that.

They’re pointed to the system itself for firmware (custom folder in endpoint manager). I’m the only one who could have uploaded new firmware. :slight_smile:

I edited my previous post to show the CLI print for the failure (extension not found in “from-internal”.

Also, other feature codes with # in them work fine. Oh, we also have DISABLE DIRECT IP CALLING disabled, since that also would screw with the dialplan of the phone…

Do you use the custom contexts module? It seems the feature code is disabled.

It’s installed, but isn’t used. We’ve also removed it with no change.

Where this dialplan

exten => ##1602,1,Macro(vm,1602,DIRECTDIAL,${IVR_RETVM})
exten => ##1602,n,Goto(vmret,1)

is? In which file?

Auto generated in the ExtensionsAdditional file. (##+extension is our “direct to voicemail box” code).

Also, to make sure someone didn’t do something stupid, I confirmed the Custom Context module is still set up as the defaults and permitting access to APP-VMMAIL and APP-DIALVM.

Oh well, please test with a softphone that these two features codes work or not.

Just did. Tested Grandstream softphone - same failure (figured that might be the case). Tested Bria softphone - got a 603-Decline. Bria has no dialplan or adaptations programmed at all. Whatever it is, it appears to be the system. :frowning:

Do a reload in asterisk cli and try again.

I wish it were that easy. :slight_smile:

Actually rebooted the entire system (gracefully, of course). did a fwconsole reload as well as a core reload. No effect.

From which extension are you making all your tests? Upload from the sip_additional.conf the settings of the extension.

I actually attempted several, but below is my desk (1602), which of course also has the issue. I grabbed several items pertaining to it:

exten => FM1602,1,Goto(1602,FM1602)

exten => 1602,1,GotoIf($[ “${DB(AMPUSER/1602/followme/ddial)}” = “EXTENSION” ]?ext-local,1602,1)
exten => 1602,n(FM1602),Macro(user-callerid,)
exten => 1602,n,Set(DIAL_OPTIONS=${DIAL_OPTIONS}I)
exten => 1602,n,Set(CONNECTEDLINE(num,i)=1602)
exten => 1602,n,Gosub(sub-presencestate-display,s,1(1602))
exten => 1602,n,Set(CONNECTEDLINE(name)=${DB(AMPUSER/1602/cidname)}${PRESENCESTATE_DISPLAY})
exten => 1602,n,Set(FM_DIALSTATUS=${EXTENSION_STATE(1602@ext-local)})
exten => 1602,n,Set(__EXTTOCALL=${EXTEN})
exten => 1602,n,Set(__PICKUPMARK=${EXTEN})
exten => 1602,n,Macro(blkvm-setifempty,)
exten => 1602,n,GotoIf($["${GOSUB_RETVAL}" = “TRUE”]?skipov)
exten => 1602,n,Macro(blkvm-set,reset)
exten => 1602,n,Set(__NODEST=)
exten => 1602,n(skipov),Set(RRNODEST=${NODEST})
exten => 1602,n(skipvmblk),Set(__NODEST=${EXTEN})
exten => 1602,n,GosubIf($[${DB_EXISTS(AMPUSER/1602/followme/changecid)} = 1 & “${DB(AMPUSER/1602/followme/changecid)}” != “default” & “${DB(AMPUSER/1602/followme/changecid)}” != “”]?sub-fmsetcid,s,1())
exten => 1602,n,Set(RecordMethod=Group)
exten => 1602,n(checkrecord),Gosub(sub-record-check,s,1(exten,1602,))
exten => 1602,n(skipsimple),Set(RingGroupMethod=ringallv2-prim)
exten => 1602,n,Set(_FMGRP=1602)
exten => 1602,n(DIALGRP),GotoIf($[("${DB(AMPUSER/1602/followme/grpconf)}"=“ENABLED”) | ("${FORCE_CONFIRM}"!="") ]?doconfirm)
exten => 1602,n,Macro(dial,$[ ${DB(AMPUSER/1602/followme/grptime)} + ${DB(AMPUSER/1602/followme/prering)} ],${DIAL_OPTIONS},${DB(AMPUSER/1602/followme/grplist)})
exten => 1602,n,Goto(nextstep)
exten => 1602,n(doconfirm),Macro(dial-confirm,$[ ${DB(AMPUSER/1602/followme/grptime)} + ${DB(AMPUSER/1602/followme/prering)} ],${DIAL_OPTIONS},${DB(AMPUSER/1602/followme/grplist)},1602)
exten => 1602,n(nextstep),Set(RingGroupMethod=)
exten => 1602,n,GotoIf($[“foo${RRNODEST}” != “foo”]?nodest)
exten => 1602,n,Set(__NODEST=)
exten => 1602,n,Set(__PICKUPMARK=)
exten => 1602,n,Macro(blkvm-clr,)
exten => 1602,n,Set(DIALSTATUS=${IF($["${FM_DIALSTATUS}"=“NOT_INUSE”&"${DIALSTATUS}"!=“CHANUNAVAIL”]?NOANSWER:${IF($["${DIALSTATUS}"=“CHANUNAVAIL”|"${FM_DIALSTATUS}"=“UNAVAILABLE”|"${FM_DIALSTATUS}"=“UNKNOWN”|"${FM_DIALSTATUS}"=“INVALID”]?CHANUNAVAIL:BUSY)})})
exten => 1602,n,Goto(ext-local,1602,dest)
exten => 1602,n(nodest),Noop(SKIPPING DEST, CALL CAME FROM Q/RG: ${RRNODEST})

exten => 1602,1,Set(RingGroupMethod=none)
exten => 1602,n,Set(QDOPTS=${IF($["${CALLER_DEST}"!=""]?g)}${IF($["${AGENT_DEST}"!=""]?F(${AGENT_DEST}))})
exten => 1602,n(checkrecord),Set(CALLTYPE_OVERRIDE=external)
exten => 1602,n,ExecIf($[!${LEN(${FROMEXTEN})}]?Set(FROMEXTEN=${IF(${LEN(${NODEST})}?${NODEST}:external)}))
exten => 1602,n,Gosub(sub-record-check,s,1(exten,1602,))
exten => 1602,n,Macro(dial-one,${DIAL_OPTIONS}${QDOPTS},1602)
exten => 1602,n,GotoIf($["${CALLER_DEST}"!=""&&"${DIALSTATUS}"=“ANSWER”]?${CUT(CALLER_DEST,^,1)},${CUT(CALLER_DEST,^,2)},${CUT(CALLER_DEST,^,3)})
exten => 1602,n,Hangup

exten => ##1602,1,Macro(blkvm-clr,)
exten => ##1602,n,Set(__NODEST=)
exten => ##1602,n,Macro(vm,1602,DIRECTDIAL,${IVR_RETVM})
exten => ##1602,n,GotoIf($["${IVR_RETVM}" = “RETURN” & “${IVR_CONTEXT}” != “”]?ext-local,vmret,playret)

exten => vmb1602,1,Macro(vm,1602,BUSY,${IVR_RETVM})
exten => vmb1602,n,Goto(vmret,1)

exten => vmu1602,1,Macro(vm,1602,NOANSWER,${IVR_RETVM})
exten => vmu1602,n,Goto(vmret,1)

exten => vms1602,1,Macro(vm,1602,NOMESSAGE,${IVR_RETVM})
exten => vms1602,n,Goto(vmret,1)

exten => 1602,1,Set(__RINGTIMER=${IF($["${DB(AMPUSER/1602/ringtimer)}" > “0”]?${DB(AMPUSER/1602/ringtimer)}:${RINGTIMER_DEFAULT})})
exten => 1602,n,Macro(exten-vm,1602,1602,0,0,0)
exten => 1602,n(dest),Set(__PICKUPMARK=)
exten => 1602,n,Macro(vm,1602,${DIALSTATUS},${IVR_RETVM})
exten => 1602,n,Goto(vmret,1)
exten => 1602,hint,SIP/1602&Custom:DND1602,CustomPresence:1602

exten => vmi1602,1,Macro(vm,1602,INSTRUCT,${IVR_RETVM})
exten => vmi1602,n,Goto(vmret,1)

Also, did a text search for anything containing the feature code *0# to make sure there isn’t a conflict (I saw exactly what I expected to see - the 21 lines that make up the application, as well as it’s usage within the other endpoint items out there - nothing out of the ordinary, or any appearance of a remnant from a previous config rebuild):
/etc/asterisk/sip_additional.conf:34:vmexten=*0#
/etc/asterisk/sip_additional.conf:66:vmexten=*0#
/etc/asterisk/sip_additional.conf:125:vmexten=*0#
/etc/asterisk/sip_additional.conf:154:vmexten=*0#
/etc/asterisk/sip_additional.conf:186:vmexten=*0#
/etc/asterisk/sip_additional.conf:216:vmexten=*0#
/etc/asterisk/sip_additional.conf:275:vmexten=*0#
/etc/asterisk/sip_additional.conf:578:vmexten=*0#
/etc/asterisk/sip_additional.conf:608:vmexten=*0#
/etc/asterisk/sip_additional.conf:638:vmexten=*0#
/etc/asterisk/sip_additional.conf:668:vmexten=*0#
/etc/asterisk/sip_additional.conf:698:vmexten=*0#
/etc/asterisk/extensions_additional.conf:7433:exten => *0#,1,Answer
/etc/asterisk/extensions_additional.conf:7434:exten => *0#,n,Wait(1)
/etc/asterisk/extensions_additional.conf:7435:exten => *0#,n,Macro(user-callerid,)
/etc/asterisk/extensions_additional.conf:7436:exten => *0#,n,Macro(get-vmcontext,${AMPUSER})
/etc/asterisk/extensions_additional.conf:7437:exten => *0#,n(check),Set(VMBOXEXISTSSTATUS=${IF(${VM_INFO(${AMPUSER}@${VMCONTEXT},exists)}?SUCCESS:FAILED)})
/etc/asterisk/extensions_additional.conf:7438:exten => *0#,n,GotoIf($["${VMBOXEXISTSSTATUS}" = “SUCCESS”]?mbexist)
/etc/asterisk/extensions_additional.conf:7439:exten => *0#,n,VoiceMailMain()
/etc/asterisk/extensions_additional.conf:7440:exten => *0#,n,GotoIf($["${IVR_RETVM}" = “RETURN” & “${IVR_CONTEXT}” != “”]?playret)
/etc/asterisk/extensions_additional.conf:7441:exten => *0#,n,Macro(hangupcall,)
/etc/asterisk/extensions_additional.conf:7442:exten => *0#,check+101(mbexist),GotoIf($["${DB(AMPUSER/${AMPUSER}/novmpw)}"!=""]?novmpw:vmpw)
/etc/asterisk/extensions_additional.conf:7443:exten => *0#,n(novmpw),Noop(Verifying channel ${CHANNEL} is actually ${AMPUSER})
/etc/asterisk/extensions_additional.conf:7444:exten => *0#,n,GotoIf($["${REGEX("^${DB(DEVICE/${AMPUSER}/dial)}-[0-9a-fx]+$" ${CHANNEL})}"!=“1”]?vmpws)
/etc/asterisk/extensions_additional.conf:7445:exten => *0#,n,VoiceMailMain(${AMPUSER}@${VMCONTEXT},s)
/etc/asterisk/extensions_additional.conf:7446:exten => *0#,n,Goto(vmend)
/etc/asterisk/extensions_additional.conf:7447:exten => *0#,n(vmpws),Noop(Channel ${CHANNEL} is NOT ${AMPUSER} forcing VM Password)
/etc/asterisk/extensions_additional.conf:7448:exten => *0#,n(vmpw),VoiceMailMain(${AMPUSER}@${VMCONTEXT})
/etc/asterisk/extensions_additional.conf:7449:exten => *0#,n,Goto(vmend)
/etc/asterisk/extensions_additional.conf:7450:exten => *0#,n(vmend),GotoIf($["${IVR_RETVM}" = “RETURN” & “${IVR_CONTEXT}” != “”]?playret)
/etc/asterisk/extensions_additional.conf:7451:exten => *0#,n,Macro(hangupcall,)
/etc/asterisk/extensions_additional.conf:7452:exten => *0#,n(playret),Playback(beep&you-will-be-transfered-menu&silence/1)
/etc/asterisk/extensions_additional.conf:7453:exten => *0#,n,Goto(${IVR_CONTEXT},return,1)
/etc/asterisk/sip_general_additional.conf:10:vmexten=*0#

The only other oddity I noticed (from the Core Reload) was a series of “might have unexpected results” from entries that are auto-generated (below), but they appear to pertain to elements that FPBX created, like:

[from-trunk-sip-sysmon-OUT]
include => from-trunk-sip-sysmon-OUT-custom
exten => _.,1,Set(GROUP()=OUT_3)
exten => _.,n,Goto(from-trunk,${EXTEN},1)

CLI Log on reload:
[2016-05-02 14:27:44] WARNING[10731]: pbx_config.c:1837 pbx_load_config: The use of ‘_.’ for an extension is strongly discouraged and can have unexpected behavior. Please use ‘X.’ instead at line 6531 of /etc/asterisk/extensions_additional.conf
[2016-05-02 14:27:44] WARNING[10731]: pbx_config.c:1837 pbx_load_config: The use of '
.’ for an extension is strongly discouraged and can have unexpected behavior. Please use ‘X.’ instead at line 6532 of /etc/asterisk/extensions_additional.conf
[2016-05-02 14:27:44] WARNING[10731]: pbx_config.c:1837 pbx_load_config: The use of '
.’ for an extension is strongly discouraged and can have unexpected behavior. Please use ‘X.’ instead at line 8436 of /etc/asterisk/extensions_additional.conf
[2016-05-02 14:27:44] WARNING[10731]: pbx_config.c:1837 pbx_load_config: The use of '
.’ for an extension is strongly discouraged and can have unexpected behavior. Please use ‘X.’ instead at line 8437 of /etc/asterisk/extensions_additional.conf
[2016-05-02 14:27:44] WARNING[10731]: pbx_config.c:1837 pbx_load_config: The use of '
.’ for an extension is strongly discouraged and can have unexpected behavior. Please use ‘X.’ instead at line 8438 of /etc/asterisk/extensions_additional.conf
[2016-05-02 14:27:44] WARNING[10731]: pbx_config.c:1837 pbx_load_config: The use of '
.’ for an extension is strongly discouraged and can have unexpected behavior. Please use ‘X.’ instead at line 8439 of /etc/asterisk/extensions_additional.conf
[2016-05-02 14:27:44] WARNING[10731]: pbx_config.c:1837 pbx_load_config: The use of '
.’ for an extension is strongly discouraged and can have unexpected behavior. Please use ‘X.’ instead at line 8485 of /etc/asterisk/extensions_additional.conf
[2016-05-02 14:27:44] WARNING[10731]: pbx_config.c:1837 pbx_load_config: The use of '
.’ for an extension is strongly discouraged and can have unexpected behavior. Please use ‘X.’ instead at line 8486 of /etc/asterisk/extensions_additional.conf
[2016-05-02 14:27:44] WARNING[10731]: pbx_config.c:1837 pbx_load_config: The use of '
.’ for an extension is strongly discouraged and can have unexpected behavior. Please use ‘X.’ instead at line 8493 of /etc/asterisk/extensions_additional.conf
[2016-05-02 14:27:44] WARNING[10731]: pbx_config.c:1837 pbx_load_config: The use of '
.’ for an extension is strongly discouraged and can have unexpected behavior. Please use ‘X.’ instead at line 8494 of /etc/asterisk/extensions_additional.conf
[2016-05-02 14:27:44] WARNING[10731]: pbx_config.c:1837 pbx_load_config: The use of '
.’ for an extension is strongly discouraged and can have unexpected behavior. Please use ‘X.’ instead at line 8501 of /etc/asterisk/extensions_additional.conf
[2016-05-02 14:27:44] WARNING[10731]: pbx_config.c:1837 pbx_load_config: The use of '
.’ for an extension is strongly discouraged and can have unexpected behavior. Please use ‘X.’ instead at line 8502 of /etc/asterisk/extensions_additional.conf
[2016-05-02 14:27:44] WARNING[10731]: pbx_config.c:1837 pbx_load_config: The use of '
.’ for an extension is strongly discouraged and can have unexpected behavior. Please use ‘X.’ instead at line 8509 of /etc/asterisk/extensions_additional.conf
[2016-05-02 14:27:44] WARNING[10731]: pbx_config.c:1837 pbx_load_config: The use of '
.’ for an extension is strongly discouraged and can have unexpected behavior. Please use ‘X.’ instead at line 8510 of /etc/asterisk/extensions_additional.conf
[2016-05-02 14:27:44] WARNING[10731]: pbx_config.c:1837 pbx_load_config: The use of '
.’ for an extension is strongly discouraged and can have unexpected behavior. Please use ‘X.’ instead at line 127 of extensions.conf
[2016-05-02 14:27:44] WARNING[10731]: pbx_config.c:1837 pbx_load_config: The use of '
.’ for an extension is strongly discouraged and can have unexpected behavior. Please use ‘X.’ instead at line 139 of extensions.conf
[2016-05-02 14:27:44] WARNING[10731]: pbx_config.c:1837 pbx_load_config: The use of '
.’ for an extension is strongly discouraged and can have unexpected behavior. Please use ‘X.’ instead at line 140 of extensions.conf
[2016-05-02 14:27:44] WARNING[10731]: pbx_config.c:1837 pbx_load_config: The use of '
.’ for an extension is strongly discouraged and can have unexpected behavior. Please use ‘_X.’ instead at line 141 of extensions.conf