26#ifndef ZIGPC_GATEWAY_NOTIFY_H
27#define ZIGPC_GATEWAY_NOTIFY_H
uint32_t sl_status_t
Definition: sl_status.h:139
void(* zigpc_observer_callback_t)(void *data)
Observer callback that is called by subjects when notifying observers of new events.
Definition: zigpc_common_observable.h:136
uint16_t zigbee_panid_t
Zigbee Network PAN ID.
Definition: zigpc_common_zigbee.h:212
uint8_t zigbee_eui64_t[ZIGBEE_EUI64_SIZE]
Zigbee Device EUI64 ID.
Definition: zigpc_common_zigbee.h:193
uint8_t zigbee_radio_channel_t
Zigbee Network Radio Channel.
Definition: zigpc_common_zigbee.h:224
uint16_t zcl_cluster_id_t
A representation of the endpoint cluster id used in ZCL.
Definition: zigpc_common_zigbee.h:254
uint8_t zigbee_ext_panid_t[ZIGBEE_EXTENDED_PAN_ID_SIZE]
Zigbee Network Extended PAN ID.
Definition: zigpc_common_zigbee.h:218
uint8_t zigbee_endpoint_id_t
A representation of the endpoint id used on the Zigbee protocol.
Definition: zigpc_common_zigbee.h:248
uint8_t zcl_command_id_t
Definition: zigpc_common_zigbee.h:265
struct zigpc_gateway_on_network_init zigpc_gateway_on_network_init_t
Event data passed after successful Gateway network initialization.
sl_status_t zigpc_gateway_register_observer(enum zigpc_gateway_notify_event event, zigpc_observer_callback_t callback)
Register an observer to be informed of ZigbeeHost updates. If the observer is already registered,...
Definition: zigpc_gateway_notify.c:32
zigpc_gateway_notify_event
The following are the types of events dispatched to observers of zigpc_gateway.
Definition: zigpc_gateway_notify.h:45
struct zigpc_gateway_on_node_add zigpc_gateway_on_node_add_t
Event data passed after successful node addition to the Gateway network.
sl_status_t zigpc_gateway_unregister_observer(enum zigpc_gateway_notify_event event, zigpc_observer_callback_t callback)
Unregister an observer from ZigbeeHost updates. If the observer is not found, nothing will be done.
Definition: zigpc_gateway_notify.c:38
@ ZIGPC_GATEWAY_NOTIFY_NETWORK_INIT
Used when informing that the Gateway network has initialized. Users should wait for this event before...
Definition: zigpc_gateway_notify.h:54
@ ZIGPC_GATEWAY_NOTIFY_NODE_DISCOVERED
Used when informing that a node on the Gateway network has been interviewed for the number of endpoin...
Definition: zigpc_gateway_notify.h:80
@ ZIGPC_GATEWAY_NOTIFY_NODE_ENDPOINT_DISCOVERED
Used when informing that a node on the Gateway network has been interviewed for cluster information f...
Definition: zigpc_gateway_notify.h:92
@ ZIGPC_GATEWAY_NOTIFY_NODE_ADD_START
Used when informing that a node has been added to the Gateway network. See zigpc_gateway_on_node_add ...
Definition: zigpc_gateway_notify.h:61
@ ZIGPC_GATEWAY_NOTIFY_BIND_UNBIND_RESPONSE
Definition: zigpc_gateway_notify.h:140
@ ZIGPC_GATEWAY_NOTIFY_ZCL_COMMAND_RECEIVED
Used when a node on the Gateway has received a ZCL command frame from a node on the network....
Definition: zigpc_gateway_notify.h:124
@ ZIGPC_GATEWAY_NOTIFY_OTA_UPDATE_COMPLETED
Used when a device has complete an OTA update. see zigpc_gateway_on_ota_completed_t for associated da...
Definition: zigpc_gateway_notify.h:138
@ ZIGPC_GATEWAY_NOTIFY_REPORTED_ATTRIBUTE
Used when an a device endpoint has sent a cluster attribute report. See zigpc_gateway_on_attribute_re...
Definition: zigpc_gateway_notify.h:99
@ ZIGPC_GATEWAY_NOTIFY_MAX
Definition: zigpc_gateway_notify.h:142
@ ZIGPC_GATEWAY_NOTIFY_OTA_UPDATE_STARTED
Used when a device has started an OTA update process. see zigpc_gateway_on_ota_started_t for associat...
Definition: zigpc_gateway_notify.h:131
@ ZIGPC_GATEWAY_NOTIFY_NODE_ADD_COMPLETE
Definition: zigpc_gateway_notify.h:62
@ ZIGPC_GATEWAY_NOTIFY_READ_ATTRIBUTE_RESPONSE
Used when informing that a node on the Gateway network has sent a ZCL global read attribute response ...
Definition: zigpc_gateway_notify.h:108
@ ZIGPC_GATEWAY_NOTIFY_CONFIGURE_REPORTING_RESPONSE
Used when handling a configure reporting response. The protocol controller sends out a configure repo...
Definition: zigpc_gateway_notify.h:116
@ ZIGPC_GATEWAY_NOTIFY_NODE_REMOVED
Used when informing that a node on the Gateway network has been removed. See zigpc_gateway_on_node_re...
Definition: zigpc_gateway_notify.h:69
zigpc_zcl_status_t
ZCL status types.
Definition: zcl_definitions.h:116
Definition: zigpc_common_zigbee.h:293
Definition: zigpc_common_zigbee.h:380
a model for a zigbee ZCL endpoint
Definition: zigpc_common_zigbee.h:362
Definition: zigpc_gateway_notify.h:195
zigbee_endpoint_id_t endpoint_id
Definition: zigpc_gateway_notify.h:197
zcl_frame_t frame
Definition: zigpc_gateway_notify.h:199
zcl_cluster_id_t cluster_id
Definition: zigpc_gateway_notify.h:198
zigbee_eui64_t eui64
Definition: zigpc_gateway_notify.h:196
Definition: zigpc_gateway_notify.h:255
bool is_bind_response
Definition: zigpc_gateway_notify.h:257
zigbee_binding_t binding
Definition: zigpc_gateway_notify.h:256
uint8_t zdo_status
Definition: zigpc_gateway_notify.h:258
Event data passed when receiving a ZCL cluster command payload from a device on the network.
Definition: zigpc_gateway_notify.h:219
zcl_command_id_t command_id
Definition: zigpc_gateway_notify.h:223
zcl_frame_t frame
Definition: zigpc_gateway_notify.h:227
size_t frame_payload_offset
Definition: zigpc_gateway_notify.h:225
bool from_server_to_client
Definition: zigpc_gateway_notify.h:224
zigpc_zcl_status_t return_status
Definition: zigpc_gateway_notify.h:226
zigbee_eui64_t eui64
Definition: zigpc_gateway_notify.h:220
zcl_cluster_id_t cluster_id
Definition: zigpc_gateway_notify.h:222
zigbee_endpoint_id_t endpoint_id
Definition: zigpc_gateway_notify.h:221
Event data passed after successful Gateway network initialization.
Definition: zigpc_gateway_notify.h:149
zigbee_endpoint_id_t zigpc_endpoint_id
Definition: zigpc_gateway_notify.h:151
zigbee_radio_channel_t zigpc_radio_channel
Definition: zigpc_gateway_notify.h:154
zigbee_ext_panid_t zigpc_ext_panid
Definition: zigpc_gateway_notify.h:153
zigbee_eui64_t zigpc_eui64
Definition: zigpc_gateway_notify.h:150
zigbee_panid_t zigpc_panid
Definition: zigpc_gateway_notify.h:152
Event data passed after successful node addition to the Gateway network.
Definition: zigpc_gateway_notify.h:162
zigbee_eui64_t eui64
Definition: zigpc_gateway_notify.h:163
Event data passed when receiving count of endpoint discovery events to wait for a particular node on ...
Definition: zigpc_gateway_notify.h:179
zigbee_eui64_t eui64
Definition: zigpc_gateway_notify.h:180
uint8_t endpoint_count
Definition: zigpc_gateway_notify.h:181
zigbee_endpoint_id_t * endpoint_list
Definition: zigpc_gateway_notify.h:182
Event data passed when receiving cluster information for a probed endpoint in a node on the network.
Definition: zigpc_gateway_notify.h:190
zigbee_eui64_t eui64
Definition: zigpc_gateway_notify.h:191
zigbee_endpoint_t endpoint
Definition: zigpc_gateway_notify.h:192
Event data passed when receiving node removal complete event.
Definition: zigpc_gateway_notify.h:170
zigbee_eui64_t eui64
Definition: zigpc_gateway_notify.h:171
Event data passed when receiving an OTA update complete message for a device.
Definition: zigpc_gateway_notify.h:247
zigpc_zcl_status_t status
Definition: zigpc_gateway_notify.h:252
uint16_t image_type_id
Definition: zigpc_gateway_notify.h:250
uint16_t manufacturer_id
Definition: zigpc_gateway_notify.h:249
zigbee_eui64_t eui64
Definition: zigpc_gateway_notify.h:248
uint32_t firmware_version
Definition: zigpc_gateway_notify.h:251
Event data passed when receiving an OTA update started message for a device.
Definition: zigpc_gateway_notify.h:235
uint16_t image_type_id
Definition: zigpc_gateway_notify.h:238
zigbee_eui64_t eui64
Definition: zigpc_gateway_notify.h:236
uint16_t manufacturer_id
Definition: zigpc_gateway_notify.h:237
uint32_t firmware_version
Definition: zigpc_gateway_notify.h:239
Event data passed when receiving a ZCL global read attributes response from a device on the network.
Definition: zigpc_gateway_notify.h:207
zigbee_endpoint_id_t endpoint_id
Definition: zigpc_gateway_notify.h:209
zigbee_eui64_t eui64
Definition: zigpc_gateway_notify.h:208
zcl_cluster_id_t cluster_id
Definition: zigpc_gateway_notify.h:210
zcl_frame_t frame
Definition: zigpc_gateway_notify.h:211