Обработчик PyEasyQiwi, проблема с обработкой массовых платежей
Уже не знаю, куда податься. У меня есть бот телеграм на telebot, Я использую библиотеку PyEasyQiwi
Проблема в том, что если предположим, второй юзер бота создаст счёт на оплату, когда первый его уже создал, то весь бот перестаёт отвечать на любые запросы. Я использую функцию, в которой уже указан conn
, а проверка платежа реализуется с помощью циклы while.
def oplata_1(message):
api_key = "="
conn = QiwiConnection(api_key)
value = 100
currency = "RUB"
delay = 30
description = "test_user_ID"
theme_code = "temacode"
comment = "ID: " + str(message.chat.id) + " - " + "(SHOP: D_01)"
qiwi_pay = True
card_pay = True
pay_url, bill_id, response = conn.create_bill(value, currency, delay, description, theme_code, comment, qiwi_pay, card_pay)
markup = types.InlineKeyboardMarkup()
button1 = types.InlineKeyboardButton("Оплатить через QIWI / Банковскую карту", url=(pay_url))
button2 = types.InlineKeyboardButton("Отмена", callback_data="otmena")
markup.add(button1)
markup.add(button2)
bot.send_message(message.chat.id, "Выполните платёж", reply_markup=markup)
status, response = conn.check_bill(bill_id)
while status == "WAITING":
time.sleep(5)
status, response = conn.check_bill(bill_id)
while status == "PAID":
bot.send_message(chat_id=message.chat.id, text="Оплата прошла успешно. Привилегия выдана")
conn.remove_bill(bill_id)
break
while status == "EXPIRED":
conn.remove_bill(bill_id)
break
while status == "REJECTED":
conn.remove_bill(bill_id)
break
Источник: Stack Overflow на русском