Logo
Developing with ZBOSS for Zigbee
zb_zcl_daily_schedule.h File Reference
#include "zboss_api_core.h"
#include "zboss_api_aps.h"
#include "zb_zcl_common.h"

Data Structures

struct  zb_zcl_daily_schedule_attr_linky_peak_period_status_s
 
struct  zb_zcl_daily_schedule_get_schedule_payload_s
 
struct  zb_zcl_daily_schedule_publish_schedule_payload_s
 
struct  zb_zcl_daily_schedule_linky_schedule_entry_s
 
union  zb_zcl_daily_schedule_entry_u
 
struct  zb_zcl_daily_schedule_publish_day_profile_payload_s
 
struct  zb_zcl_daily_schedule_cancel_schedule_payload_s
 
struct  zb_zcl_daily_schedule_get_day_profile_payload_s
 

Macros

#define ZB_ZCL_DAILY_SCHEDULE_CLUSTER_REVISION_DEFAULT   ((zb_uint16_t)0x0001u)
 Default value for Daily Schedule cluster revision global attribute (not defined anywhere) More...
 
#define ZB_ZCL_DECLARE_DAILY_SCHEDULE_ATTR_LIST(attr_list)
 Declare attribute list for Daily Schedule cluster (only cluster revision attribute) More...
 
#define ZB_ZCL_ATTR_LINKY_PEAK_PERIOD_STATUS_COLOR_UNUSED   0b00
 
#define ZB_ZCL_ATTR_LINKY_PEAK_PERIOD_STATUS_COLOR_LOW_BLUE   0b01
 
#define ZB_ZCL_ATTR_LINKY_PEAK_PERIOD_STATUS_COLOR_MEDIUM_WHITE   0b10
 
#define ZB_ZCL_ATTR_LINKY_PEAK_PERIOD_STATUS_COLOR_HIGH_RED   0b11
 
#define ZB_ZCL_ATTR_LINKY_PEAK_PERIOD_STATUS_PRIOR_NOTICE_NONE   0b00
 
#define ZB_ZCL_ATTR_LINKY_PEAK_PERIOD_STATUS_PRIOR_NOTICE_PP1   0b01
 
#define ZB_ZCL_ATTR_LINKY_PEAK_PERIOD_STATUS_PRIOR_NOTICE_PP2   0b10
 
#define ZB_ZCL_ATTR_LINKY_PEAK_PERIOD_STATUS_PRIOR_NOTICE_PP3   0b11
 
#define ZB_ZCL_ATTR_LINKY_PEAK_PERIOD_STATUS_ON_PEAK_NONE   0b00
 
#define ZB_ZCL_ATTR_LINKY_PEAK_PERIOD_STATUS_ON_PEAK_PERIOD_1   0b01
 
#define ZB_ZCL_ATTR_LINKY_PEAK_PERIOD_STATUS_ON_PEAK_PERIOD_2   0b10
 
#define ZB_ZCL_ATTR_LINKY_PEAK_PERIOD_STATUS_ON_PEAK_PERIOD_3   0b11
 
#define ZB_ZCL_CLUSTER_ID_DAILY_SCHEDULE_SERVER_ROLE_GENERATED_CMD_LIST
 
#define ZB_ZCL_CLUSTER_ID_DAILY_SCHEDULE_CLIENT_ROLE_RECEIVED_CMD_LIST   ZB_ZCL_CLUSTER_ID_DAILY_SCHEDULE_SERVER_ROLE_GENERATED_CMD_LIST
 
#define ZB_ZCL_CLUSTER_ID_DAILY_SCHEDULE_CLIENT_ROLE_GENERATED_CMD_LIST
 
#define ZB_ZCL_CLUSTER_ID_DAILY_SCHEDULE_SERVER_ROLE_RECEIVED_CMD_LIST   ZB_ZCL_CLUSTER_ID_DAILY_SCHEDULE_CLIENT_ROLE_GENERATED_CMD_LIST
 
