【问题标题】:Slack message JSON, image not showing松弛消息 JSON,图像未显示
【发布时间】:2016-04-19 22:55:50
【问题描述】:

我正在构建一个简单的 Slack 集成。我有一个在公共 URL 上运行的 Web 应用程序,当调用我的斜杠命令时,它会返回 json:

{

"text": "<http://lorempixel.com/image_output/animals-q-c-640-480-4.jpg>"

}

如果我粘贴 JSON in to their format testing tool,它会按预期显示图像。但是,当我在 Slack 中实际测试斜杠命令时,我的 Web 应用程序返回完全相同的 JSON,Slack 将图像 url 显示为链接,但不显示图像。

想法?

【问题讨论】:

  • 通过阅读一些文档,看起来“URL 检测由服务器执行”,因此用户消息的处理方式可能与斜杠命令响应不同。 api.slack.com/docs/formatting。此外,api.slack.com/docs/attachments 概述了将内容附加到您的消息中。也许试试那种格式。
  • 虽然看起来消息生成器确实应该验证您正在尝试执行的操作。
  • 你试过"response_type": "in_channel"吗?我怀疑临时消息根本无法打开它们的链接。
  • 尝试将unfurl_links设置为trueapi.slack.com/docs/unfurling
  • @PetrGazarov 好吧,我想你会想要unfurl_media,但无论如何都默认为true

标签: slack-api slack


【解决方案1】:

我让它在文本和附件中包含图像:

{
  "parse": "full",
  "response_type": "in_channel",
  "text": "<http://lorempixel.com/image_output/animals-q-c-640-480-4.jpg>",
  "attachments": [
    {
        "image_url": "http://lorempixel.com/image_output/animals-q-c-640-480-4.jpg"
    }
   ],
   "unfurl_media": true,
   "unfurl_links": true

 }

这似乎与我看到的文档和其他示例不相符,但至少它现在可以工作了!

【讨论】:

  • FWIW, "response_type": "in_channel" 是我让这个确切的例子工作所需要的。
  • 除此之外:如果您在特定时间段内多次向频道发布链接(或集成发布链接),则只会展开一次。您必须等待一段时间,然后再发布此链接才会导致另一个展开。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-03-02
  • 1970-01-01
  • 1970-01-01
  • 2022-06-24
相关资源
最近更新 更多