如何创建带有文件附件的 Slack 命令

How can I create a Slack command with a file attachment

我想创建一个 Slack 命令 /command do-something-with-that-file,同时用户上传文件。

到目前为止,我的命令已收到,但负载中没有文件。 这可能吗?

我还在范围内添加了 files:read,但到目前为止没有成功。

Slack 命令只能接受文本作为输入。如果您同时上传一个文件,它不会成为有效载荷的一部分,并且会被忽略(尽管已上传,并且可以通过文件浏览器访问)。

您可以尝试一些替代方法:

  1. 使用files.list方法 - 查找在收到命令后几秒内上传的文件。为此,该方法接受 ts_fromts_to 参数。
  2. 使用 file_shared 事件 - 在您的应用配置中订阅此事件。每次在机器人可见的频道中上传文件时都会触发此事件。您可以要求应用程序用户使用特定格式来提供文件上传,并在事件提交中寻找模式。
  3. 使用 message shortcut - 用户上传文件后,您可以要求他们使用上下文菜单来触发与您的应用关联的消息快捷方式。此消息快捷方式包含对消息 ID 的引用,可用于获取上传的文件。