Форумы  ·  Войти  · 

Тема: Открытие двери через внешнюю команду.

04.03.24 16:10   alexinc  (54/24.10.06)  

Добрый день. Стоит Комендант, SCM-NET2. Все работает отлично уже несколько лет.
Но есть потребность открывать дверь через другие программы (есть система распознавания изображений). Не подскажите, каким образом это можно осуществить? Через API, REST API, записи события в базу данных (если не сложно - имя таблицы не подскажите)?
Спасибо за хороший продукт.

[ #1 ]  04.03.24 16:39   Oleg [Editor]  KOMENDANT LAB  

Там много чего накручено, но по концепции “внутри одной системы”, воздействовать на точку доступа можно различными способами, даже на уровне АТС, но опять же, логирование таковой должно быть подключено к системе. Самое простое решение вашей задачи это открыть монитор событий, нажать открытие нужной вам точки доступа и далее поиском по ID этой точки доступа найти нужное в таблицах и просто сделать дубль. Важный момент: делаете первое нажатие - убеждаетесь, что сработало то, что вам нужно, после чего отключаете линк до этого контроллера и делаете повторное такое же событие. И вот зачем такие пляски. На память имена  задействованных таблиц не помню, но в целом, это работает так:  Монитор событий генерирует событие (нужная точка доступа, нужное действие),  система смотрит, что за точка доступа/контроллер (их может быть много), к какой службе связи относится (их может быть много), после чего помещает команду в таблицу службы связи с контроллерами  которую постоянно опрашивает  каждая служба связи с контролерами и когда видит событие(команду) для контроллера своей подсети, забирает это событие и отправляет в нужный контроллер. Т.е. если у вас контроллер будет в онлайне, ловить трудновато, потому как все происходит  быстро. Кроме того, события летят еще и в таблицу архива. Когда контроллеры в онлайне и система находится в ожидании, ничего не происходит, таблица событий для служб связи с контроллерами естественно пустая, если убрать линк до контроллеров и начать давать им команды, то таблица начнет наполняться, до тех пор пока не появится связь. Думаю общий смысл понятен.     

[ #2 ]  05.03.24 17:11   alexinc  (54/24.10.06)  

Спасибо. С этим вроде разобрались.
Еще вопрос - а есть ли в коменданте возможно выполнения своих скриптов, чтобы реализовать схему передачи какого-то события. Например, вошел человек - и передать во внешнюю программу (CRM,ERP) какие-то данные о событии(Имя, карту, время и т.д.)?

[ #3 ]  05.03.24 17:54   Oleg [Editor]  KOMENDANT LAB  

Это все та же история, что и первый вопрос. Реакции на события есть, но опять же в рамках системы. Специального с отправкой “во вне” ничего нет, потому как была концепция одной системы, да и что бы это могло быть? Потому есть универсальное стандартное решение - сам MySQL,  хотите на уровне базы, хотите вообще Башем дергайте, все открыто. Так все и делают, это доступно и понимаемо для большинства. Самый лучший универсальный API это SQL запрос из любой системы, или можете добавить процедуру в MySQL под ваш сценарий. Нужно сообщать о всех входящих в помещения куда-то еще? Не проблема, ставим на мониторинг таблицу архива событий и отправляем куда надо. Мы бы может и сделали бы подобное, но под какой стандарт? Ничего универсальнее SQL запроса на сегодняшний день нет.

Komendant.pro
 ©1999-2024  Инженерная лаборатория "Комендантъ"