Slack应用无法再使用chat:write:bot范围了

时间:2019-12-17 08:43:40

标签: slack-api

我希望我的应用使用chat.postMessageicon_emoji参数username到Slack,以便有时更改显示的图标和名称。

从方法的the doc看来,我必须将as_user设置为false。但是,当我这样做时,我遇到了missing_scope错误:我需要范围chat:write:bot。 (无论我使用OAuth访问令牌还是OAuth漫游器用户访问令牌都出现相同的错误)

但是从this page中我知道它们正在消失吗?那么我要使用的参数(icon_emoji和用户名)也会消失吗?

2 个答案:

答案 0 :(得分:2)

否,自2019年12月19日起,您将无法使用icon_emoji


我遇到了同样的问题,所以我用Slack开了一张支持票。在来回几条消息之后,我确认这可能是一个错误:

  

在您的帮助下,我得以重现了该问题。我怀疑这是一个错误,但我已将其升级给Granular Bot Token团队以征求第二意见。一旦我有更多详细信息,我会告诉您。

编辑:

我收到了另一个更新,已对要点进行了精简:

  

在构建Granular Bot令牌模型时,我们的团队确实希望以此为契机慢慢弃用某些API行为。 as_user参数是其中之一。请参阅({https://api.slack.com/authentication/quickstart)中的以下注释。

     
    

一个值得注意的效果:chat.postMessage和其他chat。*方法不再与as_user参数混为一谈。您被授予一个单独的chat:write范围(不附加:user或:bot)。如果使用bot令牌调用chat.postMessage方法,则以bot身份发布。如果您通过新的安装流程获得了用户令牌,并且使用用户令牌调用了该方法,则您将以用户身份发布。

  
     

因此,关于您要执行的操作,恐怕使用Granular Bot Token不可能。我们还认识到,这种抛出的错误对于开发人员来说完全没有帮助并且令人困惑。为此,我们创建了一个错误,以修复Granular Bot令牌尝试进行受限API调用时返回的错误。

我已要求澄清是仅弃用as_user部分还是icon_emoji部分。

编辑2(2019年12月19日美国东部时间13:38):

可能是最终的一次更新:

  

应用程序通过API更改用户名,头像和图标等信息的选项也将引起争议。当前,使用Granular Bot令牌时,您只能通过API管理页面更新该信息。

真的很不幸。

答案 1 :(得分:0)

我必须在“ Bot Token Scopes”中添加一个范围,值为“ chat:write.customize”。

https://api.slack.com/scopes/chat:write.customize

然后我必须重新安装我的应用程序。它的工作符合我的预期。

注意:我尝试了此操作,因为这是评论的建议。但是它起作用了,所以我将其添加为答案。