Перейти в хранилище документации
Обратиться в техническую поддержку
Формат процедуры событий для объекта Макрокоманда:
OnEvent("MACRO","_id_","_событие_")
Формат оператора для описания действий с Макрокомандами:
DoReact("MACRO","_id_","_команда_" [,"_параметры_"]);
Функция проверки состояния объекта Макрокоманда:
CheckState ("MACRO","номер","состояние")
Формат процедуры событий для объекта Временная зона:
OnEvent("TIME_ZONE","_id_","_событие_")
Формат оператора для описания действий с Временной зоной:
DoReact("TIME_ZONE","_id_","_команда_" [,"_параметры_"]);
Функция проверки состояния объекта Временная зона:
CheckState ("TIME_ZONE","номер","состояние")
Примеры использования событий и реакций объекта Макрокоманда:
Необходимо записать текущее положение видеокамеры в 1 пресет при выполнении макрокоманды 1.
OnEvent("MACRO","1","RUN") { DoReact("TELEMETRY","1","SET_PRESET","TEL_PRIOR<1>"); }
Необходимо выполнить макрокоманду 2, если камера 1 поставлена на охрану.
OnEvent("CAM","1","ARM") { DoReact("MACRO", "2", "RUN"); }
Запускать и останавливать патрулирование поворотного устройства по макрокомандам.
OnEvent("MACRO","1","RUN") { DoReact("TELEMETRY","1.1","PATROL_PLAY","tel_prior<1>"); } OnEvent("MACRO","2","RUN") { DoReact("TELEMETRY","1.1","STOP","tel_prior<1>"); }
Пример бесконечного цикла и выхода из него. Старт цикла по макрокоманде 1, остановка по макрокоманде 2.
OnEvent("MACRO","1","RUN") //при запуске макрокоманды 1 { //квадратные скобки нужны для выделения оператора ожидания в отдельный поток [ flag=1; for(a=1;flag<2;a=1) //оператор цикла { Sleep(500); //оператор ожидания создает паузу в 500 миллисекунд ff="!!!!!!!!!!!!!!!!!!"; } ] } OnEvent("MACRO","2","RUN") //при запуске макрокоманды 2 { flag=2; }
Пример использования событий и реакций объекта Временная зона:
При активировании первой временной зоны вывести на монитор видеоизображение с камеры 1.
OnEvent("TIME_ZONE","1","ACTIVATE") { DoReact("CAM", "1", "ACTIVATE", "MONITOR<1>"); }