On 2017-04-20 05:14 AM, J Montoya or A J Stiles wrote:> This is just screaming "configuration mismatch" -- or, possibly,
"latent bug
> whereby things parsed in separate places should be treated the same, but
are
> actually getting treated differently".
I really don't want to be the "my system isn't working so there
must be
a bug in Asterisk" guy but I am certainly starting to suspect it.
> I think we are going to need to see your dialplan logic, and maybe your
> voicemail.conf, in order to work out what is different between this one
user
> and all the others. You might even need to use `hd` to examine the files,
just
> in case there is a stray non-printing character spoiling things.
Non-printing characters show up in vi so I would have seen that by now.
Every extension is build by a script that takes information from the
database and does substitutions which is what makes this so baffling.
Every extension is built exactly the same way. Here are two voicemail
entries, the failing one and mine that works. The only sanitation I did
was for the password.
stocktrans2 => 9999,Angelica Douglas,stocktrans2 at Vex.Net
darcy => 9999,Vybe Networks - D'Arcy,darcy at Vex.Net
Here is the full dialplan for stocktrans2.
exten => stocktrans2,1,Verbose(0,Entering extension stocktrans2)
same => n,Goto(DialCell)
same => n,GotoIf($["x" = "x"]?DialAlt)
same => n(DialAll),Verbose(0,${CALLERID(all)} Calling ${EXTEN} and ALL)
same => n,Dial(SIP/stocktrans2&SIP/thinktel/&SIP/9999907084,30)
same => n,Goto(VoiceMail)
same => n(DialAlt),Verbose(0, ${CALLERID(all)} Calling ${EXTEN} and
SoftPhone)
same => n,Dial(SIP/stocktrans2&SIP/9999907084,30)
same => n,Goto(VoiceMail)
same => n(DialCell),GotoIf($["x" = "x"]?DialDesk)
same => n,GotoIf($["${CALLERID(ani)}" =
""]?DialDesk)
same => n,Verbose(0,${CALLERID(all)} Calling "${EXTEN}" and
cell "")
same => n,Dial(SIP/stocktrans2&SIP/thinktel/,30)
same => n,Goto(VoiceMail)
same => n(DialDesk),Verbose(0,${CALLERID(all)} Calling ${EXTEN})
same => n,Dial(SIP/stocktrans2,30)
same => n(VoiceMail),Set(CDR(userfield)=VoiceMail)
same => n,Verbose(0,${CALLERID(all)} going into voice mail for
stocktrans2)
same => n,Set(_ACCOUNT=stocktrans2)
same => n,VoiceMail(stocktrans2 at VoiceMail,u)
same => n,Hangup()
Here is mine.
exten => darcy,1,Verbose(0,Entering extension darcy)
same => n,GotoIf($["${DEVICE_STATE(SIP/9999901001)}" =
"UNAVAILABLE"]?DialCell)
same => n,GotoIf($["x4168035991" = "x"]?DialAlt)
same => n(DialAll),Verbose(0,${CALLERID(all)} Calling ${EXTEN} and ALL)
same =>
n,Dial(SIP/darcy&SIP/thinktel/4168035991&SIP/9999901001,30)
same => n,Goto(VoiceMail)
same => n(DialAlt),Verbose(0, ${CALLERID(all)} Calling ${EXTEN} and
SoftPhone)
same => n,Dial(SIP/darcy&SIP/9999901001,30)
same => n,Goto(VoiceMail)
same => n(DialCell),GotoIf($["x4168035991" =
"x"]?DialDesk)
same => n,GotoIf($["${CALLERID(ani)}" =
"4168035991"]?DialDesk)
same => n,Verbose(0,${CALLERID(all)} Calling "${EXTEN}" and
cell
"4168035991")
same => n,Dial(SIP/darcy&SIP/thinktel/4168035991,30)
same => n,Goto(VoiceMail)
same => n(DialDesk),Verbose(0,${CALLERID(all)} Calling ${EXTEN})
same => n,Dial(SIP/darcy,30)
same => n(VoiceMail),Set(CDR(userfield)=VoiceMail)
same => n,Verbose(0,${CALLERID(all)} going into voice mail for darcy)
same => n,Set(_ACCOUNT=darcy)
same => n,VoiceMail(darcy at VoiceMail,u)
same => n,Hangup()
There are some minor differences based on whether they have set up an
alternate phone but either way it gets to the line that set the CDR
userfield. They both ultimately hit one or the other of these lines.
same => n,VoiceMail(stocktrans2 at VoiceMail,u)
same => n,VoiceMail(darcy at VoiceMail,u)
The only "Set" command that might change the environment is the
setting
of "_ACCOUNT" which they both do. Not sure why I even do that.
Perhaps
I was planning some other feature that I never finished. Or does
VoiceMail() use it?
Someone (in private email for some reason so I won't give his name)
suggested DumpChan() but I can't seem to make that work, even if I load
app_dumpchan.
--
D'Arcy J.M. Cain
Vybe Networks Inc.
http://www.VybeNetworks.com/
IM:darcy at Vex.Net VoIP: sip:darcy at VybeNetworks.com