🤖 Create a Witty Telegram Bot with AI-Powered Humor, Roasts & Stats using OpenRouter
⚡ 288 views · 🤖 AI Chatbots & Agents
Description
GiggleGPTBot — Witty Telegram Bot with AI & Postgres
📝 Overview
GiggleGPTBot is a witty Telegram bot built with n8n, OpenRouter, and Postgres. It delivers short jokes, motivational one-liners, and playful roasts, responds to mentions, and posts scheduled witty content. The workflow also tracks user activity and provides lightweight statistics and leaderboards.
✨ Features
- 🤖 AI-powered humor engine — replies with jokes, motivation, random witty lines, or sarcastic roasts.
- 💬 Command support —
/joke,/inspire,/random,/roast,/help,/stats,/top. - 🎯 Mention detection — replies when users tag
@GiggleGPTBot. - ⏰ Scheduled posts — morning jokes, daily motivation, and random wisdom at configured times.
- 📊 User analytics — counts messages, commands, reactions, and generates leaderboards.
- 🗄️ Postgres persistence — robust schema with tables for messages, responses, stats, and schedules.
🛠️ How It Works
-
Triggers
Telegram Trigger— receives all messages and commands from a chat.Schedule Trigger— runs hourly to check for planned posts.
-
Processing
Switchroutes commands (/joke,/inspire,/random,/roast,/help,/stats,/top).Chat historyfetches the latest context.Mention Analysisdetermines if the bot was mentioned.Generating an information responsebuilds replies for/help,/stats,/top.- AI nodes (
AI response to command,AI response to mention,AI post generation) craft witty content via OpenRouter.
-
Persistence
Init Databaseensures tables exist (user_messages,bot_responses,bot_commands,message_reactions,scheduled_posts,user_stats).- Logging nodes update stats and store every bot/user interaction.
-
Delivery
- Replies are sent back via
Telegram Sendnodes (Send AI response,Send info reply,Reply to Mention,Submit scheduled post).
- Replies are sent back via
⚙️ Setup Instructions
-
Create a Telegram Bot with @BotFather and get your API token.
-
Add credentials in n8n:
Telegram API(your bot token)OpenRouter(API key from openrouter.ai)Postgres(use your DB, Supabase works well).
-
Run the
Init Databasenode once to create all required tables. -
(Optional) Seed schedule with the
Adding a schedulenode — it inserts:- Morning joke at 06:00
- Daily motivation at 09:00
- Random wisdom at 17:00
(Adjust
chat_idto your group/channel ID.)
-
Activate workflow and connect Telegram Webhook or Polling.
📊 Database Schema
- user_messages — stores user chat messages.
- bot_responses — saves bot replies.
- bot_commands — logs command usage.
- message_reactions — tracks reactions.
- scheduled_posts — holds scheduled jokes/wisdom/motivation.
- user_stats — aggregates per-user message/command counts and activity.
🔑 Example Commands
/joke→ witty one-liner with light irony./inspire→ short motivational phrase./random→ unexpected witty remark./roast→ sarcastic roast (no offensive targeting)./stats→ shows your personal stats./top→ displays leaderboard./help→ lists available commands.@GiggleGPTBot+ message → bot replies in context.
🚀 Customization Ideas
- Add new command categories (
/quote,/fact,/news). - Expand analytics with reaction counts or streaks.
- Localize prompts into multiple languages.
- Adjust CRON schedules for posts.
✅ Requirements
- Telegram Bot token
- OpenRouter API key
- Postgres database
📦 Import this workflow, configure credentials, run the DB initializer — and your witty AI-powered Telegram companion is ready!
🔗 Nodes Used
Postgres, Telegram, Telegram Trigger, Schedule Trigger, AI Agent, OpenRouter Chat Model
📥 Import
Download workflow.json and import into n8n:
Workflow menu → Import from File