[Home]

Summary:ASTERISK-18602: Voicemail does not read callID from envelope
Reporter:lters (lters)Labels:
Date Opened:2011-09-21 09:38:28Date Closed:2011-10-04 14:07:51
Priority:MinorRegression?
Status:Closed/CompleteComponents:Applications/app_voicemail
Versions:1.8.5.0 Frequency of
Occurrence
Constant
Related
Issues:
is related toASTERISK-18635 CallerID is Reverse name vs cid
Environment:Debian/SqueezeAttachments:( 0) voicemail.conf
Description:Contents of msg0000.txt look good.
But when playing the envolop, it silently skips over the actual caller ID:

   -- <SIP/10.1.5.149-000fe48a> Playing 'vm-received.gsm' (language 'en')
   -- <SIP/10.1.5.149-000fe48a> Playing 'digits/yesterday.gsm' (language 'en')
   -- <SIP/10.1.5.149-000fe48a> Playing 'digits/at.gsm' (language 'en')
   -- <SIP/10.1.5.149-000fe48a> Playing 'digits/7.gsm' (language 'en')
   -- <SIP/10.1.5.149-000fe48a> Playing 'digits/20.gsm' (language 'en')
   -- <SIP/10.1.5.149-000fe48a> Playing 'digits/6.gsm' (language 'en')
   -- <SIP/10.1.5.149-000fe48a> Playing 'digits/p-m.gsm' (language 'en')
   -- <SIP/10.1.5.149-000fe48a> Playing 'vm-from-phonenumber.gsm' (language 'en')
   -- <SIP/10.1.5.149-000fe48a> Playing 'vm-advopts.gsm' (language 'en')
   -- <SIP/10.1.5.149-000fe48a> Playing 'vm-repeat.gsm' (language 'en')

Comments:By: Leif Madsen (lmadsen) 2011-09-21 09:39:39.580-0500

Could to provide the contents of msg0000.txt and the configuration of voicemail.conf (and anything else required) in order to reproduce this?

By: lters (lters) 2011-09-21 10:14:18.315-0500

cat /mnt/voicemailnfs/voicemail/cellular/606477xxxx/INBOX/msg0000.txt
;
; Message Information file
;
[message]
origmailbox=606477xxxx
context=voicemail
macrocontext=
exten=606477xxxx
rdnis=unknown
priority=7
callerchan=SIP/10.1.5.149-000fb1a0
callerid="606792xxxx" <vm>
origdate=Tue Sep 20 11:26:33 PM UTC 2011
origtime=1316561193
category=
flag=
duration=8

By: lters (lters) 2011-09-21 13:46:15.421-0500

Requested voicemail configuration.

By: lters (lters) 2011-09-21 13:46:40.839-0500

Please let me know if there is anything else that would be helpful.

By: Leif Madsen (lmadsen) 2011-09-22 07:50:04.986-0500

Looks like a configuration issue:


; saycid=yes ; Say the caller id information before the message. If not described,
;     or set to no, it will be in the envelope


You have that commented out.

By: lters (lters) 2011-09-26 07:55:14.663-0500

True.

But when listening to a VM and you choose option 3 "Advanced option", than 3 again, it reads the envelope contents. When it gets to the caller id just skips it.

By: Leif Madsen (lmadsen) 2011-09-26 10:20:25.304-0500

Did you enable the appropriate configuration option? Did that cause it to not skip the callerID? It's doing what I would expect based on the configuration you provided.

By: lters (lters) 2011-09-26 10:39:35.587-0500

I have changed that option but it makes no difference.

