gpt4 book ai didi

python - 无法使用 KeyboardButton 获取用户的电话号码

转载 作者:太空狗 更新时间:2023-10-30 02:55:36 24 4
gpt4 key购买 nike

我有一个简单的 Telegram Bot ,它带有一个 KeyboardButton,当用户按下“开始”时会出现该按钮。用户按下 KeyboardButton 后,会出现一个窗口,用户在该窗口中按下按钮“共享电话号码”。我需要获取此电话号码,但响应中的“联系人”对象为空。我使用的模块 - pyTelegramBotApi。

import telebot
from telebot import types

bot = telebot.TeleBot(token)

@bot.message_handler(commands=['start'])
def register(message):
keyboard = types.ReplyKeyboardMarkup(one_time_keyboard=True)
reg_button = types.KeyboardButton(text="Share your phone number", request_contact=True)
keyboard.add(reg_button)
response = bot.send_message(message.chat.id,
"You should share your phone number",
reply_markup=keyboard)
print(response.contact) # response.contact = None here

if __name__ == '__main__':
bot.polling(none_stop=True)

这是从用户那里获取电话号码的正确方法吗?如果没有,我怎样才能得到它?

最佳答案

您应该为联系人定义新的处理程序

@bot.message_handler(content_types=['contact'])
def contact_handler(message):
print(message.contact.phone_number)

关于python - 无法使用 KeyboardButton 获取用户的电话号码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42086843/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com