Outlook予定表のスケジュールを確認する(Office365連携)

Outlookで管理されている予定表のスケジュールを確認するシナリオを作成します。
このシナリオでは、「検索開始日」と「検索終了日」をユーザーから聞き取り、指定された期間内で所要時間60分の会議ができる会議室を検索します。
※検索結果は最大15件まで取得します。

Office365連携を初めて行う場合は、 こちら をご覧ください。

事前準備

予定表のスケジュールを確認するためには、以下のアクセス許可が必要となります。
STEP1の〔Application Registration Portal〕で登録したアクセス許可に、次の項目が含まれていることを確認してください。

・「予定表のスケジュールを確認」で使用する許可スコープ

名称 説明
Calendars.Read ユーザーのカレンダーの読み取り
Calendars.Read.Shared ユーザーのカレンダーと共有のカレンダーの読み取り(他のユーザー情報は、カレンダーの共有設定がされている必要があります)
MailboxSettings.Read ユーザーのメールボックス設定の読み取り
offline_access ユーザーのデータへの常時アクセス

STEP3. (DialogPlay)Office365のサービスをつかう

シナリオ内で呼び出したいMicrosoft Graph APIを実行させるため、対象となるAPI(実行したい機能)ごとに外部システム連携として設定します。
予定表のスケジュールを確認するシナリオでは3つの外部システム連携が必要となりますので、それぞれ外部システム連携を設定します。

(1) 自身のイベントを取得(複数)
(2) 自身のイベントを取得(1件)
(3) 他人のイベントを取得(複数)

  手順 (1) 自身のイベントを取得(複数)

  1. 左メニューの『チャットボット一覧』より設定を行うチャットボットを選択し、『外部システム連携』タブから ”新規作成”ボタンをクリックしてください。

  2. 『外部システム連携先』に連携先名を入力してください。

  3. 『説明』に連携先の説明文を入力してください。

  4. 『タイプ』から、『Office365』を選択してください。

  5. 『対象API』から、『イベントを取得(複数件)』を選択してください。

  6. 『検索条件』を以下の画像を参考に入力してください。


    検索条件
    ・対象者:対象者の種類を選択
    ・検索開始日時:検索対象にしたい開始日時をYYYY-mm-dd H:m:s形式または変数を入力
    ・検索終了日時:検索対象にしたい終了日時をYYYY-mm-dd H:m:s形式または変数を入力

  7. 保存” ボタンをクリックしてください。

  手順 (2) 自身のイベントを取得(1件)

  1. 左メニューの『チャットボット一覧』より設定を行うチャットボットを選択し、『外部システム連携』タブから “新規作成” ボタンをクリックします。

  2. 『外部システム連携先』に連携先名を入力してください。

  3. 『説明』に連携先の説明文を入力してください。

  4. 『タイプ』から、『Office365』を選択してください。

  5. 『対象API』から、『イベントを取得(1件)』を選択してください。

  6. 『検索条件』を以下の画像を参考に入力してください。


    検索条件
    ・対象者:対象者の種類を選択
    ・イベントID:イベント識別用ID

  7. ResponseMapに「会議室」の項目を追加し、 “保存” ボタンをクリックしてください。
    入力例:
    『変換元』 locations[0].displayName
    『変換先』 会議室

  手順 (3) 他人のイベントを取得(複数)

  1. 左メニューの『チャットボット一覧』より設定を行うチャットボットを選択し、『外部システム連携』タブから ”新規作成”ボタンをクリックしてください。

  2. 『外部システム連携先』に連携先名を入力してください。

  3. 『説明』に連携先の説明文を入力してください。

  4. 『タイプ』から、『Office365』を選択してください。

  5. 『対象API』から、『イベントを取得(複数件)』を選択してください。

  6. 『検索条件』を以下の画像を参考に入力してください。


    検索条件
    ・対象者:対象者の種類を選択
    ・ユーザーID:ユーザーID(Office365内で一意に割り当てられたUUID)または、ユーザー識別名(ユーザーメールアドレス)
    ・検索開始日時:検索対象にしたい開始日時をYYYY-mm-dd H:m:s形式または変数を入力
    ・検索終了日時:検索対象にしたい終了日時をYYYY-mm-dd H:m:s形式または変数を入力

  7. 保存” ボタンをクリックしてください。

