Пишем Jabber-бот

20.03.12

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

В статье рассмотрен один из способов создания механизма рассылки оповещений посредством Jabber-уведомлений.

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

Наименование Файл Версия Размер
ServerJabberBot.zip
.zip 601,61Kb
39
.zip 601,61Kb 39 Скачать

Хочу предложить один из вариантов интеграции jabber-уведомлений в систему - разработать jabber-бот, задачей которого будет следить за каталогом в файловой системе и, при появлении файлов, отсылать их содержимое адресату, указанному в файле.

Проект, который Вы можете скачать во вложении (Visual Studio 2010), основан на библиотеке agsXMPP — программной библиотеке, с помощью которой можно реализовать как клиентскую, так и серверную часть XMPP. В настоящий момент agsXMPP считается устаревшей и ей на смену была разработана MatriX. Но она в отличие от agsXMPP распространяется только на коммерческих условиях.Двойная лицензия позволяет использовать её в проектах с закрытым исходным кодом.

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

 

Обратите внимание, логин-пароль jabber-бота и другие параметры подключения прописаны в коде приложения - опять же, в рамках моих нужд.

Настройка путей

В коде прописан путь C:\jabber, в который программа должна иметь права на чтение и удаление файлов. 

Для пользователей эта папка прописывается как сетевая (возможно скрытой, через $), с доступом на создание файлов.

 

Формат файла

Текстовый файл, расширение .txt, текст в UTF-8

1-я строка: адресат в jabber (пример: admin@jabber.ru)

2-я строка и последующие: текст сообщения.

 

Пример использования


//Адресат - спр. "Пользователи"

Процедура УведомлениеВЧат(Адресат, Текст) Экспорт
    попытка
       
т = новый ТекстовыйДокумент;
       
// внимание, нижеследующий блок нужно заменить на свой
        // для переданного пользователя нужно получить логин
        // например, свойство пользователя
        jabber  ПолучитьJabberАдрес(Адресат);


       
т.ДобавитьСтроку(jabber + "@192.168.0.3");  // адресат
       
Если ТипЗнч(Текст) = Тип("СписокЗначений") тогда
            Для каждого
тмп из Текст Цикл
               
т.ДобавитьСтроку(тмп);
            КонецЦикла;
        Иначе
           
т.ДобавитьСтроку(Строка(Адресат) + ", " + Текст);
        КонецЕсли;

       
т.Вывод = истина;
        // также не забудьте правильно указать каталог
        т.Записать("\\SERVER\JABBER\"+Строка(новый УникальныйИдентификатор()) + ".txt", КодировкаТекста.UTF8);

    исключение
       
// обработка нехватки прав на файловый вывод и т.п.
   
конецПопытки;
КонецПроцедуры

Использование в коде в исключениях:

Попытка

    ... куча кода ...
Исключение
   
// сразу узнаем!!!
   
_СистемныеОповещения.УведомлениеВЧат(Справочники.Пользователи.НайтиПоНаименованию("Админ"), ОписаниеОшибки());
КонецПопытки

Одно из удобных применений - это использование в длительных регламентных заданиях, когда хочется узнать статус текущего процесса. Для этого необходимо в код разместить периодический вызов jabber-оповещения, например: "Перепровожу УУУ док. из ХХХ". Также, т.к. программа вынесена из 1С, ее возможно использовать в других приложениях, способных сформировать текстовый файл в указанном формате.



См. также

SALE! 25%

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

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

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

15000 11250 руб.

18.06.2021    58672    291    255    

345

SALE! 25%

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

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

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

13200 9900 руб.

27.12.2021    33275    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    27788    25    48    

57

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

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

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

7788 руб.

07.04.2014    83616    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. klel 23.03.12 21:34 Сейчас в теме
Прикольная штучка спамить наверно можно?
2. Dimasik2007 430 23.03.12 22:38 Сейчас в теме
Ну в пределах контакт-листа робота можно. :)
3. пользователь 08.06.12 14:34
Сообщение было скрыто модератором.
...
4. пользователь 07.11.12 13:02
Сообщение было скрыто модератором.
...
5. EvgeniuXP 17.02.15 19:19 Сейчас в теме
выкладывал файлы на диск C:\Jabber, но файлы не берутся почему-то ботом, в итоге - не работает ничего... подключение происходит, судя по коду VS2010, исключение не вызывается.... сообщение первое выводит SEND to адрес джаб-сервера и всё... так одна строка и висит... пробовал джаббер, миранду и 1С на одном компе
6. EvgeniuXP 17.02.15 19:22 Сейчас в теме
файлы создавал txt, первую строку имя_пользователя@адрес джаббера, вторая строка - текст... и другие выкладывал файлы, типа имя_пользователя@имя.домена - файлы не берутся и не удаляются и ничего не отправляется... бот в миранде должен быть в онлайне? - у меня он в онлайн не выходил... но и ошибки при подключении не было в VS2013.
7. EvgeniuXP 20.02.15 19:24 Сейчас в теме
8. Dimasik2007 430 20.02.15 23:08 Сейчас в теме
Прекрасно работает с версией Openfire 3.8.2, года три уже как. Правда, OF не обновлял, может на новых и не работает.
Бот всегда должен быть в онлайне. За счет этого осуществляется быстрая отправка множества сообщений адресатам.
Прикрепленные файлы:
9. EvgeniuXP 24.02.15 22:46 Сейчас в теме
(8) не получается его завести... уже изучил питон (xmpp) и написал почти уже свой бот на нем - коннект, прием от бота (pywin32) и отправка уже получилась (и тоже через службу залепил).
Оставьте свое сообщение