我正在制作电报bot api包装器,并想知道如何获得用户的位置。我试过这个:
def test(chat):
reply_markup = {
"chat_id" : chat,
"text": "your message",
"reply_markup":
{"keyboard":
[
[{"text": "Send Your Mobile", "request_contact": True}],
[{"text": "Send Your Location", "request_location": True}]
]
}
}
和
def func():
keyboard = [{"text":"Hello", "request_location":True}]
reply_markup = {"keyboard":keyboard, "one_time_keyboard":True}
return json.dumps(reply_markup)
提交给我的send_messages函数提交的内容:https://www.codementor.io/garethdwyer/building-a-telegram-bot-using-python-part-1-goi5fncay
我该怎么做?
答案 0 :(得分:0)
首先,您只能在私人聊天中使用request_location
,确保不会将其发送到群组。
如果成功,用户将发送位置作为消息,就像sendLocation方法一样,您需要处理新消息以获取位置。
答案 1 :(得分:0)
对于python-telegram-bot用户:
dispatcher.add_handler(MessageHandler(Filters.location, location))
def location(bot, update):
print(update.message.location)