Skip to content

Vroumbot is a half-useful half-shitpost bot for managing groupchats on Telegram.

License

Notifications You must be signed in to change notification settings

Amustache/vroumbot

Repository files navigation

vroumbot

vroum vroum vroum vroum vroum vroum vroum

Vroumbot is a bot for managing groupchats on Telegram. Basically a famous shitpost, it continues to be an even more famous shitpost, but with some useful management tools sometimes (for example, a karma or reminder system).

A public Trello for feedbacks is available!

🏎️ How to use 🏎️

👉 Available directly

You can use @Vroumbot to test the bot and use it directly.

Note: You can test the bot directly, with direct messages! No need to spam a group (:.

All the commands should be listed in List of commands.

👉 Self hosting

  1. Need Python 3.7+, python3-venv, python3-tk, and Pip 21+.
  2. Clone the repo, cd into it.
  3. python -m venv ./env; source ./env/bin/activate
  4. pip install -Ur requirements.txt
  5. pre-commit install
  6. cp secret.dist.py secret.py and
    • TOKEN: Your @BotFather token.
    • ADMIN_ID: Your admin user ID. Can be the group ID.
    • TRELLO_API_KEY, TRELLO_API_SECRET, TRELLO_FEEDBACK_BOARD, TRELLO_FEEDBACK_LIST: If you want to use Trello.
    • TRELLO_LINK: link to the Trello.
  7. ./main.py or python ./main.py

Note: If you already have a database, and get a peewee.OperationalError: no such column, that means your database tables are not up-to-date. You may want to run one or multiple migration, depending on when you last updated.

🚗 Contribute 🚗

👉 You know how to code

Please refer to our CONTRIBUTING file!

  • To add a new functionality, please use the corresponding module (e.g., modules.spam.text for silly jokes).
  • To add a new module, please use the base.py file (i.e., add a new <file>.py in the modules folder, and create a class which inherits from Base).
  • Either case, don't forget to register your commands in commandhandlers!

Important: when adding a new command:

  • Check that the command name is not already registered.
  • Add it in the correct module.
  • Add a corresponding CommandHandler in commandhandlers of the module __init__.
  • Add a corresponding self.logger.info.
  • Test it locally.
  • Add a description of it in the wiki entry.

👉 You don't know how to code

You can either:

  • Open an issue.
  • Use /feedback directly in the bot.

About

Vroumbot is a half-useful half-shitpost bot for managing groupchats on Telegram.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

Languages