В Telegram из 1С: сообщения с эмодзи (смайлы, пиктограммы, иконки) пользователям и группам

20.08.18

Интеграция - Мессенджеры и боты

Обработка отправляет сообщения с эмоджи (смайлы, иконки, пиктограммы) пользователю или группе в Телеграм. Она также показывает список пользователей и групп, которые связывались с Вашим ботом, из этого списка можно выбрать получателя сообщения.

Скачать файлы

Наименование Файл Версия Размер
В Telegram из 1С: сообщения с эмодзи (смайлы, пиктограммы, иконки) пользователям и группам:
.epf 33,71Kb
143
.epf 1.2 33,71Kb 143 Скачать

Обработка представлена как простой пример, публикую ее т.к. сам не сразу нашел ответ на вопрос, как отправить смайлы в Телеграм из 1С. Проверена на платформе 8.3.10.2753 и 8.3.11.3133.

Перед отправкой сообщений нужно заполнить настройки.

Настройки

Токен: API-токен Вашего бота, который Вы получили от @BotFather при создании бота в Телеграм. Если бота у Вас еще нет - заведите его, уйдет полминуты, в результате чего @BotFather Вам сообщит что-то вроде этого:

Use this token to access the HTTP API 123456789:AAbbCC00ddEEffGGhhIgKLmnopQFK3-KLAA

Прокси: любой https или socks5 прокси за пределами юрисдикции РКН. Я использую Tor-браузер: если его запустить, то в системе появится  локальный socks5 прокси, использующий сеть тор. На скрине выше именно тор-прокси используется эской. Это и бесплатно, и быстро, и стабильно. Бесплатный сторонний сервер может работать медленно или стать недоступным, в этом случае настройки прокси для Telegramm придется менять. Сеть же Tor работает отлично, и РКН до нее пока не добрался. Если Ваш прокси https - заполняйте настройку без префикса https://. Если socks5 - заполняйте с префиксом socks5:// как на скрине.

После заполнения полей настроек можно нажать кнопку Проверить, если все в порядке - появятся поля с именем Вашего бота.

Для отправки сообщения нужно, чтобы получатель один раз дал на это свое "согласие". Согласие выражается в том, что пользователь отправит хотя бы одно сообщение Вашему боту или просто найдет его в Телеграмм и нажмет кнопку START. Для отправки сообщения в группу просто подпишите своего бота в эту группу. После того, как пользователи или группы "засвидетельствовали" свое согласие получать сообщения от Вашего бота - нажмите кнопку Показать таблицу получателей. Внизу обработки выведется таблица для выбора получателя сообщения. Выберите двойным щелчком строку таблицы с нужным получателем, напишите текст сообщения, кликните нужные пиктограммы (в текст отправки будут вставляться html-тэги иконок) и жмите Отправить сообщение.

Сохраните где-нибудь ИД получателей - если в течение 24 часов пользователь не отправит Вашему боту ни одного сообщения - то этот пользователь перестанет появляться в таблице получателей. Отправлять ему сообщения Вы по прежнему сможете, для этого ИД нужно будет ввести вручную в поле Получатель. То же самое произойдет с ИД группы, если в группе не будет сообщений в течение 24 часов. Если не записали или потеряли ИД получателей - просто попросите их еще раз отправить сообщение боту, в таблице они снова будут появляться в течение 24 часов.

Технические детали.
Большая часть emoji в Telegram - одиночные символы таблицы юникода, как обычные буквы алфавита. Чтобы отправить такие символы по API в GET-запросе (.../SendMessage?text=...), их нужно предварительно URL-кодировать, как, впрочем, и русские буквы. Например, чтобы отправить русский текст "рука" полюс иконку ладони (это  символ юникода с порядковым номером 9995), надо использовать

КодироватьСтроку("рука" + Символ(9995), СпособКодированияСтроки.КодировкаURL);

