mirror of
https://github.com/miloszowi/everyone-mention-telegram-bot.git
synced 2025-12-08 13:49:24 +00:00
cd0712a07b6491c1af9da8b7871c4b4eb7dfe119
Contents
Description
Everyone Mention Bot is simple, but useful telegram bot to gather group members attention.
You can create groups per chat to mention every user that joined the group by calling one command instead of mentioning them one by one.
Getting started
Requirements
docker-composein version1.25.0dockerin version20.10.7
Installation
- copy the repository
git clone https://github.com/miloszowi/everyone-mention-telegram-bot.git
- copy environment files and fulfill empty values
cp .env.local .env
cp docker/config/app.env.local docker/config/app.env
cp docker/config/database.env.local docker/config/app.env
- start the project (
-dflag will run containers in detached mode)
docker-compose up -d
Logs
docker/logs <container>
Env files
-
.envMONGODB_INTERNAL_PORT- Mongodb internal port (should be the same as declared inapp.env)APP_INTERNAL_PORT- App internal port (should be the same as declared inapp.env)APP_EXPOSED_PORT- App exposed port (if you are not using any reverse proxy it should be also the same as declared inapp.env)
-
app.envBOT_TOKEN- your telegram bot token from BotFatherWEBHOOK_URL- url for telegram webhooks (withour the bot token)PORT- port used for initializing webhook & appMONGODB_DATABASE- MongoDB database nameMONGODB_USERNAME- MongoDB usernameMONGODB_PASSWORD- MongoDB passwordMONGODB_HOSTNAME- MongoDB host (defaultdatabase- container name)MONGODB_PORT- MongoDB port (default27017- given in docker-compose configuration)BANNED_USERS- user ids separated by comma that are not allowed to use the bot
-
database.envMONGO_INITDB_ROOT_USERNAME- conf fromapp.envMONGO_INITDB_ROOT_PASSWORD- conf fromapp.envMONGO_INITDB_DATABASE- conf fromapp.envMONGODB_DATA_DIR- directory to store MongoDB documents (inside a container)MONDODB_LOG_DIR- path to logs storage
Commands
/join
/join <group_name>
Joins the group (and create if it did not exist before) given in message (default if not given)
/leave
/leave <group_name>
Leaves the group given in message (default if not given)
/everyone
/everyone <group_id>
Will mention every member of given group (default if not given).
If user does not have nickname, it will first try to assign his firstname, then random firstname from names python library
/groups
Will display available groups for this chat as well with members count.
/start
Start & Help message
Languages
Python
98.2%
Shell
1.4%
Dockerfile
0.4%





