【发布时间】: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 和 <@user1|user1> 。松弛通道的输出类似于<my_team> 或@user1。所以它似乎没有正确解析。
为什么会发生这种情况?
【问题讨论】:
-
您使用的是友好名称(例如
<@smarx>)还是用户ID(例如<@U12345>)? The documentation 没有提到前者,但在实践中它似乎有效。 -
我使用的是友好名称,我如何找到 ID?专门针对用户群,因为那是最终目标。我只是做了一个测试并省略了字符串中的 标签,它取得了一些成功,但我不知道为什么。通知没有触发,但名称现在以黄色突出显示...
-
我建议
notifier.ping "Text @user1", parse: "full"。使用parse=full,您无需费心获取事物的 ID,只需手动输入 Slack 客户端即可获得您通常期望的解析行为。 -
parse: "full" 是解决方案。请把它写成答案,我会选择它!
标签: ruby-on-rails ruby webhooks slack-api slack