Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Разрабатываю тг бота на питоне используя библиотеку телебот, проблема, помогите

Хакер Маил Ученик (96), открыт 1 неделю назад
Данный код должен принимать колл после нажатия на кнопку. И отправлять пользователю либо орел либо решка рандомным образом, но при нажатии на кнопку ничего не происходит. Ранее в коде ошибок нет, и с предыдущей функцией все в порядке
3 ответа
Крутой Чел Ученик (104) 1 неделю назад
Попытался исправить твой код, вроде работает:
@bot.callback_query_handler(func=lambda call: True)
def resultatikson(call):
signal = random.randint(1, 2)
if call.data == 'signal' and signal == 1:
bot.send_message(call.message.chat.id, 'Выпадет орел')
elif call.data == 'signal' and signal == 2:
bot.send_message(call.message.chat.id, 'Выпадет решка')
else:
bot.send_message(call.message.chat.id, 'Не пришёл вызов')

bot.polling()
Хакер МаилУченик (96) 1 неделю назад
все равно не работает
Сергей Диордий Знаток (292) 1 неделю назад
Проверь, чтобы в call.data действительно был "signal"
Chudo_Chudnoe Мастер (1939) 1 неделю назад
Привет)

Попробуй так:

 @bot.callback_query_handler(func=lambda call: True) 
def resultatkison(call):
print("Callback received")
signal = randint(1, 2)
print(f"Рандомный сигнал: {signal}")

if call.data == 'signal':
print("Корректный сигнал")
if signal == 1:
bot.send_message(call.message.chat.id, 'Выпадет орел ')
elif signal == 2:
bot.send_message(call.message.chat.id, 'Выпадет решка ')
else:
bot.send_message(call.message.chat.id, 'Не пришел call')
Похожие вопросы