Skip to content

bralbral/telegram-feedback-bot

Repository files navigation

telegram-feedback-bot

Simple telegram-feedback bot based on aiogram and sulguk.

Use this bot for communicate with users in case you do not want to provide your personal contacts.

For example: you are administrator of telegram group or technical support provider.

Available commands

Command Description
/help Show help message

Usage

Messages with an available content type (TEXT, ANIMATION, AUDIO, DOCUMENT, PHOTO, VIDEO, VOICE) will be transferred to admin group or admin chat.

(See variable chat_id from config.yaml)

If the transfer is successful, the requesting party will be notified.

Admin can answer to message by reply. The answer will be sent to the person who asked.

The user will receive the reply as a reply to the original message. If the message does not exist, the user will receive a response with a separate message.

If the transfer is successful, the administrator will be notified.

You can customize the bot's responses, or use default values.

Deploy

Install from source

Tested on Ubuntu 22.04, python 3.11

Just copy source code:

git clone https://github.com/bralbral/telegram-feedback-bot.git

Install requirements:

pip install -r requirements.txt

Fill config.yml and place it to root dir. (In parent dir to src)

Run:

python3 -m src

Install with Docker

Stable release with main tag on dockerhub

Just copy docker-compose.yml and fill in config.yaml.

Run containers:

docker-compose up -d or if you have new docker docker compose up -d

Of course, you can build image yourself:

Just copy source code:

git clone https://github.com/bralbral/telegram-feedback-bot.git

and build docker image:

docker build -t <your_image_name>:<your_tag_name>

And use this image with docker-compose.yml from deploy dir.

Hosting

You can rent a server from various hosters, for example from Aeza.

By registering via the link you will support the project and receive a 15% bonus on your balance, which will be valid for 24 hours.

The bot will require the simplest VDS, in rubles this is approximately 100-200 for promotional offers, or about 500 rubles per month.

Develop and Contribute

Feel free to create issue or pull request.

For development, you should install the requirements from requirements_dev.txt

pip install -r requirements_dev.txt

Use pre-commit.sh before commit.