Internal API for attribute management functionality.
More...
|
sl_status_t | zigpc_attrmgmt_build_configure_report_records (zcl_cluster_id_t cluster_id, std::vector< zigpc_zcl_configure_reporting_record_t > &record_list) |
| Build list of ZCL Configure Report Records for a given cluster. More...
|
|
sl_status_t | zigpc_attrmgmt_send_split_report_config_cmds (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, zcl_cluster_id_t cluster_id, const std::vector< zigpc_zcl_configure_reporting_record_t > &records) |
| Split a list of Attribute Report Configuration records into sets of ZIGPC_ATTRMGMT_REPORT_RECORDS_LIMIT_PER_MESSAGE sized messages (if needed) and deliver the configuration records to the destination endpoint. This is useful when configuring reports for a cluster that exceed the maximum ZCL packet size. More...
|
|
sl_status_t | zigpc_attrmgmt_send_split_read_cmds (const zigbee_eui64_t eui64, zigbee_endpoint_id_t endpoint_id, zcl_cluster_id_t cluster_id, const std::vector< zcl_attribute_id_t > &attr_ids) |
| Split a list of Attribute Read records into sets of ZIGPC_ATTRMGMT_READ_RECORDS_LIMIT_PER_MESSAGE sized ZCL frames (if needed) and send each ZCL frame to the destination endpoint. The splitting of the attribute read records allow frames to not exceed the maximum ZCL packet size. More...
|
|
sl_status_t | zigpc_attrmgmt_get_next_poll_entry (zigbee_eui64_uint_t &eui64, zigbee_endpoint_id_t &endpoint_id, zcl_cluster_id_t &cluster_id) |
| zigpc_attrmgmt_get_next_poll_entry Get the next poll entry to be sent More...
|
|
sl_status_t | zigpc_attrmgmt_buffer_to_configure_status (const configure_response_buffer_t buffer, zigpc_attrmgmt_configure_status_record_t &record) |
| zigpc_attrmgmt_buffer_to_configure_status Extract a configure report status record from a buffer of 4 bytes More...
|
|
sl_status_t | zigpc_attrmgmt_buffer_to_configure_status_list (const uint8_t *buffer, size_t buffer_len, std::list< zigpc_attrmgmt_configure_status_record_t > &record_list) |
| zigpc_attrmgmt_buffer_to_configure_status_list Extracts a series of records from a buffer of bytes More...
|
|
Internal API for attribute management functionality.
◆ configure_response_buffer_t
◆ zigpc_attrmgmt_buffer_to_configure_status()
zigpc_attrmgmt_buffer_to_configure_status Extract a configure report status record from a buffer of 4 bytes
- Parameters
-
buffer | 4-byte buffer where the record is stored |
record | destination reference to copy record |
- Returns
- SL_STATUS_OK if the operation could complete
◆ zigpc_attrmgmt_buffer_to_configure_status_list()
zigpc_attrmgmt_buffer_to_configure_status_list Extracts a series of records from a buffer of bytes
- Parameters
-
buffer | buffer of bytes containing configure status records |
buffer_len | the length of the above buffer |
record_list | the reference to the list to store the records |
- Returns
- SL_STATUS_OK if the buffer could be properly read
◆ zigpc_attrmgmt_build_configure_report_records()
sl_status_t zigpc_attrmgmt_build_configure_report_records |
( |
zcl_cluster_id_t |
cluster_id, |
|
|
std::vector< zigpc_zcl_configure_reporting_record_t > & |
record_list |
|
) |
| |
Build list of ZCL Configure Report Records for a given cluster.
- Parameters
-
cluster_id | ZCL Cluster ID |
record_list | Configure Reporting List to populate |
- Returns
- sl_status_t SL_STATUS_OK if reportable attribute records were populated, if not SL_STATUS_NOT_SUPPORTED is returned
◆ zigpc_attrmgmt_get_next_poll_entry()
zigpc_attrmgmt_get_next_poll_entry Get the next poll entry to be sent
- Parameters
-
eui64 | reference to store eui64 of next entry |
endpoint_id | reference to store endpoint of next entry |
cluster_id | reference to store cluster of next entry |
- Returns
- SL_STATUS_OK if the information could be retrieved. SL_STATUS_EMPTY if no entries in the poll list, SL_STATUS_FAIL if some other error occurred
◆ zigpc_attrmgmt_send_split_read_cmds()
Split a list of Attribute Read records into sets of ZIGPC_ATTRMGMT_READ_RECORDS_LIMIT_PER_MESSAGE sized ZCL frames (if needed) and send each ZCL frame to the destination endpoint. The splitting of the attribute read records allow frames to not exceed the maximum ZCL packet size.
- Parameters
-
eui64 | Targetted Zigbee device . |
endpoint_id | Targetted endpoint in device. |
cluster_id | Targetted ZCL cluster in endpoint. |
attr_ids | List of attribute IDs to read (and split if needed) |
- Returns
- sl_status_t SL_STATUS_OK if the split and send operations are successful, SL_STATUS_NULL_POINTER if invalid arguments passed in, or another error if the zigpc_gateway send process fails.
◆ zigpc_attrmgmt_send_split_report_config_cmds()
Split a list of Attribute Report Configuration records into sets of ZIGPC_ATTRMGMT_REPORT_RECORDS_LIMIT_PER_MESSAGE sized messages (if needed) and deliver the configuration records to the destination endpoint. This is useful when configuring reports for a cluster that exceed the maximum ZCL packet size.
- Parameters
-
eui64 | Targetted Zigbee device . |
endpoint_id | Targetted endpoint in device. |
cluster_id | Targetted ZCL cluster in endpoint. |
record_list | Full list of attribute report records to split if needed. |
- Returns
- sl_status_t SL_STATUS_OK if the split and send operations are successful, SL_STATUS_NULL_POINTER if invalid arguments passed in, or another error if the zigpc_gateway send process fails.
◆ ZCL_CONFIGURE_STATUS_RESPONSE_SIZE
const unsigned int ZCL_CONFIGURE_STATUS_RESPONSE_SIZE = 4 |
|
static |