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

完了

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

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

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

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

  2. を選択します。

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

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

    資産

    Asset Name

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

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

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

  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 と入力します。 詳細ペインを閉じます。

  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 に戻すように設計されています。

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

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

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

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

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

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

  8. テーブルの最初の行を取得するには、数字 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 に変更します。 保存ボタンを選択して保存します。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    cra05_assets()

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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