Componente precompilado de la recopilación de direcciones

El componente prediseñado de recopilación de direcciones recopila una dirección del usuario final y usa la API de Google Address Validation para validar direcciones.

Limitaciones

Además de las limitaciones comunes de los componentes prediseñados, este componente prediseñado tiene las siguientes limitaciones:

Funciones adicionales

Este componente prediseñado proporciona las siguientes funcionalidades adicionales:

Diálogos de muestra

En los siguientes diálogos de ejemplo, se muestran situaciones comunes que maneja este componente prediseñado. Los diálogos de muestra demuestran el comportamiento cuando se llama al componente a través de la telefonía, lo que activa el intent de bienvenida predeterminado y la primera respuesta del agente al inicio de la conversación.

Dirección completa y válida

El usuario final proporciona una dirección completa, y el componente de recopilación de direcciones la verifica correctamente.

Entrada del usuario Respuesta del agente
Para comenzar, dime tu dirección completa.
1600 Amphitheatre Parkway, Mountain View, CA 94043-1351, EE.UU.
Recopilé la dirección final: el número de la calle es 1600, la ruta es Amphitheatre Parkway, la ciudad es Mountain View, el área administrativa es CA, el código postal es 94043 y el país es EE.UU. ¿Verdad? Responde sí o no.
Fantástico. Ya tengo la dirección.

Dirección válida parcial con elementos inferidos

El usuario final proporciona una dirección parcial, el agente adivina la parte faltante y la verifica correctamente después de la confirmación del usuario final.

Entrada del usuario Respuesta del agente
Para comenzar, dime tu dirección completa.
1600 Amphitheatre Parkway
Adiviné parte de la dirección: la ciudad es Mountain View, el código postal es 94043, el área administrativa es CA y el país es EE.UU.

Recopilé la dirección final: el número de la calle es 1600, la ruta es Amphitheatre Parkway, la ciudad es Mountain View, el área administrativa es CA, el código postal es 94043 y el país es EE.UU. ¿Verdad? Responde sí o no.
Fantástico. Ya tengo la dirección.

Dirección válida parcial con elementos proporcionados por el usuario

El usuario final proporciona una dirección parcial; el agente adivina la parte faltante, pero el usuario final proporciona su propia entrada después de decir "no", y el agente acepta la dirección correctamente.

Entrada del usuario Respuesta del agente
Para comenzar, dime tu dirección completa.
1600 Amphitheatre Parkway
Adiviné parte de la dirección: la ciudad es Mountain View, el código postal es 94043, el área administrativa es CA y el país es EE.UU.

Recopilé la dirección final: el número de la calle es 1600, la ruta es Amphitheatre Parkway, la ciudad es Mountain View, el área administrativa es CA, el código postal es 94043 y el país es EE.UU. ¿Verdad? Responde sí o no.
No
De acuerdo. Indícame qué parte de la dirección se debe cambiar.
Código postal
¿Podrías compartir el código postal?
94044
Terminé con esta actualización. ¿Hay algo más que cambiar? Responde sí o no.
no
Después de la validación, reemplacé el código postal por 94043.

Recopilé la dirección final: el número de la calle es 1600, la ruta es Amphitheatre Parkway, la ciudad es Mountain View, el área administrativa es CA, el código postal es 94043 y el país es EE.UU. ¿Verdad? Responde sí o no.
Fantástico. Ya tengo la dirección.

Entrada no reconocida

El componente sale del flujo después de que el usuario final proporciona una entrada no reconocida tres veces.

Entrada del usuario Respuesta del agente
Para comenzar, dime tu dirección completa.
Está bien.
Lo siento, no entendí. Para comenzar, dime tu dirección completa.
amable
Mmm, sigo sin entender. Para comenzar, dime tu dirección completa.
genial
Lo siento, no entiendo tu respuesta.

Dirección no admitida

El componente sale del flujo después de que el usuario final proporciona una dirección que la API de Address Validation no admite actualmente.

Entrada del usuario Respuesta del agente
Para comenzar, dime tu dirección completa.
India
Lo siento, pero, en este momento, no puedo validar direcciones en esa región.

Validación de direcciones

Para comprender cómo el componente de recopilación de direcciones valida las direcciones, consulta la Descripción general de la API de Address Validation.

El componente de recopilación de direcciones captura la entrada del usuario final con la entidad del sistema@sys.address y envía la dirección capturada a la API de Address Validation para extraer los elementos de la dirección y procesarlos posteriormente.

La API de Address Validation devuelve los siguientes elementos de dirección, que el componente usa para recopilar y validar una dirección completa:

  • administrative_area_level_1
  • archipiélago
  • country
  • localidad
  • postal_code
  • ruta
  • street_number

Puedes probar la demostración de la API de Address Validation de Google con cualquier dirección de una región admitida.

Convenciones de nombres

Este componente prediseñado usa las siguientes convenciones de nomenclatura:

Función Formato Ejemplo
Flujo [Nombre del componente] Recopilación de direcciones
Intención específica del componente prebuilt_components_[component_name]_[intent_name] prebuilt_components_address_collection_locality
Parámetro [param_name] user_provided_address
Webhook prebuilt_components_[component_name]:[webhook_action] prebuilt_components_address_collection:address_validation

Parámetros de entrada

