Symtombeskrivningar kommer in vid sämsta möjliga tillfällen. De är ofullständiga, de är känslomässiga och de hamnar på fel ställe, så någon i teamet sitter och kopierar in detaljer i anteckningar, jagar rätt kliniker och hoppas att inget akut missas.
Det här drabbar klinikchefer hårdast. Men mottagningsägare och receptionsteam känner av det också. Med WhatsApp-triageautomation kan du styra varje förfrågan till rätt kanal, flagga akuta fall snabbt och skicka konsekventa nästa steg utan att personalen behöver agera mänsklig router.
Nedan ser du hur arbetsflödet triagerar symtom med AI, hittar relevanta läkare, svarar via WhatsApp eller e-post och loggar allt i Google Sheets så att du faktiskt kan följa upp.
Så fungerar automationen
Hela n8n-arbetsflödet, från trigger till slutligt resultat:
n8n Workflow Template: WhatsApp- och e-posttriage: brådskande fall markeras
flowchart LR
subgraph sg0["AI Symptom Analysis Flow"]
direction LR
n0@{ icon: "mdi:brain", form: "rounded", label: "Medical AI Model", pos: "b", h: 48 }
n1["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/webhook.dark.svg' width='40' height='40' /></div><br/>Symptom Input Webhook"]
n2@{ icon: "mdi:robot", form: "rounded", label: "AI Symptom Analysis", pos: "b", h: 48 }
n3["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>Parse Medical Analysis"]
n4@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Check Emergency", pos: "b", h: 48 }
n5["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Find Doctors"]
n6["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>Create Emergency Response"]
n7["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>Format Medical Response"]
n8@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Check WhatsApp Available", pos: "b", h: 48 }
n9["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>Prepare WhatsApp Message"]
n10["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/httprequest.dark.svg' width='40' height='40' /></div><br/>Send WhatsApp Response"]
n11@{ icon: "mdi:message-outline", form: "rounded", label: "Send Email Response", pos: "b", h: 48 }
n12["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/webhook.dark.svg' width='40' height='40' /></div><br/>Success Response"]
n5 --> n7
n4 --> n6
n4 --> n5
n0 -.-> n2
n2 --> n3
n11 --> n12
n1 --> n2
n3 --> n4
n10 --> n12
n7 --> n8
n8 --> n9
n8 --> n11
n9 --> n10
n6 --> n8
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n2 ai
class n0 aiModel
class n4,n8 decision
class n1,n5,n10,n12 api
class n3,n6,n7,n9 code
classDef customIcon fill:none,stroke:none
class n1,n3,n5,n6,n7,n9,n10,n12 customIcon
Problemet: symtomförfrågningar blir snabbt röriga
”Hej, jag har haft tryck över bröstet sedan igår” är inte ett mejl du vill ha liggande i en inkorg i två timmar. Men det är vad som händer när intaget är utspritt över ett formulär, en chattwidget, WhatsApp och slumpmässigt vidarebefordrade meddelanden. Någon måste tolka meddelandet, avgöra om det är akut, lista ut vilken läkare som passar och sedan svara med tydlig, korrekt och regelmässigt trygg formulering. Det låter enkelt tills du gör det 20 gånger om dagen, med avbrott, saknade uppgifter och utan en samlad logg över vad som sagts.
Friktionen byggs på. Här är var det faller isär.
- Meddelanden triageras av den som råkar se dem först, vilket skapar inkonsekventa råd och onödig risk.
- Akuta fall kan se ”normala” ut i ren text, så de hanteras som vanlig tidsbokning.
- Personal slösar cirka 5–10 minuter per förfrågan på att skriva om sammanfattningar, leta upp läkares kontaktuppgifter och skicka uppföljningar.
- Utan en pålitlig logg tappar du sammanhanget senare, särskilt när patienter svarar dagar efteråt med ”Någon uppdatering?”
Lösningen: AI-triage som styr, flaggar och loggar
Det här arbetsflödet gör symtomintag till en konsekvent, spårbar pipeline. Det startar i samma ögonblick som en användare skickar in symtom via en webhook (det kan vara ett formulär, ett chattverktyg eller en enkel specialbyggd sida). En AI-agent analyserar symtomen, tar fram en bedömning du faktiskt kan agera på och extraherar strukturerade fält som misstänkt tillstånd och allvarlighetsgrad. Därefter kontrollerar arbetsflödet efter akutindikatorer, hämtar närliggande eller relevanta läkaruppgifter via HTTP (eller från din egen databaslösning) och sammanställer en korrekt formaterad medicinsk sammanfattning. Till sist skickar det svaret via WhatsApp eller e-post beroende på vad användaren valt, och skriver hela interaktionen till Google Sheets för insyn och uppföljning.
Arbetsflödet startar med ett inkommande symtommeddelande. AI bedömer och formaterar detaljerna, och därefter avgör en akutkontroll om en brådskande notis ska läggas till. Sedan skickar n8n svaret via WhatsApp eller e-post och loggar interaktionen så att teamet aldrig behöver gissa vad som hände.
Det du får: automation vs. resultat
| Det här automatiserar arbetsflödet | Resultat du får |
|---|---|
|
|
Exempel: så här ser det ut
Säg att du får 20 symtomförfrågningar på en dag. Manuellt är det lätt att lägga cirka 10 minuter per styck på att läsa, sammanfatta, bedöma brådska, leta upp en relevant läkare och skicka ett svar (ungefär 3 timmar). Med det här arbetsflödet behöver personalen bara granska gränsfall och undantag: kanske 1 minut för att stickprovsgranska AI-sammanfattningen, medan n8n hanterar routning, läkarmatchning via HTTP och skickar WhatsApp eller e-post automatiskt. Även om ni fortfarande manuellt granskar några få brukar ni vinna tillbaka ungefär 2 timmar per dag.
Det här behöver du
- n8n-instans (testa n8n Cloud gratis)
- Självhosting om du föredrar det (Hostinger fungerar bra)
- Google Sheets för förfrågningsloggar och läkardata.
- WhatsApp Business API för att skicka WhatsApp-svar.
- Ollama (eller kompatibel AI-endpoint) API-åtkomst för symtombedömning.
- E-post (SMTP/Gmail) för att skicka e-postuppdateringar pålitligt.
- WhatsApp-token + phone ID (fås från din WhatsApp Business-leverantör).
Svårighetsnivå: Medel. Du kopplar upp autentiseringar, klistrar in en webhook-URL i ditt formulär/chattverktyg och justerar några meddelandemallar.
Vill du inte sätta upp det här själv? Prata med en automationsexpert (gratis 15-minuters konsultation).
Så fungerar det
En användare skickar in symtom till din webhook. ”Incoming Symptom Webhook” tar emot meddelandet tillsammans med identifierare som användar-ID och (valfritt) kanalpreferens.
AI-triage gör rörig text till strukturerad information. Clinical LLM Engine driver Symptom AI Assessment, och sedan extraherar ett kort kodsteg korrekta, strukturerade fält som du kan routa på (misstänkt tillstånd, allvarlighetsgrad och sammanfattning).
En akutkontroll avgör hur försiktigt svaret ska vara. Om bedömningen passerar din tröskel för brådska bygger arbetsflödet en akutnotis och tar med den vidare så att användaren får tydlig vägledning om eskalering.
Läkarrekommendationer och leverans sker automatiskt. n8n hämtar läkaruppgifter via HTTP-förfrågan (eller din egen datakälla), sammanställer den medicinska sammanfattningen, verifierar om WhatsApp är valt alternativ och skickar sedan meddelandet via WhatsApp eller e-post. I båda fallen returnerar arbetsflödet en payload för lyckat resultat till den ursprungliga webhooken så att ditt formulär/chattverktyg kan visa ”mottaget”.
Du kan enkelt ändra källan för läkaruppslagning till att använda ett Google Sheet (i stället för ett API) utifrån dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementation
Steg 1: Konfigurera webhook-triggern
Konfigurera den inkommande webhooken som tar emot symtomdata och startar arbetsflödet.
- Lägg till noden Incoming Symptom Webhook som din trigger.
- Ställ in HTTP Method på
POST. - Ställ in Path på
2837e22a-d927-40c4-bc43-7c2ec38cfdcf. - Ställ in Response Mode på
responseNodeför att skjuta upp svaret till Return Success Payload.
symptoms, age, gender, duration, additional_info, phone, email och valfritt location.Steg 2: Anslut den primära tjänsten
Anslut LLM-leverantören som driver den medicinska resonemangslogiken.
- Lägg till noden Clinical LLM Engine.
- Ställ in Model på
=llama3.2-16000:latest. - Inloggningsuppgifter krävs: Anslut era ollamaApi-inloggningsuppgifter.
- Bekräfta att Clinical LLM Engine är ansluten till Symptom AI Assessment som språkmodell.
Steg 3: Sätt upp AI-bedömningen och dataextraktionen
Konfigurera AI-prompten och omvandla resultatet till strukturerad bedömningsdata.
- I Symptom AI Assessment ställer ni in Text på
={{ $json.body.symptoms }}. - Behåll Prompt Type som
defineoch inkludera hela systemprompten som begär JSON-utdata. - Säkerställ att systemmeddelandet refererar till dessa uttryck:
{{ $json.body.symptoms }},{{ $json.body.age || 'Not provided' }},{{ $json.body.gender || 'Not provided' }},{{ $json.body.duration || 'Not provided' }}och{{ $json.body.additional_info || 'None' }}. - Lägg till Extract Assessment Data med det medföljande parsingskriptet för att skapa fälten
analysisochtimestampfrån AI-utdata.
Steg 4: Konfigurera routing och medicinsk berikning
Separera akuta fall från icke-akuta, hämta läkarrekommendationer och bygg det medicinska svaret.
- Konfigurera Emergency Level Check med ett strängvillkor: Value 1
={{ $json.analysis.urgency_level }}och Value 2emergency. - För akuta fall, anslut till Build Emergency Notice för att generera det brådskande meddelandet och patientpayloaden.
- För icke-akuta fall, anslut till Locate Nearby Doctors och ställ in URL på
https://api.betterdoctor.com/2016-03-01/doctors. - I Locate Nearby Doctors lägger ni till query-parametrar: specialty_uid
={{ $json.analysis.specialist_needed === 'Cardiologist' ? 'cardiologist' : $json.analysis.specialist_needed === 'Dermatologist' ? 'dermatologist' : $json.analysis.specialist_needed === 'Neurologist' ? 'neurologist' : $json.analysis.specialist_needed === 'Orthopedist' ? 'orthopedic-surgeon' : $json.analysis.specialist_needed === 'Gastroenterologist' ? 'gastroenterologist' : $json.analysis.specialist_needed === 'Pulmonologist' ? 'pulmonologist' : 'family-practitioner' }}, location={{ $json.location || 'New York, NY' }}, limit5och user_key[CONFIGURE_YOUR_API_KEY]. - Anslut Locate Nearby Doctors till Compose Medical Summary för att producera hela det medicinska svarsmeddelandet.
- Anslut både Build Emergency Notice och Compose Medical Summary till Verify WhatsApp Option.
[CONFIGURE_YOUR_API_KEY]. Ersätt den innan ni testar, annars misslyckas HTTP-anropet.Steg 5: Konfigurera utdata och leverans
Styr leveransen till WhatsApp om ett telefonnummer finns, annars skickas e-post och webhooken besvaras.
- I Verify WhatsApp Option behåller ni villkoret Value 1
={{ $json.phone_number }}med OperationisNotEmpty. - För WhatsApp-leverans, anslut till Assemble WhatsApp Payload och behåll payload-strukturen som sätter
messaging_producttillwhatsapp. - Anslut Assemble WhatsApp Payload till Dispatch WhatsApp Reply och ställ in URL på
https://graph.facebook.com/v17.0/YOUR_PHONE_NUMBER_ID/messages. - För e-postleverans, anslut den icke-WhatsApp-vägen från Verify WhatsApp Option till Send Email Update.
- I Send Email Update ställer ni in HTML på
={{ $json.message.replace(/\n/g, ', Subject på
').replace(/\*/g, '') }}🏥 Your Medical Assessment & Doctor Recommendations, To Email på={{ $json.email }}och From Email på[YOUR_EMAIL]. - Inloggningsuppgifter krävs: Anslut era smtp-inloggningsuppgifter i Send Email Update.
- Anslut både Dispatch WhatsApp Reply och Send Email Update till Return Success Payload för att stänga webhooken.
YOUR_PHONE_NUMBER_ID i Dispatch WhatsApp Reply innan ni går live.Steg 6: Testa och aktivera ert arbetsflöde
Kör ett fullständigt test för att validera AI-bedömningen, routingen och leveransen av svaret.
- Klicka på Execute Workflow och skicka en POST-förfrågan till URL:en för Incoming Symptom Webhook med exempeldata för symtom.
- Verifiera att Symptom AI Assessment returnerar en JSON-bedömning och att Extract Assessment Data bygger
analysis-objektet. - Bekräfta att Emergency Level Check routar till Build Emergency Notice när
urgency_leveläremergency, annars till Locate Nearby Doctors och Compose Medical Summary. - Kontrollera WhatsApp-utdata om
phone_numberfinns, eller e-postutdata via Send Email Update om den inte gör det. - Säkerställ att Return Success Payload svarar med
{"status":"success"}och inkluderarurgency_levelochtimestamp. - När ni är nöjda, växla arbetsflödet till Active för produktionsanvändning.
Vanliga fallgropar
- Inloggningar för Google Sheets kan löpa ut eller kräva specifika behörigheter. Om saker skapar fel, kontrollera n8n-skärmen Credentials och bekräfta att det kopplade Google-kontot fortfarande har åtkomst till arket.
- Om du använder Wait-noder eller extern bearbetning varierar timing. Det här flödet använder HTTP-förfrågningar och AI-svar, så höj eventuella timeout-/retry-inställningar om efterföljande steg misslyckas för att läkaruppslagningen eller WhatsApp-skicket kom tillbaka sent.
- Standardprompter i AI-noder är generiska. Lägg in dina kliniska ramar och tonalitet tidigt (till exempel vad som gäller vid bröstsmärta, andnöd, svimning), annars kommer du att redigera utdata för alltid.
Vanliga frågor
Cirka 30–60 minuter om dina WhatsApp- och e-postinloggningar är klara.
Nej. Du kopplar främst konton och redigerar några meddelandemallar. De enda ”kod”-delarna finns redan med i arbetsflödet.
Ja. n8n har ett gratis alternativ för självhosting och en gratis provperiod på n8n Cloud. Cloud-planer börjar på 20 USD/månad för högre volymer. Du behöver också räkna in kostnader för att hosta Ollama (ofta bara din server) eller eventuella externa AI-API-kostnader om du använder en betald modell.
Två alternativ: n8n Cloud (hanterad tjänst, enklast uppsättning) eller självhosting på en VPS. För självhosting är Hostinger VPS prisvärd och hanterar n8n bra. Självhosting ger dig obegränsat antal körningar men kräver grundläggande serverhantering.
Ja, men då vill du byta ut HTTP Request-steget ”Locate Nearby Doctors” mot en Google Sheets-uppslagning och sedan mappa de returnerade kolumnerna in i steget ”Compose Medical Summary”. Vanliga anpassningar är att ändra brådskegränserna i ”Emergency Level Check”, skriva om texten i ”Build Emergency Notice” och lägga till specialitetsbaserad routning (pediatrik vs. kardiologi) innan meddelandet skickas.
Oftast beror det på utgångna eller felaktiga WhatsApp Business-inloggningar (token, phone number ID eller endpoint-URL) i HTTP Request-noden. Dubbelkolla leverantörens dashboard först och bekräfta sedan att samma värden finns sparade i n8n-credentials eller miljövariabler. Om det bara misslyckas vid hög volym kan du slå i rate limits, så retries och backoff hjälper.
En typisk mindre klinik kan köra hundratals per dag så länge din AI-endpoint och WhatsApp-leverantör hänger med.
Ofta ja, eftersom det här arbetsflödet behöver förgreningslogik (akut vs. rutin), AI-bearbetning och anpassad formatering, och det tenderar att bli dyrt eller klumpigt i enklare automationsverktyg. n8n låter dig också självhosta, vilket spelar roll när du vill ha förutsägbara kostnader och mer kontroll över känsliga dataflöden. Nackdelen är uppsättningen: du kommer att lägga lite mer tid på att få inloggningar rätt, särskilt WhatsApp. Om du bara behöver ”skicka varje formulär till e-post” är Zapier okej. Om du behöver triage plus routning plus loggning är n8n en renare match. Prata med en automationsexpert om du vill ha hjälp att välja.
När detta väl är igång slutar symtomintaget kännas som en brandövning. Arbetsflödet sköter sorteringen, eskaleringen och spårbarheten, så att teamet kan fokusera på faktisk vård och verklig uppföljning.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.