I submitted this a couple of weeks ago but thought I had found the issue. I was wrong. :( I apologize if this is a duplicate or if this is just my complete braindeadedness. :) I did search, both here and Google and didn't find an obvious answer.
If I submit a payload of '{"pin_code": ""}' to the /get of my Kwikset Zigbee lock, the lock (or Z2M) responds with an individual, but identical, message for every user/slot in my lock. So, for my lock with 25 slots, I submit this:
If I submit a payload of '{"pin_code":{ "user":1}}' instead, I get the same message as above but just a single time. Substituting any valid user number for the 1 in the payload has the same results, a single response containing all users' codes.
Thanks!
What did you expect to happen?
I expected to only receive a single message containing all users when submitting a blank payload and, when submitting a user specific payload, I expected to only receive that single slot's data. That may not be realistic, but that was my response. :)
How to reproduce it (minimal and precise)
Submit a /get to a lock with ''{"pin_code": ""}'' as the payload, then watch was is returned to the primary topic.
Zigbee2MQTT version
1.30.3 commit: 24c6b2e
Adapter firmware version
7.1.1.0 build 273
Adapter
Skyconnect
Debug log
Note that the log is showing refreshes being performed every 5 seconds due to the HA 'keymaster' add on being used to manage codes. This 5 second refreshes causes 24 messages to be fired every 5 seconds. I'm thinking this may be causing a backlog as I'm seeing a delay in processing new /set messages.
debug.log.txt
What happened?
I submitted this a couple of weeks ago but thought I had found the issue. I was wrong. :( I apologize if this is a duplicate or if this is just my complete braindeadedness. :) I did search, both here and Google and didn't find an obvious answer.
If I submit a payload of '{"pin_code": ""}' to the /get of my Kwikset Zigbee lock, the lock (or Z2M) responds with an individual, but identical, message for every user/slot in my lock. So, for my lock with 25 slots, I submit this:
And I get this, 25 times:
{"action":null,"action_source_name":null,"action_user":null,"battery":60,"linkquality":164,"lock_state":"locked","pin_code":null,"state":"LOCK","users":{"0":{"pin_code":"1111","status":"enabled"},"1":{"pin_code":"2222","status":"enabled"},"10":{"status":"available"},"11":{"status":"available"},"12":{"status":"available"},"13":{"status":"available"},"14":{"status":"available"},"15":{"status":"available"},"16":{"status":"available"},"17":{"status":"available"},"18":{"status":"available"},"19":{"status":"available"},"2":{"pin_code":"3333","status":"enabled"},"20":{"status":"available"},"21":{"status":"available"},"22":{"status":"available"},"23":{"status":"available"},"24":{"status":"available"},"3":{"status":"available"},"4":{"status":"available"},"5":{"status":"available"},"6":{"status":"available"},"7":{"status":"available"},"8":{"status":"available"},"9":{"status":"available"}}}
If I submit a payload of '{"pin_code":{ "user":1}}' instead, I get the same message as above but just a single time. Substituting any valid user number for the 1 in the payload has the same results, a single response containing all users' codes.
Thanks!
What did you expect to happen?
I expected to only receive a single message containing all users when submitting a blank payload and, when submitting a user specific payload, I expected to only receive that single slot's data. That may not be realistic, but that was my response. :)
How to reproduce it (minimal and precise)
Submit a /get to a lock with ''{"pin_code": ""}'' as the payload, then watch was is returned to the primary topic.
Zigbee2MQTT version
1.30.3 commit: 24c6b2e
Adapter firmware version
7.1.1.0 build 273
Adapter
Skyconnect
Debug log
Note that the log is showing refreshes being performed every 5 seconds due to the HA 'keymaster' add on being used to manage codes. This 5 second refreshes causes 24 messages to be fired every 5 seconds. I'm thinking this may be causing a backlog as I'm seeing a delay in processing new /set messages. debug.log.txt