Пишу телегам бота, который бы возвращал локацию пользователя при нажатии ReplyKeyboardMarkup.
Код:
import telebot
from telebot import types
bot = telebot.TeleBot(API Token)
@bot.message_handler(commands=["start"])
def start (message):
#Клавиатура с кнопкой запроса локации
keyboard = types.ReplyKeyboardMarkup(row_width=1, resize_keyboard=True)
button_geo = types.KeyboardButton(text="Отправить местоположение", request_location=True)
keyboard.add(button_geo)
bot.send_message(message.chat.id, "Поделись местоположением", reply_markup=keyboard)
#Получаю локацию
@bot.message_handler(content_types=['location'])
def location (message):
if message.location is not None:
print(message.location)
print(message)
bot.polling(none_stop = True)
input()
В результате в мессенджере отображается кнопка, при ее нажатии телеграм спрашивает точно ли отправить геоданные, при получении подтверждения геоданные не приходят. Проверил получение данных запросом MethodGetUpdates, данных нет, ответ
{'ok': True, 'result': []}
Если отправлять геоданные не через кнопку ReplyKeyboardMarkup а через интерфейс самого телеграмма "геопозиция" данные приходят.
Не могу разобраться что не так, почему не работает кнопка.