Skip to content

TechifyBots/Auto-Reaction-Bot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

235 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

A modern, open-source, and developer-friendly Telegram bot designed to bring conversations to life through automated emoji reactions with a focus on performance, flexibility, and ease of deployment.

โšก Fast โ€ข ๐ŸŽจ Flexible โ€ข ๐Ÿš€ Self-Hosted

Last Commit
GitHub Stars GitHub Forks
Repo Size

divider

๐Ÿ“‘ Table of Contents


๐ŸŒธ Overview

Auto Reaction Bot is a modern, open-source Telegram bot built to automatically react to messages across private chats, groups, and channels. Designed with flexibility, performance, and ease of use in mind, it provides a clean and developer-friendly solution for creating more engaging conversations through customizable emoji reactions.

๐Ÿ’ก Simple to deploy, easy to customize, and built for reliable long-term use.

๐Ÿค” Why Choose This Project?

  • โšก Boost Engagement โ€” Keep conversations active with automatic emoji reactions.
  • ๐ŸŽจ Highly Customizable โ€” Configure reaction emojis and behavior for every chat.
  • ๐Ÿš€ Deploy Anywhere โ€” Run seamlessly on Cloudflare, Vercel, Docker, Railway, Render, VPS, and more.
  • ๐Ÿ”ง Developer Friendly โ€” Clean, well-structured codebase that's easy to customize and extend.

๐Ÿ”„ How It Works

  1. ๐Ÿ“ฉ Message Is Received โ€” The bot detects new messages from private chats, groups, or channels.
  2. โš™๏ธ Rules Are Evaluated โ€” It checks chat settings, reaction configuration, permissions, and randomization.
  3. ๐Ÿ˜Š Reaction Is Added โ€” A suitable emoji reaction is applied automatically based on your configuration.
  4. ๐Ÿš€ Conversations Stay Engaging โ€” Chats remain interactive and lively without manual effort.

โœจ Features

  • ๐Ÿค– Automatic Reactions โ€” React to messages across private chats, groups, and channels.
  • ๐ŸŽจ Fully Customizable โ€” Configure emojis, random levels, and chat-specific reaction settings.
  • ๐Ÿ‘ฅ Multi-Bot Support โ€” Run multiple bots from a single deployment with independent configurations.
  • ๐Ÿ”’ Community Management โ€” Force Subscribe, Welcome/Goodbye messages, and chat controls.
  • ๐Ÿ“Š Monitoring & Analytics โ€” Live statistics, reaction logs, and chat activity insights.
  • ๐Ÿ“ข Broadcast & Administration โ€” Broadcast messages and manage chats with powerful owner controls.
  • ๐Ÿ›ก๏ธ Secure by Design โ€” Webhook validation, rate limiting, and permission-based access.
  • ๐Ÿ“ธ Rich User Experience โ€” Interactive menus, photo messages, and inline buttons.
  • โš™๏ธ Developer Friendly โ€” Clean, modular, and easy-to-customize source code.

๐ŸŽฅ Quick Start

New to this project?

Watch this short video to understand what the bot is, why it's useful, how it works, explore its key features, and learn the required configuration before deployment.

๐Ÿ“บ Watch on YouTube: Project Overview


๐Ÿ“ Configuration

Variable Description
BOT_TOKEN Telegram Bot Token
BOT_USERNAME Telegram Bot Username
BOT_TOKENS Multi-Bot Configuration
EMOJI_LIST Default Reaction Emojis
RANDOM_LEVEL Default Reaction Randomness
OWNER_ID Telegram User ID
FORCE_SUBSCRIBE_CHANNELS Force Subscribe Channels
RESTRICTED_CHATS Restricted Chat IDs
BOT_PHOTO Bot Photo
WEBHOOK_SECRET Webhook Secret Token
UPSTASH_REDIS_REST_URL Upstash Redis URL (Optional)
UPSTASH_REDIS_REST_TOKEN Upstash Redis Token (Optional)
PORT Server Port

๐Ÿ“ Notes

๐Ÿค– Multi-Bot Support Use BOT_TOKEN + BOT_USERNAME for a single bot, or BOT_TOKENS for multiple bots.

