通过Telegram Bot API获取用户名和名字,并提供匹配的电话号码

时间:2016-07-29 22:13:28

标签: php api telegram telegram-bot

我有一个电话号码列表。

我需要在Telegram中匹配Serial SP(argv[1]); username(如果他们订阅了电报)。

我想通过Telegram BOT API获取这些信息(用户名和first_name)。

有可能吗?我怎样才能做到这一点? (使用PHP)

这是我的示例代码:

first_name

2 个答案:

答案 0 :(得分:2)

嗯,当您拥有电话号码时,您可以从用户那里获得用户名和user_id。我不知道如何获得名字。

只需发送包含任何first_name和电话号码的联系人(sendContact)即可。电报通过发送的联系人进行响应,其中包括user_id(如果用户有电报)和username用户已设置的联系人。

一步一步:

  1. 向任何聊天发送一个带有号码和任何名字的联系人(您自己,一个群组,无所谓......)
  2. Telegram API将使用发送消息或某些错误代码进行响应。如果邮件成功发送,则响应中的联系人可能会有更多详细信息(用户名和user_id)。

答案 1 :(得分:0)

简而言之,它是不可能。但阅读整篇文章,它可能对你有用。

从Telegram和Telegram Bot API获取电话号码是单向的, 这意味着您不能发送电话号码并从电报中获取用户数据。(注意:我们假设您之前没有通过电话号码添加用户)

通过电报获取用户电话号码只有两种方法:

  

1-使用特定的KeyboardButton按钮获取它。通过这种方式,Telegram在用户接受后发送用户电话号码。(注意:用户必须是之前的Bot用户)

     

2-询问用户他/她的电话号码,但不可靠,你应该用其他方式检查(如短信批准等)

毕竟,虽然这两种方式可以用来获取用户的电话号码,但是当你拿到电话号码时,你的电话号码就没用了。

但是你想用可用的电话号码抓取username,由于Telegram Bot API基础设施,这是不可能的。