Att få ”snabba förfrågningar” i Telegram låter enkelt tills du drunknar i följdfrågor, röriga copy-pastes och meddelanden som ”kan du skicka om den där PDF:en?”. Den verkliga kostnaden är inte den enda stora uppgiften. Det är det konstanta kontextbytet och alla underlag du aldrig riktigt litar på.
Telegram PDF-automatisering slår först mot team inom akademiskt stöd, men kursadministratörer och små innehållstjänster känner av det också. Du behöver samma sak varje gång: ett strukturerat dokument levererat snabbt, lagrat korrekt och loggat så att du kan bevisa vad som hände i efterhand.
Det här arbetsflödet gör en strukturerad Telegram-förfrågan till en polerad PDF i Google Drive och loggar sedan hela leveransen i Google Sheets. Du får se hur det fungerar, vad du behöver och vad du kan justera för att det ska passa din process.
Så här fungerar automatiseringen
Hela n8n-arbetsflödet, från trigger till slutresultat:
n8n Workflow Template: Telegram till Google Drive-pdf:er, loggas i Sheets
flowchart LR
subgraph sg0["Student Query Intake Bot Flow"]
direction LR
n0@{ icon: "mdi:brain", form: "rounded", label: "Google Gemini Chat Model6", pos: "b", h: 48 }
n1@{ icon: "mdi:robot", form: "rounded", label: "Static Html Builder", 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/telegram.svg' width='40' height='40' /></div><br/>Student Query Intake Bot"]
n3@{ icon: "mdi:robot", form: "rounded", label: "Student Assignment Auto-Comp..", pos: "b", h: 48 }
n4@{ icon: "mdi:brain", form: "rounded", label: "Generator Model", pos: "b", h: 48 }
n5@{ icon: "mdi:brain", form: "rounded", label: "Fallback Model Generator", pos: "b", h: 48 }
n6@{ icon: "mdi:brain", form: "rounded", label: "Handler For Structured Outpu..", pos: "b", h: 48 }
n7@{ icon: "mdi:robot", form: "rounded", label: "Structured Output Parser", pos: "b", h: 48 }
n8@{ icon: "mdi:cog", form: "rounded", label: "Wait", 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/>Structured Data Parser"]
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/>HTTP Request"]
n11@{ icon: "mdi:cog", form: "rounded", label: "Upload file", 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/telegram.svg' width='40' height='40' /></div><br/>Send a text message"]
n13["<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/>Error Handler"]
n14@{ icon: "mdi:swap-vertical", form: "rounded", label: "Edit Fields", pos: "b", h: 48 }
n15@{ icon: "mdi:database", form: "rounded", label: "Long Essay Record Sheet", pos: "b", h: 48 }
n8 --> n14
n14 --> n15
n11 --> n12
n10 --> n11
n13 --> n8
n4 -.-> n3
n1 --> n10
n9 --> n3
n15 --> n1
n5 -.-> n3
n7 -.-> n3
n2 --> n9
n0 -.-> n1
n3 --> n13
n6 -.-> n7
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 trigger
class n1,n3,n7 ai
class n0,n4,n5,n6 aiModel
class n15 database
class n10 api
class n9,n13 code
classDef customIcon fill:none,stroke:none
class n2,n9,n10,n12,n13 customIcon
Problemet: Telegram-förfrågningar skapar ospårbart administrativt arbete
Telegram är grymt för hastighet. Det är uselt för konsekvens. En person skickar i ”rätt” format, en annan glömmer registreringsnumret, och plötsligt ställer du frågor i stället för att leverera. Sedan skapar du ett dokument, exporterar till PDF, laddar upp det någonstans, kopierar länken tillbaka till chatten och hoppas att du kan hitta det igen nästa vecka. Multiplicera det med några förfrågningar per dag och du får den värsta typen av arbetsbelastning: repetitiv, felbenägen och omöjlig att revidera när någon ifrågasätter vad som skickades.
Friktionen växer snabbt. Här är var det oftast faller isär.
- Du skriver om eller formaterar om samma ”standard”-dokument varje gång.
- Länkar försvinner i chatthistoriken, så du skickar om filer och slösar ytterligare 10 minuter per förfrågan.
- Det finns ingen pålitlig logg, vilket gör att du inte kan svara på enkla frågor som ”vad levererades, och när?”.
- Manuell PDF-produktion bjuder in små misstag (fel namn, fel kurs, fel datum) – och det är de misstagen folk minns.
Lösningen: Gör Telegram-meddelanden till PDF:er + en strukturerad leveranslogg
Det här n8n-arbetsflödet lyssnar efter uppgiftsliknande förfrågningar som kommer in i Telegram och gör dem till en komplett leveranspipeline. En student (eller beställare) skickar ett strukturerat meddelande med sina uppgifter och frågor. Arbetsflödet extraherar de viktiga fälten och använder sedan Google Gemini för att generera välformaterat akademiskt innehåll (inklusive källhänvisningar) som är tillräckligt omfattande för att vara användbart, inte en tunn sammanfattning. Därefter paketerar det innehållet i en universitetsliknande HTML-layout (tänk Times New Roman, korrekt radavstånd, rubriker), konverterar det till PDF via ett PDF-konverterings-API och laddar upp filen till en organiserad Google Drive-mapp. Till sist skickar det Drive-nedladdningslänken tillbaka i Telegram och loggar hela transaktionen i Google Sheets så att du har ett sökbart underlag senare.
Arbetsflödet startar med en Telegram-trigger och går sedan vidare med tolkning och AI-generering med en reservmodell för bättre driftsäkerhet. Efter en kort väntan för stabilitet mappar det resultatet till dina kalkylbladskolumner, genererar den slutliga PDF:en, laddar upp till Drive och skickar länken tillbaka till beställaren.
Det här får du: automatisering vs. resultat
| Vad det här arbetsflödet automatiserar | Resultat du får |
|---|---|
|
|
Exempel: så här ser det ut i praktiken
Säg att du hanterar 10 Telegram-förfrågningar i veckan. Manuellt kanske du lägger cirka 15 minuter på att plocka ut detaljer, 30 minuter på att skapa och strukturera innehållet och ytterligare 10 minuter på att skapa en PDF, ladda upp den och svara med en länk. Det är ungefär 1 timme per förfrågan, eller runt 10 timmar i veckan. Med det här arbetsflödet lägger du cirka 5 minuter på att kontrollera inkommande format och starta körningen, och väntar sedan 2–3 minuter medan n8n genererar, konverterar, laddar upp och svarar. Du får tillbaka merparten av de där 10 timmarna – och loggen är redan klar.
Det här behöver du
- n8n-instans (testa n8n Cloud gratis)
- Alternativ för egen drift om du föredrar det (Hostinger fungerar bra)
- Telegram för att ta emot förfrågningar och skicka länkar.
- Google Drive för att lagra PDF:er och dela nedladdningar.
- Google Sheets för att logga leveranser och metadata.
- Google Gemini API-nyckel (hämta den från Google AI Studio).
- PDFCrowd API-nyckel (hämta den från din PDFCrowd-dashboard).
Kunskapsnivå: Mellan. Du kopplar konton, klistrar in API-nycklar och justerar ett par fält (som mapp-ID:n och kalkylbladskolumner).
Vill du inte sätta upp det här själv? Prata med en automationsexpert (gratis 15-minuters konsultation).
Så fungerar det
Ett Telegram-meddelande triggar körningen. En beställare skickar ett formaterat meddelande (namn, kurs, registreringsnummer och frågor). Telegram-triggern startar arbetsflödet så fort meddelandet kommer in.
Arbetsflödet extraherar och strukturerar detaljerna. Ett tolkningssteg plockar ut fälten ur meddelandet, fyller i standardvärden som dagens datum och skickar vidare korrekt formaterad data så att efterföljande steg inte skapar fel när någon formaterar en rad lite annorlunda.
Gemini genererar uppgiftsinnehållet. AI-agenten tar fram svar för flera frågor (mallen siktar på 500+ ord per fråga) och använder en konsekvent akademisk struktur. Om primärmodellen fallerar kan arbetsflödet falla tillbaka till en reservmodell i Gemini, vilket ärligt talat räddar dig från de där slumpmässiga ”det funkade igår”-dagarna.
PDF skapas, laddas upp och levereras. n8n bygger ett HTML-dokument, konverterar det till PDF via en HTTP-förfrågan, laddar upp det till Google Drive och skickar sedan Drive-länken tillbaka via Telegram. Parallellt loggar det förfrågan och leveransdetaljerna i Google Sheets.
Du kan enkelt modifiera dokumentmallen och mappstrukturen i Google Drive utifrån dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementation
Steg 1: konfigurera Telegram-triggern
Konfigurera triggern för inkommande Telegram-meddelanden som startar processen för att bygga upp uppgiften och skickar råtext till parsern.
- Lägg till noden Telegram Intake Trigger och ställ in Updates på
message. - I Additional Fields ställer ni in Chat IDs till
[YOUR_ID]. - Inloggningsuppgifter krävs: Anslut era telegramApi-uppgifter till Telegram Intake Trigger.
- Anslut Telegram Intake Trigger → Input Text Extractor för att skicka det råa meddelandet in i parsern.
⚠️ Vanlig fallgrop: Ersätt [YOUR_ID] med det faktiska Telegram-chatt-ID ni vill ta emot uppgifter från.
Steg 2: anslut Google Sheets
Lagra uppgiftsposter i Google Sheets efter att ni har mappat AI:ns utdatafält.
- I Map Output Fields lägger ni till tilldelningar för varje utdatafält med uttryck som
{{ $json.output.Name }}och{{ $json.output.Answers }}. - Konfigurera Assignment Records Sheet med Operation satt till
appendOrUpdate. - Ställ in Document ID till
[YOUR_ID]och Sheet Name till[YOUR_ID]i Assignment Records Sheet. - Mappa kolumnvärden i Assignment Records Sheet med uttryck som
{{ $json.output.Date }},{{ $json.output.Questions }}och{{ $json.output.References }}. - Inloggningsuppgifter krävs: Anslut era googleSheetsOAuth2Api-uppgifter till Assignment Records Sheet.
Tips: Mappningen använder kolumnen Name som matchningsnyckel, så håll den konsekvent för att möjliggöra uppdateringar i stället för dubbletter.
Steg 3: konfigurera AI-generering och validering
Konfigurera AI-agenten och modellerna för att generera strukturerad JSON för uppgiften och validera utdata.
- I Input Text Extractor behåller ni JavaScript-parsern som den är för att extrahera fält som
Name,FacultyochQuestionfrån Telegram-meddelandet. - Öppna Assignment Draft Orchestrator och bekräfta att prompten i Text innehåller JSON-schemat och reglerna; den ska innehålla uttryck som
{{ $json.Name }}och{{ $json['Reg number'] }}. - Anslut Primary Generation Model till Assignment Draft Orchestrator som primär språkmodell.
- Anslut Backup Generation Model till Assignment Draft Orchestrator som reserv, med Model Name satt till
models/gemma-3-27b-it. - Koppla Structured Output Validator till Assignment Draft Orchestrator för att upprätthålla JSON-schemat; behåll Auto Fix aktiverat.
- Inloggningsuppgifter krävs: Anslut era googlePalmApi-uppgifter till Primary Generation Model, Backup Generation Model och Parser Fixup Model.
- Structured Output Validator använder Parser Fixup Model som sin språkmodell—lägg till inloggningsuppgifter i Parser Fixup Model, inte i parsernoden.
Tips: Behåll needsFallback aktiverat i Assignment Draft Orchestrator så att arbetsflödet kan återhämta sig om primärmodellen fallerar.
Steg 4: konfigurera noder för utdata och leverans
Konvertera den genererade HTML:en till en PDF, ladda upp den till Drive och skicka länken tillbaka via Telegram.
- I HTML Layout Composer verifierar ni prompten för HTML-generering och behåller exemplet på systemmeddelande; det ska referera till uttryck som
{{ $json.Name }}och{{ $json.Course }}. - Säkerställ att Gemini Chat Engine är ansluten som språkmodell för HTML Layout Composer.
- Inloggningsuppgifter krävs: Anslut era googlePalmApi-uppgifter till Gemini Chat Engine.
- Konfigurera PDF Conversion Call med URL
https://api.pdfcrowd.com/convert/24.04, MethodPOSToch Content Typeform-urlencoded. - I PDF Conversion Call ställer ni in body-parametrar: text till
{{ $json.output }}och output_name till{{ $('Assignment Records Sheet').item.json.Name }}. - Ställ in headern authorization till
[CONFIGURE_YOUR_TOKEN]i PDF Conversion Call. - Konfigurera Drive File Uploader med Name
{{ $('Assignment Records Sheet').item.json.Name }}och Input Data Field Name[YOUR_INPUT_FIELD]. - Inloggningsuppgifter krävs: Anslut era googleDriveOAuth2Api-uppgifter till Drive File Uploader.
- I Telegram Link Sender ställer ni in Text till
{{ $json.webViewLink }}och Chat ID till[YOUR_ID]. - Inloggningsuppgifter krävs: Anslut era telegramApi-uppgifter till Telegram Link Sender.
⚠️ Vanlig fallgrop: Ersätt [CONFIGURE_YOUR_TOKEN] och [YOUR_INPUT_FIELD] med giltiga värden, annars kommer PDF-uppladdningen att misslyckas.
Steg 5: lägg till felhantering
Inför en bearbetningsfördröjning och hantera eventuell felformaterad textdata innan ni går vidare till mappning och lagring.
- Behåll Error Recovery Script ansluten efter Assignment Draft Orchestrator för att sanera icke-strängvärden.
- Konfigurera Processing Pause med Amount satt till
2för att låta asynkrona komponenter stabiliseras. - Anslut Error Recovery Script → Processing Pause → Map Output Fields för att behålla avsett flöde.
Steg 6: testa och aktivera ert arbetsflöde
Validera hela end-to-end-flödet från Telegram-intag till PDF-leverans.
- Klicka på Execute Workflow och skicka ett Telegram-meddelande till det konfigurerade chatt-ID:t med fält som
Name:,Course:ochQuestion:. - Bekräfta att Assignment Records Sheet får en ny eller uppdaterad rad med de mappade fälten.
- Verifiera att PDF Conversion Call returnerar en file-egenskap med namnet
{{ $('Assignment Records Sheet').item.json.Name }}och att Drive File Uploader laddar upp den korrekt. - Kontrollera Telegram efter ett meddelande från Telegram Link Sender som innehåller fillänken i
{{ $json.webViewLink }}. - När allt fungerar växlar ni arbetsflödet till Active för användning i produktion.
Vanliga fallgropar
- Google Drive-inloggningar kan löpa ut eller sakna mapprättigheter. Om uppladdningar misslyckas, kontrollera n8n-inloggningen och bekräfta först att målmappen är delad med det anslutna Google-kontot.
- Om du använder Wait-noder eller extern rendering varierar processtider. Öka väntetiden om efterföljande noder fallerar på tomma svar.
- Standardprompter i AI-noder är generiska. Lägg in din tonalitet tidigt, annars kommer du att redigera utdata för alltid.
Vanliga frågor
Cirka 45 minuter om dina konton och mappar är redo.
Nej. Du kopplar mestadels konton och klistrar in API-nycklar. Den enda ”kodiga” delen är att justera tolkningen av indata om ditt meddelandeformat skiljer sig.
Ja. n8n har ett gratis alternativ för egen drift och en gratis provperiod på n8n Cloud. Cloud-planer börjar på 20 USD/månad för högre volym. Du behöver också räkna in Gemini API-användning och dina PDFCrowd-konverteringskostnader.
Två alternativ: n8n Cloud (hanterat, enklast att komma igång) eller egen drift på en VPS. För egen drift är Hostinger VPS prisvärd och klarar n8n bra. Egen drift ger dig obegränsade körningar men kräver grundläggande serverhantering.
Ja, och det bör du. Du kan byta layout genom att redigera utdata från HTML Layout Composer och sedan behålla samma PDF Conversion Call och Drive File Uploader. Vanliga anpassningar är att ändra Google Drive-mappens ID, döpa om filer (kurs + regnummer) och uppdatera Google Sheets-kolumnerna i Map Output Fields så att de matchar ditt uppföljningsbehov.
Oftast handlar det om bot-token, begränsningen för chatt-ID, eller båda. Skapa en ny Telegram bot-token, bekräfta att du använder rätt chatt och säkerställ att boten har behörighet att läsa och skicka meddelanden i den chatten. Om det fungerar för en användare men inte för en annan är det nästan alltid routningen av chatt som är orsaken.
Många, så länge dina kvoter för AI och PDF-konvertering hänger med.
För det här arbetsflödet har n8n några fördelar: mer flexibel förgrening (särskilt kring AI-reservvägar och validering), enklare kontroll över stegen för dokumentgenerering och möjlighet till egen drift när volymen växer. Zapier eller Make kan fungera för enkla ”Telegram till Google Drive”-flöden, men så fort du lägger till AI-generering i flera steg och strukturerad loggning blir det snabbt klumpigt och dyrt. En annan praktisk punkt: n8n låter dig inspektera och spela om misslyckade körningar, vilket spelar roll när en beställare väntar. Om du är osäker på vilken stack som passar din volym och budget, prata med en automationsexpert.
När det här väl rullar blir Telegram entrén, inte flaskhalsen. Arbetsflödet sköter det repetitiva leveransarbetet så att du kan fokusera på kvalitet – inte fillogistik.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.