сделал бота, который будет авто принимать в канал и писать пользователям, но inline кнопки не могу подключить, выдаёт ошибку
ile "pydantic\main.py", line 341, in pydantic.main.BaseModel.__init__
pydantic.error_wrappers.ValidationError: 1 validation error for InlineKeyboardMarkup
inline_keyboard
field required (type=value_error.missing)
Помогите решить, за ранее спасибо
Код снизу
Main:
from aiogram import Bot, Dispatcher, F, types
from aiogram.types import ChatJoinRequest
import logging
import contextlib
import asyncio
import time
from markups import *
CHANNEL_ID = -**********
ADMIN_ID = *********
async def approve_request(chat_join: ChatJoinRequest, bot: Bot):
msg = 'Здравствуй, чтобы получить файл пройдите тест'
await bot.send_message(chat_id=chat_join.from_user.id, text=msg)
time.sleep(1)
await bot.send_message(chat_id=chat_join.from_user.id, text='Какова ваша профессия?', reply_markup=professii)
await chat_join.approve()
async def start():
logging.basicConfig(level=logging.DEBUG,
format='%(asctime)s - [%(levelname)s] - %(name)s - (%(filename)s).%(funcName)s(%(lineno)d) - %(message)s')
bot = Bot('**********')
dp = Dispatcher()
dp.chat_join_request.register(approve_request, F.chat.id ==CHANNEL_ID)
try:
await dp.start_polling(bot, allowed_updates=dp.resolve_used_update_types())
except Exception as ex:
logging.error(f'[Exception] - {ex}', exc_info=True)
finally:
await Bot.session.close()
if __name__ == '__main__':
with contextlib.suppress(KeyboardInterrupt, SystemExit):
asyncio.run(start())
кнопки:
from aiogram.types import InlineKeyboardButton, InlineKeyboardMarkup
first = InlineKeyboardButton(text='Дизайнер', callback_data='1')
second = InlineKeyboardButton(text='Строитель', callback_data='2')
third = InlineKeyboardButton(text='Прораб/Компания', callback_data='3')
fourth = InlineKeyboardButton(text='Частное лицо', callback_data='4')
professii = InlineKeyboardMarkup(row_width=2).add(first, second, third, fourth)