Componente precompilado de estado del pedido

El componente precompilado de estado del pedido verifica el nivel de autenticación de un cliente y, luego, proporciona información sobre los pedidos más recientes o anteriores del usuario a un cliente autenticado. Este componente usa el componente precompilado de autenticación de venta minorista para autenticar a los usuarios. El componente también usa generadores para el resumen posterior a la llamada.

Limitaciones

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

  • Este componente no encripta ningún dato.

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 con telefonía, lo que activa el intent de bienvenida predeterminado y la primera respuesta del agente al comienzo de la conversación.

Pedido reciente

El usuario final llama desde un número no registrado. El agente autentica al usuario y, luego, proporciona información detallada sobre los envíos del pedido. El usuario confirma que desea que se envíe un SMS a su número de teléfono registrado con detalles adicionales.

Entrada del usuario Respuesta del agente
El agente autentica al usuario con el componente precompilado de autenticación de venta minorista
De acuerdo, John. ¿Te comunicas en relación con tu pedido más reciente para Juan Pérez, que contiene una lámpara, una camisa y otros 10 artículos, realizado el 10/11/2023 a las 6:00 p.m.?
Tu pedido tiene 2 envíos, que se entregarán el 15/01/2024.

¿Quieres obtener más información sobre estos envíos?
El envío 1, que contiene jeans, un cinturón y 2 artículos más, está en tránsito y se entregará el 12/01/2024.

El envío 2, que contiene una lámpara, una camisa y 6 artículos más, se entregó el 12/11/2023.

¿Quieres recibir un SMS con más detalles sobre tus artículos?
Te enviamos un SMS con un vínculo para hacer un seguimiento del estado de todos tus envíos. Gracias por llamarnos.

Pedidos duplicados

El usuario final ya se autenticó. El usuario solicita información sobre un pedido y proporciona los últimos cinco dígitos del pedido. El agente identifica que varios pedidos realizados por este usuario comparten los mismos últimos cinco dígitos, por lo que confirma el pedido del que el usuario desea conocer el estado y le proporciona el estado del pedido.

Entrada del usuario Respuesta del agente
Muy bien, Amber. ¿Te comunicas en relación con tu pedido más reciente para Amber Doe, que contiene una lámpara, una camisa y otros 2 artículos, realizado el 10/11/2023 a las 6:00 p.m.?
No
¿Podrías proporcionar los últimos 5 dígitos del ID del pedido del que quieres hacer un seguimiento?
12355
Los últimos cinco dígitos del ID del pedido que tenemos son 12355, ¿es correcto?
Sí, es correcto
Genial, ya terminamos de recopilar el ID del pedido.
Según nuestros registros, encontramos 2 pedidos que terminan con los mismos 5 dígitos: 12355. ¿Qué pedido estás buscando?

¿El número 1, que se realizó el 10/11/2023 a las 6:00 p.m., o el número 2, que se realizó el 9/11/2023 a las 8:00 p.m.?

Para seleccionar el pedido número uno, di 1. Para seleccionar el pedido número dos, di 2. De lo contrario, di que no.
Pedir uno
Tu pedido tiene 2 envíos, que se entregarán el 15/01/2024.

¿Quieres obtener más información sobre estos envíos?
El envío 1, que contiene jeans, está en tránsito y se entregará el 15/01/2024.

Se canceló el envío 2, que contiene una lámpara, una camisa y 1 otro artículo.

¿Quieres recibir un SMS con más detalles sobre tus artículos?
No, eso es todo
Gracias por llamarnos.

Convenciones de nombres

Este componente precompilado usa las siguientes convenciones de nombres:

Atributo Formato Ejemplo
Flujo [Nombre del componente] 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 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. 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.

Este componente precompilado acepta los siguientes parámetros de entrada:

