Кодировка GSM для SMS со специальными символами (Twilio)

Я надеюсь, и вы поможете мне с этим вопросом, который у меня есть.

Мне нужно отправлять сообщения со специальными символами, чтобы не слишком сильно сегментировать сообщение, то есть если максимальное количество символов для сообщения GSM составляет 160, и я пишу сообщение ниже предела, разрешенного для GSM. благодаря тому простому факту, что в нем есть хотя бы один специальный символ, это сообщение меняется на UCS2.

Я не знаю, есть ли способ избежать этого, и что сообщение кодируется только с помощью GSM без импорта специальных символов, чтобы сообщение не стоило дороже.

Заранее спасибо и привет.

Пример (текст):

Закодировано: GSM

Сообщение: Hola Señor Cliente le informamos que ya está disponible su crédito, acuda a las oficinas de Compañia o marque al 00110011001.

Длина: 125

Сегментов: 1

Закодировано: UCS2

Сообщение: Hola Señor Cliente le informamos que ya está disponible su crédito, acuda a las oficinas de Compañia o marque al 00110011001.

Длина: 125

Сегменты: 2

Пример (изображение):

GSM

UCS2


person Jorge Rocha    schedule 13.01.2018    source источник
comment
Чтобы избежать кодирования сообщения с помощью UCS2, убедитесь, что ваше сообщение включает только символы из области GSM. В чем именно заключается ваш вопрос?   -  person philnash    schedule 15.01.2018
comment
Хорошо ... мой вопрос в том, как отправлять сообщения со специальными символами, но чтобы их можно было отправлять как GSM, чтобы избежать затрат на несколько сегментов. Но то, что я вижу, невозможно избежать, я хотел знать, есть ли в Twilio способ настроить это.   -  person Jorge Rocha    schedule 15.01.2018


Ответы (1)


Проповедник разработчиков Twilio здесь.

Вы не можете отправлять специальные символы в виде сообщения, закодированного в GSM, потому что эти символы не существуют в наборе символов GSM. Вот почему Twilio кодирует эти сообщения как UCS2 (ну, на самом деле, как UTF16 big endian). Однако, когда сообщения закодированы в UCS2, вы можете уместить только 70 символов.

Единственный способ убедиться, что ваши сообщения не закодированы как UCS2, - это избегать любых символов за пределами символа GSM. установить.

Вы можете узнать больше о том, как Twilio обрабатывает специальные символы в API, в первой части этого сообщения в блоге на приключения в юникоде SMS.

Сообщите мне, если это поможет.

person philnash    schedule 16.01.2018