Is this a per user setting?
All the users are listed in a table that looks like this:
uniqueid       | integer                     | not null default nextval('public.voicemail_uniqueid_seq'::text)
customer_id    | character varying(11)       | not null default '0'::character varying
context        | character varying(50)       | not null default 'cellular'::character varying
mailbox        | character varying(11)       | not null default '0'::character varying
password       | character varying(5)        | not null default '0'::character varying
fullname       | character varying(150)      | not null default ''::character varying
email          | character varying(50)       | not null default ''::character varying
pager          | character varying(50)       | not null default ''::character varying
tz             | character varying(10)       | not null default 'EST'::character varying
attach         | character varying(4)        | not null default 'no'::character varying
saycid         | character varying(4)        | not null default 'no'::character varying
dialout        | character varying(10)       | not null default ''::character varying
callback       | character varying(10)       | not null default ''::character varying
review         | character varying(4)        | not null default 'no'::character varying
operator       | character varying(4)        | not null default 'no'::character varying
envelope       | character varying(4)        | not null default 'yes'::character varying
sayduration    | character varying(4)        | not null default 'no'::character varying
saydurationm   | smallint                    | not null default (1)::smallint
sendvoicemail  | character varying(4)        | not null default 'no'::character varying
delete         | character varying(4)        | not null default 'no'::character varying
nextaftercmd   | character varying(4)        | not null default 'yes'::character varying
forcename      | character varying(4)        | not null default 'no'::character varying
forcegreetings | character varying(4)        | not null default 'no'::character varying
hidefromdir    | character varying(4)        | not null default 'yes'::character varying
stamp          | timestamp without time zone | not null default now()
pagernum       | character varying(12)       |
maxmsg         | character varying(10)       |
maxsecs        | character varying(6)        |

I made sure to set saycid to yes but it makes no difference.
This worked fine in 1.4, but since I moved to 1.8.5 it refuses to say callid.

The console prompt looks like this:


   -- <SIP/10.1.5.149-00000002> Playing 'digits/a-m.gsm' (language 'en')
   -- <SIP/10.1.5.149-00000002> Playing 'vm-from-phonenumber.gsm' (language 'en')

****** HERE it just skips past reading the message... *****

   -- <SIP/10.1.5.149-00000002> Playing 'vm-advopts.gsm' (language 'en')
   -- <SIP/10.1.5.149-00000002> Playing 'vm-repeat.gsm' (language 'en')

By: lters (lters) 2011-09-26 13:34:38.027-0500

Updated to 1.8.7 and it does not seem to fix it.

Any suggestions on how to debug this?

By: Leif Madsen (lmadsen) 2011-09-26 14:40:13.135-0500

My understanding is this is not a per peer setting -- I believe it to be global.

Only thing I can think of is to look at the code where this option is being used and try to trace where and when it should be called, and why it does not appear to be getting called for your peers.

By: Leif Madsen (lmadsen) 2011-09-26 14:40:52.912-0500

You could also check with asterisk-users to see if there is a configuration issue that you're having, and if it's working for others (or not).

By: lters (lters) 2011-09-27 07:36:03.236-0500

OK, so interesting find on further digging:

If you look closely at the msg0000.txt you will notice that the caller id line looks like this:
callerid="3032949999" <vm>

If you change the msg0000.txt to list callerid properly like this:
callerid="Tell Me" <8005551212>

Than it reads back the message like it should.
What I don't understand is how that would be getting flipped backwards and saved to the file like that...
Any idea on where to start looking?

By: lters (lters) 2011-09-27 07:53:56.541-0500

Looking at the channel variables, I see that they set wrong there too:

 CDR Variables:
level 1: dnid=8005551212
level 1: clid="8005551212" <vm>
level 1: src=vm
level 1: dst=8005551212
level 1: dcontext=cellular
level 1: channel=SIP/10.1.X.XXX-0000000c
level 1: lastapp=VoiceMailMain
level 1: lastdata=8005551212@cellular
level 1: start=2011-09-27 08:48:19
level 1: answer=2011-09-27 08:48:19
level 1: duration=14
level 1: billsec=14
level 1: disposition=ANSWERED
level 1: amaflags=DOCUMENTATION
level 1: uniqueid=1317127699.12
level 1: linkedid=1317127699.12
level 1: sequence=12

By: Leif Madsen (lmadsen) 2011-10-03 15:18:24.334-0500

Marking an issue as potentially related. Not sure if they are related at all, but the fact the CID seems to be reversed is why I'm marking them as such.

By: Leif Madsen (lmadsen) 2011-10-03 15:18:57.663-0500

I'd like to see the incoming call data from the SIP channel. Are you using SIP for the incoming call path... or.... ?

By: lters (lters) 2011-10-04 14:07:43.493-0500

This is a sip call.

I found after more digging that the FROMUSER was set and was forcing the CID to be wrong.

Should VM not check to see that the CID NUMBER is a digit based variable?

Ticket can be closed.