1
0
moha/class/availability.php
2022-01-04 08:54:06 +01:00

42 lines
1.0 KiB
PHP

<?php
class availability
{
// by default all devices are listening for availability
// callback fonction. Is called with these 3 parameters
// $device -> calling device
// $param -> parameter passed by mqtt
// $value -> value of the parameter
public function callBack($device, $param, $value)
{
switch($param)
{
case "availability": // theorically can't be other, but ....
if ($device->availability != $value)
{
//echo "==========>>>>>> Availability $value" . EOL;
if (!empty($device->availability))
{
$log = WARNING;
}else
{
$log = INFO;
}
$device->availability = $value;
logger($log, sprintf(_("Device: %s/%s is %s"), $device->topic, $device->friendlyName, $value));
}
break;
}
echo sprintf(_("notification received from MQTT -> device %s is %s"), $device->friendlyName , $value). EOL;
//echo $param . "=> " . $value . EOL;
}
public function getHook()
{
return array($this,"callback");
}
}
$hooks["availability"] = new availability;
?>