RCI do command
Python
You can add callbacks to unhandled do_commands target via the rci Python module.
File System
The file_system commands are accessed via the do_command of an rci request.
ls
attributes: dir
Reports all files in a given directory
dir: the path in which to list available files
Example:
<rci_request version="1.1">
<do_command target="file_system">
<ls dir="/WEB/Python"/>
</do_command>
</rci_request>
returns
<rci_reply version="1.1">
<do_command target="file_system">
<ls dir="/WEB/Python">
<file name="Python.zip" size="144321"/>
<file name="digi_daq.zip" size="458980"/>
<file name="digi_daq.yml" size="5270"/>
<file name="digi_daq.py" size="6387"/>
<file name="zigbee.py" size="1147"/>
</ls>
</do_command>
</rci_reply>
get_file
attributes: name
returns the base 64 encoded raw data from a file in the file system denoted by the name attribute
name: name of the file including path
Example:
<rci_request version="1.1">
<do_command target="file_system">
<get_file name="/WEB/Python/Python.zip"/>
</do_command>
</rci_request>
returns
<rci_reply version="1.1">
<do_command target="file_system">
<get_file name="/WEB/Python/Python.zip">
<data>UEs...KYmwaR</data>
</get_file>
</do_command>
</rci_reply>
put_file
attributes: name
uploads a base 64 encoded file onto the device
name: path and destination filename for the file
Example:
<put_file name="/WEB/destination.txt">
<data>BASE64DATA</data>
</put_file>
rm
attributes: name
removes a given file
Example:
<rm name="/WEB/Python/somefile.py"/>
Zigbee
The zigbee rci command interacts with a xbee module.
ZigBee discover (<discover/>)
Optional attributes: start, size, clear
Returns back a list of discovered nodes, with the first indexed node being the node in the gateway.
- start: says the rci should return the nodes whose index is >= start. For some reason, if start > 1, the Gateway will return this list from cache, and not perform an actual discovery.
- size: Determines number of nodes to return
- option: If this is set to "clear", it forces a clearing of the device’s cache, and will always perform a discover to get fresh results
Example:
<do_command target="zigbee">
<discover start="1" size="10" option="clear"/>
</do_command>
ZigBee query setting (<query_setting/>)
Optional attributes: addr
Returns back a detailed list of settings for a given radio
addr: 64 bit address of the node to retrieve settings for. If omitted, defaults to gateway node
Example:
<do_command target="zigbee">
<query_setting addr="00:13:a2:00:40:34:0c:88!"/>
</do_command>
ZigBee query state (<query_state/>)
This is identical to query_setting, except it returns back different fields.
ZigBee set setting (<set_setting/>)
Optional attributes: addr
Basically the reverse of query_setting, so you can set settings for a particular node
addr: 64 bit address of node to set settings for. If omitted, defaults to gateway node
Example:
<do_command target="zigbee">
<set_setting addr="00:13:a2:00:40:34:0c:88!">
<radio>
<field1>value1</field1>
…
<fieldn>valuen</fieldn>
</radio>
</set_setting>
</do_command>
ZigBee firmware update (<fw_update/>)
Required attribute: file
Updates the firmware of the radio in the gateway
file: Path to a firmware file which must already exist on the gateway
Example:
<do_command target="zigbee">
<fw_update file="/WEB/firmware_file"/>
</do_command>
Zigbee firmware update of a remote XBee node (<fw_date/)
Required attribute: file
Required attribute: target
file: path to a firmware OTA file which must exist on the gateway
target: address of the remote XBee node
<do_command target="zigbee"> <fw_update file="/WEB/mesh/filename.ota" target="00:13:a2:00:ff:ff:ff:ff!" /> </do_command>
PDF
