IoT-Sensordatenbereiniger + InfluxDB-Logger (n8n | Webhook | Function | InfluxDB)
Dies ist ein Engineering, Multimodal AI-Bereich Automatisierungsworkflow mit 4 Nodes. Hauptsächlich werden Set, Webhook, Function, HttpRequest und andere Nodes verwendet. Bereinigung von IoT-Sensordaten und Protokollierung in InfluxDB (Webhook | Function | HTTP)
- •HTTP Webhook-Endpunkt (wird von n8n automatisch generiert)
- •Möglicherweise sind Ziel-API-Anmeldedaten erforderlich
Verwendete Nodes (4)
Kategorie
{
"id": "Vz7fCuVAkUFMUjHC",
"meta": {
"instanceId": "14e4c77104722ab186539dfea5182e419aecc83d85963fe13f6de862c875ebfa",
"templateCredsSetupCompleted": true
},
"name": "IoT Sensor Data Cleaner + InfluxDB Logger (n8n | Webhook | Function | InfluxDB)",
"tags": [],
"nodes": [
{
"id": "0a94db25-793e-4d2d-867a-5fe8132c849c",
"name": "Sensor-Eingang",
"type": "n8n-nodes-base.webhook",
"position": [
-620,
-60
],
"webhookId": "278534e3-2340-4504-ac50-9c0c1df4e4de",
"parameters": {
"path": "sensor-data",
"options": {
"responseData": "{\"status\":\"received\"}"
},
"httpMethod": "POST"
},
"typeVersion": 1
},
{
"id": "7b1507ea-8760-45ff-bee8-d656723ce34e",
"name": "Daten bereinigen & transformieren",
"type": "n8n-nodes-base.function",
"position": [
-220,
-60
],
"parameters": {
"functionCode": "const data = $json.body;\n\nfunction isValid(value, min, max) {\n return typeof value === 'number' && value >= min && value <= max;\n}\n\nif (!isValid(data.temperature, -50, 150) || \n !isValid(data.humidity, 0, 100) || \n !isValid(data.voltage, 0, 500)) {\n throw new Error('Invalid sensor data range');\n}\n\nconst cleaned = {\n temperature: Math.round(data.temperature * 10) / 10,\n humidity: Math.round(data.humidity * 10) / 10,\n voltage: Math.round(data.voltage * 10) / 10,\n timestamp: new Date(data.timestamp).toISOString()\n};\n\nreturn [\n {\n json: cleaned\n }\n];"
},
"typeVersion": 1
},
{
"id": "2bd6195b-4989-4e86-a622-79c5131ccf4e",
"name": "Konfiguration setzen",
"type": "n8n-nodes-base.set",
"position": [
-420,
-60
],
"parameters": {
"values": {
"string": [
{
"name": "influxDbHost",
"value": "hosturl"
},
{
"name": "influxDbToken",
"value": "token"
},
{
"name": "influxDbBucket",
"value": "bucket"
},
{
"name": "influxDbOrg",
"value": "org"
},
{
"name": "measurement",
"value": "table"
}
]
},
"options": {}
},
"typeVersion": 1
},
{
"id": "6afbb252-6628-4ad3-81da-f8a5db70c171",
"name": "HTTP-Anfrage",
"type": "n8n-nodes-base.httpRequest",
"position": [
20,
-60
],
"parameters": {
"url": "={{$node[\"Set Config\"].json[\"influxDbHost\"]}}/api/v2/write",
"body": "={{$node[\"Set Config\"].json[\"measurement\"]}} temperature={{$json[\"temperature\"]}},humidity={{$json[\"humidity\"]}},voltage={{$json[\"voltage\"]}} {{Date.parse($json[\"timestamp\"])}}",
"method": "POST",
"options": {},
"sendBody": true,
"sendQuery": true,
"contentType": "raw",
"sendHeaders": true,
"rawContentType": "text/plain",
"queryParameters": {
"parameters": [
{
"name": "bucket",
"value": "={{$node[\"Set Config\"].json[\"influxDbBucket\"]}}"
},
{
"name": "org",
"value": "={{$node[\"Set Config\"].json[\"influxDbOrg\"]}}"
},
{
"name": "precision",
"value": "={{$node[\"Set Config\"].json[\"precision\"]}}"
}
]
},
"headerParameters": {
"parameters": [
{
"name": "Authorization",
"value": "Token {{$node[\"Set Config\"].json[\"influxDbToken\"]}}"
}
]
}
},
"typeVersion": 4.2
}
],
"active": false,
"settings": {
"executionOrder": "v1"
},
"versionId": "bbe71c64-0ee9-4bef-af35-99f00227f20f",
"connections": {
"2bd6195b-4989-4e86-a622-79c5131ccf4e": {
"main": [
[
{
"node": "7b1507ea-8760-45ff-bee8-d656723ce34e",
"type": "main",
"index": 0
}
]
]
},
"6afbb252-6628-4ad3-81da-f8a5db70c171": {
"main": [
[]
]
},
"0a94db25-793e-4d2d-867a-5fe8132c849c": {
"main": [
[
{
"node": "2bd6195b-4989-4e86-a622-79c5131ccf4e",
"type": "main",
"index": 0
}
]
]
},
"7b1507ea-8760-45ff-bee8-d656723ce34e": {
"main": [
[
{
"node": "6afbb252-6628-4ad3-81da-f8a5db70c171",
"type": "main",
"index": 0
}
]
]
}
}
}Wie verwende ich diesen Workflow?
Kopieren Sie den obigen JSON-Code, erstellen Sie einen neuen Workflow in Ihrer n8n-Instanz und wählen Sie "Aus JSON importieren". Fügen Sie die Konfiguration ein und passen Sie die Anmeldedaten nach Bedarf an.
Für welche Szenarien ist dieser Workflow geeignet?
Anfänger - Engineering, Multimodales KI
Ist es kostenpflichtig?
Dieser Workflow ist völlig kostenlos. Beachten Sie jedoch, dass Drittanbieterdienste (wie OpenAI API), die im Workflow verwendet werden, möglicherweise kostenpflichtig sind.
Verwandte Workflows
WeblineIndia
@weblineindiaA Leading Software Engineering, Consulting & Outsourcing Services Company in USA & India serving Clients Globally since 1999.
Diesen Workflow teilen