Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/ashokshau/force-sub-bot

A Telegram Bot to force users to join a specific channel before sending messages in a group.
https://github.com/ashokshau/force-sub-bot

fast force-sub-bot force-subscribe fsub go gobot gotgbot redis telegram telegram-bot vercel vercel-template

Last synced: 2 months ago
JSON representation

A Telegram Bot to force users to join a specific channel before sending messages in a group.

Awesome Lists containing this project

README

        

Force Sub Bot


build
Go Report Card
Go Version

This project includes a Telegram bot designed to enforce subscription to a specific channel before allowing users to interact in a group chat. It's built using Go and integrates with the Telegram Bot API using gotgbot.

Installation Instructions


Install Go


    ```shell
    git clone https://github.com/udhos/update-golang dlgo && cd dlgo && sudo ./update-golang.sh && source /etc/profile.d/golang_path.sh
    ```

  1. Exit and reopen your terminal, then verify the installation with go version.

Set Up the Project



  1. Clone the repository:
    git clone https://github.com/Abishnoi69/Force-Sub-Bot fSub && cd fSub


  2. Prepare the environment file:

    1. Copy the sample environment file: cp sample.env .env

    2. Open env: vi .env
    3. Edit the .env file with your preferred editor. Instructions for editing in vi:

      • Press ɪ to start editing.

      • Press Ctrl + C once editing is complete, then type :wq to save and exit, or :qa to exit without saving.





  3. Start a new tmux session: sudo apt install tmux && tmux

  4. Run the bot: go run .

Deploy to Vercel



  1. Fork this repository 🍴

  2. Login your Vercel account

  3. Go to your Add New Project

  4. Choose the repository you forked

  5. Configure the environment variables: DB_URI Redis

  6. Tap on Deploy

Usage


Once the bot is running, it will enforce subscription to a specific channel before allowing users to interact in the group chat. Users not subscribed to the channel will be prompted to do so.

Commands




  • /start - Start the bot.


  • /fsub - Set the channel for force subscription. Reply to a forwarded message from the channel you wish to set.


  • /fsub on - Enable force subscription mode.


  • /fsub off - Disable force subscription mode.


  • /fsub - Get the current force subscription status.
  • Owner Only Commands



  • /getChats - Get all chats.


  • /getUsers - Get all users who started in private.


  • /getAllBots - Get all bots running on webhook.

License


Feel free to visit LICENSE for more details.

Contributing Guidelines


Contributions are welcome! For bug reports, feature requests, or pull requests, please open an issue or submit your changes directly.

Support


For any questions or concerns, please contact me at Telegram.


FallenAssociation