Behöver ert företag hjälp med att implementera AI? Kontakta oss och få prisoffert här →
AI Skolan
januari 22, 2026

Telegram + Postgres: bot som postar och loggar

Rickard Andersson Partner, Nodenordic.se

Din Telegram-grupp är tyst en dag och plötsligt är du “den som borde posta något”. Då stressar du fram, slänger in ett halvdant meddelande och hoppas att det landar. Samtidigt dyker samma frågor upp om och om igen, och du har noll insyn i vilka som faktiskt engagerar sig.

Driver du en community för ett varumärke känns det här igen. En marknadschef märker det när engagemanget dippar inför en kampanj. En småföretagare märker det klockan 21, när du inser att du glömde posta igen. Den här automatiseringen med en Telegram Postgres-bot håller gruppen aktiv och gör att svaren känns genomtänkta, inte improviserade.

Du sätter upp en Telegram-bot som svarar med AI-driven humor eller hjälpsam info, publicerar schemalagda inlägg och loggar allt i Postgres så att du faktiskt kan se vad som fungerar.

Så här fungerar automatiseringen

Här är hela workflowet du kommer att sätta upp:

n8n Workflow Template: Telegram + Postgres: bot som postar och loggar

Varför det här är viktigt: håll en Telegram-grupp aktiv utan att behöva passa den

“Bara posta mer” är ett dåligt råd när du redan går på knäna. Att posta konsekvent kräver idéarbete, skrivande, timing och sedan uppföljande svar när folk reagerar eller ställer frågor. Gör du det manuellt blir det dessutom gissningar: vilka inlägg får respons, vilka kommandon testar folk, vilka är mest aktiva och när gruppen faktiskt är vaken. Och ärligt talat är det värsta den mentala belastningen. Du är alltid halvt i arbete, eftersom du alltid är “jour” för chatten.

Det eskalerar snabbt. Här är var det oftast faller isär.

  • Någon måste komma ihåg att posta dagens “något”, vilket gör att kontinuiteten faller så fort du blir upptagen.
  • Svaren är repetitiva, så du ignorerar antingen meddelanden (engagemanget sjunker) eller så svarar du på samma saker om och om igen.
  • Du kan inte förbättra det du inte spårar, och Telegrams chathistorik i sig är inget användbart analyssystem.
  • Manuell statistik och topplistor tar tid, så det blir aldrig av, trots att det är bra för energin i communityt.

Det du bygger: en AI-telegrambot med schemaläggning och analys

Det här workflowet gör din Telegram-grupp till en plats som känns levande, även när du inte bevakar den. Det startar på två sätt: meddelanden och kommandon som kommer in i Telegram, och en schemaläggare som varje timme kontrollerar om några planerade inlägg ska publiceras. När någon skriver ett kommando som /joke eller /inspire routar workflowet det, hämtar lite nylig chattkontext från Postgres och genererar ett kort svar i er tonalitet via en AI-agent (med en OpenRouter-chatmodell). Mentions fungerar också, så om någon taggar boten svarar den i kontext i stället för att slänga ur sig en slumpmässig rad. I bakgrunden loggas varje meddelande, kommando och botsvar i Postgres så att du senare kan ställa riktiga frågor, som “Vad använder folk faktiskt?” eller “Vem håller chatten igång?”

Workflowet börjar med Telegram-meddelanden eller en schemakontroll varje timme. I mitten avgör det vad användaren vill (kommando, mention, statistikförfrågan) och genererar rätt svar. Till sist skickar det meddelandet tillbaka till Telegram och sparar korrekt formaterade poster i Postgres så att rapportering blir enkel.

Det du bygger

Förväntade resultat

Säg att du driver en grupp med 200 personer och försöker hålla den varm med 3 schemalagda inlägg per dag (skämt, motivation och en slumpmässig fråga). Manuellt tar det kanske 10 minuter per inlägg att skriva, posta och reagera på svar, alltså runt 30 minuter om dagen. Lägg till ytterligare 20 minuter på att svara på vanliga prompts eller reagera på mentions, så är du uppe i cirka 50 minuter. Med det här workflowet blir postningen automatisk och de flesta svar hanteras direkt, så din “hands-on”-tid sjunker till en snabb 10-minuters avstämning.

Innan du börjar

  • 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 kommandon och skicka inlägg
  • Postgres för att lagra meddelanden, statistik och scheman
  • OpenRouter API-nyckel (hämta den från openrouter.ai)

Nivå: Medel. Du kopplar in inloggningsuppgifter, kör en DB-initialisering en gång och ändrar några värden som chat_id och schemalagda tider.

Vill du att någon bygger detta åt dig? Prata med en automationsexpert (gratis 15-minuters konsultation).

Steg för steg

Ett Telegram-meddelande eller kommando triggar workflowet. Varje inkommande uppdatering fångas upp och loggas direkt till Postgres så att du får en pålitlig aktivitetslogg.

Workflowet routar förfrågan utifrån intent. En Switch-nod kontrollerar om det är /joke, /inspire, /random, /roast, /help, /stats eller /top. Om det är en mention kör den en snabb mention-kontroll och hämtar nylig konversationskontext från Postgres för att hålla svaren sammanhängande.

AI genererar svaret (eller så bygger kod ett infosvar). Roliga kommandon och mention-svar går via AI-agenten som drivs av OpenRouter-chatmodellen. Svar för statistik och topplistor sätts ihop från Postgres-frågor så att de blir korrekta och snabba.

Botten svarar i Telegram och lagrar resultatet. Workflowet skickar meddelandet till din chatt och skriver sedan tillbaka botsvaret (och kommandoanvändning) till Postgres för analys och felsökning senare.

Du kan enkelt ändra schemalagda tider så att de matchar din målgrupp, eller byta svarsstil från “kvick” till “stöttande” beroende på behov. Se den fullständiga implementationsguiden nedan för anpassningsalternativ.

Steg-för-steg-guide för implementering

Steg 1: Konfigurera Telegram-triggern

Börja med att ansluta Telegrams uppdateringsström som startar hela engagemangsflödet.

  1. Lägg till och öppna Telegram Incoming Trigger och behåll Updates inställt på *.
  2. Inloggning krävs: Anslut era telegramApi-inloggningsuppgifter.
  3. Bekräfta att triggern är ansluten till både Record Message Stats och Command RouterTelegram Incoming Trigger skickar utdata till både Record Message Stats och Command Router parallellt.
Om Telegram-uppdateringar inte kommer fram, kontrollera er bot-token igen och säkerställ att webhooken är registrerad genom att köra en testkörning.

Steg 2: Anslut Postgres och initiera datatabeller

Det här flödet använder Postgres för meddelandehistorik, statistik, kommandospårning och schemalagda inlägg. Anslut Postgres-inloggning på alla databasnoder och initiera schemat.

  1. Öppna Utility: Initialize Tables och ställ in Operation till executeQuery med det medföljande CREATE TABLE-skriptet.
  2. Inloggning krävs: Anslut era postgres-inloggningsuppgifter i Utility: Initialize Tables.
  3. Använd samma postgres-inloggningsuppgifter på alla databasnoder (10+ noder hanterar meddelandeloggar, statistik, kommandon, schemalagda inlägg och svar).
  4. Öppna Utility: Insert Post Schedule och ersätt [YOUR_ID] med ert mål-Telegram-chat_id.
⚠️ Vanlig fallgrop: Om ni glömmer att ersätta [YOUR_ID] kommer schemalagda inlägg aldrig att levereras.

Steg 3: Sätt upp AI-bearbetning och kontextbygge

Konfigurera OpenRouter-språkmodellen och AI-agentnoderna som genererar svar och schemalagda inlägg.

  1. Öppna OpenRouter Chat Model och ställ in Model till openai/gpt-oss-120b.
  2. Inloggning krävs: Anslut era openRouterApi-inloggningsuppgifter i OpenRouter Chat Model.
  3. Bekräfta att OpenRouter Chat Model är ansluten som språkmodell för AI Command Reply, AI Mention Reply och AI Scheduled Post (inloggningen ska ligga på den överordnade OpenRouter Chat Model, inte på agentnoderna).
  4. I AI Command Reply, behåll prompten i Text som =Command: /{{ $json.command }} User: {{ $json.userName }} Chat context: {{ $json.recentMessages }} Time: {{ $json.timeContext }} Generate {{ $json.command === 'joke' ? 'a witty joke' : $json.command === 'inspire' ? 'a motivating line' : $json.command === 'roast' ? 'a sharp roast with folksy sarcasm' : 'a random interesting line' }} in your signature style with subtle humor and playful teasing. .
  5. I AI Mention Reply, behåll Text inställt på =User: {{ $json.userName }} {{ $json.isRandomRequest ? 'Mentioned the bot without text' : 'Message: "' + $json.userMessage + '"' }} Chat context: {{ $json.recentMessages }} Time: {{ $json.timeContext }} | Style: {{ $json.contentType }} {{ $json.isRandomRequest ? 'Make a witty remark about the chat situation.' : 'Reply to the message with subtle humor.' }} Be witty and tactful! 🎭 .
  6. I AI Scheduled Post, behåll Text inställt på =Post type: {{ $json.post_type }} Generate {{ $json.post_type === 'morning_joke' ? 'a morning joke' : $json.post_type === 'daily_motivation' ? 'daily motivation' : 'a piece of random wisdom' }} in your style with subtle humor. .
