Создаем бота Telegram

Публикация № 550760 30.09.16

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

Обработка Бот Telegramm API HTTP inline_keyboard

Легко и непринужденно создаем бота, который поможет получать данные из 1С, используя API Teletram

Используя побликации  //infostart.ru/public/387433/ и //infostart.ru/public/419846/ решил создать бота, используя API Telegram

Для разбора JSON использовалась обработка из публикации: //infostart.ru/public/119601/

Регистрируем бот и получаем ТОКЕН, тут: //infostart.ru/public/419846/  есть описание, как это сделать

В текущей версии реализована реакция на тестовые сообщения от пользователя;

"скажи" - бот в ответ посылает сообщение

"отчеты" - показывается клавиатура со списком доступных отчетов

"файлы" - показывается клавиатура со списком доступных файлов

Также бот получает присланные фотографии.

Основные процедуры бота:

&НаСервере
Процедура ПрочитатьСобщенияНаСервере() Экспорт
	Сервер = "api.telegram.org";    
	
	СтрокаСоединения = "/bot"+Токен+"/getUpdates" + ?(ПоследнийИД = "", "", "?offset=" + ПоследнийИД);
	
	HTTPЗапрос = Новый HTTPЗапрос();
	Заголовки = Новый Соответствие;
	
	HTTPЗапрос.Заголовки.Вставить("Connection", "keep-alive"); 
	HTTPЗапрос.АдресРесурса = СтрокаСоединения; 
	
	ЗащищенноеСоединение = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаWindows, Новый СертификатыУдостоверяющихЦентровWindows);
	HTTPСоединение = 	Новый HTTPСоединение(Сервер,,,,Новый ИнтернетПрокси,, ЗащищенноеСоединение);
	Попытка 
		ОтветHTTP = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
	Исключение
		Сообщить(ОписаниеОшибки());
		Возврат;
	КонецПопытки;
	
	ДанныеКакСтрока = ОтветHTTP.ПолучитьТелоКакСтроку();
	
	обОбработка = РеквизитФормыВЗначение("Объект");
	
	Рез = обОбработка.мПрочитатьJSON(ДанныеКакСтрока);
	Если Рез["ok"] <> Истина Тогда
		Возврат;
	КонецЕсли;
	
	
	Рез = СоответвиеВСтруктуру(Рез);
	
	result = Рез.result;
	МаксИД = 0;
	
	Для Каждого mes из result Цикл
		
		ПоследнийИД = Формат(mes.update_id + 1, "ЧГ=");
		
		Попытка
			message	 = mes.message;
		Исключение
			Продолжить;
		КонецПопытки;
		
		Дата = '19700101' + message.date +7*60*60;
		
		Попытка
			from = message.from.username;
		Исключение
			from = message.from.first_name;
		КонецПопытки;
		
		chatИД = Формат(message.chat.id, "ЧГ=");
		
		Если message.Свойство("text") Тогда
			Ок= истина;
			Если Найти(ВРег(message.text), "СКАЖИ")<>0 Тогда
				
				HTTPЗапрос.АдресРесурса = "/bot"+Токен+"/sendMessage?text=Hello I am BOT&chat_id="+chatИД+"&reply_to_message_id=" + message.message_id; 
				HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
				
			ИначеЕсли  Врег(message.text) = "ОТЧЕТЫ" Тогда
				
				HTTPЗапрос.АдресРесурса = "/bot"+Токен+"/sendMessage?text=Доступные отчеты: &chat_id="+chatИД+"&reply_to_message_id=" + message.message_id + 
				"&reply_markup="+КлаваОтчеты;
				HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
				
			ИначеЕсли  Врег(message.text) = "ФАЙЛЫ" Тогда
				
				HTTPЗапрос.АдресРесурса = "/bot"+Токен+"/sendMessage?text=Доступные файлы: &chat_id="+chatИД+"&reply_to_message_id=" + message.message_id + 
				"&reply_markup="+КлаваФайлы;
				HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
				
			ИначеЕсли Лев(message.text, 7) = "Отчет: " Тогда
				
				HTTPЗапрос.АдресРесурса = "/bot"+Токен+"/sendMessage?text=Ждите. Отчет формируется&chat_id="+chatИД+"&reply_to_message_id=" + message.message_id;
				HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
				
				ТекстОтчета = ПолучитьТекстОтчета(message.text);
				
				HTTPЗапрос.АдресРесурса = "/bot"+Токен+"/sendMessage?parse_mode=HTML&text="+Кодировать(ТекстОтчета)+"&chat_id="+chatИД+"&reply_to_message_id=" + message.message_id;
				HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
				
			ИначеЕсли message.text = "Файл: PDF" Тогда
				
				ОтправитьФайлPDF(chatИД, HTTPСоединение, HTTPЗапрос)				
				
			ИначеЕсли message.text = "Файл: XLS" Тогда
				
				ОтправитьФайлXLS(chatИД, HTTPСоединение, HTTPЗапрос)				
				
			КонецЕсли;
			
		ИначеЕсли message.Свойство("photo") Тогда
			МассивФото = message.photo;
			Для Каждого Фото из МассивФото Цикл
				HTTPЗапрос.АдресРесурса = "/bot"+Токен+"/getFile?file_id=" + Фото.file_id;
				Ответ = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
				СтрокаОтвета = Ответ.ПолучитьТелоКакСтроку();
				Путь = СтрЗаменить(Сред(СтрокаОтвета, Найти(СтрокаОтвета,"photo\/") + 7) , """}}", "");
				СтрФото = Фотографии.Добавить();
				СтрФото.Имя = Путь;
				СтрФото.Размер = "" + Фото.height +"x" + Фото.width;
			КонецЦикла;
			
		КонецЕсли;
	КонецЦикла;
КонецПроцедуры


&НаСервере
Функция СоответвиеВСтруктуру(Рез) 
	мРез = Новый Структура;
	Для Каждого Эл из Рез Цикл
		Ключ = Эл.Ключ;
		мЗнач = Эл.Значение;
		Если ТипЗнч(мЗнач) =Тип("Соответствие") Тогда
			мЗнач = СоответвиеВСтруктуру(мЗнач);
		ИначеЕсли ТипЗнч(мЗнач) =Тип("Массив") Тогда
			мЗнач = Новый Массив;
			Для Каждого элМ из Эл.Значение Цикл
				мЗнач.Добавить(СоответвиеВСтруктуру(элМ));
			КонецЦикла;
		КонецЕсли;
		мРез.Вставить(Ключ, мЗнач);
	КонецЦикла;
	Возврат мРез;
КонецФункции

&НаСервере
функция Кодировать(Текст)
	Возврат ?(Текст = "", "Пусто", КодироватьСтроку(Текст,  СпособКодированияСтроки.URLВКодировкеURL));
КонецФункции

&НаСервере
Процедура ОтправитьФайлPDF(chat_id, HTTPСоединение, HTTPЗапрос)
	
	Таб = РеквизитФормыВЗначение("Объект").ПолучитьМакет("МакетОтчета");
	
	
    ИмяФайла = ПолучитьИмяВременногоФайла("PDF");
    Таб.АвтоМасштаб = Истина;
    Таб.Записать(ИмяФайла, ТипФайлаТабличногоДокумента.PDF);
	
    
    СтрокаСоединения = "/bot" + Токен + "/sendDocument";
    
    Boundary = "----"+Строка(Новый УникальныйИдентификатор());
    
    //Определяем массив для процедуры ОбъединитьФайлы
    МассивФайловДляОбъединения = Новый Массив;
    
    //Формируем начальный фрагмент файла POST-запроса
    ИмяФайлаОтправкиНачало = ПолучитьИмяВременногоФайла("txt");
    ФайлОтправкиНачало = Новый ЗаписьТекста(ИмяФайлаОтправкиНачало, КодировкаТекста.UTF8);
    
    //Формируем конечный фрагмент файла POST-запроса
    ИмяФайлаОтправкиКонец = ПолучитьИмяВременногоФайла("txt");
    ФайлаОтправкиКонец = Новый ЗаписьТекста(ИмяФайлаОтправкиКонец, КодировкаТекста.UTF8);
    
    ТекстДляОтправки = "";
    
    ТекстДляОтправки = ТекстДляОтправки + "--"+Boundary + Символы.ПС;
    ТекстДляОтправки = ТекстДляОтправки + "Content-Disposition: form-data; name=""chat_id""" + Символы.ПС + Символы.ПС;
    ТекстДляОтправки = ТекстДляОтправки + chat_id + Символы.ПС;
    
    ТекстДляОтправки = ТекстДляОтправки + "--"+Boundary + Символы.ПС;
    ТекстДляОтправки = ТекстДляОтправки + "Content-Disposition: form-data; name=""document""; filename=""report.PDF""" + Символы.ПС;
    
    ФайлОтправкиНачало.ЗаписатьСтроку(ТекстДляОтправки );
    ФайлОтправкиНачало.Закрыть();
    
    МассивФайловДляОбъединения.Добавить(ИмяФайлаОтправкиНачало);
    
    МассивФайловДляОбъединения.Добавить(СокрЛП(ИмяФайла));
    
    ТекстДляОтправки = "" + Символы.ПС;
    ТекстДляОтправки = ТекстДляОтправки + "--"+Boundary+"--";
    ФайлаОтправкиКонец.ЗаписатьСтроку(ТекстДляОтправки);
    ФайлаОтправкиКонец.Закрыть();
    МассивФайловДляОбъединения.Добавить(ИмяФайлаОтправкиКонец);
    
    ИмяФайлаОтправки = ПолучитьИмяВременногоФайла("txt");
    ОбъединитьФайлы(МассивФайловДляОбъединения, ИмяФайлаОтправки);
    
    HTTPЗапрос.Заголовки.Вставить("Connection", "keep-alive");
    HTTPЗапрос.Заголовки.Вставить("Content-Type", "multipart/form-data; boundary="+Boundary);
    
    HTTPЗапрос.УстановитьИмяФайлаТела(ИмяФайлаОтправки);
    HTTPЗапрос.АдресРесурса = СтрокаСоединения;
    
    Попытка
        ОтветHTTP = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
    Исключение
        Сообщить(ОписаниеОшибки());
    КонецПопытки;
КонецПроцедуры

Добавлено:

Что бы клавиатура появлялась прямо в чате необходимо подавать другой текст клавиатуры в обработке он получается так:

	Строки = Новый Массив;
	Кнопки = Новый Массив;
	Кнопки.Добавить(Новый структура("text, callback_data", "Файл: PDF", "1"));
	Кнопки.Добавить(Новый структура("text, callback_data", "Файл: XLS", "2"));
	Строки.Добавить(Кнопки);

	КлавиатураВСообщении = JSON.мЗаписатьJSON(Новый Структура("inline_keyboard", Строки), Ложь);

если текстом:

КлавиатураВСообщении =
"{""inline_keyboard"":[[{""text"":""Файл: PDF"",""callback_data"":""1""},{""text"":""Файл: XLS"",""callback_data"":""2""}]]}"

обработка нажатия на эту кнопку отличается от обработки нажатия на простую клавиатуру, которая впринципе просто отсылает сообщение с нужным текстом:

блок "сallback_query" как раз говорит нам о нажатии на такую кнопку, в нем будет содержаться информации о коде нажатой кноки, в нашем примере это "1" или "2"

КодНажатойКнопки = mes.callback_query.data

далее обратабываем так как нам надо

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

Наименование Файл Версия Размер
ОбработкаБот

.epf 27,05Kb
107
.epf 27,05Kb 107 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. TreeDogNight 22 30.09.16 10:18 Сейчас в теме
2. gzharkoj 471 30.09.16 13:20 Сейчас в теме
Желтый у вас заголовок, где же тут процесс создания бота?
3. FirePyres 66 30.09.16 14:01 Сейчас в теме
(2) ifal, Как понять что он "желтый"?
4. gzharkoj 471 30.09.16 15:18 Сейчас в теме
(3) В заголовке статьи написано: " создаем бота..." -, я ожидал увидеть описание процесса, а что видим внутри? ссылки на другие статьи, где описан процесс, а все что ваше личное упрятано в обработку. Поэтому я делаю такой вывод. Правильней звучало бы "Пример использования бота Telegram".
5. FirePyres 66 04.10.16 05:41 Сейчас в теме
(4) Добавил тексты основных процедур
Хотел описать, но код вроде настолько простой что вроде и объяснений не надо
6. FirePyres 66 06.10.16 10:35 Сейчас в теме
Добавил пример inline клавиатуры
7. METAL 273 08.11.16 11:00 Сейчас в теме
Добрый день!
Скажите, а не приходилось ли Вам делать интеграцию с Facebook API https://developers.facebook.com/ ?
Иными словами, можно ли то же самое прикрутить не к Телеграм, а к Фейсбуку?
Просто в нашей компании никто Телеграм не использует, а интеграцию с каким-нибудь популярным мессенджером хотят, и несмотря на мои уговоры, даже пробовать телеграм не хотят, аргумент такой - вот есть Фейсбук, приложение у всех стоит, АПИ есть, пусть корпоративный бот работает на этой платформе...
Но мне пока не удалось найти ни одного примера реализации бота.. Это потому что на порядок сложней, чем с телеграмом, или просто руки не дошли ни у кого?..
Спасибо!
8. FirePyres 66 09.11.16 05:15 Сейчас в теме
(7) Я бы попробовал, но не совсем понимаю как это должно работать
Как вы это себе представляете?
9. METAL 273 09.11.16 10:15 Сейчас в теме
(8) аналогично
Пользователь подписывается на бота
И дальше например пишет в чат ОТЧЕТЫ и может выбрать нужный отчёт за нужную дату (sales today - без кнопок для выбора тоже подойдёт, непринципиально)
Либо происходит событие в 1С какое-то, и пользователю в мессенджер приходит уведомление
Но насколько я вчёра смог разобраться - при разработке придётся использовать некую php-прослойку, так как для ФБ обязательно использовать webhook, как я понял.. По крайней мере, именно на этом этапе я споткнулся http://prntscr.com/d4yojf

Мнение одного специалиста, который делал и для ФБ (на php), и для телеграм (он писал мне в личку, поэтому имя не публикую):
На 1С не делал, делал на php. но там чуть чуть меньше возможностей, есть ограничения и т.д. В принципе можно на php запустить на сайте готовый какой нить движок работы с фейсбуком, и написать для него АПИ интерфейса для 1с. Это самое простое решение будет
10. PhoenixAOD 62 09.11.16 10:40 Сейчас в теме
12. FirePyres 66 10.11.16 05:50 Сейчас в теме
Сегодня по радио услышал что Viber запустил для всех возможность создания публичного аккаунта

"Представленные паблик аккаунты — это чат-каналы, которые можно использовать для отправки важной (рекламной) информации пользователям, проводить презентации, размещать новости, полезные ссылки, GIF-изображения, всячески общаться и получать обратную реакцию от участников канала. Также создателям каналов доступны CRM-инструменты для управления чатом."
13. rayastar 1324 19.06.17 23:13 Сейчас в теме
Коллеги, приветствую! С ботом разобрался, все отлично, но есть одно НО. Почему то иногда мои команды не обрабатываются. Опишу проблему. Отправляю команду - и надеюсь увидеть ее в входящем файле json. Но там остается какой то перечень старых команд...в чем может быть проблема? Вот только что отправил боту команду - пришел ответ, все ок. отправляю следующую команду - и в ответ тишина...Мне не совсем понятна логика формирования json файла
17. PLAstic 290 29.08.17 17:49 Сейчас в теме
(13) Внимательно прочитайте описание https://core.telegram.org/bots/api#getupdates
Наверняка, вы увидели, что параметры не обязательны и юзаете без них. Поэтому получаете первые 100 сообщений по сроку давности. Если вчитаться, то там написано, что этот оффсет - это не смещение, а номер первого непрочитанного сообщения. Т.е. последний полученный ид сообщения + 1.
Получается, чтобы получать свежие сообщения, надо указывать параметр offset.
14. terrorion 91 14.08.17 09:12 Сейчас в теме
Добрый день, коллеги.
Никак не могу разобраться, как удалить клавиатуру в чате ("inline_keyboard").
Был бы признателен за наглядный пример.
18. PLAstic 290 29.08.17 17:52 Сейчас в теме
(14) Передайте пустую клавиатуру.

Процедура ИзменитьКлавиатуруСообщения(Чат, Сообщение, Клавиатура = "")

	ТекстЗапроса = СтрШаблон("bot%1/editMessageReplyMarkup?chat_id=%2&message_id=%3", ТокенБота, Формат(Чат, "ЧГ="), Формат(Сообщение, "ЧГ="));
	Если НЕ ПустаяСтрока(Клавиатура) Тогда
		ТекстЗапроса = ТекстЗапроса + "&reply_markup=" + Клавиатура;
	КонецЕсли;

	Запрос = Новый HTTPЗапрос(ТекстЗапроса);
	Соединение = Новый HTTPСоединение("api.telegram.org", 443,,,,, Новый ЗащищенноеСоединениеOpenSSL());
	HTTPОтвет = Соединение.Получить(Запрос);
	ЧтениеJSON = Новый ЧтениеJSON;
	ЧтениеJSON.УстановитьСтроку(HTTPОтвет.ПолучитьТелоКакСтроку());
	Результат = ПрочитатьJSON(ЧтениеJSON);
	ЧтениеJSON.Закрыть();

	Если НЕ Результат.ok Тогда
		ТекстОписания = СтрШаблон("%1
|Чат: %2
|Сообщение: %3", Результат.description, Чат, Сообщение);
		ЗаписьЖурналаРегистрации("Бот", УровеньЖурналаРегистрации.Ошибка,,, ТекстОписания);
	КонецЕсли;

КонецПроцедуры
Показать
19. terrorion 91 30.08.17 07:59 Сейчас в теме
15. FirePyres 66 15.08.17 05:15 Сейчас в теме
День добрый.
Вроде работает если передать пустую клавиатуру: "{""keyboard"":[],""one_time_keyboard"":true}"
16. terrorion 91 24.08.17 14:34 Сейчас в теме
(15) Спасибо за ответ. Но, к сожалению, ничего не получилось. Насколько я понял, как то нужно использовать ReplyKeyboardRemove.
22. Sakuraso 17.04.19 09:07 Сейчас в теме
(15)Здравствуйте, скажите возможно ли приобрести у вас лично вашу обработку, т.к. купить отдельно стартмани я не могу, а на дорогущий абонемент денег нет. Просто делаю диплом в колледже на похожу тему, вот и хотелось бы посмотреть как это реализовано.
32. hawksib 04.05.22 21:15 Сейчас в теме
(16) конечно, для Вас, возможно, не актуально уже, но для истории, что бы в поисковиках выпадали варианты, я сделал так:

КлавиатураСтруктура = Новый Структура;
КлавиатураСтруктура.Вставить("remove_keyboard", Истина);
КлавиатураJSON = Новый ЗаписьJSON;
КлавиатураJSON.УстановитьСтроку(Новый ПараметрыЗаписиJSON(ПереносСтрокJSON.Нет,,,
ЭкранированиеСимволовJSON.Нет));
ЗаписатьJSON(КлавиатураJSON, КлавиатураСтруктура,,);
КлавиатураДляЗапроса = КлавиатураJSON.Закрыть();


как я понял, это так работает: в объекте записывается поле "remove_keyboard": thue и reply_markup становится типом ReplyKeyboardRemove
(15)
20. Euroset1 11 18.02.18 15:43 Сейчас в теме
Автор, как ты решил проблему с BOM кодом? Или веб сервис телеграма самостоятельно его вырезает перед первым boundary?
21. stako8 18.01.19 08:20 Сейчас в теме
Может кто сталкивался: отправляю клавиатуру "bot******/sendMessage?chat_id=******&text=Меню&reply_markup={"inline_keyboard":[[{"text":"1","callback_data":"1"},{"text":"2","callback_data":"2"}]]}", она приходит пользователю, тот нажимает на неё, но через "getUpdates" не приходит ответ что он нажал. Куда копать?
23. lishniy 132 19.04.19 13:27 Сейчас в теме
(21) Сообщения из inline_keyboard приходят чуть по другому. Добавьте в цикле
Для Каждого mes из result Цикл
		Если message.Свойство("text") Тогда

условие

ИначеЕсли mes.Свойство("callback_query") Тогда
 Ответ = СтрокаМассива.callback_query.data;
24. stako8 19.04.19 13:37 Сейчас в теме
(23) У меня проблема не с поиском, а с тем, что ответ вообще не приходит, чтобы я не нажимал и не делал. Приходит только сообщение о том, что я вызывал меню. А вот апдейт, что я нажал кнопку не приходит.
Прикрепленные файлы:
25. lishniy 132 19.04.19 13:50 Сейчас в теме
(24) Странно. А клиент какой? Должно быть так.
Прикрепленные файлы:
26. stako8 19.04.19 13:56 Сейчас в теме
(25) Если Вы про клиент телеграмма - пробовал нажимать и на десктопе и на мобилке, результат на скрине в предыдущем моём сообщении.
27. lishniy 132 19.04.19 14:02 Сейчас в теме
(26)Конечно, это не совсем то, что вы делаете, попробуйте так сделать меню
/sendMessage?chat_id=ЧЧЧ&text=Меню&reply_markup={"keyboard":[[{"text":"Пункт меню"}]],"resize_keyboard":true}
28. stako8 19.04.19 14:16 Сейчас в теме
(27) Так это обычная кнопка, которая отправляется как текст
Прикрепленные файлы:
29. lishniy 132 19.04.19 14:18 Сейчас в теме
(28) Так и есть. Разница, что первая в чате под сообщением, а эта как отдельная клавиатура
30. stako8 19.04.19 14:22 Сейчас в теме
(29)Ещё раз повторюсь: возможно я не в том формате формирую строку и данные на сервер телеграмма приходят не совсем корректные (с виду строка с параметрами правильная), по-этому не могут быть возвращены через callback_query.
31. 028 24.05.20 02:29 Сейчас в теме
Добрый день вопрос как решить перенос кнопок на другую строку, чтобы кнопки выстроились одна под другой? использую inline_keyboard
не пойму как в 1С это сделать в инете пишут вот так kb1 = Types.InlineKeyboardMarkup(row_width=1), как это сделать в 1С?
подскажите пожалуйста.
33. FirePyres 66 05.05.22 06:53 Сейчас в теме
пример:
ТекстКлавиатуры = 
"{""inline_keyboard"":[[{""text"":""Стр1Кн1"",""callback_data"":""Стр1Кн1""},{""text"":""Стр1Кн1"",""callback_data"":""Стр1Кн1""}]," //Массив кнопок 1 строка
+"[{""text"":""Стр2Кн1"",""callback_data"":""%1""}]"// массив кнопок 2 строка
+ "]}";
Прикрепленные файлы:
Оставьте свое сообщение

См. также

Конфигурация для просмотра публичных телеграм каналов

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

Просмотр и каталогизация в более удобном виде публичных телеграм каналов, групп и чатов.

1 стартмани

02.06.2018    27269    14    DO_WHILE_LOOP    7    

14

1С: Предприятие + корпоративный чат, как наладить оперативные уведомления за 10 минут

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

Как сделать автоматические уведомления о разных событиях из 1С в корпоративный чат MyChat для сотрудников компании

1 стартмани

14.08.2016    61842    36    Demanoidos    61    

65

Telemonitor - объединяем Telegram и 1С

Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Не так давно Telegram предоставил API для создания ботов. Telemonitor - программа, позволяющая легко настроить собственного бота для работы с 1С.

1 стартмани

09.08.2015    106943    240    salexdv    186    

184

Удаленное управление через Skype

Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Удаленное управление 1С через Skype. Со стороны клиента для работы нужен только Skype. Со стороны сервера любой компьютер с 1С.

1 стартмани

09.02.2014    53066    68    moolex    29    

47

1С заговорила - голосовой информатор через Skype

Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Обработка в статье позволяет получить аудиофайл с речью, сгенерированной компьютером на основе текстовой строки, позвонить собеседнику через Skype и произнести его. Функциональность выполнена на основе .Net framework и API для Skype. Разработка будет полезна не только для серьезных бизнес-приложений, но и для домашних опытов и шуток друзьям. Для звонков на реальные номера потребуется пополненный баланс на Skype.

1 стартмани

16.01.2013    22199    48    Elisy    16    

34

Звонок через локальный Skype, по команде с терминальной 1С (RDP + Skype)

Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Деловые контакты хранятся в 1С, 1С работает через RDP, скайп стоит на локальной машине - как позвонить из 1С?! Данная методика является одним из решением задачи связки RDP + SKYPE

1 стартмани

09.07.2012    23097    24    binex    15    

9

Локальный форум v2.0

Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

Форум - публичное средство для общения сотрудников компании в базе 1С. Публикация вопросов с прикрепленными ссылками на объекты базы и произвольными файлами.

1 стартмани

20.11.2010    20740    538    sound    43    

86

Закрытие месяцев за период с отправкой результата в телеграм для КА, УТ

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

Операция закрытия месяца - очень долгий процесс, бывает, занимает часы. Было бы здорово получить сообщение об ее окончании, чтобы не ждать. Решение - данная обработка! Так же есть функционал закрытия месяцев за период.

1 стартмани

15.05.2023    1870    3    itcorpru    2    

3

Заготовка для использования технологии GPT в 1С

Идеи и тренды в разработке Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Это заготовка для того, чтобы организовать получение данных из базы 1С на основе запросов, сформулированных на естественном языке в произвольной форме.

10 стартмани

25.05.2023    3585    2    mkalimulin    28    

17

Уведомления в Телеграмм со ссылкой на любой документ

Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Добавление кнопки [Уведомление в Telegram] во все формы справочников и документов. Уведомления можно использовать для согласований или для технической поддержки. Крайне простая установка и настройка.

1 стартмани

20.09.2022    6116    27    wrooom    25    

32

Чатбот WhatsApp

Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Внешняя обработка для написания чат-бота WhatsApp

1 стартмани

21.10.2020    17264    38    andrew_shamin    30    

58

Чат GPT (OpenAI) + генератор изображений

Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Обработка для взаимодействия с известным в последнее время "искусственным интеллектом", созданным OpenAI, включающая в себя генерацию изображений и чат-бота.

5 стартмани

10.04.2023    4192    5    Jokstr    4    

4

[FREE] Библиотека для интеграции 1С с Whatsapp шлюзом (API) "Whatsgate"

Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Функционал библиотеки позволяет полностью манипулировать элементами системы "Whatsgate" (Например: отправить сообщение с прикрепленным файлом, получить чаты и т.д.). Это позволит вам разработать множество интересных и полезных решений, начиная от интеграции с типовыми решениями и заканчивая целыми CRM системами!

1 стартмани

03.11.2022    3362    13    TheNabiulla    0    

9

Расширение "ИНФОБАЗА. Интеграция с OpenAI" - ChatGPT в 1С

Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 Беларусь Россия Абонемент ($m)

Расширение "ИНФОБАЗА. Интеграция с OpenAI" позволяет использовать языковую модель ChatGPT прямо из 1С (конфигурация 1С Управление компанией для Беларуси).

1 стартмани

02.03.2023    2655    29    NikitaXa    8    

8

ChatGPT в 1С для самых маленьких

Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Пример использования в 1С примитивного чата с ИИ на движке ChatGPT.

3 стартмани

30.03.2023    6376    11    SerVer1C    34    

15

Telegram бот для ЗУП 3.1 (Telegram bot)

Мессенджеры и боты Сложные периодические расчеты 8.3.14 1С:Зарплата и Управление Персоналом 3.x Россия Абонемент ($m)

Бот предназначен для получения информации по сотрудникам из БД ЗУП: "Расчетный листок" и количество отработанных смен за выбранный месяц. Реализован в виде расширения конфигурации Зарплата и управление персоналом, редакция 3.1.

1 стартмани

30.09.2022    3802    16    dima-2828    19    

6

Работа с API Rocket.Chat из 1С - Отправка сообщений и файлов, получение списков каналов и пользователей

Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Rocket.Chat - опенсорсный корпоративный чат. Может рассматриваться в качестве альтернативы Slack. Существует возможность установить собственный сервер, что очень актуально в свете текущей геополитической обстановки.

5 стартмани

11.11.2022    3222    9    madonov    3    

9

Робот рассылки по WhatsApp

Мессенджеры и боты Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Обработка рассылки использует локальное EXE-приложение WhatsApp, а именно активацию отправки через переход по навигационной ссылке вида whatsapp://send?phone=79ххххххх12&text=TEXT, затем ждет секунду и делает SendKey(ENTER) для запуска отправки сообщения, и так далее по всем строкам таблицы.

1 стартмани

28.02.2023    2048    3    user739143    2    

6

Мессенджер Avito для 1С:CRM

Мессенджеры и боты Платформа 1С v8.3 1С:CRM ПРОФ, КОРП Россия Управленческий учет Абонемент ($m)

Добавление канала диалогов для 1С:CRM из популярного сайта объявлений.

10 стартмани

26.02.2023    1723    2    andryandry    4    

3

Чат "Беседка" на управляемых формах

Мессенджеры и боты Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Абонемент ($m)

Расширение. Чат. Для общения пользователей, обмена файлами. Можно создавать групповые каналы.

1 стартмани

02.02.2023    2127    4    user-sergey    14    

4

Telegram: Согласование заявок на расходование денежных средств

Бюджетирование и планирование Мессенджеры и боты Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Россия Управленческий учет Абонемент ($m)

Расширение конфигурации для согласования заявок на расходование денежных средств через чат бот Telegram. Проверено на платформе 1С:Предприятие 8.3 (8.3.22.1750). Проверено на конфигурациях: 1С:ERP Управление предприятием 2 (2.5.10.74), Управление торговлей, редакция 11 (11.5.10.52).

10 стартмани

24.01.2023    2760    14    Pira    2    

9

Работа с Telegram Bot для 1С

Мессенджеры и боты Платформа 1С v8.3 8.3.14 Конфигурации 1cv8 Россия Абонемент ($m)

Эта разработка будет полезна тем, кто хочет реализовать в своей базе рассылку или взаимодействия пользователей 1С через мессенджер Telegram. Пошагово опишу создание бота, и на основе обработки можете протестировать работу.

2 стартмани

26.12.2022    2877    4    user1540741    0    

1

Внешняя компонента на C# для парсинга страниц через Phantom JS на сервере 1С х32,х64

Инструментарий разработчика Разработка внешних компонент WEB-интеграция Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

PhantomJS - это браузер без окна, используемый для автоматизации взаимодействия с веб-страницами. PhantomJS предоставляет JavaScript API, обеспечивающий автоматическую навигацию, снимки страницы, эмуляции поведение пользователя, что делает его распространенным инструментом, используемым для запуска модульных тестов на основе браузера в автономной системе, такой как среда непрерывной интеграции . PhantomJS основан на WebKit, что делает его похожей на Safari и Google Chrome средой просмотра. Это программное обеспечение с открытым исходным кодом, выпущенное под лицензией BSD.

1 стартмани

06.08.2020    12198    8    DrZombi    7    

22

Обмен данными между базами 1С посредством передачи сообщений

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

Разбор примера демо-реализации группового чата с использованием стороннего сервиса. Цель, - знакомство с некоторыми функциями платформы DESP. Вопросы эффективности и безопасности не затрагиваются. Исполняемый код серверной части платформы не представлен в данной публикации, но выполняется в "облаке", в демо-режиме.

1 стартмани

12.07.2022    3525    0    kodkraft    0    

2

Бесплатная отправка сообщений в Whatsapp бот из 1С

Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Задача: Имеются 200 контрагентов, которым ежедневно нужно из отчета 1С выслать сумму их задолженности или предоплаты в Whatsapp (рассылка должна идти с номера менеджера этих контрагентов).

2 стартмани

08.06.2022    11291    48    John_d    48    

143

Управление ICQ-ботами

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

Простое и эффективное решение для управления ICQ-ботами из 1С.

1 стартмани

20.07.2020    5075    15    cdrw3    20    

2

Telegram бот для УТ 11

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

Бот умеет формировать заказы клиентов в базе УТ 11, осуществлять согласование заказов, показывать остатки товара и отправлять информацию рекламного или справочного характера в ответ на введенную клиентом команду. Предназначен для самостоятельной работы клиентов (дилеров) и сотрудников вашей компании. Файл поставки предназначен для встраивания силами программиста 1С. Связь с чат ботом реализована через HTTP Запрос. При необходимости могу адаптировать и доработать бота для вашей конфигурации. Могу добавить функционал отправки произвольных сообщений клиентам, сотрудникам компании, служебной информации, опросов, верификацию клиентов по номеру телефона и т.д.

10 стартмани

16.03.2022    7318    28    Pira    32    

16

Проверка работы УТМ ЕГАИС и проверка работы обменов РИБ для Розница, редакция 2.3 с отправкой уведомлений в Телеграм

Мессенджеры и боты Обмен с ГосИС Платформа 1С v8.3 1С:Розница 2 Россия Управленческий учет Абонемент ($m)

Мониторинг работы обменов РИБ, работы УТМ на рабочих местах, проверка загрузки документов ЕГАИС для конфигурации Розница 2.3 с отправкой уведомлений в чат мессенджера Телеграм.

3 стартмани

16.03.2021    6188    5    user1056696    0    

2

FairBot - бот для торговли криптовалютами

Мессенджеры и боты Управляемые формы Конфигурации 1cv8 Финансовые услуги, инвестиции Управленческий учет Абонемент ($m)

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

10 стартмани

15.08.2018    18211    115    lettitbit    89    

27

Telegram. Пример реализации

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

Пример реализации основных возможностей работы с Telegram ботом из 1С. Файл с выгрузкой базы предназначен для ознакомления с основными возможностями. Файл с конфигурацией предназначен для использования программистами в качестве базы для настройки вашего чат бота.

5 стартмани

16.12.2021    6664    33    Pira    3    

19

Механизм контроля работы приложений на вашем ПК с помощью Telegram бота

Мессенджеры и боты Платформа 1С v8.3 Управляемые формы Абонемент ($m)

Данная разработка представляет собой конфигурацию для 1С 8.3, в которой реализованы механизмы работы с Telegram ботом и ОС Windows. А именно, выполняется отслеживание работы приложений на вашем ПК, с возможностью контроля их работы. При помощи Telegram можно смотреть список работающих приложений на вашем ПК, завершать работу, блокировать и разблокировать эти приложения.

5 стартмани

23.09.2021    4670    1    serg1234    0    

3

Бот для Telegram, показывающий остатки и заказы поставщикам из 1С: Управление торговлей

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

Разработка позволяет получать на смартфоне, через мессенджер Телеграм, необходимую информацию о товарах. Есть ли товар в свободном остатке и сколько штук? Есть ли товар в заказах поставщикам? Сколько штук заказано? Когда должен придти? Разработка будет полезна сотрудникам, у которых нет стационарного рабочего места, но которым нужно получать информацию из 1С (например, курьеры или монтажники на объекте).

1 стартмани

04.05.2021    9884    26    simuljakr    13    

14

Центр управления ботами

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

Небольшая конфигурация для управления telegram-ботами

26.08.2021    5402    0    nekiy    0    

13

Ретранслятор сообщений в WhatsApp без привязки к платным сервисам (нативное android приложение)

Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

По последним данным WhatsApp пользуется четверть населения планеты Земля. Однако на текущий момент у приложения нет бесплатного API для отправки сообщений (за исключением бизнес версии, которую непросто получить). Желающих предоставить платный доступ к этой возможности предостаточно, но цены стартуют от 100 $ в месяц. Данная разработка - нативное android приложение, которое использует ваш аккаунт WhatsApp, получает в формате json файл сообщений (телефон, текст, картинка) и рассылает их адресатам, в этот же файл записывается результат время и отправки. Это бесплатно, вы платите только за интернет трафик и за одноразовое приобретение данной обработки.

17.02.2020    12025    3    capitan    2    

9

Простой кармабот на 1С

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

Простой пример бота для telegram, написанного на платформе 1С. Что умеет бот? - полностью сохранять историю группы в ТГ - считать карму пользователям, отслеживая репосты с текстом + и -

3 стартмани

11.05.2021    3074    1    roman3d    2    

2

Уведомления 1С: Документооборот через Telegram

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

В данной публикации я хочу поделиться расширением, с помощью которого можно отключить создание задач ознакомления для бизнес-процессов "Согласование" и "Утверждение" в 1С: Документооборот. Изменен штамп электронной подписи. Также был добавлен модуль для уведомления пользователей через Telegram.

1 стартмани

27.04.2021    8407    36    dronicbest    6    

13

Slack бот на 1С

Мессенджеры и боты Управляемые формы Абонемент ($m)

Представляю небольшую разработку, позволяющую использовать 1С в качестве бэкенда для слакбота. В 1С нужно настроить Http-сервис и запустить небольшую утилиту.

1 стартмани

29.01.2017    15789    32    PaNick    6    

15