Random ERROR UTF-8 String

I am running asterisk 13.5 ARA with the PJSIP driver and once in a while I get this message from the console:

I cannot find where it is coming from. The message keeps repeating and then stop after a while.

What could cause such an error ? Could it be something wrong in our DB ?

you ever get any satisfaction on this? I’m having the same issue on a new install today. Asterisk 13.9.1 Chan_sip and no ARA…

Do you have UTF-8 characters in your Caller ID?

I did have some names with accents in the Caller ID and I did not see the error since I have removed all accents. We’re french so we had a few of them. I’ve been running version 13.6 ARA in pjsip for months without the issue.

It’d be nice to get a bit more information about when the issue occurs, as without more information, I’m making some pretty major guesses here.

We pack a fair number of two keyed strings in Asterisk, but one of the more common ones where external input may be provided is Caller ID:

struct ast_json *ast_json_name_number(const char *name, const char *number)
	return ast_json_pack("{s: s, s: s}",
			     "name", name,
			     "number", number);

The ast_json_* calls are a thin wrapper around libjansson. Jansson itself actually does support UTF-8, as you can read about here. Based on that, my guess is that a UTF-16 or some other variant was fed in as the Caller ID name.

Unfortunately, without evidence, it’s hard to say if that is what is causing the issue here or not.

As an aside, most of Asterisk isn’t even UTF-8 compatible, so the notion of Asterisk supporting UTF-16 or some other encoding wouldn’t be regarded as a bug, but simply a limitation in its string handling.

All I do, when sending caller ID, is set the outgoing as Set(CALLERID(num)=npanxxxxxx and this is the same subroutine I’m using on other systems and not receiving this error. Could it have to do with what bell is sending me? This is the first site that’s using AT&T PRI instead of a local carrier’s PRI. However all CLID seems to be populating properly on the phones as well as sending out correctly when I call my cell.

oh, also for the record mine is more than two or the two keyed strings. [Aug 10 17:07:26] ERROR[17310]: json.c:704 ast_json_vpack: Error building JSON from ‘{s: s, s: s, s: s, s: s, s: s, s: s, s: s, s: s}’: Invalid UTF-8 string.

It almost made me think of something having to do with CDR??

Ok I’ve figured out that this json error happens in conjunction with the sets trying to use their integrated voicemail application. The response given on the set is “Error parsing request: message_entry [10002]”

This appears to only happen on some sets and not others. Upgraded to latest version of D45 firmware and this issue has not been resolved.

Interesting…do the sets have identical voicemail messages in their INBOXes? If so, that’s very peculiar. If not, perhaps there’s something in the message details that’s tripping things up. For issues with Digium’s commercial products, e.g. telephones, please interface directly with our Support department - www.digium.com/support


No they do not have identical voicemails in any of them. Some have 15 messages, some have 3, some have none, and yet some more have perfectly working mailboxes. As this is a new system ALL mailboxes do have identical passwords and are not using directory or email in their mailbox definitions so they are basically all the same except each mailbox number is unique…

I’m not 100% sure about this but it seemed to happen every time I tried to use the voicemail function so that’s what led me to group them together.