指定された期間内に登録されているスケジュールを選択肢で表示し、選択されたスケジュールを延長するシナリオを作成します。
Office 365連携を初めて行う場合は、以下をご覧ください。
【STEP1:(Microsoft)Microsoft Azure Portalにアプリケーションを登録する】
【STEP2:(DialogPlay)Office 365とDialogPlayをつなぐ】
事前準備
スケジュールを延長するためには、以下のアクセス許可が必要となります。
STEP1の〔 Microsoft Azure Portal 〕で登録したアクセス許可に、次の項目が含まれていることを確認してください。
[「スケジュールを延長」で使用する許可スコープ]
名称 | 説明 |
---|---|
Calendars.Read | ユーザーのカレンダーの読み取り |
Calendars.Read.Shared | ユーザーのカレンダーと共有のカレンダーの読み取り ※ 他ユーザー情報を取得する場合は、カレンダーの共有設定が必要 |
Calendars.ReadWrite | ユーザーのカレンダーへのフルアクセス |
MailboxSettings.Read | ユーザーのメールボックス設定の読み取り |
offline_access | ユーザーデータへの常時アクセス |
STEP3. (DialogPlay)Office 365のサービスをつかう
シナリオ内で呼び出したいMicrosoft Graph APIを実行させるため、対象となるAPI(実行したい機能)ごとに外部システム連携を設定します。
このシナリオでは2つの外部システム連携が必要となります。
手順(自身のイベントを取得(複数))
- 外部システム連携「自身のイベントを取得(複数)」を作成します。
この外部システム連携では、指定された期間内に登録されているスケジュールを取得します。
作成方法につきましては、【Outlook予定表のスケジュールを確認する】をご覧ください。
手順(自身のイベントを延長)
- 左メニューの『チャットボット一覧』より設定を行うチャットボットを選択し、『外部システム連携』タブから”新規作成“ボタンをクリックしてください。
- 『外部システム連携先』に連携先名を入力してください。
- 『説明』に連携先の説明文を入力してください。
- 『タイプ』から、「Office 365」を選択してください。
- 『対象API』から、「自身のイベントを更新」を選択してください。
- 『検索条件』の『イベントID』に、以下の例を参考に入力してください。
※ この変数は、STEP4 手順10の「外部連携結果を選択肢表示」アクションで使用します。
[入力例]
項目名 入力値 イベントID {{イベントID}} - 『更新項目』に、以下の例を参考に各項目を入力してください。
[入力例]
項目名 値 終了日時 {{延長時間}} - “保存“ボタンをクリックしてください。
STEP4. (DialogPlay)シナリオを追加する
手順
- パンくずメニューのチャットボット名をクリックし、チャットボット画面に戻ってください。
- 『外部サービス認証先設定』にて『Office 365連携を行う』にチェックが入り、『認証先』が設定されていることを確認してください。
※ 認証先設定が未設定の状態で、Office 365連携を利用したシナリオを実行した場合、チャットウィンドウに「外部システム連携先が設定されていない為、この機能はご使用いただくことができません。」と表示され、外部連携アクションは正常に動作しません。 - 『シナリオ一覧』タブから、”新規作成“ボタンをクリックしてください。
- 『シナリオ名』と『ユーザー発言例』を入力してください。
- 『シナリオの流れ』から「テキスト発言」を選択し、”アクションを追加“ボタンをクリックしてください。
- 『発言内容』に以下の例を参考に入力してください。
[入力例]
項目名 入力値 発言内容 スケジュールを延長します。
はじめに、登録済みのスケジュールを確認します。 - 『ヒアリング』アクションを追加し、以下の例を参考に各項目を入力してください。
[入力例]
No ヒアリング項目名 タイプ 項目ごとの質問文 1 日時 時間表現 @datetime_period いつのスケジュールを延長しますか?(例:今日、明日の13時から17時) - 『外部システム連携』アクションを追加し、『連携先』にSTEP3で作成した「自身のイベントを取得(複数)」を選択してください。
- 『シナリオの強制終了』アクションを追加し、以下の例を参考に各項目を入力してください。
ここでは、外部システム連携「自身のイベントを取得(複数)」でデータを取得した際、自身のイベント(変数名:イベントリスト)が無かった場合に、シナリオを終了する処理を追加します。
[入力例]
項目名 入力値 発言内容 指定された期間内にスケジュールはありませんでした。 実行条件 「イベントリスト.size」 = 「0」 - 『外部連携結果を選択肢表示』アクションを追加し、以下の例を参考に各項目を入力してください。
※『外部連携結果を選択肢表示』アクションの詳細については、【外部システムから取得した結果を選択肢で表示したい】をご覧ください。
[入力例]
項目名 入力値 タイトル イベントID 質問内容 延長するスケジュールを選択してください。 選択肢設定 リスト変数名 イベントリスト 項目毎の表示内容 {{subject}} : {{start.dateTime}} 項目毎の値 {{id}} 選択肢に [どれでもない] を追加する チェックなし - 『ヒアリング』アクションを追加し、以下の例を参考に各項目を入力してください。
[入力例]
No ヒアリング項目名 タイプ 項目ごとの質問文 1 延長日時 時間表現 @datetime 何時まで延長しますか?(例:17時まで、明日の12時まで) - 『外部システム連携』アクションを追加し、『連携先』に「自身のイベントを延長」を選択してください。
- 『テキスト発言』アクションを追加し、『発言内容』に以下の例を参考に入力してください。
[入力例]
項目名 入力値 発言内容 {{延長日時}}まで、スケジュールと会議室予約を延長しました。
{{イベント詳細URL}} - “保存“ボタンをクリックしてください。
- 「学習データが更新されています。反映するには学習ボタンを押してください。」というメッセージが表示されますので、”保存してチャットボットを学習“ボタンをクリックしてください。
※今回の手順はあくまで一例であり、他にも利用できる項目が用意されています。詳細は〔 Office 365 Graph API 〕のリファレンスをご覧ください。
STEP5. (DialogPlay)チャットボットとしゃべる
手順
『シミュレーター』機能で、動作を確認してください。
Office 365へのサインインを促すメッセージが表示されますので、URLをクリックし、Office 365にサインインしてください。
※ 詳細については【チャットボット作成(Ⅳ.Office 365連携編) - STEP6】をご覧ください。
[シミュレーター画面]