a:1:{i:0;a:8:{s:5:"TITLE";s:7:"CBlinds";s:5:"NOLOG";s:1:"0";s:11:"DESCRIPTION";s:27:"Жалюзи/роллета";s:8:"TEMPLATE";s:4856:"
%.stateHtml%
%.object_description%
%.updatedText%
";s:7:"METHODS";a:9:{i:0;a:7:{s:5:"TITLE";s:10:"setPreset1";s:11:"DESCRIPTION";s:50:"Установить в положение preset1";s:4:"CODE";s:171:"if (!empty($this->getProperty('posPreset1'))) { // send to MQTT, to the 'cmd' topic setGlobal($this->object_title.'.'.'cmd','mva'.$this->getProperty('posPreset1')); }";s:11:"CALL_PARENT";s:1:"0";s:9:"SCRIPT_ID";s:1:"0";s:8:"EXECUTED";s:19:"2021-04-06 20:53:49";s:15:"EXECUTED_PARAMS";s:42:"{"ORIGINAL_OBJECT_TITLE":"OBlindsKitchen"}";}i:1;a:7:{s:5:"TITLE";s:5:"close";s:11:"DESCRIPTION";s:33:"Закрыть полностью";s:4:"CODE";s:175:"$posMax = $this->getProperty('posMax'); if (empty($posMax)) { $posMax = 60; } // send to MQTT, to the 'cmd' topic setGlobal($this->object_title.'.'.'cmd','mva'.$posMax);";s:11:"CALL_PARENT";s:1:"0";s:9:"SCRIPT_ID";s:1:"0";s:8:"EXECUTED";s:19:"2021-03-28 17:35:51";s:15:"EXECUTED_PARAMS";s:84:"{"method":"OBlindsLivingWindow.close","ORIGINAL_OBJECT_TITLE":"OBlindsLivingWindow"}";}i:2;a:7:{s:5:"TITLE";s:6:"switch";s:11:"DESCRIPTION";s:64:"Открыть закрытое, закрыть открытое";s:4:"CODE";s:350:"$posMax = (int)$this->getProperty('posMax'); if (empty($posMax)) { $posMax = 60; } $posPreset1 = (int)$this->getProperty('posPreset1'); if (empty($posPreset1)) { $posPreset1 = $posMax; } $pos = intval($this->getProperty('pos')); if ($pos < $posPreset1 / 2) { $this->callMethod('setPreset1'); } else { $this->callMethod('open'); } ";s:11:"CALL_PARENT";s:1:"0";s:9:"SCRIPT_ID";s:1:"0";s:8:"EXECUTED";s:19:"2021-01-30 22:19:02";s:15:"EXECUTED_PARAMS";s:42:"{"ORIGINAL_OBJECT_TITLE":"OBlindsKitchen"}";}i:3;a:7:{s:5:"TITLE";s:4:"stop";s:11:"DESCRIPTION";s:18:"Остановка";s:4:"CODE";s:85:"// send to MQTT, to the 'cmd' topic setGlobal($this->object_title.'.'.'cmd','mvr0');";s:11:"CALL_PARENT";s:1:"0";s:9:"SCRIPT_ID";s:1:"0";s:8:"EXECUTED";s:19:"2021-01-31 00:28:24";s:15:"EXECUTED_PARAMS";s:73:"{"method":"OBlindsKitchen.stop","ORIGINAL_OBJECT_TITLE":"OBlindsKitchen"}";}i:4;a:7:{s:5:"TITLE";s:10:"setPreset3";s:11:"DESCRIPTION";s:50:"Установить в положение preset3";s:4:"CODE";s:171:"if (!empty($this->getProperty('posPreset3'))) { // send to MQTT, to the 'cmd' topic setGlobal($this->object_title.'.'.'cmd','mva'.$this->getProperty('posPreset3')); }";s:11:"CALL_PARENT";s:1:"0";s:9:"SCRIPT_ID";s:1:"0";s:8:"EXECUTED";s:19:"2021-04-06 19:56:00";s:15:"EXECUTED_PARAMS";s:45:"{"ORIGINAL_OBJECT_TITLE":"OBlindsLivingDoor"}";}i:5;a:7:{s:5:"TITLE";s:10:"setPreset2";s:11:"DESCRIPTION";s:50:"Установить в положение preset2";s:4:"CODE";s:171:"if (!empty($this->getProperty('posPreset2'))) { // send to MQTT, to the 'cmd' topic setGlobal($this->object_title.'.'.'cmd','mva'.$this->getProperty('posPreset2')); }";s:11:"CALL_PARENT";s:1:"0";s:9:"SCRIPT_ID";s:1:"0";s:8:"EXECUTED";s:19:"2021-04-06 22:00:00";s:15:"EXECUTED_PARAMS";s:50:"{"ORIGINAL_OBJECT_TITLE":"OBlindsSouthKinderroom"}";}i:6;a:7:{s:5:"TITLE";s:4:"open";s:11:"DESCRIPTION";s:33:"Открыть полностью";s:4:"CODE";s:176:"$posMax = $this->getProperty('posMax'); if (empty($posMax)) { $posMax = 60; } // send to MQTT, to the 'cmd' topic setGlobal($this->object_title.'.'.'cmd','mva-'.$posMax);";s:11:"CALL_PARENT";s:1:"0";s:9:"SCRIPT_ID";s:1:"0";s:8:"EXECUTED";s:19:"2021-04-06 19:20:20";s:15:"EXECUTED_PARAMS";s:50:"{"ORIGINAL_OBJECT_TITLE":"OBlindsSouthKinderroom"}";}i:7;a:7:{s:5:"TITLE";s:21:"initDefaultStateHtmls";s:11:"DESCRIPTION";s:84:"Инициализация дефолтных значений html статусов";s:4:"CODE";s:3308:"$testVal = $this->getProperty('stateHtmlOpen'); if (empty($testVal)) { $this->setProperty('stateHtmlOpen', ''); $this->setProperty('stateHtmlOpenLocked', ''); $this->setProperty('stateHtmlClose', ''); $this->setProperty('stateHtmlCloseLocked', ''); $this->setProperty('stateHtmlMiddle', ''); $this->setProperty('stateHtmlMiddleLocked', ''); }";s:11:"CALL_PARENT";s:1:"0";s:9:"SCRIPT_ID";s:1:"0";s:8:"EXECUTED";s:19:"2021-04-07 01:50:57";s:15:"EXECUTED_PARAMS";s:45:"{"ORIGINAL_OBJECT_TITLE":"OBlindsLivingDoor"}";}i:8;a:7:{s:5:"TITLE";s:14:"checkRawStatus";s:11:"DESCRIPTION";s:141:"Обновить сотояние выключателя и статус объекта на основании сырого значения";s:4:"CODE";s:1519:"$locked = 0; $manualInteraction = 0; $pos = $this->getProperty('statusRaw'); if (substr($pos, -1) === '.') { $locked = 1; } // trigger status changes if (intval($pos) != intval($this->getProperty('pos'))) { setGlobal($this->object_title.'.pos', intval($pos)); if (intval($pos) <= 3) { setGlobal($this->object_title.'.status', 0); } else if (intval($pos) <= intval($this->getProperty('posPreset1'))) { setGlobal($this->object_title.'.status', 2); } else { setGlobal($this->object_title.'.status', 1); } } // register human presence at home if ($locked != getGlobal($this->object_title.'.isManuallyLocked')) { setGlobal('lastHumanEventTime', date('Y-m-d H:i:s')); $manualInteraction = 1; } setGlobal($this->object_title.'.isManuallyLocked', $locked); // init state images (if necessary) $this->callMethod('initDefaultStateHtmls'); // call room status updates $statePropertyName = 'stateHtml'; if (intval($pos) <= 3) { $statePropertyName .= 'Open'; } else if (intval($pos) <= intval($this->getProperty('posPreset1'))) { $statePropertyName .= 'Middle'; } else { $statePropertyName .= 'Close'; } if ($locked) { $statePropertyName .= 'Locked'; } $this->setProperty('stateHtml', $this->getProperty($statePropertyName)); $room = $this->getProperty('LinkedRoom'); if (isset($room)) { $roomObj = getObject($room); if ($manualInteraction) { $roomObj->callMethod('onActivity'); } else { $roomObj->callMethod('onStateUpdate'); } }";s:11:"CALL_PARENT";s:1:"0";s:9:"SCRIPT_ID";s:1:"0";s:8:"EXECUTED";s:19:"2021-04-07 01:50:57";s:15:"EXECUTED_PARAMS";s:210:"{"PROPERTY":"statusRaw","NEW_VALUE":"17","OLD_VALUE":"17","SOURCE":"\/api.php\/module\/mqtt?topic=ibnhouse%2Fblinds%2Flvd%2Fpos&msg=17&no_session=1","no_session":"1","ORIGINAL_OBJECT_TITLE":"OBlindsLivingDoor"}";}}s:10:"PROPERTIES";a:16:{i:0;a:7:{s:5:"TITLE";s:3:"pos";s:11:"DESCRIPTION";s:18:"Положение";s:12:"KEEP_HISTORY";s:1:"0";s:8:"ONCHANGE";s:0:"";s:6:"SYSTEM";s:0:"";s:8:"DATA_KEY";s:1:"0";s:9:"DATA_TYPE";s:1:"0";}i:1;a:7:{s:5:"TITLE";s:3:"cmd";s:11:"DESCRIPTION";s:35:"Команда управления";s:12:"KEEP_HISTORY";s:1:"0";s:8:"ONCHANGE";s:0:"";s:6:"SYSTEM";s:0:"";s:8:"DATA_KEY";s:1:"0";s:9:"DATA_TYPE";s:1:"0";}i:2;a:7:{s:5:"TITLE";s:10:"posPreset1";s:11:"DESCRIPTION";s:56:"Положение закрытое не до упора";s:12:"KEEP_HISTORY";s:1:"0";s:8:"ONCHANGE";s:0:"";s:6:"SYSTEM";s:0:"";s:8:"DATA_KEY";s:1:"0";s:9:"DATA_TYPE";s:1:"0";}i:3;a:7:{s:5:"TITLE";s:16:"isManuallyLocked";s:11:"DESCRIPTION";s:38:"Нажат ли выключатель";s:12:"KEEP_HISTORY";s:1:"0";s:8:"ONCHANGE";s:0:"";s:6:"SYSTEM";s:0:"";s:8:"DATA_KEY";s:1:"0";s:9:"DATA_TYPE";s:1:"0";}i:4;a:7:{s:5:"TITLE";s:6:"posMax";s:11:"DESCRIPTION";s:141:"Максимальное время работы (до полного открытия/закрытия из любого положения)";s:12:"KEEP_HISTORY";s:1:"0";s:8:"ONCHANGE";s:0:"";s:6:"SYSTEM";s:0:"";s:8:"DATA_KEY";s:1:"0";s:9:"DATA_TYPE";s:1:"0";}i:5;a:7:{s:5:"TITLE";s:10:"posPreset2";s:11:"DESCRIPTION";s:109:"Положение закрытое до упора (для эмуляции присутствия дома)";s:12:"KEEP_HISTORY";s:1:"0";s:8:"ONCHANGE";s:0:"";s:6:"SYSTEM";s:0:"";s:8:"DATA_KEY";s:1:"0";s:9:"DATA_TYPE";s:1:"0";}i:6;a:7:{s:5:"TITLE";s:10:"posPreset3";s:11:"DESCRIPTION";s:95:"Предупредительное положение (за минуту до закрытия)";s:12:"KEEP_HISTORY";s:1:"0";s:8:"ONCHANGE";s:0:"";s:6:"SYSTEM";s:0:"";s:8:"DATA_KEY";s:1:"0";s:9:"DATA_TYPE";s:1:"0";}i:7;a:7:{s:5:"TITLE";s:5:"title";s:11:"DESCRIPTION";s:70:"Название для отображения в интерфейсе";s:12:"KEEP_HISTORY";s:1:"0";s:8:"ONCHANGE";s:0:"";s:6:"SYSTEM";s:0:"";s:8:"DATA_KEY";s:1:"0";s:9:"DATA_TYPE";s:1:"0";}i:8;a:7:{s:5:"TITLE";s:21:"stateHtmlMiddleLocked";s:11:"DESCRIPTION";s:76:"html для прикрытого состояния (блокировано)";s:12:"KEEP_HISTORY";s:1:"0";s:8:"ONCHANGE";s:0:"";s:6:"SYSTEM";s:0:"";s:8:"DATA_KEY";s:1:"0";s:9:"DATA_TYPE";s:1:"0";}i:9;a:7:{s:5:"TITLE";s:15:"stateHtmlMiddle";s:11:"DESCRIPTION";s:51:"html для прикрытого состояния";s:12:"KEEP_HISTORY";s:1:"0";s:8:"ONCHANGE";s:0:"";s:6:"SYSTEM";s:0:"";s:8:"DATA_KEY";s:1:"0";s:9:"DATA_TYPE";s:1:"0";}i:10;a:7:{s:5:"TITLE";s:20:"stateHtmlCloseLocked";s:11:"DESCRIPTION";s:74:"html для закрытого состояния (блокировано)";s:12:"KEEP_HISTORY";s:1:"0";s:8:"ONCHANGE";s:0:"";s:6:"SYSTEM";s:0:"";s:8:"DATA_KEY";s:1:"0";s:9:"DATA_TYPE";s:1:"0";}i:11;a:7:{s:5:"TITLE";s:14:"stateHtmlClose";s:11:"DESCRIPTION";s:47:"html для закрытго состояния";s:12:"KEEP_HISTORY";s:1:"0";s:8:"ONCHANGE";s:0:"";s:6:"SYSTEM";s:0:"";s:8:"DATA_KEY";s:1:"0";s:9:"DATA_TYPE";s:1:"0";}i:12;a:7:{s:5:"TITLE";s:9:"stateHtml";s:11:"DESCRIPTION";s:47:"html для текущего состояния";s:12:"KEEP_HISTORY";s:1:"0";s:8:"ONCHANGE";s:0:"";s:6:"SYSTEM";s:0:"";s:8:"DATA_KEY";s:1:"0";s:9:"DATA_TYPE";s:1:"0";}i:13;a:7:{s:5:"TITLE";s:13:"stateHtmlOpen";s:11:"DESCRIPTION";s:49:"html для открытого состояния";s:12:"KEEP_HISTORY";s:1:"0";s:8:"ONCHANGE";s:0:"";s:6:"SYSTEM";s:0:"";s:8:"DATA_KEY";s:1:"0";s:9:"DATA_TYPE";s:1:"0";}i:14;a:7:{s:5:"TITLE";s:19:"stateHtmlOpenLocked";s:11:"DESCRIPTION";s:74:"html для открытого состояния (блокировано)";s:12:"KEEP_HISTORY";s:1:"0";s:8:"ONCHANGE";s:0:"";s:6:"SYSTEM";s:0:"";s:8:"DATA_KEY";s:1:"0";s:9:"DATA_TYPE";s:1:"0";}i:15;a:7:{s:5:"TITLE";s:9:"statusRaw";s:11:"DESCRIPTION";s:60:"Сырое значение поступающее из MQTT";s:12:"KEEP_HISTORY";s:3:"365";s:8:"ONCHANGE";s:14:"checkRawStatus";s:6:"SYSTEM";s:0:"";s:8:"DATA_KEY";s:1:"0";s:9:"DATA_TYPE";s:1:"0";}}s:7:"OBJECTS";a:0:{}s:12:"PARENT_CLASS";s:9:"SOpenable";}}