Здравствуйте, помогите пожалуйста, как сделать отправку по три сообщения в одном InlineKeyboardButton.
Суть в чем, есть список содержащий названия и ссылки, нужно отправлять пользователю по 3 разных ссылки одном сообщением, но проблема в том, что если взять два телефона и нажать на одну и туже кнопку, то сообщения перепрыгивают на кол-во нажатий на другом телефоне. Помогите пожалуйста.
# -*- coding: utf-8 -*-
import telebot
from telebot import TeleBot
from telebot import types
from telebot.types import InlineKeyboardMarkup, InlineKeyboardButton
import re
import glob
import baza
starts = 0
end = 3
bot = TeleBot(baza.code)
@bot.message_handler(commands=['start'])
def start_message(message):
sstup = types.ReplyKeyboardMarkup(resize_keyboard=True)
item1 = types.KeyboardButton('')
item2 = types.KeyboardButton('')
sstup.add(item1, item2)
bot.send_message(message.chat.id, "Привет,{0.first_name}!".format(message.from_user), reply_markup=sstup)
@bot.message_handler(content_types=['text'])
#Инициализация действий
def bot_message(message):
if message.chat.type == 'private' and message.text =='':
marcup = types.ReplyKeyboardMarkup(resize_keyboard=True)
item1 = types.KeyboardButton('')
item2 = types.KeyboardButton('')
back = types.KeyboardButton('➢ Back ➣')
marcup.add(item1, item2, back)
bot.send_message(message.chat.id, '{0.first_name},'.format(message.from_user), reply_markup=marcup)
elif message.chat.type == 'private' and message.text == '':
marcup = types.ReplyKeyboardMarkup(resize_keyboard=True)
item1 = types.KeyboardButton('')
item2 = types.KeyboardButton('')
back = types.KeyboardButton('➢ Back ➣')
marcup.add(item1, item2, back)
bot.send_message(message.chat.id, '{0.first_name}, '.format(message.from_user), reply_markup=marcup)
elif message.chat.type == 'private' and message.text == '➢ Back ➣':
baza.files_java_curs = baza.files_java_curs
sstup = types.ReplyKeyboardMarkup(resize_keyboard=True)
item1 = types.KeyboardButton('')
item2 = types.KeyboardButton('')
sstup.add(item1, item2)
bot.send_message(message.chat.id, "{0.first_name}, давай попробуем ещё разочек!".format(message.from_user), reply_markup=sstup)
elif message.chat.type == 'private' and message.text == '':
sstup = types.ReplyKeyboardMarkup(resize_keyboard=True)
item1 = types.KeyboardButton('"')
item2 = types.KeyboardButton('➢ Back ➣')
sstup.add(item1, item2)
bot.send_message(message.chat.id, "Привет,{0.first_name},'".format(message.from_user), reply_markup=sstup)
elif message.chat.type == 'private' and message.text == ''or message.text == '' or message.text == '':
sstup = types.ReplyKeyboardMarkup(resize_keyboard=True)
item2 = types.KeyboardButton('➢ Back ➣')
sstup.add(item2)
bot.send_message(message.chat.id, "Привет,{0.first_name}, недоступен".format(message.from_user), reply_markup=sstup)
elif message.chat.type == 'private' and message.text == '"':
keyboard = InlineKeyboardMarkup()
keyboard.row_width = 4
for i in range(0, 3):
sm = baza.files_java_curs.pop(0)
keyboard.add(InlineKeyboardButton(sm, callback_data=f"files_java_curs{i}_"))
#baza.files_java_curs.pop(0)
item1 = InlineKeyboardButton('Дальше', callback_data='files_java_curs_finish_')
keyboard.add(item1)
bot.send_message(message.chat.id, '{0.first_name}, '.format(message.from_user), reply_markup = keyboard)
@bot.callback_query_handler(func=lambda callback:callback.data)
def check(callback):
req = callback.data.split('_')
print(req[0])
if req[0] == 'files' and callback.message.chat.type == 'private':
for i in range(len(baza.files_java_curs)):
if callback.data == f'files_java_curs{i}_':
video_make = (f'{baza.video_safe_telega[i]}')
bot.send_video(callback.message.chat.id, video_make)
bot.send_message(callback.message.chat.id, f'{baza.files_java_curs[i]}')
#bot.send_message(callback.message.chat.id, f'{baza.video_safe_telega[i]}')
if callback.data == 'files_java_curs_finish_' and callback.message.chat.type == 'private':
try:
ssm = baza.video_safe_telega.pop(0)
keyboard = InlineKeyboardMarkup()
keyboard.row_width = 4
for i in range(0, 3):
sm = baza.files_java_curs.pop(0)
keyboard.add(InlineKeyboardButton(sm, callback_data=f"files_java_curs{i}_"))
item1 = InlineKeyboardButton('Дальше', callback_data='files_java_curs_finish_')
keyboard.add(item1)
bot.send_message(callback.message.chat.id, ', reply_markup = keyboard)
except:
start += 1
end += 2
keyboard = InlineKeyboardMarkup()
keyboard.row_width = 4
for i in range(start, end):
keyboard.add(InlineKeyboardButton(baza.files_java_curs[i], callback_data=f"files_java_curs{i}_"))
item1 = InlineKeyboardButton('Дальше', callback_data='files_java_curs_finish_')
keyboard.add(item1)
bot.send_message(callback.message.chat.id, 'Молодца! Вот продолжение !', reply_markup = keyboard)
else:
start = 0
end = 3
bot.polling(none_stop=True)