Din Telegram är full av röstmeddelanden som du ”ska lyssna på senare”. Sedan blir det aldrig av. Du spelar upp samma 2-minutersklipp tre gånger, missar en detalj och slutar ändå med att skriva en rörig sammanfattning för hand. Det är inget system.
Den här Telegram Gemini-transkriberingen träffar coacher och podcasters hårt, men marknadsförare som jonglerar kundgodkännanden känner också av det. Du skickar ett ljudmeddelande till en bot och får korrekt formaterad text tillbaka i samma chatt, oftast på någon minut eller två.
Nedan ser du hur arbetsflödet dirigerar meddelanden, laddar upp ljud för bearbetning och svarar med transkriptionen så att du kan söka i den, kopiera den eller återanvända den var som helst.
Så här fungerar automationen
Hela n8n-arbetsflödet, från trigger till slutresultat:
n8n Workflow Template: Telegram + Google Gemini: röstnoter till text snabbt
flowchart LR
subgraph sg0["Telegram Incoming Flow"]
direction LR
n0@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Route by Condition", 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/telegram.svg' width='40' height='40' /></div><br/>Telegram Sender"]
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/>Telegram Incoming Trigger"]
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/httprequest.dark.svg' width='40' height='40' /></div><br/>Start Upload Session"]
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/httprequest.dark.svg' width='40' height='40' /></div><br/>Transfer File"]
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/merge.svg' width='40' height='40' /></div><br/>Combine Streams"]
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/httprequest.dark.svg' width='40' height='40' /></div><br/>Request Gemini Transcription"]
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/telegram.svg' width='40' height='40' /></div><br/>Telegram Reply Message"]
n8@{ icon: "mdi:cog", form: "rounded", label: "Text Message Path", pos: "b", h: 48 }
n5 --> n4
n0 --> n1
n0 --> n8
n1 --> n3
n1 --> n5
n4 --> n6
n2 --> n0
n6 --> n7
n3 --> n5
end
subgraph sg1["Flow 2"]
direction LR
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/>Utility: Fetch File from URL"]
end
subgraph sg2["Flow 3"]
direction LR
n11@{ icon: "mdi:cog", form: "rounded", label: "Utility: Retrieve Drive File", pos: "b", h: 48 }
end
subgraph sg3["Flow 4"]
direction LR
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/webhook.dark.svg' width='40' height='40' /></div><br/>Utility: Inbound Webhook Rec.."]
end
subgraph sg4["Utility: Watch Drive Folder Uploads Flow"]
direction LR
n12@{ icon: "mdi:play-circle", form: "rounded", label: "Utility: Watch Drive Folder ..", pos: "b", h: 48 }
end
subgraph sg5["Flow 6"]
direction LR
n9@{ icon: "mdi:cog", form: "rounded", label: "Utility: Read Local Files", pos: "b", h: 48 }
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,n12 trigger
class n0 decision
class n3,n4,n6,n10,n13 api
classDef customIcon fill:none,stroke:none
class n1,n2,n3,n4,n5,n6,n7,n10,n13 customIcon
Problemet: röstmeddelanden är inte sökbara (och de staplas på hög)
Röstmeddelanden är smidiga för avsändaren och dyra för mottagaren. Du kan inte skumma igenom dem. Du kan inte Ctrl+F:a dem. Och när någon skickar fem ljudnoter i rad fastnar du i ”tryck play, spola tillbaka, anteckna”-läge medan allt annat får vänta. Ännu värre: de användbara bitarna blir inlåsta i en chatttråd, så du tappar idéer till innehåll, glömmer åtgärdspunkter och slutar med att be folk upprepa sig. Ärligt talat är det ett långsamt dagligt läckage av fokus.
Friktionen byggs på. Här är var det oftast faller isär.
- Att spela om ett enda röstmeddelande kan ta runt 5 minuter när du räknar in pauser och omlyssning efter namn, siffror och nästa steg.
- Viktiga detaljer ligger begravda i ljud, vilket gör att du inte kan söka i tidigare konversationer när du snabbt behöver kontext.
- Manuell transkribering (eller ”nästan rätt” sammanfattningar) introducerar små fel som senare blir stora missförstånd.
- Att lämna över detta till en person skalar inte, och betalda transkriberingstjänster känns onödiga när du bara behöver snabb, återanvändbar text.
Lösningen: autotranskribera Telegram-ljud med Gemini och svara direkt
Det här arbetsflödet gör din Telegram-bot till en transkriberingsassistent. När ett ljudmeddelande når boten hämtar n8n filen från Telegram, startar en uppladdningssession och överför ljudströmmen till Googles transkriberingsendpoint i Gemini via HTTP-anrop. På vägen slår det ihop delarna som behövs för API-anropet (filström plus sessionsdetaljer) och ber sedan Gemini skapa transkriptionen med den kostnadsfria modelnivån. När Gemini returnerar text skickar arbetsflödet ett svar direkt tillbaka i samma Telegram-chatt, så transkriptionen hamnar precis bredvid det ursprungliga röstmeddelandet. Inga nedladdningar. Ingen copy-paste-akrobatik.
Arbetsflödet börjar med en Telegram inkommande-trigger och dirigerar sedan via villkor så att textmeddelanden inte råkar gå genom ljudpipeline. Ljudfiler laddas upp och transkriberas via Gemini, och den slutliga transkriptionen publiceras tillbaka som ett Telegram-svar.
Det du får: automation vs. resultat
| Vad det här arbetsflödet automatiserar | Resultat du får |
|---|---|
|
|
Exempel: så här ser det ut
Säg att du får 6 röstmeddelanden per dag i Telegram från kunder eller ditt team. Manuellt, om varje tar cirka 5 minuter att spela om, pausa och skriva en användbar sammanfattning, blir det ungefär 30 minuter om dagen. Med det här arbetsflödet vidarebefordrar du eller spelar in noten till din bot (cirka 30 sekunder) och väntar sedan på att svaret landar tillbaka i chatten (ofta en minut eller två). Du är nere på några minuters total insats, och du har fortfarande hela transkriptionen när du behöver söka i den senare.
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 ljudmeddelanden via en bot
- Google Gemini för att omvandla ljud till text
- Telegram bot token (hämta den via BotFather i Telegram)
- Google Gemini API-nyckel (hämta den från Google AI Studio)
Kunskapsnivå: Nybörjare. Du kopplar upp autentisering, klistrar in en API-nyckel och testar boten med ett riktigt röstmeddelande.
Vill du inte sätta upp detta själv? Prata med en automationsexpert (gratis 15-minuters konsultation).
Så fungerar det
Ett Telegram-meddelande triggar arbetsflödet. När din bot tar emot något nytt kontrollerar n8n vad det är och dirigerar det längs rätt väg.
Ljud hämtas från Telegram. Om meddelandet innehåller en ljudfil (eller ett röstmeddelande) laddar n8n ner filen och förbereder binärdatan så att den kan laddas upp för transkribering.
Gemini sköter transkriberingen. Arbetsflödet startar en uppladdningssession, överför filströmmen och skickar sedan en begäran till Geminis transkriberingsendpoint via HTTP Request-noder. Ett merge-steg kombinerar de delar som behövs så att transkriberingsanropet får allt det behöver.
Transkriptionen kommer tillbaka till chatten. n8n formaterar den returnerade texten och publicerar den som ett Telegram-svarsmeddelande, så att den ligger kvar kopplad till original-ljudet i tråden.
Du kan enkelt ändra indatakällan från Telegram till Google Drive (eller en webhook-uppladdning) beroende på dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementation
Steg 1: Konfigurera Telegram-triggern
Konfigurera den inkommande Telegram-triggern så att arbetsflödet startar varje gång en användare skickar ett meddelande eller en ljudfil.
- Lägg till och öppna Telegram Incoming Trigger.
- Anslut er Telegram-bot till triggern och spara nodkonfigurationen.
- Säkerställ att triggern är ansluten till Route by Condition som nästa nod.
Inloggningsuppgifter krävs: Anslut era Telegram Bot API-inloggningsuppgifter för Telegram Incoming Trigger.
Steg 2: Anslut Telegram-åtgärder och routning
Konfigurera routningslogik och det initiala Telegram-svaret som förgrenar vidare till uppladdnings- och sammanslagningsstegen.
- Öppna Route by Condition och definiera reglerna som avgör om ett meddelande är en fil eller ett meddelande med endast text.
- Bekräfta att Route by Condition routar till Telegram Sender för filbaserade meddelanden och till Text Message Path för meddelanden med endast text.
- Öppna Telegram Sender och konfigurera det utgående meddelandet som bekräftar att filen har tagits emot.
- Notera parallell exekvering: Telegram Sender skickar utdata till både Start Upload Session och Combine Streams parallellt.
Inloggningsuppgifter krävs: Anslut era Telegram Bot API-inloggningsuppgifter för Telegram Sender.
Steg 3: Sätt upp uppladdnings- och transkriberingspipelinen
Bygg sekvensen för uppladdningssession, filöverföring och transkriberingsbegäran som används för att bearbeta ljudfiler.
- Öppna Start Upload Session och konfigurera HTTP-begäran som initierar den fjärrstyrda uppladdningssessionen.
- Öppna Combine Streams och ställ in den för att slå ihop utdata från uppladdningssessionen med filens dataström.
- Öppna Transfer File och konfigurera HTTP-begäran som laddar upp själva fildatan.
- Öppna Request Gemini Transcription och konfigurera HTTP-begäran som skickar in filen för transkribering.
- Verifiera sekvensen: Start Upload Session → Combine Streams → Transfer File → Request Gemini Transcription.
⚠️ Vanlig fallgrop: Säkerställ att noderna för HTTP-begäran innehåller korrekta autentiseringsheaders eller API-nycklar som krävs av era uppladdnings- och transkriberingstjänster.
Steg 4: Konfigurera Telegram-svar som utdata
Skicka transkriberingsresultatet tillbaka till den Telegram-användare som initierade flödet.
- Öppna Telegram Reply Message och mappa svarstexten från Request Gemini Transcription till meddelandets innehåll.
- Bekräfta kopplingen: Request Gemini Transcription → Telegram Reply Message.
Inloggningsuppgifter krävs: Anslut era Telegram Bot API-inloggningsuppgifter för Telegram Reply Message.
Steg 5: Granska verktygsnoder och valfria indata
Dessa noder finns tillgängliga för alternativa filkällor eller felsökning. Konfigurera dem endast om ni avser att använda dessa indata.
- Granska Utility: Watch Drive Folder Uploads och Utility: Retrieve Drive File om ni vill ta in filer från Google Drive.
- Konfigurera Utility: Fetch File from URL om ni planerar att hämta ljudfiler direkt från en offentlig URL.
- Använd Utility: Read Local Files om ni behöver testa med lokala filer på n8n-hosten.
- Behåll Utility: Inbound Webhook Receiver tillgänglig för test av externa system eller framtida utbyggnad.
Inloggningsuppgifter krävs: Anslut era Google Drive-inloggningsuppgifter för Utility: Watch Drive Folder Uploads och Utility: Retrieve Drive File.
Steg 6: Testa och aktivera ert arbetsflöde
Kör ett fullständigt test för att verifiera Telegram-inhämtning, filuppladdning, transkribering och leverans av svar.
- Klicka på Execute Workflow och skicka ett test-ljudmeddelande till er Telegram-bot.
- Bekräfta att Telegram Sender svarar och att uppladdnings-/transkriberingsflödet slutförs via Request Gemini Transcription.
- Verifiera att den slutliga transkriberingen levereras av Telegram Reply Message.
- När ni är nöjda, växla arbetsflödet till Active för användning i produktion.
Vanliga fallgropar
- Telegram-botens autentisering kan gå ut eller roteras. Om svaren plötsligt slutar, kontrollera din bot token i n8n:s Credentials och bekräfta först att boten fortfarande svarar i Telegram.
- Om du använder Wait-noder eller extern rendering varierar bearbetningstiderna. Öka väntetiden om efterföljande noder fallerar på tomma svar.
- Gemini API-anrop kan misslyckas om din request-payload är lite fel. När det blir fel, titta på körningsutdata i HTTP Request-noden i n8n och kontrollera att uppladdningssessionens ID och filmetadata faktiskt skickas vidare.
Vanliga frågor
Cirka 30 minuter om du redan har din bot och API-nyckel.
Nej. Du klistrar in autentiseringsuppgifter, aktiverar triggern och testar med ett riktigt röstmeddelande.
Ja. n8n har ett gratis self-hosted-alternativ och en gratis provperiod på n8n Cloud. Molnplaner börjar på 20 USD/månad för högre volym. Du behöver också räkna in Gemini API-användning (den kostnadsfria nivån räcker ofta för lätt transkribering).
Två alternativ: n8n Cloud (hanterat, enklast setup) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärd och hanterar n8n bra. Self-hosting ger dig obegränsade körningar men kräver grundläggande serverhantering.
Ja, men då byter du trigger och filhämtning. Ersätt Telegram Incoming Trigger med Google Drive-verktygstriggern ”Watch Drive Folder Uploads” och använd sedan noden ”Retrieve Drive File” (i stället för att hämta filen från Telegram) före uppladdningssessionen och Gemini-transkriberingsanropet. Många lägger också till en Google Sheets-radskrivning på slutet för att hålla en transkriptionslogg.
För det mesta är det en felaktig eller utbytt bot token. Generera en ny token i BotFather, uppdatera Telegram-credentialn i n8n och kör ett nytt testmeddelande för att bekräfta att triggern avfyras. Kontrollera också att din bot faktiskt har rätt att se meddelanden i chatten du använder, eftersom Telegram-behörigheter kan vara märkliga i grupper. Om nedladdningar misslyckas, granska nodens körningsutdata för att bekräfta att du får en giltig file_id från Telegram.
Mer än tillräckligt för ett litet team. På n8n Cloud Starter begränsas du av månatliga körningar, medan self-hosting inte har någon körningsgräns (det beror på din server). I praktiken kan du köra dussintals transkriberingar per dag utan att ens tänka på det, så länge din Gemini-användning håller sig inom kvoten.
Ofta, ja. Det här flödet bygger på filhantering plus fler-stegs HTTP-anrop (starta session, överför fil, begär sedan transkribering), och n8n är helt enkelt mer bekvämt med den typen av logik. Self-hosting är också viktigt om du förväntar dig volym, eftersom du inte betalar per liten delsteg. Zapier eller Make kan fortfarande fungera om du hittar en färdig Gemini-transkriberingsconnector, men du kan stöta på begränsningar när du hanterar binära filer och långa ljud. Om du vill ha hjälp att välja, prata med en automationsexpert.
När detta är i drift slutar dina röstmeddelanden vara ”ljud som du tar senare” och blir text du faktiskt kan använda. Sätt upp det en gång och låt boten göra det monotona jobbet.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.