Unify Framework Lib 1.6.0
unify_dotdot_attribute_store.h
Go to the documentation of this file.
1/******************************************************************************
2 * # License
3 * <b>Copyright 2022 Silicon Laboratories Inc. www.silabs.com</b>
4 ******************************************************************************
5 * The licensor of this software is Silicon Laboratories Inc. Your use of this
6 * software is governed by the terms of Silicon Labs Master Software License
7 * Agreement (MSLA) available at
8 * www.silabs.com/about-us/legal/master-software-license-agreement. This
9 * software is distributed to you in Source Code format and is governed by the
10 * sections of the MSLA applicable to Source Code.
11 *
12 *****************************************************************************/
13
30#ifndef UNIFY_DOTDOT_ATTRIBUTE_STORE_H
31#define UNIFY_DOTDOT_ATTRIBUTE_STORE_H
32
33#include "sl_status.h"
34#include "attribute_store.h"
35#include "uic_typedefs.h"
36
42 const dotdot_unid_t unid, dotdot_endpoint_id_t endpoint_id);
43
49 attribute_store_node_t node, char *unid, dotdot_endpoint_id_t *endpoint_id);
50
56 attribute_store_node_t node, char *unid);
57
62typedef void (*configuration_udpate_callback_t)(void);
63
67typedef struct {
112
113// Maximum size of a UNID string.
114#define MAXIMUM_UNID_SIZE 100
115
116#ifdef __cplusplus
117extern "C" {
118#endif
119
126
135
144
145#ifdef __cplusplus
146}
147#endif
148
149#endif //UNIFY_DOTDOT_ATTRIBUTE_STORE_H
uint32_t attribute_store_type_t
Definition: attribute_store.h:50
datastore_attribute_id_t attribute_store_node_t
Handle to identify attribute store nodes.
Definition: attribute_store.h:101
void unify_dotdot_attribute_store_set_configuration(const unify_dotdot_attribute_store_configuration_t *configuration)
Configures the Unify Dotdot Attribute Store component.
sl_status_t(* unid_only_fetching_function_t)(attribute_store_node_t node, char *unid)
Function signature that retrieves a the UNID value associated to a given Attribute Store node.
Definition: unify_dotdot_attribute_store.h:55
attribute_store_node_t(* endpoint_node_fetching_function_t)(const dotdot_unid_t unid, dotdot_endpoint_id_t endpoint_id)
Function signature that retrieves an Attribute Store node that represents a UNID/Endpoint,...
Definition: unify_dotdot_attribute_store.h:41
void(* configuration_udpate_callback_t)(void)
Function signature for callbacks that indicate that the configuration of the component was just updat...
Definition: unify_dotdot_attribute_store.h:62
sl_status_t(* unid_fetching_function_t)(attribute_store_node_t node, char *unid, dotdot_endpoint_id_t *endpoint_id)
Function signature that retrieves a the UNID/Endpoint values associated to a given Attribute Store no...
Definition: unify_dotdot_attribute_store.h:48
void unify_dotdot_attribute_store_set_configuration_update_callback(configuration_udpate_callback_t callback)
Register a callback to be invoked when the Unify Dotdot Attribute Store component configuration has b...
sl_status_t unify_dotdot_attribute_store_init()
Initializes the Unify Dotdot Attribute Store component.
Definition: unify_dotdot_attribute_store.c:28
uint32_t sl_status_t
Definition: sl_status.h:139
SL Status Codes.
Configuration structure for the Unify DotDot Attribute Store component.
Definition: unify_dotdot_attribute_store.h:67
bool automatic_deduction_of_supported_commands
Enables or disables the automatic deduction of supported commands for a node based on the ZCL attribu...
Definition: unify_dotdot_attribute_store.h:94
bool publish_reported_attribute_values_to_mqtt
Enables or disables the automatic publishing of ZCL Attributes reported values to MQTT.
Definition: unify_dotdot_attribute_store.h:106
attribute_store_type_t endpoint_type
Type of an endpoint attribute.
Definition: unify_dotdot_attribute_store.h:110
unid_fetching_function_t get_unid_endpoint_function
unid_fetching_function_t function that outputs UNID/Endpoints based on a Attribute Store node....
Definition: unify_dotdot_attribute_store.h:75
bool write_attributes_enabled
Enables or disables the automatic publishing of ZCL Attributes values to MQTT.
Definition: unify_dotdot_attribute_store.h:100
bool clear_reported_on_desired_updates
Instructs if the component should clear reported values when setting a new desired values....
Definition: unify_dotdot_attribute_store.h:88
attribute_store_type_t node_type
Type of an node attribute.
Definition: unify_dotdot_attribute_store.h:108
bool force_read_attributes_enabled
When enabled, ForceReadAttribute will undefine the reported value of ZCL/DotDot attribute to trigger ...
Definition: unify_dotdot_attribute_store.h:97
bool publish_desired_attribute_values_to_mqtt
Enables or disables the automatic publishing of ZCL Attributes desired values to MQTT.
Definition: unify_dotdot_attribute_store.h:103
endpoint_node_fetching_function_t get_endpoint_node_function
endpoint_node_fetching_function_t function that returns the Attribute Store node for an endpoint base...
Definition: unify_dotdot_attribute_store.h:71
unid_only_fetching_function_t get_unid_function
unid_only_fetching_function_t function that outputs UNID based on a Attribute Store node....
Definition: unify_dotdot_attribute_store.h:80
bool update_attribute_desired_values_on_commands
Enables or disables the automatic updating of ZCL attribute desired values upon MQTT command receptio...
Definition: unify_dotdot_attribute_store.h:83
Generic type definitions for Unify.
uint8_t dotdot_endpoint_id_t
Definition: uic_typedefs.h:38
const char * dotdot_unid_t
Definition: uic_typedefs.h:39