web-dev-qa-db-fra.com

Slack Markdown pour les liens ne sont pas résolus

Qu'est-ce que je fais mal? Aucun des exemples de liens de Markdown ne fonctionne jusqu'à présent dans mon application Slack.

J'ai collé dans l'exemple ci-dessous un chat dans mon application Slack. J'ai eu cet exemple de syntaxe slack markdown et il le traite toujours comme du texte littéral dans l'application Slack:

[like this](http://someurl)

donc je finis par voir cela au lieu de simplement "comme ça" comme un lien dans le chat Slack.

Ou peut-être que ce qui précède est faux, dans quel cas ma question serait alors de savoir comment créer explicitement des liens dans Slack? Je souhaite que le texte que je spécifie soit cliquable vers une URL spécifique (lien hypertexte).

116
PositiveGuy

Slack ne prend actuellement pas en charge les liens hypertextes. voir ce lien qui dit:

Remarque : Il n’est pas possible d’attacher des mots par hyperlien dans un message Slack.

176
pillravi

Slack utilise son propre style de démarquage:
Les liens de slack markdown fonctionnent de la manière suivante: <http://someurl|like this>

Remarque: Vous ne pouvez le faire que via l'API Slack et PAS comme un simple message que vous envoyez via le client Slack.

Exemple de générateur de message
enter image description herePlus d'informations dans les documents

128
Wilhelm Klopp

Ceci n'est pas encore supporté par Slack pour les messages directs, vous ne pouvez le faire qu'en utilisant l'API Slack. Mais vous pouvez upvoter la demande de fonctionnalité que j'ai soumise ici .

28
Jules Randolph

Reubenanswer == fonctionnera, mais cela ressemblera à un téléchargement de fichier sans titre, comme indiqué ici: fichier sans titre posté sur Slack . Cependant, avec une légère modification, vous pouvez facilement publier un message naturel avec un lien hypertexte tel que vous le voyez ici: message naturel de type slack avec lien hypertexte à l’aide de la touche chat.postMessage Méthode api Slack au lieu de "fichiers.upload" et adoption de la propre méthode de Slack formatage du message au lieu de Markdown. Cela se ferait comme ceci:

curl -F text="*<https://someurl|like this>*" -F as_user=true -F link_names=true -F channel=C1.....7L -F token=xoxp-... https://slack.com/api/chat.postMessage

L'argument link_names=true n'est pas utilisé dans cet exemple, mais il est utile de pouvoir @mention user et #refer aux canaux.

5
Michael Roberts

Comme alternative aux messages slack (couverts par Wilhem s réponse ), vous pouvez créer des messages slack via l'API et utiliser au moins un certain Markdown. Ces deux créent <h2><a href="https://someurl">like this</a></h2>:

curl -F filetype=post -F content="# [like this](https://someurl)" -F channels=C1.....7L -F token=xoxp-... https://slack.com/api/files.upload

ou permutez content="..." pour [email protected]

curl -F filetype=post -F [email protected] -F channels=C1.....7L -F token=xoxp-... https://slack.com/api/files.upload

Ceci utilise files.upload . Je pense que le moyen le plus simple d’essayer de poster en tant que vous-même est avec n jeton hérité . Obtenez l'ID du canal à partir de l'URI du canal.

4
Reuben

J'ai écrit ce code pour convertir les liens de démarque dans un corps de texte au format de lien attendu par slack:

      // Pretty hacky, convert [sup](http://foo.com) to <http://foo.com|sup>
      const reformatLinks = /\[(.*?)\]\((.*?)\)/g
      const slackBody = body.replace(reformatLinks, (_m, text, url) => `<${url}|${text}>`)

D'après ce que je peux dire, le relâchement ne prend pas en charge les liens d'image dans le texte.

0
ratbeard

Très tard dans la soirée, mais j'ai récemment découvert que vous pouvez utiliser un raccourci d'URL pour créer un lien https que vous pouvez ensuite référencer à l'aide de liens de démarques.

0
NoobishSRE