Хочу чтобы бот ответил на сообщение

Рейтинг: 0Ответов: 1Опубликовано: 01.07.2023

я только учусь и я думаю что вопрос максимально простой,но я залез на кучу сайтов и если просто говоря не могу найти решение

использую telebot

кароч команда /truefalse

далее бот реагирует на команду,отправляет сообщение "введите вопрос"

тут я хочу чтобы пользователь мог вписать что угодно(мне не обязателен определенный вопрос)

после бот отправляет из списка рандомный ответ

@bot.message_handler(commands=['truefalse'])
def truefalse(message):
    bot.send_message(message.chat.id,'Ваш вопрос?')
# вот тут как я понимаю бот должен принимать сообщение
    bot.send_message(message.chat.id, random.choice(bingo))

bingo = ['Правда','ПиздGGGж','Отвечаю','Владосу осталось три дня']

не знаю как я искал но у меня либо бот ломался либо сразу отправлял и "введите вопрос" и ответ рандом

Ответы

▲ 0Принят

используйте:

import random
bingo = ['Правда','ПиздGGGж','Отвечаю','Владосу осталось три дня']

@bot.message_handler(commands=['truefalse'])
def truefalse(message):
    msg = bot.send_message(message.chat.id,'Введите свой вопрос')
    bot.register_next_step_handler(msg,test)


def test(message):
    bot.send_message(message.chat.id,f'{random.choice(bingo)}')

bot.register_next_step_handler() для ожидания ответа от пользователя и перехода к хенделеру test после ответ Библиотека random для случайного выбора из списка методом choice()