KI-angetriebenes Grok-3-Gesundheitswarnsystem mit Familienbenachrichtigungsfunktion
Dies ist ein Personal Productivity, AI Summarization-Bereich Automatisierungsworkflow mit 17 Nodes. Hauptsächlich werden If, Set, Merge, Webhook, EmailSend und andere Nodes verwendet. Gesundheitsüberwachungssystem basierend auf Grok-3 AI-Analyse mit Familien/Ärzte-E-Mail-Alarmen
- •HTTP Webhook-Endpunkt (wird von n8n automatisch generiert)
Verwendete Nodes (17)
{
"id": "9rQdx3QQnniDVxCy",
"meta": {
"instanceId": "b91e510ebae4127f953fd2f5f8d40d58ca1e71c746d4500c12ae86aad04c1502"
},
"name": "AI-Powered Grok-3 Health Alert System with Family Notifications",
"tags": [],
"nodes": [
{
"id": "765f5740-a408-4a7c-91c2-bbb57c9b0999",
"name": "Webhook - Gesundheitsdaten übermitteln",
"type": "n8n-nodes-base.webhook",
"position": [
48,
32
],
"webhookId": "89151f45-c9a4-4fc9-b000-f1cc96b44b14",
"parameters": {
"path": "health-monitor",
"options": {},
"httpMethod": "POST",
"responseMode": "responseNode"
},
"typeVersion": 2
},
{
"id": "f5ac1b49-b445-4041-8452-c029ce8c70cf",
"name": "Gesundheitsdaten extrahieren",
"type": "n8n-nodes-base.set",
"position": [
256,
32
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "a1",
"name": "patientName",
"type": "string",
"value": "={{ $json.body.patientName }}"
},
{
"id": "a2",
"name": "age",
"type": "number",
"value": "={{ $json.body.age }}"
},
{
"id": "a3",
"name": "bloodPressure",
"type": "string",
"value": "={{ $json.body.bloodPressure }}"
},
{
"id": "a4",
"name": "heartRate",
"type": "number",
"value": "={{ $json.body.heartRate }}"
},
{
"id": "a5",
"name": "weight",
"type": "number",
"value": "={{ $json.body.weight }}"
},
{
"id": "a6",
"name": "height",
"type": "number",
"value": "={{ $json.body.height }}"
},
{
"id": "a7",
"name": "dietLog",
"type": "string",
"value": "={{ $json.body.dietLog }}"
},
{
"id": "a8",
"name": "symptoms",
"type": "string",
"value": "={{ $json.body.symptoms }}"
},
{
"id": "a9",
"name": "familyEmail",
"type": "string",
"value": "={{ $json.body.familyEmail }}"
},
{
"id": "a10",
"name": "doctorEmail",
"type": "string",
"value": "={{ $json.body.doctorEmail }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "54e449f5-e947-48c0-b1a1-8909c2371943",
"name": "KI-Gesundheitsanalyse-Agent",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
432,
16
],
"parameters": {
"text": "=You are a health monitoring AI assistant. Analyze the following patient data and provide a comprehensive health assessment.\n\nPatient Information:\n- Name: {{ $json.patientName }}\n- Age: {{ $json.age }}\n- Blood Pressure: {{ $json.bloodPressure }}\n- Heart Rate: {{ $json.heartRate }} bpm\n- Weight: {{ $json.weight }} kg\n- Height: {{ $json.height }} cm\n- Recent Diet: {{ $json.dietLog }}\n- Symptoms: {{ $json.symptoms }}\n\nProvide your analysis in the following JSON format:\n{\n \"healthStatus\": \"good/concerning/poor\",\n \"riskLevel\": \"low/medium/high\",\n \"healthSummary\": \"Brief overall assessment\",\n \"dietAnalysis\": \"Analysis of dietary habits\",\n \"vitalsConcerns\": \"Any concerns about vitals\",\n \"recommendations\": \"Specific health recommendations\",\n \"requiresImmediateAttention\": true/false,\n \"alertFamily\": true/false,\n \"alertDoctor\": true/false\n}\n\nBe thorough and consider BMI, blood pressure ranges, heart rate norms, and nutritional balance.",
"options": {
"systemMessage": "You are a medical AI assistant specializing in health monitoring and preventive care. Provide accurate, evidence-based assessments while being clear that you are not replacing professional medical advice."
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 1.7
},
{
"id": "63fbd346-a5ed-4fbf-9017-c6b1049998eb",
"name": "Strukturierter Ausgabe-Parser",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
576,
240
],
"parameters": {},
"typeVersion": 1.2
},
{
"id": "a4f56a13-b529-481f-bc91-2b038473ab46",
"name": "Prüfen, ob Warnung erforderlich ist",
"type": "n8n-nodes-base.if",
"position": [
704,
16
],
"parameters": {
"options": {},
"conditions": {
"options": {
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "or",
"conditions": [
{
"id": "c1",
"operator": {
"type": "boolean",
"operation": "true",
"singleValue": true
},
"leftValue": "={{ $json.output.alertFamily }}",
"rightValue": true
}
]
}
},
"typeVersion": 2.1
},
{
"id": "ce55fffe-20f2-4415-aabf-c0ee71431e49",
"name": "Warnungsdaten vorbereiten",
"type": "n8n-nodes-base.set",
"position": [
928,
-16
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "a1",
"name": "familyEmail",
"type": "string",
"value": "={{ $('Extract Health Data').item.json.familyEmail }}"
},
{
"id": "a2",
"name": "doctorEmail",
"type": "string",
"value": "={{ $('Extract Health Data').item.json.doctorEmail }}"
},
{
"id": "a3",
"name": "patientName",
"type": "string",
"value": "={{ $('Extract Health Data').item.json.patientName }}"
},
{
"id": "a4",
"name": "healthStatus",
"type": "string",
"value": "={{ $json.output.healthStatus }}"
},
{
"id": "a5",
"name": "riskLevel",
"type": "string",
"value": "={{ $json.output.riskLevel }}"
},
{
"id": "a6",
"name": "healthSummary",
"type": "string",
"value": "={{ $json.output.healthSummary }}"
},
{
"id": "a7",
"name": "recommendations",
"type": "string",
"value": "={{ $json.output.recommendations }}"
},
{
"id": "a8",
"name": "vitalsConcerns",
"type": "string",
"value": "={{ $json.output.vitalsConcerns }}"
},
{
"id": "a9",
"name": "dietAnalysis",
"type": "string",
"value": "={{ $json.output.dietAnalysis }}"
},
{
"id": "a10",
"name": "alertDoctor",
"type": "boolean",
"value": "={{ $json.output.alertDoctor }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "9cfcd640-34b9-4ae8-8fa7-72f7cd7e8288",
"name": "E-Mail an Familie senden",
"type": "n8n-nodes-base.emailSend",
"position": [
1104,
-16
],
"webhookId": "7076809d-c1f4-4c77-92b4-f176ee375baf",
"parameters": {
"options": {},
"subject": "=⚠️ Health Alert for {{ $json.patientName }}",
"toEmail": "={{ $json.familyEmail }}",
"fromEmail": "health-monitor@yourdomain.com"
},
"typeVersion": 2.1
},
{
"id": "cba5f6d2-1a84-416e-a2fb-720987cc2eb0",
"name": "Prüfen, ob Arzt-Warnung erforderlich ist",
"type": "n8n-nodes-base.if",
"position": [
1280,
-16
],
"parameters": {
"options": {},
"conditions": {
"options": {
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "or",
"conditions": [
{
"id": "c1",
"operator": {
"type": "boolean",
"operation": "true",
"singleValue": true
},
"leftValue": "={{ $json.alertDoctor }}",
"rightValue": true
}
]
}
},
"typeVersion": 2.1
},
{
"id": "335af2a1-2235-4000-a4f7-23cb76812617",
"name": "E-Mail an Arzt senden",
"type": "n8n-nodes-base.emailSend",
"position": [
1456,
-80
],
"webhookId": "23d7103a-5180-4a43-925d-9985f81d6957",
"parameters": {
"options": {},
"subject": "=Medical Alert: {{ $json.patientName }} - {{ $json.riskLevel.toUpperCase() }} Risk",
"toEmail": "={{ $json.doctorEmail }}",
"fromEmail": "health-monitor@yourdomain.com"
},
"typeVersion": 2.1
},
{
"id": "c6a213de-e02f-40a9-905f-afefc6e2bb82",
"name": "Warnungsergebnisse zusammenführen",
"type": "n8n-nodes-base.set",
"position": [
1648,
32
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "a1",
"name": "status",
"type": "string",
"value": "alerts_sent"
},
{
"id": "a2",
"name": "familyAlerted",
"type": "boolean",
"value": "={{ $('Send Email to Family').item.json.success || false }}"
},
{
"id": "a3",
"name": "doctorAlerted",
"type": "boolean",
"value": "={{ $('Send Email to Doctor').item.json.success || false }}"
},
{
"id": "a4",
"name": "message",
"type": "string",
"value": "Health alerts have been sent successfully"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "5f8c81da-5b99-4548-a038-44ec743523e0",
"name": "Keine Warnung erforderlich",
"type": "n8n-nodes-base.set",
"position": [
1152,
160
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "a1",
"name": "status",
"type": "string",
"value": "no_alert_needed"
},
{
"id": "a2",
"name": "message",
"type": "string",
"value": "Health status is within normal parameters. No alerts required."
},
{
"id": "a3",
"name": "healthStatus",
"type": "string",
"value": "={{ $json.output.healthStatus }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "e77eff85-7797-4c7b-b17f-af13f50c90c1",
"name": "Ergebnisse kombinieren",
"type": "n8n-nodes-base.merge",
"position": [
1808,
144
],
"parameters": {
"mode": "combine",
"options": {},
"combineBy": "combineAll"
},
"typeVersion": 3
},
{
"id": "877681a2-34e4-4615-b943-e62fe4a48b8e",
"name": "Antwort an Webhook",
"type": "n8n-nodes-base.respondToWebhook",
"position": [
1968,
144
],
"parameters": {
"options": {},
"respondWith": "json",
"responseBody": "={{ { \"success\": true, \"analysisComplete\": true, \"healthStatus\": $json.healthStatus || $('AI Health Analysis Agent').item.json.output.healthStatus, \"alertsSent\": $json.status === 'alerts_sent', \"message\": $json.message } }}"
},
"typeVersion": 1.1
},
{
"id": "16378fbf-436a-4105-bacb-19c8a233ed46",
"name": "OpenRouter Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenRouter",
"position": [
400,
240
],
"parameters": {
"model": "x-ai/grok-3",
"options": {}
},
"credentials": {
"openRouterApi": {
"id": "fKnn6LL7cRFqNHDX",
"name": "OpenRouter account2"
}
},
"typeVersion": 1
},
{
"id": "5e920ef8-b1a3-4438-bcfa-aa26f055a5e8",
"name": "Notizzettel",
"type": "n8n-nodes-base.stickyNote",
"position": [
-48,
-448
],
"parameters": {
"width": 544,
"height": 432,
"content": "## Introduction\nAutomates patient health monitoring by analyzing submitted health data via AI, determining alert necessity, and notifying family and doctors when critical conditions detected. \n\n## How It Works\nWebhook receives health data, AI agent analyzes vitals using OpenRouter with structured parsing. Conditional logic checks alert necessity. If yes: prepares data, emails family, checks doctor criteria, sends doctor email, merges results. If no: skips alerts. Combines outcomes and responds to webhook.\n\n## Workflow Template\nWebhook → Extract Data → AI Agent → [OpenRouter + Memory + Parser] → Check Alert → [Prepare + Email Family + Check Doctor + Email Doctor] OR [No Alert] → Merge → Combine → Respond\n\n\n\n\n"
},
"typeVersion": 1
},
{
"id": "9c5fdbe1-805a-4256-97fe-bee6ecee4ed7",
"name": "Notizzettel 1",
"type": "n8n-nodes-base.stickyNote",
"position": [
1216,
-448
],
"parameters": {
"color": 3,
"width": 928,
"height": 320,
"content": "## Use Cases\n**Chronic Disease:** Diabetic submits glucose readings. AI detects >250mg/dL, alerts family and endocrinologist. **Elderly Care:** Senior's vitals monitored via wearable. AI identifies irregular rhythm, emails caregiver and cardiologist. \n\n## Customization\nAdjust thresholds by demographics. Add vital types (O2, glucose trends). Customize AI prompts for conditions. Integrate SMS via Twilio. Add escalation logic. Include medication tracking. Connect EHR systems. Implement frequency limits. Add dashboard reporting.\n\n## Benefits\n**Rapid Response:** Detects emergencies in seconds. **Intelligent Filtering:** Prevents false alarms. **Family Peace:** Automated notifications keep loved ones informed. **Clinical Efficiency:** "
},
"typeVersion": 1
},
{
"id": "faebc33f-0151-401c-95a1-f9195e64c33a",
"name": "Notizzettel 2",
"type": "n8n-nodes-base.stickyNote",
"position": [
528,
-448
],
"parameters": {
"color": 5,
"width": 672,
"height": 432,
"content": "\n## Workflow Steps\n1. **Reception & Extraction:** Webhook receives vitals/symptoms, parses JSON payload\n2. **AI Analysis:** OpenRouter analyzes vitals against ranges, accesses history via Memory Tool, formats assessment via Output Parser\n3. **Routing & Notification:** Conditional logic checks severity. Alert path emails family/doctor if critical. No alert logs status\n4. **Consolidation:** Merges outcomes, sends webhook response\n\n## Setup Instructions\nConfigure webhook endpoint with auth token. Add OpenRouter API key and select model. Set up AI Agent with Memory Tool and Output Parser. Connect Gmail/SMTP for notifications with recipient addresses. Configure alert thresholds (temp >38.5°C, BP >140/90, HR <60/>100). Set doctor notification criteria.\n\n## Prerequisites\nn8n instance, OpenRouter API key, AI model access, Patient database, Gmail/SMTP credentials, Family contacts, Doctor contacts, Webhook authentication"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "7d5284a7-cef4-4526-ad6f-02cbf608ef9c",
"connections": {
"e77eff85-7797-4c7b-b17f-af13f50c90c1": {
"main": [
[
{
"node": "877681a2-34e4-4615-b943-e62fe4a48b8e",
"type": "main",
"index": 0
}
]
]
},
"5f8c81da-5b99-4548-a038-44ec743523e0": {
"main": [
[
{
"node": "e77eff85-7797-4c7b-b17f-af13f50c90c1",
"type": "main",
"index": 1
}
]
]
},
"ce55fffe-20f2-4415-aabf-c0ee71431e49": {
"main": [
[
{
"node": "9cfcd640-34b9-4ae8-8fa7-72f7cd7e8288",
"type": "main",
"index": 0
}
]
]
},
"f5ac1b49-b445-4041-8452-c029ce8c70cf": {
"main": [
[
{
"node": "54e449f5-e947-48c0-b1a1-8909c2371943",
"type": "main",
"index": 0
}
]
]
},
"c6a213de-e02f-40a9-905f-afefc6e2bb82": {
"main": [
[
{
"node": "e77eff85-7797-4c7b-b17f-af13f50c90c1",
"type": "main",
"index": 0
}
]
]
},
"335af2a1-2235-4000-a4f7-23cb76812617": {
"main": [
[
{
"node": "c6a213de-e02f-40a9-905f-afefc6e2bb82",
"type": "main",
"index": 0
}
]
]
},
"9cfcd640-34b9-4ae8-8fa7-72f7cd7e8288": {
"main": [
[
{
"node": "cba5f6d2-1a84-416e-a2fb-720987cc2eb0",
"type": "main",
"index": 0
}
]
]
},
"a4f56a13-b529-481f-bc91-2b038473ab46": {
"main": [
[
{
"node": "ce55fffe-20f2-4415-aabf-c0ee71431e49",
"type": "main",
"index": 0
}
],
[
{
"node": "5f8c81da-5b99-4548-a038-44ec743523e0",
"type": "main",
"index": 0
}
]
]
},
"16378fbf-436a-4105-bacb-19c8a233ed46": {
"ai_languageModel": [
[
{
"node": "54e449f5-e947-48c0-b1a1-8909c2371943",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"54e449f5-e947-48c0-b1a1-8909c2371943": {
"main": [
[
{
"node": "a4f56a13-b529-481f-bc91-2b038473ab46",
"type": "main",
"index": 0
}
]
]
},
"63fbd346-a5ed-4fbf-9017-c6b1049998eb": {
"ai_outputParser": [
[
{
"node": "54e449f5-e947-48c0-b1a1-8909c2371943",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"cba5f6d2-1a84-416e-a2fb-720987cc2eb0": {
"main": [
[
{
"node": "335af2a1-2235-4000-a4f7-23cb76812617",
"type": "main",
"index": 0
}
],
[
{
"node": "c6a213de-e02f-40a9-905f-afefc6e2bb82",
"type": "main",
"index": 0
}
]
]
},
"765f5740-a408-4a7c-91c2-bbb57c9b0999": {
"main": [
[
{
"node": "f5ac1b49-b445-4041-8452-c029ce8c70cf",
"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?
Experte - Persönliche Produktivität, KI-Zusammenfassung
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
Cheng Siong Chin
@cschinDr. Cheng Siong CHIN serves as a Professor in Intelligent Systems Modelling and Simulation in Newcastle University, Singapore. His academic credentials include an M.Sc. in Advanced Control and Systems Engineering from The University of Manchester and a Ph.D. in Robotics from Nanyang Technological University.
Diesen Workflow teilen