Slide 1

Slide 1 text

おうじゃさんといっしょ ハンズオン企画 Alexaで365スケジュール読み上げ機能を Automateで作る

Slide 2

Slide 2 text

Miyake Mito https://www.icsoft.jp/ @MiTo60448639 https://qiita.com/MiyakeMito 最近ずっとMVP

Slide 3

Slide 3 text

アジェンダ Alexa で Exchange Online のスケジュールを 読み上げる スキル を みんなで作ろう! 一人も脱落させないからね!

Slide 4

Slide 4 text

本日の内容 ■ Alexaで365スケジュール読み上げ機能をAutomateで作る https://qiita.com/MiyakeMito/items/76024fb14f6ebf148643 マークのところは上記記事を参照です

Slide 5

Slide 5 text

しくみ ① Alexaスキルを作成し、AutomateへリクエストをPosting ② Automateフローでカレンダスケジュールを取得 ③ スキルに取得したスケジュールを読み上げるよう応答

Slide 6

Slide 6 text

ALEXA スキル を作成する

Slide 7

Slide 7 text

Alexa スキル? Alexaとは Echo などの Amazonスマートスピーカーとユーザーとの間を取り持つエンジン Alexaスキル そのAlexaが提供するさまざまな機能 おすすめのスキル ・「Alexa、NHKニュース 開いて」 ・「Alexa、ビストロミュージック 開いて」 ・「Alexa、快眠アシスト 開いて」 ・・・etc.

Slide 8

Slide 8 text

Alexa スキルを作ろう! ① Amazon 開発者アカウントを作成する https://developer.amazon.com/alexa/console/ask/ ② スキルの作成 カスタム - ユーザー定義のプロビショニング- スクラッチで作成 ③ スキルの設定 スキルの呼び出し名 ④ 保存してビルド

Slide 9

Slide 9 text

POWER AUTOMATE でスケジュールを取得

Slide 10

Slide 10 text

Alexaとの送受信部分を作ろう! ① HTTP要求の受信時 要求本文のJSONスキーマ ② 応答 ヘッダー 本文 ③ HTTP POST の URLをAlexaスキルの エンドポイントに貼付け “HTTPS” を選択 “証明機関が発行したワイルドカード証明書を~” を選択

Slide 11

Slide 11 text

Alexaとの送受信をテストしよう! ① Alexaシミュレータ ステージを「開発中」に変更 要求本文のJSONスキーマ ② スキルの呼び出し名を入力すると・・・

Slide 12

Slide 12 text

ここで Automate の設定変更 設定 ⇒すべての Power Automate 設定を表示 試験的な機能 をオン

Slide 13

Slide 13 text

スケジュールを取得しよう! ① イベントのカレンダービューの取得(v3) カレンダーID:予定表 開始時刻:utcNow() 終了時刻:addDays(utcNow(),1) 並び替え順:start/dateTime

Slide 14

Slide 14 text

データを整形しよう、の前に!! Apply to each は極力撲滅! ・・・遅いからね

Slide 15

Slide 15 text

データを整形しよう、の前に!! JSON配列の 全レコードから特定のカラム を取得する場合は 選択 ⇒ 結合 [開始]に含まれるカラムは item()?[‘カラム名’] で取得できる

Slide 16

Slide 16 text

データを整形しよう、の前に!! JSON配列の 特定のレコードから特定のカラム を取得する場合は JSON解析してKeyを指定する

Slide 17

Slide 17 text

データを整形しよう、の前に!! https://lab.syncer.jp/Tool/JSON-Viewer/ で解析して「Path」 object[2]['subject'] outputs(‘Action')?['value']? triggerBody()?['events']? [2]?['subject'] OR

Slide 18

Slide 18 text

データを整形しよう! ① 選択 開始:イベントカレンダービューの取得の「Value」 マップ左:イベントカレンダービューの「開始時刻」※要編集 マップ右:イベントカレンダービューの取得の「件名」 ② 参加(結合) 結合する配列:①選択の出力 次を使用して結合:と ③ 応答を修正 本文:[結合の出力]を、②結合の出力

Slide 19

Slide 19 text

注意!! Alexaスキルとの通信部分は 有償ライセンスが必要です 期限なし無償の学習/開発用(個人向けプラン)がおすすめ Power Apps Community Plan https://powerapps.microsoft.com/ja-jp

Slide 20

Slide 20 text

まとめ Alexa スキル と Power Automate の 組み合わせは強力です! ぜひ便利なスキルを作ってください

Slide 21

Slide 21 text

ありがとうございました