作った経緯
仕事のお昼休憩の時などに、スマホで読んだ記事をチームのSlackのrandomチャンネルに投げたりすることがあるのですが、
iPhoneのショートカットアプリを使って簡単に効率化できそうだったので試してみました。
成果物
Safariで開いているページをSlackで共有 pic.twitter.com/FMcUbXyha7
— カッキー (@k_Kackie) 2019年5月5日
作り方
用意するもの
- Slackのチャンネル
- iOS Safari
- ショートカットアプリ
持っていない場合はこちらからダウンロードできます。
手順1 Webhook URLの取得
ブラウザでSlackにログインし、下記にアクセスします。
https://slack.com/services/new/incoming-webhook
チャンネルを選択する画面が開きますので、ショートカットを使って共有したいチャンネルをここで選びます。
お試しでやってみたいだけの場合は、自分宛にしておくと良いと思います。
次の画面でセットアップの手順を開くと「Webhook URL」というものが表示されています。
ショートカット作成に使うものなので、こちらをコピーしておきます。
手順2 ショートカットを作成する
iOSショートカットアプリを開きます。
今回はSafari内で使うショートカットにしたいため、下記のような手順で作成していきます。
- 右上のインジケーターのアイコンをタップし、「共有シートに表示」をアクティブにします。
「受け入れの種類」項目が表示されるので、「SafariのWebページ」のみ選択します。 - Slackに送信したい文章を作成します。
サンプルでは画像のように設定しました。お好みで調整をしてください。
- Slackにデータを送信するための設定をします。画像のように設定してください。
URLには先ほどコピーしておいた「Webhook URL」を入れておきます。
「本文を要求」のところで新規フィールド(種類はテキスト)を追加します。text
には上の手順で作成した「テキスト」を選びます。username
は任意で設定できます。
送信者の部分に表示されるので、自分とわかるものにしておくと良いと思います。
- これだけでも動きますが、Slackで共有ページのプレビューを表示する設定をしておきます。
username
の下にラベルunfurl_links
を追加し、値をtrue
とします。
以上です。
Safariを開いて、ショートカットを試してみてください。
Safari以外でも使えるようにする
受け入れの種類に「URL」を追加し、「Safari Webページの詳細を取得」を「入力からURLを取得」に変更します。
TwitterアプリからツイートのURLを共有したりなど、Safari以外でも使えるようにすることができて便利です。
その他できること
icon_url
に画像URLを指定することで、アイコン画像を上書きできます。
channel
に#チャンネル名を指定することで、インテグレーション取得時に選択したものを上書きして、他の場所に投稿することができるようになります。
Slackのセットアップの手順ページを見ると「ダイレクトメッセージは "channel": "@username" で指定できます。」とありますが、現在usernameを使用してのDM送信は非推奨となっているようで、機能しません。
ユーザ名の代わりにユーザIDを使用することができますが、こちらはダイレクトメッセージではなく相手のSlackbotに喋らせるという機能で、使い所は微妙です。
感想
実はショートカットアプリ自体初めて触ってみたのですが、意外と自由度が高くて驚きました。まさかPOST送信の機能まであるとは・・。
こんなふうに普段の何気ないアクションの中で、「もっと効率化できるんじゃないか?」と考えて方法を模索していくのは楽しいですね。
動画にモザイクかけるのめんどくさかったw