Lock code as trigger
-
I'd like to trigger off of the entry of someone's lock code into my Schlage CONNECT lock. I've stared at my options in the Entities and the closest I can come is the stored
x_hubitat_extra_attributes.lastCodeName="Nik"
.It just doesn't feel quite 100% like what I'm looking for - but nothing else comes even close.
-
Unless someone has specific experience with the device and can answer, you are blazing the trail here. That may be all you get.
It may be useful to take a closer look, though. Can you please restart MSR, and then grab and post your
logs/hubitat_devices.json
file. -
Unless someone has specific experience with the device and can answer, you are blazing the trail here. That may be all you get.
It may be useful to take a closer look, though. Can you please restart MSR, and then grab and post your
logs/hubitat_devices.json
file.@toggledbits As requested, obvious info redacted.
"id": "25", "name": "Schlage BE468/BE469 Lock", "label": "Front Door", "type": "Schlage BE468/BE469 Lock", "attributes": [ { "name": "lock", "currentValue": "unlocked", "dataType": "ENUM", "values": [ "locked", "unlocked with timeout", "unlocked", "unknown" ] }, { "name": "lockCodes", "currentValue": "{\"3\":{\"name\":\"Jen\",\"code\":\"xxxx\"},\"4\":{\"name\":\"John\",\"code\":\"xxxx\"},\"5\":{\"name\":\"Nik\",\"code\":\"xxxx\"}}", "dataType": "JSON_OBJECT" }, { "name": "codeLength", "currentValue": null, "dataType": "NUMBER" }, { "name": "lastCodeName", "currentValue": "Nik", "dataType": "STRING" }, { "name": "maxCodes", "currentValue": 30, "dataType": "NUMBER" }, { "name": "codeChanged", "currentValue": "deleted", "dataType": "ENUM", "values": [ "added", "changed", "deleted", "failed" ] }, { "name": "battery", "currentValue": 99, "dataType": "NUMBER" } ], "capabilities": [ "Configuration", "LockCodes", { "attributes": [ { "name": "lockCodes", "dataType": null }, { "name": "codeChanged", "dataType": null }, { "name": "maxCodes", "dataType": null }, { "name": "codeLength", "dataType": null } ] }, "Actuator", "Refresh", "Battery", { "attributes": [ { "name": "battery", "dataType": null } ] }, "Lock", { "attributes": [ { "name": "lock", "dataType": null } ] }, "Sensor" ], "commands": [ "configure", "deleteCode", "getCodes", "lock", "refresh", "setCode", "setCodeLength", "unlock" ] },
-
@toggledbits As requested, obvious info redacted.
"id": "25", "name": "Schlage BE468/BE469 Lock", "label": "Front Door", "type": "Schlage BE468/BE469 Lock", "attributes": [ { "name": "lock", "currentValue": "unlocked", "dataType": "ENUM", "values": [ "locked", "unlocked with timeout", "unlocked", "unknown" ] }, { "name": "lockCodes", "currentValue": "{\"3\":{\"name\":\"Jen\",\"code\":\"xxxx\"},\"4\":{\"name\":\"John\",\"code\":\"xxxx\"},\"5\":{\"name\":\"Nik\",\"code\":\"xxxx\"}}", "dataType": "JSON_OBJECT" }, { "name": "codeLength", "currentValue": null, "dataType": "NUMBER" }, { "name": "lastCodeName", "currentValue": "Nik", "dataType": "STRING" }, { "name": "maxCodes", "currentValue": 30, "dataType": "NUMBER" }, { "name": "codeChanged", "currentValue": "deleted", "dataType": "ENUM", "values": [ "added", "changed", "deleted", "failed" ] }, { "name": "battery", "currentValue": 99, "dataType": "NUMBER" } ], "capabilities": [ "Configuration", "LockCodes", { "attributes": [ { "name": "lockCodes", "dataType": null }, { "name": "codeChanged", "dataType": null }, { "name": "maxCodes", "dataType": null }, { "name": "codeLength", "dataType": null } ] }, "Actuator", "Refresh", "Battery", { "attributes": [ { "name": "battery", "dataType": null } ] }, "Lock", { "attributes": [ { "name": "lock", "dataType": null } ] }, "Sensor" ], "commands": [ "configure", "deleteCode", "getCodes", "lock", "refresh", "setCode", "setCodeLength", "unlock" ] },
@gwp1 Interestingly... Hubitat Rules Machine allows for lock code triggering so there's SOMETHING in there that allows it.
Whilst I can create a rule to do what I was looking for in Rules Machine, I really prefer to let MSR drive everything. One SSOT, (T=Truth and Troubleshooting.)
-
There's no reason not to use the extra attribute. It's fine. They're added for just that reason -- so you can get to any data that's device-specific. Since there's no consistent capability for that data across devices on Hubitat, I'm just going to leave it the way it is.
-
@gwp1 Interestingly... Hubitat Rules Machine allows for lock code triggering so there's SOMETHING in there that allows it.
Whilst I can create a rule to do what I was looking for in Rules Machine, I really prefer to let MSR drive everything. One SSOT, (T=Truth and Troubleshooting.)
@gwp1 I have done this within Vera/Reactor. I'm not sure how much will translate, but you're on a similar track to what I did.
The logic basically says "if user code has updated within the past 15 seconds AND the code is X" then perform action.
-
@gwp1 I have done this within Vera/Reactor. I'm not sure how much will translate, but you're on a similar track to what I did.
The logic basically says "if user code has updated within the past 15 seconds AND the code is X" then perform action.
@apocalypsehobby Interesting approach. I'm gonna look into this further.
-
T toggledbits locked this topic on