Nombre del parámetro Descripción Formato de entrada
$session.params.phone_number (Opcional) Es el número de teléfono local del usuario, sin el código de país, que se usa para identificarlo. string
$session.params.all_recent_order_id (opcional) Este parámetro enumera los IDs de pedido asociados con el 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 pedidos, el valor de este parámetro es null. Lista (cadena)
$session.params.email (Opcional) El correo electrónico registrado en la cuenta. string
$session.params.user_first_name Es el nombre (opcional) del usuario, que se usa para saludar y confirmar la propiedad de la cuenta. string
$flow.max_shipment Especifica la cantidad de envíos que se muestran al usuario a la vez. El valor predeterminado es 2. integer
$flow.tracking_status_delivered Especifica el valor que muestra el webhook que indica un estado de pedido entregado. El valor predeterminado es "delivered". string
$flow.tracking_status_cancelled Especifica el valor que muestra el webhook que indica un estado de pedido cancelado. El valor predeterminado es "cancelled". string
$flow.tracking_status_returned Especifica el valor que muestra el webhook que indica un estado de pedido devuelto. El valor predeterminado es "returned". string
$flow.tracking_status_partially_returned Especifica el valor que muestra el webhook que indica un estado de pedido devuelto parcialmente. El valor predeterminado es "partially returned". string
$flow.max_retry_alternate_profile Especifica la cantidad de reintentos permitidos cuando se solicita el estado del pedido desde un número de teléfono no registrado o un perfil alternativo. El valor predeterminado es 3. integer
$flow.max_retry_order_number Especifica la cantidad de reintentos permitidos cuando se proporciona un número de pedido. El valor predeterminado es 3. integer
$flow.max_retry_another_order_id Especifica la cantidad de reintentos permitidos después de proporcionar un número de pedido no válido. El valor predeterminado es 3. 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 Parámetros predefinidos 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
phone_number Es el número de teléfono local del usuario, sin el código de país, que se usa para identificarlo. string
all_recent_order_id Este parámetro muestra los IDs de pedido asociados con el 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 pedidos, el valor de este parámetro es null. Lista (cadena)
correo electrónico El correo electrónico registrado en la cuenta. string
user_first_name Es el nombre del usuario, que se usa para saludar y confirmar la propiedad de la cuenta. string
transfer_reason Este parámetro indica el motivo por el que se cerró el flujo, si no se realizó correctamente. El valor que se muestra es uno de los siguientes:

agent: El usuario final solicitó un agente humano en algún momento durante la conversación.

denial_of_information: El usuario final rechazó compartir la información que solicitó el componente.

max_no_input: La conversación alcanzó la cantidad máxima de reintentos para los eventos sin entrada. Consulta Eventos integrados sin entrada.

max_no_match: La conversación alcanzó la cantidad máxima de reintentos para los eventos de sin coincidencia. Consulta eventos integrados de sin coincidencia.

webhook_error: Se produjo un error de webhook. Consulta el evento integrado webhook.error.

webhook_not_found: No se pudo acceder a una URL de webhook. Consulta el evento integrado webhook.error.not-found.
string

Configuración básica

Para configurar este componente precompilado, sigue estos pasos:

  1. Importa el componente precompilado.
  2. Configura los webhooks flexibles proporcionados con la configuración que describe tus servicios externos. Consulta la configuración de webhooks.

Configuración del webhook

Para usar este componente, deberás configurar los webhooks flexibles incluidos para recuperar la información necesaria de tus servicios externos.

Autenticación

Si no configuraste los servicios externos necesarios para la autenticación, deberás hacerlo para habilitar la autenticación de los usuarios de este componente. Consulta Configuración del webhook de autenticación de venta minorista para obtener instrucciones detalladas.

Obtén los detalles del pedido

El componente usa el webhook prebuilt_components_order_status:get_order_details para recuperar los detalles de un pedido específico.

Parámetros de solicitud a la API

El componente proporciona los siguientes parámetros como entradas a la solicitud de la API.

Nombre del parámetro Descripción Formato de entrada
$flow.order_id Es el ID de pedido del que se quieren recuperar los detalles. string

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 Es la fecha en la que se realizó el pedido, en formato YYYY-MM-DD. string
order_time Es la hora en que se realizó el pedido, en formato HH:MM. string
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". string
order_product_name Es la lista de nombres de los productos del pedido. Lista (cadena)
order_product_quantity Es el recuento total de la cantidad de productos pedidos para cada producto dentro de un pedido. integer
order_product_count Es la cantidad de productos únicos de un pedido. integer
order_status_notification Indica si las notificaciones están habilitadas para este pedido. booleano
return_eligibility_date Es la lista de fechas hasta las que cada producto del pedido es apto para la devolución, en formato YYYY-MM-DD. Lista (cadena)
order_customer_billing_name Es el nombre del cliente que aparece en la facturación del pedido. string
order_latest_delivery_date Es 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. string
order_shipment_multiple Indica si el pedido contiene varios envíos. booleano
order_shipment_count Es la cantidad de envíos del pedido. integer
order_shipment_product_count Es el recuento total de productos en cada envío del pedido. Lista (número entero)
order_shipment_product_name Es la lista de los nombres de los productos de cada envío del pedido. Lista (cadena)
order_estimated_delivery_date Es la lista de las fechas de entrega estimadas de cada envío del pedido, en formato YYYY-MM-DD. Lista (cadena)
order_shipment_status Es una lista que indica el estado de cada envío dentro 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, 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 Administrar.
  5. Haz clic en Webhooks.
  6. Selecciona el webhook prebuilt_components_order_status:get_order_details.
  7. Reemplaza la URL del campo Webhook URL de los agentes de conversación (Dialogflow CX) por el extremo del servicio con el que deseas realizar la integración. Selecciona el Método adecuado en el menú desplegable.
  8. Revisa y actualiza el cuerpo de la solicitud para formar el formato de solicitud adecuado para tu webhook.
  9. Revisa y actualiza la configuración de la respuesta para extraer campos específicos de la respuesta de tu webhook. No modifiques los nombres de los parámetros, ya que el componente los requiere para acceder a los valores de los campos que se muestran.
  10. Revisa y actualiza la configuración de Authentication según sea necesario.
  11. Haz clic en Guardar.

