";
}
fwrite($spawn, $response);
break;
case "set":
logger(DEBUG, _("SET reached"), __FILE__ . ":" . __LINE__);
$response = "";
fwrite($spawn, $response);
break;
case "dump":
case "print":
logger(DEBUG, $command . _(" reached"), __FILE__ . ":" . __LINE__);
$var = $GLOBALS[$argList["object"]];
if (isset($argList["topic"]))
{
$topic = $argList["topic"];
}
if (isset($argList["address"]))
{
$var = $var[$argList["address"]];
}elseif (isset($argList["fn"]))
{
if(!empty($topic))
{
$var = getDevice($topic, $argList["fn"]);
}else
{
$str = _("topic is not defining: add &topic=\nThese topics are availables: ");
foreach($topics as $key => $value)
{
$str .= $key . EOL;
}
logger(ERROR, $str, __FILE__ . ":" . __LINE__);
}
}
$error = error_get_last();
if($error !== null)
{
$response = "" . $error["message"] . " file: " . $error["file"] . " line: " . $error["line"] . "";
}
if ($command === "print")
{
$response = print_r($var, true);
}elseif($command === "dump")
{
$response = "Dump" . EOL;
$response .= var_export($var, true);
}
fwrite($spawn, $response);
break;
case "notify":
if (!array_key_exists("topic", $argList) or !array_key_exists("fn", $argList) or !array_key_exists("property", $argList) or !array_key_exists("condition", $argList) or !array_key_exists("value", $argList))
{
fwrite($spawn, _("Error: With 'notify' command, you need 4 parameters: topic, fn, property, condition, value"));
}else
{
$monitored[] = new watch($argList["topic"], $argList["fn"], $argList["property"], $argList["condition"], $argList["value"]);
}
break;
default:
logger(DEBUG, _("unknown command"), __FILE__ . ":" . __LINE__);
fwrite($spawn, _("unknown command"));
}
}
}
}
}
}
?>