- Created by Александр Акимов, last modified by Антон Бутвин on Jul 20, 2023
Основные функции
Внимание. Скрипт запускается на сервере.
Скрипт предназначен для реагирования на события распознавания номера, а также добавляет обход ошибок при распознавании номера для встроенных списков и списков в текстовых файлах.
При распознавании номера при помощи скрипта мы можем:
- Воспроизвести простые реакции - вывести текст, проиграть звук, сохранить скриншот
- Открыть шлагбаум по замыканию тревожного входа
- Операции со СКУД
- Отправка e-mail сообщений со скриншотом
- Вывод на отображение камер с тревогой
- Открытие архива на моменте тревоги
Отсортировать тревоги по:
- Направлению движения
- Спискам (Белый, Черный, Информативный)
Так же в скрипт встроена возможность вывода нескольких камер при одновременном распознавании номера и расписание работы.
Скрипт может работать в связке с Alarm Monitor для получения уведомлений.
Обращаем ваше внимание на то, что имена объектов должны быть уникальными.
Установка
Скрипт необходимо добавить в разделе Автоматизация->Новый скрипт→Загрузить пример->Из файла.
После загрузки скрипта необходимо нажать на кнопку «Сохранить, запустить», снять галочку «Включить скрипт» и выполнить его настройку.
Настройка скрипта
- Выбрать каналы на которых происходит распознавание автомобильных номеров.
- Выбрать список на который будет дальнейшая реакция или "любой номер".
- Если нужна реакция при частично распознанном номере (без визуального шаблона), то необходимо выбирать вариант настройки списков "не распознан" и отметить чекбокс "Реагировать на частично распознанный номер (LPR5), в связке с 'не распознан'".
- Указать имя списка (несколько через запятую) - Например номер находится в трех информационных списках, а реагировать нужно только на список с именем Test1. Если поле оставить пустым фильтр по имени не применяется.
- Выбрать задержку перед повторным распознаванием номера
- Выбрать направление движения по кадру (машина движется на камеру - Вниз, от камеры - Вверх)
- Если используется распознаватель номера на камере (аппаратный детектор) событие от которого не содержит направление движения, то необходимо отметить чекбокс "Используется детектор HW"
Если необходимо, чтобы скрипт искал похожий номер при неполном распознавании номера/ распознавании с ошибкой, то необходимо отметить "Включить погрешность распознания номера".
Теперь работа с погрешностью происходит на уровне базового ПО.
В разделе "Реакции по событиям" выбирается тот тип действий, который необходимо произвести при распознавании номера из заданного списка.
Для некоторых типов реакций необходимо произвести дополнительные настройки в разделах, которые находятся ниже.
В разделе "Дополнительно" задаются вспомогательные параметры.
Коррекция времени скриншота (до события). Иногда необходимо сделать скриншот за некоторое время до наступления события, например при событии "Саботаж". Важно понимать, что такой скриншоты может быть сделан только из архивной записи. Поэтому если архив в этот момент не писался, то будет получен скриншот ближайшего момента, за который была сделана запись.
Скриншот с потока камеры. Если архив не пишется на диски устройства, но необходимо сохранять скриншоты событий, то следует выбрать данный пункт.
Скриншоты с фигурами. Скриншот с фигурами может быть получен только если архив пишется на диски сервера. При использовании скриншота с потока камеры эта функция не работает.
Время хранения скриншотов. Если в разделе "Реакции по событиям" выбрано "Сохранить снимок локально", то скрипт сохраняет скриншоты в каталог скриншотов. Если этот параметр больше нуля, то скрипт будет удалять скриншоты время жизни которых больше заданного параметра.
Расписание для работы скрипта. Дополнительный параметр, если указано расписание, то скрипт будет отрабатывать, когда заданное расписание находится в указанной зоне.
Операции с тревожными выходами
Возможно выполнить замыкание, размыкание или последовательность этих действий с тревожными выходами. Тревожных выходов может быть задано несколько.
Задержка перед последующей операцией с тревожным выходом это то время, которое проходит между двумя последовательными действиями. Например, если выбран тип работы замкнуть-разомкнуть и параметр задержки составляет 5 секунд, то при наступлении события тревожный выход замкнется и через 5 секунд разомкнётся.
Алгоритм работы шлагбаума с очередью это то, как будет отрабатывать скрипт когда авто идут один за другим. Подробнее как это работает приведено в примерах ниже.
Пример 1. type_1
Заданные параметры: алгоритм работы шлагбаума с очередью type_1, тип работы 'замкнуть-разомкнуть', задержка перед последующей операцией с тревожным выходом 10 сек.
12:00:00 Подъезжает авто №1 номер которого в заданном списке. Тревожный выход замыкается, шлагбаум открывается. 12:00:05 Через 5 секунд, следом за авто №1 подъезжает авто №2 номер которого так же в заданном списке. Время открытого состояния шлагбаума увеличивается на 10 секунд.
12:00:20 Шлагбаум закрывается
Пример 2. type_2
Заданные параметры: алгоритм работы шлагбаума с очередью type_2, тип работы 'замкнуть-разомкнуть', задержка перед последующей операцией с тревожным выходом 10 сек.
12:00:00 Подъезжает авто №1 номер которого в заданном списке. Тревожный выход замыкается, шлагбаум открывается.
12:00:05 Через 5 секунд, следом за авто №1 подъезжает авто №2 номер которого так же в заданном списке.
12.00:10 Тревожный вход размыкается, а затем замыкается, т.е. шлагбаум закрывается и открывается вновь, чтобы пропустить авто №2
12:00:20 Шлагбаум закрывается
Таким образом различие следующее при выбранном типе type_1 время открытого шлагбаума продлевается , а при type_2 шлагбаум открывается-закрывается для каждого автомобиля в очереди.
Пример 3. type_3
Принцип работы с тревожным выходом похож на type_2: шлагбаум открывается-закрывается для каждой машины.
Отличие в следующем.
Можно регулировать не только время открытого состояния шлагбаума но время задержки перед каждой итерацией открыто/ закрыто.
Например, к шлагбауму КПП подъехало три машины. Открытое состояние шлагбаума для каждого авто установлено в 7 сек. А параметр 'Таймаут перед обработкой следующего авто type_3' - 10 секунд.
Для первого авто шлагбаум откроется на 7 секунд, затем шлагбаум закроется на 10 сек и вновь откроется для второго авто. Причем, если проехало три авто и за ними подъехало четвертое, то для него шлагбаум также откроется не раньше, чем через 10 секунд с момента, как шлагбаум закрылся после третьего авто.
Отправка уведомлений/ снимков на e-mail
Если необходимо отправить простое текстовое уведомление на электронную почту, то следует выбрать "Отправить уведомление на e-mail". Если необходимо такое уведомление с прикрепленным скриншотом, то необходимо выбрать "Отправить снимок на e-mail"
В разделе "Настройка e-mail" необходимо указать предварительно созданную учетную запись отправителя и получателей через запятую без пробелов.
Для работы с данным пунктом нужно создать учетную запись E-mail.
Отправка снимков в Telegram
В разделе "Telegram" необходимо указатьTelegram ID всех пользователей, кому хотите предоставить доступ к серверу с помощью бота.
Для того, чтобы узнать id напишите боту @trassirbot команду /tbot и в ответ вы получите сообщение, где будет указан Ваш id:
Отправка снимков в WhatsApp
Чтобы отправлять скриншоты в личные сообщения и в группы, следует зарегистрировать учетную запись в https://green-api.com/ (учетная запись покупается на стороннем ресурсе, скрипт просто использует данные для отправки с Вашего аккаунта).
В разделе "Реакция по событиям", следует выбрать "Снимок на WhatsApp", а в разделе "WhatsApp", необходимо указать данные: идентификатор экземпляра (в личном кабинете), API Токен (в личном кабинете), и получателей (номера вводятся без +, также рекомендуется прописывать сначала имена групп, потом номера пользователей).
Результат:
Отправка снимков в Discord
В разделе "Реакция по событиям", следует выбрать "Снимок в Discord", а в разделе "Discord", необходимо указать данные: вебхуки каналов (подробнее о создании вебхуков каналов в Дискорде: https://support.discord.com/hc/en-us/articles/228383668-Intro-to-Webhooks).
Результат:
Вывод канала на отображение
Данный тип реакции используется для отображения каналов на которых произошло нужное событие.
В разделе "Тревожный монитор" необходимо указать имя тревожного шаблона. Причем шаблон с таким именем должен быть предварительно создан. Раскладка данного шаблона не имеет значения, т.к. скрипт использует стандартные раскладки в зависимости от количества отображаемых каналов. Если необходимо, чтобы после того, как произошло отображение тревожных каналов скрипт переключался на какой-либо базовый шаблон, нужно указать имя данного шаблона в поле "Базовый шаблон".
При выборе типа действия "Открыть момент в архиве" после наступления события через \~5 сек открывается проигрывание архивного видео момента события. При такой настройке на тревожном мониторе может выводиться не более одного канала. Если в течение 5 секунд видео поток не успел записаться на жесткий диск, то проигрывание не начнётся.
Отображение имени Списка / Номера ТС / Комментария
Данные типы реакции предназначен для отображения имени списка в котором находится распознанный номер / сам распознанный номер / комментарий к номеру.
Цвет шрифта имени списка необходимо задавать в формате hex. Возможно задать разный цвет шрифта для белого, черного и информационного списков.
Перед использованием данной реакции, на каналах с которыми будет работать скрипт необходимо включить отображение фигур и субтитров из скриптов. Более подробно по данной ссылке
Отображение имени списка происходит только в том случае, если в настройках скрипта задан цвет шрифта для данного списка. К примеру:
- Скрипт работает только с номерами из белого списка и цвет для данного списка не задан - в таком случае имя списка не отобразится.
- Скрипт работает с любыми списками, но цвет шрифта задан только для черного и информационного списка - в таком случае, имена белых списков отображаться не будут.
Параметр "Время отображения(сек)" - отвечает за время, в течении которого будет отображаться имя списка после распознавания номера, задается в секундах. Данное поле может принимать значение 0, в таком случае имя списка будет отображаться до следующего события(в случае если номер найден в списке и скрипт работает с данным типом списков), либо до перезагрузки скрипта.
Отображение номера авто
В некоторых случаях интерфейса AutoTrassir недостаточно и требуется отображать распознанный номер на канале.
Для этого реализован параметр "Отображать номер авто". Как и в случае с параметром выше (Отображение имени списка), перед использованием данной реакции, на каналах с которыми будет работать скрипт необходимо включить отображение фигур и субтитров из скриптов.
При распознавании номера он будет выводиться непосредственно на канале, с теми же координатами, которые указаны для отображения имени списка, даже если само имя списка не выводится. Если требуется выводить и имя списка и номер, вывод осуществляется в строку.
Есть возможность выводить номер в том цвете, который закреплен за списком этого номера, или же задать свой цвет для отображения (параметр "Нестандартный цвет").
Отображать номер можно как при работе с одним из типов списка, так и с любым номером. Если номер не включен ни в один список, а так же не задан нестандартный цвет, он получит настройки информационного списка для отображения. Если номер не будет распознан, выведется сообщение о том что номер не был распознан.
Настройка подключения к базе данных
Если номера хранятся во встроенных списках (т.е. в БД), то никаких дополнительных значений параметров вводить не нужно, скрипт автоматически получит доступ к БД, которую использует Trassir.
<При наличии нескольких серверов можно использовать БД одного сервера, при условии, что в разделе База Данных прописан доступ к центральной БД.