Folk skickar skärmdumpar, kvitton, etiketter och formulär i Telegram. Sedan kisar du, zoomar, skriver om texten och missar ändå en rad.
Det drabbar supportteam hårdast, men byråoperatörer och grundare som driver community-chattar känner av det också. Med den här Telegram OCR-automationen svarar du med strukturerad extraherad text och en snabb bildbeskrivning på under en minut, utan manuell inmatning.
Nedan ser du exakt vad flödet gör i n8n, vilka resultat du kan förvänta dig och de få konfigurationsdetaljer som faktiskt spelar roll.
Så fungerar automationen
Hela n8n-flödet, från trigger till slutligt resultat:
n8n Workflow Template: Telegram + AIMLAPI: enkla svar på fototext
flowchart LR
subgraph sg0["Step 1 · 📩 Telegram Trigger (In) 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/telegram.svg' width='40' height='40' /></div><br/>Step 1 · 📩 Telegram Trigger .."]
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/telegram.svg' width='40' height='40' /></div><br/>Step 1.5 · 💬 Typing…"]
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/telegram.svg' width='40' height='40' /></div><br/>Step 2 · 📷 Get Photo"]
n3@{ icon: "mdi:cog", form: "rounded", label: "Step 3 · 🧩 Extract → base64", pos: "b", h: 48 }
n4["<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/>Step 3.5 · 🧑💻 Build Data URI"]
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/>Step 4 · 🧠 AIMLAPI Vision (H.."]
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/telegram.svg' width='40' height='40' /></div><br/>Step 5 · 📤 Reply to Telegram"]
n2 --> n3
n1 --> n2
n3 --> n4
n0 --> n1
n5 --> n6
n4 --> n5
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 n5 api
class n4 code
classDef customIcon fill:none,stroke:none
class n0,n1,n2,n4,n5,n6 customIcon
Problemet: foton i chatten ger långsamma svar med hög felrisk
Telegram är snabbt tills konversationen övergår till bilder. En kund skickar en suddig fraktetikett. En kollega slänger in en skärmdump av ett felmeddelande. Någon delar ett kvitto och frågar: ”Kan du registrera det här?” Då fastnar du i den sämsta typen av arbete: zooma, kopiera för hand, dubbelkolla radbrytningar och be om ursäkt när du läser fel på ett tecken. Det handlar inte bara om tid. Det handlar om momentum. Chatten stannar upp, användaren väntar och din ”snabba support”-kanal börjar kännas… inte så snabb.
Det bygger upp snabbt. Här är var det faller isär.
- Du skriver om text från foton flera gånger om dagen, och små misstag leder till längre fram och tillbaka.
- Olika personer beskriver bilder på olika sätt, så svaren blir inkonsekventa och svårare att lita på.
- Att kopiera text från skärmdumpar på mobilen är frustrerande, vilket betyder långsammare svar när du inte sitter vid skrivbordet.
- Även när du ”får det rätt” tappar du fortfarande kontext, eftersom de viktiga delarna av bilden inte sammanfattas.
Lösningen: Telegram-svar med foto-till-text via AIMLAPI
Det här n8n-flödet gör din Telegram-bot till en praktisk visionassistent. När någon skickar ett foto hämtar flödet den högsta upplösningen som finns, konverterar den till ett format som en AI-visionsmodell kan läsa och ber modellen om två saker: en kort beskrivning av vad som finns i bilden, plus all läsbar text (OCR). Sedan postar den resultatet tillbaka i samma chatt, så att användaren kan kopiera, verifiera eller fortsätta konversationen med korrekt formaterad text istället för gissningar. Ingen egen server. Inget separat OCR-verktyg att förvalta. Det är bara Telegram, n8n och en AIMLAPI-nyckel som använder ett OpenAI-kompatibelt request-format.
Flödet startar i samma ögonblick som ett Telegram-foto når din bot. n8n hämtar filen, konverterar den till base64 och sätter ihop en data-URI så att visionsmodellen kan ”se” den. AIMLAPI returnerar bildtexten och extraherad text, och boten svarar i tråden medan skrivindikatorn gör att chatten känns responsiv.
Det du får: automation vs. resultat
| Vad det här flödet automatiserar | Resultat du får |
|---|---|
|
|
Exempel: så ser det ut i praktiken
Säg att ditt team får 20 ”text i en bild”-förfrågningar per dag i Telegram. Manuellt kan du lägga cirka 3 minuter per foto på att zooma, skriva om och rimlighetskontrollera, vilket blir ungefär en timmes rutinjobb dagligen. Med det här flödet är den mänskliga delen i princip bara att ta emot meddelandet (några sekunder) medan n8n bearbetar bilden och svarar, oftast inom ungefär en minut. Du granskar fortfarande resultatet när det är viktigt, men du kopierar inte längre för hand.
Det här behöver du
- n8n-instans (prova n8n Cloud gratis)
- Alternativ för self-hosting om du föredrar det (Hostinger fungerar bra)
- Telegram för att ta emot foton och skicka svar.
- AIMLAPI för att köra visionsmodell-requesten.
- Telegram bot-token (hämta den från @BotFather i Telegram).
- AIMLAPI API-nyckel (hämta den i din AIMLAPI-dashboard; base URL https://api.aimlapi.com/v1).
Svårighetsgrad: Nybörjare. Du kopplar credentials i n8n och klistrar in en API-nyckel, och testar sedan genom att skicka ett foto.
Vill du inte sätta upp det här själv? Prata med en automationsexpert (gratis 15-minuters konsultation).
Så fungerar det
Ett foto kommer in i Telegram. Telegram Trigger lyssnar på nya meddelanden och startar så fort din bot tar emot en bild.
Flödet hämtar den bästa versionen av bilden. Telegram lagrar flera storlekar; n8n hämtar filen med högst upplösning så att OCR-kvaliteten blir bättre och bildbeskrivningen mer träffsäker.
Bilden förbereds för en visionsmodell-request. n8n konverterar filen till base64 och sätter ihop en data-URI (i praktiken bäddar den in bilddatan i requesten på ett standardiserat sätt).
AIMLAPI genererar bildtext och OCR-text. Noden HTTP Request skickar en OpenAI-kompatibel ”messages”-payload till en visionskapabel modell och får tillbaka en kort beskrivning plus extraherad text.
Svaret går tillbaka till samma chatt. Den sista Telegram-noden postar resultatet där användaren redan är, så att texten direkt går att kopiera och blir sökbar.
Du kan enkelt ändra vision-prompten för att matcha din ton, ditt språk eller dina formateringsregler. Se hela implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementering
Steg 1: Konfigurera Telegram-triggern
Konfigurera arbetsflödet för att lyssna på inkommande Telegram-meddelanden med bilder.
- Lägg till noden Telegram Trigger Intake och ställ in Updates till
message. - Inloggningsuppgift krävs: Anslut era telegramApi-inloggningsuppgifter i Telegram Trigger Intake.
Steg 2: Anslut Telegram-åtgärder
Konfigurera Telegram-åtgärderna som indikerar aktivitet och hämtar fotofilen för bearbetning.
- Lägg till Send Typing Indicator och ställ in Operation till
sendChatAction. - Ställ in Chat ID i Send Typing Indicator till
{{ $json.message.chat.id }}. - Inloggningsuppgift krävs: Anslut era telegramApi-inloggningsuppgifter i Send Typing Indicator.
- Lägg till Retrieve Photo File med Resource inställt på
fileoch File ID inställt på{{ $('Telegram Trigger Intake').item.json.message.photo[$('Telegram Trigger Intake').item.json.message.photo.length - 1].file_id }}. - I Retrieve Photo File, ställ in Additional Fields → Mime Type till
image/jpeg. - Inloggningsuppgift krävs: Anslut era telegramApi-inloggningsuppgifter i Retrieve Photo File.
Steg 3: Sätt upp bildbearbetning
Konvertera Telegram-bilden till ett data URI-format som passar för vision-modellen.
- Lägg till Convert Image to Base64 och ställ in Operation till
binaryToPropery. - Lägg till Assemble Data URI och klistra in den tillhandahållna JavaScript-koden i JS Code för att bygga data URI:n.
Körflöde: Telegram Trigger Intake → Send Typing Indicator → Retrieve Photo File → Convert Image to Base64 → Assemble Data URI
Steg 4: Sätt upp anropet till vision-API:t
Skicka bildens data URI till vision-modellen och hämta ett beskrivande svar.
- Lägg till Vision API Request och ställ in Method till
POSToch URL tillhttps://api.aimlapi.com/v1/chat/completions. - Ställ in Specify Body till
jsonoch JSON Body till{ "model": "openai/gpt-4o", "messages": [ { "role": "user", "content": [ { "type": "text", "text": "Describe this image. Then extract any visible text (OCR). Keep it concise." }, { "type": "image_url", "image_url": { "url": "{{ $json.dataUri }}" } } ] } ], "max_tokens": 300 }. - Inloggningsuppgift krävs: Anslut era aimlApi-inloggningsuppgifter i Vision API Request.
Steg 5: Konfigurera Telegram-svaret
Skicka den AI-genererade beskrivningen tillbaka till användaren i Telegram.
- Lägg till Post Telegram Reply och ställ in Text till
{{ $json?.choices?.[0]?.message?.content || "Sorry, the model returned an empty response." }}. - Ställ in Chat ID till
{{ $('Telegram Trigger Intake').item.json.message.chat.id }}. - I Additional Fields, ställ in Reply to Message ID till
{{ $('Telegram Trigger Intake').item.json.message.message_id }}och Disable Web Page Preview tilltrue. - Inloggningsuppgift krävs: Anslut era telegramApi-inloggningsuppgifter i Post Telegram Reply.
Körflöde: Assemble Data URI → Vision API Request → Post Telegram Reply
Steg 6: Testa och aktivera ert arbetsflöde
Validera flödet från början till slut och aktivera det sedan för produktion.
- Klicka på Execute Workflow och skicka ett foto till er Telegram-bot för att trigga Telegram Trigger Intake.
- Bekräfta att boten visar att den skriver via Send Typing Indicator, och att Post Telegram Reply returnerar en kortfattad bildbeskrivning plus OCR-text.
- Om svaret är tomt, verifiera svarspayloaden från Vision API Request och Text-uttrycket i Post Telegram Reply.
- När allt är validerat, växla arbetsflödet till Active för kontinuerlig användning i produktion.
Vanliga fallgropar
- Telegram-credentials kan löpa ut eller så kan boten tappa behörigheter i en gruppchatt. Om meddelanden slutar trigga, kontrollera att boten fortfarande finns kvar, att den får läsa meddelanden och att token i n8n-credentials är korrekt.
- Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om nedströmsnoder misslyckas på grund av tomma svar.
- AIMLAPI-requester kan fallera på timeouts för stora bilder eller långsamma svar. Öka timeouten i HTTP Request och lägg till en retry, och granska sedan körloggen i n8n för exakt statuskod.
- Standardprompter i AI-noder är generiska. Lägg in din varumärkeston tidigt, annars kommer du att redigera utdata för alltid.
Vanliga frågor
Cirka 20–30 minuter om du redan har din Telegram bot-token och AIMLAPI-nyckel.
Nej. Du importerar flödet, kopplar credentials och justerar en prompt om du vill ha annan formatering.
Ja. n8n har ett gratis self-hosted-alternativ och en gratis provperiod på n8n Cloud. Cloud-planer startar på 20 USD/månad för högre volymer. Du behöver också räkna med AIMLAPI-kostnader, som beror på visionsmodellen och hur många bilder du bearbetar.
Två alternativ: n8n Cloud (hanterat, enklast att komma igång) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärd och klarar n8n bra. Self-hosting ger dig obegränsade körningar men kräver grundläggande serveradministration.
Ja, och det handlar mest om prompten. Uppdatera instruktionstexten som skickas i Vision API Request så att modellen returnerar ditt språk, en mer tajt bildbeskrivning eller en tydlig layout med ”Bildtext:” och ”Text:”. Vanliga justeringar är att lägga till varumärkeston, tvinga punktlistor vid längre text och returnera ”Ingen läsbar text hittades” när OCR är tom.
Oftast är det bot-token i n8n-credentials, eller att boten inte har rätt att läsa meddelanden i chatten du testar. Dubbelkolla att boten är tillagd i gruppen (om det är aktuellt) och att du skickar ett foto, inte en filbilaga av en typ som din trigger inte lyssnar på. Om triggarna går igång men svaren inte skickas, granska körningsdetaljerna i n8n och bekräfta att noden Post Telegram Reply använder rätt chat-ID från triggern.
På n8n Cloud beror det på din månatliga körningsgräns, och vid self-hosting beror det på din server och AIMLAPI:s rate limits.
Ofta, ja. Det här flödet kräver filhämtning, base64-konvertering och en anpassad OpenAI-kompatibel HTTP-request, vilket n8n hanterar utan krångliga workarounds. Du får också mer kontroll över retries, timeouts och hur payloaden byggs, vilket är viktigt för vision-requester. Zapier eller Make kan fortfarande fungera om du bara vill ha ett enkelt ”skicka bild till AI, returnera text”-flöde, men kostnader och flexibilitet kan bli knepigt när volymen växer. Prata med en automationsexpert om du vill ha en snabb rekommendation baserat på din chattvolym.
När det här väl rullar slutar foton att vara en flaskhals i Telegram. Flödet tar hand om det repetitiva kopieringsjobbet, och du kan fokusera på själva konversationen.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.