zwave-js / node-red-contrib-zwave-js

The most powerful, high performing and highly polished Z-Wave node for Node-RED based on Z-Wave JS. If you want a fully featured Z-Wave framework in your Node-RED instance, you have found it.
MIT License
47 stars 6 forks source link

[Help]: Use node-Red to begin inclusion #267

Closed ReziioAdmin closed 1 year ago

ReziioAdmin commented 1 year ago

How can we help?

Is there any way to kick off Zwave inclusion/exclusion using a node within a flow rather than having to use the zwave-JS UI? We would like to lock down the raw flows and only use NR dashboard to manage the whole zwave process

Version

8.0

Node-RED Version

3.0.2

What hardware are you using?

Raspberry Pi

Any code to add?

No response

marcus-j-davies commented 1 year ago

Hi @ReziioAdmin

There are 2 answers to this.

Exclusion - Yes! Sending this to the controller node, will start the exclusion routines (will put the controller into exclusion mode)
I have to advise, this is undocumented - as its not an approach I can support, and it may cause a UI glitch (so you will need to refresh after a node is excluded)

let Message = {
    payload: {
        mode: "IEAPI",
        method: "beginExclusion"
    }
}
return Message

However, for inclusion, I am afraid this isn't suitable for flow based interaction.

You see, the team behind what makes all this magic work (I am part of that team), is on target for zwave certification, and there are strict requirements to use a UI for S2 security. Therefore we do not provide "headless" inclusions.

The engine behind it all requires a UI to provide authentication Keys - and as per specification, this requires Users to be prompted with a UI - to complete the inclusion.

The UI has a lot of logic that will otherwise be complicated to achieve with flow based messaging alone

ReziioAdmin commented 1 year ago

OK -thanks. Being able to at least use Exclusion is already a help. Perhaps there will be some way in the future to add all the requirements into a headless flow .......