空き会議日時を検索する(Office 365連携)

会議室空き日時の検索を行うシナリオを作成します。
※検索結果は最大15件まで取得可能です。

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

事前準備

会議室空きの検索を行うためには、以下のアクセス許可が必要となります。
STEP1の〔Application Registration Portal〕で登録したアクセス許可に、次の項目が含まれていることを確認してください。

[「空き会議日時の検索」で使用する許可スコープ]

名称 説明
Calendars.Read.Shared ユーザーのカレンダーと共有カレンダーの読み取り
MailboxSettings.Read ユーザーのメールボックス設定の読み取り
offline_access ユーザーのデータへの常時アクセス
User.ReadBasic.All
全てのユーザーの基本プロファイルの読み取り
※他のユーザーの情報は「表示名」「姓」「名」「ユーザー識別名」のみ取得可能

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

シナリオ内で呼び出したいMicrosoft Graph APIを実行させるため、対象となるAPI(実行したい機能)ごとに外部システム連携として設定します。

  手順

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

  3. 『説明』に連携先の説明文を入力してください。
  4. 『タイプ』から、「Office 365」を選択してください。

  5. 『対象API』から、「空き会議日時の検索」を選択してください。
  6. 『検索条件』に以下の例を参考に、各項目を入力してください。

    [シナリオ例]
    「検索開始日」と「検索終了日」をユーザーから聞き取り、指定された期間内で所要時間60分の会議ができる会議室を検索します。
    ※最大15件まで検索結果として返します。


    [検索条件]
    名称 説明
    検索開始日時 検索対象にしたい開始日時をYYYY-mm-dd H:m:s形式または変数を入力
    検索終了日時 検索対象にしたい終了日時をYYYY-mm-dd H:m:s形式または変数を入力
    所要時間 所要時間(分)を数字または変数を入力
    検索時間指定
    検索に指定する条件を選択
    制限なし:制限を設けずに空き時間を検索する
    予定表オプションの稼働時間内で検索(指定した曜日のみから検索):
     Outlookの予定表オプションで指定した稼働時間内且つ稼働日(指定曜日)から検索する
    予定表オプションの稼働時間内で検索(全ての曜日から検索):
     Outlookの予定表オプションで指定した稼働時間内且つ全稼働日(全ての曜日)から検索する
    会議室
    Office 365で設定した会議室識別用メールアドレスまたは変数を入力
    (変数には辞書型や辞書型が格納された配列を指定することが可能)
    参加者名
    Office 365で設定したユーザー識別用メールアドレスまたは変数を入力
    (変数には辞書型や辞書型が格納された配列を指定することが可能)

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

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

  手順

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

  2. 『連携先設定』にて『Office 365連携を行う』にチェックが入り、『連携先』が設定されていることを確認してください。

    ※連携先設定が未設定の状態で、Office 365連携を利用したシナリオを実行した場合、チャットウィンドウに「Office 365連携先が設定されていない為、この機能はご使用いただくことができません。」と表示され、外部連携アクションは正常に動作しません。

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

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

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

  6. 『発言内容』に、チャットボットに発言させたい任意のメッセージを入力してください。

    [入力例]
    会議室の空き状況をお調べします。
    1時間単位に空き時間を探します。
    
  7. 『シナリオの流れ』エリアの中にあるリストから「ヒアリング」を選択し、”アクションを追加“ボタンをクリックしてください。

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

    [入力例]
    No ヒアリング項目名 タイプ   ユーザーへの質問文
    検索日時 時間表現 @datetime_period 何時から会議室を利用したいですか?(例:「明日の午後」「明後日の14時から17時」)
  9. 『シナリオの流れ』エリアの中にあるリストから「選択肢確認」を選択し、”アクションを追加“ボタンをクリックしてください。

  10. 『選択肢確認』に以下の例を参考に、各項目を入力してください。

    [入力例]
    『タイトル』 会議室選択
    『質問内容』 予約する会議室を選んでください。

    [選択肢入力例]
    『表示名』  会議室名
    『値』    会議室のOffice 365登録アドレス
  11. 『シナリオの流れ』エリアの中にあるリストから「選択肢確認」を選択し、”アクションを追加“ボタンをクリックしてください。

  12. 『選択肢確認』に以下の例を参考に、各項目を入力してください。
    ※「ユーザー情報を検索(複数件)」を利用することで、参加者や会議室の情報を検索することが可能です。詳しい手順については、 こちら をご覧ください。

    [入力例]
    『タイトル』 参加者選択
    『質問内容』 会議の参加者を選択してください。

    [選択肢入力例]
    『表示名』  参加者名
    『値』    参加者のOffice 365登録アドレス
  13. 『シナリオの流れ』エリアの中にあるリストから「外部システム連携」を選択し、”アクションを追加“ボタンをクリックしてください。

  14. 『連携先』にSTEP3で作成した「空き会議日時の検索」を選択してください。

  15. 『シナリオの流れ』エリアの中にあるリストから「テキスト発言」アクションを追加し、以下の例を参考に入力してください。

    [入力例]
    空き会議室の情報を表示します。

  16. 『シナリオの流れ』エリアの中にあるリストから「外部連携結果をリスト表示」を選択し、”アクションを追加“ボタンをクリックしてください。

  17. 『外部連携結果をリスト表示』に以下の例を参考に各項目を入力し、”保存“ボタンをクリックしてください。

    [入力例]
    リスト変数名 項目毎の表示内容
    会議時間リスト {{meetingTimeSlot.start.dateTime}} - {{meetingTimeSlot.end.dateTime}}
  18. 「学習データが更新されています。反映するには学習ボタンを押してください。」というメッセージが表示されますので、”保存してチャットボットを学習“ボタンをクリックしてください。

    ※ 今回の手順はあくまで一例であり、他にも利用できる項目が用意されています。詳細は〔 Office 365 Graph API 〕のリファレンスをご覧ください。

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

  手順

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

[シミュレーター画面]
Last updated on 2019/04/05.