参加者や会議室を検索する(Office365連携)

ヒアリング情報を元に参加者や会議室を検索できるシナリオを作成します。
会議への参加者を追加する場合や、自分以外の社員の予定を確認する場合などに利用できます。
※検索結果は最大15件まで取得します。

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

事前準備

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

・「参加者や会議室を検索する」で使用する許可スコープ

名称 説明
Calendars.ReadWrite ユーザーのカレンダーへのフルアクセス
MailboxSettings.Read ユーザーのメールボックス設定の読み取り
offline_access ユーザーのデータへの常時アクセス
People.Read ユーザーに関係する連絡先リストの読み取り
User.Read サインインとユーザー プロファイルの読み取り
User.ReadBasic.All すべてのユーザーの基本プロファイルの読み取り ※他のユーザーの情報は「表示名」「姓」「名」「ユーザー識別名」のみ取得

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

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

(1) ユーザー情報を取得(複数件)
(2) 会議室情報の取得(複数件)
(3) 会議室の予約(複数名)

  手順 (1) ユーザー情報を取得(複数件)

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

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

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

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

  5. 『対象API』から、『ユーザー情報を検索(複数件)』を選択してください。
  6. 『検索条件』を以下の画像を参考に入力してください。
    ※Response Mapの変換元『value』に含まれる配列データ要素については、 〔 Office365 Graph API 〕のリファレンスをご覧ください。

    検索条件
    ・検索対象:取得するユーザーの種別を設定
    ・表示名またはメールアドレス:表示名、メールアドレスを対象に前方一致検索を行う

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

  手順 (2) 会議室情報の取得(複数件)

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

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

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

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

  5. 『対象API』から、『ユーザー情報を検索(複数件)』を選択してください。

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

    検索条件
    ・検索対象:取得するユーザーの種別を設定
    ・表示名またはメールアドレス:表示名、メールアドレスを対象に前方一致検索を行う

  7. Response Mapの変換先の「ユーザーリスト」を「会議室リスト」に変更し、”保存” ボタンをクリックしてください。
    ※Response Mapの変換元『value』に含まれる配列データ要素については、 〔 Office365 Graph API 〕のリファレンスをご覧ください。

  手順 (3) 会議室の予約(複数名)

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

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

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

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

  5. 『対象API』から、『自身のイベントを登録』を選択してください。

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

    検索条件
    ・タイトル:会議名などイベントのタイトルを入力
    ・開始日時:検索対象にしたい開始日時をYYYY-mm-dd H:m:s形式または変数を入力
    ・終了日時:検索対象にしたい終了日時をYYYY-mm-dd H:m:s形式または変数を入力
    ・会議室:Office365で設定した会議室識別用メールアドレスまたは変数を入力(変数には辞書型や辞書型が格納された配列を指定することが可能)
    ・参加者:Office365で設定したユーザー識別用メールアドレスまたは変数を入力(変数には辞書型や辞書型が格納された配列を指定することが可能)

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

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

  手順

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

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

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

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

  4. 『シナリオ名』と『ユーザー発言例』を入力してください。
    ※キーワード一致を利用する場合は、 こちら をご覧ください。

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

  6. 『発言内容』入力欄が表示されますので、チャットボットに発言させたい任意のメッセージを入力してください。
    入力例:同一テナント上に存在するユーザー情報を検索します。

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

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


    No ヒアリング項目名 タイプ   項目ごとの質問文
    社員名 固有名詞 @person 会議に出席するユーザー名を入力してください。
  9. 『シナリオの流れ』エリアの中にあるリストから『外部システム連携』を選択して、 “アクションを追加” ボタンをクリックしてください。

  10. 『連携先』にSTEP3で作成した『ユーザー情報を取得(複数件)』を選択してください。

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

  12. 『外部連携結果を選択肢表示』を以下の入力例を参考に入力してください。

    入力例:
    『タイトル』 ユーザー
    『質問内容』 ユーザーが{{ユーザーリスト.size}}名いました。会議に出席させるユーザーを選んでください。
    選択肢設定
    『リスト変数名』 ユーザーリスト
    『項目毎の表示内容』 {{displayName}}
    『項目毎の値』 {{.}}
    ※{{.}}と入力することで、配列データ内容の情報を全て取得することができます。
    今回の場合、Offce365連携で取得した「ユーザーリスト」に格納されている配列データ(ユーザー一人ずつの属性情報(姓・名・メールアドレス等))を取得できます。


  13. 『シナリオの流れ』エリアの中にあるリストから『テキスト発言』アクションを追加し、以下の入力例を参考に入力してください。
    入力例:同一テナント上に存在する会議室情報を検索します。

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


    No ヒアリング項目名 タイプ   項目ごとの質問文
    会議室 テキスト全体 @text 会議を行う会議室名を入力してください。
  15. 『シナリオの流れ』エリアの中にあるリストから『外部システム連携』アクションを追加し、『連携先』に『会議室情報を取得(複数件)』を選択してください。

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

    入力例:
    『タイトル』 会議室リスト
    『質問内容』 該当する会議室が{{会議室リスト.size}}室ありました。会議を行う会議室を選んでください。
    選択肢設定
    『リスト変数名』 会議室リスト
    『項目毎の表示内容』 {{displayName}}
    『項目毎の値』 {{.}}


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


    No ヒアリング項目名 タイプ   項目ごとの質問文
    会議名 テキスト全体 @text 会議名を入力してください。
    会議日時 時間表現 @datetime_period 会議日時を入力してください。
  18. 『シナリオの流れ』エリアの中にあるリストから『外部システム連携』アクションを追加し、『連携先』に『会議室の予約(複数名)』を選択してください。

  19. 『シナリオの流れ』エリアの中にあるリストから『テキスト発言』アクションを追加し、以下の入力例を参考に入力してください。
    入力例:
    以下の内容でスケジュールを登録しました。
    -----
    会議名:{{会議名}}
    会議の開催日時:{{会議日時.from}}~{{会議日時.to}}
    会議室:{{会議室リスト.displayName}}
    参加者名:{{ユーザー.displayName}}
    ※displayName とは、Office365でアドレス帳に表示される名前になります。

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

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

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

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

Last updated on 2018/12/11.