#define ZB_ZCL_DAILY_SCHEDULE_TYPE_IS_VALID(_t)   (_t <= ZB_ZCL_DAILY_SCHEDULE_TYPE_LINKY_SCHEDULE)
 
#define ZB_ZCL_DAILY_SCHEDULE_GET_SCHEDULE_PL_INIT   (zb_zcl_daily_schedule_get_schedule_payload_t) {0}
 
#define ZB_ZCL_DAILY_SCHEDULE_GET_DAY_PROFILE_PL_INIT   (zb_zcl_daily_schedule_get_day_profile_payload_t) {0}
 
#define ZB_ZCL_DAILY_SCHEDULE_GET_SCHEDULE_PL_SIZE_IS_VALID(size)   ((size >= sizeof(zb_zcl_daily_schedule_get_schedule_payload_t) ? ZB_TRUE : ZB_FALSE))
 
#define ZB_ZCL_DAILY_SCHEDULE_GET_DAY_PROFILE_PL_SIZE_IS_VALID(size)   ((size >= sizeof(zb_zcl_daily_schedule_get_day_profile_payload_t) ? ZB_TRUE : ZB_FALSE))
 
#define ZB_ZCL_DAILY_SCHEDULE_PUBLISH_SCHEDULE_PL_INIT   (zb_zcl_daily_schedule_publish_schedule_payload_t) {0}
 
#define ZB_ZCL_DAILY_SCHEDULE_PUBLISH_DAY_PROFILE_PL_INIT   (zb_zcl_daily_schedule_publish_day_profile_payload_t) {0}
 
#define ZB_ZCL_DAILY_SCHEDULE_CANCEL_SCHEDULE_PL_INIT   (zb_zcl_daily_schedule_cancel_schedule_payload_t) {0}
 
#define ZB_ZCL_DAILY_SCHEDULE_PUBLISH_SCHEDULE_PL_EXPECTED_SIZE(pl)   (sizeof(zb_zcl_daily_schedule_publish_schedule_payload_t)-sizeof((pl)->schedule_name)+1+ZB_ZCL_GET_STRING_LENGTH((pl)->schedule_name))
 
#define ZB_ZCL_DAILY_SCHEDULE_PUBLISH_SCHEDULE_PL_SIZE_IS_VALID(pl, size)   ((size >= ZB_ZCL_DAILY_SCHEDULE_PUBLISH_SCHEDULE_PL_EXPECTED_SIZE((zb_zcl_daily_schedule_publish_schedule_payload_t *)pl)) ? ZB_TRUE : ZB_FALSE)
 
#define ZB_ZCL_DAILY_SCHEDULE_PUBLISH_DAY_PROFILE_PL_SIZE_IS_VALID(size)   ((size >= (sizeof(zb_zcl_daily_schedule_publish_day_profile_payload_t)-sizeof(void *)-sizeof(zb_uint8_t)) ? ZB_TRUE : ZB_FALSE))
 
#define ZB_ZCL_DAILY_SCHEDULE_CANCEL_SCHEDULE_PL_SIZE_IS_VALID(size)   ((size >= sizeof(zb_zcl_daily_schedule_cancel_schedule_payload_t) ? ZB_TRUE : ZB_FALSE))
 
#define ZB_ZCL_DAILY_SCHEDULE_SEND_CMD_PUBLISH_SCHEDULE(_param, _dst_addr, _addr_mode, _dst_ep, _src_ep, _payload)
 
#define ZB_ZCL_DAILY_SCHEDULE_SEND_CMD_PUBLISH_DAY_PROFILE(_param, _dst_addr, _addr_mode, _dst_ep, _src_ep, _payload)
 
#define ZB_ZCL_DAILY_SCHEDULE_SEND_CMD_CANCEL_SCHEDULE(_param, _dst_addr, _addr_mode, _dst_ep, _src_ep, _payload)
 
