Как получить номер пользователя с помощью AIOgram, если он уже им поделился?

# keyboard
share_keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True, one_time_keyboard=True)
share_button = types.KeyboardButton(text="Share", request_contact=True)
share_keyboard.add(share_button)


@dp.message_handler(ChatTypeFilter(chat_type=types.ChatType.PRIVATE))
async def understand_message_handler(message: types.message):

if message.text == "Register" and not await check_user(message.from_user.id):
    await message.answer("Enter phone number:",
                         reply_markup=share_keyboard)
    await Registration.registration_number.set()

@dp.message_handler(state=Registration.registration_number)
async def input_number(message: types.Message, state: FSMContext):
await state.finish()
telephone = message.contact.phone_number
connection = await get_connection()
sql = f"INSERT INTO users(id, number) VALUES ({message.from_user.id}, {telephone})"
cursor = connection.cursor()
cursor.execute(sql)
connection.commit()


# ERROR
'NoneType' object has no attribute 'phone_number'

Использую AIOgram и этот код выдает ошибку. А сам message.contact = None, но когда я использовал telebot, такой вариант работал. Подскажите, пожалуйста, как получить номер, которым поделился пользователь, с помощью AIOgram


Ответы (2 шт):

Автор решения: frankdelan

Ответ: в стандартном message handler разрешены только текстовые сообщения - нужно это поменять добавив фильтр content_types=types.ContentType.CONTACT

→ Ссылка
Автор решения: Miekrif

Из-за обновления политик безопасности, теперь нельзя взять так номер телефона У меня это реализиованно так

else:
    button_phone = types.KeyboardButton(text="Делись!", request_contact=True)
    keyboard = types.ReplyKeyboardMarkup(row_width=1, resize_keyboard=True)
    keyboard.add(button_phone)
    await message.answer(text="Для того, чтобы понять кто прислал чек, мне нужен твой номер", reply_markup=keyboard)

А потом я записываю данные в словарь (который становится json) в значении user_id : phone

→ Ссылка