Använd Fetch Conversation History och Analyze Mentions för att berika promptens kontext, vilket förbättrar relevans och kontinuitet i svaren.

Steg 4: Konfigurera routing och meddelandeanalys

Sätt upp routningslogik för kommandon, omnämnanden och infosvar, och parsa samt analysera inkommande meddelanden.

  1. I Command Router, verifiera att alla kommandoregler är inställda på Starts With och matchar värden som /joke, /inspire, /random, /roast, @GiggleGPTBot, /stats, /help och /top.
  2. Säkerställ att Fetch Conversation History använder chat-ID-uttrycket {{ $('Telegram Incoming Trigger').item.json.message.chat.id }} för att hämta senaste meddelanden.
  3. Behåll Analyze Mentions som parsningslager för userId, innehållstyp, kontextfönster och detektion av omnämnanden.
  4. I Check Mention Prefix, bekräfta att villkoret kontrollerar ={{ $json.originalMessage }} Starts With @GiggleGPTBot.
  5. I Route Response Type, säkerställ att villkoren använder ={{ $json.isInfoCommand }} och ={{ $json.responseText }} för att routa utdatatyp.
⚠️ Vanlig fallgrop: Om ni ändrar kommandoprefix i Command Router utan att uppdatera prompter i AI Command Reply kan det leda till svar som inte matchar.

Steg 5: Konfigurera utdata och schemalagd publicering

Leverera botsvar och schemalagda inlägg tillbaka till Telegram och lagra resultaten i Postgres för historik och analys.

  1. För schemalagda inlägg, ställ in Hourly Scheduler att köra varje timme med 0 * * * * och koppla den sedan till Retrieve Due Posts.
  2. Validera schemalagda poster med Validate Scheduled Item genom att kontrollera att ={{ $json.chat_id }} finns.
  3. Konfigurera Deliver Scheduled Post med Text ={{ $json.output }} och Chat ID ={{ $('Retrieve Due Posts').item.json.chat_id }}.
  4. Ställ in Store Scheduled Reply att infoga i bot_responses och behåll frågan som angiven.
  5. För infokommandon, konfigurera Send Info Message med Text ={{ $json.responseText }} och Chat ID ={{ $json.chatId }}.
  6. För omnämnandensvar, ställ in Send Mention Reply med Text ={{ $json.output }} och Chat ID ={{ $('Analyze Mentions').item.json.chatId }}.
  7. Säkerställ att AI Scheduled Post skickar utdata till både Deliver Scheduled Post och Store Scheduled Reply parallellt.
Behåll parse_mode inställt på HTML i Telegram-noder för att bevara emoji och formatering på ett säkert sätt.

Steg 6: Bekräfta uppdateringar för spårning och analys

