Telegram feedback bot that routes user messages to administrators.
Project description
tg-feedback-bot-ru
Телеграм‑бот для обработки пользовательских обращений: принимает сообщения из личных чатов, пересылает их администраторам и позволяет отвечать пользователям из приватных и групповых чатов. Хранение состояния всегда выполняется в PostgreSQL (SQLAlchemy + aiotgbot storage).
Требования
- Python 3.14+
- PostgreSQL для хранения состояния
Переменные окружения
Приложение полностью конфигурируется через env vars (см. src/tg_feedback_bot_ru/settings.py). Подготовьте файл .env или используйте пример bot_env.example.
| Переменная | Назначение |
|---|---|
TZ |
Часовой пояс процесса (Europe/Moscow, UTC и т.д.). |
TG_TOKEN |
Bot API token. Можно передать напрямую или через Docker secret. |
ADMIN_USERNAME |
Telegram username администратора без @. |
CHAT_LIST_SIZE |
Размер списка последних чатов для быстрых ответов (1–20). |
POSTGRES_DSN |
DSN PostgreSQL в формате SQLAlchemy async (postgresql+asyncpg://…). |
Все переменные обязательны (для CHAT_LIST_SIZE и POSTGRES_DSN есть значения по умолчанию, но в проде лучше задавать их явно).
Локальная разработка
uv sync --group dev
uv run python -m tg_feedback_bot_ru
Полезные команды:
uv run ruff format --check src/tg_feedback_bot_ruuv run ruff check src/tg_feedback_bot_ruuv run mypy src/tg_feedback_bot_ruuv run basedpyright
Docker
Официальный образ собирается GitHub Actions из опубликованной версии PyPI. Локально можно:
docker build --build-arg BOT_VERSION=0.3.0 -t tg-feedback-bot-ru:0.3.0 .
docker run --env-file bot_env.example tg-feedback-bot-ru:0.3.0
В проде используйте образ ghcr.io/gleb-chipiga/tg-feedback-bot-ru:<tag> (теги совпадают с v* релизами). Он ожидает переменные окружения из таблицы выше и запускает консольный скрипт tg-feedback-bot-ru.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tg_feedback_bot_ru-0.4.4.tar.gz.
File metadata
- Download URL: tg_feedback_bot_ru-0.4.4.tar.gz
- Upload date:
- Size: 12.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.11 {"installer":{"name":"uv","version":"0.9.11"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4b2d44697838cfbff6bbd224a002a7fb99be995c94967a1cbfd801fbd0f0aae5
|
|
| MD5 |
e339e498616fa2710100c5157b311fe2
|
|
| BLAKE2b-256 |
73d5df18753e7ce39421611f7c7ab5221b793cc6448397789897b24d9fb5bad0
|
File details
Details for the file tg_feedback_bot_ru-0.4.4-py3-none-any.whl.
File metadata
- Download URL: tg_feedback_bot_ru-0.4.4-py3-none-any.whl
- Upload date:
- Size: 16.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.11 {"installer":{"name":"uv","version":"0.9.11"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9cd1c75c34fb02e3faf6a059c57b824407a21a74d8d7beb65638efc027a3ddf9
|
|
| MD5 |
4404824689ae097efd7cf87cb1399bad
|
|
| BLAKE2b-256 |
6e65a8339d3fa6e33b3f490c23b361a3e41a2cd9e9e3acdc2e74e83b357d6bc4
|