#define ZB_ZCL_DAILY_SCHEDULE_SEND_CMD_CANCEL_ALL_SCHEDULES(_param, _dst_addr, _addr_mode, _dst_ep, _src_ep)
 
#define ZB_ZCL_DAILY_SCHEDULE_SEND_CMD_GET_SCHEDULE(_param, _dst_addr, _addr_mode, _dst_ep, _src_ep, _payload)
 
#define ZB_ZCL_DAILY_SCHEDULE_SEND_CMD_GET_DAY_PROFILE(_param, _dst_addr, _addr_mode, _dst_ep, _src_ep, _payload)
 
#define ZB_ZCL_DAILY_SCHEDULE_SEND_CMD_GET_SCHEDULE_CANCELLATION(_param, _dst_addr, _addr_mode, _dst_ep, _src_ep)
 
#define ZB_ZCL_DAILY_SCHEDULE_CURRENT_AUXILLARY_LOAD_SWITCH_STATE_DEFAULT_VALUE   0x00
 Default value for CurrentAuxiliaryLoadSwitchState attribute. More...
 
#define ZB_ZCL_DAILY_SCHEDULE_LINKY_PEAK_PERIOD_STATUS_DEFAULT_VALUE   0x00
 Default value for LinkyPeakPeriodStatus attribute. More...
 
#define ZB_ZCL_DAILY_SCHEDULE_PEAK_START_TIME_DEFAULT_VALUE   ((zb_uint32_t)0xFFFFFFFF)
 Default value for PeakStartTime attribute. More...
 
#define ZB_ZCL_DAILY_SCHEDULE_PEAK_END_TIME_DEFAULT_VALUE   ((zb_uint32_t)0xFFFFFFFF)
 Default value for PeakEndTime attribute. More...
 
#define ZB_ZCL_DAILY_SCHEDULE_CURRENT_TARIFF_LABEL_DEFAULT_VALUE   {0}
 Default value for CurrentTariffLabel attribute. More...
 
#define ZB_ZCL_CLUSTER_ID_DAILY_SCHEDULE_SERVER_ROLE_INIT   zb_zcl_daily_schedule_init_server
 
#define ZB_ZCL_CLUSTER_ID_DAILY_SCHEDULE_CLIENT_ROLE_INIT   zb_zcl_daily_schedule_init_client
 

Typedefs

typedef enum zb_zcl_daily_schedule_srv_attr_sets_e zb_zcl_daily_schedule_srv_attr_sets_t
 
typedef enum zb_zcl_daily_schedule_srv_auxiliary_switch_attr_set_e zb_zcl_daily_schedule_srv_auxiliary_switch_attr_set_t
 
typedef enum zb_zcl_daily_schedule_srv_schedule_attr_set_e zb_zcl_daily_schedule_srv_schedule_attr_set_t
 
typedef struct zb_zcl_daily_schedule_attr_linky_peak_period_status_s zb_zcl_daily_schedule_attr_linky_peak_period_status_t
 
typedef enum zb_zcl_daily_schedule_cli_cmd_e zb_zcl_daily_schedule_cli_cmd_t
 
typedef enum zb_zcl_daily_schedule_srv_cmd_e zb_zcl_daily_schedule_srv_cmd_t
 
typedef enum zb_zcl_daily_schedule_type_e zb_zcl_daily_schedule_type_t
 
typedef struct zb_zcl_daily_schedule_get_schedule_payload_s zb_zcl_daily_schedule_get_schedule_payload_t
 
typedef enum zb_zcl_daily_schedule_time_reference_e zb_zcl_daily_schedule_time_reference_t
 
typedef struct zb_zcl_daily_schedule_publish_schedule_payload_s zb_zcl_daily_schedule_publish_schedule_payload_t
 
typedef struct zb_zcl_daily_schedule_linky_schedule_entry_s zb_zcl_daily_schedule_linky_schedule_entry_t
 
