In support of the new Node-RED plugin version of the device agent, we need to be able to distinguish between full Device Agents, and the plugin version. This is because there will be a functional gap between the two, so the platform needs to only offer the appropriate options for the lite instance.
Steps
Going to split this into two pieces of work:
Add agentType and populate
- Add
agentType column to Devices table. String/Allow null
null will represent the full Device Agent
"lite" for the plugin
- Update the Async Device Registration flow to allow the plugin to self-identify in the registration flow to ensure the value is set.
Update UX to without capabilities from lite remote instances
This is a big piece of work that can't be iterated. Initially, any functional action in the UI related to devices will need to be blocked for lite devices. We can then iteratively re-enable them as they become available in the plugin.
In support of the new Node-RED plugin version of the device agent, we need to be able to distinguish between full Device Agents, and the plugin version. This is because there will be a functional gap between the two, so the platform needs to only offer the appropriate options for the lite instance.
Steps
Going to split this into two pieces of work:
Add
agentTypeand populateagentTypecolumn toDevicestable. String/Allow nullnullwill represent the full Device Agent"lite"for the pluginUpdate UX to without capabilities from
literemote instancesThis is a big piece of work that can't be iterated. Initially, any functional action in the UI related to devices will need to be blocked for
litedevices. We can then iteratively re-enable them as they become available in the plugin.