LoginSignup
2
1

More than 5 years have passed since last update.

Slack APIでリンクを開く

Posted at

概要

Slackにリンクを張ると、リンク先が表示される機能(下図のようなイメージ)がありますが、  
Slack APIからメッセージを送ったときになぜかリンク先が表示されなかったので、  
表示させる方法を記載します。

こうしたい.png

リンクが表示されないパターン

公式ページによると、

・リンクにプレビューデータが含まれていない
Slack メッセージでリンクを共有する際、リンクのプレビューには Twitter >Cards、oEmbed や Open Graph からの組み込み情報が含まれます。もしその >Web ページがそれらのデータを含まない場合、リンクは展開表示されません。

・非公開のページやファイルへのリンク
例えば、YouTube や Vimeo videos で非公開になっているものはプレビューが表示されません。

・最近、ワークスペースの別のメンバーによって投稿された。
同じリンクが過去1時間以内に共有されていた場合、リンクは展開されません。ホワイトリストにまだ登録されていないサービスにより管理されているビデオや音声データへのリンクより多くのサービスをホワイトリストに登録するよう、引き続き取り組んでいきます。

・http:// が含まれていない
この場合、http:// を追加すると、リンクが展開されるはずです。

・一つのメッセージに5つ以上のリンクが含まれている
もしメッセージが5つ以上のリンクを含む場合、それらのリンクは展開表示されません。

の5つのどれかに該当する場合には表示されないようですが、
今回はどれにも該当しなかったため、次のようにパラメータをつけます。

パラメータ

メッセージ送信時に、unfurl_linksパラメータをtrueにします。

notify.py
import slackweb

slack = slackweb.Slack(url={URL})
slack.notify(text=msg, unfurl_links='true')

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1