- some debugging
- adding logs in mysql database
This commit is contained in:
parent
7acec3a3c4
commit
cd20e973cd
33
class/db.php
Normal file
33
class/db.php
Normal file
@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
class db extends mysqli
|
||||
{
|
||||
public $mysqlServer = "127.0.0.1";
|
||||
public $username = "moha";
|
||||
public $passwd = "MysqlMoha";
|
||||
public $database = "moha";
|
||||
|
||||
function __construct($mysqlServer, $username, $passwd, $database)
|
||||
{
|
||||
return $this->connect($mysqlServer, $username, $passwd, $database);
|
||||
}
|
||||
|
||||
function protect($string)
|
||||
{
|
||||
return $this->real_escape_string($string);
|
||||
}
|
||||
|
||||
function logProperty($device, $property, $value)
|
||||
{
|
||||
$query = "SELECT * FROM logs WHERE device='" . $device->ieeeAddress . "' AND property='" .
|
||||
$query = "IF (EXISTS INSERT INTO logs(device, property, value) VALUES(" . $device->ieeeAddress . ", " . $property . ", " . $value . ") ON DUPLICATE KEY UPDATE value=" . $value
|
||||
}
|
||||
}
|
||||
|
||||
$mohaDB = new db($mysqlServer, $username, $passwd, $database);
|
||||
if ($mohaDB->connect_error)
|
||||
{
|
||||
logger(ERROR, _("Mysql connection failed: ") . $db->connect_error);
|
||||
}
|
||||
|
||||
?>
|
@ -175,7 +175,8 @@ function iterateDevice($topic, $fn, &$device, $payloadArray)
|
||||
$device->$key["value"] = $value;
|
||||
$changed[$fn]["key"] = $key;
|
||||
$changed[$fn]["value"] = $value;
|
||||
|
||||
logger(INFO, sprintf(_("Device %s property %s, value changed to %s"), $device->friendlyName, $key, $value));
|
||||
$mohaDB->logProperty($device, $key, $value);
|
||||
//echo "oldvalue => " . print_r($oldValue, true) . EOL;
|
||||
/*if (empty($oldValue))
|
||||
{
|
||||
@ -204,7 +205,7 @@ function iterateDevice($topic, $fn, &$device, $payloadArray)
|
||||
|
||||
function getDevicesValues()
|
||||
{
|
||||
|
||||
//TODO
|
||||
}
|
||||
|
||||
?>
|
||||
|
13
devices_logs.php
Normal file
13
devices_logs.php
Normal file
@ -0,0 +1,13 @@
|
||||
<?php
|
||||
|
||||
function logDevice(& $device, $key, $value)
|
||||
{
|
||||
$db = new mysqli($mysqlServer, $username, $passwd, $database);
|
||||
if ($conn->connect_error)
|
||||
{
|
||||
logger(ERROR, _("Mysql connection failed: ") . $db->connect_error);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
?>
|
6
moha.php
6
moha.php
@ -1,4 +1,7 @@
|
||||
<?php
|
||||
$title = "moha";
|
||||
cli_set_process_title($title);
|
||||
file_put_contents("/proc/".getmypid()."/comm",$title);
|
||||
|
||||
//Constants
|
||||
define( "EOL", "\n");
|
||||
@ -35,7 +38,7 @@ $logFile = "/var/log/moha.log"; // Path of log file
|
||||
$logFh = null; // filehandle of log file
|
||||
$curlErr = 0; // Number of errors returned by curl
|
||||
$configDir = "./config"; // default config dir (production value is /etc/moha/)
|
||||
|
||||
$properties2log = array("action", "state", "contact", "temperature", "state_l1", "state_l2", "humidity", "current_heating_setpoint", "position", "pressure", "occupancy", "tamper", "illuminance_lux","illuminance", "requested_brightness_level", );
|
||||
if (!init()) exit(1);
|
||||
|
||||
function logger($level, $log, $notif = true)
|
||||
@ -93,6 +96,7 @@ logger(DEBUG, _("requiring php modules"), false);
|
||||
require "utils.php";
|
||||
require "mqtt_functions.php";
|
||||
require "events.php";
|
||||
require "db.php";
|
||||
require "db_functions.php";
|
||||
|
||||
// topics definition
|
||||
|
@ -19,7 +19,7 @@ $topics["pws2mqtt"]->callback = function($topic, $message)
|
||||
//addDevice($device[$fn], $fn, );
|
||||
}
|
||||
$device = & $device[$fn];
|
||||
print_r($device);
|
||||
//print_r($device);
|
||||
}
|
||||
$payloadArray = json_decode($message->payload);
|
||||
changeDevice($topic[0], $topic[1], $device["device"], $payloadArray);
|
||||
|
Loading…
Reference in New Issue
Block a user