Но подобный код не будет работать для юникод-символов с порядковым номером больше 65535, просто потому что 1C с ними не умеет работать. А именно в этом диапазоне большинство смайлов. Есть вариант сразу узнать binhex нужного символа, закодированного в UTF-8. В этом случае нужно между байтами binhex поставить знаки % - и мы получим готовый URL-кодированный символ для параметра GET в Телеграм. Моя обработка работает не с binhex, а с десятичными порядковыми номерами символов в таблице юникода. Обработка сама переводит номер символа за пределами понимания эски (например смайл 128512) в URL - кодированный вид. Иными словами, с символом номер 128512 обработка сделает то же, что делал бы код эски:

КодироватьСтроку(Символ(128512), СпособКодированияСтроки.КодировкаURL);

 если бы эска умела работать с символами юникода за пределами границы 65535.

Telegram эмодзи эмоджи смайлы иконки пиктограммы обработка

См. также

SALE! 25%

Конструктор ботов Телеграм, редакция 2

Мессенджеры и боты Платформа 1С v8.3 Платные (руб)

Развитие популярного решения для интеграции мессенджера Telegram с нашей любимой 1С.

15000 11250 руб.

18.06.2021    58673    291    255    

345

SALE! 25%

Что нам стоит бота построить? Нарисуем - будет жить! Графический конструктор телеграм-ботов/Telegram

Мобильная разработка Мессенджеры и боты Платформа 1С v8.3 Платные (руб)

Теперь создать telegram-бота - элементарно. Достаточно просто нарисовать блок-схему телеграм-бота, и он сразу заработает. Это возможно при использовании Графического конструктора телеграм-ботов. Это единственный конструктор ботов для telegram, чье качество и функционал подтверждены фирмой 1С, есть сертификат 1С:Совместимо. Расширение в интерактивном режиме, с помощью блок-схем, позволяет с минимальными трудозатратами создать телеграм-ботов в любой конфигурации, работающей на платформе «1С:Предприятие 8.3».

13200 9900 руб.

27.12.2021    33276    80    157    

174

Легкий документооборот (+чат-бот для Telegram)

Документооборот и делопроизводство (СЭД) Мессенджеры и боты Учет документов Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия государственного учреждения 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 Платные (руб)

Расширение для согласования справочников и документов в конфигурациях "1С: Бухгалтерия 3.0", "Управление нашей фирмой", "1С ERP Управление предприятием", "Бухгалтерия государственного учреждения". Ролевая адресация, условная маршрутизация, последовательное и параллельное согласование, уведомление о новых задачах на почту, блокировка объектов в зависимости от статуса, запрет проведения в зависимости от статуса, автозапуск процессов согласования, отчеты по исполнительской дисциплине. Не требуется снятие конфигурации с поддержки. Настройка без программирования. Версия для 1cfresh.com. Сертификат 1С-Совместимо.

14900 руб.

15.11.2018    27789    25    48    

57

Email, SMS, Telegram рассылки из 1С - Директ Маркетинг

Управление взаимоотношениями с клиентами (CRM) Мессенджеры и боты SMS рассылки Email рассылки Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Платные (руб)

Полный набор инструментов для качественных транзакционных и маркетинговых Email, SMS, Telegram рассылок из 1С. Даже простые уведомления об оплате счетов способны существенно упростить сбор дебиторской задолженности. Применение всех возможностей прямого маркетинга выводит коммуникацию с клиентами, уровень сервиса и лояльность на новый уровень.

7788 руб.

07.04.2014    83617    40    191    

127

Интеграция 1С с телефонией и чатами WhatsApp и Telegram

Телефония, SIP Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 Россия Управленческий учет Платные (руб)

Интеграция 1С с телефонией и чатами WhatsApp и Telegram автоматизирует работу оператора со звонками и чатами и добавит вашей 1С элементы CRM системы. Храните всю историю взаимоотношений в 1С, не теряйте звонки, скачивайте, прослушивайте в любое время из карточки клиента или журнала звонков, держите руку на пульсе, используя блок отчетов по звонкам. Интегрируйте вашу 1С и чатами WhatsApp и Telegram, общайтесь с клиентами с единого номера и в одном окне. Теперь чаты с клиентами хранятся в карточке партнера в 1С, а не в личных мобильных ваших менеджеров.

