Перейти в хранилище документации
Обратиться в техническую поддержку![]()
Если при срабатывании датчика (объект Луч) необходимо к тревожному сообщению прикрепить jpegJPEG-кадр или видеофрагмент, следует помнить, что это осуществимо только после того, как текущий файл архива будет записан на диск. Чтобы сократить время ожидания (параметр параметр Задержка (сек.), см. раздел Настройка датчиков) и обеспечить гарантированную запись по камере, можно на вкладке Программирование в ПК Интеллект создать объект Программаобъект Скрипт.
Данные программы написаны для камеры с идентификатором, равным 1, и для объекта Луч с идентификатором, также равным 1. Благодаря данным программам значение параметра Задержка можно установить равным 7 секундам.
| Note | ||
|---|---|---|
| ||
Для получения нескольких видеофрагментов в скрипте может быть указано несколько повторяющихся команд "REC" и "REC_STOP". Если используется откат "rollback" и время предзаписи в настройках объекта Камера больше или равно , чем время времени между последующими командами "REC_STOP" и "REC", то данный видеофрагмент будет объединен со следующим видеофрагментом. |
Вариант 1. Камера снята с охраны:
| Code Block |
|---|
OnEvent(if (Event.SourceType=="GRAY", && Event.SourceId=="1", && Event.Action=="ALARM") { [ var state if(= !CheckStateGetObjectState("CAM","1",); if (state.indexOf("DETACHED") == -1) { { DoReactDoReactStr("CAM","1","REC","rollback<1>"); Wait(5Sleep(5000); DoReactDoReactStr("CAM","1","REC_STOP","priority<2>"); } ] } |
Данный фрагмент создаётся в отдельном скрипте:
| Code Block |
|---|
if (Event.SourceType=="GRAY" && Event.SourceId=="1" && Event.Action== OnEvent("GRAY","1","ALARM") { [ WaitSleep(22000); DoReactDoReactStr("GRAY","1","CONFIRM",""); WaitSleep(22000); DoReactDoReactStr("GRAY","1","ARM",""); ] } |
Вариант 2. Камера на охране:
| Code Block |
|---|
OnEvent(if (Event.SourceType=="GRAY", && Event.SourceId=="1", && Event.Action=="ALARM") { [ var state if(= !CheckStateGetObjectState("CAM","1",); if (state.indexOf("DETACHED") == -1) { { DoReactDoReactStr("CAM","1","DISARM",""); Sleep(50); DoReactDoReactStr("CAM","1","REC","rollback<1>"); Wait(5Sleep(5000); DoReactDoReactStr("CAM","1","REC_STOP","priority<2>"); Sleep(2050); // Время предзаписи в настройке камеры = 2 сек. DoReactDoReactStr("CAM","1","ARM",""); } ] } OnEvent("GRAY","1", |
Данный фрагмент создаётся в отдельном скрипте:
| Code Block |
|---|
if (Event.SourceType=="GRAY" && Event.SourceId=="1" && Event.Action=="ALARM") { [ WaitSleep(22000); DoReactDoReactStr("GRAY","1","CONFIRM",""); WaitSleep(22000); DoReactDoReactStr("GRAY","1","ARM",""); ] } |
Вариант 3. Режим постоянной записи:
| Code Block |
|---|
OnEvent(if (Event.SourceType=="GRAY", && Event.SourceId=="1", && Event.Action=="ALARM") { [ var state if(= !CheckStateGetObjectState("CAM","1",); if (state.indexOf("DETACHED") == -1) { { Wait(5Sleep(5000); // Определяет, через какое время необходимо приостановить запись, чтобы получить требуемый ролик или необходимое число кадров DoReactDoReactStr("CAM","1","REC_STOP","priority<2>"); Sleep(2050); // Время предзаписи в настройках объекта Камера = 2 сек. DoReactDoReactStr("CAM","1","REC","rollback<1>"); // Запустить запись с откатом в 2 сек (на время предзаписи). Таким образом данные в архиве не теряются } ] } OnEvent("GRAY","1", |
Данный фрагмент создаётся в отдельном скрипте:
| Code Block |
|---|
if (Event.SourceType=="GRAY" && Event.SourceId=="1" && Event.Action=="ALARM") { [ WaitSleep(22000); DoReactDoReactStr("GRAY","1","CONFIRM",""); WaitSleep(22000); DoReactDoReactStr("GRAY","1","ARM",""); ] } |