Microsoft 365 管理センター上で配信されている”サービス正常性”のメッセージを取得し、日本語に訳したうえでTeamsにメッセージを投稿する方法をご紹介します。
この記事はシリーズ化しており、前回は事前準備編として、フロー作成に必要なライセンス等をまとめていますので、そちらもぜひご参照ください。
フローの全体像
フローの全体像は以下のとおりです。
Apply to eachの中身は以下のとおりです。
今回はApply to eachの手前の「変数を初期化する」部分までのフローについて記載します。
早速、フローの作成方法についてご紹介していきます。
データを取得する
まずは、前回作成したアプリを使って、サービス正常性のデータを取得します。
今回は「インスタント クラウド フロー」から手動で実行するフローを作成する例を記載します。
1.Power Automate画面を開き、左ペインより[作成]>[インスタント クラウド フロー]をクリックします。
※後の手順でAI Builderを用いて翻訳するアクションを組むので、フローを作成する環境が事前準備編で作成した米国リージョンの環境であることを確認します
2.[インスタント クラウド フローを構築する]というポップアップ画面にて、[手動でフローをトリガーします]を選択し、[作成]をクリックします。
3.フロー作成画面に遷移後、[手動でフローをトリガーします]が追加されていることを確認し、[+新しいステップ]をクリックします。
4.[操作を選択してください]画面にて、[プレミアム]タブを選択し、検索バーに[http]と入力し、一覧に表示された[HTTP]をクリックします。
※プレミアムコネクタを利用します
5.[HTTP]画面に遷移後、[HTTP]アクションをクリックします。
6.[HTTP]画面にて、以下の内容で設定します。
- 方法:GET
- URI:https://graph.microsoft.com/v1.0/admin/serviceAnnouncement/issues
- クエリ(キーの入力):$filter
- クエリ(値の入力):isResolved eq false
※今回は、オープン中のインシデントのみ抽出するようフィルタ設定してみました
7.[詳細オプションを表示する]をクリックして展開します。
8.[認証]にて、[Active Directory OAuth]を選択します。
※選択後、表示項目が増えます
9.追加表示された各項目にて、以下の内容で設定します。
- テナント:Azure ADにて確認
- 対象ユーザー:https://graph.microsoft.com
- クライアントID:Azure ADにて確認
- 資格情報の種類:シークレット
- シークレット:Azure ADにて確認
▽Azure ADでの確認箇所は以下の部分です。
シークレットの値については、アプリ登録時に控えておいた値を入力します。
⇒後から確認しようとしても、値の一部がマスクされてしまうので要注意です!
10.一度設定を保存します。
フローのテストを実行する
ここで一度フローがうまく組めているかの確認および次の手順で必要になるため、テストを実行してみます。
1.画面右上の[テスト]をクリックします。
2.表示されたポップアップ画面に沿って、テストを実行します。
3.実行後、[フロー実行ページ]をクリックします。
4.テストが成功していることを確認し、開始時刻部分をクリックします。
JSONの解析を行う
続いて、テストフロー実行後に出力されたデータを使って、データを加工していきます。
1.[出力]データにて、[本文]のデータをすべてコピーします。
2.フローの編集画面に戻り、[+新しいステップ]をクリックします。
3.[操作を選択してください]画面の検索バーに「json」と入力し、下に表示された[JSONの解析]アクションを選択します。
4.[JSONの解析]アクションにて、[コンテンツ]の入力欄をクリックし、右側に表示されたポップアップにて、[本文]を選択します。
5.[サンプルから生成]をクリックします。
6.手順1にてコピーしたデータを、[サンプル JSON ペイロードの挿入]画面の入力欄に貼り付け、[完了]をクリックします。
7.[スキーマ]に加工したデータが表示されることを確認します。
変数を初期化する
1.[+新しいステップ]をクリックします。
2.[操作を選択してください]画面の検索バーに「変数を初期化」と入力し、一覧に表示された[変数を初期化する]アクションを選択します。
3.[変数を初期化する]アクションにて、任意の変数名を入力し、[種類]にて、[アレイ]を選択します。
※変数名は任意ですが、今回は「contentList」にしました
おわりに
本記事では、AI Builderを用いてMicrosoft 365インシデント情報を翻訳投稿するフローのうち、”サービス正常性”のメッセージを取得する部分までを実装しました。
次回は、取得した情報を翻訳し、Teamsに投稿するまでの部分を構築していきたいと思います。お楽しみに!