El componente prediseñado de recogida de direcciones recoge una dirección del usuario final y usa la API Google Address Validation para validar las direcciones.
Limitaciones
Además de las limitaciones comunes de los componentes prediseñados, este componente prediseñado tiene las siguientes limitaciones:
- Solo admite direcciones de los países que se indican en Detalles de la cobertura de la API Address Validation.
Funciones adicionales
Este componente prediseñado proporciona las siguientes funciones adicionales:
Ejemplos de cuadros de diálogo
En los siguientes ejemplos de cuadros de diálogo se muestran situaciones habituales que gestiona este componente prediseñado. Los diálogos de ejemplo muestran el comportamiento cuando se llama al componente por telefonía, lo que activa el intent de bienvenida predeterminado y la primera respuesta del agente al inicio de la conversación.
Dirección válida completa
El usuario final proporciona una dirección completa y el componente de recogida de direcciones la verifica correctamente.
Entrada del usuario | Respuesta del agente |
---|---|
Para empezar, dime tu dirección completa. | |
1600 Amphitheatre Parkway, Mountain View, CA 94043-1351 (EE. UU.) | |
He recogido la dirección final: el número de la calle es 1600, la vía es Amphitheatre Parkway, la ciudad es Mountain View, la zona administrativa es CA, el código postal es 94043 y el país es EE. UU. ¿Es correcto? Di "Sí" o "No". | |
yes | |
Genial, 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 que falta y la verifica correctamente después de que el usuario final la confirme.
Entrada del usuario | Respuesta del agente |
---|---|
Para empezar, dime tu dirección completa. | |
1600 Amphitheatre Parkway | |
He adivinado una parte de la dirección: la ciudad es Mountain View, el código postal es 94043, la zona administrativa es CA y el país es EE. UU. He recogido la dirección final: el número de la calle es 1600, la vía es Amphitheatre Parkway, la ciudad es Mountain View, la zona administrativa es CA, el código postal es 94043 y el país es EE. UU. ¿Es correcto? Di "Sí" o "No". |
|
Sí | |
Genial, 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 que falta, pero el usuario final proporciona su propia información después de decir "no" y el agente acepta la dirección correctamente.
Entrada del usuario | Respuesta del agente |
---|---|
Para empezar, dime tu dirección completa. | |
1600 Amphitheatre Parkway | |
He adivinado una parte de la dirección: la ciudad es Mountain View, el código postal es 94043, la zona administrativa es CA y el país es EE. UU. He recogido la dirección final: el número de la calle es 1600, la vía es Amphitheatre Parkway, la ciudad es Mountain View, la zona administrativa es CA, el código postal es 94043 y el país es EE. UU. ¿Es correcto? Di "Sí" o "No". |
|
No | |
De acuerdo. Dime qué parte de la dirección quieres cambiar. | |
Código postal | |
¿Puedes decirme cuál es el código postal? | |
94044 | |
He terminado con esta actualización. ¿Hay algo más que cambiar? Di "Sí" o "No". | |
no | |
Tras la validación, he sustituido el código postal por 94043. He recogido la dirección final: el número de la calle es 1600, la vía es Amphitheatre Parkway, la ciudad es Mountain View, la zona administrativa es CA, el código postal es 94043 y el país es EE. UU. ¿Es correcto? Di "Sí" o "No". |
|
yes | |
Genial, ya tengo la dirección. |
Entrada no reconocida
El componente sale del flujo después de que el usuario final proporcione una entrada no reconocida tres veces.
Entrada del usuario | Respuesta del agente |
---|---|
Para empezar, dime tu dirección completa. | |
No pasa nada | |
Lo siento, no te he entendido. Para empezar, dime tu dirección completa. | |
bonito | |
Hmm, sigo sin entenderte. Para empezar, dime tu dirección completa. | |
genial | |
Perdona, me está costando entender tu respuesta. |
Dirección no admitida
El componente sale del flujo después de que el usuario final proporcione una dirección que no es compatible con la API Address Validation.
Entrada del usuario | Respuesta del agente |
---|---|
Para empezar, dime tu dirección completa. | |
India | |
Lo siento, pero no puedo validar direcciones de esa zona. |
Validación de direcciones
Para saber cómo valida las direcciones el componente de recogida de direcciones, consulta el artículo Descripción general de la API Address Validation.
El componente de recogida de direcciones captura la entrada del usuario final mediante la entidad de sistema@sys.address y envía la dirección capturada a la API Address Validation para extraer los elementos de la dirección y procesarlos posteriormente.
La API Address Validation devuelve los siguientes elementos de dirección, que el componente usa para recoger y validar una dirección completa:
- administrative_area_level_1
- archipelago
- country
- localidad
- postal_code
- ruta
- street_number
Puedes probar la demo de validación de direcciones 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 | [Component Name] | Address Collection |
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 parámetros que se usan para configurar determinados comportamientos del componente. Los parámetros los usarán una o varias condiciones del flujo para determinar cómo debe comportarse el componente. Los parámetros de ámbito de flujo deben definirse en la página de inicio del componente, tal como se describe a continuación. Los parámetros de ámbito de sesión se pueden definir mediante un flujo de llamada o en la página de inicio de este componente.
Para configurar qué elementos de dirección requiere este componente, modifique los ajustes predefinidos de los parámetros 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, defínelo como true ; de lo contrario, como false . |
booleano |
$flow.city | Si el elemento de dirección de la ciudad es obligatorio, defínelo como true . De lo contrario, defínelo como false . |
booleano |
$flow.admin_area | Si el elemento de dirección del área administrativa es obligatorio, se debe asignar el valor true ; de lo contrario, false . |
booleano |
$flow.street_number | Si el elemento de dirección del número de calle es obligatorio, asigna el valor true ; de lo contrario, asigna el valor false . |
booleano |
$flow.route | Si el elemento de dirección de la ruta es obligatorio, asigna el valor true . De lo contrario, asigna el valor false . |
booleano |
$flow.country | Si el elemento de dirección del país es obligatorio, defínelo como true . De lo contrario, defínelo como false . |
booleano |
$flow.island | Si el elemento de dirección de la isla es obligatorio, se debe definir como true . De lo contrario, se debe definir como false . |
booleano |
$flow.retry_num | Define el límite máximo de reintentos para las llamadas de webhook de la API Maps Address Validation. | entero |
Para configurar los parámetros de entrada de este componente, despliega las instrucciones.
- Abre la consola de Dialogflow CX.
- Elige tu proyecto de Google Cloud.
- Selecciona tu agente.
- Selecciona la pestaña Crear.
- En la sección Flujos, haz clic en el componente importado.
- En la sección Páginas, haz clic en Página de inicio.
- Haz clic en la ruta true de la página de inicio.
- En la ventana Ruta, edita los valores de Preajustes de parámetros según sea necesario.
- Haz clic en Guardar.
Parámetros de salida
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 recogida por 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 ha capturado una dirección. | { |
address_collection_status | Este parámetro devuelve el estado de la dirección recogida. El valor devuelto es uno de los siguientes:VALID_ADDRESS : la API Address Validation ha recogido y validado la dirección.INVALID_ADDRESS : el usuario final ha confirmado la dirección, pero la API Address Validation no ha validado uno o varios elementos o los ha marcado como UNCONFIRMED_BUT_PLAUSIBLE.MAPS_API_ERROR : no se ha recogido la dirección debido a un error de la API Address Validation.COUNTRY_NOT_SUPPORTED : no se ha recogido la dirección porque la API Address Validation no admite esa región.NO_USER_CONFIRMATION : no se ha confirmado la dirección porque el usuario final no ha confirmado ninguna. |
string |
Configuración básica
Para configurar este componente prediseñado, sigue estos pasos:
- Importa el componente precompilado.
- Habilita la API Address Validation.
- Configura el webhook flexible proporcionado con tu clave de API de Maps. Consulta la sección Configuración de webhook más abajo.
Configuración de webhook
Para usar la API Address Validation y validar direcciones, deberá configurar el webhook flexible proporcionado con las credenciales correctas.
Webhook de Address Validation
Este webhook realiza las siguientes acciones:
- Procesa los parámetros de los agentes conversacionales (Dialogflow CX), envía la solicitud y verifica la dirección mediante la API Address Validation.
- Extrae elementos de dirección confirmados, no confirmados, que faltan e inferidos de la respuesta de la API de validación de direcciones de Google.
Para configurar el webhook de este componente, debes actualizar los ajustes del webhook con tu clave de la API Maps.
- Para obtener tu clave de API, ve a Google Cloud Platform Console > APIs & Services > Credentials (Consola de Google Cloud Platform > APIs y servicios > Credenciales), selecciona tu clave de API de Maps y copia el campo Clave de API.
Para configurar el webhook, sigue estos pasos:
- Abre la consola de Dialogflow CX.
- Elige tu proyecto de Google Cloud.
- Selecciona tu agente.
- Selecciona la pestaña Gestionar.
- Haz clic en Webhooks.
- Seleccione el webhook prebuilt_components_address_collection:address_validation.
- Sustituye la URL del campo URL de webhook de Conversational Agents (Dialogflow CX) por la URL que incluye tu clave de la API Maps: https://addressvalidation.googleapis.com/v1:validateAddress?key=MAPS_API_KEY.
- En la configuración de Autenticación, configure el nombre de usuario como
key
y establezca la contraseña con su clave de API de Maps. - Haz clic en Guardar.
Completado
Tu agente y su webhook ya deberían estar configurados y listos para probarse.