住所収集の事前構築済みコンポーネントは、エンドユーザーから住所を収集し、Google Address Validation API を使用して住所を検証します。
制限事項
一般的な事前構築済みコンポーネントの制限に加えて、この事前構築済みコンポーネントには次の制限があります。
- Address Validation API の適用範囲の詳細に記載されている国の住所のみがサポートされます。
追加機能
この事前構築されたコンポーネントには、以下の追加機能が用意されています。
サンプル ダイアログ
次のサンプル ダイアログは、この事前構築されたコンポーネントによって処理される一般的なシナリオを示しています。サンプル ダイアログは、コンポーネントがテレフォニー経由で呼び出されたときの動作を示しています。呼び出しにより、Default Welcome Intent と会話開始時の最初のエージェント レスポンスがトリガーされます。
有効で完全な住所
エンドユーザーが完全な住所を提示し、住所収集コンポーネントが住所を正常に検証します。
ユーザー入力 | エージェントの応答 |
---|---|
まず、完全な住所を教えてください。 | |
1600 Amphitheatre Parkway, Mountain View, CA 94043-1351, USA | |
最終的な住所を確認しました。番地が 1600、地名が Amphitheatre Parkway、都市は Mountain View、行政区域は CA、郵便番号は 94043、国は USA です。間違いありませんか? 「はい」または「いいえ」でお答えください。 | |
はい | |
素晴らしい。住所を収集しました。 |
推測された要素を含む部分的な有効な住所
エンドユーザーが部分的な住所を提供します。エージェントが欠落している部分を推測し、エンドユーザーからの確認後に正常に検証します。
ユーザー入力 | エージェントの応答 |
---|---|
まず、完全な住所を教えてください。 | |
1600 Amphitheatre Parkway | |
住所の一部を推測しました。都市は Mountain View、郵便番号は 94043、行政区域は CA、国は USA です。 最終的な住所を収集しました。番地が 1600、地名が Amphitheatre Parkway、都市名は Mountain View、行政区域は CA、郵便番号は 94043、国は USA です。間違いありませんか? 「はい」または「いいえ」でお答えください。 |
|
はい | |
素晴らしい。住所を収集しました。 |
ユーザー指定要素を含む部分的な有効な住所
エンドユーザーが部分的な住所を提供します。エージェントは欠落している部分を推測しますが、エンドユーザーが「no」という入力を行った後に独自の入力を提供し、エージェントはその住所を正常に受け入れます。
ユーザー入力 | エージェントの応答 |
---|---|
まず、完全な住所を教えてください。 | |
1600 Amphitheatre Parkway | |
住所の一部を推測しました。都市は Mountain View、郵便番号は 94043、行政区域は CA、国は USA です。 最終的な住所を収集しました。番地が 1600、地名が Amphitheatre Parkway、都市名は Mountain View、行政区域は CA、郵便番号は 94043、国は USA です。間違いありませんか? 「はい」または「いいえ」でお答えください。 |
|
いいえ | |
はい。住所の変更が必要な部分をお知らせください。 | |
郵便番号 | |
郵便番号を教えてください。 | |
94044 | |
更新が完了しました。他に変更すべき点はありますか?「はい」または「いいえ」でお答えください。 | |
いいえ | |
検証の結果、郵便番号を 94043 置き換えました。 最終住所を収集しました。番地が 1600、地名が Amphitheatre Parkway、都市名は Mountain View、行政区域は CA、郵便番号は 94043、国は USA です。間違いありませんか? 「はい」または「いいえ」でお答えください。 |
|
はい | |
素晴らしい。住所を収集しました。 |
認識されない入力
エンドユーザーが認識できない入力を 3 回提供すると、コンポーネントはフローを終了します。
ユーザー入力 | エージェントの応答 |
---|---|
まず、完全な住所を教えてください。 | |
大丈夫です | |
すみません、聞き取れませんでした。まず、完全な住所を教えてください。 | |
素晴らしい | |
うーん、やはりわかりませんでした。まず、完全な住所を教えてください。 | |
すばらしい | |
申し訳ありませんが、応答を理解するのが難しいです。 |
住所がサポート対象外
エンドユーザーが Address Validation API で現在サポートされていない住所を提供し、その後コンポーネントがフローを終了します。
ユーザー入力 | エージェントの応答 |
---|---|
まず、完全な住所を教えてください。 | |
インド | |
すみません、現在そのリージョンの住所を確認できません。 |
住所確認
住所収集コンポーネントが住所を検証する方法については、Address Validation API の概要をご覧ください。
住所収集コンポーネントは、@sys.address システム エンティティを使用してエンドユーザー入力をキャプチャし、取得した住所を Address Validation API に送信して、さらなる処理のために住所要素を抽出します。
Address Validation API から返される次の住所要素は、コンポーネントが完全な住所を収集して検証するために使用されます。
- administrative_area_level_1
- archipelago
- country
- locality
- postal_code
- ルート
- street_number
サポートされているリージョンの住所であれば、Google Address Validation Demo を試すことができます。
命名規則
この事前構築済みコンポーネントでは、次の命名規則が使用されています。
機能 | 形式 | 例 |
---|---|---|
フロー | [コンポーネント名] | 住所の収集 |
コンポーネントに固有のインテント | prebuilt_components_[component_name]_[intent_name] | prebuilt_components_address_collection_locality |
パラメータ | [param_name] | user_provided_address |
Webhook | prebuilt_components_[component_name]:[webhook_action] | prebuilt_components_address_collection:address_validation |
入力パラメータ
入力パラメータは、コンポーネントの特定の動作を構成するために使用されるパラメータです。このパラメータは、コンポーネントの動作を決定するためにフロー内の 1 つ以上の条件によって使用されます。フロースコープのパラメータは、後述するように、コンポーネントのスタートページで設定する必要があります。セッション スコープのパラメータは、呼び出しフローまたはこのコンポーネントのスタートページで設定できます。
フローのスタートページでパラメータ プリセットを変更することで、このコンポーネントに必要な住所要素を構成できます。
この事前構築済みコンポーネントは、次の入力パラメータを受け入れます。
パラメータ名 | 説明 | 入力形式 |
---|---|---|
$flow.zip_code | 郵便番号の住所要素が必要な場合は true 、それ以外の場合は false に設定します。 |
ブール値 |
$flow.city | 都市の住所要素が必要な場合は true に設定し、そうでない場合は false に設定します。 |
ブール値 |
$flow.admin_area | 行政区域の住所要素が必須の場合は true 、そうでない場合は false に設定します。 |
ブール値 |
$flow.street_number | 番地の住所要素が必須の場合は true 、そうでない場合は false に設定します。 |
ブール値 |
$flow.route | 地名の住所要素が必須の場合は true 、そうでない場合は false に設定します。 |
ブール値 |
$flow.country | 国の住所要素が必要な場合は true 、そうでない場合は false に設定します。 |
ブール値 |
$flow.island | 島名の住所要素が必要な場合は true 、そうでない場合は false に設定します。 |
ブール値 |
$flow.retry_num | Maps Address Validation API の Webhook 呼び出しの最大再試行回数を設定します | integer |
このコンポーネントの入力パラメータを構成するには、開いて手順を確認します。
- Dialogflow CX Console を開きます。
- ご自身の Google Cloud プロジェクトを選択します。
- エージェントを選択します。
- [Build] タブを選択します。
- [Flows] セクションでインポートされたコンポーネントをクリックします。
- [Pages] セクションで [Start Page] をクリックします。
- スタートページで true ルートをクリックします。
- [Route] ウィンドウで、必要に応じて [Parameter Presets] 値を編集します。
- [Save] をクリックします。
出力パラメータ
出力パラメータは、コンポーネントを終了した後もアクティブな状態を継続するセッション パラメータです。これらのパラメータには、コンポーネントによって収集される重要な情報が含まれます。この事前構築されたコンポーネントは、次の出力パラメータの値を提供します。
パラメータ名 | 説明 | 出力形式 |
---|---|---|
address_collection_address | このパラメータは、コンポーネントが住所を取得した場合の住所オブジェクトを返します | { |
address_collection_status | このパラメータは、収集された住所のステータスを返します。戻り値は次のいずれかです。VALID_ADDRESS : 住所検証 API によって住所が収集、検証されました。INVALID_ADDRESS : 住所がエンドユーザーによって確認されましたが、住所検証 API によって 1 つ以上の要素が検証されなかったか、UNCONUALMED_BUT_PLAUSIBLE とマークされました。MAPS_API_ERROR : 住所検証 API エラーにより住所が収集されませんでした。COUNTRY_NOT_SUPPORTED : 住所検証 API がそのリージョンをサポートしていないため、アドレスは収集されませんでした。NO_USER_CONFIRMATION : エンドユーザーが住所を確認しなかったため、住所が確認されませんでした。 |
string |
基本設定
この事前構築済みコンポーネントを設定するには:
- 事前構築済みコンポーネントをインポートします。
- Address Validation API を有効にします。
- 付属の Flexible Webhook を Maps API キーを使用して構成します。下記の Webhook の設定をご覧ください。
Webhook の設定
Address Validation API を使用して住所を検証するには、提供されたフレキシブルな Webhook に正しい認証情報を構成する必要があります。
Address Validation Webhook
この Webhook は次のアクションを実行します。
- キャプチャされた会話エージェント(Dialogflow CX)パラメータを処理してリクエストを形成し、Address Validation API を使用して住所を検証します。
- Google Address Validation API のレスポンスから、確認済み、未確認、欠落、推定の各住所要素を抽出します。
このコンポーネントの Webhook を構成するには、Maps API キーを使用して Webhook の設定を更新する必要があります。
- API キーを取得するには、[Google Cloud Platform Console] > [API とサービス] > [認証情報] に移動して Maps API キーを選択し、[API キー] フィールドをコピーします。
Webhook を構成するには:
- Dialogflow CX Console を開きます。
- ご自身の Google Cloud プロジェクトを選択します。
- エージェントを選択します。
- [Manage] タブを選択します。
- [Webhooks] をクリックします。
- prebuilt_components_address_collection:address_validation Webhook を選択します。
- 会話エージェント(Dialogflow CX)Webhook URL フィールドの URL を Maps API キーを含む URL に置き換えます。https://addressvalidation.googleapis.com/v1:validateAddress?key=MAPS_API_KEY
- [認証] 設定で、ユーザー名を
key
に構成し、パスワードを Maps API キーに設定します。 - [保存] をクリックします。
完了
これで、エージェントとその Webhook が設定され、テストの準備が整いました。