Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

От объекта MONITOR поступают события, представленные в таблице. Запуск процедур происходит при возникновении соответствующего события. Формат процедуры событий для объекта Монитор:

Code Block
OnEvent("MONITOR","_id_","_событие_")

Описание событий от объекта MONITOR:

СобытиеОписание событияКомментарий

STARTED_AVI_EXPORT

Начало экспорта видео

Среди прочих, событие содержит следующие параметры:

  • slave_id<> – оператор, запустивший экспорт
.
param1<> –
  • param1<> – номер камеры, по которой осуществляется экспорт, а также дата и время начала периода экспорта. Параметр принимает значение вида "<№записи> Камера <id> (дд-мм-гг чч:мм:сс)", например param1<01 Камера 1 (05-10-17 10:23:21)>
.
time<> –
  • time<> – время начала экспорта
.

FINISHED_AVI_EXPORT

Конец экспорта видео

Среди прочих, событие содержит следующие параметры:

  • slave_id<> – оператор, запустивший экспорт
.
param1<> –
  • param1<> – номер камеры, по которой осуществляется экспорт, а также дата и время окончания периода экспорта. Параметр принимает значение вида "<№записи> Камера <id> (дд-мм-гг чч:мм:сс)", например param1<01 Камера 1 (05-10-17 10:40:21)>
.
time<> –
  • time<> – время окончания экспорта
.
  • param<0> – дополнительная информация, отображаемая в соответствующем столбце в Протоколе событий, в формате: "ИмяКомпьютера;ПериодЭкспорта;ИмяПользователя;ИдентификаторПользователя", например, param0<LOCALHOST;04-06-18 16:50:55_04-06-18 16:55:55;;1>
AVI_EXPORT_RESULTРезультат экспорта видеоСобытие имеет те же параметры, что и START_AVI_EXPORT, с добавлением параметра error_result<>, принимающего одно из следующих значений:

0 - экспорт успешно выполнен
1 - неизвестно
2 - задача занята
3 - не готово
4 - неверный интервал
5 - ошибка файла

PLAY_STARTНачало проигрывания фрагмента архива
PLAY_STOPКонец проигрывания фрагмента архива
INTERFACE_MANIPULATIONИзменение визуализацииparam<0> – дополнительная информация, отображаемая в соответствующем столбце в Протоколе событий, содержит идентификатор перемещенной по раскладке камеры.
LAYOUT_DELУдаление раскладкиparam<0> – дополнительная информация, отображаемая в соответствующем столбце в Протоколе событий, содержит имя удаленной раскладки.
LAYOUT_ADDДобавление раскладкиparam<0> – дополнительная информация, отображаемая в соответствующем столбце в Протоколе событий, содержит имя добавленной раскладки.
LAYOUT_ACTIVATEСмена активной раскладкиparam<0> – дополнительная информация, отображаемая в соответствующем столбце в Протоколе событий, содержит имя активированной раскладки.
REPLACE_CAMСмена положения камеры

param<0> – дополнительная информация, отображаемая в соответствующем столбце в Протоколе событий, в формате:

<Имя камеры 1> → <Имя камеры 2>

ACTIVATE_CAMАктивация камерыauto_switch<> – указывает, было ли включено автоматическое листание во время активации камеры. Можно использовать для отключения автоматического листания при активации окна видеонаблюдения.
CAM_EXPANDУвеличение Окна видеонаблюдения на весь Монитор

Событие генерируется только если установлены следующие ключи реестра (см. Справочник ключей реестра):

  • MaximizeCameraOnDblClk=1
  • MinimizeCameraOnDblClk=1

Параметры события:

  • param0<> – идентификатор камеры
.
  • user_id<> – идентификатор пользователя, выполнившего действие
CAM_COLLAPSEУменьшение Окна видеонаблюдения

Событие генерируется только если установлены следующие ключи реестра (см. Справочник ключей реестра):

  • MaximizeCameraOnDblClk=1
  • MinimizeCameraOnDblClk=1

Параметры события:

  • param0<> – идентификатор камеры
.
  • user_id<> – идентификатор пользователя, выполнившего действие

Формат оператора для действий с монитором:

Code Block
DoReact("MONITOR","_id_","_команда_"[,"_параметры_"]);

Список команд и параметров для объекта MONITOR представлен в таблице.:

Команда – описание команды

Параметры

Описание параметров

"REMOVE"  – удаляет камеру с монитора.

cam<>

ID камеры в дереве настроек, которую необходимо удалить с монитора.

show<>

Необязательный параметр. Возможные значения:

  • 0 – не обновлять раскладку в Мониторе после удаления камеры. Может оставаться пустое пространство, не занятое Окнами видеонаблюдения