4100 руб.

28.04.2022    13852    11    6    

36

Отправка в Telegram отчетов, печатных форм, присоединённых файлов и произвольных вложений. Загрузка получателей. Хранение истории отправок.

Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 Платные (руб)

Универсальное расширение для отправки (напрямую и через прокси) печатных форм, отчетов, присоединённых файлов, табличных документов и произвольных вложений в чат Telegram прямо из 1С. Ручная и автоматическая фоновая загрузка по расписанию идентификаторов получателей Telegram. Хранение истории отправок сообщений с ограничением по времени хранения и с автоматической очисткой по мере истечения срока хранения.

4800 руб.

26.12.2023    2202    1    0    

5
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Dwiss 162 14.05.19 17:27 Сейчас в теме
{ВнешняяОбработка.ОтправитьТелеграмму.МодульОбъекта(10)}: Ошибка при вызове метода контекста (Получить)
ХттпОтвет = ХттпСоединение.Получить(ХттпЗапрос);
по причине:
Ошибка работы с Интернет: Не могу установить соединение

тор установлен, в нем все проходит в 1С нет
{"ok":true,"result":{"id":753458953,"is_bot":true,"first_name":"virtex_bot","username":"vrtks_bot"}}
2. uno-c 234 14.05.19 18:04 Сейчас в теме
Тор-браузер должен быть запущен, и порты он бывает разные открывает 9150 или 9050. Если тор-браузер работает нормально с АПИ телеграмма - можно посмотреть в настройках его прокси, и такие же поставить в обработку. Например Если в браузере в прокси написано 127.0.0.1 порт 9150 и работает - то попробуйте прописать в обработке socks5://127.0.0.1 и порт 9150. Если используете тор-консоль - то она выводит при запуске какой порт слушает.
3. Dwiss 162 14.05.19 18:10 Сейчас в теме
https://habr.com/ru/sandbox/115268/
Пробовал и так и так не проходит из 1С
127.0.0.1 порт 9050
и как у вас на картинке с открытым браузером
4. uno-c 234 14.05.19 18:12 Сейчас в теме
5. Dwiss 162 14.05.19 18:17 Сейчас в теме
6. uno-c 234 14.05.19 18:22 Сейчас в теме
А другой браузер, например Firefox (не Tor), через прокси тора работает? Проверить можно на 2ip.ru, что не Ваш комп светится.
7. Dwiss 162 14.05.19 18:23 Сейчас в теме
8. uno-c 234 14.05.19 18:24 Сейчас в теме
значит недоустановилось в нем что-то. Можно перегрузить комп. Или попробовать консольный тор, только он логин/пароль у меня требовал, любой лишь бы был. Консоль кстати и удобней - совсем маленький exe-шник, я в последнее время им пользовался при отладках всяких интеграций 1С и телеграмма. Единственное - еще рекомендую в настройках запретить exit-node российские. А то получится точка выхода из тора опять под РКНом, и снова никакого телеграмма :)
9. Dwiss 162 14.05.19 18:32 Сейчас в теме
10. uno-c 234 14.05.19 18:37 Сейчас в теме
И консольный не? Настройки с которыми у меня сейчас консольный работает прикрепил в картинке.
Прикрепленные файлы:
11. Dwiss 162 14.05.19 18:49 Сейчас в теме
Может тор не настроен? но в нем все работает
12. Dwiss 162 14.05.19 18:50 Сейчас в теме
13. uno-c 234 14.05.19 18:58 Сейчас в теме
Даже не знаю, что еще предположить, смотреть надо. Попробуйте vpn бесплатный. Я пользую hide.me, на месяц бесплатно 2 гига дают, каждый месяц заходить продлевать надо. Выйти на hide.me чтоб зарегистрироваться надо в обход РКН (через тот же тор-браузер), а сам их VPN пока нормально подключается РКН не блокирует. Только в обработке в модуле объекта уберите везде прокси из HTTPсоединений, если через vpn пойдете. Вместо
ХттпСоединение = Новый HTTPСоединение("api.telegram.org",,,,ИнетПрокси,,Новый ЗащищенноеСоединениеOpenSSL);
нужно без ИнетПрокси
ХттпСоединение = Новый HTTPСоединение("api.telegram.org",,,,,,Новый ЗащищенноеСоединениеOpenSSL);
14. Dwiss 162 14.05.19 19:19 Сейчас в теме
спс. так работает, чего с тором не могу понять
15. uno-c 234 14.05.19 19:32 Сейчас в теме
Кстати tor.exe консольный. Чтобы мы правильно друг друга понимали - я имел в виду Tor Expert Bundle, например с этой страницы https://2019.www.torproject.org/download/download. Он когда запускается - консоль висит, и если например неверное подключение к нему указать - без socks5:// например просто 127.0.0.1 или логин/пароль пустой оставить - он прямо в консоли выводит сообщения, что что-то не так, типа вы пытаетесь подключиться через https прокси, а я только socks5 работаю и тд.
16. Dwiss 162 15.05.19 08:35 Сейчас в теме
именно его и запускаю он показывает и Ip и порт и пытается ломиться но не получается у него
17. uno-c 234 15.05.19 09:12 Сейчас в теме
Да, странно, не сталкивался с подобным. Очень редко тор раньше не пропускал к api.telegram.org, как я понял, это когда точка выхода тора в России оказывалась. Путем настроек в файле torrc этот момент обходил.
DataDirectory ..\Data\Tor
GeoIPFile ..\Data\Tor\geoip
GeoIPv6File ..\Data\Tor\geoip6
ExcludeExitNodes {ru}
и запуск батником
tor.exe -f torrc
19. Dzenn 870 29.01.21 21:08 Сейчас в теме

