【Slack】これなら簡単!Webhookでメッセージ送信するまでの3ステップ

みなさんこんにちは!

フリーランスプログラマーのsatoです。

最近ではメッセンジャーとしてSlackを活用している会社が増えてきましたね。

私も数ヶ月前から使い始めましたが…

なかなか使い勝手が独特なため、使いこなすのに苦戦しました 笑

そんなSlackですが、APIを使用すればいろいろと自動化が可能です。

今回はその中でも特にシンプルに扱えるWebhooksに着目してみてみましょう。

[基本]Webhooksでなにができるの?
[基本]Webhooksを使うまでの3ステップ
[応用]GASからメッセージを送ってみよう!
[応用]botを作ってみよう!

Webhooksでなにができるの?

Webhooksで出来ることは「HTTPリクエストを使用した、外部サービスからSlackへのメッセージ送受信」です。

非常に簡単に「HTTP通信だけでメッセージ送受信」が行えます。

例えば、予定の管理システムと組み合わせて使えば、今日の予定をSlackでメッセージとして飛ばすと、いったことも簡単に実現可能なわけですね!

Webhooksの種類

Webhooksには2つの種類があります。

「Incoming Webhook(着信Web フック)」「Outgoing WebHooks(発信Webフック)」です。

それぞれ以下のような違いがあります。

「Incoming Webhook(着信Web フック)」・・・Slackへメッセージを送るための仕組み
「Outgoing WebHooks(発信Webフック)」・・・プログラム上で、Slackからメッセージを受け取るための仕組み

つまり「Incoming Webhook」は、メッセージ表示のため。

そして「Outgoing WebHooks」は、Slack上での発言を取得して、プログラム上で取得・分析するために使用されるわけですね!

Webhooksでメッセージ送信を行うまでの3ステップ

まずはシンプルに「Incoming Webhook(着信Web フック)」メッセージを表示する例を見ていきましょう。

流れは簡単です。

ステップ1: アプリケーションの管理画面を開こう
ステップ2: 部屋を選択してURLを取得しよう
ステップ3: メッセージを投げてみよう

管理画面を開き、URLを取得し、HTTP通信を実行する。

これだけです。

ステップ1: アプリケーションの管理画面を開こう

https://ワークスペース名.slack.com/apps

まず上記画面を開きましょう。

※URLのワークスペース名だけ各自の環境に変更お願いします。

これはSlackのアプリケーションの管理画面です。

そして検索窓に「incoming webhooks」と入力し、検索しましょう。

「incoming webhooks」がメッセージ送信用のWebhookです。

「着信Web フック」が見つかったらそれを選択しましょう。

無事見つかりましたね!

ステップ2: 部屋を選択してURLを取得しよう!

先ほどの画面で「設定を追加」ボタンを押してください。

こんな画面が確認出来るはずです。

画面赤枠部分でメッセージを送る対象のチャンネルを選びましょう。

選んだら「インテグレーションの追加」ボタンを押しましょう。

そうしたら、設定画面が開くはずです。

画像の赤枠部分が、Webhooksで使用するURLとなるため、メモしておきましょう。

また、チャンネル設定や、届く際の名称、アイコン画像などもこのページから変更できます。

ステップ3: メッセージを投げてみよう

では早速メッセージを投げてみましょうか。

単純に「test_message」というメッセージを送信するだけのことをしてみましょう。

また今回はMacのや、linux環境のターミナルから投げることにしましょうか。

※コマンドのURL部分は、先ほど取得したURLい変更おねがいします。

うまくいったのならば、画像のようにSlackへメッセージが届くはずです。

やりましたね!

GASからメッセージを送ってみよう!

ここまででメッセージを投げられるようになりましたね!

しかし、手動で投げるだけでは役立ちません…

手っ取り早い自動化の方法として、GASで実行する方法も学んでおきましょう。

GASとは?

GASとは「Google Apps Script」の略で、Googleのアカウントがあれば使用できる、非常に簡単なスクリプトです。

GASを使えば特定の時間になったら実行するなんてことも非常に簡単に行えますよ!

なにはともあれGASのスクリプト入力画面を開いてみましょう。

わからない人はこちらを参考にしてみてください。

【Google Apps Scriptとは?】初心者こそ始めるべきその理由を徹底解説!
更新日 : 2019年4月2日

