N
N
Novichek20002020-03-17 16:32:09
Python
Novichek2000, 2020-03-17 16:32:09

Python Telegram Bot Inline Keyboard. How to make sure that the code of the first button does not go into the code of the second?

I WROTE THIS CODE, STEAM WITH SEARCH FOR ERRORS FOR 10 HOURS (IF NOT MORE), YESTERDAY FROM 19:00 Moscow time TO 3:00 Moscow time AND TODAY FROM 14:00 Moscow time TO 16:30 Moscow time. THE ERROR CANNOT BE FOUND AND I RESORTED TO SUCH MEASURES HOW TO ASK PEOPLE WHO ARE RUNNING, VERY HOPE FOR YOUR SUPPORT!

import telebot
import config
import random
from telebot import types

bot = telebot.TeleBot('1**1*37612:AAEZ7r2P2Vg2tvYNB64_np28**KLHQ8t_9Q');

kakDela = ["4", "Как дела?", "как дела?", "Как дела", "как дела", "Как твои дела?", "как твои дела?",
"Как твои дела", "как твои дела", "Как у тебя дела?", "как у тебя дела?", "Как у тебя дела", 
"как у тебя дела", "Дела как?", "дела как?", "Дела как", "дела как", "Как делишки?", 
"как делишки?", "Как делишки", "как делишки", "У тебя как дела?", "у тебя как дела?", 
"У тебя как дела", "у тебя как дела", "Дела как у тебя?", "дела как у тебя?", "Дела как у тебя", 
"дела как у тебя", "Как делищи?", "как делищи?", "Как делищи", "как делищи", "Дела-то как у тебя?", 
"дела-то как у тебя?", "Дела-то как у тебя", "дела-то как у тебя", "Дела то как у тебя?", 
"дела то как у тебя?", "Дела то как у тебя", "дела то как у тебя"]

loveYou = ["Я тебя люблю", "я тебя люблю", "Я люблю тебя", "я люблю тебя", "Люблю тебя", "люблю тебя", "Я хочу тебя", 
"я хочу тебя", "Я тебя хочу", "я тебя хочу", "Я тебя обожаю", "я тебя обожаю", "Я обожаю тебя", "я обожаю тебя", 
"Обожаю тебя", "обожаю тебя", "Хочу тебя", "хочу тебя", "Я хочу быть с тобой", "я хочу быть с тобой", "Хочу быть с тобой", 
"хочу быть с тобой"]

@bot.callback_query_handler(func=lambda call: True)
def callback_inline(call):
  try:
    if call.message:
      if call.data == 'good':
        bot.send_message(call.message.chat.id, 'Вот и отличненько ')
      if call.data == 'bad':
        bot.send_message(call.message.chat.id, 'Бывает ')
 
            # удаление встроенных кнопок
      bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text=" Как дела?",
      reply_markup=None)
 
            # показать оповещение
      bot.answer_callback_query(callback_query_id=call.id, show_alert=False,
        text="Преобразовано...")

  except Exception as e:
    print(repr(e))

def callback_inline(call):
  try:
    if call.message:
      if call.data == 'good1':
        bot.send_message(call.message.chat.id, 'Успокойся...')
      if call.data == 'bad1':
        bot.send_message(call.message.chat.id, 'Сорян, платки кончились...')
 
            # удаление встроенных кнопок
      bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text="Не пиши такое больше",
      reply_markup=None)
 
            # показать оповещение
      bot.answer_callback_query(callback_query_id=call.id, show_alert=False,
        text="Преобразовано...!")
 
  except Exception as e:
    print(repr(e))

@bot.message_handler(content_types=['text'])
def get_text_messages(message):

  if message.text in kakDela:

    markup3 = types.InlineKeyboardMarkup()
    item1 = types.InlineKeyboardButton("Хорошо", callback_data='good')
    item2 = types.InlineKeyboardButton("Не очень", callback_data='bad')
 
    markup3.add(item1, item2)
 
    bot.send_message(message.chat.id, text='Отлично, сам(-а) как?', reply_markup=markup3)		

  if message.text in loveYou:
 
    markup4 = types.InlineKeyboardMarkup()
    item1 = types.InlineKeyboardButton("Разозлиться", callback_data='good1')
    item2 = types.InlineKeyboardButton("Вытереть слезки", callback_data='bad1')
 
    markup4.add(item1, item2)
 
    bot.send_message(message.chat.id, text='Выбрать действие:', reply_markup=markup4)

bot.polling(none_stop=True, interval=0)

Answer the question

In order to leave comments, you need to log in

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question