Warehouse project/fix
This commit is contained in:
@@ -243,10 +243,27 @@ class GenieACS {
|
||||
* @throws Exception
|
||||
*/
|
||||
public function setParameterValues($deviceId, $parameterValues) {
|
||||
// Convert associative array to GenieACS format: [["paramName", value, "type"], ...]
|
||||
$formattedParams = [];
|
||||
foreach ($parameterValues as $name => $value) {
|
||||
// Determine XSD type based on value type
|
||||
$xsdType = 'xsd:string'; // default
|
||||
if (is_bool($value)) {
|
||||
$xsdType = 'xsd:boolean';
|
||||
$value = $value ? true : false; // ensure proper boolean
|
||||
} elseif (is_int($value)) {
|
||||
$xsdType = 'xsd:int';
|
||||
} elseif (is_float($value)) {
|
||||
$xsdType = 'xsd:double';
|
||||
}
|
||||
|
||||
$formattedParams[] = [$name, $value, $xsdType];
|
||||
}
|
||||
|
||||
$tasks = [
|
||||
[
|
||||
"name" => "setParameterValues",
|
||||
"parameterValues" => $parameterValues
|
||||
"parameterValues" => $formattedParams
|
||||
]
|
||||
];
|
||||
return $this->createTask($deviceId, $tasks);
|
||||
|
||||
Reference in New Issue
Block a user