Перейти в хранилище документации
Обратиться в техническую поддержку
Предыдущая страница Следующая страница
Метод DoReactStr используется для генерации реакций системных объектов. Метод DoReactStr отправляет реакцию заданному объекту. При этом реакция передается непосредственно тому ядру, на котором зарегистрирован объект, а не всей системе. В методе DoReactStr реакция задается группой аргументов типа String.
Синтаксис обращения к методу:
function DoReactStr(objtype : String, id : String, action : String, param<value> [, param<value>] : String)
Аргументы метода:
Синтаксис задания значения одному параметру соответствует строке:
"param<value>", где
param – название параметра;
value – значение параметра.
Синтаксис задания значения нескольким параметрам соответствует строке:
"param1<value1>,param2<value2>…".
Список оформляется через запятую без пробелов. В том случае, если ни один параметр задавать не требуется, при обращении необходимо указать пустую строку, например:
DoReactStr("CAM","1","REC","");
Допустимые значения аргумента param: тип String, диапазон ограничен допустимыми для заданной реакции параметрами. Допустимые значения аргумента value: тип String, диапазон зависит от устанавливаемого параметра.
Для всех реакций имеется возможность указать задержку выполнения реакции при помощи параметра delay<>. Задержка указывается в секундах.
Примечание
Пример. При регистрации тревоги по любой из видеокамер системы, переводить Монитор № 1 в режим отображения одного окна видеонаблюдения (однократор) и выводить в данном окне видеосигнал с камеры, по которой зарегистрирована тревога.
if (Event.SourceType == "CAM" && Event.Action == "MD_START") { var camid = Event.SourceId; DoReactStr("MONITOR","1","ACTIVATE_CAM","cam<"+ camid +">"); DoReactStr("MONITOR","1","KEY_PRESSED","key<SCREEN.1>"); }
Пример. При окончании тревоги по любой из видеокамер продолжать запись по ней в течении еще 5 секунд, после чего прекращать запись (аналог режима Дозапись).
if (Event.SourceType == "CAM" && Event.Action == "MD_STOP") { var camid = Event.SourceId; DoReactStr("CAM",camid,"REC_STOP","delay<5>"); }
Пример. По макрокоманде 1 включать управление телеметрией при помощи мыши на камере 4, выведенной на монитор 10, по макрокоманде 2 отключать.
if (Event.SourceType == "MACRO" && Event.Action == "RUN" && Event.SourceId == "1") { DoReactStr("MONITOR","10","CONTROL_TELEMETRY","cam<4>,on<1>"); } if (Event.SourceType == "MACRO" && Event.Action == "RUN" && Event.SourceId == "2") { DoReactStr("MONITOR","10","CONTROL_TELEMETRY","cam<4>,on<0>"); }