Hubot Slack: Как отправить сообщение с ссылкой на канал?

Я написал следующий скрипт hubot, чтобы отправить напоминание.

OUT_CHANNEL = "remind"

module.exports = (robot) ->
  robot.hear /test/, (res) ->
    res.send "set reminder. I tell you at ##{OUT_CHANNEL} after this."
...

Этот скрипт отправляет ниже сообщения.

"set reminder. I tell you at #remind after this."  

Но в этом случае часть #remind не является ссылкой.

Как вставить ссылку на канал в сообщение hubot, как человек отправить?

Окружающая среда ниже:
Hubot 2.19.0
hubot-slack 3.4.2
Slack-клиент 1.4.0
Slack.app 2.5.2

1 ответ

Решение

Если вы хотите, чтобы Slack показывал ссылку на канал, правильный синтаксис:

<#C12345678[|text]>

куда #C12345678 идентификатор публичного канала и text может быть любой текст (и не является обязательным). Так <#C12345678> тоже будет работать

Я не знаком с синтаксисом coffeesecript, поэтому, пожалуйста, добавьте закодированный символ, связанный со скриптом (например, ## за #) как необходимо.

Обратите внимание, что это будет работать только для публичного канала, но не для частного канала Slack.

Вы можете прочитать больше о том, как правильно связать элементы в сообщениях Slack, в превосходной документации по Slack API n.

Другие вопросы по тегам