Du får ett “Kan jag komma in i morgon?”-meddelande… sen ett till… sen fem till. Plötsligt scrollar du, kollar kalendern, ställer följdfrågor och oroar dig ändå för att dubbelboka någon.
Det är här automatiserad bokning i Telegram betalar sig själv. Salongsägare märker det först, ärligt talat, men klinikansvariga och konsulter som tar bokningar i chatten fastnar i samma loop. Resultatet är enkelt: bokningar bekräftas i Telegram och tiden hamnar i Google Calendar utan att du behöver sitta och passa.
Det här flödet gör om meddelanden (text, röst, till och med foton och PDF:er) till schemalagda tider och skickar sedan bekräftelser och påminnelser. Du får se hur det fungerar, vad du behöver och vad du kan justera för att det ska följa dina affärsregler.
Så fungerar automationen
Se hur detta löser problemet:
n8n Workflow Template: Telegram + Google Kalender: bokningar bekräftade
flowchart LR
subgraph sg0["Telegram Flow"]
direction LR
n0@{ icon: "mdi:swap-vertical", form: "rounded", label: "Set Initial Data", 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/redis.svg' width='40' height='40' /></div><br/>Set Processing Lock"]
n2@{ icon: "mdi:cog", form: "rounded", label: "Wait", pos: "b", h: 48 }
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/redis.svg' width='40' height='40' /></div><br/>Get Current Processing Lock"]
n4@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Am I the Processor?", 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/redis.svg' width='40' height='40' /></div><br/>Pop All Batched Messages"]
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/redis.svg' width='40' height='40' /></div><br/>Delete Message List"]
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/redis.svg' width='40' height='40' /></div><br/>Delete Processing Lock"]
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/redis.svg' width='40' height='40' /></div><br/>Push"]
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/>Combine Messages"]
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/code.svg' width='40' height='40' /></div><br/>Rate Limiter"]
n11["<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/>Check Limit"]
n12@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Check Rate Limited", pos: "b", h: 48 }
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/redis.svg' width='40' height='40' /></div><br/>Redis Hourly"]
n14["<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/redis.svg' width='40' height='40' /></div><br/>Increment Counter Hourly"]
n15@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Send Mesage?", pos: "b", h: 48 }
n16@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Is Owner?", pos: "b", h: 48 }
n18@{ icon: "mdi:swap-vertical", form: "rounded", label: "Text", pos: "b", h: 48 }
n19@{ icon: "mdi:wrench", form: "rounded", label: "cancel_agent", pos: "b", h: 48 }
n20["<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/>Limit Reached?"]
n21@{ icon: "mdi:location-exit", form: "rounded", label: "Get many events", pos: "b", h: 48 }
n22@{ icon: "mdi:memory", form: "rounded", label: "Redis Chat Memory", pos: "b", h: 48 }
n23@{ icon: "mdi:wrench", form: "rounded", label: "nail-salon-booking-mcp", pos: "b", h: 48 }
n24["<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"]
n25@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Switch", pos: "b", h: 48 }
n26["<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 User Message1"]
n27["<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 Owner Message1"]
n28["<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/>Not supported1"]
n29@{ icon: "mdi:robot", form: "rounded", label: "Analyze Image1", pos: "b", h: 48 }
n30["<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/>Download Audio1"]
n31@{ icon: "mdi:robot", form: "rounded", label: "Transcribe Audio1", pos: "b", h: 48 }
n32["<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/>Download File1"]
n33@{ icon: "mdi:cog", form: "rounded", label: "Extract from File1", pos: "b", h: 48 }
n34@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Only PDF File1", pos: "b", h: 48 }
n35@{ icon: "mdi:swap-vertical", form: "rounded", label: "Audio1", pos: "b", h: 48 }
n36@{ icon: "mdi:swap-vertical", form: "rounded", label: "Image1", pos: "b", h: 48 }
n37@{ icon: "mdi:swap-vertical", form: "rounded", label: "File1", 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/httprequest.dark.svg' width='40' height='40' /></div><br/>Get Image Url1"]
n39["<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/>Get File Url1"]
n40["<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/>Incorrect format1"]
n41["<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/>Get Audio Url1"]
n47["<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 Booking Message"]
n48@{ icon: "mdi:message-outline", form: "rounded", label: "send_acknowledgement", pos: "b", h: 48 }
n49@{ icon: "mdi:robot", form: "rounded", label: "Booking Agent", pos: "b", h: 48 }
n50@{ icon: "mdi:brain", form: "rounded", label: "gemini-2.5-flash", pos: "b", h: 48 }
n51@{ icon: "mdi:brain", form: "rounded", label: "gpt-5-mini", pos: "b", h: 48 }
n8 --> n1
n18 --> n49
n2 --> n3
n37 --> n49
n35 --> n49
n36 --> n49
n25 --> n18
n25 --> n41
n25 --> n38
n25 --> n34
n25 --> n28
n16 --> n0
n51 -.-> n19
n51 -.-> n49
n11 --> n12
n10 --> n13
n13 --> n14
n15 --> n26
n19 -.-> n49
n49 --> n47
n39 --> n32
n29 --> n36
n32 --> n33
n41 --> n30
n38 --> n29
n20 --> n25
n34 --> n39
n34 --> n40
n30 --> n31
n21 --> n20
n9 --> n21
n0 --> n10
n24 --> n16
n50 -.-> n49
n22 -.-> n19
n22 -.-> n49
n31 --> n35
n12 --> n15
n12 --> n8
n33 --> n37
n26 --> n27
n4 --> n5
n6 --> n7
n1 --> n2
n48 -.-> n49
n7 --> n9
n23 -.-> n19
n23 -.-> n49
n14 --> n11
n5 --> n6
n3 --> n4
end
subgraph sg1["Schedule Flow"]
direction LR
n42@{ icon: "mdi:play-circle", form: "rounded", label: "Schedule Trigger1", 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/code.svg' width='40' height='40' /></div><br/>Calculate Tomorrow1"]
n44@{ icon: "mdi:location-exit", form: "rounded", label: "Get Schedule Events1", pos: "b", h: 48 }
n45["<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/>Format Reminder Data1"]
n46["<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 Client Reminder1"]
n42 --> n43
n43 --> n44
n44 --> n45
n45 --> n46
end
subgraph sg2["Flow 3"]
direction LR
n17@{ icon: "mdi:cog", form: "rounded", label: "Execute Airtable Agent", 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 n24,n42 trigger
class n29,n31,n49 ai
class n50,n51 aiModel
class n19,n23 ai
class n22 ai
class n4,n12,n15,n16,n25,n34 decision
class n1,n3,n5,n6,n7,n8,n13,n14 database
class n30,n32,n38,n39,n41 api
class n9,n10,n11,n20,n43,n45 code
classDef customIcon fill:none,stroke:none
class n1,n3,n5,n6,n7,n8,n9,n10,n11,n13,n14,n20,n24,n26,n27,n28,n30,n32,n38,n39,n40,n41,n47,n43,n45,n46 customIcon
Utmaningen: bokningsförfrågningar försvinner (och blir röriga) i chatten
Att boka via Telegram låter smidigt tills du är den som ska driva det. Folk skriver i fragment (“I morgon eftermiddag?” sen “Egentligen kl 4?”), de skickar röstmeddelanden när du sitter med en kund, och du slutar med att agera mänsklig router mellan kalendern och inkorgen. Den verkliga kostnaden är inte ett meddelande. Det är det konstanta kontextbytet, de missade uppföljningarna och det obekväma “tyvärr, den tiden är redan tagen” när du råkar bekräfta två personer på samma slot. Än värre: du gör allt det här jobbet bara för att ens komma till startlinjen för tjänsten.
Det drar snabbt iväg. Här är var det fallerar i verkligheten.
- Du slösar cirka 10 minuter per bokning bara på att samla in grunderna (tjänst, datum, tid, namn, telefon).
- Manuell kontroll av tillgänglighet bjuder in till misstag, särskilt när du svarar mellan behandlingar/möten.
- Folk dyker inte upp om det inte finns en påminnelse, och du kommer oftast på påminnelser när det redan är för sent.
- Spam och “prisfrågor” täpper till samma kanal som betalande kunder, vilket gör dig långsammare med alla.
Lösningen: bekräfta tider i Telegram, synka till Google Calendar
Det här flödet fungerar som en bokningskoordinator som bor inne i Telegram. Ett meddelande kommer in, det köas säkert (så att du inte processar samma konversation två gånger) och en AI-bokningsagent tar över dialogen: vilken tjänst de vill ha, vem det gäller (inklusive “boka åt min vän Sarah”) och vilken tid de frågar om. Medan kunden chattar kontrollerar automationen Google Calendar för tillgänglighet, följer dina begränsningar (som max antal bokningar per kund) och skickar en tydlig bekräftelse när en tid är låst. Senare kör den en schemalagd kontroll och skickar påminnelser vid en konsekvent tidpunkt (som kl. 20:00 för besök nästa dag). Inga fler post-it-lappar. Inga fler “har jag redan bekräftat det här?”
Flödet startar när en kund skriver till din Telegram-bot. Därefter tolkar det förfrågan (text, rösttranskribering, bildanalys eller PDF-extraktion), kontrollerar dina livehändelser i Google Calendar och bekräftar sedan bokningen tillbaka i Telegram. Slutligen skickar en separat schemalagd trigger automatiska påminnelser för kommande tider.
Vad som förändras: före vs. efter
| Det här tar bort | Effekten du kommer att se |
|---|---|
|
|
Effekt i praktiken
Säg att du hanterar 8 bokningsförfrågningar per dag via Telegram. Manuellt lägger du kanske 10 minuter per förfrågan på att ställa frågor, kolla Google Calendar, bekräfta och logga detaljer, alltså cirka 80 minuter per dag. Med det här flödet tittar du bara på undantag: boten bekräftar direkt, agenten bekräftar med hjälp av live-tillgänglighet i kalendern och påminnelser går ut automatiskt på kvällen. I praktiken landar du ofta på cirka 10 minuter totalt per dag, mest för specialfall.
Krav
- n8n-instans (testa n8n Cloud gratis)
- Alternativ för egen hosting om du föredrar det (Hostinger fungerar bra)
- Telegram för att ta emot meddelanden och skicka bekräftelser.
- Google Calendar för tillgänglighet i realtid och schemaläggning.
- Redis för rate limiting, lås och chattminne.
- OpenAI API-nyckel (hämta den i din OpenAI-dashboard) för chatt-, bild- och röstbearbetning.
Kunskapsnivå: Medel. Du kopplar konton, klistrar in API-nycklar och justerar några affärsregler som öppettider och bokningsgränser.
Behöver du hjälp att implementera detta? Prata med en automationsexpert (gratis 15-minuters konsultation).
Flödets gång
Ett Telegram-meddelande sätter igång allt. Boten tar emot ett nytt meddelande och kontrollerar snabbt om det är företagsägaren/admin eller en kund, eftersom de konversationerna ska hanteras olika.
Meddelanden köas och styrs. Redis lagrar inkommande meddelanden kort, tillämpar rate limits (standard är cirka 100 meddelanden per timme) och skapar ett processlås så att samma chatt inte behandlas två gånger när det blir hög belastning.
Innehållet tolkas i klartext. Text går direkt till bokningsagenten, röst laddas ner och transkriberas, bilder kan analyseras för sammanhang och PDF:er kan extraheras (med kontroller som stoppar format som inte stöds). Flödet behåller korttidsminne så att agenten kan ställa följdfrågor utan att börja om.
Tillgänglighet kontrolleras och sedan skickas bekräftelser. Flödet hämtar händelser från Google Calendar, föreslår giltiga tider och när en tid är vald skickar det en bokningsbekräftelse tillbaka till Telegram. En schemalagd trigger tittar senare på kommande händelser och skickar påminnelser för nästa dag vid en konsekvent tidpunkt.
Du kan enkelt ändra bokningsgränser och öppettider så att det matchar hur du jobbar. Se hela implementeringsguiden 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 meddelande kommer in i Telegram. Ni konfigurerar den inkommande triggern och ägarkontrollen innan någon bearbetning börjar.
- Lägg till och öppna Telegram Incoming Trigger.
- Inloggningsuppgifter krävs: Anslut era Telegram-inloggningsuppgifter.
- Bekräfta flödet från Telegram Incoming Trigger till Confirm Owner Status.
- I Confirm Owner Status, granska er logik för ägarkontroll så att endast behöriga chattar slussas vidare till Initialize Payload.
Steg 2: Anslut Redis och hastighetsstyrning
Redis används för meddelandebatchning, låsning och timvisa hastighetsbegränsningar. Detta säkerställer att meddelanden behandlas säkert och inom era användningströsklar.
- Öppna Initialize Payload och bekräfta att den går vidare till Rate Control Logic.
- I Rate Control Logic, bekräfta att den routar till Hourly Redis Key och därefter till Increment Hourly Count.
- Granska Validate Usage Limit och säkerställ att den matar vidare till Check Rate Limit Flag och sedan Should Send Message.
- Inloggningsuppgifter krävs: Anslut era Redis-inloggningsuppgifter till alla Redis-noder (8 noder hanterar köning, lås och räknare).
Steg 3: Konfigurera innehållsroutning och förbered payload
Meddelanden routas efter innehållstyp (text, ljud, bild eller fil) och förbereds sedan till en standardiserad payload för AI-assistenten.
- Verifiera att Limit Threshold Check routar vidare till Route by Content Type efter Retrieve Calendar Events.
- I Route by Content Type, bekräfta att grenarna går till Prepare Text Payload, Fetch Audio URL, Fetch Image URL, Validate PDF Only eller Unsupported Content Notice.
- Öppna Prepare Text Payload och bekräfta att den ansluter direkt till Reservation Assistant Agent.
Steg 4: Konfigurera fil-, ljud- och bildhantering
Ljud, bilder och dokument laddas ned, tolkas och konverteras till payloads som assistenten kan använda.
- Verifiera ljudflödet: Fetch Audio URL → Download Audio File → Transcribe Audio → Audio Payload → Reservation Assistant Agent.
- Verifiera bildflödet: Fetch Image URL → Analyze Image Content → Image Payload → Reservation Assistant Agent.
- Verifiera filflödet: Validate PDF Only → Fetch File URL → Download Document File → Extract Document Data → File Payload → Reservation Assistant Agent.
- Bekräfta att grenen för icke-PDF i Validate PDF Only routar till Invalid Format Alert.
- Inloggningsuppgifter krävs: Anslut era OpenAI-inloggningsuppgifter i Analyze Image Content och Transcribe Audio.
Steg 5: Konfigurera AI-assistenten för bokningar
AI-agenten använder chattmodeller, verktyg och minne för att tolka förfrågningar och bekräfta bokningar.
- Öppna Reservation Assistant Agent och verifiera att den tar emot input från Prepare Text Payload, Audio Payload, Image Payload och File Payload.
- Säkerställ att GPT Mini Model och Gemini Flash Model är anslutna som språkmodeller till Reservation Assistant Agent.
- Inloggningsuppgifter krävs: Anslut era OpenAI-inloggningsuppgifter i GPT Mini Model och era Google Gemini-inloggningsuppgifter i Gemini Flash Model.
- Bekräfta att Cancel Agent Tool, Booking MCP Connector, Redis Chat Memory Store och Send Acknowledgement är kopplade till Reservation Assistant Agent.
- Inloggningsuppgifter krävs: Anslut era MCP-inloggningsuppgifter för Booking MCP Connector på Reservation Assistant Agent.
- Inloggningsuppgifter krävs: Anslut Redis-inloggningsuppgifter för Redis Chat Memory Store på Reservation Assistant Agent.
- Inloggningsuppgifter krävs: Anslut Telegram-inloggningsuppgifter för Send Acknowledgement på Reservation Assistant Agent.
Steg 6: Anslut schemaläggning i Google Kalender
Arbetsflödet hämtar kalenderns tillgänglighet för bokningsbeslut och skickar schemalagda påminnelser.
- Konfigurera Retrieve Calendar Events för att hämta aktuell tillgänglighet till Limit Threshold Check.
- Sätt upp påminnelseflödet: Scheduled Trigger → Compute Next Day → Get Scheduled Events → Format Reminder Details → Send Client Reminder.
- Inloggningsuppgifter krävs: Anslut era Google Kalender-inloggningsuppgifter i Retrieve Calendar Events och Get Scheduled Events.
Steg 7: Konfigurera utgående Telegram-meddelanden
Meddelanden skickas till användare och ägare för bekräftelser, larm och påminnelser.
- Bekräfta dispatch-kedjan: Should Send Message → Dispatch User Message → Dispatch Owner Message.
- Verifiera att Reservation Assistant Agent routar till Send Booking Confirmation.
- Säkerställ att Unsupported Content Notice, Invalid Format Alert och Send Client Reminder är konfigurerade med meddelandemallar.
- Inloggningsuppgifter krävs: Anslut era Telegram-inloggningsuppgifter till alla Telegram-noder (6 noder hanterar meddelanden till användare och admin).
Steg 8: Testa och aktivera ert arbetsflöde
Kör en fullständig testcykel för att validera routning, AI-svar och notiser innan ni aktiverar i produktion.
- Klicka på Execute Workflow och skicka ett Telegram-meddelande med text, ljud, bild och PDF för att validera alla grenar.
- Bekräfta att Queue Incoming Message → Create Processing Lock → Delay Execution → Retrieve Current Lock slutförs utan Redis-fel.
- Verifiera att en lyckad körning ger ett svar från Send Booking Confirmation och valfria notiser från Dispatch User Message och Dispatch Owner Message.
- Aktivera arbetsflödet genom att växla det till Active när resultaten matchar era förväntningar.
Se upp för
- Google Calendar-inloggningar kan gå ut eller sakna rätt behörighet (scope). Om bokningar slutar bekräftas, börja med att kontrollera kontokopplingen i Google Calendar-noden i n8n.
- Om du använder Wait-noder eller är beroende av extern bearbetning (som ljudtranskribering) varierar processtiderna. Öka väntetiden om efterföljande noder fallerar på tomma svar.
- Standardprompter i AI-noder är generiska. Lägg in ert tonalitet/brand voice och er exakta tjänstelista tidigt, annars kommer du att sitta och redigera outputs för alltid.
Vanliga frågor
Cirka en timme om din Telegram-bot och Google Calendar redan är klara.
Ja, men du vill ha en person som är bekväm med att koppla konton och API-nycklar. När allt är inkopplat är den dagliga användningen bara att “svara i Telegram som vanligt”.
Ja. n8n har ett gratis alternativ för egen hosting och en gratis provperiod på n8n Cloud. Cloud-planer startar på $20/månad för högre volym. Du behöver också räkna med OpenAI API-kostnader (ofta några dollar i månaden för mindre team, mer om du transkriberar många röstmeddelanden).
Två alternativ: n8n Cloud (hanterat, enklast uppsättning) eller egen hosting på en VPS. För egen hosting är Hostinger VPS prisvärt och klarar n8n bra. Egen hosting ger dig obegränsat antal körningar men kräver grundläggande serverhantering.
Du kan justera rate limit och bokningstak i Redis och logiken “Validate Usage Limit” och sedan förfina hur Reservation Assistant Agent ställer frågor (tjänst, längd, medarbetare). Många team justerar också logiken “Retrieve Calendar Events” för att respektera buffertar som “inga bokningar inom 2 timmar”, och de anpassar bekräftelse- och påminnelsemeddelanden som skickas av Telegram-noderna.
Oftast är det ett problem med Telegram-bottoken eller behörigheter, inte själva flödet. Kontrollera inloggningsuppgifterna som används av Telegram Trigger och sänd-noderna och bekräfta sedan att din bot faktiskt kan ta emot meddelanden i chatten du testar. Om felen bara händer vid hög belastning kan du också slå i rate limits och bör granska Redis rate control och dina Telegram API-gränser.
Om du kör egen hosting finns ingen körningsgräns (det beror främst på din server och hur mycket AI-bearbetning du gör). I n8n Cloud beror kapaciteten på din plans månatliga körningar, och aktiva botar kan nå det snabbare än du tror. I praktiken kan det här flödet hantera många chattar eftersom det köar meddelanden i Redis, men röst- och dokumentbearbetning kommer att sakta ner det lite. Om du väntar dig hög volym, överväg att begränsa vilka medietyper som stöds eller att lägga transkribering utanför peak-tider.
Ofta ja, eftersom det här inte bara är “meddelande in, händelse ut”. Du jobbar med köning, rate limiting, konversationsminne och AI-baserad tolkning (inklusive rösttranskribering och hantering av bilder/PDF:er), vilket blir både klumpigt och dyrt i enklare byggare. n8n ger dig också möjlighet till egen hosting, så du betalar inte mer varje gång en kund skickar tre meddelanden i rad. Zapier eller Make kan fortfarande funka för enkla tvåstegsflöden, som “formulär → skapa kalenderhändelse”, men chattbaserad bokning är en annan typ av problem. Om du tvekar: kartlägg din verkliga konversationsprocess först och välj sedan verktyg. Prata med en automationsexpert så sanity-checkar vi det med dig.
När detta väl rullar slutar Telegram vara en kaotisk inkorg och blir en pålitlig bokningskanal kopplad till din faktiska tillgänglighet. Sätt upp det en gång och låt bekräftelser och påminnelser sköta sig i bakgrunden.
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.