fitness-bot: ExecStartPost runs set-bot-presence.py

Re-publishes the bot's menu button + description on every restart
so @BBBot's chat experience stays in sync with $WEBAPP_URL. Errors
are non-fatal.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Danny 2026-05-23 12:01:56 +02:00
parent cda9c4cf0f
commit 1204584ae4

View file

@ -162,6 +162,9 @@
# #
# The slash-command bot (bot.py) was removed in May 2026 — the Mini App # The slash-command bot (bot.py) was removed in May 2026 — the Mini App
# is now the only interface. No python-telegram-bot dependency required. # is now the only interface. No python-telegram-bot dependency required.
# ExecStartPost re-publishes the bot's chat-side presence (menu button,
# description, cleared command list) every time the service starts.
# Idempotent against the Telegram API. Errors are non-fatal (`-` prefix).
systemd.services.fitness-bot = let systemd.services.fitness-bot = let
pythonEnv = pkgs.python3.withPackages (ps: with ps; [ pythonEnv = pkgs.python3.withPackages (ps: with ps; [
python-dotenv python-dotenv
@ -179,6 +182,7 @@
serviceConfig = { serviceConfig = {
WorkingDirectory = "/home/danny/tg_fitness_bot"; WorkingDirectory = "/home/danny/tg_fitness_bot";
ExecStart = "${pythonEnv}/bin/python start.py"; ExecStart = "${pythonEnv}/bin/python start.py";
ExecStartPost = "-${pythonEnv}/bin/python scripts/set-bot-presence.py";
Restart = "on-failure"; Restart = "on-failure";
RestartSec = 10; RestartSec = 10;
User = "danny"; User = "danny";