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

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

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

事前準備

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

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

名称 説明
Calendars.ReadWrite ユーザーのカレンダーへのフルアクセス
MailboxSettings.Read ユーザーのメールボックス設定の読み取り
offline_access ユーザーデータへの常時アクセス
People.Read ユーザーに関係する連絡先リストの読み取り
User.Read サインインとユーザー プロファイルの読み取り
User.ReadBasic.All
全ユーザーの基本プロファイルの読み取り

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

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

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

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

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

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

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

  5. 『対象API』から、「ユーザー情報を検索(複数件)」を選択してください。
  6. 『検索条件』に以下の例を参考に、各項目を入力してください。

    [検索条件]
    項目 説明 入力例
    対象 取得するユーザーの種別を設定 組織内のユーザー情報を取得
    表示名またはメールアドレス 表示名、メールアドレスを対象に前方一致検索 {{社員名}}
    絞り込み条件 データ絞り込み条件の設定  
    『Response Map』は、今回はデフォルト値を利用するため、変更不要です。
    ※Response Mapの変換元『value』に含まれる配列データ要素については、〔 Office 365 Graph API 〕のリファレンスをご覧ください。

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

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

  1. パンくずメニューのチャットボット名をクリックし、チャットボット画面に戻り、『外部システム連携』タブから”新規作成“ボタンをクリックしてください。

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

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

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

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

  6. 『検索条件』に以下の例を参考に、各項目を入力してください。

    [入力例]
    『対象』            会議室情報を取得
    『表示名またはメールアドレス』 {{会議室}}

  7. 『Response Map』の『変換先』の「ユーザーリスト」を「会議室リスト」に変更し、”保存“ボタンをクリックしてください。

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

  1. パンくずメニューのチャットボット名をクリックし、チャットボット画面に戻り、『外部システム連携』タブから”新規作成“ボタンをクリックしてください。

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

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

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

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

  6. 『登録項目』に以下の例を参考に、各項目を入力してください。

    [登録項目]
    名称 説明 入力例
    タイトル 会議名などイベントのタイトルを入力 {{会議名}}
    開始日時 検索対象にしたい開始日時をYYYY-mm-dd H:m:s形式または変数を入力 {{会議日時.from}}
    終了日時 検索対象にしたい終了日時をYYYY-mm-dd H:m:s形式または変数を入力 {{会議日時.to}}
    会議室
    Office 365で設定した会議室識別用メールアドレスまたは変数を入力
    (変数には辞書型や辞書型が格納された配列を指定することが可能)
    {{会議室リスト.userPrincipalName}}

    参加者
    Office 365で設定したユーザー識別用メールアドレスまたは変数を入力
    (変数には辞書型や辞書型が格納された配列を指定することが可能)
    {{ユーザー.userPrincipalName}}


  7. 『Response Map』は、今回はデフォルト値を利用するため、変更不要です。
    保存“ボタンをクリックしてください。

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

手順

  1. パンくずメニューのチャットボット名をクリックし、チャットボット画面に戻ってください。

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

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

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

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

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

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

    [入力例]
    同一テナント上に存在するユーザー情報を検索します。

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

    [入力例]
    No ヒアリング項目名 タイプ   項目ごとの質問文
    社員名 固有名詞 @person 会議に出席するユーザー名を入力してください。
  8. 『シナリオの流れ』エリアの中にあるリストから『外部システム連携』アクションを追加し、『連携先』にSTEP3で作成した「ユーザー情報を取得(複数件)」を選択してください。

  9. 『シナリオの流れ』エリアの中にあるリストから『外部連携結果を選択肢表示』アクションを追加し、『外部連携結果を選択肢表示』に以下の例を参考に各項目を入力してください。
    今回の例では、Offce365連携で取得した「ユーザーリスト」に格納されている配列データ(ユーザーごとの属性情報(姓・名・メールアドレス等))を取得します。

    [入力例]
    『タイトル』 ユーザー
    『質問内容』 ユーザーが{{ユーザーリスト.size}}名いました。会議に出席させるユーザーを選んでください。

    『選択肢』
    項目 入力例
    リスト変数名 ユーザーリスト
    項目毎の表示内容 {{displayName}}
    項目毎の値
    {{.}}
    ※{{.}}と入力することで、配列データ内容の情報を全て取得することができます
  10. 『シナリオの流れ』エリアの中にあるリストから『テキスト発言』アクションを追加し、以下の例を参考に入力してください。

    [入力例]
    同一テナント上に存在する会議室情報を検索します。

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

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

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

    [入力例]
    『タイトル』 会議室リスト
    『質問内容』 該当する会議室が{{会議室リスト.size}}室ありました。会議を行う会議室を選んでください。

    『選択肢』
    項目 入力例
    リスト変数名 会議室リスト
    項目毎の表示内容 {{displayName}}
    項目毎の値 {{.}}
  14. 『シナリオの流れ』エリアの中にあるリストから『ヒアリング』アクションを追加し、『ヒアリング項目』以下の例を参考に各項目を入力してください。

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

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

    [入力例]
    以下の内容でスケジュールを登録しました。
    -----
    会議名:{{会議名}}
    会議の開催日時:{{会議日時.from}}~{{会議日時.to}}
    会議室:{{会議室リスト.displayName}}
    参加者名:{{ユーザー.displayName}}
    
    ※displayName とは、Office 365でアドレス帳に表示される名前になります。

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

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

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

手順

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

[シミュレーター画面]

Last updated on 2019/07/01.