Administrativt arbete känns inte svårt. Det känns oändligt. En snabb utgift här, en uppgift där, och sedan letar du efter rätt app igen och försöker komma ihåg vad du redan har gjort.
Telegram Sheets-automatisering är en lättnad för dig som lever i chatt. En småföretagare som följer kostnader på språng kommer att älska det, och det gör även en marknadschef som jonglerar uppföljningar. Även frilansare får en renare arbetsdag när “småsakerna” slutar stjäla fokus.
Det här arbetsflödet gör Telegram till en personlig AI-assistent som kan logga utgifter i Google Sheets, hantera uppgifter och ta hand om meddelanden. Du ser vad det automatiserar, vilka resultat du kan förvänta dig och vad du behöver för att köra det stabilt.
Så fungerar automatiseringen
Hela n8n-arbetsflödet, från trigger till slutligt resultat:
n8n Workflow Template: Telegram + Google Sheets: admin samlad i en chatt
flowchart LR
subgraph sg0["Telegram Flow"]
direction LR
n0@{ icon: "mdi:brain", form: "rounded", label: "OpenAI Chat Model", pos: "b", h: 48 }
n1@{ icon: "mdi:memory", form: "rounded", label: "Simple Memory", pos: "b", h: 48 }
n2@{ icon: "mdi:wrench", form: "rounded", label: "Gmail MCP", pos: "b", h: 48 }
n3@{ icon: "mdi:wrench", form: "rounded", label: "Google Tasks MCP", pos: "b", h: 48 }
n19@{ icon: "mdi:wrench", form: "rounded", label: "Calendar MCP", pos: "b", h: 48 }
n22["<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 Trigger"]
n23@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Switch", pos: "b", h: 48 }
n24@{ icon: "mdi:cog", form: "rounded", label: "Transcribe audio or video", pos: "b", h: 48 }
n25@{ icon: "mdi:wrench", form: "rounded", label: "Finance Tracker", pos: "b", h: 48 }
n34["<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/>Get a file"]
n37@{ icon: "mdi:wrench", form: "rounded", label: "Google Contacts", pos: "b", h: 48 }
n38["<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"]
n39@{ icon: "mdi:robot", form: "rounded", label: "Jarvis", pos: "b", h: 48 }
n40@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Only allow me", pos: "b", h: 48 }
n41@{ icon: "mdi:swap-vertical", form: "rounded", label: "Set Reply Message", pos: "b", h: 48 }
n42@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Check Text or Audio", pos: "b", h: 48 }
n43["<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 an audio file"]
n44@{ icon: "mdi:cog", form: "rounded", label: "Convert text to speech", pos: "b", h: 48 }
n45@{ icon: "mdi:wrench", form: "rounded", label: "Think", pos: "b", h: 48 }
n45 -.-> n39
n39 --> n41
n23 --> n39
n23 --> n34
n2 -.-> n39
n34 --> n24
n19 -.-> n39
n40 --> n23
n1 -.-> n39
n25 -.-> n39
n37 -.-> n39
n3 -.-> n39
n22 --> n40
n0 -.-> n39
n41 --> n42
n42 --> n38
n42 --> n44
n44 --> n43
n24 --> n39
end
subgraph sg1["Gmail MCP Server Flow"]
direction LR
n4@{ icon: "mdi:play-circle", form: "rounded", label: "Gmail MCP Server", pos: "b", h: 48 }
n5@{ icon: "mdi:message-outline", form: "rounded", label: "Send Email", pos: "b", h: 48 }
n6@{ icon: "mdi:message-outline", form: "rounded", label: "Reply to an Email", pos: "b", h: 48 }
n7@{ icon: "mdi:message-outline", form: "rounded", label: "Get Emails", pos: "b", h: 48 }
n8@{ icon: "mdi:message-outline", form: "rounded", label: "Add Label to Email", pos: "b", h: 48 }
n9@{ icon: "mdi:message-outline", form: "rounded", label: "Get Labels", pos: "b", h: 48 }
n10@{ icon: "mdi:message-outline", form: "rounded", label: "Draft Email", pos: "b", h: 48 }
n11@{ icon: "mdi:message-outline", form: "rounded", label: "Draft Email Reply", pos: "b", h: 48 }
n7 -.-> n4
n9 -.-> n4
n5 -.-> n4
n10 -.-> n4
n11 -.-> n4
n6 -.-> n4
n8 -.-> n4
end
subgraph sg2["Calendar MCP Server Flow"]
direction LR
n12@{ icon: "mdi:location-exit", form: "rounded", label: "Check Availability", pos: "b", h: 48 }
n13@{ icon: "mdi:location-exit", form: "rounded", label: "Get all Events", pos: "b", h: 48 }
n14@{ icon: "mdi:location-exit", form: "rounded", label: "Delete Calendar Event", pos: "b", h: 48 }
n15@{ icon: "mdi:location-exit", form: "rounded", label: "Reschedule Event", pos: "b", h: 48 }
n16@{ icon: "mdi:location-exit", form: "rounded", label: "Get Event", pos: "b", h: 48 }
n17@{ icon: "mdi:location-exit", form: "rounded", label: "Create an event", pos: "b", h: 48 }
n18@{ icon: "mdi:play-circle", form: "rounded", label: "Calendar MCP Server", pos: "b", h: 48 }
n16 -.-> n18
n13 -.-> n18
n17 -.-> n18
n15 -.-> n18
n12 -.-> n18
n14 -.-> n18
end
subgraph sg3["Task Manager MCP Flow"]
direction LR
n20@{ icon: "mdi:cog", form: "rounded", label: "Complete a Task", pos: "b", h: 48 }
n21@{ icon: "mdi:play-circle", form: "rounded", label: "Task Manager MCP", pos: "b", h: 48 }
n30@{ icon: "mdi:cog", form: "rounded", label: "Get many Tasks", pos: "b", h: 48 }
n31@{ icon: "mdi:cog", form: "rounded", label: "Delete a Task", pos: "b", h: 48 }
n32@{ icon: "mdi:cog", form: "rounded", label: "Get a Task", pos: "b", h: 48 }
n33@{ icon: "mdi:cog", form: "rounded", label: "Create a Task", pos: "b", h: 48 }
n32 -.-> n21
n33 -.-> n21
n31 -.-> n21
n30 -.-> n21
n20 -.-> n21
end
subgraph sg4["Finance Manager MCP Server Flow"]
direction LR
n26@{ icon: "mdi:play-circle", form: "rounded", label: "Finance Manager MCP Server", pos: "b", h: 48 }
n27@{ icon: "mdi:database", form: "rounded", label: "Get all Expenses", pos: "b", h: 48 }
n28@{ icon: "mdi:database", form: "rounded", label: "Create Expense", pos: "b", h: 48 }
n29@{ icon: "mdi:database", form: "rounded", label: "Delete Expense", pos: "b", h: 48 }
n28 -.-> n26
n29 -.-> n26
n27 -.-> n26
end
subgraph sg5["Google Contacts MCP Flow"]
direction LR
n35@{ icon: "mdi:cog", form: "rounded", label: "Get Contacts", pos: "b", h: 48 }
n36@{ icon: "mdi:play-circle", form: "rounded", label: "Google Contacts MCP", pos: "b", h: 48 }
n35 -.-> n36
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 n22,n4,n18,n21,n26,n36 trigger
class n39 ai
class n0 aiModel
class n2,n3,n19,n25,n37,n45 ai
class n1 ai
class n23,n40,n42 decision
class n27,n28,n29 database
classDef customIcon fill:none,stroke:none
class n22,n34,n38,n43 customIcon
Problemet: admin finns på för många ställen
De flesta “snabba admin”-uppgifter görs inte i ett svep. Du ser en utgift när du är ute, tänker att du ska logga den senare, och sedan försvinner den i tomma intet. Uppgifter är likadana. Du skickar ett meddelande till dig själv, öppnar en anteckningsapp, lägger till något i ett uppgiftsverktyg och sitter ändå med dubbletter eller halvfärdiga listor. Samtidigt fortsätter kalender- och e-postförfrågningar att trilla in, så din uppmärksamhet rycks hela tiden bort från faktiskt arbete. Värst är den mentala belastningen: du byter hela tiden kontext och dubbelkollar om något fångades korrekt.
Det blir snabbt mycket. Här är vad som fallerar i praktiken.
- Du loggar utgifter i batchar, vilket leder till borttappade kvitton och suddiga detaljer.
- Uppgifter finns på fem olika ställen, så “gjorde jag det här?” blir en daglig fråga.
- Röstanteckningar är smidiga, men att transkribera och agera på dem är ett släp.
- Även när du använder automatiseringar får du inte tydliga bekräftelser tillbaka där du ställde frågan.
Lösningen: en Telegram-hubb som loggar och agerar
Det här n8n-arbetsflödet gör Telegram till ett enda kommandocenter för adminjobbet du hela tiden skjuter upp. Det lyssnar på inkommande Telegram-meddelanden (text eller ljud), kontrollerar att avsändaren är behörig och routar sedan begäran till en AI-agent driven av OpenAI. Agenten avgör vad du menade och anropar rätt anslutet verktyg: lägg till en utgift i Google Sheets, skapa eller slutför en uppgift i Google Tasks, hämta kontakter eller hantera e-post- och kalenderåtgärder via anslutna Google-tjänster. Till sist svarar arbetsflödet i Telegram med en tydlig bekräftelse, antingen som text eller som ett ljudsvar om du föredrar det. Ett ställe att fråga. Ett ställe att få svar.
Arbetsflödet startar när du skickar ett meddelande till din Telegram-bot. Om du skickar ljud laddar den ner filen och transkriberar den (valfritt stöd för ElevenLabs), och skickar sedan texten till AI-agenten. Därifrån triggar agenten rätt åtgärd (Sheets, Tasks, Gmail, Calendar, Contacts) och skickar en bekräftelse tillbaka till samma chatt.
Vad du får: automatisering vs. resultat
| Vad det här arbetsflödet automatiserar | Resultat du får |
|---|---|
|
|
Exempel: så här ser det ut
Säg att du loggar 15 småutgifter i veckan (kaffe med kund, mjukvarutillägg, parkering). Manuellt, om varje tar cirka 5 minuter när du räknar in att öppna Sheets, hitta rätt rad och skriva in detaljer, blir det ungefär en timme irriterande arbete. Med det här arbetsflödet skickar du “Add expense $18 parking” i Telegram, vilket oftast tar under 30 sekunder, och arket uppdateras i bakgrunden. Även om du gör några röstanteckningar och väntar en minut på transkribering får du ändå tillbaka större delen av den timmen.
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 Bot API för att ta emot och svara i chatten
- Google Sheets för utgiftsloggning och hämtning
- OpenAI API-nyckel (hämta den i din OpenAI-dashboard)
Kunskapsnivå: Medel. Du kopplar några konton, lägger in inloggningsuppgifter och testar meddelanderoutning i Telegram.
Vill du inte sätta upp detta själv? Prata med en automationsexpert (gratis 15-minuters konsultation).
Så fungerar det
Ett Telegram-meddelande triggar allt. Du skickar text eller en ljudanteckning till din bot, och n8n startar arbetsflödet direkt. Det finns också en kontroll av avsändarbehörighet så att slumpmässiga personer inte kan prata med din assistent.
Ljud blir användbar text. Om meddelandet är en röstanteckning laddar arbetsflödet ner Telegram-filen och transkriberar den (ElevenLabs är valfritt). Om det bara är text routas det vidare direkt.
AI-agenten avgör vilken åtgärd som ska tas. En OpenAI Chat Model plus ett litet “fönsterbaserat minne” hjälper agenten att tolka vad du vill och behålla lite kontext mellan meddelanden. Sedan anropar den relevant verktyg: Google Sheets för utgifter, Google Tasks för uppgifter och Google-tjänster för e-post, kalender och kontakter.
Resultaten kommer tillbaka till Telegram. Svaret formateras och skickas som Telegram-text, eller konverteras till tal och returneras som ljud. Den bekräftelseslingan är det som gör att det känns pålitligt.
Du kan enkelt ändra vilka verktyg som är aktiverade så att det passar din setup. Se den fullständiga implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementering
Steg 1: Konfigurera Telegram-triggern
Det här arbetsflödet startar när ett Telegram-meddelande kommer in, och endast auktoriserade avsändare släpps igenom.
- Lägg till och öppna Telegram Incoming Trigger.
- Inloggningsuppgift krävs: Anslut era telegramApi-inloggningsuppgifter.
- Lämna Updates som
messageför att fånga text- och röstmeddelanden. - Öppna Authorize Sender och ställ in villkoret för att tillåta ert användarnamn: Left Value
{{$json.message.chat.username}}är lika med Right Value[YOUR_ID].
Steg 2: Routa meddelandetyper och hantera media
Textmeddelanden går direkt till assistenten, medan röstmeddelanden först laddas ned och transkriberas.
- I Route Message Type, behåll regeln som kontrollerar att
{{$json.message.text}}finns för utgången Text, och att{{$json.message.text}}inte finns för utgången Audio. - Konfigurera Download Telegram File med File ID satt till
{{$json.message.voice.file_id}}och Resource satt tillfile. - Inloggningsuppgift krävs: Anslut era telegramApi-inloggningsuppgifter på Download Telegram File.
- Konfigurera Transcribe Media med Resource
speechoch OperationspeechToText. - Inloggningsuppgift krävs: Anslut era elevenLabsApi-inloggningsuppgifter på Transcribe Media.
Steg 3: Sätt upp assistentens intelligens och minne
Assistenten bygger på en OpenAI-chatmodell och ett sessionsminne kopplat till Telegram-användarnamnet.
- Öppna OpenAI Chat Engine och välj modellen
gpt-4.1-mini. - Inloggningsuppgift krävs: Anslut era openAiApi-inloggningsuppgifter på OpenAI Chat Engine.
- Öppna Windowed Memory Store och sätt Session Key till
{{$('Telegram Incoming Trigger').item.json.message.chat.username}}med Session ID TypecustomKey. - Öppna Assistant Orchestrator och behåll Text som
{{$json.message.text}} {{$json.text}}.
Steg 4: Anslut MCP-gateways och serviceklienter
Assistenten använder MCP-gateways för Gmail, Kalender, Tasks, Ekonomi och Kontakter. Säkerställ att alla endpoints och platshållare är korrekt inställda.
- Verifiera att Gmail MCP Gateway-sökvägen är
906a5e01-3f46-444e-a3b7-51d2105eac16och att Gmail MCP Client-endpointen ärhttps://n8n.exildraw.com/mcp/gmail-mcp/sse. - Verifiera att Calendar MCP Gateway-sökvägen är
64e72cc1-3df0-4090-9522-d534c3f245aaoch att Calendar MCP Client-endpointen ärhttps://n8n.exildraw.com/mcp/google-calendar/sse. - Verifiera att Tasks MCP Gateway-sökvägen är
7bf1c961-4feb-4c31-919e-ff300c40406doch uppdatera Tasks MCP Client-endpointen så att den inkluderar er API-nyckel:https://n8n.exildraw.com/mcp/task-[CONFIGURE_YOUR_API_KEY]. - Verifiera att Finance MCP Gateway-sökvägen är
f226741c-0f79-4f23-96bf-d8eb47206bcfoch att Finance MCP Client-endpointen ärhttps://n8n.exildraw.com/mcp/finance-manager/sse. - Verifiera att Contacts MCP Gateway-sökvägen är
01e90a0b-6f53-40d0-a8d3-a05c34a46fbboch att Contacts MCP Client-endpointen ärhttps://n8n.exildraw.com/mcp/google-contacts.
[CONFIGURE_YOUR_API_KEY] innan ni testar.Steg 5: Anslut verktygen för Gmail, Kalender, Tasks, Ekonomi och Kontakter
Dessa verktygsnoder används av assistenten. På grund av många noder, anslut inloggningsuppgifter per tjänstegrupp i stället för att konfigurera varje nod individuellt.
- Inloggningsuppgift krävs: Anslut era gmailOAuth2-inloggningsuppgifter på alla Gmail-verktyg: Dispatch Email, Reply Email Message, Retrieve Email List, Apply Email Labels, Fetch Label List, Create Email Draft och Draft Reply Message.
- Inloggningsuppgift krävs: Anslut era googleCalendarOAuth2Api-inloggningsuppgifter på alla kalenderverktyg: Check Calendar Availability, Retrieve Calendar Events, Fetch Calendar Event, Create Calendar Entry, Update Calendar Event och Remove Calendar Event.
- Inloggningsuppgift krävs: Anslut era googleTasksOAuth2Api-inloggningsuppgifter på alla task-verktyg: Retrieve Task List, Generate Task, Fetch Single Task, Remove Task Entry och Mark Task Complete.
- Inloggningsuppgift krävs: Anslut era googleSheetsOAuth2Api-inloggningsuppgifter på Retrieve Expense Records, Append Expense Entry och Clear Expense Rows.
- Inloggningsuppgift krävs: Anslut era googleContactsOAuth2Api-inloggningsuppgifter på Retrieve Contacts.
Steg 6: Konfigurera svarskomposition och formatering
Assistentens svar normaliseras till ett enda meddelandefält och routas till text- eller ljudutgångar.
- Öppna Compose Reply Text och sätt tilldelningen för message till
{{$json.output || $json.error}}. - Öppna Route Reply Format och behåll reglerna som kontrollerar att
{{$('Telegram Incoming Trigger').item.json.message.text}}finns för text och inte finns för ljud. - Öppna Send Telegram Text och sätt Text till
{{$('Compose Reply Text').item.json.message.replace(/[_*\[\]()~`>#+=\-|{}.!\\]/g, '\\$&')}}och Chat ID till{{$('Telegram Incoming Trigger').item.json.message.chat.id}}. - Inloggningsuppgift krävs: Anslut era telegramApi-inloggningsuppgifter på Send Telegram Text.
Steg 7: Aktivera ljudsvar (valfritt)
Röstsvar syntetiseras med ElevenLabs och levereras tillbaka till Telegram som ljud.
- Öppna Synthesize Speech och sätt Text till
{{$('Compose Reply Text').item.json.message}}. - Välj Voice som
[YOUR_ID](exempel:Devi - Clear Hindi pronunciation). - Inloggningsuppgift krävs: Anslut era elevenLabsApi-inloggningsuppgifter på Synthesize Speech.
- Öppna Send Telegram Audio och behåll Operation satt till
sendAudiomed Binary Data aktiverat. - Inloggningsuppgift krävs: Anslut era telegramApi-inloggningsuppgifter på Send Telegram Audio.
Steg 8: Testa och aktivera ert arbetsflöde
Validera assistentens beteende end-to-end innan ni slår på det i produktion.
- Klicka på Execute Workflow och skicka ett Telegram-textmeddelande till er bot.
- Bekräfta att körvägen följer Telegram Incoming Trigger → Authorize Sender → Route Message Type → Assistant Orchestrator → Compose Reply Text → Route Reply Format → Send Telegram Text.
- Skicka ett röstmeddelande och bekräfta att körvägen följer Download Telegram File → Transcribe Media → Assistant Orchestrator → Synthesize Speech → Send Telegram Audio.
- Verifiera att lyckade körningar visar ett strukturerat svar i Compose Reply Text och en leverans i Telegram.
- Växla arbetsflödet till Active när testerna är godkända.
Vanliga fallgropar
- Inloggningsuppgifter för Telegram Bot API kan löpa ut eller vara felkonfigurerade. Om svaren slutar komma, kontrollera först din bot-token och chattbehörigheter i n8n-inloggningsuppgifterna.
- Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om nedströmsnoder misslyckas på grund av tomma svar.
- Standardprompter i AI-noder är generiska. Lägg in er tonalitet tidigt, annars kommer du att redigera utdata för alltid.
Vanliga frågor
Cirka 30–60 minuter om dina Google- och Telegram-konton är redo.
Nej. Du kopplar främst konton och klistrar in API-nycklar. Logiken är redan paketerad i arbetsflödet.
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 med OpenAI API-kostnader (ofta några dollar i månaden vid lätt användning).
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 hanterar n8n bra. Egen drift ger dig obegränsat antal körningar, men kräver grundläggande serverhantering.
Ja, och det är en smart förenkling. Du kan stänga av Gmail- och Calendar-MCP-verktygen så att agenten bara anropar Google Sheets (Retrieve Expense Records, Append Expense Entry, Clear Expense Rows) och eventuellt Google Tasks. De flesta justerar också steget “Compose Reply Text” så att bekräftelserna inkluderar kategori och leverantör, inte bara beloppet.
Oftast är det bot-token eller chattbehörigheter. Generera om eller kopiera om Telegram Bot API-token och bekräfta sedan att arbetsflödet skickar svar till rätt chatt-ID. Om du har aktiverat avsändarbehörighet, kontrollera att din Telegram-användare finns i tillåtelselistan, eftersom arbetsflödet tyst filtrerar bort okända avsändare. Rate limits är ovanliga vid personlig användning, men kan dyka upp om du spammar många meddelanden snabbt.
För de flesta små team klarar den tusentals meddelanden per månad utan krångel, och egen drift tar bort körningsbegränsningar helt.
Ofta, ja, eftersom den här typen av assistent behöver förgrening, minne och åtgärder över flera verktyg som blir klumpiga i “tvåstegs”-automatiseringar. n8n ger dig också mer kontroll över meddelanderoutning (text vs ljud), behörighetskontroller och hur agenten avgör vilket verktyg som ska anropas. Zapier eller Make kan fortfarande fungera om du bara vill ha “Telegram-meddelande → lägg till rad i Google Sheets” och inget mer. När du vill ha uppgifter plus e-post plus kalender från en chatt växer logiken snabbt. Prata med en automationsexpert om du vill ha hjälp att välja det enklaste upplägget.
När detta väl är igång slutar din admin att spridas över flikar och halvfärdiga anteckningar. Du skickar meddelandet, får bekräftelsen och går vidare.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.