Why Do I Have Question Marks (??) in My SMS Message Instead of Original Characters?

Question

  • Why do I receive question marks in my SMS message instead of original characters?
  • How can I send messages in Russian?

Context

This can occur in languages using a non-Latin alphabet

Answer

This happens when using characters in a message that are not part of the generic GSM7 character set. To successfully send these characters you will need to use Unicode encoding. 

To specify Unicode encoding for your message add this parameter to your GET or POST API URL:

&type=unicode

Note that type is an optional parameter. This can be omitted for text (default), but is required when sending a Binary (binary), WAP Push (wappush), Unicode message (unicode), vcal (vcal) or vcard (card).

Parameters that Nexmo allows you to use to encode your messages are detailed here.

The basic generic GSM7 character set is defined here.

 

Also note that this encoding only applies to the message body, not the sender ID - all Sender IDs are Latin alphabet alphanumeric only.

Have more questions? Submit a request