Но подобный код не будет работать для юникод-символов с порядковым номером больше 65535, просто потому что 1C с ними не умеет работать. А именно в этом диапазоне большинство смайлов. Есть вариант сразу узнать binhex нужного символа, закодированного в UTF-8. В этом случае нужно между байтами binhex поставить знаки % - и мы получим готовый URL-кодированный символ для параметра GET в Телеграм. Моя обработка работает не с binhex, а с десятичными порядковыми номерами символов в таблице юникода. Обработка сама переводит номер символа за пределами понимания эски (например смайл 128512) в URL - кодированный вид. Иными словами, с символом номер 128512 обработка сделает то же, что делал бы код эски:

КодироватьСтроку(Символ(128512), СпособКодированияСтроки.КодировкаURL);
если бы эска умела работать с символами юникода за пределами границы 65535.


Дело не в том, что 1С не умеет такое отправлять, а в том, что Вы не знаете, как это делать. Любые эмодзи из 1С прекрасно отправляются, если уметь это делать ;-) https://youtu.be/t-U-wLfCkUc
20. uno-c 234 30.01.21 02:42 Сейчас в теме
(19) Я отправляю эмодзи из 1С представленной обработкой, но не знаю как это делать. Где логика?
Вместо рекламы ютуб-канала и записи двухминутного ролика проще написать четыре слова "телеграм понимает шорткоды эмоджи" было бы больше пользы, сэкономили бы время свое и чужое.
А в целом спасибо за инфу.

