Как отправить сообщение Telegram в группу?

01.03.21

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

Отправка сообщения в группу Telegram.

По работе я столкнулся с задачей отправки сообщения в группу Telegram.

В организации уже был Telegram-бот и настроена рассылка сообщений пользователям с помощью этого бота, поэтому статья рассчитана на тех, кто с ботом работать уже умеет. Если не умеете, то на Infostart есть обработки и статьи, но это другая - отдельная тема.

На Infostart я простых материалов для отправки сообщений в группу Telegram не нашел. То, что было, было очень длинно и предлагалось изучить api Telegram. Но хотелось сделать это "малой кровью".

Так вот отправить сообщение в группу все-таки оказалось просто. Сначала я сумел сделать это с помощью утилиты curl. А поскольку сделать мне это удалось, то переделать отправку с помощью curl на 1С не составило большого труда. Нужен был всего лишь опыт работы с post-запросом.

Итак, что потребовалось сделать:

1. Создать бота-телеграм для отправки сообщений.

2. Добавить этого боту в группу.

3. Соответственно подписаться на этого бота, но подписать надо группу, а не конкретных пользователей.

4. Бота надо сделать администратором группы, чтобы он получил доступ к сообщениям.

5. Сам пример отправки сообщения с помощью curl из командной строки выглядит так:

curl -X POST "https://api.telegram.org/bot1641633011:AAHkAXbdj1RKTJYHCnJF7dZ8u9LMyWL8ba7/sendMessage" -d "chat_id=-1001222395108&text=my sample text"

Здесь: 

1) 1641633011:AAHkAXbdj1RKTJYHCnJF7dZ8u9LMyWL8ba7 - токен моего бота

2) -1001222395108 - id группы, куда я отправлял ботом сообщение. id группы начинается с символа "-" в отличии от id пользователя, например.

3) my sample text - текст тестового сообщения

Потом я просто переписал это для 1С. Код не самодостаточный, но рассчитано на то, что код работы с ботом у вас уже есть. Вот пример кода:

// Это для сообщения в группу от чат-бота служебных сообщений
&НаСервере
Функция ОтправитьСлужебноеСообщениеTelegramВГруппу(ИдентрификаторЧата,ТекстСообщения) Экспорт
	ПараметрыЗапроса = Новый Структура;
	ПараметрыЗапроса.Вставить("chat_id",ИдентрификаторЧата);
	ПараметрыЗапроса.Вставить("text",ТекстСообщения);
	Ответ = ОтправитьЗапросСлужебныеСообщенияВГруппу("sendMessage",ПараметрыЗапроса);
	Если Ответ <> Неопределено и Ответ.КодСостояния =  200 Тогда
		Возврат Истина;
	Иначе 
		Возврат Ложь;
	КонецЕсли; 
КонецФункции

Функция ОтправитьЗапросСлужебныеСообщенияВГруппу(Команда,ПараметрыЗапроса)
	#Область Проверки
	ТокенТелеграм = Константы.ТокенТелеграмСлужебныеСообщения.Получить();
	СерверТелеграм = Константы.СерверТелеграм.Получить();
	Если Не ЗначениеЗаполнено(ТокенТелеграм) Тогда
		Сообщить("Не заполнен токен");
		Возврат Неопределено;
	КонецЕсли; 
	Если Не ЗначениеЗаполнено(СерверТелеграм) Тогда
		Сообщить("Не заполнен сервер телеграм");
		Возврат Неопределено;
	КонецЕсли; 
	Прокси = ПолучитьПрокси();
	Соединение  =  Новый HTTPСоединение(СерверТелеграм,443,,,Прокси,,Новый ЗащищенноеСоединениеOpenSSL());
	Если Соединение = Неопределено Тогда 
		Сообщить("Не удалось установить соединение");
		Возврат Неопределено;
	КонецЕсли;
	#КонецОбласти
	#Область Запроса
	ТекстЗапроса = "bot" + ТокенТелеграм + "/"+Команда;
	Если ЗначениеЗаполнено(ПараметрыЗапроса) Тогда
		ПервыйПараметр = Истина;
		Для каждого Эл Из ПараметрыЗапроса Цикл
			Если ПервыйПараметр Тогда
				ТекстЗапроса = ТекстЗапроса+"?";
				ПервыйПараметр = Ложь;
			Иначе 
				ТекстЗапроса = ТекстЗапроса+"&";
			КонецЕсли;
			ТекстЗапроса = ТекстЗапроса+Эл.Ключ+"=-"+Эл.Значение;
		КонецЦикла;
	КонецЕсли;
	Запрос = новый HTTPЗапрос(ТекстЗапроса);
	Ответ = Соединение.ВызватьHTTPМетод("POST", Запрос);	
	#КонецОбласти
	Если Ответ.КодСостояния <>  200 Тогда
		Ответ = Неопределено
	КонецЕсли; 
	
	Возврат Ответ
КонецФункции

 

телеграм telegram сообщение бот группа

См. также

SALE! 25%

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

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

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

15000 11250 руб.

18.06.2021    60462    295    256    

350

SALE! 25%

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

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

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

13200 9900 руб.

27.12.2021    34311    85    159    

180

Платформа интеграции 1С с чат-ботами (Telegram, Viber, WhatsApp, Instagram, Skype, ICQ, Facebook, ВКонтакте, Одноклассники, Яндекс.Алиса, Verbox, Jivochat, Avito)

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

Мощный модуль для интеграции 1С с чат-ботами: Telegram, Viber, WhatsApp, WhatsApp Business, Instagram, ICQ, Facebook, Vkontakte, Skype, Одноклассники, Яндекс.Алиса, Avito а так же виджеты чата для сайтов: Verbox, Jivochat. Это универсальное и эффективное решение с большими возможностями, простым интерфейсом, наличием визуального конструктора, базовыми сценариями поведения из коробки, позволяющий запустить чат-ботов в течении 1-го дня.

65000 руб.

08.10.2019    57776    32    0    

152

Легкий документооборот (+чат-бот для 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    28275    27    48    

59

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

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

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

7788 руб.

07.04.2014    84353    43    193    

129

Личный кабинет сотрудника для 1С:Документооборот 2.1 в Telegram

Мессенджеры и боты Учет документов Платформа 1С v8.3 1С:Документооборот Россия Платные (руб)

Сделайте взаимодействие сотрудников компании быстрым и удобным. В Личном кабинете в Телеграм сотрудники могут получать и выполнять задачи используя популярный мессенджер

11520 руб.

29.12.2022    6889    5    11    

11
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Viktor_Ermakov 364 23.03.21 22:14 Сейчас в теме
Нет самой функции ПолучитьПрокси();
2. kite2 59 24.03.21 08:25 Сейчас в теме
(1) Там длинно вытаскивать по коду. Статья рассчитана на то, что с ботом вы уже работали. Предназначена исключительно, чтобы показать, как присылать сообщение в группу, если с ботом работать в уже умеете, поэтому пример кода не самодостаточный. Для примера работы бота и именно отправки сообщения используйте другие статьи - на Infostart есть нормальные примеры.
3. пользователь 07.01.22 16:27
Сообщение было скрыто модератором.
...
4. chebser 4 29.07.22 11:13 Сейчас в теме
Огромное спасибо, всё работает!
5. kite2 59 29.07.22 20:10 Сейчас в теме
6. chilyagin 91 26.09.23 17:48 Сейчас в теме
7. user2000219 11.10.23 11:50 Сейчас в теме
А в группу с конкретной темой(не в General)?
8. sintegra 4 27.11.23 19:20 Сейчас в теме
Как подписать бота на группу?
Оставьте свое сообщение