[Home]

Summary:ASTERISK-26834: app_voicemail: UTF-8 string does not get properly used in email
Reporter:Carl Fortin (phonefxg)Labels:
Date Opened:2017-03-02 14:11:28.000-0600Date Closed:2017-03-07 17:36:36.000-0600
Priority:MinorRegression?
Status:Closed/CompleteComponents:Applications/app_voicemail
Versions:14.2.0 Frequency of
Occurrence
Frequent
Related
Issues:
Environment:Asterisk Realtime 14.2 PJSIP Driver mysql 5.1.73 unixODBC 2.2.14 pjproject 2.5.5 spandsp 0.0.6 jansson 2.7 CentOS 6.6 64 bits on Vmware Phones : Cisco SPA514G FW: 7.5.7 ATA : Audiocodes MP124 T1 : Mediatrix 3532 ISDN CPU : Quadcore Intel(R) Xeon(R) CPU E5-2650 RAM : 8 GB HDD : 35 GB Average concurent calls: 25 Average calls/day: 2000Attachments:( 0) debug_log_JSON_Accent.log
( 1) voicemail.conf
Description:I had this error in my console since at least Asterisk 13.5.
I did ask on the forum at the time but I could not reproduce the issue:
https://community.asterisk.org/t/random-error-utf-8-string/49703/4

I can now reproduce the issue :

If a caller leaves  a voicemail and the caller's ID name contains accent characters and the message is sent by email, it will produce the following error:
{noformat}
ERROR[30993][C-00000024] json.c: Error building JSON from '{s: s, s: s}': Invalid UTF-8 string
{noformat}
The accent characters will be missing from the $\{VM_CIDNAME} variable and the sender's name will be incorrect in the email.

Check my  log, The callerid name was Émile François.
Comments:By: Asterisk Team (asteriskteam) 2017-03-02 14:11:28.929-0600

Thanks for creating a report! The issue has entered the triage process. That means the issue will wait in this status until a Bug Marshal has an opportunity to review the issue. Once the issue has been reviewed you will receive comments regarding the next steps towards resolution.

A good first step is for you to review the [Asterisk Issue Guidelines|https://wiki.asterisk.org/wiki/display/AST/Asterisk+Issue+Guidelines] if you haven't already. The guidelines detail what is expected from an Asterisk issue report.

Then, if you are submitting a patch, please review the [Patch Contribution Process|https://wiki.asterisk.org/wiki/display/AST/Patch+Contribution+Process].

By: Sean Bright (seanbright) 2017-03-07 17:36:36.345-0600

The only code points representable by a single byte in UTF-8 are {{[0x00,0x7F]}}. The value of {{ç}} in your file is a single byte with the value {{0xE7}} which is invalid UTF-8.

My guess it that whatever device you are setting this Caller ID with is using the Windows 1252 code page instead of UTF-8.  You should overwrite it by copy/pasting the following, valid UTF-8, verbatim into your user agent and trying again: {{Émile François}}

If you confirm that your user agent (or whatever is supplying your Caller ID name) is correctly configured and feel this issue was closed in error, please feel free to re-open.