Болид (НВП) · программное обеспечение: пакет разработчика — модуль управления ИСО «Орион» с интерфейсом XML-RPC
Программный пакет управления ИСО «Орион» (2015) — XML-RPC-драйвер для сторонних программ: события, взятие/снятие, реле, СКУД
Пакет разработчика с драйвером «Управления ИСО Орион» (CoreOrion.exe): сторонняя программа по XML-RPC опрашивает приборы «Орион», получает события, управляет шлейфами, реле и доступом.
Модели семейства
| Назначение | внешний интерфейс управления охранно-пожарной системой, СКУД и пожаротушением на оборудовании «Болид» |
| Технология интерфейса | XML-RPC поверх TCP/IP; клиент — на любом языке программирования, где реализован XML-RPC |
| Операционная система модуля | MS Window 2000/XP/2003; клиентские программы при удалённой работе могут быть и не под Microsoft-совместимой ОС |
| Порт сервера по умолчанию | 8080 (меняется параметром XMLIPPORT в HKEY_LOCAL_MACHINE\SOFTWARE\BOLID\ORION_PRO\ORICORE) |
| Логин / пароль подписи клиента по умолчанию | ADMINISTRATOR / ORION (меняются параметрами LOGIN и PASSWORD в HKEY_LOCAL_MACHINE\SOFTWARE\BOLID\ORION_PRO\HWSERVER) |
| Скорость порта по умолчанию | 9600; тип преобразователя по умолчанию 0; приоритет порта по умолчанию 3; порт по умолчанию закрыт |
| Подключение приборов | напрямую по RS-485 — до 127 устройств на порт компьютера; через пульты С2000 — до 127 пультов на порт |
| Состав пакета | CoreOrion.exe, Settings.exe, RegParser.exe, rpcToaster.exe, hwMonitor.exe, xml-rpc-test.exe, AccessControlDemo.exe; исходники hwMonitor и rpcToaster для Borland Delphi 7; библиотеки XML-RPC для C++, .NET, Delphi |
| Документ | 274 страницы, дата создания 14.03.2013 |
Как это работает и подключается
- Все методы, кроме SetSubscribe, выполняются только для «подписанных» клиентов: при вызове в параметрах обязательно передаётся жетон безопасности (GUID), полученный при подписи; без него модуль отвечает ошибкой «Client has to be subscribed» (faultCode 113). Работу с модулем всегда начинают с SetSubscribe.
- Три типа вызовов: синхронный (выполняется немедленно, ответ в структуре RpcResult), асинхронный (команда ставится в очередь, ответ модуль присылает вызовом удалённого метода у клиента) и событие (модуль сам вызывает метод у клиента по параметрам подписи).
- Чтобы получать результаты асинхронных вызовов и события с RS-интерфейса, клиент должен поднять у себя XML-RPC-сервер и передать модулю его адрес и порт (IPSERVER, PORTSERVER) при подписи.
- Два протокола обмена с приборами: «напрямую» по RS-485 (TYPEPROTOCOL = 1; один порт компьютера — до 127 устройств; при отказе компьютера система теряет централизованное управление) и через пульт С2000 (TYPEPROTOCOL = 2; компьютер опрашивает только пульты, ветки RS-485 работают автономно от компьютера, но команды исполняются медленнее; до 127 пультов на порт).
- Тип преобразователя интерфейса (TYPECONVERTER): 0 — стандартный ПИ с управлением приёмопередатчиком по DTR/RTS (указывать для «ПИ-ГР»); 1 — преобразователь с автоматическим управлением приёмопередатчиком (для «С2000-ПИ»).
- Модуль можно зарегистрировать как Windows-службу: запустить CoreOrion.exe с ключом «–INSTALL»; для удаления — с ключом «-UNINSTALL».
- Список поддерживаемых приборов — в таблице 1 приложения А документа (коды типов от 0 до 46: С2000, Сигнал-20, Сигнал-20П, С2000-4, С2000-К, С2000-ИТ, С2000-КДЛ, С2000-БИ, С2000-КС, С2000-АСПТ, С2000-КПБ, С2000-2, Рупор, С2000-ПТ, С2000-ПЦН, УО-4С, Поток-3Н, Сигнал-20М, С2000-Adem, РИП-12 RS, Сигнал-10, РИП-12-2А RS, РИП-24-2А RS, С2000-КДЛ-2И, С2000-PGE, С2000-БКИ, Поток-БКИ, Рупор-200 и др.).
Монтаж
- Заводские значения (по умолчанию): серверный сокет модуля — порт 8080; логин ADMINISTRATOR, пароль ORION (для подписи клиента SetSubscribe); скорость порта 9600; приоритет порта 3; тип преобразователя 0; порт по умолчанию закрыт.
- Порт сервера меняется значением параметра XMLIPPORT в разделе реестра HKEY_LOCAL_MACHINE\SOFTWARE\BOLID\ORION_PRO\ORICORE; логин и пароль подписи — параметрами LOGIN и PASSWORD в разделе HKEY_LOCAL_MACHINE\SOFTWARE\BOLID\ORION_PRO\HWSERVER компьютера, где работает модуль.
- Если внешняя программа работает на одном компьютере с модулем, можно указывать как сетевой адрес компьютера, так и 127.0.0.1; при удалённом взаимодействии — только сетевой адрес.
- RegParser.exe регистрирует Microsoft XML Parser 4 SP 2, его файлы лежат в каталоге «..\DLLXML».
- Для интеграции в «Орион Про» в каталоге «..\Doc» пакета есть инструкция интеграции модуля в «Орион Про» (здесь не приведена).
Примеры
Клиент вызывает SetSubscribe и получает жетон безопасности, передаёт конфигурацию портов и приборов методом SetConfigurationHwSrv и получает события методом OnRsEvent и изменения состояний методом OnChangeStateElements — на свой XML-RPC-сервер, адрес и порт которого указал при подписи.
Методы ArmDisarmShleif (взятие/снятие, сброс тревог, отключение/включение автоматики, сброс пуска АСПТ, дистанционный пуск), ControlRelay (реле), ControlAccess (доступ) и RsCommand (трансляция команд на устройства).
Методы LoadConfData (LoadAccessData), SynchronizeKeys, SynchronizeOneKey, WriteConfToPKU, ReadDeviceKeyList, DeleteKeys; демонстрация — программа AccessControlDemo.exe из пакета.
Частые вопросы
Какой логин и пароль у модуля управления по умолчанию?
Для подписи клиента методом SetSubscribe: логин ADMINISTRATOR, пароль ORION. Меняются значениями LOGIN и PASSWORD в разделе реестра HKEY_LOCAL_MACHINE\SOFTWARE\BOLID\ORION_PRO\HWSERVER.
На каком порту слушает модуль?
По умолчанию на 8080; другой порт задаётся параметром XMLIPPORT в разделе реестра HKEY_LOCAL_MACHINE\SOFTWARE\BOLID\ORION_PRO\ORICORE.
Как запустить модуль как службу?
Запустить CoreOrion.exe с ключом «–INSTALL»; удалить службу — с ключом «-UNINSTALL».
Сколько приборов можно подключить к одному порту?
При обмене напрямую — до 127 устройств на порт компьютера; при обмене через пульты С2000 — до 127 пультов на порт.
Нюансы и грабли
- Без вызова SetSubscribe и жетона безопасности остальные методы не выполняются: модуль отвечает ошибкой «Client has to be subscribed» (faultCode 113).
- Если SetSubscribe вызван с параметром IPSERVER1 (адрес сервера клиента для ответов и событий), полученный в ответ жетон безопасности нельзя использовать для вызова методов модуля управления.
- Модуль и драйвер рассчитаны на MS Window 2000/XP/2003 — для современных ОС документ совместимость не заявляет.
- Скорость порта PORTBAUD в документе названа «байт/сек», по умолчанию 9600.
- Метод ControlAccess с командами 0–7 управляет доступом, ArmDisarmShleif с командами 0–8 — взятием/снятием и автоматикой; не путать номера команд двух методов.
- Таблица 1 приложения А документа 2015 года перечисляет типы приборов с кодами до 46.