演習 - 埋め込みフロー エクスペリエンスを使用したフローを作成する

完了

この演習では、このラーニング パスの前の課題で作成した Dataverse for Teams のテーブルと対話するチャットボットを設定します。 目標は、ユーザーがチャットボットを使用して特典のリクエストを送信できるようにすることです。 これを行うには、Teams の Power Virtual Agents アプリ内で埋め込みのフロー エクスペリエンスを使用します。

タスク: Dataverse for Teams テーブルのスキーマ名を取得する

Dataverse for Teams テーブルのスキーマ名を取得するには、次の手順に従います。

  1. Dataverse for Teams のテーブルと列を作成すると、技術的な名前すなわちスキーマ名が各コンポーネントにバックグラウンドで付けられます。 フローで使用するために、技術的な名前すなわちスキーマ名を確認する必要があります。 Teams の左側のナビゲーション バーのアイコンを使用して Microsoft Power Apps に戻ります。 ビルド タブを選択し、作業していたチームを選択します。 作成した品目の一覧で Asset テーブルを選択します。

    「ビルド」タブと Asset テーブルが強調表示されているスクリーンショット。

  2. を選択します。

    選択された列オプションが表示されているスクリーンショット。

  3. テーブルと列のバックグラウンド ビューが表示されます。 名前ヘッダーの下に、スキーマ名が crao5_AssetId のような形式で表示されます。 実際のスキーマ名は異なります。この例とは違う独自の接頭辞が付きます。

    列セクションのスキーマ名が強調表示されているスクリーンショット。

  4. 次の列のスキーマ名を確認してください。これらは、このタスクおよび後続のタスクで必要になります。

    資産

    Asset Name

    列の Asset および Asset Name のスキーマ名が強調表示されているスクリーンショット。

  5. Teams の左側のナビゲーション バーのアイコンを使用して Power Virtual Agents に戻ります。 チャットボット タブを選択し、作業していたチャットボットを選択して開きます。

    「チャットボット」タブが強調表示されており、Office Helper チャットボットが選択されているスクリーンショット。

タスク: 新しいトピックを作成する

新しいトピックを作成するには、次の手順に従います。

  1. トピックに移動してから、+ 新しいトピックを選択します。

    「新しいトピック」ボタンが強調表示されたスクリーンショット。

  2. 以下のトリガー フレーズを追加してから、それぞれの後でボタンを選択し、一覧にすべてのフレーズが表示されるまで繰り返します。

    Want to order swag

    I need to make a request for merch

    Can I put in a request?

    Place an order for swag

    How do I put in an order?

  3. 詳細を選択してから、名前ボックスに Request swag と入力します。 詳細ペインを閉じます。

    「詳細」ウィンドウが強調表示されており、「名前」ボックスに Request swag と入力されているスクリーンショット。

  4. メッセージ ボックスに、以下のテキストを追加します。

    Contoso Coffee 記念品のリクエストをお手伝いします

    「メッセージ」ボックスに入力されているテキストが表示されているスクリーンショット。

  5. 右上隅の保存アイコンを選択してボットを保存し、次のタスクに進みます。

タスク: Dataverse for Teams テーブルの行を取得するフローを作成する

