@RuFuZZZ

Пишу телеграмм бота на python. Мне нужно, чтобы при нажатии кнопки(получения ботом определённого текста) бот останавливал свою работу?

Пишу телеграмм бота на python. Мне нужно, чтобы при нажатии кнопки(получения ботом определённого текста) бот останавливал свою работу. Какой командой это можно реализовать и можно ли вообще?
  • Вопрос задан
  • 86 просмотров
Пригласить эксперта
Ответы на вопрос 1
bravebug
@bravebug
У меня была подобная задача, нужно было перезапускать сервис по команде боту.
Используя python-telegram-bot никаким образом завершить скрипт из него самого не получалось, я перезапускал бота внешней командой в оболочку (terminal/shell/bash).
В моём случае бот запущен в Linux через systemd в качестве пользовательского сервиса.
Функция выглядит там:
def cmd_restart_service(update, context):
    if update.message.from_user.id == XXX:
        import subprocess

        update.message.reply_text("Будет исполнено...")
        subprocess.run("systemctl --user restart mybot.service".split())
    else:
        update.message.reply_text("Ай! Не делай так больше...")

Вместо "XXX" указан мой id telegram, чтобы никто не баловался.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы