注文のキャンセルの事前構築済みコンポーネント

注文のキャンセルの事前構築済みコンポーネントは、ユーザーの認証レベルを確認します。ユーザーが認証されると、コンポーネントはユーザーの最新の注文や過去の注文に関する情報を提供します。ユーザーは、注文全体をキャンセルするか、注文内の特定の商品をキャンセルするかを選択できます。このコンポーネントは、Retail 認証の事前構築済みコンポーネントを使用してユーザーを認証します。このコンポーネントは、呼び出し後の要約に生成ツールも使用します。

制限事項

一般的な事前構築済みコンポーネントの制限に加えて、この事前構築済みコンポーネントには次の制限があります。

  • このコンポーネントはデータを暗号化しません。

サンプル ダイアログ

次のサンプル ダイアログは、この事前構築されたコンポーネントによって処理される一般的なシナリオを示しています。サンプル ダイアログは、コンポーネントがテレフォニーを使用して呼び出されたときの動作を示しています。呼び出しにより、Default Welcome Intent と会話開始時の最初のエージェント レスポンスがトリガーされます。

最近の注文に含まれる 1 つの商品をキャンセルする

エンドユーザーは認証済みです。エージェントは、最新の注文のどの商品をキャンセルする必要があるかを確認します。エージェントは元のお支払い方法を確認し、キャンセルの詳細をユーザーに確認します。

ユーザー入力 エージェントの応答
2023 年 11 月 9 日の午後 8 時に注文された 5 本の水ボトルと 1 枚の T シャツを含む、末尾が 12978 の最新の注文番号についてお問い合わせですか?
はい
ご注文内で対象となる商品が見つかりました。キャンセルを希望される商品をお知らせください。
商品 1: Google ウォーターボトル、商品 2: Google T シャツ。

選択することをご希望の商品の商品番号を口頭でお伝えいただくか、入力してください。他の商品を表示するには、「次へ」とおっしゃってください。
次へ
記録には他の商品が見つかりませんでした。共有リストから選択してください。
商品 1: Google ウォーターボトル、商品 2: Google T シャツ。

選択する商品の商品番号を口頭でお伝えいただくか、入力してください。他の商品を表示するには、「次へ」とおっしゃってください。
1
確認ですが、Google ウォーター ボトルのキャンセルをご希望ですね。よろしいですか?
はい
選択された商品の購入可能な数量は 5 であることが確認できます。キャンセルを希望される商品の数量をご指定ください。
4
キャンセルの理由をご指定ください。たとえば、考えが変わった、不要になった、別の商品を購入したい、配達が遅れた、誤って購入した、支払い方法を変更したい、などとお伝えください。
別の商品を購入したい
ご回答いただき、ありがとうございます。

別の商品のキャンセルをご希望ですか?
いいえ
ウォレットを使用して購入した場合、ウォレットまたはストア クレジット アカウントに払い戻しが行われます。払い戻しが口座に反映されるまでに 3~5 営業日を要します。払い戻し額は、配送料と取り扱い手数料を除外して算出されます。

注文全体をキャンセルする

エンドユーザーは認証済みです。エージェントは、ユーザーが特定の注文のキャンセルをご希望であることを確認し、キャンセルの理由を収集します。エージェントは元のお支払い方法を確認し、キャンセルの詳細をユーザーに確認します。

ユーザー入力 エージェントの応答
2023 年 11 月 10 日午後 6 時に注文された 1 枚のシャツを含む、末尾が 12345 の最新の注文番号についてお問い合わせですか?
いいえ
別の注文のキャンセルをご希望ですか?
はい
追跡することをご希望の注文 ID の末尾 5 桁をお知らせください。
12346
お伺いした注文 ID の末尾 5 桁は 12345 です。よろしいですか?
はい
ありがとうございます。注文 ID の収集が完了しました。

注文全体をキャンセルすることをご希望ですか?
はい
キャンセルの理由をご指定ください。たとえば、考えが変わった、不要になった、別の商品を購入したい、配達が遅れた、誤って購入した、支払い方法を変更したい、などとお伝えください。
不要になった
ご連絡いただきありがとうございます。

解約リクエストが作成されました。

命名規則

この事前構築済みコンポーネントでは、次の命名規則が使用されています。

機能 形式
フロー [コンポーネント名] 注文をキャンセル
エンティティ タイプ prebuilt_components_[component_name]_[entity_type] prebuilt_components_product_cancel_reason
Webhook prebuilt_components_[component_name]:[webhook_action] prebuilt_components_cancel_order:post_cancellation_details

