node-red-contrib-azure-iothub-service 0.0.3
Nodes to communicate with devices via Azure IoT Hub and Event Hubs.
node-red-contrib-azure-iothub-service
Installation
npm install -g node-red-contrib-azure-iothub-service
Usage
eventhub-recv
Receive messages sent from devices via the builtin Event Hub.
iothub-send
Send cloud2device messages to your IoT Hub devices.
iothub-registry
Manage IoT Hub Devices.
List devices:
method: "device"
Get device:
method: "device", deviceId: str
Create device:
method: "device.create", deviceId: str
{
status: 'enabled',
authentication: {
x509Thumbprint: { primaryThumbprint: XXX, secondaryThumbprint: XXX }
}
}
Get twin:
method: "twin", deviceId: str
Update twin:
method: "twin.update", deviceId: str
{
tags: { city: "Redmond" },
properties: {
desired: { telemetryInterval: 1000 },
}
}
Delete device:
method: "device.delete", deviceId: str
List configurations:
method: "config"
Create configuration:
method: "config.create"
{
id: 'chiller4000x',
content: {
deviceContent: {
'properties.desired.chiller-water': {
temperature: 66,
pressure: 28
}
}
},
metrics: {
queries: {
waterSettingsPending: "SELECT deviceId FROM devices WHERE properties.reported.chillerWaterSettings.status='pending'"
}
},
targetCondition: "properties.reported.chillerProperties.model='4000x'",
priority: 20
}
Get configuration:
method: "config", configId: str
Update configuration:
method: "config.update", configId: str
{
content: {
deviceContent: {
'properties.desired.chiller-water': {
pressure: 29
}
}
}
}
Delete configuration:
method: "config.delete", configId: str
other functionality
- checkpoint store
- validate NodeRedCheckpointStore
- local file checkpoint store (could use contextstore = localfilesystem)
- Azure Blob backed store
- generate certs
lower-priority
- device methods:
- https://github.com/Azure/azure-iot-hub-node/blob/main/samples/dmpatterns_reboot_service.js
- https://github.com/Azure/azure-iot-hub-node/blob/main/samples/dmpatterns_fwupdate_service.js
- https://github.com/Azure/azure-iot-hub-node/blob/main/samples/invoke_command.js
- https://github.com/Azure/azure-iot-hub-node/blob/main/samples/invoke_component_command.js
- https://github.com/Azure/azure-iot-hub-node/blob/main/samples/module_method.js
- file notification
- jobs
even lower priority
- bulk blob import export
- https://github.com/Azure/azure-iot-hub-node/blob/main/samples/registry_bulk_import_sample.js
- https://github.com/Azure/azure-iot-hub-node/blob/main/samples/registry_bulk_export_sample.js
- https://github.com/Azure/azure-iot-hub-node/blob/main/samples/registry_bulk_sample.js
- https://github.com/Azure/azure-iot-hub-node/blob/main/samples/registry_import_managed_identity_sample.js
- https://github.com/Azure/azure-iot-hub-node/blob/main/samples/registry_export_managed_identity_sample.js
- device modules
- token credentials
- digital twin client (already accomplished with registry afaict)
- edge deployment