Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enhance Keypad unlock operation notification with userCode #7579

Open
karmingc opened this issue Jan 17, 2025 · 7 comments
Open

Enhance Keypad unlock operation notification with userCode #7579

karmingc opened this issue Jan 17, 2025 · 7 comments
Assignees
Labels
enhancement New feature or request

Comments

@karmingc
Copy link

karmingc commented Jan 17, 2025

Is your feature request related to a problem? Please describe.

Currently, whenever a lock is unlocked by a usercode, the Keypad unlock operation notification is created with the parameters: userId: {value}. However, we need to look at the users tab to confirm which code it was used. This may work for most case except the master key.

We recently tested with a Yale Assure Touchscreen Deadbolt YRD226 and when the master key was used to unlock it, the userId that was provided was actually in a disabled in the scheduling column in the users tab.

Describe the solution you'd like

  1. The Keypad unlock operation enhancing the parameters field with userCode.
  2. The Keypad unlock operation would include a parameter to indicate whether the userId/userCode represents the master key.

Describe alternatives you've considered

Open to suggestions!

Additional context

@karmingc karmingc added the enhancement New feature or request label Jan 17, 2025
@robertsLando
Copy link
Member

I think this should be something for driver? @AlCalzone

@karmingc
Copy link
Author

Should I be posting this in a different repository @robertsLando / @AlCalzone ?

@AlCalzone
Copy link
Member

Can you share a driver log where you generate these notifications? Please put it on loglevel debug and attach it here as a file (drag & drop into the text field).

I'm not entirely sure I've understood the issue.

@karmingc
Copy link
Author

Hi, no worries. I'll try to explain the issue once more:

1st ask - I have a programmed usercode 4545 on userId/slot 7. There's currently a notification that is being emitted whenever the device unlocked with that code. However, it only includes the userId. My request here would be to include the userCode.

2nd ask - I have the master usercode 1111. Whenever the device is unlocked with that code, the unlock event provides a userId that seems to be "empty"/"disabled" on the Users tab. My request + question/bug:

  • enhance the unlock event such as it indicates it was the master usercode
  • the userId on the users page is empty -- is that slot/userId dedicated to the master code?
usercode events UI users UI
programmed usercode Image Image
master usercode Image Image

logs: zwavejs_2025-01-28.log

@AlCalzone
Copy link
Member

Okay, so for normal users, we should be able to add the current user code to the event notification:

2025-01-28T14:40:20.914Z CNTRLR   [Node 043] [Notification]
                                    type:   Access Control
                                    event:  Keypad unlock operation
                                    userId: 7

I would still make it an opt-in option, since the user code should be considered sensitive information.

For the master code it might work if you query the code first. It looks like that hasn't been done, so Z-Wave JS doesn't know the code.
These older locks typically use a user code slot outside of the normal range for the master code, in this case 251.

@AlCalzone AlCalzone transferred this issue from zwave-js/zwave-js-ui Jan 29, 2025
@AlCalzone AlCalzone assigned AlCalzone and unassigned robertsLando Jan 29, 2025
@karmingc
Copy link
Author

Hi @AlCalzone,

The opt-in would be good with our team!

I was able to perform the User Code CC command get on userId 251 and it now shows on the UI.

However, I also tried the command getAdminCode and it returned FailedZWaveCommand: zwave_error: Z-Wave error 302 - Node #43 does not support the command AdminCodeGet! (ZW0302).

With the given information, would there still be a way to deterministically know whether a code was a master code with the current device?

@AlCalzone
Copy link
Member

With the given information, would there still be a way to deterministically know whether a code was a master code with the current device?

With this exact device yes, by checking if the user ID is 251. Generically for all User Code CC V1 locks, no.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants