- Ingest IoT data over HTTP
- Open HTTP server on port 5001 and listen for HTTP
POST
requests. - Add HTTP headers (
sensor
) to flowFile attributes. - Publish HTTP payload to EventBus's dynamic address
iot.in.${sensor}
.
- Open HTTP server on port 5001 and listen for HTTP
- Ingest IoT data over WebSocket.
- Open EventBus-WebSocket bridge on port 5555.
- Let external (JavaScript), and internal(ListenHTTP) clients to publish IoT events including headers(
sensor
) to dynamic addressiot.in.${sensor}
. - Extract sensor data from JSON payload into flowFile attributes for future use.
- Store all data to HDFS(W.I.P) and summary data to NoSQL(MarkLogic) for historical data search.
- Stream real-time targeted data to user's app and physicians dashboard.
- Route Heart rate IoT data to
warning
anddanger
routesdanger
route will send email alert to Physicians.warning
route will send dashboard alert (Call Center).
- Inactivity Reporting
- Send
Inactivity Message
when there is no IoT data in the flow for 5 min. - Send
Activity Restored Message
when new IoT data received after inactivity event. - Client UI can subscript to
Inactivity
events and show graphical status.
- Send
Note: this flow depends on nifi-websocket module, download nar and copy to $NIFI_HOME/lib
- Send test IoT data via dashboard
Access this page and submit the form.
- Send test IoT data via CURL
curl ....