入力パラメータ

入力パラメータは、コンポーネントの特定の動作を構成するために使用されるパラメータです。このパラメータは、コンポーネントの動作を決定するためにフロー内の 1 つ以上の条件によって使用されます。フロースコープのパラメータは、コンポーネントのスタートページで設定する必要があります。セッション スコープのパラメータは、呼び出しフローまたはこのコンポーネントのスタートページで設定できます。

この事前構築済みコンポーネントは、次の入力パラメータを受け入れます。

パラメータ名 説明 入力形式
$session.params.phone_number (省略可)ユーザーの識別に使用される、国コードなしのユーザーの電話番号。 文字列
$session.params.all_recent_order_id (省略可)このパラメータは、認証済みユーザーに関連付けられている注文 ID を、注文の日付の降順で並べ替えてリストします。配列の最初の要素は最新の注文を表します。ユーザーの注文がない場合、このパラメータの値は null です。 リスト(文字列)
$session.params.email (省略可)アカウントに登録されているメールアドレス。 文字列
$session.params.user_first_name (省略可)ユーザーの名。挨拶とアカウントの所有権の確認に使用します。 文字列

この事前構築済みコンポーネントでは、次のオプションのパラメータを使用して、再試行を含むコンポーネントの動作を構成できます。

パラメータ名 説明 形式
$flow.max_retry_another_account_counter 別のアカウントで続行するかどうかを選択する際に許可される再試行回数を指定します。デフォルト値は 2 です。 integer
$flow.max_retry_order_number 注文番号の末尾 5 桁を入力するときに許可される再試行回数を指定します。デフォルト値は 2 です。 integer
$flow.max_retry_another_order 注文 ID が見つからない場合や、注文がキャンセル可能でない場合に、別の注文を選択する際に許可される再試行回数を指定します。デフォルト値は 2 です。 integer
$flow.max_retry_select_order_number 複数の注文が同じ最後の 5 桁を共有している場合に、完全な注文番号を入力するときに許可される再試行回数を指定します。デフォルト値は 2 です。 integer
$flow.max_product_display_counter 1 回のターンで表示する商品の最大数を指定します。デフォルト値は 2 です。 integer
$flow.max_product_display 会話全体で提示する商品の最大数を指定します。デフォルト値は 9 です。 integer
$flow.max_retry_product_number_counter キャンセルする商品を選択する際に許可される再試行の最大回数を指定します。デフォルト値は 2 です。 integer
$flow.max_product_cancel_confirm_counter 選択した商品の確認時に許可される再試行の最大回数を指定します。デフォルト値は 2 です。 integer
$flow.max_retry_select_quantity キャンセルする商品の数量を選択するときに許可される再試行の最大回数を指定します。デフォルト値は 2 です。 integer
$flow.order_product_cancel_reason_others ユーザーがキャンセル理由として「その他」を選択したことを示す prebuilt_components_product_cancel_reason エンティティの値を指定します。デフォルト値は "others" です。 文字列
$flow.max_retry_cancel_reason キャンセルの理由を確認するときに許可される再試行回数を指定します。デフォルト値は 2 です。 integer
$flow.order_payment_mode_COD 代金引換(COD)のお支払い方法を示す get_order_details Webhook によって返される order_payment_mode フィールドの値を指定します。デフォルト値は "COD" です。 文字列
$flow.order_payment_mode_store_credit ストア クレジットのお支払い方法を示す get_order_details webhook によって返される order_payment_mode フィールドの値を指定します。デフォルト値は "store_credit" です。 文字列

このコンポーネントの入力パラメータを構成するには、開いて手順を確認します。

  1. Dialogflow CX コンソールを開きます。
  2. ご自身の Google Cloud プロジェクトを選択します。
  3. エージェントを選択します。
  4. [Build] タブを選択します。
  5. [Flows] セクションでインポートされたコンポーネントをクリックします。
  6. [Pages] セクションで [Start Page] をクリックします。
  7. スタートページで true ルートをクリックします。
  8. [Route] ウィンドウで、必要に応じて [Parameter Presets] 値を編集します。
  9. [Save] をクリックします。

出力パラメータ

出力パラメータは、コンポーネントを終了した後もアクティブな状態を継続するセッション パラメータです。これらのパラメータには、コンポーネントによって収集される重要な情報が含まれます。この事前構築されたコンポーネントは、次の出力パラメータの値を提供します。

