1
0
moha/hooks/scripts/example.php.template
2022-09-19 23:40:29 +02:00

41 lines
1.2 KiB
Plaintext

<?php
class <name_of_class> extends hook
{
public $hookName = <public name of the hook>;
public $active = true; //enable/disable hook (true => enabled)
protected $devicelist = array(
<ieee address or constant defined in config/devices_constants.php> => array(<property to watch>, false));
// if you need some initialisation when creating the object, uncomment the funcion init below and put your code here.
// If existing, This function is called by __construct
/*protected function init()
{
// Your code here
}
*/
// you can intercept the hook installation in this function.
function installHooks(&$indexDevices)
{
return $this->installHooksFunction($indexDevices);
}
// callback fonction. Is called with these 3 parameters
// $device -> calling device
// $property -> property of the device (given by mqtt)
// $value -> value of the property
public function callBack(&$device, $property, $value)
{
if ($this->active == true)
{
// here your code
}
logger (INFO,sprintf(_("%s: notification received from MQTT from %s => parameter: %s value: %s"), $this->hookName, $device->friendlyName, $property, bool2string($value)), __FILE__ . ":" . __LINE__);
}
}
$hooks[<public name of the hook>] = new <name_of_class>();
?>