Teams の Power Virtual Agents には Microsoft Power Automate のエクスペリエンスが組み込まれており、チャットボットで簡単にアクションを呼び出せるテンプレートが含まれています。 このタスクでは、Power Automate を使用して、Dataverse for Teams の Assets テーブルの最初の品目を検索してから、その品目をリクエストしたユーザーに候補として返します。

  1. ノードを追加し、アクションの呼び出しを選択します。 フローの作成を選択すると、Microsoft Teams 内部で Power Automate が開始します。

    「フローの作成」オプションが強調表示されているスクリーンショット。

  2. Power Virtual Agents フロー テンプレートを選択します。 このテンプレートは、チャットの入力をフローに渡してから、フローの出力を Power Virtual Agents に戻すように設計されています。

    Power Virtual Agents フロー テンプレートが強調表示されているスクリーンショット。

  3. フローの接続を確認する画面が表示される場合があります。 続行を選択します。

  4. フロー テンプレートが表示され、Power Virtual Agents の入力ステップと出力ステップが含まれています。 このフローにはチャットの入力を渡しません。したがって、この最初のステージでは何も行う必要がありません。 入力ステップと出力ステップの間のアクションの追加を選択します。

    アクションの「追加」ボタンが強調表示されているスクリーンショット。

  5. 行を一覧表示を検索してから、行を一覧表示 Microsoft Dataverse アクションを選択します。

    このコネクタを使用すると、チャットボットを Dataverse for Teams のテーブルに接続して、レコードの作成、更新、削除、取得など、さまざまなアクションを行うことができます

    行を一覧にするアクションが強調表示されているスクリーンショット。

  6. ドロップダウン リストから表名 Assets を選択します。 ボックスに Assets という単語を入力すると、テーブルを簡単に見つけることができます。

  7. 詳細オプションの表示を選択して、このアクション ステップの残りの部分を表示します。

    行を一覧にするアクション ステップで「詳細オプションの表示」ドロップダウン メニューが強調表示されているスクリーンショット。

  8. テーブルの最初の行を取得するには、数字 1行数ボックスに入力します。

    「行数」ボックスに入力されている数字 1 が強調表示されているスクリーンショット。

  9. 前のステップで取得した品目の情報を格納する変数を作成します。こうすることでチャットボットに簡単に渡せるようになります。 この下にアクションを追加し、作成を検索して、作成 (データ操作) アクションを選択します。

    作成データ操作アクションが強調表示されているスクリーンショット。

  10. このアクション ステップで、入力ボックスを選択してから、表示される動的コンテンツ ボックスでタブを選択します。 動的コンテンツ領域の関数ボックスに次の式を入力してから、OK を選択します。 この式によって、品目の値が取得されます。

    first(body('List_rows')?['value'])

    「入力」ボックスと、式を追加する「式」タブが強調表示されているスクリーンショット。

    式が入力ボックスに表示されます。

    「入力」ボックスの式が強調表示されているスクリーンショット。

  11. 資産の名前と ID をチャットボットに返します。 Power Virtual Agents に値を返すステップを選択し、+ 出力の追加をクリックします。

    「出力の追加」ボタンが強調表示されているスクリーンショット。

  12. テキストを選択し、タイトルを Name と入力します。 値を入力して応答してくださいボックスで、動的コンテンツ ボックスのタブに移動して、次の式を入力します。 前に確認した、テーブルの Asset Name 列について、スキーマ名を実際のスキーマ名で置き換えます (次のスクリーンショットに示されている Name という語)。 実際のスキーマ名の接頭辞は異なります。 OK を選択します。

    outputs('Compose')?['cra05_Name']

    「値を入力して応答してください」ボックスが強調表示されており、「式」タブに入力された式が表示されているスクリーンショット。

  13. 前の手順を繰り返して、出力に ID を追加します。 + 出力の追加 > テキストを選択します。 タイトルとして ID を入力します。 値を入力して応答してくださいボックスで、動的コンテンツ ボックスのタブに移動して、次の式を入力します。 前に確認したテーブルの Asset 列について、強調表示されたスキーマ名を実際のスキーマ名で置き換えます。 実際のスキーマ名の接頭辞は異なります。 OK を選択します。

    outputs('Compose')?['cra05_AssetId']

式が両方の出力ボックスに表示されます。

