【问题标题】:How do I retrieve and use a "trigger_id" with Slack API?如何通过 Slack API 检索和使用“trigger_id”?
【发布时间】:2018-12-20 09:15:18
【问题描述】:

我想让我的 SlackApp 可以使用以下方法:

apps.permissions.request

此方法需要随请求一起发送属性“trigger_id”。 所以我在 Slack API 的文档中查找了它。它说我可以从三个方面收到trigger_id

  • 斜线命令执行
  • 消息按钮点击次数
  • 消息菜单选择

问题是,这三种方法都需要一个可以发送答案的 URL - 我需要一个服务器来解决这个问题,这是不可能的!

除了apps.permissions.request 之外,没有其他方法可以接收trigger_id,或者更直接地说,是否有其他方法可以为我的应用设置/请求新范围 - 除了在应用的菜单中设置范围直接?

【问题讨论】:

    标签: c# slack-api


    【解决方案1】:

    触发器 ID

    没有。您的应用获取有效触发器 ID 的唯一方法是您提到的方法。所有这些都要求您的应用能够接收来自 Slack 的请求。因此,大多数 Slack 应用程序都在网络服务器/云中运行,因此它们可以充分利用这些功能。

    工作区应用

    apps.permissions.request 方法是一种称为“工作区应用程序”的新型应用程序的一部分,它需要一种称为“工作区令牌”的特殊类型的令牌。

    请注意,Slack 宣布不会进一步开发工作区应用程序现在被视为旧版。所有相关方法只能保证在 2019 年 10 月之前有效,我一般不建议使用它们。有关工作区应用的更多信息,请参阅文章 Legacy: Workspace appsAn Update on Workspace Apps

    以编程方式更改范围

    您无法使用常规 Slack 应用程序以编程方式更改应用程序的范围。

    但是还有另一种方法可以解决您的问题:

    您的应用可以在 OAuth 流程中以编程方式请求为您的 Slack 应用定义的所有范围的子集。因此,例如,如果您的应用程序配置为使用范围 A、B、C,则一个用户可以请求仅具有范围 A 的令牌。另一个可以请求仅具有 B、C 等范围的令牌。

    【讨论】:

    • 嘿,埃里克,非常感谢!问题是我想编写可以为每个新的 Workspace 应用程序设置范围的代码。但是现在阅读所有这些都只支持到 2019 年 10 月......我错过了什么吗?是否有其他方式与 Slack 进行通信?我不需要工作区应用程序吗?还有其他方法吗?我很困惑...
    • 嗨法比安! Workspace 应用程序从未完全发布,明年将被其他应用程序取代。我的建议是:不要使用它们,这是浪费时间。而是构建一个普通的 Slack 应用程序。
    • 工作空间应用程序是一种新方法,其目标是让应用程序对范围和权限进行更精细的控制,例如您可以将应用程序安装到通道而不是整个工作区,并以编程方式添加/删除范围。但同样,我不会使用它。
    • 嘿,埃里克,我不明白。究竟什么是“普通的 Slack 应用程序”?我从在线阅读 slack api 的文档开始了这一切。它到处都说我首先必须创建一个应用程序......这是现在的工作区应用程序还是普通应用程序???很抱歉这些问题,但我现在很困惑。我一直认为我的应用程序是一个工作区应用程序 - 也许不是?!普通应用程序的通信方式是否不同?没有代币?不同的方法?你只是用这个答案让我偏离了轨道......
    • 很抱歉给您带来了困惑。 AFAIK 实际上不再可能创建工作区应用程序,并且只能作为此新功能的“开发人员预览”的一部分,该功能于 2018 年 10 月结束。因此,除非您在 10 月份没有明确创建工作区应用程序,否则您将拥有一个普通的 Slack 应用程序.
    猜你喜欢
    • 2023-03-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多