.
  • 1 – обновлять раскладку в Мониторе после удаления камеры, чтобы минимизировать пустое пространство
.

"REMOVE_ALL"  – удаляет все камеры с монитора.

-

-

"STOP_VIDEO"  – останавливает видеопоток камеры.

cam<>

ID камеры в дереве настроек, видеопоток от которой необходимо остановить.

"REPLACE"  – удаляет все камеры с монитора и вызывает указанную камеру.

slave_id<>

Имя компьютера, которому принадлежит монитор, в скрипте можно подставить owner.

cam<>

ID камеры в дереве настроек, которую необходимо вывести на монитор.

name<>

Название камеры, которое будет отображаться в левом нижнем углу.

audio_type<>

-

audio_id<>

-

arch_id<>

-

control<>

0 только просмотр архива,

1 – также возможно и управление (постановка/снятие с охраны, запись).

"ADD_SHOW" – добавляет камеры на монитор.

Примечание. См. также PLACE_CAM_IN_LAYOUT_CELL

cam<>

ID камеры в дереве настроек, которую необходимо вывести на монитор.

name<>

Имя объекта, которое будет отображаться в левом нижнем углу.

arch_id<>

-

control<>

0 только просмотр архива,

1 – также возможно и управление (постановка/снятие с охраны, запись).

gate_id<>Идентификатор видеошлюза, через который необходимо получать видео для отображения. Соответствующая камера должна быть добавлена и настроена в данном видеошлюзе – см. Выбор и настройка видеокамер для модуля Видеошлюз
slave_id<>Идентификатор компьютера, к которому применяется команда.

"ACTIVATE_CAM"  – делает активной камеру.

cam<>

ID камеры в дереве настроек, которую необходимо сделать активной.

"ARCH_FRAME_TIME"  – поиск видеоархива по дате и времени.

cam<>

-

date<>

-

time<>

-

mode<>

Может принимать следующие значения:

0 –
  • 0 – видеошлюз, если задан (если не задан, то видеосервер)
.
1 –
  • 1 – видеосервер
.
2 –
  • 2 – долговременный архив
.
  • 10 + id объекта Внешнее хранилищена панели настройки объекта Монитор (в общем случае 11)
-
  • внешнее хранилище

"SETUP" – устанавливает параметры монитора.

no_update<>

-

overlay<>

Включение режима ускорения отображения.

x<>

Координата левого верхнего угла (0 – 100).

y<>

Координата левого верхнего угла (0 – 100).

w<>

Размер по горизонтали (0 – 100).

h<>

Размер по вертикали (0 – 100).

max_cams<>

Максимально допустимое число камер на мониторе.

min_cams<>

Минимально допустимое число камер на мониторе.

compress<>

-

panel<>

Показать панель управления (0 – выключена, 1 – включена).

panel_type<>

-

s<>

-

layout<>

-

gate<>

-

map_id<>

-

enable<>

-

topmost<>

1 - показывать экран поверх всех остальных окон.

type<>

Тип объекта «Монитор».

allow_move<>

Разрешить перемещение окна.

arch_id<>

Идентификатор архива.

cycle<>

Задержка при автоматическом листании (1 – 20 сек).

flags<>

Флаги.

name<>

Имя объекта.

overlay<>

Включение режима ускорения отображения (0 – нет ускорения, 1 – ускорение «режим Оверлей», 2 – ускорение «режим DirectDraw»).

tel_prior<>

Приоритет телеметрии.

gstream_version<>

Если значение не задано, функция автоматического выбора потока отключена.

При значении параметра minBPS поток для отображения выбирается автоматически, как описано в разделе Настройка автоматического выбора видеопотока для отображения

"ACTIVATE"  – активирование панели управления монитора.

user_id<>

Идентификатор пользователя.

panel_active<>

-

"DEACTIVATE"  – де активирование панели управления монитора.

-

-

"EXPORT_FRAME"  – экспорт кадра в JPG-файл.

cam<>

-

file

-

"KEY_PRESSED" – управление кнопками монитора видеонаблюдения и архива видеозаписей.

number<>

-

cam_id<>ID камеры, к Окну видеонаблюдения которой требуется применить команду. Если идентификатор не указан, то команда применяется к активному Окну видеонаблюдения (см. Активное Окно видеонаблюдения)

key<>

Возможные значения:

"ARCH_EDIT_DATE" – изменить дату поиска по архиву;

"ARCH_EDIT_TIME" – изменить время поиска по архиву;

"ARCH_EDIT_ENTER" – ввод изменений значений в архиве;

"ARCH_EDIT_ESCAPE" – отменить редактирование архива;

"ARCH_EDIT_BACK";

"ARCH_EDIT_REPLACE";

