Logic Apps使ってSlackへメッセージ投稿する方法

Azure,Logic Apps

Azure Logic Apps(ロジックアプリ)を使ってSlackへメッセージ投稿する手順の紹介です。

Logic AppsではSlackのコネクタが用意されています。
ワークフロー内でメッセージ投稿などのアクションが実行できます。
Slackへの接続の作成からメッセージ投稿までの手順を紹介しています。

※従量課金(マルチテナント)の環境を利用しています。
※本記事内ではロジックアプリ(Azure Logic Apps)をLogic Appsとして表記しています。

スポンサーリンク

Slackへメッセージ投稿するワークフローを作成

Slackのコネクタ

Logic AppsにはSlackのコネクタがあります。
従量課金(シングルテナント)、Standard(マルチテナント)どちらのプランでも利用できます。

Slack

メッセージの投稿、チャネルの作成や一覧表示などのアクションが準備されています。

ワークフロー

Requestのトリガーで取得したmessageをSlackにメッセージ投稿するワークフローを作成します。
ワークフロー作成に合わせて、Slackへの接続も作成します。

こちらの記事でLogic Apps自体のリソース作成手順については紹介しています。
トリガーやアクションの概要についてもこちらで紹介しています。

トリガーの作成

トリガーを作成します。
Slackへ投稿するmessageを渡すトリガーとしてRequestを利用します。
サンプルペイロードはmessageを渡すだけの簡単なものとしています。

トリガーの作成
トリガーの追加でRequestコネクタを選択します。
トリガーにはWhen a HTTP request is receivedを使用します。
サンプルペイロードを設定し完了を選択します。
スキーマとHTTP POST URLが生成されます。
Azure Logic Apps のトリガー選択画面(Requestトリガーを選択)
Azure Logic Apps Requestトリガー選択(HTTP request選択)
Azure Logic Apps のRequestトリガーサンプルペイロード設定
サンプルペイロード設定

サンプルペイロード

{
  “message": “slackに表示する文字列"
}
Azure Logic Apps のRequestトリガースキーマ生成後画面

Slackへの接続作成

Logic AppsでSlackへの接続を作成します。
ワークフロー内でSlackのアクションを追加します。
アクション追加時に接続を作成します。

※Slack側でアプリケーション追加が必要になります。

Slackへの接続作成
アクションの追加でSlackコネクタを検索、表示します。
アクションの一覧からメッセージの投稿(V2)を選択します。
Azure Logic Apps のSlackアクション
Azure Logic Apps のSlackアクション一覧画面
接続の作成が表示されます。
Slackへサインインして新しい接続を作成します。
Azure Logic AppsでSlackへの接続を作成
Slackのサインイン画面が表示されます。
メッセージ投稿するSlackのワークスペースへサインインします。
Slackへサインインするワークスペースを選択
Slackへのサインイン画面
Slack側のアプリ承認画面が表示されます。
Microsoft Azure Logic Appsがワークスペースへのアクセス権限をリクエストします。
リクエストを許可します。
これでLogic AppsからSlackへの接続作成は完了です。
Azure Logic AppsのSlackワークスペースアクセス権限リクエスト画面

Slackへメッセージ投稿するアクション設定

メッセージを投稿するアクションを設定します。
投稿するチャネル名とメッセージテキストを設定します。

メッセージの投稿アクション設定
チャネル名とメッセージテキストを設定します。
メッセージ投稿に関連した設定が、詳細パラメーターとして選択できるようになっています。
Azure Logic AppsのSlackアクションでメッセージの投稿(V2)設定画面
Azure Logic AppsのSlackアクションでメッセージの投稿(V2)設定画面(詳細パラメーター)
generalというチャネルにトリガー(Request)で取得したmessageを名とメッセージテキストとして投稿するようにします。 Azure Logic Apps Slackアクションのメッセージ投稿例画面
ワークフローを保存します。 Azure Logic Apps設定完了ワークスフロー画面(Slackメッセージ投稿の例)

ワークフローを実行してSlackへメッセージ投稿

ワークフローを実行してSlackへのメッセージ投稿を確認します。

 
ペイロードで実行を選択します。
ペイロードを設定します。
投稿メッセージは”slackのメッセージ投稿テスト”としています。
Azure Logic Appsでペイロード実行を選択する
Azure Logic Appsでペイロード実行で本文設定例画面
実行履歴を確認します。
ワークフローが正常完了している事が分かります。
Slackの設定したチャネルへメッセージ投稿されている事が確認できました。
Azure Logic Appsワークフロー正常終了画面(Slackメッセージ投稿)
Azure Logic AppsからSlackへメッセージ投稿した例

Slackでのアプリ管理設定

Slack側でのアプリ設定を確認します。

アプリ管理設定
接続の作成にはSlack側でアプリの承認が必要になります。
この部分の設定を確認し、必要に応じてSlackの管理者に承認をお願いするようにします。
Slackのアプリ管理設定(アプリの承認)
Logic AppsとSlack接続設定が完了するとインストールされたアプリに表示されます。 Slackのアプリ管理設定(インストールされたアプリ)

最後に

今回はLogic AppsのSlackコネクタの使い方について確認してみました。
シンプルなmessage通知例に紹介していますが、取得する内容を変える事で色々な事をSlackに通知できます。
例えば、Azure Monitorのアラート通知をSlackにメッセージ投稿するといった事も可能です。

引き続き色々試してみたいと思います。

Logic AppsのワークフローでSendGridを利用してメール送信する事もできます。
設定方法についてはこちらで紹介しています。

スポンサーリンク