import config
from subprocess import check_output
import telebot
from telebot import types
import time
counter = 0
bot = telebot.TeleBot(1474977596:AAE7QdB8CqqFP_dQ5zwtVC6Ymu1DT1gHv5g)#Токен ботаf
user_id = config.admin #id вашего аккаунта
@bot.message_handler(func=lambda message: True, content_types=['text'])
def send_text(message):
global counter
if user_id == message.chat.id:
if message.text == 'Openwrt on':
counter = 1
bot.send_message(message.chat.id, 'Консоль для Openwrt включена')
elif message.text == 'Openwrt off':
counter = 0
bot.send_message(message.chat.id, 'Консоль для Openwrt выключена')
elif (counter == 1):
comand = message.text #текст сообщения
try: #если команда невыполняемая - check_output выдаст exception
bot.send_message(message.chat.id, check_output(comand, shell = True))
except:
bot.send_message(message.chat.id, "Invalid input") #если команда некорректна
Простой из примера
https://habr.com/ru/post/443846/
if __name__ == '__main__':
while True:
try:#добавляем try для бесперебойной работы
bot.polling(none_stop=True)#запуск бота
except:
time.sleep(10)#в случае падения