On 2017-04-19 02:39 AM, Pete Mundy wrote:> Hmm... Above my pay grade I'm afraid! Looking at your 'voicemail> show users' I can't see why the vm_authenticate function is > failing to read the username :( I can answer that one. It's because we can't enter 'stocktrans2' from a telephone so we just hang up. The question is, why does it ask for the mailbox in the first place>> If I were any good at coding in C, I'd probably look inside> app_voicemail.c around line number 10671 and see if I could > determine how it reads the username and maybe throw some hacky ? debug output in there to try and determine at which point of > that process it's failing. But I'm no good at coding in that > language, so will have to defer to others to help. I guess that's my next stop. Luckily I have kept my C skills somewhat active as the chief maintainer for PyGreSQL. :-) -- D'Arcy J.M. Cain Vybe Networks Inc. http://www.VybeNetworks.com/ IM:darcy at Vex.Net VoIP: sip:darcy at VybeNetworks.com
On Wednesday 19 Apr 2017, D'Arcy Cain wrote:> On 2017-04-19 02:39 AM, Pete Mundy wrote: > > Hmm... Above my pay grade I'm afraid! Looking at your 'voicemail > > > > show users' I can't see why the vm_authenticate function is > > failing to read the username :( > > I can answer that one. It's because we can't enter 'stocktrans2' from a > telephone so we just hang up. The question is, why does it ask for the > mailbox in the first place>I fished this out of an old extensions.conf from a defunct project. It might be relevant to your use case: exten => 1571,1,NoOp(Call to 1571: voicemail retrieval) exten => 1571,n,AGI(lookup_caller_id.agi,${CALLERID(num)}) exten => 1571,n,NoOp(CLID is ${clid}) exten => 1571,n,VoiceMailMain(${clid},s) The AGI script `lookup_caller_id.agi` sets the variable ${clid} to the caller's extension number, after which their mailbox is named (although there is no reason not to set another variable, such as ${mbox} to hold the mailbox if you want). In the call to voicemailmail() we specify this mailbox, and also use the `s` option to skip password checking (it was safe in this situation to assume that nobody had physical access to a phone who definitely should not have had access to its user's voicemail messages). The upshot of this was, if you dialled 1571 from your own phone, then you got put straight through to your own voicemail, without logging in. -- JM or AJS Note: Originating address only accepts e-mail from list! If replying off- list, change address to asterisk1list at earthshod dot co dot uk .
On 2017-04-19 11:57 AM, J Montoya or A J Stiles wrote:> I fished this out of an old extensions.conf from a defunct project. It might > be relevant to your use case: > > exten => 1571,1,NoOp(Call to 1571: voicemail retrieval) > exten => 1571,n,AGI(lookup_caller_id.agi,${CALLERID(num)}) > exten => 1571,n,NoOp(CLID is ${clid}) > exten => 1571,n,VoiceMailMain(${clid},s)I do something similar using *98.> The upshot of this was, if you dialled 1571 from your own phone, then you got > put straight through to your own voicemail, without logging in.Yes and that works just fine for us. The problem is that we are trying to deal with the situation where someone calls themselves from another phone (internal or external) to pick up their messages. In every other case it asks for their password (which is always numeric) and goes into the VM. This one extension asks for a mailbox. -- D'Arcy J.M. Cain Vybe Networks Inc. http://www.VybeNetworks.com/ IM:darcy at Vex.Net VoIP: sip:darcy at VybeNetworks.com