H all,
I have poured over these forums and the web trying to get some automations back in working order that I had working on the now depracated OZW platform. I have since converted to ZWaveJStoMQTT, and have not had any functionality issues. I am currently running Home Assistant Core 2022.6.7.
That being said, I have two Kwikset 916 deadbolts that are working perfectly. I can control them manually and through HA commands and autiomations. I have set up Keymaster as well, and that is functioning well. I am able to get the generic notifications from keymaster that are somewhat baked in to that integration, but I need more.
What I need is to be able to trigger automations based on WHO unlocks the door, and this is where I hit the wall. I have tried various iterations that appear to be outdated or I simply can’t get them to work…
I have tried:
http://thissmart.house/2021/07/05/z-wave-js-locks-in-home-assistant-now-see-who-opened-the-door/
My hang up appears to be getting the input_text and input_number helper values to update. Nothing seems to work. I can listen for the events and see all of the data I am apparently supposed to see.
Below is the state of the code where I finally gave up for the automation to update the input. I really hope I pasted in the correct format am not good at coding, so unfortunately I am stuck just copying and pasting what I find here and tweaking the specifics to my system. I will gladly provide any other info that may be pertinent.
These types of automations were working on OZW, so I am desperate to get them working again. Thanks so much in advance!!
- id: lock_side_door_status_update
alias: Front Door Lock Status Update
description: Update front door lock status.
trigger:
- platform: event
event_type: zwave_js_event
condition:
- condition: template
value_template: '{{ trigger.event.data.node_id == 2 and trigger.event.data.command_class_name
== ''Notification'' }}'
action:
- service: input_text.set_value
data:
entity_id: input_text.front_lock_last_user
value: >
{% set users = [''User1'','User 2'','User3'',''User4'',''User5'',''User6''] %}
{% set userID = trigger.event.data.parameters[''userId''] %}
{% set user = ''Keypad'' if userID == null else users[userID|int -1] %}
{% if trigger.event.data.event_label == ''Manual unlock operation'' %} Manual Unlock
{% elif trigger.event.data.event_label == ''Manual lock operation'' %} Manual Lock
{% elif trigger.event.data.event_label == ''RF unlock operation'' %} RF Unlock
{% elif trigger.event.data.event_label == ''RF lock operation'' %} RF Lock
{% elif trigger.event.data.event_label == ''Keypad unlock operation'' %} Keypad Unlock ({{ user }})
{% elif trigger.event.data.event_label == ''Keypad lock operation'' %} Keypad Lock ({{ user }})
{% else %} {{trigger.event.data.event_label}}
{% endif %}'