STEP4. (DialogPlay)シナリオを追加する

  手順

  1. 左メニューの『チャットボット』から『チャットボット一覧』を選択し、 シナリオを登録したいチャットボットをクリックしてください。

  2. 画面下部にある『連携先設定』に、『アカウント設定』内で作成したOffice365連携先が設定されていることを確認してください。

    ※連携先設定が無効の状態で、外部連携アクション(Office365連携)を含むシナリオを実行した場合、チャットウィンドウに「申し訳ございません。この機能はご使用いただくことができません。」と表示され、正常に作動いたしませんのでご注意ください。

  3. 『シナリオ一覧』から、 “新規作成” ボタンをクリックしてください。

  4. 『シナリオ名』と『ユーザーの発言例』を入力してください。

  5. 『シナリオの流れ』エリアの中にあるリストから『テキスト発言』を選択し、 “アクションを追加” ボタンをクリックしてください。

  6. 『発言内容』入力欄が表示されますので、チャットボットに発言させたい任意のメッセージを入力してください。
    入力例:
    スケジュールを確認します。

  7. 『シナリオの流れ』エリアの中にあるリストから『ヒアリング』を選択して、 “アクションを追加” ボタンをクリックしてください。

  8. 『ヒアリング』内にある『ヒアリング項目』を以下の入力例を参考に入力してください。

    No ヒアリング項目名 タイプ   項目ごとの質問文
    日時 時間表現 @datetime_period いつのスケジュールを確認しますか?(例:今日、明日の13時から17時)
  9. 『シナリオの流れ』エリアの中にあるリストから『Yes/No確認』アクションを追加し、以下の入力例を参考に入力してください。

    タイトル 質問内容
    自分のスケジュールを確認 自分のスケジュールを確認しますか?
  10. 『シナリオの流れ』エリアの中にあるリストから『選択肢確認』アクションを追加し、以下の入力例を参考に入力してください。

    入力例:
    『タイトル』 社員選択
    『質問内容』 スケジュールを確認したい社員を選択してください。
    選択肢
    『表示名』 社員名
    『値』 社員のOffice365登録アドレス

    下部にある下矢印をクリックし、実行条件に『自分のスケジュールを確認』=『いいえ』と設定してください。

    ※外部連携の対象APIにある「ユーザー情報を取得」を利用することで、参加者や会議室の情報を検索することが可能です。詳しい手順については、こちらをご覧ください。

  11. 『シナリオの流れ』エリアの中にあるリストから『外部システム連携』アクションを追加し、『連携先』に『自身のイベントを取得(複数)』を選択してください。
    下部にある下矢印をクリックし、実行条件に『自分のスケジュールを確認』 = 『はい』と設定して下さい。

  12. 『シナリオの流れ』エリアの中にあるリストから『外部システム連携』アクションを追加し、『連携先』に『他人のイベントを取得(複数)』を選択してください。
    下部にある下矢印をクリックし、実行条件に『自分のスケジュールを確認』 = 『いいえ』と設定して下さい。

  13. 『シナリオの流れ』エリアの中にあるリストから『テキスト発言』アクションを追加し、以下の入力例を参考に入力してください。
    入力例: {{日時}}に登録されているスケジュールを表示します。

  14. 『シナリオの流れ』エリアの中にあるリストから『外部連携結果をリスト表示』アクションを追加し、 “アクションを追加” ボタンをクリックしてください。
    ※『外部連携結果をリスト表示』の詳細につきましては、 こちら をご覧ください。

  15. 『外部連携結果をリスト表示』に以下の入力例を参考に入力してください。

    リスト変数名 項目毎の表示内容
    イベントリスト {{start.dateTime}} : {{subject}}
  16. 『シナリオの流れ』エリアの中にあるリストから『Yes/No確認』アクションを追加し、以下の入力例を参考に入力してください。

    タイトル 質問内容
    詳細確認 スケジュールの詳細を確認しますか?
    下部にある下矢印をクリックし、実行条件に『自分のスケジュールを確認』 = 『はい』と設定して下さい。


    ※他のユーザーのイベント情報も同じように「イベントを取得(1件)」を利用すれば取得できます。(ただしAPI実行時の検索条件は変更になります)

  17. 『シナリオの流れ』エリアの中にあるリストから『外部連携結果を選択肢表示』アクションを追加し、以下の入力例を参考に入力してください。
    ※『外部連携結果を選択肢表示』の詳細につきましては、 こちら をご覧ください。

    入力例:
    『タイトル』 スケジュールの選択
    『質問内容』 詳細を確認するスケジュールを選択してください。
    選択肢設定
    『リスト変数名』 イベントリスト
    『項目毎の表示内容』 {{start.dateTime}} {{subject}}
    『項目毎の値』 {{id}}

    下部にある下矢印をクリックし、実行条件に『詳細確認』 = 『はい』と設定して下さい。


  18. 『シナリオの流れ』エリアの中にあるリストから『外部システム連携』アクションを追加し、『連携先』に『自身のイベントを取得(1件)』を選択してください。
    下部にある下矢印をクリックし、実行条件に『詳細確認』 = 『はい』と設定して下さい。

  19. 『シナリオの流れ』エリアの中にあるリストから『テキスト発言』アクションを追加し、以下の入力例を参考に入力してください。
    入力例:
    詳細を表示します。
    会議名:{{タイトル}}
    会議時間:{{開始時間}} - {{終了時間}}
    会議室:{{会議室}}

    下部にある下矢印をクリックし、実行条件に『詳細確認』=『はい』と設定してください。



  20. 保存” ボタンをクリックしてください。

  21. 「学習データが更新されています。反映するには学習ボタンを押してください。」というメッセージが表示されますので、 “保存してチャットボットを学習” ボタンをクリックしてください。

※今回のものは、あくまでサンプルで他にも利用できる項目が用意されています。詳細は〔 Office365 Graph API 〕のリファレンスをご覧ください。

STEP5. (DialogPlay)チャットボットとしゃべる

『シミュレーター』機能で動作を確認してください。
Office365へのサインインを促すメッセージが表示されますので、URLをクリックし、Office365にサインインしてください。
※詳しい手順は こちら をごらんください。



Last updated on 2018/12/11.