Format:

BOT_TOKENS=token1:BotOne,token2:BotTwo

๐ŸŽฒ Random Level Accepts values from 0โ€“10.

  • 0 โ†’ Always react
  • 5 โ†’ Balanced (Recommended)
  • 10 โ†’ Very rare reactions

๐Ÿ”’ Force Subscribe Supports multiple channels. Use @username for public channels and the private channel ID for private channels.

Format:

FORCE_SUBSCRIBE_CHANNELS=@PublicChannel,-1001234567890

๐Ÿ’พ Persistent Storage Configure UPSTASH_REDIS_REST_URL and UPSTASH_REDIS_REST_TOKEN for persistent storage.

๐ŸŒ Create a free database: https://console.upstash.com

๐Ÿ›ก๏ธ Webhook Secret If WEBHOOK_SECRET is not set, a secure secret is generated automatically.

๐Ÿ“š Setup Guides


๐ŸŽฎ Commands

๐Ÿ‘ค User Commands
/start - Start the bot and view the main menu.
/help - Display all available commands.
/about - Learn more about the project.
/ping - Check the bot's response time.
/stats - View bot statistics.
/reactions - View configured reaction emojis.
/donate - Support the development of the project.
๐Ÿ‘ฅ Chat Admin Commands
/pause - Pause reactions in the current chat.
/resume - Resume reactions in the current chat.
/welcome - Configure welcome messages.
/goodbye - Configure goodbye messages.
/setreactions - Configure reaction emojis.
/randomlevel - Set the reaction frequency.
๐Ÿ”’ Owner Commands
/log - View recent logs.
/chats - View connected chats.
/leave - Remove the bot from a chat.
/restrict - Restrict a chat.
/unrestrict - Remove chat restrictions.
/broadcast - Broadcast messages.
/setwebhook - Configure the webhook.

divider

๐Ÿš€ Deployment

Deploy Auto Reaction Bot on Cloudflare Workers or Vercel using the official one-click deployment buttons below.

Vercel
Deploy to Cloudflare Workers

Tip

Ensure your deployment is live before configuring the webhook.

๐Ÿ“ก Webhook Setup

๐Ÿค– Single Bot

Open the URL below after replacing the placeholders with your own values.

https://api.telegram.org/bot<BOT_TOKEN>/setWebhook?url=<DEPLOYMENT_URL>&secret_token=<WEBHOOK_SECRET>

Example

https://api.telegram.org/bot1234567890:ABCDEF/setWebhook?url=https://mybot.workers.dev&secret_token=123

๐Ÿค–๐Ÿค– Multi Bot

If you're using BOT_TOKENS, open the endpoint below after deployment.

https://your-domain.com/set-webhooks

Example

https://mybot.workers.dev/set-webhooks

Each bot automatically receives its own webhook endpoint.

https://mybot.workers.dev/bot/AutoReactionBot
https://mybot.workers.dev/bot/MySecondBot

๐Ÿค Contributing

Contributions are always appreciated! โค๏ธ

๐Ÿž Report Bugs ๐Ÿ’ก Suggest Features ๐Ÿš€ Submit PRs
Found an issue? Have an idea? Ready to contribute?
Open Issue Open Discussion Fork & Submit

Important

Before opening an issue, please ensure you're using the latest version and have followed the deployment guide.


๐Ÿ“„ License

License

Warning

This project is intended strictly for educational purposes only. The author is not responsible for any misuse or abuse. Please comply with all applicable laws and the terms of any third-party services. If you modify or redistribute this project, please provide proper credit to the original repository.

See the LICENSE file for complete details.


๐Ÿซ‚ Updates & Support

Channel

Group


๐Ÿ™Œ Credits

This repository is based on the original work of the following developers:

Note

This repository is maintained by TechifyBots, with improvements to the project presentation and user experience.

divider

๐Ÿ‘ค Connect With Me

Rahul Dhankhar
Open Source Maintainer โ€ข TechifyBots


About

A Telegram Bot that automatically reacts to posts in Telegram Channels, groups, and private messages.

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages