Slack API-检索斜线命令的队列

问题描述 投票:0回答:1

我的任务是在Python中构建一个Slack斜杠命令应用程序,它将响应传入的斜杠命令。但是,出于安全原因,不允许我为来自Slack的传入Webhooks打开防火墙。相反,有没有一种方法来检查已发送的斜杠命令队列?

例如,用户在特定频道中键入“ / myslashapp”。我的应用程序需要执行一些操作,例如每30秒调用一次端点,并检查是否已发送“ / myslashapp”命令。如果是这样,我的应用程序应该在AWS中触发Lambda函数。

基于阅读Slack API文档,除了RTM API之外,我没有发现任何其他方法可以执行此操作,尽管这似乎有点过头,但仍需要一个开放的套接字。

python slack slack-api
1个回答
0
投票

没有Slack API没有内置支持,允许您事后从队列中拉出请求,而不是在发生时从Slack接收请求。

RTM API可能对您有用,因为与Slack的连接是从您端开始的。因此-如果您的防火墙允许,它也将在Intranet内运行。但是,您不能使用RTM API或任何其他有趣的交互式Slack功能(例如按钮)来斜杠命令。仅简单的消息和事件。

您可以实施自己的桥接解决方案并从中获取。但是我认为拉式解决方案不起作用,因为它会给您的应用程序带来很多延迟。用户期望对他们的斜杠命令立即做出响应,而不是延迟30秒或更长时间。

总而言之,我认为您只有两个有效的选择:

  • 在内部托管您的应用,并使用安全的VPN,例如ngrok将公共URL公开给您的应用。

  • 在Internet上运行您的应用程序,并使其与您的Intranet进行安全连接以访问内部数据。 (类似于可以正常使用的购物网站,该网站在Internet上具有公共应用程序,但也可以将订单传输到公司Intranet上的业务应用程序。)

© www.soinside.com 2019 - 2024. All rights reserved.