typedef union zb_zcl_daily_schedule_entry_u zb_zcl_daily_schedule_entry_t
 
typedef struct zb_zcl_daily_schedule_publish_day_profile_payload_s zb_zcl_daily_schedule_publish_day_profile_payload_t
 
typedef struct zb_zcl_daily_schedule_cancel_schedule_payload_s zb_zcl_daily_schedule_cancel_schedule_payload_t
 
typedef struct zb_zcl_daily_schedule_get_day_profile_payload_s zb_zcl_daily_schedule_get_day_profile_payload_t
 

Enumerations

enum  zb_zcl_daily_schedule_srv_attr_sets_e { ZB_ZCL_DAILY_SCHEDULE_AUXILIARY_SWITCH_LABEL_SET = 0x00, ZB_ZCL_DAILY_SCHEDULE_SCHEDULE_ATTRIBUTES_SET = 0x01 }
 
enum  zb_zcl_daily_schedule_srv_auxiliary_switch_attr_set_e {
  ZB_ZCL_ATTR_DAILY_SCHEDULE_AUX_SWITCH_1_LABEL = 0x0000, ZB_ZCL_ATTR_DAILY_SCHEDULE_AUX_SWITCH_2_LABEL, ZB_ZCL_ATTR_DAILY_SCHEDULE_AUX_SWITCH_3_LABEL, ZB_ZCL_ATTR_DAILY_SCHEDULE_AUX_SWITCH_4_LABEL,
  ZB_ZCL_ATTR_DAILY_SCHEDULE_AUX_SWITCH_5_LABEL, ZB_ZCL_ATTR_DAILY_SCHEDULE_AUX_SWITCH_6_LABEL, ZB_ZCL_ATTR_DAILY_SCHEDULE_AUX_SWITCH_7_LABEL, ZB_ZCL_ATTR_DAILY_SCHEDULE_AUX_SWITCH_8_LABEL
}
 
enum  zb_zcl_daily_schedule_srv_schedule_attr_set_e {
  ZB_ZCL_ATTR_DAILY_SCHEDULE_CURR_AUX_LOAD_SWITCH_STATE = 0x0100, ZB_ZCL_ATTR_DAILY_SCHEDULE_CURR_DELIVERED_TIER = 0x0101, ZB_ZCL_ATTR_DAILY_SCHEDULE_CURR_TIER_LABEL = 0x0102, ZB_ZCL_ATTR_DAILY_SCHEDULE_LINKY_PEAK_PERIOD_STATUS = 0x0103,
  ZB_ZCL_ATTR_DAILY_SCHEDULE_PEAK_START_TIME = 0x0104, ZB_ZCL_ATTR_DAILY_SCHEDULE_PEAK_END_TIME = 0x0105, ZB_ZCL_ATTR_DAILY_SCHEDULE_CURR_TARIFF_LABEL = 0x0106
}
 
enum  zb_zcl_daily_schedule_cli_cmd_e { ZB_ZCL_DAILY_SCHEDULE_CLI_CMD_GET_SCHEDULE = 0x00, ZB_ZCL_DAILY_SCHEDULE_CLI_CMD_GET_DAY_PROFILE = 0x01, ZB_ZCL_DAILY_SCHEDULE_CLI_CMD_GET_SCHEDULE_CANCELLATION = 0x05 }
 
enum  zb_zcl_daily_schedule_srv_cmd_e { ZB_ZCL_DAILY_SCHEDULE_SRV_CMD_PUBLISH_SCHEDULE = 0x00, ZB_ZCL_DAILY_SCHEDULE_SRV_CMD_PUBLISH_DAY_PROFILE = 0x01, ZB_ZCL_DAILY_SCHEDULE_SRV_CMD_CANCEL_SCHEDULE = 0x05, ZB_ZCL_DAILY_SCHEDULE_SRV_CMD_CANCEL_ALL_SCHEDULES = 0x06 }
 
