n8nflow.net logo

Create a Witty Telegram Bot with AI-Powered Humor, Roasts & Stats using OpenRouter

by Sergey Skorobogatovβ€’Updated: Last update a month agoβ€’Source: n8n.io
Loading workflow viewer...

Getting Started

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

  1. Triggers

    • Telegram Trigger β€” receives all messages and commands from a chat.
    • Schedule Trigger β€” runs hourly to check for planned posts.
  2. Processing

    • Switch routes commands (/joke, /inspire, /random, /roast, /help, /stats, /top).
    • Chat history fetches the latest context.
    • Mention Analysis determines if the bot was mentioned.
    • Generating an information response builds replies for /help, /stats, /top.
    • AI nodes (AI response to command, AI response to mention, AI post generation) craft witty content via OpenRouter.
  3. Persistence

    • Init Database ensures tables exist (user_messages, bot_responses, bot_commands, message_reactions, scheduled_posts, user_stats).
    • Logging nodes update stats and store every bot/user interaction.
  4. Delivery

    • Replies are sent back via Telegram Send nodes (Send AI response, Send info reply, Reply to Mention, Submit scheduled post).

βš™οΈ Setup Instructions

  1. Create a Telegram Bot with @BotFather and get your API token.

  2. Add credentials in n8n:

    • Telegram API (your bot token)
    • OpenRouter (API key from openrouter.ai)
    • Postgres (use your DB, Supabase works well).
  3. Run theInit Database node once to create all required tables.

  4. (Optional) Seed schedule with the Adding a schedule node β€” it inserts:

    • Morning joke at 06:00
    • Daily motivation at 09:00
    • Random wisdom at 17:00
      (Adjust chat_id to your group/channel ID.)
  5. 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!