1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/zqw-MultiServicer

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 7 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 02.12.2024 11:00 f22e62d

МультиСервер состоит из следующих программ:

  1. Универсальный сервер wefeelServer.exe: это основная программа, которую можно запустить напрямую или как службу, а также настроить как службу с помощью файла WefeelServer.bat.
  2. Универсальный плагин для отправки SMS-сообщений SMSPlugin.dll: отвечает за отправку и получение SMS-сообщений, работу с универсальной базой данных и последовательной связью.
  3. Плагин для отправки SMS-сообщений через последовательную связь от компании «Тодао» (TDOA) TDOA_SMS.dll: отправляет и получает SMS-сообщения, работает с базой данных TDOA и обеспечивает последовательную связь. Может отправлять информацию о мониторинге через порт 7731.
  4. Автоматический плагин мониторинга для TDOA_SMS.dll MonitorAutoPlugin.dll: автоматически загружается wefeelServer.exe и может быть вызван из главного меню wefeelServer. Также позволяет отслеживать информацию от TDOA_SMS.dll.

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

Основная программа — универсальный сервер wefeelServer.exe

Использование: — Как служба Windows; — Непосредственно как программа.

Включает в себя интерфейс управления службой. Конфигурация программы задаётся в файле WefeelServer.ini, который определяет загружаемые плагины. Сама по себе программа не имеет конкретных функций, они реализуются двумя типами плагинов:

  • Тип A:* плагины, настраиваемые через файл WefeelServer.ini. Максимальное количество — 20, запускаются автоматически.
  • Тип B:* автоматически обнаруживаемые плагины, которые добавляются в меню после обнаружения и требуют ручного запуска.

Для управления службой используется команда WefeelServer /setup. Она позволяет выполнять установку, удаление, запуск и остановку службы.

При запуске без параметров программа работает как обычное приложение Windows.

Область применения wefeelServer не ограничивается только отправкой SMS-сообщений.

Плагины типа A — серверные плагины

Требования к плагинам типа A: — Должны реализовывать функцию Start(), чтобы считаться совместимыми с требованиями. Остальные функции являются опциональными: — Stop(): останавливает работу плагина; — Setup(): выполняет настройку плагина; — About(): отображает версию плагина; — IsRun(): проверяет, запущен ли плагин; — Show(): показывает главное окно плагина.

Пример плагина типа A — SMSPlugin.dll, который используется для отправки SMS-сообщений и работает как шлюз. Его главное окно периодически опрашивает состояние и управляет устройствами отправки SMS-сообщений с помощью библиотеки WefeelSMS.dll. Параметры конфигурации совпадают с именем файла DLL. Один и тот же плагин можно добавить в файл WefeelServer.ini несколько раз для управления несколькими устройствами.

Плагин использует библиотеку WefeelSMS.dll для работы с устройствами отправки SMS-сообщений. Он предоставляет функции отправки и получения SMS-сообщений, автоматической отправки длинных сообщений и пересылки сообщений. Поскольку при использовании нескольких экземпляров SMSPlugin.dll библиотека WefeelSMS.dll загружается только один раз, рекомендуется размещать файлы DLL и WefeelSMS.dll в разных папках при работе с несколькими экземплярами SMSPlugin.dll (например, для отправки сообщений через разные сети).

Плагины типа B — автоматические плагины

Находятся в папке «Плагины». Правила написания описаны в AutoPlugin.pas. Пример кода можно найти в программе MonitorAutoPlugin.exe.

Опыт использования:

  • Нельзя использовать одно и то же соединение ADO для основной программы и динамической библиотеки. Необходимо создавать отдельные соединения.
  • Инициализация элементов управления в формах отличается для исполняемых файлов и динамических библиотек. В динамических библиотеках перед использованием элемента управления Memo в главном окне необходимо предварительно добавить строку в Memo. В исполняемых файлах такой проблемы нет.
  • Динамические библиотеки, использующие ADO, должны вызывать CoInitialize(nil) и CoUninitialize, особенно если они не имеют форм.

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/zqw-MultiServicer.git
git@api.gitlife.ru:oschina-mirror/zqw-MultiServicer.git
oschina-mirror
zqw-MultiServicer
zqw-MultiServicer
master