Association Group Information (AGI) Command Class handlers and control functions.
More...
Association Group Information (AGI) Command Class handlers and control functions.
◆ AGI_INFO_REPORT_GROUP_COUNT_MASK
| #define AGI_INFO_REPORT_GROUP_COUNT_MASK 0x3F |
Frame parsing defines.
Maximum content (number of bytes) for a Association group name. This is aligned with the storage capacity of the attribute store.
◆ AGI_LIFELINE_PROFILE
| #define AGI_LIFELINE_PROFILE 0x0001 |
◆ AGI_NA_PROFILE
| #define AGI_NA_PROFILE 0x0000 |
Lifeline Group ID.
Not Applicable profile value, though it is used by somes nodes for the Lifeline Group
◆ AGI_RESERVED_PROFILE
| #define AGI_RESERVED_PROFILE 0xFFFF |
Profile that is reserved, used to indicate that no profile data is available or valid
◆ LIFELINE_GROUP_ID
| #define LIFELINE_GROUP_ID 1 |
◆ LIFELINE_NAME
| #define LIFELINE_NAME "Lifeline" |
◆ MAX_GROUP_NAME_SIZE
| #define MAX_GROUP_NAME_SIZE ATTRIBUTE_STORE_MAXIMUM_VALUE_LENGTH |
◆ MAX_SUPPORTED_NODES_PER_GROUP
| #define MAX_SUPPORTED_NODES_PER_GROUP 10 |
How many groups do we support.
< How many nodes/endpoint associations do we allow in each group. Do not set this to more than 126, the attribute store won't be able to store it.
◆ NUMBER_OF_SUPPORTED_GROUPS
| #define NUMBER_OF_SUPPORTED_GROUPS 1 |
◆ agi_profile_t
◆ association_group_command_list_report_frame_t
◆ association_group_info_report_frame_t
◆ association_group_name_report_frame_t
◆ zwave_command_class_agi_add_group_commands()
Lets a component register commands that it sends via an association group.
- Parameters
-
| group_id | Association Group Identifier |
| command_class | Command Class Identifier |
| command | Command Identifier |
- Returns
- SL_STATUS_OK if the command was added to the group SL_STATUS_NOT_FOUND if the Group ID is not found SL_STATUS_FAIL in case it could not be added.
◆ zwave_command_class_agi_get_group_profile()
Lets a component register commands that it sends via an association group.
- Parameters
-
| node_id | Z-Wave Node ID |
| endpoint_id | Z-Wave Endpoint ID |
| group_id | Grouping Identifier |
- Returns
- AGI_RESERVED_PROFILE if no AGI information. Else the profile value.
◆ zwave_command_class_agi_group_contains_listeners()
Verifies if a Group ID under a NodeID/Endpoint sends some commands that we want to receive.
- Parameters
-
| node_id | NodeID of the Z-Wave Node |
| endpoint_id | Endpoint ID under which the group is located |
| group_id | Group ID to check |
- Returns
- true if association should be established because we want to receive commands from that group, false otherwise
◆ zwave_command_class_agi_init()
Setup fixture for the Association Group Information (AGI) Command Class.
This setup function will initialize our group propertyes and register callbacks to the Attribute Store, so that it can be notified when to issue commands to the Z-Wave nodes.
- Returns
- SL_STATUS_OK if successful
-
SL_STATUS_FAIL if an error occurred
◆ zwave_command_class_agi_is_command_allowed_for_group()
Verifies if a Command Class/Command pair is allowed for an Association group.
- Parameters
-
| group_id | Association Group Identifier |
| command_class | Command Class Identifier |
| command | Command Identifier |
- Returns
- true if the Command Class/Command pair is allowed false if it is not allowed
◆ zwave_command_class_agi_request_to_establish_association()
Registers a Command Class / Command pair that we want to make sure to receive via Associations.
The AGI/Association command classes will make sure to associate the ZPC (in a non-forceful manner, i.e. without the help of Association Remove) to any group containing the Command Class / Command pairs indicated by user components using this API.
Note: once a request is made, it cannot be undone.
- Parameters
-
| command_class | Command Class Identifier |
| command | Command Identifier |