パラメータ名 説明 出力形式
phone_number ユーザーの識別に使用されるユーザーの電話番号(国コードなし)。 文字列
all_recent_order_id このパラメータは、認証済みユーザーに関連付けられている注文 ID を、注文の日付の降順で並べ替えてリストします。配列の最初の要素は最新の注文を表します。ユーザーの注文がない場合、このパラメータの値は null です。 リスト(文字列)
メール 口座に登録されているメールアドレス。 文字列
user_first_name ユーザーの名。挨拶とアカウントの所有権の確認に使用します。 文字列
transfer_reason このパラメータは、フローが失敗した場合に終了した理由を示します。戻り値は次のいずれかです。

agent: エンドユーザーが会話中のいずれかの時点で人間のエージェントをリクエストした。

denial_of_information: エンドユーザーが、コンポーネントによってリクエストされた情報を共有することを拒否した。

max_no_input: 会話が回答なしイベントの再試行の最大回数に達した。回答なし組み込みイベントをご覧ください。

max_no_match: 会話が一致なしイベントの再試行の最大回数に達しました。一致なし組み込みイベントをご覧ください。

webhook_error: Webhook エラーが発生しました。webhook.error の組み込みイベントをご覧ください。

webhook_not_found: Webhook URL にアクセスできませんでした。webhook.error.not-found の組み込みイベントをご覧ください。
文字列

生成ツール

このコンポーネントは、生成ツールを使用して会話の特定の部分を有効にします。

要約

Summarization 生成ツールは、コンポーネントによって処理される会話を記述する通話後の要約を生成します。

基本設定

この事前構築済みコンポーネントを設定するには:

  1. 事前構築済みコンポーネントをインポートします。
  2. 外部サービスを記述する構成を使用して、付属の柔軟な Webhook を構成します。Webhook の設定をご覧ください。

Webhook の設定

このコンポーネントを使用するには、付属の柔軟な Webhook を構成して外部サービスから必要な情報を取得する必要があります。

認証

認証に必要な外部サービスをまだ構成していない場合は、このコンポーネントのユーザーの認証を有効にするようにそれらを構成する必要があります。詳細な手順については、Retail 認証 Webhook の設定をご覧ください。

注文の詳細情報を取得する

prebuilt_components_cancel_order:get_order_details Webhook は、指定された注文の詳細情報を取得するためにコンポーネントによって使用されます。

API リクエスト パラメータ

以下のパラメータは、コンポーネントによって API リクエストへの入力として提供されます。

パラメータ名 説明 入力形式
$flow.order_id 詳細情報を取得する注文 ID。 文字列

API レスポンス パラメータ

以下のパラメータは、コンポーネントで使用される API レスポンスから取得されます。

パラメータ名 説明 出力形式
order_date 注文が行われた日(YYYY-MM-DD 形式)。 文字列
order_time 注文が行われた時刻(HH:MM 形式)。 文字列
order_product_count 1 つの注文に含まれる一意の商品の数。 integer
order_payment_mode 注文時に使用された支払いモードを示します。 文字列
cancelable_product_id 注文に含まれるキャンセル可能な商品の商品 ID のリスト。 リスト(文字列)
cancelable_product_name 注文に含まれるキャンセル可能な商品の商品名のリスト。 リスト(文字列)
cancelable_product_brand_name 注文に含まれるキャンセル可能な商品のブランド名のリスト。 リスト(文字列)
cancelable_product_quantity 注文に含まれるキャンセル可能な商品の数量のリスト。 リスト(文字列)

このコンポーネントの [注文の詳細情報を取得する] Webhook を構成するには、開いて手順を確認してください。

  1. Dialogflow CX コンソールを開きます。
  2. ご自身の Google Cloud プロジェクトを選択します。
  3. エージェントを選択します。
  4. [Manage] タブを選択します。
  5. [Webhooks] をクリックします。
  6. prebuilt_components_cancel_order:get_order_details Webhook を選択します。
  7. 会話エージェント(Dialogflow CX)Webhook URL フィールドの URL を、統合するサービスのエンドポイントに置き換えます。プルダウンで適切なメソッドを選択します。
  8. Webhook に適したリクエスト形式になるように、リクエスト本文を確認して更新します。
  9. レスポンス構成を確認して更新し、Webhook のレスポンスから特定のフィールドを抽出します。パラメータ名は、コンポーネントが返されたフィールド値にアクセスするために必要であるため、変更しないでください。
  10. 必要に応じて [Authentication] の設定を確認し、更新します。
  11. [Save] をクリックします。

重複した注文の詳細情報を取得する

