El componente precompilado de estado del pedido comprueba el nivel de autenticación de un cliente y, a continuación, proporciona información sobre los pedidos más recientes o anteriores del usuario a un cliente autenticado. Este componente usa el componente prediseñado Autenticación de comercio para autenticar a los usuarios. El componente también usa Generators para generar resúmenes después de las llamadas.
Limitaciones
Además de las limitaciones comunes de los componentes prediseñados, este componente prediseñado tiene las siguientes limitaciones:
- Este componente no cifra ningún dato.
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 mediante telefonía, lo que activa la intención de bienvenida predeterminada y la primera respuesta del agente al inicio de la conversación.
Pedido reciente
Un usuario final llama desde un número no registrado. El agente autentica al usuario y, a continuación, le proporciona información detallada sobre los envíos del pedido. El usuario confirma que quiere que se le envíe un SMS a su número de teléfono registrado con más detalles.
Entrada del usuario | Respuesta del agente |
---|---|
El agente autentica al usuario mediante el componente precompilado Autenticación de Retail. | |
De acuerdo, Juan. ¿Llamas por tu pedido más reciente de John Doe, que contiene una lámpara, una camisa y otros 10 artículos, realizado el 10 de noviembre del 2023 a las 18:00? | |
Sí | |
Tu pedido tiene 2 envíos, que se entregarán antes del 15 de enero del 2024. ¿Quieres obtener más información sobre estos envíos? |
|
Sí | |
El envío 1, que contiene unos vaqueros, un cinturón y otros dos artículos, está en tránsito y se entregará el 12/01/2024. El envío 2, que contiene una lámpara, una camisa y otros seis artículos, se entregó el 12/11/2023. ¿Quieres recibir un SMS con más detalles sobre tus artículos? |
|
Sí | |
Te hemos enviado un SMS con un enlace para hacer un seguimiento del estado de todos tus envíos. Gracias por llamarnos. |
Pedidos duplicados
El usuario final ya se ha autenticado. El usuario solicita información sobre un pedido y proporciona los cinco últimos dígitos del pedido. El agente identifica que varios pedidos realizados por este usuario comparten los mismos cinco últimos dígitos, por lo que confirma de qué pedido quiere saber el estado y se lo proporciona.
Entrada del usuario | Respuesta del agente |
---|---|
De acuerdo, Amber. ¿Llamas por tu pedido más reciente de Amber Doe, que incluye una lámpara, una camiseta y otros dos artículos, y que hiciste el 10 de noviembre del 2023 a las 18:00? | |
No | |
¿Podrías facilitarnos los 5 últimos dígitos del ID del pedido que quieres monitorizar? | |
12355 | |
Los últimos cinco dígitos del ID de pedido que hemos recibido son 12355. ¿Son correctos? | |
Sí, es correcto | |
Genial, ya hemos recogido el ID de pedido. | |
Según nuestros registros, hemos encontrado 2 pedidos que terminan con los mismos 5 dígitos: 12355. ¿Qué pedido buscas? ¿El pedido número 1, que se hizo el 10 de noviembre del 2023 a las 18:00, o el pedido número 2, que se hizo el 9 de noviembre del 2023 a las 20:00? Para seleccionar el pedido número 1, di 1. Para seleccionar el pedido número 2, di 2. Si no, di No. |
|
Pedir uno | |
Tu pedido tiene 2 envíos, que se entregarán antes del 15 de enero del 2024. ¿Quieres obtener más información sobre estos envíos? |
|
Sí | |
El envío 1, que contiene unos vaqueros, está en tránsito y se entregará el 15/01/2024. El envío 2, que contiene una lámpara, una camiseta y otro artículo, se ha cancelado. ¿Quieres recibir un SMS con más detalles sobre tus artículos? |
|
No, eso es todo. | |
Gracias por llamarnos. |
Convenciones de nombres
Este componente prediseñado usa las siguientes convenciones de nomenclatura:
Función | Formato | Ejemplo |
---|---|---|
Flujo | [Component Name] | Estado del pedido |
Webhook | prebuilt_components_[component_name]:[webhook_action] | prebuilt_components_order_status:get_order_details |
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 definidos en el flujo deben establecerse en la página de inicio del componente. 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.
Este componente prediseñado acepta los siguientes parámetros de entrada:
Nombre del parámetro | Descripción | Formato de entrada |
---|---|---|
$session.params.phone_number | (Opcional) Número de teléfono local del usuario, sin el código de país, que se usa para identificar al usuario. | cadena |
$session.params.all_recent_order_id | (opcional) Este parámetro muestra los IDs de pedido asociados al usuario autenticado, ordenados por la fecha de realización del pedido en orden descendente. El primer elemento del array representa el pedido más reciente. Si un usuario no tiene ningún pedido, el valor de este parámetro es null . |
Lista (cadena) |
$session.params.email | (Opcional) El correo registrado en la cuenta. | cadena |
$session.params.user_first_name | Nombre del usuario (opcional). Se usa para saludar al usuario y confirmar la propiedad de la cuenta. | cadena |
$flow.max_shipment | Especifica el número de envíos que se muestran al usuario a la vez. El valor predeterminado es 2 . |
entero |
$flow.tracking_status_delivered | Especifica el valor devuelto por el webhook que indica el estado de un pedido entregado. El valor predeterminado es "delivered" . |
cadena |
$flow.tracking_status_cancelled | Especifica el valor devuelto por el webhook que indica el estado de un pedido cancelado. El valor predeterminado es "cancelled" . |
cadena |
$flow.tracking_status_returned | Especifica el valor devuelto por el webhook que indica un estado de pedido devuelto. El valor predeterminado es "returned" . |
cadena |
$flow.tracking_status_partially_returned | Especifica el valor devuelto por el webhook que indica un estado de pedido devuelto parcialmente. El valor predeterminado es "partially returned" . |
cadena |
$flow.max_retry_alternate_profile | Especifica el número de reintentos permitidos al solicitar el estado de un pedido desde un número de teléfono no registrado o un perfil alternativo. El valor predeterminado es 3 . |
entero |
$flow.max_retry_order_number | Especifica el número de reintentos permitidos al proporcionar un número de pedido. El valor predeterminado es 3 . |
entero |
$flow.max_retry_another_order_id | Especifica el número de reintentos permitidos después de proporcionar un número de pedido no válido. El valor predeterminado es 3 . |
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 |
---|---|---|
phone_number | Número de teléfono local del usuario, sin el código de país, que se usa para identificar al usuario. | cadena |
all_recent_order_id | Este parámetro muestra los IDs de pedido asociados al usuario autenticado, ordenados por la fecha de realización del pedido de forma descendente. El primer elemento del array representa el pedido más reciente. Si un usuario no tiene ningún pedido, el valor de este parámetro es null . |
Lista (cadena) |
correo electrónico | El correo registrado en la cuenta. | cadena |
user_first_name | Nombre del usuario, que se usa para saludarle y confirmar que es el propietario de la cuenta. | cadena |
transfer_reason | Este parámetro indica el motivo por el que se ha cerrado el flujo, si no se ha completado correctamente. El valor devuelto es uno de los siguientes:agent : el usuario final ha solicitado un agente humano en algún momento de la conversación.denial_of_information : el usuario final se ha negado a compartir la información solicitada por el componente.max_no_input : la conversación ha alcanzado el número máximo de reintentos para eventos sin entrada. Consulta los eventos integrados sin entrada.max_no_match : la conversación ha alcanzado el número máximo de reintentos para los eventos sin coincidencias. Consulte los eventos integrados sin coincidencias.webhook_error : se ha producido un error de webhook. Consulte el evento integrado webhook.error. webhook_not_found : no se ha podido acceder a una URL de webhook. Consulte el evento integrado webhook.error.not-found. |
cadena |
Configuración básica
Para configurar este componente prediseñado, sigue estos pasos:
- Importa el componente precompilado.
- Configura los webhooks flexibles proporcionados con la configuración que describe tus servicios externos. Consulta la sección sobre la configuración de webhooks.
Configuración de webhook
Para usar este componente, debes configurar los webhooks flexibles incluidos para obtener la información necesaria de tus servicios externos.
Autenticación
Si no has configurado previamente los servicios externos necesarios para la autenticación, tendrás que hacerlo para habilitar la autenticación de los usuarios de este componente. Consulta las instrucciones detalladas para configurar el webhook de autenticación de comercio.
Obtener detalles del pedido
El webhook prebuilt_components_order_status:get_order_details
lo usa el componente para obtener los detalles de un pedido concreto.
Parámetros de solicitud a la API
El componente proporciona los siguientes parámetros como entradas para la solicitud de la API.
Nombre del parámetro | Descripción | Formato de entrada |
---|---|---|
$flow.order_id | ID del pedido del que se quieren obtener los detalles. | cadena |
Parámetros de respuesta de la API
Los siguientes parámetros se extraen de la respuesta de la API para que los use el componente.
Nombre del parámetro | Descripción | Formato de salida |
---|---|---|
order_date | Fecha en la que se hizo el pedido, en formato YYYY-MM-DD . |
cadena |
order_time | Hora en la que se hizo el pedido, en formato HH:MM . |
cadena |
order_status | Indica el estado del pedido. Entre los valores de ejemplo se incluyen "pending" , "processing" , "in-transit" , "on-hold" , "cancelled" , "delivered" , "returned" y "partially returned" . |
cadena |
order_product_name | Lista de nombres de productos del pedido. | Lista (cadena) |
order_product_quantity | Número total de productos pedidos de cada producto de un pedido. | entero |
order_product_count | Número de productos únicos de un pedido. | entero |
order_status_notification | Indica si las notificaciones están habilitadas en este pedido. | booleano |
return_eligibility_date | Lista de fechas hasta las que se puede devolver cada producto del pedido, en formato YYYY-MM-DD . |
Lista (cadena) |
order_customer_billing_name | Nombre del cliente de facturación del pedido. | cadena |
order_latest_delivery_date | La fecha de entrega más reciente de todas las fechas de entrega estimadas de los envíos del pedido, en formato YYYY-MM-DD . |
cadena |
order_shipment_multiple | Indica si el pedido contiene varios envíos. | booleano |
order_shipment_count | Número de envíos del pedido. | entero |
order_shipment_product_count | Número total de productos de cada envío del pedido. | Lista (entero) |
order_shipment_product_name | Lista de los nombres de los productos de cada envío del pedido. | Lista (cadena) |
order_estimated_delivery_date | Lista de fechas de entrega estimadas de cada envío del pedido en formato YYYY-MM-DD . |
Lista (cadena) |
order_shipment_status | Lista que indica el estado de cada envío del pedido. Entre los valores de ejemplo se incluyen "pending" , "processing" , "in-transit" , "on-hold" , "cancelled" , "delivered" , "returned" y "partially returned" . |
Lista (cadena) |
Para configurar el webhook Get order details de este componente, consulta las instrucciones.
- Abre la consola de Dialogflow CX.
- Elige tu proyecto de Google Cloud.
- Selecciona tu agente.
- Selecciona la pestaña Gestionar.
- Haz clic en Webhooks.
- Selecciona el webhook prebuilt_components_order_status:get_order_details.
- Sustituye la URL del campo URL de webhook de Conversational Agents (Dialogflow CX) por el endpoint del servicio con el que quieras integrar el agente. Seleccione el Método adecuado en el menú desplegable.
- Revisa y actualiza el cuerpo de la solicitud para que tenga el formato adecuado para tu webhook.
- Revisa y actualiza la configuración de la respuesta para extraer campos específicos de la respuesta de tu webhook. No modifique los nombres de los parámetros, ya que el componente los necesita para acceder a los valores de los campos devueltos.
- Revisa y actualiza la configuración de Autenticación según sea necesario.
- Haz clic en Guardar.
Obtener pedidos duplicados
El webhook prebuilt_components_retail_services:get_duplicate_order
lo usa el componente para obtener información detallada y distinguir entre pedidos cuando varios números de pedido tienen los mismos cinco últimos dígitos.
Parámetros de solicitud a la API
El componente proporciona los siguientes parámetros como entradas para la solicitud de la API.
Nombre del parámetro | Descripción | Formato de entrada |
---|---|---|
$flow.duplicate_order_id | Lista que contiene los cinco últimos dígitos de los números de pedido compartidos entre uno o varios pedidos del usuario. | Lista (cadena) |
Parámetros de respuesta de la API
Los siguientes parámetros se extraen de la respuesta de la API para que los use el componente.
Nombre del parámetro | Descripción | Formato de salida |
---|---|---|
all_order_date | Lista de fechas de pedidos duplicados con los cinco últimos dígitos especificados en formato YYYY-MM-DD . Cada elemento de esta matriz se corresponde con el mismo elemento de la matriz all_order_time . |
booleano |
all_order_time | Lista de horas de los pedidos duplicados con los cinco últimos dígitos especificados en formato HH:MM . Cada elemento de esta matriz se corresponde con el mismo elemento de la matriz all_order_date . |
número |
Para configurar el webhook Get duplicate orders 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 Gestionar.
- Haz clic en Webhooks.
- Selecciona el webhook prebuilt_components_retail_services:get_duplicate_order.
- Sustituye la URL del campo URL de webhook de Conversational Agents (Dialogflow CX) por el endpoint del servicio con el que quieras integrar el agente. Seleccione el Método adecuado en el menú desplegable.
- Revisa y actualiza el cuerpo de la solicitud para que tenga el formato adecuado para tu webhook.
- Revisa y actualiza la configuración de la respuesta para extraer campos específicos de la respuesta de tu webhook. No modifique los nombres de los parámetros, ya que el componente los necesita para acceder a los valores de los campos devueltos.
- Revisa y actualiza la configuración de Autenticación según sea necesario.
- Haz clic en Guardar.
Enviar un SMS
El webhook prebuilt_components_order_status:send_sms
se usa
para que el componente envíe los detalles del pedido al número de teléfono especificado mediante SMS.
Parámetros de solicitud a la API
El componente proporciona los siguientes parámetros como entradas para la solicitud de la API.
Nombre del parámetro | Descripción | Formato de entrada |
---|---|---|
$session.params.phone_number | Número de teléfono local del usuario, sin el código de país, que se usa para identificar al usuario. | cadena |
$flow.order_id | ID del pedido del que se van a enviar los detalles. | cadena |
Para configurar el webhook de envío de SMS de este componente, consulta las instrucciones.
- Abre la consola de Dialogflow CX.
- Elige tu proyecto de Google Cloud.
- Selecciona tu agente.
- Selecciona la pestaña Gestionar.
- Haz clic en Webhooks.
- Selecciona el webhook prebuilt_components_order_status:send_sms.
- Sustituye la URL del campo URL de webhook de Conversational Agents (Dialogflow CX) por el endpoint del servicio con el que quieras integrar el agente. Seleccione el Método adecuado en el menú desplegable.
- Revisa y actualiza el cuerpo de la solicitud para que tenga el formato adecuado para tu webhook.
- Revisa y actualiza la configuración de la respuesta para extraer campos específicos de la respuesta de tu webhook. No modifique los nombres de los parámetros, ya que el componente los necesita para acceder a los valores de los campos devueltos.
- Revisa y actualiza la configuración de Autenticación según sea necesario.
- Haz clic en Guardar.
Habilitar notificaciones
El webhook prebuilt_components_order_status:enable_notification
se usa
para que el componente habilite las notificaciones del número de teléfono registrado de un usuario.
Parámetros de solicitud a la API
El componente proporciona los siguientes parámetros como entradas para la solicitud de la API.
Nombre del parámetro | Descripción | Formato de entrada |
---|---|---|
$session.params.phone_number | Número de teléfono local del usuario, sin el código de país, que se usa para identificar al usuario. | cadena |
$flow.order_notification | Indica si las notificaciones deben estar habilitadas para el usuario. | booleano |
Para configurar el webhook Enable notifications de este componente, consulta las instrucciones.
- Abre la consola de Dialogflow CX.
- Elige tu proyecto de Google Cloud.
- Selecciona tu agente.
- Selecciona la pestaña Gestionar.
- Haz clic en Webhooks.
- Selecciona el webhook prebuilt_components_order_status:enable_notification.
- Sustituye la URL del campo URL de webhook de Conversational Agents (Dialogflow CX) por el endpoint del servicio con el que quieras integrar el agente. Seleccione el Método adecuado en el menú desplegable.
- Revisa y actualiza el cuerpo de la solicitud para que tenga el formato adecuado para tu webhook.
- Revisa y actualiza la configuración de la respuesta para extraer campos específicos de la respuesta de tu webhook. No modifique los nombres de los parámetros, ya que el componente los necesita para acceder a los valores de los campos devueltos.
- Revisa y actualiza la configuración de Autenticación según sea necesario.
- Haz clic en Guardar.
Completado
Tu agente y sus webhooks ya deberían estar configurados y listos para probarse.