https://emojipedia.org/shortcodes/ - для тех кому лень гуглить "шорткоды эмоджи"
21. Dzenn 870 30.01.21 10:42 Сейчас в теме
(20) нет, телега не понимает шорткоды эмодзи, просто я их использую для простоты
22. uno-c 234 30.01.21 11:17 Сейчас в теме
(21) Значит, спасибо я зря сказал. Ваш конструктор, как и моя обработка, шлет эмоджи через кодировку UTF-8. Держите еще льва!
https://api.telegram.org/bot266456176:AAGdtud6BKG0_Di1HfDzNDpBLqQJ873dSIo/sendMessage?chat_id=213370775&text=This%20is%20lion%20%F0%9F%A6%81
32. onec.developer 181 24.05.23 12:49 Сейчас в теме
(20)эти шорткоды надо тоже предварительно кодировать в URL?
33. uno-c 234 24.05.23 13:09 Сейчас в теме
(32) Шорткоды типа :lion: я не пробовал в телегу посылать. Моя обработка шлет УРЛ-кодированный Unicode-номер символа эмоджи в кодировке UTF-8
18. пользователь 24.10.19 14:48
Сообщение было скрыто модератором.
...
23. Dzenn 870 30.01.21 11:25 Сейчас в теме
(22) не совсем через кодировку, при разных способах отправки используются разные способы кодирования эмодзи, оказывается. Если через адресную строку или юрлэнкодед, то хекс, если через джейсон, то утф, если через мультипарт, то байты. Попробуйте отправить эмодзи в сообщении под фотографией, и поймёте, что я имею ввиду
24. uno-c 234 30.01.21 11:27 Сейчас в теме
(23) Отправлял пару лет назад, все этим же алгоритмом из обработки этой статьи. И картинки, и файлы, и просто сообщения - везде проходят эмоджи, алгоритм получения эмоджи подходит один и тот же.
25. uno-c 234 30.01.21 11:36 Сейчас в теме
(23) А вообще Вы не понимаете, что такое UTF-8. И хекс и байты - это всё УТФ. И даже в юрленкодед содержится урл-кодированный УТФ )
26. Dzenn 870 30.01.21 11:43 Сейчас в теме
(25) хм, безусловно, утф это байты, но отправляются они при разных видах запросов по разному, что я и хотел сказать
27. uno-c 234 30.01.21 11:55 Сейчас в теме
(26) Ну это на любителя. Я делаю везде одинаково. В текст сообщения (текст подписи к картинке) вставляю эмоджи-тэги и скармливаю моей функции, которая присутствует в обработке из этой статьи. Вот что-то есть под рукой.

ЗаписьТекста.ЗаписатьСтроку("caption=" + КодироватьСообщение(ПодписьКартинки));

стэк:
ТелеграмИнтеграция ОбщийМодуль.Телег_Интеграция.Модуль.КодироватьСообщение(ТекстСообщения = "💸 Фискальный...") 2 318 Фоновое задание:Администратор (ОрловАВ) (9), SRV:1560


От же. Ну да, эмоджи-тэг, который я вставляю - он и для html подходит, поэтому инфостарт тут его сразу в эмоджи превратил )
Короче если после амперсанда и решетки пробелы поставить, чтобы тут инфостарт в эмоджи не превращал -

ПодписьКартинки "& # 128184; Фискальный регистратор (Торговый зал) 22.08.2019 19:31:53 123 руб. 123" Строка
Прикрепленные файлы:
28. uno-c 234 30.01.21 12:28 Сейчас в теме
(26) И как я понял, чтобы отправить :lion: используя Ваш конструктор - нужен специальный заполненный справочник в базе. Моей обработке никакой справочник не нужен, все что нужно - это знать порядковый UNICODE-номер символа, который необходимо отправить.
29. Dzenn 870 30.01.21 12:51 Сейчас в теме
(28) Скачал Вашу обработку, посмотрел, да, я тоже использую суррогатные пары и кодирование через несколько байт. А справочник (вернее, регистр) использую для того, чтобы не рассчитывать это всё на лету, плюс, в нём хранятся данные о 2667 эмодзи.
30. Tarlich 115 03.05.23 23:19 Сейчас в теме
Эх ! хотел прикрутить к своему чату .... перенес макет , все ок ... то же поле ХТМЛ но почему то выходит не как смайл а как %26%23128566%3B
31. uno-c 234 04.05.23 08:19 Сейчас в теме
(30) Не только макет нужно переносить. В обработке в модуле объекта есть
Функция ОтправитьСообщениеВЧат(ИдЧата, ТекстСообщения) Экспорт
В процессе работы она "😶" преобразует в "%F0%9F%98%B6" - это преобразование нужно тоже прикручивать к Вашему чату.
Оставьте свое сообщение