Все понял, я забыл await
Что-то мне подсказывает, что у тебя в функции m должно быть обычным типом - сообщением Ты просто когда в хендлере отлавливаешь локацию, ты пишешь content_types=["location"] и потом чтобы работать с ней вызываешь m.location
Там же вроде точность бывает и не приходит вообще
1. Ради одной статичной кнопки не рационально использовать билдер, лучше передать кнопку в инициализатор: keyboard = types.ReplyKeyboardMarkup(keyboard=[[types.KeyboardButton(text=..., request_location=True)]], resize_keyboard=True) 2. await state.set_state(add_location_fsm.get_located)
1. почему?
если точность не указана клиентом, то ее и нет
Как и логики по всей видимости 😁 вообще это могло бы значить что точность высокая, ежели она низкая то стоит об этом сообщать, скорее это работает так.
Потому что это: 1. Быстрее выполняется (смотри внутрь метода add), так как внутри метода есть цикл с проверкой длины строки 2. Быстрее написать одну строчку вместо 2-х билдер нужен для динамической генерации, а тут одна единственная кнопка, которую еще и можно создать заранее а не каждый раз новый екземпляр делать
билдер это я так понимаю keyboard.add, да перепишу более емко
есть например отправка точной метки (не лайв локейшн) не требует точности
с лайвом я тоже буду работать но чуть позже, сейчас мне важно отправлять точную локацию единоразово
Обсуждают сегодня