The following are the RPC requests and responses added by the RPC_ERT_Config_Interface class and correspond to specification of the ERT Meter Configuration. These methods perform actions to configure and remove ERT Metering Device endpoints and track ERT Metering Device endpoints currently available on the network. Many requests defined by RPC_ERT_Config_Interface require source_endpoint_id, destination_endpoint_id, and destination_address parameters to configure and remove ERT Metering Device endpoints. If not provided, the interface will attempt to determine reasonable defaults for these parameters. The destination_address parameter will default to the local device and expected to be useful on the ERT/Ethernet Gateway. The source_endpoint_id and destination_endpoint_id will be looked up in device information tables maintained by the gateway. When not provided, defaulted parameter values will be indicated in the response.
Configures an ERT meter endpoint for a given ERT ID and ERT Type using the Configure ERT Meter Request command defined by the ERT Configuration Cluster (server). A new endpoint will be created if the ERT Meter is not already configured on the destination device. If already configured then the destination device will update the configuration. Generation of the configure_ert_meter_response will be stalled until the expected configuration is verified on the destination device and device information tables maintained by the gateway are updated or an error is detected.
Request Parameters
Parameter | Type | Description |
---|---|---|
destination_address | MAC | 64-bit extended address of the device to which the ERT command will be sent. If not provided, the command will be sent to the local device. |
source_endpoint_id | int | 8-bit identifier of the endpoint on the local device from which the ERT command will be sent. If not provided, defaults to an endpoint on the local device with a compatible cluster. |
destination_endpoint_id | int | 8-bit identifier of the endpoint on the destination device to which the ERT command will be sent. If not provided, defaults to an endpoint on the target device with a compatible cluster. |
record | ERTConfigurationRecord | Requested ERT Meter configuration. |
Response Parameters
Parameter | Type | Description |
---|---|---|
destination_address | MAC | 64-bit extended address of the device which sent the ERT response command. |
source_endpoint_id | int | 8-bit identifier of the endpoint on the destination device which sent the ERT response command. |
destination_endpoint_id | int | 8-bit identifier of the endpoint on the local device which received the ERT response command. |
record | ERTEndpointResponseRecord | Indicates endpoint on which the configured ERT Meter is hosted. |
verify_status | int | Success or failure of secondary verification of the requested ERT Meter configuration on target device. 0 if ERT meter verified successfully and gateway device information tables updated, 1 if a generic error occurred, 2 if a timeout occurred waiting to verify. |
Example
<configure_ert_meter synchronous="true">
<destination_address type="MAC">00:00:00:00:00:00:00:01</destination_address>
<source_endpoint_id>0x5E</source_endpoint_id>
<destination_endpoint_id>0x5E</destination_endpoint_id>
<record type="ERTConfigurationRecord">
<ert_type type="int">12</ert_type>
<ert_id type="int">123456789123</ert_id>
<unit_of_measure type="int">0x2</unit_of_measure>
<divisor type="int">0x1</divisor>
<summation_formatting type="int">0xB0</summation_formatting>
<multiplier type="int">0x2</multiplier>
<metering_device_type type="int">0x1</metering_device_type>
</record>
</configure_ert_meter>
<configure_ert_meter_response timestamp="1292453505.0">
<source_endpoint_id type="int">0x5E</source_endpoint_id>
<record type="ERTEndpointResponseRecord">
<ert_id type="int">0xBC614E</ert_id>
<ert_type type="int">0xC</ert_type>
<endpoint_id type="int">0x1</endpoint_id>
</record>
<verify_status type="int">0x0</verify_status>
<destination_endpoint_id type="int">0x5E</destination_endpoint_id>
<source_address type="MAC">00:00:00:00:00:00:00:01</source_address>
</configure_ert_meter_response>
Check if an ERT Meter is hosted on the destination device based on ERT Type and ERT ID using the Find ERT Meter Request command defined by the ERT Configuration Cluster (server). If found the response will indicate which endpoint is hosting the ERT Meter.
Request Parameters
Parameter | Type | Description |
---|---|---|
destination_address | MAC | 64-bit extended address of the device to which the ERT command will be sent. If not provided, the command will be sent to the local device. |
source_endpoint_id | int | 8-bit identifier of the endpoint on the local device from which the ERT command will be sent. If not provided, defaults to an endpoint on the local device with a compatible cluster. |
destination_endpoint_id | int | 8-bit identifier of the endpoint on the destination device to which the ERT command will be sent. If not provided, defaults to an endpoint on the target device with a compatible cluster. |
record | ERTAddressRecord | ERT meter to find. |
Response Parameters
Parameter | Type | Description |
---|---|---|
destination_address | MAC | 64-bit extended address of the device which sent the ERT response command. |
source_endpoint_id | int | 8-bit identifier of the endpoint on the destination device which sent the ERT response command. |
destination_endpoint_id | int | 8-bit identifier of the endpoint on the local device which received the ERT response command. |
record | ERTEndpointResponseRecord | ERT meter to find. |
Example
<find_ert_meter synchronous="true">
<destination_address type="MAC">00:00:00:00:00:00:00:01</destination_address>
<source_endpoint_id type="int">0x5E</source_endpoint_id>
<destination_endpoint_id type="int">0x5E</destination_endpoint_id>
<record type="ERTAddressRecord">
<ert_id type="int">12345678</ert_id>
<ert_type type="int">12</ert_type>
</record>
</find_ert_meter>
<find_ert_meter_response>
<source_endpoint_id type="int">0x5E</source_endpoint_id>
<destination_endpoint_id type="int">0x5E</destination_endpoint_id>
<source_address type="MAC">00:00:00:00:00:00:00:01</source_address>
<record type="ERTEndpointResponseRecord">
<ert_id type="int">0xBC614E</ert_id>
<ert_type type="int">0xC</ert_type>
<endpoint_id type="int">0x1</endpoint_id>
</record>
</find_ert_meter_response>
Remove a hosted ERT Meter from the destination device based on ERT Type and ERT ID using the Remove ERT Meter Request command defined by the ERT Configuration Cluster (server). Generation of the response will be stalled until the meter’s removal is verified on the destination device and device information tables maintained by the gateway are updated or an error is detected.
Request Parameters
Parameter | Type | Description |
---|---|---|
destination_address | MAC | 64-bit extended address of the device to which the ERT command will be sent. If not provided, the command will be sent to the local device. |
source_endpoint_id | int | 8-bit identifier of the endpoint on the local device from which the ERT command will be sent. If not provided, defaults to an endpoint on the local device with a compatible cluster. |
destination_endpoint_id | int | 8-bit identifier of the endpoint on the destination device to which the ERT command will be sent. If not provided, defaults to an endpoint on the target device with a compatible cluster. |
record | ERTAddressRecord | ERT meter to remove. |
Response Parameters
Parameter | Type | Description |
---|---|---|
destination_address | MAC | 64-bit extended address of the device which sent the ERT response command. |
source_endpoint_id | int | 8-bit identifier of the endpoint on the destination device which sent the ERT response command. |
destination_endpoint_id | int | 8-bit identifier of the endpoint on the local device which received the ERT response command. |
verify_status | int | Success or failure of secondary verification of the requested ERT Meter removal on target device. 0 if ERT meter verified successfully and gateway device information tables updated, 1 if a generic error occurred, 2 if a timeout occurred waiting to verify. |
Example
<remove_ert_meter synchronous="true">
<destination_address type="MAC">00:00:00:00:00:00:00:01</destination_address>
<source_endpoint_id>0x5E</source_endpoint_id>
<destination_endpoint_id>0x5E</destination_endpoint_id>
<record type="ERTAddressRecord">
<ert_type type="int">12</ert_type>
<ert_id type="int">12345678</ert_id>
</record>
</remove_ert_meter>
<remove_ert_meter_response>
<source_endpoint_id type="int">0x5E</source_endpoint_id>
<record type="ERTAddressRecord">
<ert_id type="int">0xBC614E</ert_id>
<ert_type type="int">0xC</ert_type>
</record>
<verify_status type="int">0x0</verify_status>
<destination_endpoint_id type="int">0x5E</destination_endpoint_id>
<source_address type="MAC">00:00:00:00:00:00:00:01</source_address>
</remove_ert_meter_response>
Removes all hosted ERT Meters from the destination device using the Remove All ERT Meters command defined by the ERT Configuration Cluster (server). Generation of the response will be stalled until each meter’s removal is verified on the destination device and device information tables maintained by the gateway are updated or an error is detected.
Request Parameters
Parameter | Type | Description |
---|---|---|
destination_address | MAC | 64-bit extended address of the device to which the ERT command will be sent. If not provided, the command will be sent to the local device. |
source_endpoint_id | int | 8-bit identifier of the endpoint on the local device from which the ERT command will be sent. If not provided, defaults to an endpoint on the local device with a compatible cluster. |
destination_endpoint_id | int | 8-bit identifier of the endpoint on the destination device to which the ERT command will be sent. If not provided, defaults to an endpoint on the target device with a compatible cluster. |
Response Parameters
Parameter | Type | Description |
---|---|---|
destination_address | MAC | 64-bit extended address of the device which sent the ERT response command. |
source_endpoint_id | int | 8-bit identifier of the endpoint on the destination device which sent the ERT response command. |
destination_endpoint_id | int | 8-bit identifier of the endpoint on the local device which received the ERT response command. |
verify_status | int | Success or failure of secondary verification of the requested ERT Meter removal on target device. 0 if ERT meter verified successfully and gateway device information tables updated, 1 if a generic error occurred, 2 if a timeout occurred waiting to verify. |
Example
<remove_all_ert_meters synchronous="true">
<destination_address type="MAC">00:00:00:00:00:00:00:01</destination_address>
<source_endpoint_id>0x5E</source_endpoint_id>
<destination_endpoint_id>0x5E</destination_endpoint_id>
</remove_all_ert_meters>
<remove_all_ert_meters_response>
<source_endpoint_id type="int">0x5E</source_endpoint_id>
<destination_endpoint_id type="int">0x5E</destination_endpoint_id>
<source_address type="MAC">00:00:00:00:00:00:00:01</source_address>
<verify_status type="int">0x0</verify_status>
</remove_all_ert_meters_response>
Gets cached ERT Meter device information tables maintained by the gateway. These tables indicate which devices on the network have ERT Configuration Clusters and for those devices what ERT meters are currently configured.
Request Parameters
None
Response Parameters
Parameter | Type | Description |
---|---|---|
record_list | list | A list of records of type ERTDeviceRecord. Each record corresponds to a device on the network with an ERT Configuration Cluster server. |
Example
<get_ert_meters synchronous="true">
</get_ert_meters>
<get_ert_meters_response>
<record_list type="list">
<item type="ERTDeviceRecord">
<addr_extended type="MAC">00:00:00:00:00:00:00:01</addr_extended>
<ert_config_endpoint type="int">0x5E</ert_config_endpoint>
<ert_meters type="dict">
<endpoint_0x02 type="ERTConfigurationRecord">
<ert_id type="int">0x165EC15</ert_id>
<unit_of_measure type="int">0x2</unit_of_measure>
<divisor type="int">0x1</divisor>
<ert_type type="int">0xC</ert_type>
<summation_formatting type="int">0xB0</summation_formatting>
<multiplier type="int">0x4</multiplier>
<metering_device_type type="int">0x1</metering_device_type>
</endpoint_0x02>
<endpoint_0x01 type="ERTConfigurationRecord">
<ert_id type="int">0xBC614E</ert_id>
<unit_of_measure type="int">0x2</unit_of_measure>
<divisor type="int">0x1</divisor>
<ert_type type="int">0xC</ert_type>
<summation_formatting type="int">0xB0</summation_formatting>
<multiplier type="int">0x2</multiplier>
<metering_device_type type="int">0x1</metering_device_type>
</endpoint_0x01>
</ert_meters>
</item>
</record_list>
</get_ert_meters_response>
Initiates a new discovery to refresh cached ERT Meter device information tables maintained by the gateway.
Request Parameters
Parameter | Type | Description |
---|---|---|
full_refresh* | bool | If TRUE, clears cached device information tables before initiating discovery. If FALSE, overlays new device information into the existing tables. Defaults to FALSE. |
Response Parameters
Parameter | Type | Description |
---|---|---|
full_refresh | bool | If TRUE, cleared cached device information tables before initiating discovery. If FALSE, overlayed new device information into the existing tables. |
Example
<refresh_ert_meters synchronous="true">
</refresh_ert_meters>
<refresh_ert_meters_response>
<full_refresh type="bool">FALSE</full_refresh>
</refresh_ert_meters_response>