Zigbee Protocol Controller 1.6.0
zigpc_ucl.hpp File Reference
#include <string>
#include <sl_status.h>
#include <zigpc_common_zigbee.h>

Go to the source code of this file.

Classes

struct  zigpc_ucl::mqtt::topic_data_t
 Data that is used to build UCL topics. More...
 

Namespaces

namespace  zigpc_ucl
 UCL topic and payload manipulators in the Zigbee Protocol Controller.
 
namespace  zigpc_ucl::mqtt
 UCL utility functions available to build and parse MQTT topics and payloads.
 
namespace  zigpc_ucl::node_state
 

Enumerations

enum class  zigpc_ucl::mqtt::topic_type_t {
  zigpc_ucl::mqtt::BY_UNID_PC_NWMGMT , zigpc_ucl::mqtt::BY_UNID_PC_NWMGMT_WRITE , zigpc_ucl::mqtt::BY_UNID_NODE_STATE , zigpc_ucl::mqtt::BY_UNID_NODE ,
  zigpc_ucl::mqtt::BY_UNID_NODE_EP
}
 Types of specific UCL topics that can be build along with variables passed via mqtt::topic_data_t. More...
 

Functions

sl_status_t zigpc_ucl::mqtt::build_topic (zigpc_ucl::mqtt::topic_type_t topic_type, zigpc_ucl::mqtt::topic_data_t topic_data, std::string &topic)
 Populate the topic string based on the topic type and data passed in. More...
 
sl_status_t zigpc_ucl::mqtt::parse_unid (std::string unid, zigbee_eui64_uint_t &eui64)
 Parse a UCL UNID into Zigbee device identifier. More...
 
sl_status_t zigpc_ucl::mqtt::parse_endpoint (std::string endpoint_str, zigbee_endpoint_id_t &endpoint)
 
sl_status_t zigpc_ucl::mqtt::parse_topic_eui64 (const std::string topic, zigbee_eui64_uint_t &eui64)
 
sl_status_t zigpc_ucl::mqtt::parse_topic_endpoint (const std::string topic, zigbee_endpoint_id_t &endpoint)
 
sl_status_t zigpc_ucl::mqtt::parse_topic_cluster (const std::string topic, std::string &cluster_name)
 
sl_status_t zigpc_ucl::mqtt::parse_binding (const std::string topic, const std::string payload, zigbee_eui64_uint_t &source_eui64, zigbee_endpoint_id_t &source_ep, std::string &cluster_name, zigbee_eui64_uint_t &dest_eui64, zigbee_endpoint_id_t &dest_ep)
 
std::string zigpc_ucl::mqtt::build_unid (zigbee_eui64_uint_t eui64)
 Build a UCL UNID based on the Zigbee device identifier. More...
 
sl_status_t zigpc_ucl::mqtt::publish_supported_generated (zigbee_eui64_uint_t eui64, zigbee_endpoint_id_t endpoint_id)
 
sl_status_t zigpc_ucl::node_state::publish_state (zigbee_eui64_uint_t eui64, zigbee_node_network_status_t network_status, uint32_t max_cmd_delay)
 Update the device status with the parameters provided. This handler will publish the updated device state on MQTT. More...
 
sl_status_t zigpc_ucl::node_state::remove_node_topics (zigbee_eui64_uint_t eui64)
 Unretain all topic for a particular device. More...
 
void zigpc_ucl::node_state::cleanup_all_node_topics (void)
 Unretain all node topics except the node state topic. More...