Slack API,可在不更改用户文本的情况下向用户消息添加附件

时间:2018-10-25 19:04:27

标签: javascript slack slack-api

我如何使一个松弛的应用程序在不编辑用户文本或在邮件上显示(已编辑)标记的情况下向邮件添加附件?我正尝试在松弛状态下与Github应用程序做同样的事情,即在现有消息中添加附件。

GitHub示例 enter image description here

当前行为 enter image description here

代码

this.rtmClient.on('message', this.slackMessage);
...
await this.webClient.chat.update({
  ts: message.ts,
  channel: message.channel,
  text: message.text, // tried ommiting but just remove's text
  attachments: [
    {
      color: '#2d9ee0',
      fallback: 'text',
      text: 'text',
      mrkdwn_in: ['text'],
    },
  ],
});

1 个答案:

答案 0 :(得分:0)

Github未添加附件,而是使用Slack的app unfurling功能。

这是一种特殊情况,允许应用程序向与应用程序相关的URL添加自定义附件。 (例如github URL)。每当有人发布此类URL时,都会触发该应用,并且可以提供与该URL相关的自定义附件。与您发布GIF时类似。

通常,如果不编辑附件,则不能将附件添加到随机消息中。抱歉。

不确定要实现的目标是什么,但是可以用一条替换第一条消息的新消息来答复消息。然后,看起来好像添加了附件,而实际上它只是替换了原始邮件。与斜杠命令和交互式消息答复一起使用。有关详细信息,请参见this answer