"WINDOW_ZOOM_IN" – развернуть окно видеонаблюдения;

"WINDOW_ZOOM_OUT" – свернуть окно видеонаблюдения;

"ZOOM_IN" – приближение изображения;

"ZOOM_OUT" – отдаление изображения;

"CYCLE_REW" – листание окон видеонаблюдения назад;

"CYCLE_FF" – листание окон видеонаблюдения вперед;

"LEFT" - сдвиг кадра влево в режиме Zoom;

"RIGHT" – сдвиг кадра вправо в режиме Zoom;

"UP" – сдвиг кадра вверх в режиме Zoom;

"DOWN" – сдвиг кадра вниз в режиме Zoom;

"MODE_VIDEO" – режим видеонаблюдения;

"MODE_ARCH" – режим воспроизведения архивных видеозаписей;

"MODE_ARCH2"- режим воспроизведения архивных видеозаписей 2;

"MASK_SHOW" – нанести маску;

"MASK_HIDE" – удалить маску;

"ARM" – поставить камеру на охрану;

"DISARM" – снять камеру с охраны;

"REW" – обратная перемотка;

"PLAY" – воспроизведение;

"PLAY_NONSTOP" – безостановочное воспроизведение;

"PLAY_FAST" – ускорить просмотр видеозаписи;

"FF" – перемотка вперед;

"RECORD" – запись;

"RECORD_MIC" – запись с микрофона;

"STOP" – остановка;

"REC_STOP" – остановка записи;

"PAUSE" – пауза;

"MIC_ON" – микрофон включен;

"MIC_OFF" – микрофон выключен;

"PRINT" – вывод кадра на печать.

"SELECT_LAYOUT" – управление раскладкой монитора видеонаблюдения.;

"START_CYCLE_FF" – включение функции автоматического листания окон видеонаблюдения вперед. Период листания задается при настройке интерфейсного объекта Монитор (см. Руководство Администратора, раздел Настройка режима отображения окон видеокамер).

"STOP_CYCLE" – остановка автоматического листания Окон видеонаблюдения.;

"SCREEN.N" – выбор раскладки Окон видеонаблюдения. N принимает значения 1, 4, 6, 9, 16, 32 (максимальное значение зависит от количества Окон видеонаблюдения, добавленных в Монитор видеонаблюдения).;

"EXPORT_DO" – запустить утилиту фонового экспорта AviExport (см. Утилита AviExport).;

"PROTECT_DO" – открыть окно создания закладки (см. Создание закладок).;

"PROTECT_VIEW" – открыть список закладок (см. Список закладок)

"START_AVI_EXPORT" – начать экспорт видео

Примечание. См. пример использования ниже.в Примеры с Камерами и Монитором видеонаблюдения

start<>Время начала.
finish<>Время окончания.
avi_path<>Путь к создаваемому файлу.
cam<>ID камеры.
"STOP_AVI_EXPORT" – остановить экспорт видео.monitor<>Номер монитора.
"START_AVI_SCHEDULE" – начать экспорт закладок.--
"STOP_AVI_SCHEDULE" – остановить экспорт закладок.--

"CONTROL_TELEMETRY"  – Управление телеметрией.

См. также Руководство Оператора, раздел  Управление поворотными устройствами с помощью мыши.

cam<>ID камеры, на которой следует включить или отключить управление телеметрией при помощи мыши.
on<>

0 – отключить управление при помощи мыши.

1 – включить управление при помощи мыши.

"SET_REC_RESTART"  – включить перезапуск записи при входе в архив.



"RESET_REC_RESTART"  – отключить перезапуск записи при входе в архив.



"SET_ARCH_ENTER_PAUSE"  – включить постановку проигрывания на паузу при входе в архив.



"RESET_ARCH_ENTER_PAUSE"  – отключить постановку проигрывания на паузу при входе в архив.



"DISABLE_TELEMETRY"  – отключить возможность управления телеметрией из Монитора видеонаблюдения.



"ENABLE_TELEMETRY" – включить возможность управления телеметрией из Монитора видеонаблюдения.

"INCREASE_VIEW" – увеличить размер окна камеры в Мониторе видеонаблюдения.cam<>ID камеры
"DECREASE_VIEW" – уменьшить размер окна камеры в Мониторе видеонаблюдения.cam<>ID камеры
"SHOW_LAYOUT" – отобразить раскладку с указанным идентификатором.

layout_id<>

Идентификатор раскладки в базе данных

"GO_LIVE" – переключить все камеры на мониторе в режим живого видео.виде

--

"GO_ARCH" – переключить все камеры в мониторе в режим просмотра архива.

arch_time<>

