Добрый день.
Возникло потребность отсылать эмодзи (смайлик) в телеграм бот.
Отправляю в телеграм бот и получаю - ЗДЕСЬ - %F0%9F%98%81 , а хотелось бы получить смайлик.
Прошу помощи.
Возникло потребность отсылать эмодзи (смайлик) в телеграм бот.
Эмоджи = "%F0%9F%98%81";
Текст = "ЗДЕСЬ - " + Эмоджи;
стр = Новый Структура;
стр.Вставить("method", "sendMessage");
стр.Вставить("chat_id", Чат);
стр.Вставить("text", Текст);
стр.Вставить("parse_mode" , "HTML");
ПоказатьОтправляю в телеграм бот и получаю - ЗДЕСЬ - %F0%9F%98%81 , а хотелось бы получить смайлик.
Прошу помощи.
По теме из базы знаний
Найденные решения
(5) Указывайте код в виде HTML-кода
P.S. нужно убрать все пробелы между символами в этой строке.
Тут вставил, т.к. движок инфостарта сразу парсит его как смайл)
P.P.S не увидел, что уже этот вариант подсказали раньше, но он рабочий, проверено
Эмоджи = "& # 128513";
P.S. нужно убрать все пробелы между символами в этой строке.
Тут вставил, т.к. движок инфостарта сразу парсит его как смайл)
P.P.S не увидел, что уже этот вариант подсказали раньше, но он рабочий, проверено
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Вообще должно работать. У меня через функции правда, но отправляет:
Вызов:
В Справочники.Смайлики реквизит URLEscapeCode вида "%F0%9F%86%98", тип строка
Процедура ОтправитьСообщение(Получатель, Сообщение, HTML = Ложь) Экспорт
Запрос = "/sendMessage?chat_id=" + Получатель + "&text=" + Сообщение + ?(HTML, "&parse_mode=HTML", "");
ВыполнитьЗапросAPI(Запрос);
КонецПроцедуры
Функция Смайлик(Код) Экспорт
Возврат Справочники.Смайлики.НайтиПоКоду(Код).URLEscapeCode;
КонецФункции // ПолучитьСмайлик()
ПоказатьВызов:
Результат = Результат+ APITelegram.Смайлик(127777) +" Котельная: " + РаботаСДанными.ПолучитьПоследнееЗначениеПоПоказателю(8).Значение + " °С"+Символы.ПС;
Результат = Результат + " " + Символы.ПС;
APITelegram.ОтправитьСообщение("ХХХХХХХХ", Результат, Истина);
В Справочники.Смайлики реквизит URLEscapeCode вида "%F0%9F%86%98", тип строка
(3)
Мне лень читать документацию телеграма, но предположу что получится или вставить этот уникодный символ в json через какой-нибудь "\u0F09F8698" или через html entity "😁"
в чем разница
В том, что ты передаешь текст через тело запроса, а он - через урл. Для урла на той стороне всегда выполняется урлдекод и его %F0%9F%86%98 превращается в обычный уникодный символ.
Мне лень читать документацию телеграма, но предположу что получится или вставить этот уникодный символ в json через какой-нибудь "\u0F09F8698" или через html entity "😁"
Ваш код не распознается как смайлик, попробуйте код "%F0%9F%86%98" смайл SOS, возможно у Вас ошибка именно в коде смайлика.
Еще гарантированно у меня выводящиеся:
"%F0%9F%92%A7" - капля
"%F0%9F%94%A5" - огонь
"%F0%9F%92%A1" - лампочка
Еще гарантированно у меня выводящиеся:
"%F0%9F%92%A7" - капля
"%F0%9F%94%A5" - огонь
"%F0%9F%92%A1" - лампочка
{
"method": "sendMessage",
"chat_id": "111111",
"text": "Все будет хорошо!!! %F0%9F%86%98",
"parse_mode": "HTML",
"reply_markup": {
"keyboard": [
[
{
"text": "Ваш номер телефона",
"request_contact": true
},
{
"text": "Локацию можно",
"request_location": true
}
],
[
{
"text": "%F0%9F%86%98 Привет",
"callback_data": "Yes"
},
{
"text": "Получить докумен"
}
]
],
"resize_keyboard": true
}
}
ПоказатьВот мой JSON. Телеграм бот ничего не парсит...
(5) Указывайте код в виде HTML-кода
P.S. нужно убрать все пробелы между символами в этой строке.
Тут вставил, т.к. движок инфостарта сразу парсит его как смайл)
P.P.S не увидел, что уже этот вариант подсказали раньше, но он рабочий, проверено
Эмоджи = "& # 128513";
P.S. нужно убрать все пробелы между символами в этой строке.
Тут вставил, т.к. движок инфостарта сразу парсит его как смайл)
P.P.S не увидел, что уже этот вариант подсказали раньше, но он рабочий, проверено
(11)
Там даже какой-то RFC был, лень искать.
без точки с запятой
Это хорошее настроение и добрая воля телеграма. Хорошее настроение будет до тех пор, пока сразу за смайлом в тексте не попадется число или шестнадцитиричный символ. А учитывая, что текст обычно лепится конкатенацией...
Там даже какой-то RFC был, лень искать.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот