Componente precompilado de la recopilación de direcciones

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

Limitaciones

Además de las limitaciones comunes de los componentes precompilados, este componente precompilado tiene las siguientes limitaciones:

Funciones adicionales

Este componente precompilado proporciona las siguientes funciones adicionales:

Diálogos de muestra

En los siguientes diálogos de muestra, se muestran situaciones comunes que controla este componente precompilado. Los diálogos de muestra demuestran el comportamiento cuando se llama al componente por teléfono, lo que activa el intent de bienvenida predeterminado y la primera respuesta del agente al comienzo 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.
Tengo la dirección final: el número de 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? Di sí o no.
Genial, tengo la dirección.

Dirección parcialmente válida con elementos inferidos

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

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 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? Di sí o no.
Genial, 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 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? Di sí o no.
No
Muy bien. Dime qué parte de la dirección se debe cambiar.
Código postal
¿Puedes compartir el código postal?
94044
Terminé con esta actualización. ¿Hay algo más que deba cambiar? Di 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 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? Di sí o no.
Genial, 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.
agradable
Mmm, no pude entender. Para comenzar, dime tu dirección completa.
genial
Lo siento, tengo dificultades para entender 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 de esa región.

Validación de la dirección

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 continuar con el procesamiento.

La API de Address Validation muestra 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
  • route
  • street_number

Puedes probar la demostración de validación de direcciones de Google con cualquier dirección de una región admitida.

Convenciones de nombres

Este componente precompilado usa las siguientes convenciones de nombres:

Atributo Formato Ejemplo
Flujo [Nombre del componente] Recopilación de direcciones
Intent específico 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 parámetros que se usan para configurar ciertos comportamientos del componente. Una o más condiciones dentro del flujo usarán los parámetros para determinar cómo debe comportarse el componente. Los parámetros centrados en el flujo se deben configurar en la página de inicio del componente, como se describe a continuación. Los parámetros centrados en la sesión se pueden establecer mediante un flujo de llamadas o en la página de inicio de este componente.

Para configurar los elementos de dirección que requiere este componente, modifica los parámetros predeterminados en la página de inicio del flujo.

Este componente precompilado 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, configúralo como true; de lo contrario, configúralo como false. booleano
$flow.city Si el elemento de dirección de la ciudad es obligatorio, configúralo como true; de lo contrario, configúralo como false. booleano
$flow.admin_area Si el elemento de dirección del área administrativa es obligatorio, configúralo como true; de lo contrario, configúralo como false. booleano
$flow.street_number Si el elemento de dirección del número de calle es obligatorio, configúralo como true; de lo contrario, configúralo como false. booleano
$flow.route Si el elemento de dirección de la ruta es obligatorio, configúralo como true; de lo contrario, configúralo como false. booleano
$flow.country Si el elemento de dirección del país es obligatorio, configúralo como true; de lo contrario, configúralo como false. booleano
$flow.island Si el elemento de dirección de la isla es obligatorio, configúralo como true; de lo contrario, configúralo como false. booleano
$flow.retry_num Establece el límite máximo de reintentos para las llamadas a webhook de la API de Maps Address Validation integer

Para configurar los parámetros de entrada de este componente, expande la sección para obtener 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 principal en la sección Páginas.
  7. Haz clic en la ruta true en la página principal.
  8. En la ventana Ruta, 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 precompilado proporciona valores para los siguientes parámetros de salida:

Nombre del parámetro Descripción Formato de salida
address_collection_address Este parámetro muestra 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 muestra el estado de la dirección recopilada. El valor que se muestra 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 bien 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ó una dirección.
string

Configuración básica

Para configurar este componente precompilado, sigue estos pasos:

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

Configuración del 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 los agentes conversacionales (Dialogflow CX), forma la solicitud y verifica la dirección con la API de Address Validation.
  2. Extrae elementos de direcciones confirmados, no confirmados, faltantes y inferidos de la respuesta de la API de Google Address Validation.

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

  1. Para recuperar tu clave de API, ve a Google Cloud Platform Console > APIs y servicios > Credenciales, selecciona tu clave de API de Maps y copia el campo de la 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 del campo Webhook URL de los agentes de conversación (Dialogflow CX) por la URL que incluya 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 la contraseña como 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 probarlos.