1
+ // Custom Notification to DoorLock mappings
2
+ def zwNOTIFICATION_TYPE 0x7103
3
+ def zwNOTIFICATION_ACCESS_CONTROL_STATE 0x7105
4
+ def zwVALUE 0x7106
5
+
6
+ def zbDOOR_LOCK_CLUSTER_LOCK_STATE 0x01010000
7
+ def zbDOOR_LOCKED 0x01
8
+ def zbDOOR_UNLOCKED 0x02
9
+
10
+ def ACCESS_CONTROL 0x06
11
+ def ACCESS_CONTROL_TYPE 0xFF
12
+
13
+ def MANUAL_LOCK_OPERATION 0x01
14
+ def MANUAL_UNLOCK_OPERATION 0x02
15
+ def RF_LOCK_OPERATION 0x03
16
+ def RF_UNLOCK_OPERATION 0x04
17
+ def KEYPAD_LOCK_OPERATOIN 0x05
18
+ def KEYPAD_UNLOCK_OPERATOIN 0x06
19
+ def AUTO_LOCK_LOCKED_OPERATION 0x09
20
+ def UNLOCK_BY_RF_WITH_INVALID_USER_CODE 0x14
21
+ def LOCKED_BY_RF_WITH_INVALID_USER_CODE 0x15
22
+
23
+
24
+ scope 0 {
25
+
26
+ r'zbDOOR_LOCK_CLUSTER_LOCK_STATE =
27
+ if ( r'zwNOTIFICATION_TYPE[ACCESS_CONTROL].zwNOTIFICATION_ACCESS_CONTROL_STATE[ACCESS_CONTROL_TYPE].zwVALUE == MANUAL_LOCK_OPERATION ) zbDOOR_LOCKED
28
+ if ( r'zwNOTIFICATION_TYPE[ACCESS_CONTROL].zwNOTIFICATION_ACCESS_CONTROL_STATE[ACCESS_CONTROL_TYPE].zwVALUE == MANUAL_UNLOCK_OPERATION ) zbDOOR_UNLOCKED
29
+ if ( r'zwNOTIFICATION_TYPE[ACCESS_CONTROL].zwNOTIFICATION_ACCESS_CONTROL_STATE[ACCESS_CONTROL_TYPE].zwVALUE == RF_LOCK_OPERATION ) zbDOOR_LOCKED
30
+ if ( r'zwNOTIFICATION_TYPE[ACCESS_CONTROL].zwNOTIFICATION_ACCESS_CONTROL_STATE[ACCESS_CONTROL_TYPE].zwVALUE == RF_UNLOCK_OPERATION ) zbDOOR_UNLOCKED
31
+ if ( r'zwNOTIFICATION_TYPE[ACCESS_CONTROL].zwNOTIFICATION_ACCESS_CONTROL_STATE[ACCESS_CONTROL_TYPE].zwVALUE == KEYPAD_LOCK_OPERATOIN ) zbDOOR_LOCKED
32
+ if ( r'zwNOTIFICATION_TYPE[ACCESS_CONTROL].zwNOTIFICATION_ACCESS_CONTROL_STATE[ACCESS_CONTROL_TYPE].zwVALUE == KEYPAD_UNLOCK_OPERATOIN ) zbDOOR_UNLOCKED
33
+ if ( r'zwNOTIFICATION_TYPE[ACCESS_CONTROL].zwNOTIFICATION_ACCESS_CONTROL_STATE[ACCESS_CONTROL_TYPE].zwVALUE == AUTO_LOCK_LOCKED_OPERATION ) zbDOOR_LOCKED
34
+ if ( r'zwNOTIFICATION_TYPE[ACCESS_CONTROL].zwNOTIFICATION_ACCESS_CONTROL_STATE[ACCESS_CONTROL_TYPE].zwVALUE == UNLOCK_BY_RF_WITH_INVALID_USER_CODE ) zbDOOR_UNLOCKED
35
+ if ( r'zwNOTIFICATION_TYPE[ACCESS_CONTROL].zwNOTIFICATION_ACCESS_CONTROL_STATE[ACCESS_CONTROL_TYPE].zwVALUE == LOCKED_BY_RF_WITH_INVALID_USER_CODE ) zbDOOR_LOCKED
36
+ undefined
37
+
38
+ }
0 commit comments