Как отправить сообщение 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 сообщение бот группа

См. также

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

Интеграция мессенджера WhatsApp и 1С: УНФ, УТ, КА, ERP - отправка и получение сообщений, картинок, файлов и видео прямо в 1С. Расширение работает с сервисом GreenApi.

15600 руб.

23.06.2023    9482    58    12    

34

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

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

13200 руб.

27.12.2021    38198    108    161    

201

SALE! 25%

Мессенджеры и боты Системный администратор Программист Бизнес-аналитик Пользователь Руководитель проекта Платформа 1С v8.3 Платные (руб)

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

15000 11250 руб.

18.06.2021    65563    312    272    

369

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

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

14900 руб.

15.11.2018    30270    35    49    

71

Мессенджеры и боты Пользователь Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 Управленческий учет Платные (руб)

Данное расширение представляет собой интерфейс взаимодействия 1С с сервисом Wazzup. Данный сервис позволяет вести беседу с использованием номера телефона, привязанного к Whatsapp. Почитать о сервисе и его условиях использования можно по ссылке https://wazzup24.com/. На данный момент расширение поддерживает почти все доступные через API функции. Обновление от 19.05.2023, версия 2.1!

14400 руб.

30.11.2020    13594    8    13    

15

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

Решение реализовано в виде расширения. Заменяет отправку смс на отправку в WhatsApp через Green-api. Отправка чека картинкой.

7800 руб.

15.05.2024    1544    3    6    

6
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Viktor_Ermakov 369 23.03.21 22:14 Сейчас в теме
Нет самой функции ПолучитьПрокси();
2. kite2 61 24.03.21 08:25 Сейчас в теме
(1) Там длинно вытаскивать по коду. Статья рассчитана на то, что с ботом вы уже работали. Предназначена исключительно, чтобы показать, как присылать сообщение в группу, если с ботом работать в уже умеете, поэтому пример кода не самодостаточный. Для примера работы бота и именно отправки сообщения используйте другие статьи - на Infostart есть нормальные примеры.
3. пользователь 07.01.22 16:27
Сообщение было скрыто модератором.
...
4. chebser 4 29.07.22 11:13 Сейчас в теме
Огромное спасибо, всё работает!
5. kite2 61 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 Сейчас в теме
Как подписать бота на группу?
Оставьте свое сообщение