MuckRuno
@MuckRuno
Молодой начинающий разработчик, активно развиваю б

Как сделать так что бы бот по команде перестал реагировать на команды?

Библиотека telebot
Вот код:
import telebot, bs4, requests
from telebot import types
import time
import random
from random import randint
from datetime import datetime, date
bot = telebot.TeleBot('тут мой токен')
t = time.strftime("%d.%m.%Y")
v = time.strftime("%H:%M:%S")
a = time.strftime("2022-06-01")
b = time.strftime("%Y-%m-%d")
x = 0
op = ["Да", "Нет", "Ахахаххаха"]
arel = ["Орёл", "Решка"]
@bot.message_handler(content_types=['text'])
def get_text_messages(message):
    if message.text == "Орёл или решка":
    	bot.send_message(message.chat.id,"*Бросаю монетку*")
    	bot.send_message(message.chat.id,  random.choice(arel))
  #  if message.text == "Жмал алё":
    #	bot.send_message(message.chat.id, "*звонок*")
    	#time.sleep(1)
    #	bot.send_message(message.chat.id, "*слаживаем газетку*")
    #	time.sleep(2)
    #	bot.send_message(message.chat.id, "Да?")
    #	while True:
    		
    	#	bot.send_message(message.chat.id,  random.choice(op))
    	#	time.sleep(2)
    if message.text == "Жмал связь":
    	bot.reply_to(message, "Связь с разрабом:\nТикток - @imnoim_\nTelegram-@imnoim\ndiscord-kvashonka#7777")
    if message.text == "Жмал дата":
    	bot.reply_to(message, message.from_user.first_name + " Сегодня " + t)
    if message.text == "Жмал время":
    	bot.reply_to(message, message.from_user.first_name + " Сейчас " + v)
    if message.text == "/help@Zhmalbot":
        bot.send_message(message.chat.id, "Из комманд /help, /start, /ant, /info, /newdate@zhmalbot Привет Жмал, Жмал, Жмал рандом, Жмал кость, Жмал страшилку, Жмал время, Жмал дата")
    if message.text == "/start@Zhmalbot":
        bot.send_message(message.chat.id,"Привет, что-бы узнать команды напиши /help!")
    if message.text == "Жмал":
        bot.send_message(message.chat.id, "чего тебе сударь")
    if message.text == "Жмал рандом":
    	bot.send_message(message.chat.id, random.randint(0, 100))
    if message.text == "Жмал кость":
    	bot.send_message(message.chat.id,random.randint(1, 6))
    if message.text == "/help":
        bot.send_message(message.chat.id, "чтобы узнать комманды надо написать /help@Zhmalabot")
    if message.text == "/start":
        bot.send_message(message.chat.id,"Привет, что-бы узнать команды напиши /help!")
    if message.text == "/info@Zhmalbot":
    	bot.send_message(message.chat.id,"Дата создания: 20.02.2022\nСоздатель: @imnoim\nИИ: отсутствует\n⚙️Версия: 1.0.7\nСтатус: неизвестно")
    if message.text == "Жмал отключись":
    	#тут надо что бы по команде бот перестал реагировать на команды кроме нижней
    if message.text == "Жмал включись":
    	#надо что бы после отключения реакции на команды эта команда могла работать


bot.remove_webhook()
if __name__ == '__main__':
    bot.polling(none_stop=True)

Смотреть на последние строчки(Если заметили где то глупые ошибки скажите)
  • Вопрос задан
  • 221 просмотр
Пригласить эксперта
Ответы на вопрос 1
MinTnt
@MinTnt
ignore = {}
@bot.message_handler(content_types=['text'])
def get_text_messages(message):
    if ignore.get(message.chat.id):
        if message.text == "Жмал включись":
            ignore.pop(message.chat.id)
    else:
        if message.text == "Жмал выключись":
            ignore[message.chat.id] = True

        elif ...:
            ...
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы