5
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Oita Creative Academy 2019Advent Calendar 2019

Day 8

Slack WebHookを使ってみる

Last updated at Posted at 2019-12-07

#目標:Webページ上からSlackにメッセージを送信する
Slackにメッセージを送信することができる、SlackのWebHookを使ってみます。

##準備
ワークスペースを作成していない場合は、新規作成してください。
https://slack.com/create
1.png
ワークスペースを作成

2.png チャンネルを作成 3.png 後で 4.png ここでは例としてnotificationチャンネル 5.png 6.png ⚙マークを押した後、アプリを追加するをクリック 7.png 8.png アプリを管理する 9.png Start Building 10.png AppName、ワークスペースを指定 11.png CreateApp 12.png Incoming Webhooks 13.png On 14.png チャンネルを選択 15.png 許可する 16.png 時が満ちました。

##Slackにメッセージを送信する
17.png
Sample curl request to post to a channel:
にあるコードをコピーして、Terminalにペーストすると、Slackにメッセージを飛ばせます。

##Webページ上からSlackにメッセージを送信する
適当なhtmlファイルを作って、Webブラウザで開いてPOSTしてみます。
18.png

index.html
<!DOCTYPE html>
    <head>
        <title>NotificationTest</title>
        <script src="https://code.jquery.com/jquery-3.3.1.js"></script>
    </head>
    <body>
        <input id="message" type="text">
        <button type="button">submit</button>
        
        <script>
            $('button').click(function() {
                $.ajax({
                    type: "POST",
                    url: "https://hooks.slack.com/services/XXXX/XXXX", // Webhook URL を適宜書き換え
                    data: '{"text":"' + $('#message').val() +'"}',
                    success: alert('success'),
                    dataType: 'json'
                });
            });
        </script>
    </body>
</html>

メールではなく、Slackに通知を飛ばしたくなることはよくあるので、覚えておくと今後役に立つでしょう。

5
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
5
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?