提到使用Slack Bot的Guest?

时间:2019-01-15 07:59:08

标签: slack slack-api slack-commands

我的频道中有很多客人。

我希望我的机器人在@提及中提及这些客人,但是机器人似乎没有看到频道的客人。它发现其他完全用户很好,只是没有客人。

这是Slack的故意限制吗,还是机器人需要更多权限?

我正在使用slackclient模块(Python)并进行以下调用:

    sc.client.api_call(
        "chat.postMessage",
        channel="#channel",
        link_names=1,
        text="@aaron.layfield <-- Working @guest.name <-- Not working This is a message."
    )

2 个答案:

答案 0 :(得分:1)

如果您想从邮件内部链接到用户,则最好使用的format<@USERID>而不是@username。这是因为Slack从使用用户名开始使用moved away,而转向了更加灵活的显示名称概念,这些名称不能保证是唯一的或不变的。

所以在这种情况下,您会做类似的事情

curl --request 'POST' 'https://slack.com/api/chat.postMessage?token=xoxb-21321321-1231321321321-dsfasdgdsfaghsdfhsdfh&channel=C9UFK5F5S&text=Hey <@UFBKH3B63>'

将其渲染为

  

嘿@Co​​lm Doyle

答案 1 :(得分:0)

正如Colm的回答所解释的那样,@username语法已弃用,您应该使用ID语法代替提及。

要获取来宾用户的ID,请致电users.list,以获取工作区中所有用户的列表。然后遍历该列表以将来宾名称与ID匹配。