送信を行ってみよう!

では以下のプログラムを入力して実行してみましょう!

URLの部分だけ、自分のWebhooksのURLにしましょうね!

そして実行すると…

ちゃんと表示できましたね!

せっかくなのでおみくじでも作ってみよう!

せっかくなので、ランダムで運勢が出るプログラムでも入れてみましょう。

これだけで、ランダムな結果が送信できます!

例えばこれを、時限式にして毎朝飛ぶようにすれば、毎朝運勢メッセージが飛んでくる…

なんて面白いプログラムも組めますね!

※時間起動設定は、GASの変数画面のメニュー「編集→現在のプロジェクトのトリガー」から行えます。

受信を行ってBotを作ってみよう!

正直「Incoming Webhook(着信Web フック)」だけでもある程度の物は作れてしまいます。

しかし、「Slack上でユーザーが入力したメッセージに反応して、なにかしらの処理を実行する」。

そんな高度なBotを作るには「Outgoing WebHooks(発信Webフック)」の実装が必要です。

それを使用しBotを作成するまでの道のりを、以下記事にまとめておきました。

ぜひ実践してみてください。

【Slack】一番楽なBotの作り方!メッセージ送信・受信するBotを作ろう
更新日 : 2018年10月2日

まとめ

今回は非常に簡単に、Webhooksの使い方を見てきました。

ステップ1: アプリケーションの管理画面を開こう
ステップ2: 部屋を選択してURLを取得しよう
ステップ3: メッセージを投げてみよう

この3ステップを行うだけで、メッセージを投げられるなんて非常に簡単ですね!

ぜひ参考にしてみてください!

業務効率化などに役立てられれば幸いです。

おすすめのコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

「何の言語から勉強すればいいかわからない・・・」そんなあなたに質問に答えていくだけで、何の言語を学べば良いのか診断いたします!未経験から6ヶ月でプログラミング習得に向けた学習プランが1分で分かる!

最短でプログラミングを習得したい方へ

元々ITリテラシーのある方やプログラムの学び方がわかっている方は独学で習得することも可能でしょう。

ただし、実際の学習期間中はつまづいている時間がほとんどです。

「もう挫折したくない」
「本業と両立しながら、好きな時間で自分のペースで勉強を続けていきたい。」
「自分だけのカリキュラムで効率的に勉強したい」

そんな方はお気軽に侍エンジニア塾までご相談ください。

弊社では、

  • プログラミング基礎学習
  • オリジナルアプリ開発
  • 仕事獲得

までをひと通り学習できます。

まずは無料体験レッスンで、弊社のコンサルタントと一緒にあなた専用の学習方法やカリキュラムを考えてみませんか?

挫折しない学び方や、通常1000時間以上かかる学習時間を1/3にする方法などより具体的なアドバイスもさせていただいています。

詳しくは下の画像をクリックして弊社サービス内容をご確認ください。

cta1

非常識な結果を出す卒業生多数!

エンジニアキャリア戦略

人気記事セレクション

3000名以上来場の人気セミナーが開催決定

18歳で時給6000円だった侍エンジニア塾代表の木内より、『プログラミングで人生を変える』ための学習方法をお教えます。

0からプログラミングを習得し、フリーランスエンジニアになる方法プログラミング学習の効率を劇的に上げる学習メソッドを解説しますので、奮ってご参加ください。

  • 日付:4/20(土),4/27(土)
  • 時間:14:00〜17:35終了予定
  • 場所:当社 道玄坂オフィス
  • 住所:〒150-0043 東京都渋谷区道玄坂2丁目11-1 Gスクエア渋谷道玄坂 4F *Googleマップでは「東京都渋谷区道玄坂2丁目11-1」で検索してください。近隣にスクエア渋谷という別のビルがあるためご留意ください。
  • 参加費:無料
  • URL:https://seminar.sejuku.net/
詳しくは下の画像をクリックして弊社セミナー内容をご確認ください。

LINEで送る
Pocket

この記事が気に入ったら
いいね!をしてフォローしよう

最新情報をお届けします

書いた人

sato

sato

学生時代を含めると、かれこれ10年以上プログラマーとして過ごしています。
様々な言語や環境、プロジェクトに関わってきましたので、より実践的な記事をみなさんにお届きるよう情報発信していきます!