Webhookを使った通知
株式会社テイクーワン T.Hです。
何かの通知をしたい時に外部に送信可能なメールサーバがなくて困ったことはありませんか?
今回はHTTP通信で外部にメッセージを送信できるWebhookを紹介します。
Webhook とは
Webhookとは、特定のイベントが発生したときに特定の処理を実行し、HTTPを用いてメッセージを送信する仕組みです。
この仕組みを利用することで、定期的に備忘通知を送信したり、ちょっとした監視通知に使うことができます。
Webhook URLの準備
Webhookに対応しているサービスは複数ありますが、今回はSlackで環境を準備します。
アプリケーションの追加から「webhook」等で検索し、「Incoming WebHooks」を追加します。
メッセージが投稿されるチャンネルを選択します。
追加が完了すると、Webhook URLが生成されます。
メッセージを送信してみる。
curl コマンドを使ってメッセージを送信してみます。
以下のようにtextに送信したいメッセージを入力し、生成されたWebhook URL宛をしていしてコマンドを実行します。
curl -X POST \
--data-urlencode 'payload={"text": "通知テスト"}' https://hooks.slack.com/services/XXXXXXXXXX
Slackアプリでメッセージを確認してみます。
以下のようにメッセージが届けば成功です。
おわりに
今回は簡単なメッセージを送信しただけですが、cronでシェルスクリプトを定期的に実行するようにすれば、定例会議前の通知や報告書の提出日の備忘通知などに活用することや、コマンド実行の応答コードを使って簡易的な監視システムのような使い方も可能なので、活用してもらえればと思います。