【问题标题】:Slack mentions not workingSlack提到不起作用
【发布时间】:2016-06-15 04:57:38
【问题描述】:

我正在使用 slack-notifier gem 向我的 slack 频道发送通知。

  notifier = Slack::Notifier.new "https://hooks.slack.com/services/ABC1234567890"
  notifier.ping "Text <@user1>"

这是rails中的一般设置。

当我发送给@user1(我的同事)时,一切正常。

但如果我将其发送给@user2(我自己),则会显示文本而不提及创建通知或成为可点击链接。

另外,如果我将它发送到用户组,@my_team 文本与上面相同。

我也试过 !my_team&lt;@user1|user1&gt; 。松弛通道的输出类似于&lt;my_team&gt;@user1。所以它似乎没有正确解析。

为什么会发生这种情况?

【问题讨论】:

  • 您使用的是友好名称(例如&lt;@smarx&gt;)还是用户ID(例如&lt;@U12345&gt;)? The documentation 没有提到前者,但在实践中它似乎有效。
  • 我使用的是友好名称,我如何找到 ID?专门针对用户群,因为那是最终目标。我只是做了一个测试并省略了字符串中的 标签,它取得了一些成功,但我不知道为什么。通知没有触发,但名称现在以黄色突出显示...
  • 我建议notifier.ping "Text @user1", parse: "full"。使用parse=full,您无需费心获取事物的 ID,只需手动输入 Slack 客户端即可获得您通常期望的解析行为。
  • parse: "full" 是解决方案。请把它写成答案,我会选择它!

标签: ruby-on-rails ruby webhooks slack-api slack


【解决方案1】:

(将我的评论移至答案。)

我建议这样做:

notifier.ping "Text @user1", parse: "full"

“完整”解析模式意味着您将获得 @username、#channelname 等的自动链接,就像您在 Slack 网站/客户端中输入时一样。

【讨论】:

    猜你喜欢
    • 2017-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-19
    • 2017-02-22
    • 1970-01-01
    相关资源
    最近更新 更多