✔以下のような方におすすめの記事です
「SlackでのWebhook発行方法が知りたい」
「Webhookを活用して何ができるのだろうか?」
「Webhookを活用したアプリ開発のコード例が見てみたい」
✔当記事でお伝えする内容はこちら
- SlackでWebhookを発行する手順
- curlを使ったテキスト送信例
- Google Apps Scriptでのコード実例
当記事では、SlackでWebhookを発行するだけでなく、実際にテキストを送信した際のコード例まで公開・解説しています。
ぜひ最後までご覧ください。
SlackでWebhook URLを発行する手順
SlackでWebhook URLを発行する手順はこちらです。
- incoming webhookの発行サイトへアクセス
- 発行したいチャンネルのあるワークスペースを選択
- 対象のチャンネルにWebhookのインテグレーションを追加
- Webhook URLを取得
Slackのincoming webhookの発行サイトへアクセス
以下のSlack公式サイトへアクセスし、先へ進みます。
対象のワークスペースを選択
発行したいチャンネルのあるワークスペースを選択しましょう。
Incoming Webhook インテグレーションの追加
チャンネルを選択し、「Incoming Webhook インテグレーションの追加」をクリックします。
Webhook URLを取得
Webhook URLが表示されるので、コピーしましょう。
CURLでテキストを飛ばしてみる
ターミナルからCURLコマンドでテキストを飛ばしてみましょう。
curl -X POST --data-urlencode "payload={\"channel\": \"#チャンネル名\", \"username\": \"webhookbot\", \"text\": \"ここにテキスト\", \"icon_emoji\": \":ghost:\"}" https://hooks.slack.com/services/xxxxxx/WebhookURLを入れましょう
「チャンネル名」の箇所を今回設定したチャンネル名に設定しよう。
「ここにテキスト」の箇所に、任意のテキストを入れましょう。
実行後、「ok」という文字が返ってくれば問題ありません。
slackを見てみると、以下のとおり。
Google Apps Script(GAS)でテキストを送信する
Google Apps Scriptで、テキストを送信するアプリを作りました。
実際にSlackへテキストを飛ばすコードはこちらです。
const slack_endpoint = ScriptProperties.getProperty('SLACK_WEBHOOK');
function toSlack(msg) {
const payload = {
"channel": "#チャンネル名",
"username": "任意のボット名",
"text": msg,
"icon_emoji": ":ghost:"
}
const options = {
"method": "post",
"payload": JSON.stringify(payload)
}
var response = UrlFetchApp.fetch(slack_endpoint, options);
Logger.log(response); //成功するとokが返ってくる
}
SLACK_WEBHOOKという名前で、スクリプトプロパティにURLを保存しています。
チャンネル名やボット名には、お好きなものを入れてください。
GASを活用することで、時間によるトリガーやほかのGoogleアプリケーションとの連携が可能になるでしょう。
アプリ開発実例
以下のようなアプリの作り方やコードを公開しています。
SlackのWebhookと連携することで、さまざまなことが可能になるでしょう。
- ChatGPT搭載のLINEボットGASアプリ
- スプレッドシートと連携するChatGPT・GASアプリ
- カレンダーの予定をLINEへ通知するGASアプリ
- NotionのタスクをLINEへ通知するGASアプリ
- Googleフォームの値を受け取り、メールで送信するGASアプリ
ChatGPT搭載のLINEボットGASアプリ
LINEにメッセージを送るとChatGPTが答えてくれます。
スプレッドシートと連携するChatGPT・GASアプリ
ChatGPTの回答をスプレッドシートへ出力します。
Googleカレンダーの予定をLINEへ通知するGASアプリ
GoogleカレンダーとGAS、LINEを連携したアプリケーションです。
NotionのタスクをLINEへ通知するGASアプリ
Notion APIと連携する方法を詳しく解説しています。
Googleフォームの値を受け取り、メールで送信するGASアプリ
Googleフォームの値を任意のメールアドレスへ送信するアプリケーションです。
ほかにもさまざまなアプリ開発やそのコードをご紹介しています。
ぜひいろいろとご覧ください。