modified device database and the code for managing it
This commit is contained in:
		| @@ -75,7 +75,7 @@ class db extends mysqli | ||||
| 					logger(ERROR, _("mysql query errror: ") . $this->error, __FILE__ . ":" . __LINE__); | ||||
| 				} | ||||
| 			} | ||||
| 			logger(INFO, sprintf(_("New value (%s) of property: '%s' of device: %s stored in database"), $value, $propertyTree, $device->friendlyName), __FILE__ . ":" . __LINE__); | ||||
| 			logger(INFO, sprintf(_("New value (%s) of property: '%s' of device: %s stored in database"), bool2string($value), $propertyTree, $device->friendlyName), __FILE__ . ":" . __LINE__); | ||||
| 		} | ||||
| 	} | ||||
| } | ||||
|   | ||||
| @@ -53,7 +53,12 @@ class hook | ||||
| 				logger(DEBUG, $this->hookName . _(" initialized"), __FILE__ . ":" . __LINE__); | ||||
| 				//var_dump($this); | ||||
| 			} | ||||
| 		}else | ||||
| 		{ | ||||
| 			$this->initialized = true; | ||||
| 			logger(DEBUG, $this->hookName . _("hook is disabled"), __FILE__ . ":" . __LINE__); | ||||
| 		} | ||||
|  | ||||
| 		return $result; | ||||
| 	} | ||||
| } | ||||
|   | ||||
| @@ -34,6 +34,7 @@ class device | ||||
| 	public $availability; | ||||
| 	public $toConfirm; | ||||
| 	public $triggerDevice; | ||||
| 	public $properties = array(); | ||||
|  | ||||
| 	public function __construct() | ||||
| 	{ | ||||
| @@ -89,17 +90,17 @@ class watch | ||||
|  | ||||
| 	public function __construct($topic, $fn, $property, $condition, $value) | ||||
| 	{ | ||||
| 		global $conditions, $acceptedValues, $indexDevices; | ||||
| 		global $conditions, $indexDevices; | ||||
| 		logger(DEBUG, _("New Notification"), __FILE__ . ":" . __LINE__); | ||||
| 		if (($device = getDevice($topic, $fn)) !== false) | ||||
| 		{ | ||||
| 			$this->topic = $topic; | ||||
| 			if (property_exists($device, $property)) | ||||
| 			if (array_key_exists($property, $device->properties)) | ||||
| 			{ | ||||
| 				$this->property = $property; | ||||
| 				if (!is_numeric($value) and array_search($value, $this->acceptedValues) === false) | ||||
| 				if (!is_numeric($value) or array_search($value, $this->acceptedValues) === false) | ||||
| 				{ | ||||
| 					logger(ERROR, _("Value is not numeric"), __FILE__ . ":" . __LINE__ ); | ||||
| 					logger(ERROR, _("Value is not numeric or not accepted"), __FILE__ . ":" . __LINE__ ); | ||||
| 					return false; | ||||
| 				} | ||||
| 				if (array_search($condition, $this->conditions)) | ||||
| @@ -112,7 +113,7 @@ class watch | ||||
| 					logger(ERROR, sprintf(_("Condition %s is not one of the permitted : "), $condition) . print_r($conditions, true), __FILE__ . ":" . __LINE__ ); | ||||
| 					return false; | ||||
| 				} | ||||
| 				$indexDevices[$device->ieeeAddress]->$property["functions"][] = array($this,"notifyCallback"); | ||||
| 				$indexDevices[$device->ieeeAddress]->properties[$property]["functions"][] = array($this,"notifyCallback"); | ||||
| 			}else | ||||
| 			{ | ||||
| 				logger(ERROR, _("Property do not exists"), __FILE__ . ":" . __LINE__ ); | ||||
| @@ -132,11 +133,9 @@ class watch | ||||
| 		if (eval($this->function)) | ||||
| 		{ | ||||
| 			logger(DEBUG, _("notifyCallback")); | ||||
| 			$msg = sprintf(_("Device '%s' have property '%s' value %s %s %s"), $device->friendlyName, $property, $value, $this->condition, $this->PropertyValue ); | ||||
| 			$msg = sprintf(_("Device '%s' have property '%s' value %s %s %s"), $device->friendlyName, $property, bool2string($value), $this->condition, bool2string($this->PropertyValue) ); | ||||
| 			notify($msg); | ||||
| 		} | ||||
|  | ||||
|  | ||||
| 	} | ||||
| } | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user