Los parámetros de entrada son los que se usan para configurar ciertos comportamientos del componente. Los parámetros se usarán en una o más condiciones dentro del flujo para determinar cómo debe comportarse el componente. Los parámetros con alcance de flujo se deben establecer en la página de inicio del componente, como se describe a continuación. Los parámetros con alcance de sesión se pueden establecer a través de un flujo de llamada o en la página de inicio de este componente.

Puedes configurar qué elementos de dirección requiere este componente modificando los parámetros predeterminados en la página de inicio del flujo.

Este componente prediseñado acepta los siguientes parámetros de entrada:

Nombre del parámetro Descripción Formato de entrada
$flow.zip_code Si el elemento de dirección del código postal es obligatorio, se debe establecer como true; de lo contrario, se debe establecer como false. booleano
$flow.city Si el elemento de dirección de la ciudad es obligatorio, se debe establecer como true; de lo contrario, se debe establecer como false. booleano
$flow.admin_area Si se requiere el elemento de dirección del área administrativa, se debe establecer como true; de lo contrario, se debe establecer como false. booleano
$flow.street_number Si se requiere el elemento de dirección del número de la calle, se debe establecer como true; de lo contrario, como false. booleano
$flow.route Si el elemento de dirección de la ruta es obligatorio, se debe establecer como true; de lo contrario, se debe establecer como false. booleano
$flow.country Si el elemento de dirección del país es obligatorio, se debe establecer como true; de lo contrario, se debe establecer como false. booleano
$flow.island Si el elemento de dirección de la isla es obligatorio, se debe establecer como true; de lo contrario, se debe establecer como false. booleano
$flow.retry_num Establece el límite máximo de reintentos para las llamadas de webhook de la API de Maps Address Validation integer

Para configurar los parámetros de entrada de este componente, expande las instrucciones.

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto de Google Cloud.
  3. Selecciona el agente.
  4. Selecciona la pestaña Build.
  5. Haz clic en el componente importado en la sección Flujos.
  6. Haz clic en la página de inicio en la sección Pages.
  7. Haz clic en la ruta true en la página de inicio.
  8. En la ventana Route, edita los valores de Parameter Presets según sea necesario.
  9. Haz clic en Guardar.

Los parámetros de resultado

Los parámetros de salida son parámetros de sesión que permanecerán activos después de salir del componente. Estos parámetros contienen información importante que recopila el componente. Este componente prediseñado proporciona valores para los siguientes parámetros de salida:

Nombre del parámetro Descripción Formato de salida
address_collection_address Este parámetro devuelve el objeto de dirección si el componente capturó una dirección.
{
"admin-area": string,
"city": string,
"country": string,
"island": string,
"route": string,
"zip-code": string,
"street-number": string
}
address_collection_status Este parámetro devuelve el estado de la dirección recopilada. El valor devuelto es uno de los siguientes:

VALID_ADDRESS: La API de Address Validation recopiló y validó la dirección.

INVALID_ADDRESS: El usuario final confirmó la dirección, pero la API de Address Validation no validó uno o más elementos o los marcó como UNCONFIRMED_BUT_PLAUSIBLE.

MAPS_API_ERROR: No se recopiló la dirección debido a un error de la API de Address Validation.

COUNTRY_NOT_SUPPORTED: No se recopiló la dirección porque la API de Address Validation no admite esa región.

NO_USER_CONFIRMATION: No se confirmó la dirección porque el usuario final no confirmó ninguna dirección.
string

Configuración básica

Para configurar este componente prediseñado, haz lo siguiente:

  1. Importa el componente compilado previamente.
  2. Habilita la API de Address Validation.
  3. Configura el webhook flexible proporcionado con tu clave de la API de Maps. Consulta la configuración del webhook a continuación.

Configuración de webhook

Para usar la API de Address Validation y validar direcciones, deberás configurar el webhook flexible proporcionado con las credenciales correctas.

Webhook de Address Validation

Este webhook realiza las siguientes acciones:

  1. Procesa los parámetros capturados de Dialogflow CX, solicita formularios y verifica la dirección con la API de Address Validation.
  2. Extrae los elementos de dirección confirmados, no confirmados, faltantes y los que se infieren de la respuesta de la API de Address Validation de Google.

Para configurar el webhook de este componente, deberás actualizar la configuración del webhook con tu clave de la API de Maps.

  1. Para recuperar tu clave de API, ve a Google Cloud Platform Console > APIs & Services > Credentials, selecciona tu clave de la API de Maps y copia el campo Clave de API.

Para configurar el webhook, sigue estos pasos:

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto de Google Cloud.
  3. Selecciona el agente.
  4. Selecciona la pestaña Administrar.
  5. Haz clic en Webhooks.
  6. Selecciona el webhook prebuilt_components_address_collection:address_validation.
  7. Reemplaza la URL en el campo URL de webhook de Dialogflow CX por la URL que incluye tu clave de API de Maps: https://addressvalidation.googleapis.com/v1:validateAddress?key=MAPS_API_KEY
  8. En la configuración de Authentication, configura el nombre de usuario como key y establece la contraseña en tu clave de la API de Maps.
  9. Haz clic en Guardar.

Completado

Tu agente y su webhook ya deberían estar configurados y listos para la prueba.