prebuilt_components_retail_services:get_duplicate_order_details Webhook は、複数の注文番号の末尾 5 桁が同じ場合に注文を区別できるよう、詳細情報を取得するためにコンポーネントによって使用されます。

API リクエスト パラメータ

以下のパラメータは、コンポーネントによって API リクエストへの入力として提供されます。

パラメータ名 説明 入力形式
$flow.duplicate_order_id ユーザーの 1 つ以上の注文で共有されている注文番号の末尾 5 桁を含むリスト。 リスト(文字列)

API レスポンス パラメータ

以下のパラメータは、コンポーネントで使用される API レスポンスから取得されます。

パラメータ名 説明 出力形式
all_order_date 指定された末尾 5 桁を持つ重複した注文の注文日のリスト(YYYY-MM-DD 形式)。この配列内の各要素は、all_order_time 配列内の同じ要素に対応しています。 リスト(文字列)
all_order_time 指定された末尾 5 桁を持つ重複した注文の注文時刻のリスト(HH:MM 形式)。この配列内の各要素は、all_order_date 配列内の同じ要素に対応しています。 リスト(文字列)

このコンポーネントの [重複した注文の詳細情報を取得する] Webhook を構成するには、開いて手順を確認してください。

  1. Dialogflow CX コンソールを開きます。
  2. ご自身の Google Cloud プロジェクトを選択します。
  3. エージェントを選択します。
  4. [Manage] タブを選択します。
  5. [Webhooks] をクリックします。
  6. prebuilt_components_retail_services:get_duplicate_order_details Webhook を選択します。
  7. 会話エージェント(Dialogflow CX)Webhook URL フィールドの URL を、統合するサービスのエンドポイントに置き換えます。プルダウンで適切なメソッドを選択します。
  8. Webhook に適したリクエスト形式になるように、リクエスト本文を確認して更新します。
  9. レスポンス構成を確認して更新し、Webhook のレスポンスから特定のフィールドを抽出します。パラメータ名は、コンポーネントが返されたフィールド値にアクセスするために必要であるため、変更しないでください。
  10. 必要に応じて [Authentication] の設定を確認し、更新します。
  11. [Save] をクリックします。

キャンセル後の詳細

prebuilt_components_cancel_order:post_cancellation_details Webhook は、キャンセル リクエストを送信するためにコンポーネントによって使用されます。

API リクエスト パラメータ

以下のパラメータは、コンポーネントによって API リクエストへの入力として提供されます。

パラメータ名 説明 入力形式
$session.params.phone_number ユーザーの識別に使用されるユーザーの電話番号(国コードなし)。 文字列
$flow.order_id チケットを送信する注文 ID。 文字列
$flow.cancel_product_id_list ユーザーがキャンセルを希望する商品 ID のリスト。 リスト(文字列)
$flow.cancel_product_quantity_list $flow.cancel_product_id_list の各要素に対応する、ユーザーがキャンセルを希望する商品数量のリスト。 リスト(文字列)
$flow.cancel_reason_list $flow.cancel_product_id_list の各要素に対応する、キャンセルされた各商品のキャンセル理由のリスト。 リスト(文字列)
$flow.order_refund_mode 払い戻しの支払いモード。有効な値は prebuilt_components_cancel_mode_of_refund エンティティによって定義されます。 文字列

API レスポンス パラメータ

以下のパラメータは、コンポーネントで使用される API レスポンスから取得されます。

パラメータ名 説明 出力形式
order_cancellation_ticket_id 送信済みのキャンセルのチケット ID。 文字列

このコンポーネントの [キャンセル後の詳細] Webhook を構成するには、開いて手順を確認してください。

  1. Dialogflow CX コンソールを開きます。
  2. ご自身の Google Cloud プロジェクトを選択します。
  3. エージェントを選択します。
  4. [Manage] タブを選択します。
  5. [Webhooks] をクリックします。
  6. prebuilt_components_cancel_order:post_cancellation_details Webhook を選択します。
  7. 会話エージェント(Dialogflow CX)Webhook URL フィールドの URL を、統合するサービスのエンドポイントに置き換えます。プルダウンで適切なメソッドを選択します。
  8. Webhook に適したリクエスト形式になるように、リクエスト本文を確認して更新します。
  9. レスポンス構成を確認して更新し、Webhook のレスポンスから特定のフィールドを抽出します。パラメータ名は、コンポーネントが返されたフィールド値にアクセスするために必要であるため、変更しないでください。
  10. 必要に応じて [Authentication] の設定を確認し、更新します。
  11. [Save] をクリックします。

完了

これで、エージェントとその Webhook が設定され、テストの準備が整いました。