enum  zb_zcl_daily_schedule_type_e { ZB_ZCL_DAILY_SCHEDULE_TYPE_LINKY_SCHEDULE = 0x00 }
 
enum  zb_zcl_daily_schedule_time_reference_e { ZB_ZCL_DAILY_SCHEDULE_TIME_REFERENCE_UTC_TIME = 0x00, ZB_ZCL_DAILY_SCHEDULE_TIME_REFERENCE_STANDARD_TIME, ZB_ZCL_DAILY_SCHEDULE_TIME_REFERENCE_LOCAL_TIME }
 

Functions

void zb_zcl_daily_schedule_send_cmd_publish_schedule (zb_uint8_t param, const zb_addr_u *dst_addr, zb_aps_addr_mode_t dst_addr_mode, zb_uint8_t dst_ep, zb_uint8_t src_ep, const zb_zcl_daily_schedule_publish_schedule_payload_t *pl, zb_callback_t cb)
 
void zb_zcl_daily_schedule_send_cmd_publish_day_profile (zb_uint8_t param, const zb_addr_u *dst_addr, zb_aps_addr_mode_t dst_addr_mode, zb_uint8_t dst_ep, zb_uint8_t src_ep, const zb_zcl_daily_schedule_publish_day_profile_payload_t *pl, zb_callback_t cb)
 
void zb_zcl_daily_schedule_send_cmd_get_schedule (zb_uint8_t param, const zb_addr_u *dst_addr, zb_aps_addr_mode_t dst_addr_mode, zb_uint8_t dst_ep, zb_uint8_t src_ep, const zb_zcl_daily_schedule_get_schedule_payload_t *pl, zb_callback_t cb)
 
void zb_zcl_daily_schedule_send_cmd_get_day_profile (zb_uint8_t param, const zb_addr_u *dst_addr, zb_aps_addr_mode_t dst_addr_mode, zb_uint8_t dst_ep, zb_uint8_t src_ep, const zb_zcl_daily_schedule_get_day_profile_payload_t *pl, zb_callback_t cb)
 
void zb_zcl_daily_schedule_send_cmd_get_schedule_cancellation (zb_uint8_t param, const zb_addr_u *dst_addr, zb_aps_addr_mode_t dst_addr_mode, zb_uint8_t dst_ep, zb_uint8_t src_ep, zb_callback_t cb)
 
void zb_zcl_daily_schedule_send_cmd_cancel_schedule (zb_uint8_t param, const zb_addr_u *dst_addr, zb_aps_addr_mode_t dst_addr_mode, zb_uint8_t dst_ep, zb_uint8_t src_ep, const zb_zcl_daily_schedule_cancel_schedule_payload_t *pl, zb_callback_t cb)
 
void zb_zcl_daily_schedule_send_cmd_cancel_all_schedules (zb_uint8_t param, const zb_addr_u *dst_addr, zb_aps_addr_mode_t dst_addr_mode, zb_uint8_t dst_ep, zb_uint8_t src_ep, zb_callback_t cb)
 
void zb_zcl_daily_schedule_init_server ()
 
void zb_zcl_daily_schedule_init_client ()
 

Macro Definition Documentation

§ ZB_ZCL_CLUSTER_ID_DAILY_SCHEDULE_CLIENT_ROLE_INIT

#define ZB_ZCL_CLUSTER_ID_DAILY_SCHEDULE_CLIENT_ROLE_INIT   zb_zcl_daily_schedule_init_client

§ ZB_ZCL_CLUSTER_ID_DAILY_SCHEDULE_SERVER_ROLE_INIT

#define ZB_ZCL_CLUSTER_ID_DAILY_SCHEDULE_SERVER_ROLE_INIT   zb_zcl_daily_schedule_init_server

Function Documentation

§ zb_zcl_daily_schedule_init_client()

void zb_zcl_daily_schedule_init_client ( )

§ zb_zcl_daily_schedule_init_server()

void zb_zcl_daily_schedule_init_server ( )