Перейти в хранилище документации
Обратиться в техническую поддержку
Существуют 3 стандартные процедуры, которые могут быть выполнены при возникновении соответствующего события:
OnInit() – используется для инициализации переменных (задания первоначальных значений), которые будут в дальнейшем использоваться при выполнении скриптов. Выполняется до старта всех модулей системы. Рекомендуется использовать один вызов процедуры на все существующие скрипты.
Пример использования:
OnInit(){ flag=1; num=8; //на старте системы будут проинициализированы переменные }
OnTime(день недели (1-7), день-месяц-год, часы, минуты, секунды) – запуск в определенный момент времени.
OnTime(W,D,X,Y,H,C,S) { //W - день недели (0 - понедельник, 6 - воскресенье); //D - дата в формате "число-месяц-год", 16 августа 2001 года это "16-08-01" //X,Y - зарезервировано //H - час //C - минуты //S - секунды // ВЫПОЛНЯЯ СРАВНЕНИЕ С ПАРАМЕТРАМИ, ДАЛЕЕ УКАЗЫВАЕТСЯ ДЕЙСТВИЕ }
Примеры использования:
OnTime(W,"16-08-01",X,Y,"11","11","30") { // помещенный здесь код сработает 16 августа 2001 года в 11 часов 11 минут 30 секунд }
OnTime(W,D,X,Y,"11","11","30") { // помещенный здесь код сработает каждый день в 11 часов 11 минут 30 секунд }
OnTime(W,"16-08-01",X,Y,H,C,S) { // помещенный здесь код будет срабатывать 16 августа 2001 года // каждую секунду }
OnTime(W,"16-08-01",X,Y,"11","11",S) { // помещенный здесь код будет срабатывать 16 августа 2001 года // c 11 часов 11 минут по 11 часов 12 минут каждую секунду }
OnTime("0",D,X,Y,"21","0","0") { // помещенный здесь код будет срабатывать каждый понедельник // в 21 часов 00 минут 00 секунд }
OnEvent(тип источника, номер, событие) – запуск по определенному событию от объекта системы. Основная процедура при написании скриптов.
Примеры использования:
OnEvent("GRAY","1","ON") { // Выполнится при замыкании луча №1 }
OnEvent("CAM","12","MD_START") { // Выполнится при срабатывании детектора движения камеры №12 }
Каждая процедура, имеющая параметры, может встречаться в коде много раз с различными параметрами. При возникновении события система выполнит те из них, параметры которого совпадут с параметрами возникшего события.
Параметр процедуры может быть определенным или нет. В первом случае его значение берется в кавычки, в последнем случае параметр обозначается латинскими буквами, и процедура будет выполнена для всех событий, для которых его можно определить.
Примеры использования:
OnEvent("GRAY","1","ON") // Выполнится при замыкании луча №1 { i=1; i=i+1; //т.к. переменные строковые, то сумма будет равна «11» j=1; j=str(j+1); // str - это функция преобразования числа к строке. Внутри функции str вначале происходит конвертация всех строковых переменных (в случае их наличия) в целочисленные, затем происходит сложение чисел, следовательно сумма будет равна «2» }
OnEvent("GRAY",N,"ON") // Выполнится при замыкании любого луча { if(strequal(N,"3") { // выполнится если это луч 3 } }