> [!div class="mx-imgBorder"]
> [![Screenshot highlighting the Return Values to Power Virtual Agents action, showing formulas in both output boxes.](../media/compose-return-value.png)](../media/compose-return-value.png#lightbox)
  1. 画面の左上隅のフローの名前を、Get first asset に変更します。 保存ボタンを選択して保存します。

    Get first asset フローと「保存」ボタンが強調表示されているスクリーンショット。

  2. フローが保存されたら、フローの名前の横の青色の矢印を選択して、Power Virtual Agents に戻ります。 次のタスクでは、このフローをチャットボットに接続します。

    Power Virtual Agents に戻る青色の矢印が強調表示されているスクリーンショット。

タスク: 出力を含むフローをチャットボットに接続する

次のタスクでは、出力を含むフローをチャットボットに接続します。 メッセージ ノードの下で、アクションを呼び出すを選択してから、前のタスクで作成したフローを選択します。 フローの詳細を表示するには、青色のハイパーリンクではなく、フローの名前を選択してください (リンクを使用すると、フローの編集に戻ります)。

「アクションを呼び出す」の Get first asset オプションが強調表示されているスクリーンショット。

フローがチャットボットに接続されました。

フローの詳細と Power Automate 出力が強調表示されているスクリーンショット。

タスク: 資産のリクエストを送信するフローを作成する

次の手順に従って、資産のリクエストを送信するフローを作成します。

  1. フローのアクション ノードの下に新しいメッセージ ノードを追加し、次のテキストを入力します。

    新しい従業員にいつも最初に提供するものは:

  2. 変数ボタンを選択し、Name 変数を選択します。 この選択によって、前の手順でフローが取得した Assets テーブルの最初の品目の名前が組み込まれます。

    「変数」ボタンが強調表示されており、Name 変数が選択されているスクリーンショット。

  3. 質問するのノードを追加します。 次のテキストを質問するボックスに入力します。

    リクエストの代行をご希望ですか?

  4. 識別ボックスで、オプションを開いて、ブール値を選択します。

    「識別」ボックスが強調表示されており、「ブール値」オプションが表示されているスクリーンショット。

  5. 変数の名前を編集して FirstRequest とします。 ページの右上隅にある X を選択して、変数のプロパティ ペインを閉じます。

    変数の名前が First Request に変更されているスクリーンショット。

  6. 新しいノードを追加して、条件の追加を選択します。 条件の左側の分岐で、ドロップダウン リストから FirstRequest 変数を選択し、2 番目のドロップダウン リストから True を選択します。

    「条件の追加」アクションが強調表示されており、ドロップダウン リストで First Request と True が選択されているスクリーンショット。

  7. 下にさらにノードを追加し、質問するを選択します。 次のテキストを入力します。

    このリクエストと一緒に送信するコメントを追加してください

  8. 識別オプションでユーザーの応答全体を選択します。

    「識別」オプションと、選択された「ユーザーの応答全体」オプションが強調表示されているスクリーンショット。

  9. 変数の名前をコメントに変更し、変数のプロパティ ペインを閉じます。

    変数名が Comments に変更されているスクリーンショット。

  10. 右上隅にある保存ボタンを選択して、ボットを保存します。

  11. ここでは、ユーザーに代わって資産をリクエストする別のフローを作成します。 新しいノードを追加し、アクションの呼び出しを選択して、フローの作成を選択します。

    「アクションの呼び出し」と、選択された「フローの作成」オプションが表示されているスクリーンショット。

  12. Power Virtual Agents フロー テンプレートを選択します。

    選択された Power Virtual Agents フロー テンプレートが表示されているスクリーンショット。

  13. 前のフローで、現在リクエストされている資産の ID を取得しました。 その ID を、チャットボットからの入力としてこのフローに渡す必要があります。 フローの最初の Power Virtual Agents 手順を選択して開き、+ 入力の追加を選択します。

    Power Virtual Agentsで選択された「入力の追加」オプションが表示されているスクリーンショット。

  14. テキストを選択してから、入力名ボックスに AssetID と入力します。

    「入力名」ボックスに入力されたテキストと資産 ID の選択が強調表示されているスクリーンショット。

  15. この手順を繰り返して、ユーザーが指定したコメントに対する別の入力を追加します。 + 入力の追加を選択し、テキストを選択して、入力名ボックスに Comments と入力します。

    別の入力名の追加を示しているスクリーンショット。

  16. この入力ステップの下にアクションを追加します。

  17. 新しい行を追加を検索してから、新しい行を追加 Microsoft Dataverse アクションを選択します。

    「新しい行を追加 Microsoft Dataverse」アクションが選択されているスクリーンショット。

  18. このフローによって、ユーザーのリクエストを送信します。 テーブル名ドロップダウン リストから Requests を選択し、詳細オプションの表示を選択します。

    「テーブル名」ドロップダウン リストから選択された Requests と「詳細オプションの表示」の選択が表示されているスクリーンショット。

  19. Name ボックスに、New employee swag request と入力します。 Comment ボックス内を選択してから、動的コンテンツ ペインから Comments を選択します。

    「名前」ボックスに New employee swag request と入力されているスクリーンショット。

  20. Asset (Assets) ボックス内を選択してから、次の式を入力します (接頭辞は、前に確認したご自身のスキーマ名の接頭辞で置き換えてください)。 リクエストを作成して資産を入力すると、ルックアップ列を使用して Assets テーブルにも接続できます。 このレコードを作成するとき、接続先のテーブルの名前をフローに定義する必要があります。

    cra05_assets()

    Asset Assets 行が強調表示されており、ボックスに入力された式が表示されているスクリーンショット。

  21. この式のかっこの間を選択し、動的コンテンツ ボックスから AssetID を選択します。 AssetID 動的コンテンツが式のかっこの間に配置されたことを確認します。

    式の資産 ID が強調表示されているスクリーンショット。

  22. フローの名前を Create a request に変更します。 フローを保存してから、フロー名の横の戻る矢印を使用して Power Virtual Agents に戻ります。

    Create a request に変更されたフローの名前と「保存」ボタンが表示されているスクリーンショット。

タスク: 入力を含むフローをチャットボットに接続する

入力を含むフローをチャットボットに接続するには、次の手順に従います。

  1. ユーザーにコメントの追加を尋ねる質問のところまで下にスクロールします。 新しいノードを追加し、アクションを呼び出すを選択して、作成したフローを選択します。 この画面を表示するには、左側のナビゲーションで概要の選択が必要な場合があります。

    「アクションの呼び出し」と Create a request が選択されているスクリーンショット。

  2. Power Virtual Agents で作成した変数をフローの入力にマップします。 ドロップダウン リストから次の変数を選択します。

    AssetID (テキスト) は次から値を取得します - ID

    Comments (テキスト) は次から値を取得します - Comments

    ドロップダウン リストから選択された変数が表示されているスクリーンショット。

  3. リクエストが送信されたことをユーザーに知らせるための確認メッセージを追加します。 下にノードを追加し、メッセージを表示するを選択します。 次のテキストをメッセージ ボックスに入力します。

    ありがとうございます。リクエストが送信されました

  4. for という単語の後を選択してから、Name 変数を選択します。

    Name 変数が強調表示されているスクリーンショット。

  5. 下に別のノードを追加して、調査で会話を終了します。

    別のノードの追加および会話の終了ノードが表示されているスクリーンショット。

  6. リクエストの代行をご希望ですかの質問ノードまで上にスクロールします。 その他すべての条件の条件分岐の下に、調査で終了するノードを追加します。

    会話の終了ノードが表示されているスクリーンショット。

  7. 保存アイコンを選択してボットを保存します。

タスク: ボットをテストする

ボットをテストする準備ができました。

  1. ボットのテスト ペインの上部でトピック間の追跡トグルをオンにします。 I want to order swag などのトリガー フレーズをボットのテスト ペインに入力します。 ボットから候補品目 (Assets テーブルの最初の品目) が返されるはずです。

    「ボットのテスト」ウィンドウでオンになった「トピック間の追跡」トグル スイッチが表示されているスクリーンショット。

  2. はいを選択してから次のようにコメントを入力して、チャットボットとの会話を続けます。

    月曜日までに配達してもらえますか

  3. 確認メッセージに、資産の名前と会話の終了トピックが表示されます。

    資産の名前を含む会話メッセージが強調表示されているスクリーンショット。

  4. リクエストが送信されたことを確認するには、左側のナビゲーション バーの [Teams] アイコンを選択します。 このラーニング パスの前の課題でアプリを作成したチームとチャンネルに戻ります。 送信したリクエストがアプリに表示されます。

    Teams およびチャネルで送信されたアプリが強調表示されているスクリーンショット。

お疲れさまでした。質問に回答し、Dataverse for Teams データベースから資産を取得して、ユーザーのためにリクエストを送信するボットが完成しました。

次の演習では、これを公開して共有し、Teams チャットで使用します。