非エンジニア向け - (チャットじゃない) #Slack の始め方

  • SlackをSlack提供のIntegrationだけで利用するなんて余りにも勿体無い。
  • 一匹狼の僕はチャットサービスのSlackをボット相手に運用するのは勿体無い。

Slackのメイン フィーチャーは社内ネットワークにおけるチャットサービスである事は言うまでもありません。チャットの付加機能として様々なインテグレーションが用意されていることもまた然り。

しかしどうでしょう。僕はSlackの大きな魅力はWebに存在するあらゆるAPIに親しむ入り口となりうるslack APIにあると考えています。 先日以下のブクマで言及した時

トレタでの「slack」活用を紹介してみる - @hitoshi - barlogのコメント

Twitterで具体的な利用方法について議論を交わしたので実際に昼休みを利用して簡単な通知受信チャネルを作ってみました。

取り急ぎはてなスターのpush通知アプリが欲しかったのでそれを作ってみましょう(Slack/Hatenaのサインアップ関連方法は割愛させてね)

準備

iOS/AndroidのSlack appさえ用意すればカスタマイズ可能な、はてなスター/idコール push通知アプリとしてSlack/Slack appを利用することができるでしょう。

できるだけ専門的な表現/用語は避けますので興味のある方はお試しいただければ幸いです。

Side: Slack

Slack側の設定です(Slackの無料プランではIntegrationsの数が3つ(?)に制限されています。有効に使いましょう)。

  1. サインインしたら Integrations タブから新たに Incoming WebHooks というIntegrationsを利用してカスタム受信アプリを diy (自作)します。

Home >> Integrations

: https://slack.com/services/new

slack-integration-ex-1.jpg

  1. スクロール ダウンして下の方にある Incoming WebHooks ページヘ

    : https://slack.com/services/new/incoming-webhook

slack-integration-ex-2.jpg

  1. スターがついたらその旨を post するチャネルを選択します。チャネルはチャットルームの様なものですね。プルダウンから既存のチャネルを選ぶか新たに作成します。作成する場合は "CREATE A NEW CHANNEL" でチャネルを作成します。

slack-integration-ex-3.jpg

  1. 僕は取り急ぎ hatena-who-gave-starr というチャネルを作成しました。以降 https://なまえ.slack.com/archives/チャネル名 というURLで運用されます。つまり僕のチャネルURLは https://dai.slack.com/archives/hatena-who-gave-starrになります。警告されるとは思いますが id とか予約語的なフレーズは使用できないようになっていますのでご注意を。

  2. APIのMethods Explorerで chat.postMessage というmethodsを利用します。はてなスター/idコールを受けたら先ほど作成したチャネルにその旨を書き込む命令です。

    : https://api.slack.com/methods/chat.postMessage

  3. chat.postMessage に最低限必要な情報は以下の3つ。

    : token (Scopeで自分の名前を使用)

    : channel (#チャネル名でOK)

    : text (任意の語。「通知だっ通知」など)

  4. testerタブで上記3つの値を埋めたら完了です。GOボタンを押して生成されたURLをコピーします。

slack-integration-ex-6.jpg

ひとまずSlack側の設定は以上です。

Side: Hatena

  1. はてなブックマークの設定 >> 外部サイト連携タブへ
  2. Web Hook セクションで先ほど生成されたURLを 1 にペースト、今回の主旨である IDコール と はてなスター受け取りにチェックを入れて 設定を保存。これで完了です。

これで誰かがスターを付けてくれたら hatena-who-gave-starr チャネルにユーザー名を添えてその旨を書き込んでくれるはてなChrome-addonsでは提供してくれないpush通知が手持ちのデバイスにpushされるようになりました。

今回の TSUNAGI はほぼデフォルトの Incoming WebHook API 利用例です。応用すれば使い方はあなた次第。インターネットにメッシュされているあらゆる情報は繋がっていて加工できる。そのかけらを垣間見せてくれる Slack は間違いなく偉大です。ぜひお試しください。