Перейти к содержанию

Как отправить смайлик (эмодзи) или другой символ через API?#

Существует несколько способов отправить смайлик или другие символы через API:

  1. Горячими клавишами
  2. Копированием
  3. Использовать коды символов

1. Горячими клавишами#

Cамый простой способ сделать это - использовать встроенные в вашу операционную систему эмодзи.

К сожалению, данный способ работает не везде.

Для этого поставьте курсор в поле для текста и используйте горячие клавиши:

  • Для Windows: Win + ю
  • Для MacOS: control + command + space

Затем выберите интересующий символ во всплывшем окне.

2. Копированием#

Если способ "Горячими клавишами" не сработал, и в вашем приложении горячие клавиши не работают, иногда самое простое решение - скопировать эмодзи из мессенджера, браузера или любого другого источника.

Пример: 😃😎🤯

Пример сайта с эмодзи.

3. Использовать коды символов#

Если поле не поддерживает вставку или вставленные смайлики отображаются некорректно, попробуйте использовать кодировку символов.

Данный способ не работает напрямую из WhatsApp, WhatsApp Web, браузера или Личного кабинета.
Его можно использовать только для отправки текста в сыром виде через API (Postman, обработка 1С, строка в теле http запроса).

Чтобы отправить смайлики в WhatsApp из нашего API рекомендуем использовать UTF-16. Для этого, вам нужно представить символ в виде шестнадцатеричного числа или суррогатной пары, двух шестнадцатеричных чисел.

\uD83D\uDE01 - пример суррогатной пары

Эти числа есть в таблице символов Unicode.

Отправка символов суррогатными парами#

Порядок предоставления символа в виде шестнадцатеричных чисел:

  1. Нажмите на значение столбца Unicode напротив выбранного смайлика.

    sending-emoji-1c.png

  2. Затем выберите столбец с суррогатными парами, например для смайлика 😁.

    sending-emoji-1c.png

  3. Укажите текст в кодировке Unicode (Unicode), введя обратную косую черту с латинской буквой u в нижнем регистре ("\u") перед каждым шестнадцатеричным числом.
    Например: D83D DE01 => \uD83D\uDE01

Пример отправки 😁 через обработку 1С

Отправив такую строку из API через обработку 1С, в WhatsApp вы отправите - 😁:

Вставьте суррогатную пару для нужного смайлика, в данном случае: \uD83D\uDE01

sending-emoji-1c.png

Результат в WhatsApp: emoji-whatsapp.png

Отправка символов без суррогатной пары#

Для некоторых смайликов и символов не существует суррогатной пары.
Порядок предоставления символа в виде шестнадцатеричного числа:

  1. Нажмите на значение столбца Unicode напротив выбранного смайлика.

    unicode.png

  2. Затем выберите столбец Code, например для смайлика ✅.

    code-unicode.png

  3. Укажите текст в кодировке Unicode (Unicode), введя обратную косую черту с латинской буквой u в нижнем регистре ("\u") перед шестнадцатеричным числом.
    Например: 2705 => \u2705

Пример отправки ✅ через Postman

Отправив такую строку из API через Postman, в WhatsApp вы отправите - ✅:

Вставьте шестнадцатеричное число для нужного смайлика, в данном случае: \u2705

sending-emoji-postman.png

Результат в WhatsApp: sending-emoji-postman-result.png

Использование интервалов между символами

Использование 16 битного представления символов позволяет использовать невидимые символы, которые обозначают интервал между буквами или цифрами. Это дает возможность, например, отправлять пустые сообщения или более тонко регулировать отступы.

Примеры интервальных символов:

\u00A0 - Non-Breaking Space empty-message-whatsapp.png
\u2000 - N пробел
\u2001 - M пробел
\u2002 - E пробел
\u2004 - Пробел в 3 ширины "M"
\u2005 - Пробел в 4 ширины "M"
\u2006 - Пробел в 6 ширин "M"
\u2007 - Цифровой пробел
\u2008 - Пробел для знаков препинания
\u2009 - Тонкий пробел
\u200A - Пробел в волос
\u2028 - Разделитель строк
\u205F - Среднее математическое пространство
\u3000 - Идеографический пробел