2017-05-17 4 views
0

Ich schrieb folgenden Hubot-Skript zu senden erinnern.Hubot Slack: Wie Nachricht senden enthält Kanal-Link?

OUT_CHANNEL = "remind" 

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

Dieses Skript sendet unter Nachrichten.

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

Aber dieser Fall ist der Teil von # remind nicht Link.

wie einbinden kanal link in hubot nachricht wie mensch senden?

Umwelt unter:
hubot 2.19.0
hubot-slack 3.4.2
slack-Client 1.4.0
Slack.app 2.5.2

Antwort

1

Wenn Sie Slack wollen einen Link zu zeigen, die korrekte Syntax zu einem Kanal ist:

<#C12345678[|text]> 

Wo #C12345678 die ID des öffentlichen Kanal ist, und text beliebigen Text sein kann (und ist optional). Also <#C12345678> wird auch funktionieren.

Ich bin nicht vertraut mit der coffeescript Syntax, also fügen Sie bitte jedes Skript verwandte Zeichen codiert (z. B. ## für #) wie nötig.

Bitte beachten Sie, dass dies nur für öffentliche Kanäle, aber nicht für private Slack-Kanäle funktioniert.

Sie können mehr über das korrekte Verknüpfen von Nachrichten in Slack-Nachrichten in dem ausgezeichneten Slack API documentation n lesen.

+0

danke, aber es konnte nicht funktionieren. Es zeigt Klartext wie <# C5XXXXJVB [| Erinnerung]> – rootpetit

+2

Die '[' sind zu sagen, es ist optional. Kannst du es versuchen? <# C5XXXXJVB | Erinnerung> '? – Mose

+0

Danke! '<# C5XXXXJVB | Erinnerung>' funktioniert, was ich will. – rootpetit