首页 > 解决方案 > 我如何使用 php 中的电话号码在电报机器人中获取用户聊天 ID

问题描述

我需要获取特定电话号码组的用户 ID,为此我使用 SendContact Telegram 机器人api方法与我自己的聊天 ID 共享我的电话号码,但是当我收到电报服务器响应时,我没有得到任何聊天 ID,但是我的电话号码已在电报中注册,但电报服务器不发送包含该电话号码的聊天 ID 的响应,只是服务器返回我与我选择共享的名称共享的电话号码。请帮助我,谢谢。您可以在下一行看到对我的请求的电报响应:

stdClass Object
(
    [ok] => 1
    [result] => stdClass Object
        (
            [message_id] => 98
            [from] => stdClass Object
                (
                    [id] => 12334567
                    [is_bot] => 1
                    [first_name] => botname
                    [username] => botusername
                )

            [chat] => stdClass Object
                (
                    [id] => myid
                    [first_name] => myfirstname
                    [username] => myusername
                    [type] => private
                )

            [date] => 1532279079
            [contact] => stdClass Object
                (
                    [phone_number] => 9891911111111
                    [first_name] => qqqq
                )
        )
)

标签: telegram-botphp-telegram-bot

解决方案


你可以看看SendContact 方法

对于响应,您将获得Message对象,其中包含字段from和字段contact

它们都包含 user_id/chat_id 字段。

在你stdClass Object chat_idresult.from.id


推荐阅读