debugage
This commit is contained in:
@@ -1,43 +1,56 @@
|
||||
<?php
|
||||
$topics["pws2mqtt"] = new topic;
|
||||
$devices["pws2mqtt"] = array();
|
||||
|
||||
|
||||
$topics["pws2mqtt"]->callback = function($topic, $message)
|
||||
{
|
||||
global $topics, $logFh, $devices, $included;
|
||||
$fn = $topic[1]; // get friendlyname
|
||||
logger(INFO, sprintf(_("Incoming notification of device %s => friendly name : %s"), $topic[0], $topic[1]), __FILE__ . ":" . __LINE__);
|
||||
$device = & $devices[$topic[0]];
|
||||
$payloadArray = json_decode($message->payload);
|
||||
|
||||
if (!isset($device[$fn]))
|
||||
global $logFh, $devices, $included;
|
||||
$topicName = $topic[0];
|
||||
$fn = $topic[1];
|
||||
logger(INFO, sprintf(_("Incoming notification of device %s => friendly name : %s"), $topicName, $fn), __FILE__ . ":" . __LINE__);
|
||||
$device = & $devices[$topicName];
|
||||
$payloadArray = json_decode($message->payload, true);
|
||||
// friendlyname
|
||||
if (!array_key_exists($fn, $device))
|
||||
{
|
||||
logger(WARNING, $logFh, _("init of ") . $fn, __FILE__ . ":" . __LINE__);
|
||||
$device[$fn] = array();
|
||||
$device[$fn]["device"] = new device;
|
||||
$device[$fn]["device"]->type = $payloadArray->type;
|
||||
$device[$fn]["device"]->ieeeAddress = $payloadArray->ieeeAddress;
|
||||
$device[$fn]["device"]->friendlyname = $fn;
|
||||
$indexDevices[$device[$fn]["device"]->ieeeAddress] = & $device[$fn]["device"];
|
||||
echo "initializing $fn";
|
||||
$device[$fn] = array("device" => new device);
|
||||
$device = &$device[$fn];
|
||||
$device["device"]->friendlyName = $payloadArray["friendly_name"];
|
||||
$device["device"]->ieeeAddress = $payloadArray["ieeeAddress"];
|
||||
$device["device"]->type = $payloadArray["type"];
|
||||
$device["device"]->topic = $topicName;
|
||||
$indexDevices[$device["device"]->ieeeAddress] = & $device["device"];
|
||||
$indexFriendlyNames[$fn] = & $device["device"];
|
||||
|
||||
}else
|
||||
{
|
||||
$device = &$device[$fn];
|
||||
}
|
||||
$device = & $device[$fn];
|
||||
unset($payloadArray["friendly_name"]);
|
||||
unset($payloadArray["ieeeAddress"]);
|
||||
unset($payloadArray["type"]);
|
||||
|
||||
foreach ($payloadArray as $property => $value)
|
||||
{
|
||||
$str = substr($property, -1);
|
||||
if ($str == "f")
|
||||
{
|
||||
$newProperty = rtrim($property, "f") . "c";
|
||||
$payloadArray->{$newProperty} = farenheit2celsius($value);
|
||||
$payloadArray[$newProperty] = farenheit2celsius($value);
|
||||
}elseif ($str == "h")
|
||||
{
|
||||
$newProperty = substr($property, 0, -3) . "kmh";
|
||||
$payloadArray->{$newProperty} = mph2kmh($value);
|
||||
$payloadArray[$newProperty] = mph2kmh($value);
|
||||
}
|
||||
if ($property == "baromin")
|
||||
{
|
||||
$newProperty = "barominmb";
|
||||
$payloadArray->{"barominmb"} = millibars($value);
|
||||
$payloadArray["barominmb"] = millibars($value);
|
||||
}
|
||||
}
|
||||
changeDevice($topic[0], $fn, $device["device"], $payloadArray);
|
||||
//$device = getDeviceByFriendlyname($topicName, $fn, $payloadArray, true);
|
||||
changeDevice($topicName, $fn, $device["device"], $payloadArray);
|
||||
}
|
||||
?>
|
||||
|
Reference in New Issue
Block a user