Cómo obtener pedidos duplicados

El componente usa elwebhook prebuilt_components_retail_services:get_duplicate_order para recuperar información detallada y distinguir entre pedidos cuando varios números de pedido tienen los mismos últimos cinco dígitos.

Parámetros de solicitud a la API

El componente proporciona los siguientes parámetros como entradas a la solicitud de la API.

Nombre del parámetro Descripción Formato de entrada
$flow.duplicate_order_id Es una lista que contiene los últimos cinco dígitos de los números de pedido compartidos entre uno o más 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 Es la lista de fechas de pedidos duplicados con los últimos cinco dígitos especificados en formato YYYY-MM-DD. Cada elemento de este array corresponde al mismo elemento del array all_order_time. booleano
all_order_time Es la lista de horas de pedido de los pedidos duplicados con los últimos cinco dígitos especificados en formato HH:MM. Cada elemento de este array corresponde al mismo elemento del array all_order_date. número

Para configurar el webhook Get duplicate orders 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 Administrar.
  5. Haz clic en Webhooks.
  6. Selecciona el webhook prebuilt_components_retail_services:get_duplicate_order.
  7. Reemplaza la URL del campo Webhook URL de los agentes de conversación (Dialogflow CX) por el extremo del servicio con el que deseas realizar la integración. Selecciona el Método adecuado en el menú desplegable.
  8. Revisa y actualiza el cuerpo de la solicitud para formar el formato de solicitud adecuado para tu webhook.
  9. Revisa y actualiza la configuración de la respuesta para extraer campos específicos de la respuesta de tu webhook. No modifiques los nombres de los parámetros, ya que el componente los requiere para acceder a los valores de los campos que se muestran.
  10. Revisa y actualiza la configuración de Authentication según sea necesario.
  11. Haz clic en Guardar.

Enviar SMS

El componente usa elwebhook prebuilt_components_order_status:send_sms para enviar los detalles del pedido al número de teléfono especificado por SMS.

Parámetros de solicitud a la API

El componente proporciona los siguientes parámetros como entradas a la solicitud de la API.

Nombre del parámetro Descripción Formato de entrada
$session.params.phone_number Es el número de teléfono local del usuario, sin el código de país, que se usa para identificarlo. string
$flow.order_id Es el ID del pedido para el que se enviarán los detalles. string

Para configurar el webhook de Send SMS para este componente, expande 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 Administrar.
  5. Haz clic en Webhooks.
  6. Selecciona el webhook prebuilt_components_order_status:send_sms.
  7. Reemplaza la URL del campo Webhook URL de los agentes de conversación (Dialogflow CX) por el extremo del servicio con el que deseas realizar la integración. Selecciona el Método adecuado en el menú desplegable.
  8. Revisa y actualiza el cuerpo de la solicitud para formar el formato de solicitud adecuado para tu webhook.
  9. Revisa y actualiza la configuración de la respuesta para extraer campos específicos de la respuesta de tu webhook. No modifiques los nombres de los parámetros, ya que el componente los requiere para acceder a los valores de los campos que se muestran.
  10. Revisa y actualiza la configuración de Authentication según sea necesario.
  11. Haz clic en Guardar.

Habilitar notificaciones

El componente usa el webhook prebuilt_components_order_status:enable_notification para habilitar las notificaciones para el 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 a la solicitud de la API.

Nombre del parámetro Descripción Formato de entrada
$session.params.phone_number Es el número de teléfono local del usuario, sin el código de país, que se usa para identificarlo. string
$flow.order_notification Indica si se deben habilitar las notificaciones para el usuario. booleano

Para configurar el webhook Enable notifications 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 Administrar.
  5. Haz clic en Webhooks.
  6. Selecciona el webhook prebuilt_components_order_status:enable_notification.
  7. Reemplaza la URL del campo Webhook URL de los agentes de conversación (Dialogflow CX) por el extremo del servicio con el que deseas realizar la integración. Selecciona el Método adecuado en el menú desplegable.
  8. Revisa y actualiza el cuerpo de la solicitud para formar el formato de solicitud adecuado para tu webhook.
  9. Revisa y actualiza la configuración de la respuesta para extraer campos específicos de la respuesta de tu webhook. No modifiques los nombres de los parámetros, ya que el componente los requiere para acceder a los valores de los campos que se muestran.
  10. Revisa y actualiza la configuración de Authentication según sea necesario.
  11. Haz clic en Guardar.

Completado

Tu agente y sus webhooks ya deberían estar configurados y listos para probarse.