Необязательный параметр. Задает время позиционирования в архиве в формате ДД-ММ-ГГ ЧЧ:ММ:СС. По умолчанию архив позиционируется на последнюю запись.
SAVE_AS – экспортировать выбранный фрагмент архива.--
PLACE_CAM_IN_LAYOUT_CELL – добавить камеру на Монитор в заданную ячейку заданной раскладки.cam<>ID камеры в дереве объектов, которую необходимо вывести на монитор. Если значение параметра некорректно, например, 0 или -1, то соответствующая ячейка будет скрыта.
layout_name<>ID или название раскладки, на которую необходимо добавить камеру.
cell<>

Номер ячейки на раскладке, в которую необходимо добавить камеру. Ячейки нумеруются сверху вниз и слева направо, начиная с верхнего левого угла раскладки.

Внимание! Нумерация ячеек начинается с 0.

Если в ячейку уже добавлена какая-либо другая камера, она будет заменена

SET_TITLES – показывать титры поверх видеоизображения в любом режиме отображения. Такие титры не записываются в архив и отображаются до применения команды CLEAR_TITLES либо перезагрузки Монитора.

cam<>

ID камеры, к Окну видеонаблюдения которой требуется применить команду.

titles<>Текст титров, который необходимо выводить. Для переноса строки используется '\r'.
title_id<>ID титрователя.

CLEAR_TITLES – выключить показ титров, созданных с помощью команды SET_TITLES.TITLE

cam<>ID камеры, к Окну видеонаблюдения которой требуется применить команду.
title_id<>ID титрователя.

Свойства объекта MONITOR показаны в таблице.:

Свойства объекта MONITOR

Описание свойств объекта

ID<>

Идентификатор объекта.

PARENT_ID<>

Идентификатор родительского объекта.

...

объекта

...

Необходимо при запуске первой макрокоманды проиграть запись с видеокамеры 1 на мониторе 4 с указанными датой и временем.

Code Block
OnEvent("MACRO","1","RUN")
{
	DoReact("MONITOR","4","ARCH_FRAME_TIME","cam<1>,date<"+date+">,time<11:00:00>");
	DoReact("MONITOR","4","KEY_PRESSED","key<PLAY>");
}

Необходимо при печати кадра с первой видеокамеры перейти в режим просмотра видеоархива на первой видеокамере монитора 4, и перейти на 10 кадров далее, начиная с фрагмента указанной даты и времени.

Code Block
OnEvent("CAM", "1", "PRINT")
{
	DoReact("MONITOR","4","ARCH_FRAME_TIME","cam<1>,date<"+date+">,time <11:00:00>"); 
 	for(i=0;i<10;i=i+1) 
 	{ 
 		DoReact ("MONITOR","4","KEY_PRESSED","key<FF>"); 
 	}
}

Необходимо приблизить видеоизображение на экране монитора, если видеокамера находится в состоянии тревоги, и вернуть в исходное состояние при ее окончании.

Code Block
OnEvent("CAM","1","MD_START")
{
	DoReact("MONITOR","1","KEY_PRESSED","key<ZOOM_IN>");
}

OnEvent("CAM", "1", "MD_STOP");
{
	DoReact("MONITOR","1","KEY_PRESSED","key<ZOOM_OUT>");
}

Необходимо вывести на экран монитора раскладку под номером один при срабатывании макрокоманды.

Code Block
OnEvent("MACRO","1","RUN")
{
	DoReact("MONITOR","1","KEY_PRESSED","key<SELECT_LAYOUT>,number<1>");
}

...

Скрипт (запуск по Макрокоманде 1)

Code Block
OnEvent("MACRO","1","RUN")
{
	DoReact("CORE","","DO_REACT","source_type<MONITOR>,source_id<1>,action<START_AVI_EXPORT>,params<4>,
    param0_name<avi_path>,param0_val<c:\aaa.avi>,param1_name<cam>,param1_val<1>,param2_name<finish>,
     param2_val<24-10-14 17:10:50>,param3_name<start>,param3_val<24-10-14 17:10:38");
}

По макрокоманде 1 включать управление телеметрией при помощи мыши на камере 4, выведенной на монитор 10, по макрокоманде 2 отключать.

Code Block
OnEvent("MACRO","1","RUN")
{
    DoReact("MONITOR","10","CONTROL_TELEMETRY","cam<4>,on<1>");
}

OnEvent("MACRO","2","RUN")
{
    DoReact("MONITOR","10","CONTROL_TELEMETRY","cam<4>,on<0>");
}

По макрокоманде 1 выводить текст

«NNN

Titles»

(с переносом строки) поверх видеоизображения камеры 1, используя титрователь 1. По макрокоманде 2 отключать вывод этого текста.

...