我使用 Slack 的 API 发送消息,使用
blocks
参数发送格式化消息。现在,我想添加将文件附加到消息的功能,就像通过 Slack 界面一样(例如复制粘贴图像/上传 pdf)。
在探索 API 并在线搜索后,我找不到在同一个 API 调用中同时使用
blocks
和 files
来发送消息的方法:
blocks
但不接受文件 ID/url。initial_comment
作为简单字符串文本的消息,但不接受 blocks
作为富文本。blocks
进行 chat.update- 这似乎有效,但将 Slack 中的消息标记为
edited
- 不理想的用户体验。有没有办法在 1 个 API 调用中向 Slack 发送消息时获得“文件”和“块”的完整功能?
在我看来这应该是可能的,因为另一个方向有效 - 当 Slack 在其事件中发送新消息的事件时,他们确实在同一事件中共享
blocks
和 files
。
来自 Slack 支持:
对于通过 Slack API 发布的消息,我们目前仅支持通过 slack_file 或图像块附加图像文件。或者,您可以尝试使用远程文件来查看这是否适合您 - https://api.slack.com/messaging/files#remote
如果远程文件不起作用,老实说,您最好的选择是选项 4。很抱歉这里有坏消息。