Skip to main content

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_ru
  • uv run ruff check src/tg_feedback_bot_ru
  • uv run mypy src/tg_feedback_bot_ru
  • uv 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tg_feedback_bot_ru-0.4.4.tar.gz (12.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tg_feedback_bot_ru-0.4.4-py3-none-any.whl (16.2 kB view details)

Uploaded Python 3

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

Hashes for tg_feedback_bot_ru-0.4.4.tar.gz
Algorithm Hash digest
SHA256 4b2d44697838cfbff6bbd224a002a7fb99be995c94967a1cbfd801fbd0f0aae5
MD5 e339e498616fa2710100c5157b311fe2
BLAKE2b-256 73d5df18753e7ce39421611f7c7ab5221b793cc6448397789897b24d9fb5bad0

See more details on using hashes here.

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

Hashes for tg_feedback_bot_ru-0.4.4-py3-none-any.whl
Algorithm Hash digest
SHA256 9cd1c75c34fb02e3faf6a059c57b824407a21a74d8d7beb65638efc027a3ddf9
MD5 4404824689ae097efd7cf87cb1399bad
BLAKE2b-256 6e65a8339d3fa6e33b3f490c23b361a3e41a2cd9e9e3acdc2e74e83b357d6bc4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page