Zigbee Protocol Controller 1.6.0
zigpc_controller_int.hpp
Go to the documentation of this file.
1/*******************************************************************************
2 * # License
3 * <b>Copyright 2021 Silicon Laboratories Inc. www.silabs.com</b>
4 *******************************************************************************
5 *
6 * The licensor of this software is Silicon Laboratories Inc. Your use of this
7 * software is governed by the terms of Silicon Labs Master Software License
8 * Agreement (MSLA) available at
9 * www.silabs.com/about-us/legal/master-software-license-agreement. This
10 * software is distributed to you in Source Code format and is governed by the
11 * sections of the MSLA applicable to Source Code.
12 *
13 ******************************************************************************/
14
15#ifndef ZIGPC_CONTROLLER_INT_HPP
16#define ZIGPC_CONTROLLER_INT_HPP
17
18#include <vector>
19
20// ZigPC includes
21#include <zigpc_discovery.h>
22#include <zigpc_common_zigbee.h>
23
24namespace zigpc_ctrl
25{
26constexpr char LOG_TAG[] = "zigpc_ctrl";
27
38
48
59
76 bool configure_endpoint);
77
90
103 const zigbee_eui64_t eui64,
104 const std::vector<zigbee_endpoint_id_t> &endpoint_list);
105
119
127 zigpc_discovery_status discovery_status);
128
135void on_startup(void);
136
143void on_shutdown(void);
144
145
146} // namespace zigpc_ctrl
147
148#endif // ZIGPC_CONTROLLER_INT_HPP
uint32_t sl_status_t
Definition: sl_status.h:139
uint8_t zigbee_eui64_t[ZIGBEE_EUI64_SIZE]
Zigbee Device EUI64 ID.
Definition: zigpc_common_zigbee.h:193
uint64_t zigbee_eui64_uint_t
Zigbee Device Identifier (stored as integer)
Definition: zigpc_common_zigbee.h:199
uint8_t zigbee_endpoint_id_t
A representation of the endpoint id used on the Zigbee protocol.
Definition: zigpc_common_zigbee.h:248
zigpc_discovery_status
Discovery status types possible for a device being discovered.
Definition: zigpc_discovery.h:98
Definition: zigpc_controller_int.hpp:25
void on_shutdown(void)
Event handler for when ZigPC is shutting down. This handler will update all device states to "Offline...
void zigpc_discovery_update_callback(zigbee_eui64_uint_t eui64, zigpc_discovery_status discovery_status)
Callback handler for ZigPC device discovery updates.
constexpr char LOG_TAG[]
Definition: zigpc_controller_int.hpp:26
sl_status_t on_device_interviewed(const zigbee_eui64_t eui64, bool configure_endpoint)
Event handled when a device is included on the network. This function will setup endpoint based confi...
sl_status_t update_endpoint_capabilities(const zigbee_eui64_t eui64, zigbee_endpoint_id_t ep_id)
Update endpoint capabilities for a device. This function will update the cluster capabilities and con...
sl_status_t update_device_capabilities(const zigbee_eui64_t eui64, const std::vector< zigbee_endpoint_id_t > &endpoint_list)
Update device capabilities. This function will update the active endpoints published to MQTT.
sl_status_t perform_endpoint_configuration(const zigbee_eui64_t eui64, zigbee_endpoint_id_t ep_id)
Configure endpoint under a device. This function will setup bindings and configure attribute reportin...
sl_status_t on_device_interview_failed(const zigbee_eui64_t eui64)
Event handled when a device fails to interview on the network. This function will update the node sta...
void on_startup(void)
Event handler called when ZigPC is initializing. This handler will update all device states to "Onlin...
sl_status_t on_device_announce(const zigbee_eui64_t eui64)
Event handler when a device has joined the network and has not been interviewed. This function will s...
sl_status_t on_device_leave(const zigbee_eui64_t eui64)
Event handler when a device has left the network. process.