【问题标题】:Differentiation between normal users and bots in TelegramTelegram 中普通用户和机器人的区别
【发布时间】:2019-06-11 03:31:45
【问题描述】:

假设我在 Telegram 中创建了一个群组,并想开发一个机器人并将其作为管理员添加到群组中。现在,假设这个机器人被编程为向加入组的用户发送欢迎消息。但是,我们只想将欢迎消息发送给实际的人类用户,而不是发送给可能已添加到组中的其他机器人。这在技术上可行吗?我的意思是,当我开发我的管理机器人时,我怎样才能让它能够区分用户和机器人?有什么查询吗?

【问题讨论】:

    标签: telegram telegram-bot python-telegram-bot


    【解决方案1】:

    当新用户加入您的群组时,您的机器人会获得一个 JSON 对象:

    {
        message_id: 8,
        from: {
            id: <user_id>,
            is_bot: false,
            first_name: 'A',
            last_name: 'B',
            username: '<adder_username>'
        },
        chat: {
            id: <chat_id>,
            title: 'test',
            type: 'supergroup'
        },
        date: 1535443550,
        new_chat_participant: {
            id: <user_id>,
            is_bot: false,
            first_name: 's',
            username: '<added_username>',
            language_code: 'en-us'
        },
        new_chat_member: {
            id: <user_id>,
            is_bot: false,
            first_name: 's',
            username: '<added_username>',
            language_code: 'en-us'
        },
        new_chat_members: [{
            id: <user_id>,
            is_bot: false,
            first_name: 's',
            username: '<added_username>',
            language_code: 'en-us'
        }]
    }
    

    检查 msg.new_chat_participant.is_bot 你可以确定它是真实用户还是机器人。

    【讨论】:

      猜你喜欢
      • 2021-11-07
      • 1970-01-01
      • 2020-08-05
      • 2016-03-09
      • 1970-01-01
      • 1970-01-01
      • 2021-06-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多