Свойства класса:
Методы класса:
if($params['NEW_VALUE']>60){ $a=array(); exec("ps -eo %mem,%cpu,cmd --sort=-%cpu | head -2",$a); array_splice($a, 0, 1); $s=json_encode($a); sg("ThisComputer.Processes",$s); }
//0 - выходной,1 - рабочи $date = time(); $new = 0; $this_year = (int) date('Y', $date); $file_load = './cms/cached/tmp/calendar.xml';//локально //Загружаем если год меняется $calend = file_get_contents($file_load); $order = array("\r\n", "\n", "\r", "<",">" ); $newstr = str_replace($order, " ", $calend); $pos = strpos( $newstr, 'calendar year='.'"'.$this_year.'"'); if($pos===false || $new == 1){ //Загружаем производственный календарь $productionCalendar = @file_get_contents('http://xmlcalendar.ru/data/ru/' . $this_year . '/calendar.xml'); } if ($productionCalendar) { //Если прочитали без ошибок file_put_contents($file_load,$productionCalendar);//Запишем на всякий случай)) } else { //Если не прочиталось $productionCalendar = $calend;// Возьмем ранее загруженный календарь } //Проверяем сегодняшний день по производственному календарю (рабочий или нет) $weekDay = -1; $this_date = date('m.d', $date); $calend = new SimpleXMLElement($productionCalendar); foreach ($calend->days->day as $day) { $type = $day->attributes()->t; //тип дня: 1 - выходной день, 2 - короткий день, 3 - рабочий день (суббота/воскресен) $CalDate = $day->attributes()->d; //дата if ($this_date == $CalDate) { //debmes(' >>>'.$this_date.' type of day='.$type); if ($type == 1) { //выходной $weekDay = 0; } elseif ($type == 2) {//Короткий день $weekDay = 1; } elseif ($type == 3) { //3 - рабочий день (суббота/воскресен) $weekDay = 1; } } } //Если в производственном календаре ничего не нашлось if ($weekDay == -1) { if (date('w', $date) == 0 || date('w', $date) == 6) { $weekDay = 0; } else { $weekDay = 1; } } $this->setProperty("WorkDay",$weekDay);
$volume=round(65535*$params['VALUE']/100); $this->setProperty('volumeLevel',$params['VALUE']); safe_exec('..\\apps\\nircmd\\nircmdc setsysvolume '.$volume); say("Изменилась громкость до ".$params['VALUE']." процентов");
DebMes("",'auth');
Объекты класса:
say("Отключено питание");
$command=$params['command']; $short_command=''; $dt=recognizeTime($command,$short_command); if (preg_match('/скажи сколько врем/is',$command)) { if ($dt>0) { addScheduledJob("command".$dt,"processCommand('".$short_command."');",$dt); say('Задача принята',2); return; } global $voicemode; $voicemode='on'; say('Сейчас '.timeNow(),2); } elseif (preg_match('/сколько время/is',$command)) { if ($dt>0) { addScheduledJob("command".$dt,"processCommand('".$short_command."');",$dt); say('Задача принята'); echo $short_command; return; } say('Сейчас '.timeNow()); } elseif (preg_match('/повтори (.+)/is',$command,$m) || preg_match('/скажи (.+)/is',$command,$m)) { if ($dt>0) { addScheduledJob("command".$dt,"processCommand('".$short_command."');",$dt); say('Задача принята',2); return; } global $voicemode; $voicemode='on'; say($m[1],2); } else { say('Неизвестная команда...',2); }
Свойства класса:
Методы класса:
$this->setProperty('LastRun',date('Y-m-d H:i:s'));
$name='Cron_'.$this->object_title; SQLExec("DELETE FROM jobs WHERE title='".$name."'");
Объекты класса:
runScript ("CheckCameraSpace");
$a=json_decode(getURL("http://admin:771762@192.168.0.117/api/services/rtspd/running")); //debMes($a->service." - ".$a->state); if ($a->state !='on'){ debMes('Starting RTSP'); registerError('Cycle_rtsp_stopped', 'Перезапуск RTSP на камере'); debMes(getURL("http://admin:771762@192.168.0.117/api/services/rtsp/start")); } switch (json_last_error()) { case JSON_ERROR_NONE: //debMes( $a->service." - ".$a->state.' Ошибок нет'); break; case JSON_ERROR_DEPTH: debMes( 'Достигнута максимальная глубина стека'); break; case JSON_ERROR_STATE_MISMATCH: debMes( 'Некорректные разряды или несоответствие режимов'); break; case JSON_ERROR_CTRL_CHAR: debMes( 'Некорректный управляющий символ'); break; case JSON_ERROR_SYNTAX: debMes( 'Синтаксическая ошибка, некорректный JSON'); break; case JSON_ERROR_UTF8: debMes( 'Некорректные символы UTF-8, возможно неверно закодирован'); break; default: debMes( 'Неизвестная ошибка'); break; }
Свойства класса:
Методы класса:
if ($params['NEW_VALUE']=='true'){ //DebMes($this->description." протечка"); include_once(DIR_MODULES.'telegram/telegram.class.php'); $telegram_module = new telegram(); $text = $this->description." замените батарейку"; $telegram_module->sendMessage('-1001776157191',$text); $telegram_module->sendMessage('132984517',$text); //sayTo("Проверка связи",100,"Alice"); }
//DebMes($params['NEW_VALUE']); //DebMes($params['OLD_VALUE']); if ($params['NEW_VALUE']=='true' or $params['NEW_VALUE']=='1'){ //DebMes($this->description." протечка"); include_once(DIR_MODULES.'telegram/telegram.class.php'); $telegram_module = new telegram(); $text = $this->description." есть вода"; $telegram_module->sendMessage('-1001776157191',$text); $telegram_module->sendMessage('132984517',$text); sg("KlapanVoda.Command",0); //sayTo("Проверка связи",100,"Alice"); } if (($params['OLD_VALUE']=='true' or $params['OLD_VALUE']=='1') AND ($params['NEW_VALUE']=='false' or $params['NEW_VALUE']=='0')){ //DebMes($this->description." протечка ушла"); include_once(DIR_MODULES.'telegram/telegram.class.php'); $telegram_module = new telegram(); $text = $this->description." вода ушла, можно открывать"; $telegram_module->sendMessage('-1001776157191',$text); $telegram_module->sendMessage('132984517',$text); //sg("KlapanVoda.Command",1); }
Объекты класса:
Свойства класса:
Методы класса:
if($params["NEW_VALUE"]==0 and $params["OLD_VALUE"]==1) { sG("datDvizhKor.Value",1); runScript('DverVihod'); } $this->setProperty("Upd", time()) ; if($params["NEW_VALUE"]==0) { $this->setProperty("Icon","/Icons/Door1(1).png"); $this->setProperty("Inverted",1); } else { $this->setProperty("Icon", "/Icons/Door2(1).png"); $this->setProperty("Inverted",0); }
ClearTimeOut('DatDveriKor_count'); sg('DatDveriKor.Counter', 0); sg('DatDveriKor.Reset', 0);
Объекты класса:
Свойства класса:
Методы класса:
if ($params['NEW_VALUE']==1 and $params['OLD_VALUE']==0){ runScript('DverVihod'); } if ($params['NEW_VALUE']==0 and $params['OLD_VALUE']==1){ sg('DatDveriKor.Reset',1); }
if ($params['NEW_VALUE']=='true'){ //DebMes($this->description." протечка"); include_once(DIR_MODULES.'telegram/telegram.class.php'); $telegram_module = new telegram(); $text = $this->description." замените батарейку"; $telegram_module->sendMessage('-1001776157191',$text); $telegram_module->sendMessage('132984517',$text); //sayTo("Проверка связи",100,"Alice"); }
$this->setProperty ("Upd",time()); if ($params['NEW_VALUE']=='true' or $params['NEW_VALUE']=='1'){ //$this->setProperty("Value", "TRUE"); //DebMes("datDvizh"); $ot=$this->getProperty("relayName"); ClearTimeOut("TurnOffLight_".$this->object_title);//DebMes($ot); //SetTimeOut($ot."_timer", "callMethod($ot.'.SetOpenTime');", 5); callMethod ($ot.".turnOn"); //$ot=$this->object_title; } if ((($params['NEW_VALUE']=='false') or ($params['NEW_VALUE']=='0'))and(($params['OLD_VALUE']=='true')or ($params['OLD_VALUE']=='1'))){ SetTimeOut("TurnOffLight_".$this->object_title, 'callMethod("'.$this->getProperty("relayName").'.turnOff");',30); }
Объекты класса:
Свойства класса:
Методы класса:
//if ($this->getProperty("status1")=='ON' or $this->getProperty("status2")=='ON') { //or $params['NEW_VALUE']=='ON'){ if ($params['NEW_VALUE']=='0'){ if ($this->getProperty("status1")=='ON')$this->setProperty('status1','OFF'); if ($this->getProperty("status2")=='ON')$this->setProperty('status2','OFF'); $this->setProperty('status','OFF'); } else{ $this->setProperty('status1','ON'); $this->setProperty('status2','ON'); $this->setProperty('status','ON'); }
if ($this->getProperty("status1")=='ON' or $this->getProperty("status2")=='ON') { //or $params['NEW_VALUE']=='ON'){ $this->setProperty('status1','OFF'); $this->setProperty('status2','OFF'); //if ($this->getProperty("status1")=='ON')$this->setProperty('status1','OFF'); //if ($this->getProperty("status2")=='ON')$this->setProperty('status2','OFF'); } else{ $this->setProperty('status1','ON'); $this->setProperty('status2','OFF'); }
if ($this->getProperty("status1")=='ON' or $this->getProperty("status2")=='ON') { //or $params['NEW_VALUE']=='ON'){ if ($this->getProperty("status1")=='ON')$this->setProperty('status1','OFF'); if ($this->getProperty("status2")=='ON')$this->setProperty('status2','OFF'); $this->setProperty('status','OFF'); } else{ $this->setProperty('status1','ON'); $this->setProperty('status2','ON'); $this->setProperty('status','ON'); }
$status=$this->getProperty("status"); if ($status=="ON" or $status==1 or $status=="1" or $status=="On" or $status=="on") { $this->callMethod('turnOn'); } else { $this->callMethod('turnOff'); }
Объекты класса:
Свойства класса:
Методы класса:
//$params["USER_OBJECT"]
//$params["USER_OBJECT"]
Объекты класса:
Свойства класса:
Методы класса:
DebMes('Double'); if (gg("Rassvet.State")=='0') sG ("Rassvet.Set", '1'); else sG ("Rassvet.Set", '0'); //if (timeOutExists($this->object_title.'Single')==0){
//DebMes($params['NEW_VALUE']); if ($params['NEW_VALUE']=='single') { DebMes($params['ORIGINAL_OBJECT_TITLE'].'.Single'); callMethod($params['ORIGINAL_OBJECT_TITLE'].'.Single'); } elseif ($params['NEW_VALUE']=='double') { DebMes($params['ORIGINAL_OBJECT_TITLE'].'.Double'); //$this-> callMethod($params['ORIGINAL_OBJECT_TITLE'].'.Double'); } elseif ($params['NEW_VALUE']=='long') { DebMes($params['ORIGINAL_OBJECT_TITLE'].'.Long'); //$this-> callMethod($params['ORIGINAL_OBJECT_TITLE'].'.Long'); } //DebMes($this->object_title.'.Single');
DebMes('Single'); //if (timeOutExists($this->object_title.'Single')==0){ callMethod($this->getProperty('Relay').'.switchHi'); //SetTimeOut("TurnOffLight_datDvizhKor"/*.$this->object_title, 'callMethod("'.$this->getProperty("Relay").'.turnOff");',120); //setTimeOut($this->object_title.'Single','',1); //}
Объекты класса:
include_once(DIR_MODULES.'mqtt/mqtt.class.php'); $mqtt_s = new mqtt(); $mqtt_s->mqttPublish('zigbee2mqtt/AlarmBell/set/volume','medium'); $mqtt_s->mqttPublish('zigbee2mqtt/AlarmBell/set/melody','18'); $mqtt_s->mqttPublish('zigbee2mqtt/AlarmBell/set/duration','4'); $mqtt_s->mqttPublish('zigbee2mqtt/AlarmBell/set/alarm','1');
Свойства класса:
Методы класса:
if ($params['NEW_VALUE'] != $params['OLD_VALUE']) { include_once(DIR_MODULES.'telegram/telegram.class.php'); $telegram_module = new telegram(); $text = $this->getProperty("MyIP"); $telegram_module->sendMessageToUser(132984517, $text);}
Объекты класса:
Свойства класса:
Методы класса:
$h = (int)date('G', time()); if ($h>=23 or $h<5){ if ($params['NEW_VALUE']=='1') $this->setProperty ('State',30); if ($params['NEW_VALUE']=='0') $this->setProperty ('State',0); } else $this->setProperty ('State',$params['NEW_VALUE']);
Объекты класса:
$name=$this->object_title; if ($params['NEW_VALUE']=='1' AND $params['OLD_VALUE']!='1'){ $descr=$this->description; include_once(DIR_MODULES."telegram/telegram.class.php"); $telegram_module = new telegram(); $telegram_module->sendMessage("132984517", $descr." нашелся"); } if ($params['NEW_VALUE']=='1'){ $descr=$this->description; setTimeOut($name."HEARTBIT", ' include_once(DIR_MODULES."telegram/telegram.class.php"); $this->sP("Heartbit", 0); $telegram_module = new telegram(); $telegram_module->sendMessage("132984517", "'.$descr.' потерян");', 300); }
$name=$this->object_title; if ($params['NEW_VALUE']=='online' AND $params['OLD_VALUE']!='online'){ $descr=$this->description; include_once(DIR_MODULES."telegram/telegram.class.php"); $telegram_module = new telegram(); $telegram_module->sendMessage("132984517", $descr." нашелся"); } if ($params['NEW_VALUE']=='online'){ $descr=$this->description; setTimeOut($name."HEARTBIT", ' include_once(DIR_MODULES."telegram/telegram.class.php"); $telegram_module = new telegram(); $telegram_module->sendMessage("132984517", "'.$descr.' потерян");', 600); }
//debMes($params['NEW_VALUE']); if (substr($params['NEW_VALUE'],0,1)=="#") { $s=substr($params['NEW_VALUE'],1,6); } else $s=$params['NEW_VALUE']; $a=str_split($s, 2); $this->setProperty("rColor", hexdec($a[0])); $this->setProperty("gColor", hexdec($a[1])); $this->setProperty("bColor", hexdec($a[2]));
Свойства класса:
Методы класса:
if ($params['NEW_VALUE']=="1"){ $ot=$this->object_title; if ($this->getProperty('status')==0){ $this->setProperty('status', 1); //say('Движ'); } setTimeOut($ot.'OnTimer', "sg('".$ot.".status',0);" ,60); }
$name=$this->object_title; setTimeOut($name."HEARTBIT", 'say "'.$name.' is out";', 60);
Объекты класса:
Свойства класса:
Методы класса:
$this->setProperty("updated",time()); $this->setProperty("updatedTime",date('H:i')); if ($this->getProperty('active')) { say("Режим ".$this->getProperty('title')." активирован."); } else { say("Режим ".$this->getProperty('title')." выключен."); }
$this->setProperty('active',1);
$this->setProperty('active',0);
Объекты класса:
setGlobal('minMsgLevel','2'); /* begin injection of {SDevices} */ require(DIR_MODULES.'devices/nightmode_activate.php'); /* end injection of {SDevices} */
setGlobal('minMsgLevel','1');
/* begin injection of {SDevices} */ //require(DIR_MODULES.'devices/darknessmode_activate.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ //require(DIR_MODULES.'devices/darknessmode_deactivate.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ //require(DIR_MODULES.'devices/nobodyhomemode_activate.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ //require(DIR_MODULES.'devices/nobodyhomemode_deactivate.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/econommode_activate.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/econommode_deactivate.php'); /* end injection of {SDevices} */
Свойства класса:
Методы класса:
$this->setProperty("status",'OFF'); //DebMes("RelayKor off");
$this->setProperty("status","ON"); //DebMes("RelayKor on");
$status=$this->getProperty("status"); if ($status) { $this->callMethod('turnOff'); } else { $this->callMethod('turnOn'); }
$status=$this->getProperty("status"); if ($status=="ON" or $status==1 or $status=="1" or $status=="On" or $status=="on") { $this->callMethod('turnOn'); } else { $this->callMethod('turnOff'); }
Объекты класса:
Свойства класса:
Методы класса:
$rooms=getObjectsByClass("Rooms"); $total=count($rooms); for($i=0;$i<$total;$i++) { $rooms[$i]['room']=getGlobal($rooms[$i]['TITLE'].'.Title'); if (!$rooms[$i]['room']) { $rooms[$i]['room']=$rooms[$i]['TITLE']; } $rooms[$i]['active']=getGlobal($rooms[$i]['TITLE'].'.SomebodyHere'); $rooms[$i]['time']=getGlobal($rooms[$i]['TITLE'].'.LatestActivity'); $rooms[$i]['diff']=time()-$rooms[$i]['time']; } function rooms_cmp($a, $b) { if ($a['diff'] == $b['diff']) { return 0; } return ($a['diff'] < $b['diff']) ? -1 : 1; } usort($rooms,"rooms_cmp"); if (!$rooms[0]['active']) { $somebodyHomeText="Никого нет дома. Были в ".date('H:i',$rooms[0]['time'])." (".$rooms[0]['room'].")"; } else { $res_rooms=array(); for($i=0;$i<$total;$i++) { if ($rooms[$i]['active']) { $res_rooms[]=$rooms[$i]['room']; } } $somebodyHomeText="Кто-то дома: ".implode(", ",$res_rooms); } setGlobal('somebodyHomeText',$somebodyHomeText); //echo "Updated"; /* begin injection of {SDevices} */ require(DIR_MODULES.'devices/Rooms_updateActivityStatus.php'); /* end injection of {SDevices} */
$this->setProperty('SomebodyHere',0); /* begin injection of {SDevices} */ require(DIR_MODULES.'devices/Rooms_onIdle.php'); /* end injection of {SDevices} */
$latestActivity=$this->getProperty('LatestActivity'); $this->setProperty('LatestActivity',time()); $this->setProperty('LatestActivityTime',date('H:i')); $this->setProperty('SomebodyHere',1); $ot=$this->object_title; if ($this->getProperty("IdleDelay")) { $activity_timeout=(int)$this->getProperty("IdleDelay"); } else { $activity_timeout=10*60; } clearTimeOut($ot."_activity_timeout"); setTimeOut($ot."_activity_timeout","callMethod('".$ot.".onIdle');",$activity_timeout); $this->callMethod("updateActivityStatus"); /* begin injection of {SDevices} */ require(DIR_MODULES.'devices/Rooms_onActivity.php'); /* end injection of {SDevices} */
Объекты класса:
Свойства класса:
Методы класса:
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SDevices_keepAlive.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SDevices_setUpdatedText.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SDevices_logicAction.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SDevices_statusUpdated.php'); /* end injection of {SDevices} */
Свойства класса:
Методы класса:
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SButtons_pressed.php'); /* end injection of {SDevices} */
Свойства класса:
Методы класса:
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SCameras_takeSnapshot.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SCameras_takeSeries.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SCameras_motionDetected.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SCameras_updatePreview.php'); /* end injection of {SDevices} */
Свойства класса:
Методы класса:
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SControllers_turnOff.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SControllers_switch.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SControllers_turnOn.php'); /* end injection of {SDevices} */
Свойства класса:
Методы класса:
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SAirConditioners_setThermostatMode.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SAirConditioners_setTargetTemperature.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SAirConditioners_configUpdated.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SAirConditioners_fanSpeedUpdated.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SAirConditioners_thermostatUpdated.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SAirConditioners_tempUp.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SAirConditioners_tempDown.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SAirConditioners_setFanSpeedMode.php'); /* end injection of {SDevices} */
Свойства класса:
Методы класса:
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SDimmers_setLevel.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SDimmers_statusUpdated.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SDimmers_levelUpdated.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SDimmers_levelWorkUpdated.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SDimmers_turnOff.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SDimmers_turnOn.php'); /* end injection of {SDevices} */
Свойства класса:
Методы класса:
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SGroups_turnOn.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SGroups_turnOff.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SGroups_switch.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SGroups_statusUpdated.php'); /* end injection of {SDevices} */
Свойства класса:
Методы класса:
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SMedias_setVolume.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SMedias_setSource.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SMedias_setChannel.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SMedias_pause.php'); /* end injection of {SDevices} */
Свойства класса:
Методы класса:
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SRGB_turnOff.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SRGB_turnOn.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SRGB_setColor.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SRGB_colorUpdated.php'); /* end injection of {SDevices} */
Свойства класса:
Методы класса:
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SThermostats_setTargetTemperature.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SThermostats_disable.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SThermostats_turnOn.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SThermostats_turnOff.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SThermostats_valueUpdated.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SThermostats_statusUpdated.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SThermostats_tempUp.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SThermostats_tempDown.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SThermostats_switchEnable.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SThermostats_enable.php'); /* end injection of {SDevices} */
Свойства класса:
Методы класса:
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/STVs_pause.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/STVs_setSource.php'); /* end injection of {SDevices} */ sg('TV1.state', 'com.webos.app.hdmi2');
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/STVs_setChannel.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/STVs_setVolume.php'); /* end injection of {SDevices} */
Свойства класса:
Методы класса:
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SCounters_pulseDetected.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SCounters_valueUpdated.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SCounters_valueWorkUpdated.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SCounters_refreshStats.php'); /* end injection of {SDevices} */
Свойства класса:
Свойства класса:
Методы класса:
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SLeak_unblockSensor.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SLeak_blockSensor.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SLeak_alert.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SLeak_statusUpdated.php'); /* end injection of {SDevices} */
Свойства класса:
Методы класса:
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SMotions_blockSensor.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SMotions_unblockSensor.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SMotions_motionDetected.php'); /* end injection of {SDevices} */
Свойства класса:
Методы класса:
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SOpenable_statusUpdated.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SOpenable_switch.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SOpenable_open.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SOpenable_close.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SOpenable_setLevel.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SOpenable_levelUpdated.php'); /* end injection of {SDevices} */
Свойства класса:
Методы класса:
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SOpenClose_blockSensor.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SOpenClose_unblockSensor.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SOpenClose_statusUpdated.php'); /* end injection of {SDevices} */
Свойства класса:
Методы класса:
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SSensors_unblockSensor.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SSensors_blockSensor.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SSensors_alert.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SSensors_valueUpdated.php'); /* end injection of {SDevices} */
Свойства класса:
Свойства класса:
Свойства класса:
Методы класса:
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SPowerSensors_valueUpdated.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SPowerSensors_loadStatusChanged.php'); /* end injection of {SDevices} */
Свойства класса:
Методы класса:
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SSmoke_unblockSensor.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SSmoke_blockSensor.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SSmoke_alert.php'); /* end injection of {SDevices} */
/* begin injection of {SDevices} */ require(DIR_MODULES.'devices/SSmoke_statusUpdated.php'); /* end injection of {SDevices} */
Свойства класса:
Методы класса:
$terminal_name=gg($this->object_title.".name"); setMessageVolume($terminal_name, $params["volume"]);
// $params["NAME"]; - Имя Терминала // $params["MESSAGE"]; - сообщение // $params["ERROR"]; - тип ошибки // $params["IMPORTANCE"]; - важность сообщения // $params["ORIGINAL_OBJECT_TITLE"]; - привязанный обьект // $this->username; - Привязанный Пользователь // $this->linkedRoom; - привязанное помещение
Объекты класса:
Свойства класса:
Методы класса:
//debMes($params["NEW_VALUE"]); if ($params["NEW_VALUE"]=='1')$this->setProperty("command",0); else if ($params["NEW_VALUE"]=='0') $this->setProperty("command",100);
if ($params['NEW_VALUE']=="Reason: Reset (software or hardware) due to interrupt watchdog"){ include_once(DIR_MODULES . 'telegram/telegram.class.php'); $telegram_module = new telegram(); $text = $this->description." перезагрузилась"; $telegram_module->sendMessage('132984517', $text); }
if ($params['NEW_VALUE']>=$this->getProperty ('closeTemp') and $this->getProperty('command')==0 and $params['OLD_VALUE']<$this->getProperty ('closeTemp')) { $this->setProperty ('command',100); include_once(DIR_MODULES . 'telegram/telegram.class.php'); $telegram_module = new telegram(); $text = $this->description." закрывается"; $telegram_module->sendMessage('132984517', $text); } if ($params['NEW_VALUE']<$this->getProperty ('openTemp') and $this->getProperty('command')==100 and $params['OLD_VALUE']>=$this->getProperty ('openTemp')) { $this->setProperty ('command',0); include_once(DIR_MODULES . 'telegram/telegram.class.php'); $telegram_module = new telegram(); $text = $this->description." открывается"; $telegram_module->sendMessage('132984517', $text); }
if ($params['NEW_VALUE']==1){ $a=substr($params['PROPERTY'],3,1); include_once(DIR_MODULES."telegram/telegram.class.php"); $telegram_module = new telegram(); $telegram_module->sendMessage("132984517","Контроллер ".$a." на шторах потерян"); }
$descr=$this->object_title; //DebMes($descr); if ($params["NEW_VALUE"]==1){ //DebMes("Heartbeat ".$descr); setTimeOut($descr."HEARTBIT", ' include_once(DIR_MODULES."telegram/telegram.class.php"); $telegram_module = new telegram(); $telegram_module->sendMessage("132984517", "'.$descr.' потерян"); setGlobal("'.$descr.'.heartBeat","0");', 300);}
Объекты класса:
Свойства класса:
Методы класса:
Объекты класса:
$details=array(); $red_state=0; $yellow_state=0; if (!isOnline('Internet')) { $yellow_state=1; $details[]=LANG_GENERAL_NO_INTERNET_ACCESS; } if ($red_state) { $state='red'; $state_title=LANG_GENERAL_RED; } elseif ($yellow_state) { $state='yellow'; $state_title=LANG_GENERAL_YELLOW; } else { $state='green'; $state_title=LANG_GENERAL_GREEN; } $new_details=implode(". ",$details); if ($this->getProperty("stateDetails")!=$new_details) { $this->setProperty('stateDetails',$new_details); } if ($this->getProperty('stateColor')!=$state) { $this->setProperty('stateColor',$state); $this->setProperty('stateTitle',$state_title); if ($state!='green') { say(LANG_GENERAL_COMMUNICATION_STATE." ".LANG_GENERAL_CHANGED_TO." ".$state_title."."); say(implode(". ",$details)); } else { say(LANG_GENERAL_COMMUNICATION_STATE." ".LANG_GENERAL_RESTORED_TO." ".$state_title); } $this->callMethod('stateChanged'); }
$details=array(); $red_state=0; $yellow_state=0; $cycles=array('states'=>'states','main'=>'main','execs'=>'exec','scheduler'=>'scheduler'); foreach($cycles as $k=>$v) { $tm=getGlobal('ThisComputer.cycle_'.$k.'Run'); if (time()-$tm>5*60) { $red_state=1; $details[]=$v." ".LANG_GENERAL_CYCLE." ".LANG_GENERAL_STOPPED."."; } } $cycles=array('ping'=>'ping','webvars'=>'webvars'); foreach($cycles as $k=>$v) { $tm=getGlobal('ThisComputer.cycle_'.$k.'Run'); if (time()-$tm>10*60) { $yellow_state=1; $details[]=$v." ".LANG_GENERAL_CYCLE." ".LANG_GENERAL_STOPPED."."; } } if ($red_state) { $state='red'; $state_title=LANG_GENERAL_RED; } elseif ($yellow_state) { $state='yellow'; $state_title=LANG_GENERAL_YELLOW; } else { $state='green'; $state_title=LANG_GENERAL_GREEN; } $new_details=implode(". ",$details); if ($this->getProperty("stateDetails")!=$new_details) { $this->setProperty('stateDetails',$new_details); } if ($this->getProperty('stateColor')!=$state) { $this->setProperty('stateColor',$state); $this->setProperty('stateTitle',$state_title); if ($state!='green') { say(LANG_GENERAL_SYSTEM_STATE." ".LANG_GENERAL_CHANGED_TO." ".$state_title."."); say(implode(". ",$details)); } else { say(LANG_GENERAL_SYSTEM_STATE." ".LANG_GENERAL_RESTORED_TO." ".$state_title); } $this->callMethod('stateChanged'); } /* begin injection of {SDevices} */ require(DIR_MODULES.'devices/system_checkstate.php'); /* end injection of {SDevices} */
$details=array(); $red_state=0; $yellow_state=0; if ($red_state) { $state='red'; $state_title=LANG_GENERAL_RED; } elseif ($yellow_state) { $state='yellow'; $state_title=LANG_GENERAL_YELLOW; } else { $state='green'; $state_title=LANG_GENERAL_GREEN; } $new_details=implode(". ",$details); if ($this->getProperty("stateDetails")!=$new_details) { $this->setProperty('stateDetails',$new_details); } if ($this->getProperty('stateColor')!=$state) { $this->setProperty('stateColor',$state); $this->setProperty('stateTitle',$state_title); if ($state!='green') { say(LANG_GENERAL_SECURITY_STATE." ".LANG_GENERAL_CHANGED_TO." ".$state_title."."); say(implode(". ",$details)); } else { say(LANG_GENERAL_SECURITY_STATE." ".LANG_GENERAL_RESTORED_TO." ".$state_title); } $this->callMethod('stateChanged'); }
Свойства класса:
Методы класса:
Объекты класса:
$h = (int)date('G', time()); $m = date('i', time()); $w = date('w', time()); SQLExec("SET time_zone='+03:00' ;"); if ($h == "01") callMethod('ThisComputer.workDay'); if ($w == 3 and $h == 4) { //Проворот клапанов воды по средам include_once(DIR_MODULES . 'telegram/telegram.class.php'); $telegram_module = new telegram(); $text = "Проворот клапанов воды"; //$telegram_module->sendMessage('-1001776157191',$text); $telegram_module->sendMessage('132984517', $text); setGlobal("KlapanVoda.Command", "0"); setTimeOut("ProvorotKlapanVoda", "setGlobal('KlapanVoda.Command','1');", 20); } if (((($h >= 9) && gg('ThisComputer.workDay')) or $h >= 11) && ($h <= 22)) { //say(timeNow(),2); } if ($h == 10) { //Бэкап в 10 часов ежедневно include_once('./modules/backup/backup.class.php'); $back = new backup(); $back->create_backup(); } debMes('ClockChime.onNewHour');
$h = (int)date('G', time()); $m = date('i', time()); $w = date('w', time()); /*if($m==05 and $h==6 and gg('ThisComputer.workDay')==1){//Рассвет в 6-05 по рабочим дням sG("Rassvet.State","2"); debMes("Рассвет"); }*/ setGlobal('timeNow', date('H:i')); $homeStatus = date('H:i'); /* if (getGlobal('NobodyHomeMode.active')) { $homeStatus .= ' Дома никого'; } else { $homeStatus .= ' Дома кто-то есть'; }*/ $homeStatus .= ' ' . getGlobal('Security.stateDetails'); $homeStatus .= ' ' . getGlobal('System.stateDetails'); $homeStatus .= ' ' . getGlobal('Communication.stateDetails'); setGlobal('HomeStatus', $homeStatus); /*if (timeBetween(getGlobal('SunRiseTime'), getGlobal('SunSetTime')) && getGlobal('isDark') == "1") { setGlobal("isDark", 0); setGlobal("DarknessMode.active", 0); } elseif (!timeBetween(getGlobal('SunRiseTime'), getGlobal('SunSetTime')) && getGlobal('isDark') != "1") { setGlobal("isDark", 1); setGlobal("DarknessMode.active", 1); }*/ if (timeIs(getGlobal('SunRiseTime'))) { say('Всходит солнце',2); } if (timeIs(getGlobal('SunSetTime'))) { say('Солнце заходит', 2); } /*if (timeIs("23:30") && (gg("EconomMode.active")!="1") && (gg("NobodyHomeMode.active")=="1")) { say("Похоже никого нет сегодня, можно сэкономить немного."); callMethod('EconomMode.activate'); } if (timeIs('20:00')) { callMethod('NightMode.activate'); } if (timeIs('09:00')) { callMethod('NightMode.deactivate'); }*/ if ($m==10 and $h==3) { runScript("systemMaintenance"); include_once('./modules/todoer/todoer.class.php'); $calendar = new todoer(); $calendar->clnd_getholidays(); DebMes('todoer'); } if ($m==25 and $h==13){ safe_exec('mosquitto_sub -v -t "r4s0/#" > /var/www/mosqlog.txt'); } if (gg('ThisComputer.AlarmStatus') && timeIs(gg('ThisComputer.AlarmTime'))) { runScript('MorningAlarm'); } $data = getUrl("http://checkip.amazonaws.com/"); //DebMes("My IP->".$data); if ($data != null or $data != '0.0.0.0' or $data != '') sg('MyIP.MyIP', $data); runScript("CheckVideo"); /* if(time()-getGlobalTime("ShtoraBalkon.temp")>600){ //include_once(DIR_MODULES . 'telegram/telegram.class.php'); //$telegram_module = new telegram(); $text = "Датчик температуры на балконе потерялся"; //$telegram_module->sendMessage('-1001776157191',$text); //$telegram_module->sendMessage('132984517', $text); }*/
Свойства класса:
Методы класса:
if ($params['NEW_VALUE']<=15){ //DebMes($this->description." протечка"); include_once(DIR_MODULES.'telegram/telegram.class.php'); $telegram_module = new telegram(); $text = $this->description." замените батарейку"; $telegram_module->sendMessage('-1001776157191',$text); $telegram_module->sendMessage('132984517',$text); //sayTo("Проверка связи",100,"Alice"); }
if ($params['NEW_VALUE'] >=($this->getProperty('Target')) ) return; if (timeOutExists($this->object_title."_spec")) return; SetTimeOut($this->object_title."_spec","",10); include_once(DIR_MODULES.'telegram/telegram.class.php'); $telegram_module = new telegram(); $text = $this-> description.' хочет воды, влажность '.$this-> getProperty('Vlazhnost').'%'; $telegram_module->sendMessageToAll($text); //$telegram_module->sendMessage('-1001776157191',$text);
Объекты класса:
Свойства класса:
Методы класса:
$fields = ['key' => '99c5e07b4d5de9d18c350cdf64c5aa3dd', 'method' => 'getOrganization', 'inn' => '2309085638']; $opts = [ 'http' => [ 'method' => 'GET', 'header' => 'Content-type: application/x-www-form-urlencoded', 'content' => http_build_query($fields) ] ]; $results = file_get_contents('https://www.testfirm.ru/api/', false, stream_context_create($opts));
if ($params["NEW_VALUE"]=='one'){ //DebMes('1'); $this->setProperty('state','com.webos.app.hdmi1'); } if ($params["NEW_VALUE"]=='two'){ $this->setProperty("state",'com.webos.app.hdmi2'); } if ($params["NEW_VALUE"]=='three'){ $this->setProperty("state",'com.webos.app.livetv'); } return 'Ok';
Объекты класса:
Методы класса:
Объекты класса:
if ($params['serial']=='' && $params['devname']!='') { $params['serial']=$params['devname']; } $device=SQLSelectOne("SELECT * FROM usbdevices WHERE SERIAL LIKE '".$params['serial']."'"); if (!$device['ID']) { // new device connected //say("Подключено новое устройство",1); $device=array(); $device['SERIAL']=$params['serial']; $device['TITLE']='устройство '.$params['devname']; $device['FIRST_FOUND']=date('Y-m-d H:i:s'); $device['LAST_FOUND']=date('Y-m-d H:i:s'); $device['LOG'].=$device['FIRST_FOUND'].' подключено (впервые)'."\n"; $device['ID']=SQLInsert('usbdevices',$device); } else { // device already in our database //say("Подключено ".$device['TITLE'],1); if ($device['USER_ID']) { $user=SQLSelectOne("SELECT * FROM users WHERE ID='".$device['USER_ID']."'"); if ($user['ID']) { //$user['NAME']; // теперь мы знаем имя пользователя, связанного с этим устройством } } $device['LAST_FOUND']=date('Y-m-d H:i:s'); $device['LOG']=$device['LAST_FOUND'].' подключено'."\n".$device['LOG']; SQLUpdate('usbdevices',$device); if ($device['SCRIPT_ID']!='') { runScript($device['SCRIPT_ID'],$params); } elseif ($device['SCRIPT']!='') { eval($device['SCRIPT']); } }
Свойства класса:
Методы класса:
//$params["LOCATION_OBJECT"], $params["LOCATION"]
//$params["LOCATION_OBJECT"], $params["LOCATION"]
Объекты класса:
Свойства класса:
Методы класса:
if ($params['NEW_VALUE']=='Вода перекрыта'){ include_once(DIR_MODULES.'telegram/telegram.class.php'); $telegram_module = new telegram(); $text="Вода перекрыта"; //$telegram_module->sendMessage('-1001776157191',$text); $telegram_module->sendMessage('132984517',$text); }
$name=$this->object_title; sG($name.".Alive","1"); if (!timeOutExists($name.'AliveTimer')) { } setTimeOut($name."AliveTimer", ' sG("'.$name.'.Alive","0"); ',500); /* include_once(DIR_MODULES.'telegram/telegram.class.php'); $telegram_module = new telegram(); $text = "Клапаны воды нашлись"; //$telegram_module->sendMessage('-1001776157191',$text); $telegram_module->sendMessage('132984517',$text); */ /* include_once(DIR_MODULES."telegram/telegram.class.php"); $telegram_module = new telegram(); $telegram_module->sendMessage("132984517","Клапаны воды потерялись"); */
if ($params['NEW_VALUE']=='0' and $params['OLD_VALUE']=='1'){ include_once(DIR_MODULES.'telegram/telegram.class.php'); $telegram_module = new telegram(); $text="Закрываю воду"; //$telegram_module->sendMessage('-1001776157191',$text); $telegram_module->sendMessage('132984517',$text); } if ($params['NEW_VALUE']=='1'and $params['OLD_VALUE']=='0'){ include_once(DIR_MODULES.'telegram/telegram.class.php'); $telegram_module = new telegram(); $text="Открываю воду"; //$telegram_module->sendMessage('-1001776157191',$text); $telegram_module->sendMessage('132984517',$text); }
if ($params['NEW_VALUE']=='0' and $params['OLD_VALUE']=='1'){ include_once(DIR_MODULES.'telegram/telegram.class.php'); $telegram_module = new telegram(); $text="Вода закрыта"; //$telegram_module->sendMessage('-1001776157191',$text); $telegram_module->sendMessage('132984517',$text); } if ($params['NEW_VALUE']=='1'and $params['OLD_VALUE']=='0'){ include_once(DIR_MODULES.'telegram/telegram.class.php'); $telegram_module = new telegram(); $text="Вода открыта"; //$telegram_module->sendMessage('-1001776157191',$text); $telegram_module->sendMessage('132984517',$text); } if ($params['NEW_VALUE']=='2'){ $telegram_module = new telegram(); $text="Вода долгая работа"; //$telegram_module->sendMessage('-1001776157191',$text); $telegram_module->sendMessage('132984517',$text); }
Объекты класса:
Свойства класса:
Методы класса:
$this->setProperty('cleanTimeSec',$params['NEW_VALUE']*60);
$this->setProperty('cleanAreaCm',$params['NEW_VALUE']*1000000);
if ($params['NEW_VALUE']!=0){ include_once(DIR_MODULES.'telegram/telegram.class.php'); $telegram_module = new telegram(); $text ="У пылесоса ошибка: ". $this->getProperty("ErrorText"); $telegram_module->sendMessageToAll($text); }
$a= round(($this-> getProperty("Duration"))/60, 1); $b=$this-> getProperty("CleanArea"); if ($params["NEW_VALUE"]=="docked" and $params["OLD_VALUE"]=="returning"){ $text = 'Пылесос вернулся на базу, убрано '.$b." кв.метров за $a минут."; } if ($params["NEW_VALUE"]=="docked" and $params["OLD_VALUE"]!="returning" and $params["OLD_VALUE"]!="docked"){ $text = 'Что-то пошло не так, пылесос вернули на базу, за последний раз убрано '.$b." кв.метров за $a минут."; } if ($b<64 and $text !=""){ $text.=" Где-то не убрано."; } include_once(DIR_MODULES.'telegram/telegram.class.php'); $telegram_module = new telegram(); $telegram_module->sendMessage('-1001776157191', $text);
//debmes ($params['PROPERTY']); if ($params['NEW_VALUE'] !=0 ) return; //debmes ('1'); include_once(DIR_MODULES.'telegram/telegram.class.php'); $telegram_module = new telegram(); $text ='Нужно '; switch ($params['PROPERTY']) { case "FilterLife": $text .='заменить основной фильтр'; break; case "MainBrushLife": DebMes($text); $text .='заменить главную щётку'; DebMes($text); break; case 'SensorLife': $text .='помыть датчики'; break; case 'SideBrushLife': $text .='заменить боковую щётку'; break; } $text.=' у робота-пылесоса'; $telegram_module->sendMessageToAll($text); $telegram_module->sendMessage('-1001776157191',$text);
rS('Vacuum_home');
Объекты класса:
setGlobal('XiaomiMiRobotVacuum.Сommand', 'start');
setGlobal('XiaomiMiRobotVacuum.Сommand', 'stop');
setGlobal('XiaomiMiRobotVacuum.Сommand', 'find_me');
setGlobal('XiaomiMiRobotVacuum.Сommand', 'app_spot');
if ($this->getProperty('setZonedClean') == 1) { $this->setProperty('ZonedClean', '[00000,00000,00000,00000,1]'); //указываем свои координаты say('Уборка в коридоре', 2); } else if ($this->getProperty('setZonedClean') == 2) { $this->setProperty('ZonedClean', '[00000,00000,00000,00000,1],[00000,00000,00000,00000,1]'); //пример координат двух зон в одной комнате и так можно сделать до 5 зон say('Уборка на кухне', 2); } else if ($this->getProperty('setZonedClean') == 3) { $this->setProperty('ZonedClean', '[00000,00000,00000,00000,1]'); //указываем свои координаты say('Уборка в гостиной', 2); } else if ($this->getProperty('setZonedClean') == 4) { $this->setProperty('ZonedClean', '[00000,00000,00000,00000,1]'); //указываем свои координаты say('Уборка в спальной', 2); }
setGlobal('XiaomiMiRobotVacuum.Сommand', 'pause');
if ($this->getProperty('CommandMode') == 1) { $this->callMethod('Start'); } else if ($this->getProperty('CommandMode') == 2) { $this->callMethod('Pause'); } else if ($this->getProperty('CommandMode') == 3) { $this->callMethod('Stop'); } else if ($this->getProperty('CommandMode') == 4) { rS('Vacuum_home'); }
Свойства класса:
Методы класса:
if ($this->getProperty('Status') == 'OFF') { $this->setProperty('updated', time()); $this->setProperty("updatedTime",date('H:i')); $this->callMethodSafe('mUpdatedText'); $this->setProperty('Power', '0'); $this->setProperty('Mode', '1'); }
$ot = $this->object_title; $updatedTime = $this->getProperty('updated'); $passed = time() - $updatedTime; $newTimeout = 0; $passedText = getPassedText($updatedTime); $this->setProperty('updatedText', $passedText); $this->setProperty('updatedNumber', $passed); if ($passed < 10) { $newTimeout = 10; } elseif ($passed < 60) { $newTimeout = 10; } elseif ($passed < 60*60) { $newTimeout = 60; } elseif ($passed < 20*60*60) { $newTimeout = 60 * 60; } if ($newTimeout > 0) { setTimeOut($ot . '_updateTime', 'callMethod("' . $ot . '.mUpdatedText");', $newTimeout); }
if ($this->getProperty('Online') == 'offline') { $this->setProperty('OnlineColor', 'FF4500'); } else if ($this->getProperty('Online') == 'online') { $this->setProperty('OnlineColor', '00FF00'); }
if ($this->getProperty('ProgramStatus') == 2 && $this->getProperty('Program') == 0) { $this->setProperty('TextStatus', 'Boil'); $this->setProperty('ProgramStatusHistory', 'Boil'); } else if ($this->getProperty('ProgramStatus') == 2 && $this->getProperty('Program') == 2) { $this->setProperty('TextStatus', 'BoilHeat'); $this->setProperty('ProgramStatusHistory', 'BoilHeat'); } else if ($this->getProperty('ProgramStatus') == 2 && $this->getProperty('Program') == 1) { $this->setProperty('TextStatus', 'Heat'); $this->setProperty('ProgramStatusHistory', 'Heat'); } else if ($this->getProperty('ProgramStatus') != 0 && $this->getProperty('Program') == 3) { $this->setProperty('TextStatus', 'Nightlight'); $this->setProperty('ProgramStatusHistory', 'Nightlight'); } else if ($this->getProperty('ProgramStatus') == 0) { $this->setProperty('TextStatus', 'Off'); }
$valueTemperature; $valueTemperature = $this->getProperty('valueTemperature'); if ($valueTemperature >= 0 && $valueTemperature <= 30) { setGlobal('Button06.Icon03', 'KettleTemperature_0-30'); $this->setProperty('Images', 'KettleTemperature_CP_0-30'); } else if ($valueTemperature >= 31 && $valueTemperature <= 50) { setGlobal('Button06.Icon03', 'KettleTemperature_30-50'); $this->setProperty('Images', 'KettleTemperature_CP_30-50'); } else if ($valueTemperature >= 51 && $valueTemperature <= 65) { setGlobal('Button06.Icon03', 'KettleTemperature_50-65'); $this->setProperty('Images', 'KettleTemperature_CP_50-65'); } else if ($valueTemperature >= 66 && $valueTemperature <= 80) { setGlobal('Button06.Icon03', 'KettleTemperature_65-80'); $this->setProperty('Images', 'KettleTemperature_CP_65-80'); } else if ($valueTemperature >= 81 && $valueTemperature <= 90) { setGlobal('Button06.Icon03', 'KettleTemperature_80-90'); $this->setProperty('Images', 'KettleTemperature_CP_80-90'); } else if ($valueTemperature >= 91 && $valueTemperature <= 100) { setGlobal('Button06.Icon03', 'KettleTemperature_90-100'); $this->setProperty('Images', 'KettleTemperature_CP_90-100'); } if ($valueTemperature >= 95 && $valueTemperature <= 100 && $this->getProperty('ProgramStatusHistory') == 'Boil' && $this->getProperty('VoiceHistory') == '1') { say('Чайник вскипел, теперь можете пойти на кухню и заварить горячий напиток', 3); $this->setProperty('VoiceHistory', '0'); }
Объекты класса:
if ($this->getProperty('NightlightYandexAlice') == 1) { $this->setProperty('Nightlight', 'ON'); } else if ($this->getProperty('NightlightYandexAlice') == 0) { $this->setProperty('Nightlight', 'OFF'); }
/*$KettleSetTemperature = $this->getProperty('setTemperature'); if ($this->getProperty('Power') == 1) { if ($this->getProperty('Mode') == 1) { $this->setProperty('BoilHeat', '1'); } else if ($this->getProperty('Mode') == 2) { $this->setProperty('BoilHeat', $KettleSetTemperature); } else if ($this->getProperty('Mode') == 3) { $this->setProperty('Heat', $KettleSetTemperature); } } else if ($this->getProperty('Power') == 0 && $this->getProperty('Status') != 'OFF') { $this->setProperty('BoilHeat', '0'); } */
if ($this->getProperty('PowerYandexAlice') == 1) { //$this->setProperty('Mode', '1'); $this->setProperty('Power', '1'); $this->setProperty('VoiceHistory', '1'); } else if ($this->getProperty('PowerYandexAlice') == 0) { $this->setProperty('Power', '0'); $this->setProperty('VoiceHistory', '0'); } if ($this->getProperty('PowerYandexAlice') == 1 && $this->getProperty('Power') == 'ON') { say('Не могу включить чайник, потому что чайник на данный момент включен', 4); } else if ($this->getProperty('PowerYandexAlice') == 0 && $this->getProperty('Power') == 'OFF') { say('Не могу выключить чайник, потому что чайник на данный момент выключен', 4); }
$color=hexdec(gg('SkyKettleG240S.NightlightColor')); $Red = $color >> 16 & 0xFF; $Green = $color >> 8 & 0xFF; $Blue = $color & 0xFF; $CmdRed=''.$Red.''; $CmdGreen=''.$Green.''; $CmdBlue=''.$Blue.''; sg('SkyKettleG240S.Red',$CmdRed); sg('SkyKettleG240S.Green',$CmdGreen); sg('SkyKettleG240S.Blue',$CmdBlue);
$KettleSayTemp; $KettleSetTemperatureYandexAlice; $KettleSayTemp = implode('', array('На чайнике установлена температура подогрева на ',$this->getProperty('setTemperatureYandexAlice'),' градусов')); $KettleSetTemperatureYandexAlice = $this->getProperty('setTemperatureYandexAlice'); if ($KettleSetTemperatureYandexAlice >= 40) { $this->setProperty('setTemperature', $KettleSetTemperatureYandexAlice); $this->setProperty('Mode', '3'); $this->setProperty('Power', '1'); say($KettleSayTemp, 3); }
if ($this->getProperty('updatedNumber') >= 120 && $this->getProperty('Power') == 0 && $this->getProperty('NightlightLockOut') == 0) { if (getGlobal("DarknessMode.active") == 0 && getGlobal("NightMode.active") == 0 && $this->getProperty('Nightlight') == 'ON') { $this->setProperty('Nightlight', 'OFF'); } else if (getGlobal("DarknessMode.active") == 0 && getGlobal("NightMode.active") == 1 && $this->getProperty('Nightlight') == 'ON') { $this->setProperty('Nightlight', 'OFF'); } else if (getGlobal("DarknessMode.active") == 1 && getGlobal("NightMode.active") == 1 && $this->getProperty('Nightlight') == 'OFF' && $this->getProperty('Status') == 'OFF') { $this->setProperty('Nightlight', 'ON'); } }
, Россия
На форуме: Jon811
© 2024 - Site Built By SergeJey | Реквизиты: Курицын С. С. ИНН 762001394609 | Контакты | Публичный договор
SmartLiving