Slackにメッセージを送信する
最終更新日: 2022年8月12日
アドオンギャラリー「掲示板」を題材にします。掲示板の書き込みのタイミングで、Slackにメッセージを送ります。
登録のタイミングにブロックを配置します。「外部連携」ブロック群から「Slack」ブロックを選びます。
送信メッセージは任意の文字列を用意できます。ここでは掲示板のタイトルと作成者を含めた文言を用意します。
Slackブロックの右クリックメニューで「外部入力」を選び、ブロックの形を変えました。「URL」のパラメータに Slack で作成した "Webhook" の URL を設定します。Webhook は次節で説明します。
Slack側で作成したWebhookのURLを設定します。
このブロックはステータスコードを返します。"200" でなければ何らかのエラーです。そこで「ステータス」という変数を用意し、ブロックから受け取ります。ステータスが200でない場合は、送信エラーの警告メッセージを画面に出力するようにしました。
同じように更新のタイミングでもスクリプトを用意します。更新用のメッセージに修正していますが、基本的な処理は(登録時と)同じです。
Slackのアカウントはすでに取得済み、とします。(Slackアカウントの取得方法や、Slackの基本的な使い方の説明は割愛します。)
ここでは "Bot" というアプリケーション形式を使います。特定のチャンネルに対して Wagby からメッセージを送信します。
開発者は次の設定を行います。
以降の説明では
HTTP POST 通信が行えるクライアントを使ってテストすることができます。(例 VSCode の Thunder Clientなど)
送信が成功すると、Slackのチャンネルにメッセージが表示されます。
Slackメッセージ送信ブロック
更新タイミングのスクリプト
Slackの設定 (Botの作成)
Jasmine Dev Space
というワークスペースを使います。このワークスペースに#dev
というチャンネルを用意しています。このワークスペースとチャンネルの名前を、ご自身のSlack環境にあわせて適当に読み替えてください。
テスト
URL https://hooks.slack.com/services/T02U... (略)
HTTPヘッダ Content-Type: application/json
を付与する。
ボディ { "text" : "(任意)" }
とする。例 { "text" : "こんにちは、Slack!" }