control
Set a field value or output status
Description
https://api.eze.io/v1/control/{serial}/{command}/[additional commands]
Directly control a field value or output status of a controller. Note that this command will generate traffic to the controller, and is therefore rate limited to avoid excessive traffic. The field has to be set as “Writable”.
The immediate return data is a confirmation from the servers that the command was accepted. It is not an acknowledgement that the command(s) were actually received or executed on the controller.
If the API key is set up with a callback URI, a separate message will be sent to this URI when the command has been confirmed by the controller. See below for the format of the return messages.
Parameters
serial | ezeio serial number (XYZ123) |
command | Command. See below |
Possible commands:
To set the value of a field: field[FIELDNO]=value
https://api.eze.io/v1/control/XYZ987/field[12]=4711
To set the state of a register: register[DEVICENO,REGISTERNO]=value
https://api.eze.io/v1/control/XYZ987/register[2,34]=56
To set the state of an output, bypassing logic: output[OUTPUTNO]=value
https://api.eze.io/v1/control/XYZ987/output[2]=100
Multiple commands can be used in the same call.
Example usage
Set the value of two fields:
https://api.eze.io/v1/control/XYZ987/field[12]=888/field[5]=999
Return value
JSON formatted data
(below examples have whitespaces added for readability)
The immediate server reply (acknowledging receipt of the command on the servers):
{ "reqtime":"2019-06-16T19:50:18Z", "actions":[ "Set field 12 to 888", "Set field 5 to 999", "Callback URI: https://mydomain.com/mycallbackscript.php" ], "status":"OK", "exec_time":0.011375188827514648 }
The callback message from the controller, acknowledging processing of the command:
{ "apikeyid":10009, "subject":"CONTROL_ACK", "time":"2019-06-16T19:45:52Z", "meta":{ "serial":"XYS-987", "group":2, "accountgroupid":0, "name":"Test controller in lab", "note":"Here is a note", "tzofs":"0" }, "adc":{ "1":2, "2":2, "3":7, "4":2, "5":2, "6":2, "7":2, "8":29977, "Vin":12213, "Vbat":12090, "V5":5106 }, "out":{ "1":0, "2":0, "3":0, "4":0 }, "pos":{ "x":38677889, "y":-121174896, "z":0, "signal":-1 }, "fields":{ "1":{ "name":"Uptime", "unit":"s", "assettag":"uptime", "value":1102790 }, "2":{ "name":"Temp (C)", "unit":"°C", "assettag":"temp", "value":26.6 }, "3":{ "name":"Temp (F)", "unit":"°F", "assettag":"", "value":79.879997 } } }