payload, true); if (!array_key_exists($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"]; //$indexDevices[$device["device"]->ieeeAddress] = & $device["device"]; //$indexFriendlyNames[$topicName][$fn] = & $device["device"]; mkIndexes(); }else { $device = &$device[$fn]; } unset($payloadArray["friendly_name"]); unset($payloadArray["ieeeAddress"]); unset($payloadArray["type"]); //$device = getDeviceByFriendlyname($topicName, $fn, $payloadArray, true); changeDevice($topicName, $friendlyName, $device["device"], $payloadArray); //print_r($device["device"]); } $topics["linky2mqtt"]->callback = "linky2mqttCallback"; ?>