Бот отправлял локацию текстом и записывал её в БД через ОРМ

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

Процесс работы бота следующий. При регистрации он запрашивает у пользователя геолокацию. Когда пользователь отправил геопозицию, бот получает широту и долготу и записывает их в переменные. Вопрос: как сделать так, чтобы бот расшифровывал их в текст (в город)? То есть на вход получает геопозицию пользователь, а при обработке получает город. Вот мой код:

@dp.message_handler(regexp='Зарегистрироваться')
    async def reg_func(message: types.Message):
    markup = types.reply_keyboard.ReplyKeyboardMarkup(resize_keyboard=True)
    btn1 = types.KeyboardButton('Отправить геолокацию', request_location=True)
    btn2 = types.KeyboardButton('Отменить регистрацию')
    markup.add(btn1, btn2)
    await message.answer('Твой город нужен для того, чтобы мы могли подобрать наиболее удобные для тебя предложения\n'
                     'В твоём текущем городе!', reply_markup=markup)

@dp.message_handler(content_types=['location'])
    async def send_geo(message: types.Message):
    lat = message.location.latitude
    lon = message.location.longitude
    markup = await main_menu()
    orm.add_user(message.from_user.id, message.from_user.first_name, message.from_user.username)
    orm.add_profile(message.from_user.id)
    await message.answer('Ты успешно зарегистрирован!', reply_markup=markup)

    Что должно быть тут? Как научить бота обрабатывать полученную геопозицию?

Ответы

Ответов пока нет.