Verifiera att meddelandestatistik, kommandoanvändning och botsvar sparas korrekt för senare analys.

  1. I Record Message Stats, behåll SQL-frågan som infogar i user_messages och uppdaterar user_stats.
  2. I Record Command Usage, behåll frågan som infogar i bot_commands och ökar user_stats.commands_count.
  3. Bekräfta att Store Bot Reply skriver AI-utdata till bot_responses med {{ $json.output.replace(/'/g, "''") }}.
  4. Säkerställ att Build Info Reply tar emot data från både Fetch User Metrics och Retrieve Top Users, och att Build Info Reply sedan skickar utdata till både Record Command Usage och Route Response Type parallellt.

Steg 7: Testa och aktivera ert flöde

Kör end-to-end-tester för omnämnanden, kommandon och schemalagda inlägg innan ni aktiverar flödet i produktion.

  1. Klicka på Execute Workflow och skicka ett Telegram-meddelande som /joke eller @GiggleGPTBot hello för att trigga Telegram Incoming Trigger.
  2. Verifiera att Telegram Incoming Trigger triggas och att Record Message Stats och Command Router kör parallellt.
  3. Bekräfta lyckade utdata: Send Info Message eller Send Mention Reply ska posta tillbaka i chatten med AI-svaret.
  4. Testa schemaläggning genom att köra Hourly Scheduler manuellt och kontrollera att Deliver Scheduled Post skickar ett inlägg.
  5. När allt fungerar, växla flödet till Active för att aktivera kontinuerlig drift.
⚠️ Vanlig fallgrop: Om inget publiceras enligt schema, bekräfta att Retrieve Due Posts returnerar rader och att schematiderna matchar er serverns tidszon.
🔒

Lås upp fullständig steg-för-steg-guide

Få den kompletta implementeringsguiden + nedladdningsbar mall

Tips för felsökning

  • Telegram-uppgifter kan sluta fungera om din webhook-/polling-setup ändras. Om svar slutar komma, kontrollera först dina Telegram-credentials i n8n och anslutningen i Telegram Trigger.
  • Om du använder Wait-noder eller extern rendering varierar bearbetningstiderna. Öka väntetiden om nedströmsnoder fallerar på tomma svar.
  • OpenRouter-prompter är generiska som standard. Lägg in er varumärkesröst (och “gå inte över gränsen”-regler för /roast) tidigt, annars kommer du att redigera utdata i all evighet.

Snabba svar

Hur lång är uppsättningstiden för den här automatiseringen med Telegram Postgres-bot?

Cirka 45 minuter om du redan har Telegram, Postgres och OpenRouter klart.

Krävs kodning för den här Telegram Postgres-botten?

Nej. Du klistrar mest in credentials, kör DB-initialiseringen och justerar några värden som chat_id.

Är n8n gratis att använda för det här workflowet med Telegram Postgres-bot?

Ja. n8n har ett gratis alternativ för egen hosting och en gratis provperiod på n8n Cloud. Cloud-planer börjar på 20 USD/månad för högre volymer. Du behöver också räkna in OpenRouter-användning, som normalt är några cent per batch av svar beroende på modell.

Var kan jag hosta n8n för att köra den här automatiseringen?

Två alternativ: n8n Cloud (hanterat, enklast att komma igång) eller egen hosting på en VPS. För egen hosting är Hostinger VPS prisvärd och klarar n8n bra. Egen hosting ger dig obegränsade körningar men kräver grundläggande serverhantering.

Kan jag anpassa det här workflowet med Telegram Postgres-bot för andra use cases?

Ja, och det är det bästa. Du kan lägga till nya kommandon genom att utöka Command Router och peka dem till noden AI Command Reply med en ny prompt. Schemalagt innehåll styrs av Postgres-rader, så att lägga till “veckodagstips” eller “eventpåminnelser” är mest att lägga in nya schemaposter. Om du inte vill använda AI för vissa svar kan du i stället routa dem till kodvägen Build Info Reply.

Varför fallerar min Telegram-anslutning i det här workflowet?

Oftast är det bot-tokenen (fel, roterad eller inklistrad med ett osynligt mellanslag). Det kan också vara en webhook-/polling-mismatch: Telegram Trigger kan vara uppsatt på ett sätt, medan din bot är konfigurerad på ett annat. Kontrollera till sist att boten faktiskt är med i gruppen eller kanalen och har rättighet att posta; Telegram kan “acceptera” din setup men ändå blockera meddelanden i nedlåsta chattar.

Vilken volym kan det här workflowet med Telegram Postgres-bot hantera?

För de flesta små communities räcker det gott. Med n8n Cloud Starter kan du hantera några tusen körningar per månad, vilket täcker mycket kommandoanvändning och schemalagda inlägg. Om du hostar själv finns ingen körningsgräns (det beror på din server), och Postgres loggar utan problem stora meddelandevolymer så länge du håller koll på index och lagring.

Är den här automatiseringen med Telegram Postgres-bot bättre än att använda Zapier eller Make?

Ofta, ja. Det här workflowet använder grenlogik (kommandon, mentions, schemalagda inlägg), databasbeständighet och prompting i AI-agent-stil, vilket blir klumpigt och dyrt i enklare automatiseringsverktyg. n8n gör det också naturligt att lagra kontext i Postgres och återanvända den, vilket är hela anledningen till att svaren känns “medvetna”. Om du bara vill ha “när meddelande innehåller X, skicka Y” fungerar Zapier eller Make fint. Men för en bot som spårar, schemalägger och rapporterar är n8n helt enkelt bättre lämpat. Prata med en automationsexpert om du vill ha en snabb rekommendation för just din setup.

När det här väl rullar hålls gruppen aktiv utan att du behöver ligga över den. Och eftersom allt loggas i Postgres har du äntligen statistiken som krävs för att styra engagemanget i stället för att gissa.

Kontakta oss

Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.

×

Använd mall

Få direkt tillgång till denna n8n-arbetsflödes JSON-fil

Launch login modal Launch register modal