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

Проблема с Телеграм ботом

123 NuggetGold Ученик (144), на голосовании 9 месяцев назад
Есть команда /mine, она позволяет фармить валюту каждый час, после 4-5 нажатий по кнопке, не важно от кого то бот просто зависает и вовще не реагирует, ошибок в консоли нет.
 Код 
 Код /mine
@bot.message_handler(commands=['mine', 'майнинг', 'mining', 'работать', 'negr_raboi', 'послать_негров_работать', 'отправить_негров_работать', 'негры'])
def korova(message):
uid = message.from_user.id
cursor = connection.cursor()
b = cursor.execute(f"SELECT vip FROM users WHERE id = {uid}").fetchone()
ba = str(b[0])
if (ba == "VIP"):
uid = message.from_user.id
cursor = connection.cursor()
query = "SELECT * FROM mine WHERE id = ?"
cursor.execute(query, (uid,))
result = cursor.fetchone()


if result:
markup = types.InlineKeyboardMarkup(row_width=2)
btn1 = types.InlineKeyboardButton(text="❇️ Прокачка ", callback_data=f'test:{uid}:2')
btn2 = types.InlineKeyboardButton(text="⛏ Включить майнинг", callback_data=f'start_mining')
btn3 = types.InlineKeyboardButton(text="⛏ Выключить майнинг", callback_data=f'stop_mining')
btn4 = types.InlineKeyboardButton(text="? Перезагрузить майнер", callback_data=f'restart_mining')
btn5 = types.InlineKeyboardButton(text="? Продать руду", callback_data=f'sell_ore')
markup.add(btn1, btn2, btn3, btn4, btn5)
cursor = connection.cursor()
cursor.execute("SELECT * FROM mine WHERE id = ?", (uid,))
row = cursor.fetchone()
bot.reply_to(message, f"⚒ Буровая установка \n\n\n? Уровень установки: *{(row[1])}*\n? Информация о буре: \n\n?Температура *{(row[2])}°C*\n? Приносит за раз *{(row[3])} железной руды*\n? Приносит каждые *{(row[4])} минут*\n\n? Руды добыто : *{(row[5])}* \n ? Примерное количество за продажу ~(*{row[5]*120}*) *монет*", parse_mode= 'Markdown', reply_markup=markup)


else:
bot.reply_to(message, f"Пожалуйста введите команду ещё раз, мы были вне базы данных, сейчас всё окей!")
cursor = connection.cursor()
cursor.execute("INSERT INTO mine (id) VALUES (?)", (uid,))
connection.commit()

else:
bot.reply_to(message, f'❗️ У вас нет "ВИП СТАТУСА" его можно приобрести за 220р в профиле /profile')


Code
Голосование за лучший ответ
Владимир Глина Мыслитель (5604) 10 месяцев назад
Сложно... Нужно через дискриминант
123 NuggetGoldУченик (144) 10 месяцев назад
ладно
Похожие вопросы