Skip to content

Commit 10dea47

Browse files
committed
GH-43: User Set
UIC-3222: User set on User Operation Type UIC-3222: More user types UIC-3222: User SET fix UIC-3222: Set User (delete) improvement UIC-3222: Fix expiring minutes to Desired Or Reported to allow add UIC-3222: User SET can look into desired attributes Bug-SiliconLabs: UIC-3222 Bug-GitHub: #43 Signed-off-by: Philippe Coval <[email protected]>
1 parent a198369 commit 10dea47

File tree

5 files changed

+290
-61
lines changed

5 files changed

+290
-61
lines changed

applications/zpc/components/zpc_attribute_store/include/attribute_store_defined_attribute_types.h

+8
Original file line numberDiff line numberDiff line change
@@ -992,10 +992,18 @@ DEFINE_ATTRIBUTE(ATTRIBUTE_COMMAND_CLASS_USER_CREDENTIAL_CREDENTIAL_MODIFIER_TYP
992992
((COMMAND_CLASS_USER_CREDENTIAL << 8) | 0x1D))
993993
DEFINE_ATTRIBUTE(ATTRIBUTE_COMMAND_CLASS_USER_CREDENTIAL_CREDENTIAL_MODIFIER_NODE_ID,
994994
((COMMAND_CLASS_USER_CREDENTIAL << 8) | 0x1E))
995+
996+
995997
// Specific to Credential SET
996998
DEFINE_ATTRIBUTE(ATTRIBUTE_COMMAND_CLASS_USER_CREDENTIAL_CREDENTIAL_OPERATION_TYPE,
997999
((COMMAND_CLASS_USER_CREDENTIAL << 8) | 0x1F))
9981000

1001+
// Specific to USER SET
1002+
DEFINE_ATTRIBUTE(ATTRIBUTE_COMMAND_CLASS_USER_CREDENTIAL_USER_OPERATION_TYPE,
1003+
((COMMAND_CLASS_USER_CREDENTIAL << 8) | 0x20))
1004+
DEFINE_ATTRIBUTE(ATTRIBUTE_COMMAND_CLASS_USER_CREDENTIAL_USER_EXPIRING_TIMEOUT_MINUTES,
1005+
((COMMAND_CLASS_USER_CREDENTIAL << 8) | 0x21))
1006+
9991007
/////////////////////////////////////////////////
10001008
// Z-Wave Plus Info CC
10011009
DEFINE_ATTRIBUTE(ATTRIBUTE_COMMAND_ZWAVEPLUS_INFO_VERSION,

applications/zpc/components/zpc_attribute_store/include/command_class_types/zwave_command_class_user_credential_types.h

+19-2
Original file line numberDiff line numberDiff line change
@@ -40,19 +40,36 @@ typedef uint8_t user_credential_user_modifier_type_t;
4040
///> User Modifier Node ID. uint16_t
4141
typedef uint16_t user_credential_user_modifier_node_id_t;
4242
///> User Type. uint8_t
43+
#define USER_CREDENTIAL_USER_TYPE_GENERAL_USER 0x00
44+
#define USER_CREDENTIAL_USER_TYPE_PROGRAMMING_USER 0x03
45+
#define USER_CREDENTIAL_USER_TYPE_NON_ACCESS_USER 0x04
46+
#define USER_CREDENTIAL_USER_TYPE_DURESS_USER 0x05
47+
#define USER_CREDENTIAL_USER_TYPE_DISPOSABLE_USER 0x06
48+
#define USER_CREDENTIAL_USER_TYPE_EXPIRING_USER 0x07
49+
#define USER_CREDENTIAL_USER_TYPE_REMOTE_ONLY_USER 0x09
4350
typedef uint8_t user_credential_user_type_t;
51+
///> User active state (0 or 1). uint8_t
52+
typedef uint8_t user_credential_user_active_state_t;
53+
///> User name encoding. uint8_t
54+
typedef uint8_t user_credential_user_name_encoding_t;
4455

4556
///> Credential type. uint8_t
4657
typedef uint8_t user_credential_type_t;
4758

59+
///> Credential rule. uint8_t
60+
typedef uint8_t user_credential_rule_t;
61+
4862
///> Credential slot. uint16_t
4963
typedef uint16_t user_credential_slot_t;
5064

5165
///> Operation type. uint8_t
66+
#define USER_CREDENTIAL_OPERATION_TYPE_ADD 0x00
67+
#define USER_CREDENTIAL_OPERATION_TYPE_MODIFY 0x01
68+
#define USER_CREDENTIAL_OPERATION_TYPE_DELETE 0x02
5269
typedef uint8_t user_credential_operation_type_t;
5370

54-
///> Operation type. uint8_t
55-
typedef uint8_t user_credential_operation_type_t;
71+
///> Expiring Timeout for User (Minutes). uint16_t
72+
typedef uint16_t user_credential_expiring_timeout_minutes_t;
5673

5774
#ifdef __cplusplus
5875
extern "C" {

applications/zpc/components/zpc_attribute_store/src/zpc_attribute_store_type_registration.cpp

-2
Original file line numberDiff line numberDiff line change
@@ -397,8 +397,6 @@ static const std::vector<attribute_schema_t> attribute_schema = {
397397
{ATTRIBUTE_COMMAND_CLASS_USER_CREDENTIAL_CREDENTIAL_SLOT, "User Credential Credential Slot", ATTRIBUTE_COMMAND_CLASS_USER_CREDENTIAL_CREDENTIAL_TYPE, U16_STORAGE_TYPE},
398398
{ATTRIBUTE_COMMAND_CLASS_USER_CREDENTIAL_CREDENTIAL_DATA_LENGTH, "User Credential Credential Data Length", ATTRIBUTE_COMMAND_CLASS_USER_CREDENTIAL_CREDENTIAL_SLOT, U8_STORAGE_TYPE},
399399
{ATTRIBUTE_COMMAND_CLASS_USER_CREDENTIAL_CREDENTIAL_DATA, "User Credential Credential Data", ATTRIBUTE_COMMAND_CLASS_USER_CREDENTIAL_CREDENTIAL_DATA_LENGTH, BYTE_ARRAY_STORAGE_TYPE},
400-
401-
402400
{ATTRIBUTE_COMMAND_CLASS_USER_CREDENTIAL_CREDENTIAL_READ_BACK, "User Credential Credential Read Back Flag", ATTRIBUTE_COMMAND_CLASS_USER_CREDENTIAL_CREDENTIAL_SLOT, U8_STORAGE_TYPE},
403401
{ATTRIBUTE_COMMAND_CLASS_USER_CREDENTIAL_CREDENTIAL_MODIFIER_TYPE, "User Credential Credential Modifier type", ATTRIBUTE_COMMAND_CLASS_USER_CREDENTIAL_CREDENTIAL_SLOT, U8_STORAGE_TYPE},
404402
{ATTRIBUTE_COMMAND_CLASS_USER_CREDENTIAL_CREDENTIAL_MODIFIER_NODE_ID, "User Credential Credential Node ID", ATTRIBUTE_COMMAND_CLASS_USER_CREDENTIAL_CREDENTIAL_SLOT, U16_STORAGE_TYPE},

0 commit comments

Comments
 (0)