enabled) public $wantedTemp = 24; protected $devicelist = array( METEO=> "tempc", ); function installHooks(&$indexDevices) { return $this->installHooksFunction($indexDevices); } // callback fonction. Is called with these 4 parameters public function callBack(&$device, $property, $value) { global $indexDevices; static $status = -1; $indoorTemp = $device->properties["indoortempc"]["value"]; if ( (($value > $this->wantedTemp and $indoorTemp < $this->wantedTemp) or ( $value < $this->wantedTemp and $indoorTemp >= $this->wantedTemp)) and $status === 1) { $status = 0; logger(ALERT, _("Open doors to climate"), null ,$device); }elseif ( (($value > $this->wantedTemp and $indoorTemp >= $this->wantedTemp) or ( $value < $this->wantedTemp and $indoorTemp <= $this->wantedTemp)) and $status === 0 ) { $status = 1; logger(ALERT, _("Close doors to climate"), null, $device); } logger (INFO, sprintf(_("%s: notification received from MQTT from %s => parameter: %s value: %s"), $this->hookName, $device->friendlyName, $property, bool2string($value)), __FILE__ . ":" . __LINE__, $device); } } $hooks["rdc_temperature_int_ext"] = new rdc_temperature_int_ext(); ?>