Jabber - бот как пример работы с сокетами на 1С через v7CLR.dll
База данных - Инструменты администратора БД
Файлы
ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний
Оформите подписку на компанию для решения рабочих задач
Оформить подписку и скачать решение со скидкойВы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
Библиотека v7CLR.dll позволяет использовать в 1С объекты .NET, в числе который есть System.Net.Sockets.TcpClient.
В принципе v7CLR является бесплатной альтернативой Elisy .Net Bridge
В обработке реализованы несколько функций, позволяющих подключиться к серверу, отправить и получить текстовую строку.
Все это бывает полезно для организации сетевого интерфейса с другими системами, например с платежным терминалом, имеющим свой собственный протокол.
Для создания Jabber - клиента (бота) конечно проще использовать готовые библиотеки например библиотеку Душелова, но бот здесь сделан только в качестве примера и очень кривой.
Технические подробности:
- Для работы обработка требует установленных .NET, v7CLR.dll
- Имя Jabber-сервера, порт, имя пользователя, пароль пользователя и UID того, кому отправлять сообщеня по умолчанию нужно указать в конце модуля обработки.
- Здесь реализован небезопасный способ авторизации на сервере, если Ваш сервер использует что-то другое - придется модифицировать процедуру Авторизоваться(). Как это делается я не разбирался, но посмотреть можно в соответствующей статье.
- Обработка сделана исключительно как проба сил и дорабатыватсья не будет.
- Чтение ответа сервера реализовано по таймеру, что очень неоптимально. Лучше генерить события.
Описание команд бота:
1. #time Возвращает текущее время базы
2. #date Возвращает текущую дату базы
3. #dbname Возвращает имя базы в которой запущен бот
4. #send,{имя пользователя JABBER},{текст сообщения} отправляет сообщение пользователю. Пример #send,admin2,Hello world!
5. #help выводит подсказку по командам
upd. 31.03.2010
- Добавлено заполнение списка контактов.
Вступайте в нашу телеграмм-группу Инфостарт