#include "zcl/general/zcl.groups.h"
5.14.1 Groups cluster description
Table 247. Groups cluster PICS code description
PICS Code Name Supported Notes
G.S Server True
-G.C Client True
-G.S.A0000 NameSupport server attribute True
-G.S.Afffd ClusterRevision server attribute True
-G.S.C00.Rsp Add group server command True
-G.S.C01.Rsp View group server command True
-G.S.C02.Rsp Get group membership server command True
-PICS Code Name Supported Notes
G.S.C03.Rsp Remove group server command True
-G.S.C04.Rsp Remove all groups server command True
-G.S.C05.Rsp Add group if identifying server command True
-G.S.C00.Tx Add group response server command True
-G.S.C01.Tx View group response server command True
-G.S.C02.Tx Get group membership response server command True
-G.S.C03.Tx Remove group response server command True
-G.C.Afffd ClusterRevision client attribute True
-G.C.C00.Rsp Add group response client command True
-G.C.C01.Rsp View group response client command True
-G.C.C06.Rsp Get group membership response client command True
-G.C.C02.Rsp Remove group response client command True
-G.C.C00.Tx Add group client command True
-G.C.C01.Tx View group client command True
-G.C.C02.Tx Get group membership client command True
-G.C.C03.Tx Remove group client command True
-G.C.C04.Tx Remove all groups client command True
-G.C.C05.Tx Add group if identifying client command True
-5.14.2 Groups cluster functions
5.14.2.1 ZbZclGroupsClientAddIdentifyingReq
enum ZclStatusCodeT ZbZclGroupsClientAddIdentifyingReq(struct ZbZclClusterT*cluster, struct ZbZclGroupsClientAddIdentifyingReqT *req, void (*callback)(struct ZbZclCommandRspT *rsp, void *arg), void *arg);
Send an Add Group If Identifying command
Table 248. ZbZclGroupsClientAddIdentifyingReq Parameters
Parameter Description
cluster Cluster instance from which to send this command req Add Group If Identifying command request structure
callback Callback function that is invoked when the response is received
arg Pointer to application data that is provided back to the callback function when invoked
Return: ZCL_STATUS_SUCCESS if successful, or other ZclStatusCodeT value on error.
5.14.2.2 ZbZclGroupsClientAddReq
enum ZclStatusCodeT ZbZclGroupsClientAddReq(struct ZbZclClusterT *cluster, struct
ZbZclGroupsClientAddReqT *req, void (*callback)(struct ZbZclCommandRspT *rsp, void*arg), void *arg);
Send an Add Group command
Table 249. ZbZclGroupsClientAddReq parameters
Parameter Description
cluster Cluster instance from which to send this command req Add Group command request structure
callback Callback function that is invoked when the response is received
arg Pointer to application data that is provided back to the callback function when invoked
Return: ZCL_STATUS_SUCCESS if successful, or other ZclStatusCodeT value on error.
5.14.2.3 ZbZclGroupsClientAlloc
struct ZbZclClusterT * ZbZclGroupsClientAlloc(struct ZigBeeT *zb, uint8_t Create a new instance of the Groups Client cluster
Table 250. ZbZclGroupsClientAlloc parameters
Parameter Description
zb Zigbee® stack instance
endpoint Endpoint on which to create cluster
Return: Cluster pointer, or NULL if there is an error.
5.14.2.4 ZbZclGroupsClientGetMembershipReq
enum ZclStatusCodeT ZbZclGroupsClientGetMembershipReq(struct ZbZclClusterT*cluster, struct ZbZclGroupsClientGetMembershipReqT *req, void (*callback)(struct ZbZclCommandRspT *rsp, void
*arg), void *arg);
Send a Get Group Membership command
Table 251. ZbZclGroupsClientGetMembershipReq parameters
Parameter Description
cluster Cluster instance from which to send this command req Get Group Membership command request structure
callback Callback function that is invoked when the response is received
arg Pointer to application data that is provided back to the callback function when invoked
Return: ZCL_STATUS_SUCCESS if successful, or other ZclStatusCodeT value on error.
5.14.2.5 ZbZclGroupsClientRemoveAllReq
enum ZclStatusCodeT ZbZclGroupsClientRemoveAllReq(struct ZbZclClusterT *cluster, struct ZbApsAddrT *dst, void (*callback)(struct ZbZclCommandRspT *rsp, void *arg), void *arg);
Send a Remove All Groups command
Table 252. ZbZclGroupsClientRemoveAllReq parameters
Parameter Description
cluster Cluster instance from which to send this command req Remove All Group command request structure
Parameter Description callback Callback function that is invoked when the response is received
arg Pointer to application data that is provided back to the callback function when invoked
Return: ZCL_STATUS_SUCCESS if successful, or other ZclStatusCodeT value on error.
5.14.2.6 ZbZclGroupsClientRemoveReq
enum ZclStatusCodeT ZbZclGroupsClientRemoveReq(struct ZbZclClusterT *cluster, struct ZbZclGroupsClientRemoveReqT *req, void (*callback)(struct ZbZclCommandRspT*rsp, void *arg), void *arg);
Send a Remove Group command
Table 253. ZbZclGroupsClientRemoveReq parameters
Parameter Description
cluster Cluster instance from which to send this command req Remove Group command request structure
callback Callback function that is invoked when the response is received
arg Pointer to application data that is provided back to the callback function when invoked
Return: ZCL_STATUS_SUCCESS if successful, or other ZclStatusCodeT value on error.
5.14.2.7 ZbZclGroupsClientViewReq
enum ZclStatusCodeT ZbZclGroupsClientViewReq(struct ZbZclClusterT *cluster, struct ZbZclGroupsClientViewReqT *req, void (*callback)(struct ZbZclCommandRspT *rsp, void*arg), void *arg);
Send a View Group command
Table 254. ZbZclGroupsClientViewReq parameters
Parameter Description
cluster Cluster instance from which to send this command req View Group command request structure
callback Callback function that is invoked when the response is received
arg Pointer to application data that is provided back to the callback function when invoked
Return: ZCL_STATUS_SUCCESS if successful, or other ZclStatusCodeT value on error.
5.14.2.8 ZbZclGroupsServerAlloc
struct ZbZclClusterT * ZbZclGroupsServerAlloc(struct ZigBeeT *zb, uint8_t endpoint);
Create a new instance of the Groups Server cluster
Table 255. ZbZclGroupsServerAlloc Parameters
Parameter Description
zb Zigbee® stack instance
endpoint Endpoint on which to create cluster
Return: Cluster pointer, or NULL if there is an error.
5.14.3 Groups cluster enumerations
5.14.3.1 ZbZclGroupsSvrAttrTTable 256. Groups server attribute IDs
Attributes Description
ZCL_GROUPS_ATTR_NAME_SUPPORT Name Support
5.14.4 Groups cluster structures
5.14.4.1 ZbZclGroupsClientAddIdentifyingReqT Add Group If Identifying command structure
Table 257. ZbZclGroupsClientAddIdentifyingReqT parameters
Parameter Description
struct ZbApsAddrT dst Destination Address
uint16_t group_id Group ID
5.14.4.2 ZbZclGroupsClientAddReqT Add Group command structure
Table 258. ZbZclGroupsClientAddReqT parameters
Parameter Description
struct ZbApsAddrT dst Destination Address
uint16_t group_id Group ID
5.14.4.3 ZbZclGroupsClientGetMembershipReqT Get Group Membership command structure
Table 259. ZbZclGroupsClientGetMembershipReqT parameters
Parameter Description
struct ZbApsAddrT dst Destination Address
uint8_t num_groups Group count
uint16_t group_list Group list
5.14.4.4 ZbZclGroupsClientRemoveReqT Remove Group command structure
Table 260. ZbZclGroupsClientRemoveReqT parameters
Parameter Description
struct ZbApsAddrT dst Destination Address
uint16_t group_id Group ID
5.14.4.5 ZbZclGroupsClientViewReqT View Group command structure
Table 261. ZbZclGroupsClientViewReqT parameters
Parameter Description
struct ZbApsAddrT dst Destination Address
uint16_t group_id Group ID