Не работает функция запроса номера телефона aiogram, когда пользователь использует телефон, на пк работает

Рейтинг: 0Ответов: 1Опубликовано: 12.06.2023

keyboard.py

    def contact_keyboard(self):
        markup = ReplyKeyboardMarkup(resize_keyboard=True)
        first_button = KeyboardButton(text=("📱 Отправить"), request_contact=True)
        markup.add(first_button)
        return markup

handler.py


@dp.message_handler(Command('start'))
async def on_start_test(message: types.Message):
    await message.answer('Привет, ' + str(message.from_user.full_name) + '\nНужно подтвердить номер', reply_markup= markup)
    await CallbackOnStart.Q1.set()


@dp.message_handler(content_types=types.ContentType.CONTACT, state = CallbackOnStart.Q1)
async def tower(message: types.Message, state: FSMContext):
    contact = message.contact
    

Ответы

▲ 1Принят

Попробуйте следующий код:

keyboard.py

def contact_keyboard():
    markup = ReplyKeyboardMarkup(resize_keyboard=True)
    first_button = KeyboardButton(text=("📱 Отправить"), request_contact=True)
    markup.add(first_button)
    return markup

handler.py

@dp.message_handler(Command('start'))
async def on_start_test(message: types.Message):
    markup = contact_keyboard()
    await message.answer('Привет, ' + str(message.from_user.full_name) + '\nНужно подтвердить номер', reply_markup=markup)
    await CallbackOnStart.Q1.set()


@dp.message_handler(content_types=types.ContentType.CONTACT, state=CallbackOnStart.Q1)
async def tower(message: types.Message, state: FSMContext):
    try:
        contact = message.contact.phone_number
        await message.answer(f"Спасибо за отправку номера телефона: {contact}")
    except Exception as e:
        await message.answer(f"Произошла ошибка: {e}")