Slack api returns `is_bot`:对于机器人来说是错误的。还有什么方法可以检查用户是否是机器人?

Slack api returns `is_bot`: False for a bot. How else to check if an user is bot?

slackbot slack 可能很可爱,但他仍然是一个机器人,不是吗?

使用 python-slackclient 我做到了。 slack_client.api_call("users.list")

users = self.slack_client.api_call("users.list") for member in users["members"]: print(member)

slackbot 打印这个:

{'is_owner': False, 'tz_offset': -28800, 'is_ultra_restricted': False, 'tz': None, 'profile': {'image_48': 'https://a.slack-edge.com/2fac/plugins/slackbot/assets/service_48.png', 'image_192': 'https://a.slack-edge.com/66f9/img/slackbot_192.png', 'avatar_hash': 'sv1444671949', 'fields': None, 'image_32': 'https://a.slack-edge.com/2fac/plugins/slackbot/assets/service_32.png', 'image_512': 'https://a.slack-edge.com/1801/img/slackbot_512.png', 'image_72': 'https://a.slack-edge.com/0180/img/slackbot_72.png', 'image_24': 'https://a.slack-edge.com/0180/img/slackbot_24.png', 'real_name': 'slackbot', 'first_name': 'slackbot', 'last_name': '', 'real_name_normalized': 'slackbot'}, 'status': None, 'team_id': 'T2YJG4LLV', 'name': 'slackbot', 'tz_label': 'Pacific Standard Time', 'is_restricted': False, 'id': 'USLACKBOT', 'color': '757575', 'is_bot': False, 'is_primary_owner': False, 'is_admin': False, 'deleted': False, 'real_name': 'slackbot'}

注意,'is_bot': False。我如何可靠地检查用户是否是机器人。我曾经检查过用户个人资料信息中是否有 email 字段,可以吗?

你说得对 is_bot 将是 false Slackbot。但是 is_bot 对于其他机器人将是 true

只需通过 ID 识别 Slackbot, 始终是 USLACKBOT,其余机器人使用 is_bot