bal = InlineKeyboardButton(text='Баланс(0 руб)',callback_data='Bal')
bots = InlineKeyboardButton(text='Мои боты',callback_data='Bots')
ref = InlineKeyboardButton(text='Реферальная программа',callback_data='Ref')
last = InlineKeyboardButton(text='Последний заказ',callback_data='Last')
tor = InlineKeyboardButton(text='Tor', url='')
menu.add(bal).add(bots).add(ref).add(last).add(tor)
class MyStates(StatesGroup):
balance = State()
@dp.callback_query_handler(lambda c: c.data == 'Bal')
async def process_balance(callback_query: types.CallbackQuery):
await bot.answer_callback_query(callback_query.id)
await bot.send_message(callback_query.from_user.id, "Введите сумму, которую вы хотите пополнить (не менее 500 рублей):")
await MyStates.balance.set()
@dp.message_handler(state=MyStates.balance)
async def process_balance_amount(message: types.Message, state: FSMContext):
async with state.proxy() as data:
if not message.text.isdigit():
await message.reply("Пожалуйста, введите число. Текстовые сообщения не подходят.")
return
amount = int(message.text)
if amount < 500:
await message.reply("Минимальное пополнение должно быть не менее 500 рублей.")
else:
await message.reply(f"Отлично! Сумма к оплате вместе с комиссией: {amount+40} рублей.")
# Здесь вы можете добавить код для предоставления пользователю способов оплаты
class MyStates(StatesGroup):
balance = State()
@dp.callback_query_handler(lambda c: c.data == 'Bal')
async def process_balance(callback_query: types.CallbackQuery):
await bot.answer_callback_query(callback_query.id)
await bot.send_message(callback_query.from_user.id, "Введите сумму, которую вы хотите пополнить (не менее 500 рублей):")
await MyStates.balance.set()
@dp.message_handler(state=MyStates.balance)
async def process_balance_amount(message: types.Message, state: FSMContext):
async with state.proxy() as data:
if not message.text.isdigit():
await message.reply("Пожалуйста, введите число. Текстовые сообщения не подходят.")
return
amount = int(message.text)
if amount < 500:
await message.reply("Минимальное пополнение должно быть не менее 500 рублей.")
else:
await message.reply(f"Отлично! Сумма к оплате вместе с комиссией: {amount+40} рублей.")
# Здесь вы можете добавить код для предоставления пользователю способов оплаты
Goroda = types.InlineKeyboardMarkup(row_width=2)
Don = types.InlineKeyboardButton('Донецк', callback_data='Don')
Mak = types.InlineKeyboardButton('Макеевка', callback_data='Mak')
Shah = types.InlineKeyboardButton('Шахтерск', callback_data="Shah")
Hars = types.InlineKeyboardButton('Харцызск', callback_data='Hars')
Marik = types.InlineKeyboardButton('Мариуполь', callback_data='Marik')
Enak = types.InlineKeyboardButton('Енакиево', callback_data='Enak')
Torez = types.InlineKeyboardButton('Торез', callback_data='Torez')
Gorl = types.InlineKeyboardButton('Горловка[NEW]', callback_data='Gorl')
Balans = types.InlineKeyboardButton('Баланс (0 руб)', callback_data='Balans')
MyBots = types.InlineKeyboardButton('Мои боты', callback_data='MyBots')
Ref_Prog = types.InlineKeyboardButton('Реферальная программа', callback_data='Ref_Prog')
Last = types.InlineKeyboardButton('Последний заказ', callback_data='Last')
Goroda.add(Don, Mak, Shah, Hars, Marik, Enak, Torez, Gorl, row_width=2)
Goroda.add(Balans, MyBots, Ref_Prog, Last, row_width=1)
#Донецк
Donee = types.InlineKeyboardMarkup(row_width=1)
Tovar1 = types.InlineKeyboardButton('товар1')
Tovar2 = types.InlineKeyboardButton('товар2.')
Tovar3 = types.InlineKeyboardButton('товар3.)')
Donee.add(Tovar1, Tovar2, Tovar3)
2023-09-11 21:10:43,504 (__init__.py:1083 MainThread) ERROR - TeleBot: "Threaded polling exception: A request to the Telegram API was unsuccessful. Error code: 400. Description: Bad Request: can't parse inline keyboard button: Text buttons are unallowed in the inline keyboard"
2023-09-11 21:10:43,504 (__init__.py:1085 MainThread) ERROR - TeleBot: "Exception traceback:
Traceback (most recent call last):
File "D:\PyCharm\Proekts\venv\Lib\site-packages\telebot\__init__.py", line 1074, in __threaded_polling
self.worker_pool.raise_exceptions()
File "D:\PyCharm\Proekts\venv\Lib\site-packages\telebot\util.py", line 147, in raise_exceptions
raise self.exception_info
File "D:\PyCharm\Proekts\venv\Lib\site-packages\telebot\util.py", line 90, in run
task(*args, **kwargs)
File "D:\PyCharm\Proekts\venv\Lib\site-packages\telebot\__init__.py", line 6788, in _run_middlewares_and_handler
result = handler['function'](message)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\PyCharm\Proekts\main.py", line 48, in don
bot.send_message(call.message.chat.id, 'выбеберите продукт', reply_markup=Donee)
File "D:\PyCharm\Proekts\venv\Lib\site-packages\telebot\__init__.py", line 1549, in send_message
apihelper.send_message(
File "D:\PyCharm\Proekts\venv\Lib\site-packages\telebot\apihelper.py", line 264, in send_message
return _make_request(token, method_url, params=payload, method='post')
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\PyCharm\Proekts\venv\Lib\site-packages\telebot\apihelper.py", line 162, in _make_request
json_result = _check_result(method_name, result)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "D:\PyCharm\Proekts\venv\Lib\site-packages\telebot\apihelper.py", line 189, in _check_result
raise ApiTelegramException(method_name, result, result_json)
telebot.apihelper.ApiTelegramException: A request to the Telegram API was unsuccessful. Error code: 400. Description: Bad Request: can't parse inline keyboard button: Text buttons are unallowed in the inline keyboard
"