Telegram bot API对于与该bot联系的每个用户而言,chat_id都是唯一的吗?

问题描述 投票:2回答:1

我们正在将python API用于电报机器人,并且需要能够识别用户。

chat_id对于连接机器人的每个用户是否唯一?

我们可以相信chat_id是一致的吗?例如,同一个chat_id将告诉我们这是同一用户,并且与漫游器连接的每个用户都将拥有一个在会话之间保持一致的chat_id?

谢谢

python authentication telegram telegram-bot python-telegram-bot
1个回答
0
投票

每个聊天机器人的用户的chat_id是否唯一?

chat_id对于连接到您的漫游器的每个用户将始终是唯一的。如果同一用户向不同的漫游器发送消息,他们将始终使用其唯一的id来“标识”自己。

请记住,getUpdates显示用户ID和聊天中的ID。

{
    "ok": true,
    "result": [
        {
            "update_id": 1234567,
            "message": {
                "message_id": 751,
                "from": {
                    "id": 12122121,                     <-- user.id
                    "is_bot": false,
                    "first_name": "Me",
                    "last_name": "&",
                    "username": "&&&&",
                    "language_code": "en"
                },
                "chat": {
                    "id": -104235244275,                <-- chat_id
                    "title": "Some group",
                    "type": "supergroup"
                },
                "date": 1579999999,
                "text": "Hi!"
            }
        }
    ]
}

根据this post,即使将组转换为超组,chat.id也不会更改

© www.soinside.com 2019 - 2024. All rights reserved.