Att skicka en röntgenbild för granskning borde vara enkelt. I stället jagar du filer, kopierar anteckningar in i mejl, vidarebefordrar samma uppdatering till Telegram och glömmer sedan att arkivera slutrapporten någonstans där den faktiskt går att hitta.
Den här automatiseringen av röntgenrapporter slår hårdast mot klinikatministratörer och verksamhetschefer, eftersom det är de som får processen att fungera med tillfälliga lösningar. Men radiologer och jourpersonal märker också av det när ett resultat försvinner i en tråd eller sparas med fel namn.
Det här flödet tar en enda uppladdning och gör om den till ett tydligt AI-utkast till rapport, en annoterad bild, ett Gmail-meddelande, en Telegram-uppdatering och ett Google Drive-arkiv. Du ser exakt hur flödet fungerar, vad du behöver och var team vanligtvis justerar det.
Så fungerar automatiseringen
Det kompletta n8n-flödet, från trigger till slutligt resultat:
n8n Workflow Template: Gmail + Telegram, röntgenrapporter delas och arkiveras
flowchart LR
subgraph sg0["X-Ray Upload Flow"]
direction LR
n0["<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/form.svg' width='40' height='40' /></div><br/>X-Ray Upload Trigger"]
n1@{ icon: "mdi:robot", form: "rounded", label: "X-Ray Analysis Step", pos: "b", h: 48 }
n2["<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/>Locate Storage Link"]
n3@{ icon: "mdi:swap-vertical", form: "rounded", label: "Map Result Fields", pos: "b", h: 48 }
n4@{ icon: "mdi:cog", form: "rounded", label: "Generate Report File", 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/>Fetch Annotated Image"]
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/merge.svg' width='40' height='40' /></div><br/>Combine Streams"]
n7@{ icon: "mdi:message-outline", form: "rounded", label: "Dispatch Email Notice", pos: "b", h: 48 }
n8["<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/telegram.svg' width='40' height='40' /></div><br/>Telegram Report Dispatch"]
n9@{ icon: "mdi:cog", form: "rounded", label: "Drive Archive Upload", pos: "b", h: 48 }
n6 --> n7
n6 --> n8
n6 --> n9
n3 --> n4
n3 --> n5
n2 --> n3
n1 --> n2
n4 --> n6
n0 --> n1
n5 --> n6
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 n0 trigger
class n1 ai
class n5 api
class n2 code
classDef customIcon fill:none,stroke:none
class n0,n2,n5,n6,n8 customIcon
Problemet: röntgenfynd sprids över flera kanaler
I verklig drift är röntgenkommunikation sällan en enda tydlig överlämning. En bild kommer in, någon kör ett AI-verktyg (eller frågar en kollega), sedan klistrar du in en sammanfattning i ett mejl, vidarebefordrar den till Telegram och försöker komma ihåg var du sparade den annoterade bilden. En vecka senare behöver du samma fall igen och då ligger det i en slumpmässig inkorgstråd eller i en chatsökning som bara fungerar om du minns exakt formulering. Det är inte bara irriterande. Det skapar förseningar, missade uppföljningar och onödigt fram och tillbaka när snabbhet är avgörande.
Friktionen ökar, särskilt när volymerna stiger eller bemanningen roterar.
- Folk skickar om samma bild och anteckningar flera gånger eftersom det inte finns någon gemensam ”slutlig” uppsättning filer.
- Manuella copy-paste-sammanfattningar leder lätt till småfel, vilket innebär extra förtydligandesamtal senare.
- Länken till den annoterade bilden försvinner eller löper ut i chatthistoriken, så någon måste skapa den på nytt.
- Arkivering blir ”jag gör det sen”, och sen kommer aldrig när dagen är full.
Lösningen: en uppladdning som analyserar, delar och arkiverar
Det här n8n-flödet skapar en enda pipeline för att bearbeta röntgenbilder och distribuera resultaten där teamet faktiskt tittar. Det börjar med ett enkelt uppladdningsformulär, så du kan skicka in en röntgenfil utan att jonglera bilagor eller först byta namn på filer. n8n skickar bilden till en VLM Run-modell (via en OpenAI-kompatibel endpoint) som returnerar en tolkning och, när det är relevant, en annoterad version av bilden där sjukdomstecken markeras. Flödet extraherar sedan den första giltiga Google Cloud Storage-bild-URL:en från AI-svaret, laddar ner den annoterade bilden och genererar en rapportfil i ren text från analysen. Till sist skickar det samma paket till Gmail och Telegram, samtidigt som både rapporten och den annoterade bilden laddas upp till en angiven Google Drive-mapp för konsekvent arkivering.
Flödet startar när någon laddar upp en röntgenbild via formulärtriggern. Därifrån skapar AI ett utkast till beskrivning och tillhandahåller länken till den annoterade bilden, och n8n gör om det till en delbar rapportfil plus en nedladdad bild. De kombinerade resultaten skickas sedan till Gmail och Telegram och arkiveras i Google Drive automatiskt.
Det här får du: automatisering vs. resultat
| Vad det här flödet automatiserar | Resultat du får |
|---|---|
|
|
Exempel: så här ser det ut i praktiken
Säg att teamet hanterar 10 röntgenfall på en dag. Manuellt kan du lägga cirka 10 minuter på att skriva eller strukturera en sammanfattning, 5 minuter på att mejla den, ytterligare 5 minuter på att skicka den till Telegram, och sedan några minuter till på att spara rapport och bild i Drive (säg cirka 25 minuter per fall). Det blir ungefär 4 timmar per dag. Med det här flödet är ”arbetet” en uppladdning som tar en minut eller två, och sedan väntar du på bearbetningen medan n8n skickar mejlet, postar till Telegram och arkiverar i Drive automatiskt.
Det här behöver du
- n8n-instans (prova n8n Cloud gratis)
- Alternativ för egen hosting om du föredrar det (Hostinger fungerar bra)
- VLM Run för röntgenbildanalys via VLM.
- Gmail för att mejla rapporten och bilagorna.
- Telegram för att notifiera en chatt eller grupp direkt.
- Google Drive för att lagra rapporter och annoterade bilder.
- API-inloggningsuppgifter för VLM Run (hämta dem från ditt VLM Run-konto/din dashboard)
- Telegram-bottoken (hämta den via BotFather i Telegram)
Kunskapsnivå: Medel. Du kopplar OAuth-konton, klistrar in API-uppgifter och verifierar filhantering i en testkörning.
Vill du inte sätta upp detta själv? Prata med en automationsspecialist (gratis 15-minuters konsultation).
Så fungerar det
Uppladdning triggar flödet. En formulärtrigger tar emot röntgenfilen, vilket gör att personal kan skicka in från en enda, repeterbar plats i stället för att mejla runt bilagor.
AI analyserar bilden. n8n skickar den uppladdade bilden till VLM Run med en OpenAI-kompatibel request och får tillbaka en texttolkning plus (ofta) en länk till en markerad utdata-bild.
Flödet paketerar ”fallresultatet”. Ett litet kodsteg hittar den första giltiga Google Cloud Storage-bild-URL:en, sedan laddar n8n ner den annoterade bilden och omvandlar analysens text till en .txt-rapportfil.
Distribution och arkivering sker parallellt. n8n slår ihop rapport- och bildströmmen, skickar mejlet via Gmail, postar samma innehåll till Telegram och laddar upp båda filerna till Google Drive för långsiktig arkivering.
Du kan enkelt ändra mottagarreglerna för att styra olika fall till olika läkare eller Telegram-grupper utifrån dina behov. Se den fullständiga implementeringsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementation
Steg 1: Konfigurera formulärtriggern
Konfigurera det inkommande uppladdningsformuläret som startar arbetsflödet och fångar röntgenfilen.
- Lägg till och öppna X-Ray Upload Trigger.
- Ställ in Form Title på
Upload your data to test RAG. - Under Form Fields, lägg till ett File-fält med etiketten
dataoch aktivera Required Field. - Ställ in Accept File Types på
.pdf, .csv.
data kan efterföljande filhantering misslyckas.Steg 2: Anslut AI-analystjänsten
Konfigurera AI-analysnoden som tolkar röntgenbilden.
- Öppna X-Ray Analysis Step och bekräfta att Resource är
image. - Ställ in Operation på
analyzeoch Input Type påbase64. - Klistra in analys-prompten i Text exakt som visas:
You are an expert in X-ray analysis and disease detection... json.body.response.output_image. - Inloggningsuppgifter krävs: Anslut era openAiApi-uppgifter.
Steg 3: Förbered och mappa analysutdata
Extrahera lagringslänken, mappa fält och sätt upp parallell bearbetning för hämtning av rapport och annoterad bild.
- Öppna Locate Storage Link och behåll den tillhandahållna JavaScript-koden för att extrahera Google Cloud Storage-URL:en.
- I Map Result Fields, ställ in Description på
{{ $json.content }}. - I Map Result Fields, ställ in Output_Image på
{{ $json.storageLink }}. - Bekräfta att Map Result Fields skickar utdata till både Generate Report File och Fetch Annotated Image parallellt.
Steg 4: Skapa rapportfilen och hämta den annoterade bilden
Generera textrapporten och hämta den annoterade bilden parallellt innan sammanslagning.
- I Generate Report File, ställ in Operation på
toText. - Ställ in Source Property på
=i Generate Report File. - I Fetch Annotated Image, ställ in URL på
{{ $json.Output_Image }}. - Säkerställ att både Generate Report File och Fetch Annotated Image ansluter till Combine Streams.
Steg 5: Konfigurera utdatamål
Skicka resultaten via e-post och Telegram samt arkivera rapporten till Google Drive från den sammanslagna strömmen.
- Bekräfta att Combine Streams skickar utdata till Dispatch Email Notice, Telegram Report Dispatch och Drive Archive Upload parallellt.
- I Dispatch Email Notice, ställ in Send To på
[YOUR_EMAIL]och Subject påPatient X Ray Analysis. - Inloggningsuppgifter krävs: Anslut era gmailOAuth2-uppgifter i Dispatch Email Notice.
- I Telegram Report Dispatch, ställ in Chat ID på
[YOUR_ID]och behåll Operation somsendDocumentmed Binary Data aktiverat. - Inloggningsuppgifter krävs: Anslut era telegramApi-uppgifter i Telegram Report Dispatch.
- I Drive Archive Upload, ställ in Name på
Patient Info, välj er Drive och Folder. - Inloggningsuppgifter krävs: Anslut era googleDriveOAuth2Api-uppgifter i Drive Archive Upload.
Steg 6: Testa och aktivera ert arbetsflöde
Verifiera hela flödet med en manuell körning och aktivera det sedan för produktionsanvändning.
- Klicka på Execute Workflow och ladda upp en testfil via X-Ray Upload Trigger.
- Bekräfta att Generate Report File och Fetch Annotated Image båda skapar utdata och slås ihop i Combine Streams.
- Kontrollera att ett e-postmeddelande har skickats från Dispatch Email Notice, ett Telegram-dokument från Telegram Report Dispatch och att en ny fil finns i Google Drive från Drive Archive Upload.
- När allt är verifierat, växla arbetsflödet till Active för skarp drift.
Vanliga fallgropar
- Gmails OAuth-uppgifter kan löpa ut eller tappa nödvändiga scopes. Om något slutar fungera, kontrollera Gmail-nodens status för ”Reconnect” i n8n och bekräfta att avsändarkontot fortfarande är auktoriserat.
- Om du använder Wait-noder eller extern rendering varierar bearbetningstiderna. Öka väntetiden om efterföljande noder fallerar på tomma svar.
- VLM Run-svar kan ändra format, och URL-extraktionen bygger på att hitta en giltig https://storage.googleapis.com/…-länk. Om den annoterade bilden inte ingår, hantera den vägen i If-noden eller låt grenen ”gör ingenting” hoppa över bildnedladdningen på ett rent sätt.
Vanliga frågor
Cirka 30 minuter om dina konton och tokens är redo.
Nej. Du kopplar konton och klistrar in några inloggningsuppgifter. Den enda ”kod”-delen finns redan i flödet och behöver vanligtvis inte ändras.
Ja. n8n har ett gratis alternativ för egen hosting och en gratis provperiod på n8n Cloud. Cloud-planer startar på 20 USD/månad för högre volym. Du behöver också räkna in VLM Run-användning (det din modell-endpoint tar betalt per bild).
Två alternativ: n8n Cloud (hanterat, enklast att komma igång) eller egen hosting på en VPS. För egen hosting är Hostinger VPS prisvärd och hanterar n8n bra. Egen hosting ger obegränsat antal körningar men kräver grundläggande serveradministration.
Ja, och det är en vanlig justering. Du kan lägga till ett If-beslut efter ”Map Result Fields” för att styra Gmail- och Telegram-meddelanden baserat på formulärfält som kliniknamn, modalitet eller brådska. Många team ändrar också Google Drive-mappen dynamiskt så att varje enhet får sitt eget arkiv.
Oftast beror det på att OAuth-auktoriseringen i n8n har löpt ut. Återanslut Gmail-kontot i Gmail-noden och bekräfta sedan att kontot fortfarande har rätt att skicka från vald ”From”-adress. Om flödet körs i en delad n8n-instans, kontrollera också att ingen roterade inloggningsuppgifter eller tog bort åtkomst vid en säkerhetsstädning. Mindre vanligt, men det händer: inkorgspolicys kan blockera automatiserad sändning om kontot är hårt låst.
Det beror främst på hastigheten i din VLM-endpoint och dina körningsgränser i n8n. På n8n Cloud har Starter-planen ett begränsat antal månatliga körningar, och högre nivåer klarar mer volym. Om du hostar själv finns ingen körningsbegränsning, men serverresurser och API-rate limits blir flaskhalsen. I praktiken kör de flesta mindre kliniker detta utan problem för dagliga volymer och skalar sedan genom att lägga till en kö eller en separat worker-instans.
För just det här flödet har n8n några fördelar: enklare förgreningar (som att hantera ”ingen annoterad bild returnerades”), möjlighet till egen hosting med obegränsat antal körningar och bättre kontroll över filhantering för rapporter och nedladdningar. Zapier eller Make kan fungera, men paketering av flera filer plus anpassad parsing blir ofta en skör kedja av steg. Ärligt talat är det ”bästa” alternativet det som ditt team kommer att förvalta. Prata med en automationsspecialist om du vill ha en snabb rekommendation utifrån din volym och dina krav på regelefterlevnad.
När detta väl är igång slutar ”skicka rapporten” att vara en uppgift någon måste komma ihåg. Flödet tar hand om det repetitiva arbetet så att teamet kan fokusera på granskning och beslutsfattande.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.