Componente prediseñado para concertar citas

El componente prediseñado de concertar cita permite a los clientes nuevos y actuales reservar citas. Este componente usa una versión personalizada del componente prediseñado Recogida de fecha de nacimiento para recoger las fechas de las citas y los componentes prediseñados Recogida de número de teléfono y Recogida de código postal para recoger información sobre el usuario y la ubicación de la cita.

Motivos y tipos de citas

Este componente admite varias categorías de motivos de la cita y ofrece diferentes tipos de citas en función del motivo seleccionado por el usuario.

Motivo de la cita Tipos de citas disponibles
Préstamos Presencial, virtual o por teléfono
Hipotecas Presencial, virtual o por teléfono
Gestión del patrimonio Presencial, virtual o por teléfono
Tarjetas de crédito Virtual, teléfono
Otro Teléfono

Las categorías de citas se pueden personalizar modificando la prebuilt_components_arrange_appt_reasonentidad personalizada. Los tipos de citas disponibles para cada categoría se pueden configurar modificando los parámetros de entrada de cada tipo de cita.

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

Un usuario reserva una cita presencial

El agente identifica que el usuario ya se ha autenticado como usuario. El usuario indica el motivo de su cita y selecciona la opción para concertar una cita presencial. El agente confirma que el usuario quiere ir a la sucursal más cercana a su dirección registrada y que la fecha y la hora que ha indicado están disponibles. El agente confirma la hora y el lugar, y programa la cita correctamente.

Entrada del usuario Respuesta del agente
Antes de concertar una cita, te haremos algunas preguntas. ¿Puede decirnos el motivo de su cita?
Quiero hablar con alguien sobre gestión de patrimonio
¿Quieres concertar una cita por teléfono, por videollamada o presencial en una de nuestras sucursales?
Quiero ir en persona
¿Quieres concertar una cita en la sucursal situada en 1600 Amphitheatre Pkwy, Mountain View, CA 94043?
Indica la fecha que prefieres para la cita. Dinos el mes que prefieras, seguido del día y el año. Recuerda que nuestras sucursales están abiertas de lunes a viernes de 9:00 a 17:00 y los sábados de 9:00 a 13:00.
El agente recoge la fecha de la cita que prefiere el usuario mediante el componente prediseñado Recogida de fecha de nacimiento.
Genial, ya tenemos la fecha que prefieres.

Indícanos la franja horaria que prefieras.
10:00
Has seleccionado las 10:00. Para continuar con la hora de la cita seleccionada, di "Sí".
Programaremos una cita en la dirección del banco 1600 Amphitheatre Pkwy, Mountain View, CA 94043 el 23 de septiembre del 2023 a las 10:00. ¿Es correcto?
De acuerdo, hemos programado la cita. Tu número de confirmación es 818452. ¿Quieres concertar otra cita?
No, eso es todo.
Gracias por ponerte en contacto con nosotros. ¡Que tengas un buen día!

Un cliente nuevo reserva varias citas

El agente identifica que el usuario no se ha autenticado previamente y recoge su número de teléfono. El usuario solicita una cita virtual para hablar sobre préstamos. La primera preferencia del usuario para la fecha y la hora no está disponible, por lo que el agente le ofrece las horas disponibles. El usuario selecciona un intervalo de tiempo disponible y la cita se programa correctamente. El usuario confirma que quiere concertar una segunda cita y el agente la programa correctamente.

Entrada del usuario Respuesta del agente
El agente recoge el número de teléfono del usuario mediante el componente precompilado Recogida del número de teléfono
Genial, ya hemos recogido el número de teléfono.

Antes de concertar una cita, te haremos algunas preguntas. ¿Puede decirnos el motivo de su cita?
Quiero obtener un préstamo
¿Quieres concertar una cita por teléfono, por videollamada o presencial en una de nuestras sucursales?
Me parece bien la cita virtual
Indica la fecha que prefieres para la cita. Dinos el mes que prefieras, seguido del día y el año. Recuerda que nuestras sucursales están abiertas de lunes a viernes de 9:00 a 17:00 y los sábados de 9:00 a 13:00.
El agente recoge la fecha de la cita que prefiere el usuario mediante el componente prediseñado Recogida de fecha de nacimiento.
Genial, ya tenemos la fecha que prefieres.

Indícanos la franja horaria que prefieras.
Las 3:00 me vendría bien
Has seleccionado las 15:00. Para continuar con la hora de la cita seleccionada, di que sí.
Concertaremos una cita con nuestro asesor el 3 de octubre del 2023 a las 15:00. ¿Es correcto?
De acuerdo, hemos programado la cita. Tu número de confirmación es 754731.

¿Quieres concertar otra cita?
Sí.
Antes de concertar una cita, te haremos algunas preguntas. ¿Puede decirnos el motivo de su cita?
Necesito concertar una cita para mi tarjeta de crédito
¿Quieres concertar una cita por teléfono o videollamada con uno de nuestros representantes de sucursal?
Teléfono
Indica la fecha que prefieres para la cita. Dinos el mes que prefieras, seguido del día y el año. Recuerda que nuestras sucursales están abiertas de lunes a viernes de 9:00 a 17:00 y los sábados de 9:00 a 13:00.
El agente recoge la fecha de la cita que prefiere el usuario mediante el componente prediseñado Recogida de fecha de nacimiento.
Genial, ya tenemos la fecha que prefieres.

Indícanos la franja horaria que prefieras.
¿Te viene bien a las 8:00?
Has seleccionado las 08:00. Para continuar con la hora de la cita seleccionada, di que sí.
Lo sentimos, la franja horaria seleccionada no está disponible. Tenemos disponibilidad a las 11:30, 12:30, 13:30 y 15:00 del 6 de octubre del 2023. ¿Quieres cambiar la franja horaria o concertar una cita para otra fecha?
Vale, pues a las 1:30
Has seleccionado las 13:30. Para continuar con la hora de la cita seleccionada, di que sí.
Programaremos una cita con nuestro asesor para el 6 de octubre del 2023 a las 13:30. ¿Es correcto?
De acuerdo, hemos programado la cita. Tu número de confirmación es 714637.

¿Quieres concertar otra cita?
No, eso es todo
Gracias por ponerte en contacto con nosotros. ¡Que tengas un buen día!

Convenciones de nombres

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

Función Formato Ejemplo
Flujo [Component Name] Concertar una cita
Intención específica del componente prebuilt_components_[component_name]_[intent_name] prebuilt_components_arrange_appt_change_date_slot
Tipo de entidad prebuilt_components_[component_name]_[entity_type] prebuilt_components_arrange_appt_reason
Webhook prebuilt_components_[component_name]:[webhook_action] prebuilt_components_arrange_appointment:submit_appointment

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.

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 registrado del cliente que se usa para la autenticación. cadena
$session.params.auth_level (Opcional) Indica el nivel de autenticación de la persona que llama. entero
$flow.all_appointment_type Especifica la lista de motivos de la cita para los que están disponibles todos los tipos de citas. El valor predeterminado es ["loans", "wealth"]. Lista (cadena)
$flow.video_phone_appointment_type Especifica la lista de motivos de la cita para los que están disponibles todos los tipos de citas. El valor predeterminado es ["cards"]. Lista (cadena)
$flow.appointment_services Especifica la lista de tipos de cita para los que no se requiere la ubicación de la sucursal y no se recogerá del usuario. El valor predeterminado es ["video", "phone"]. Lista (cadena)
$flow.working_hours Especifica el horario de apertura de la sucursal. Por ejemplo, "Monday to Friday: 9 AM to 5 PM, Saturday: 9 AM to 1 PM". cadena
$session.params.arrange_appointment_max_days Especifica el número máximo de días posteriores a la fecha actual en los que se puede reservar una cita. De forma predeterminada, este valor es 90, lo que indica que las citas se pueden reservar con un máximo de 90 días de antelación. Este parámetro se define en la ruta de la página de inicio true. entero
flow.max_retry_count Especifica el número de reintentos permitidos al recoger información del usuario. El valor predeterminado es 3. entero

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

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto de Google Cloud.
  3. Selecciona tu agente.
  4. Selecciona la pestaña Crear.
  5. En la sección Flujos, haz clic en el componente importado.
  6. En la sección Páginas, haz clic en Página de inicio.
  7. Haz clic en la ruta true de la página de inicio.
  8. En la ventana Ruta, edita los valores de Preajustes de parámetros según sea necesario.
  9. 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
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:

  1. Importa el componente precompilado.
  2. Configura los webhooks flexibles proporcionados con la configuración que describe tus servicios externos. Consulta la sección Configuración de webhook más abajo.

Configuración de webhook

Para usar este componente, debes configurar los webhooks flexibles incluidos para obtener la información necesaria de tus servicios externos.

Obtener cuenta

El webhook prebuilt_components_arrange_appointment:get_account lo usa el componente para obtener los detalles de la cuenta de un número de teléfono proporcionado, si existe una cuenta registrada.

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

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
account_count Número de cuentas asociadas al número de teléfono registrado. entero
cards_count Número de tarjetas asociadas al número de teléfono registrado. entero
loans_count Número de préstamos asociados al número de teléfono registrado. entero
mortgage_count Número de hipotecas asociadas al número de teléfono registrado. entero
branch_code Código de sucursal asociado al número de teléfono registrado, que se usa para identificar una sucursal única. cadena

Para configurar el webhook de obtener cuenta de este componente, despliega las instrucciones.

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto de Google Cloud.
  3. Selecciona tu agente.
  4. Selecciona la pestaña Gestionar.
  5. Haz clic en Webhooks.
  6. Selecciona el webhook prebuilt_components_arrange_appointment:get_account.
  7. 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.
  8. Revisa y actualiza el cuerpo de la solicitud para que tenga el formato 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 modifique los nombres de los parámetros, ya que el componente los necesita para acceder a los valores de los campos devueltos.
  10. Revisa y actualiza la configuración de Autenticación según sea necesario.
  11. Haz clic en Guardar.

Obtener rama

El webhook prebuilt_components_arrange_appointment:get_branch se usa por el componente para obtener información sobre una sucursal a partir de un código de sucursal.

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.branch_code Código de sucursal que identifica una ubicación de sucursal única. 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
branch_address Dirección de la sucursal. cadena

Para configurar el webhook de la rama Get de este componente, consulta las instrucciones.

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto de Google Cloud.
  3. Selecciona tu agente.
  4. Selecciona la pestaña Gestionar.
  5. Haz clic en Webhooks.
  6. Selecciona el webhook prebuilt_components_arrange_appointment:get_branch.
  7. 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.
  8. Revisa y actualiza el cuerpo de la solicitud para que tenga el formato 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 modifique los nombres de los parámetros, ya que el componente los necesita para acceder a los valores de los campos devueltos.
  10. Revisa y actualiza la configuración de Autenticación según sea necesario.
  11. Haz clic en Guardar.

Rama disponible

El webhook prebuilt_components_arrange_appointment:available_branch se usa para que el componente obtenga la sucursal más cercana a partir de un código postal.

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.zip_code Código postal proporcionado por el usuario final. 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
branch_address Dirección de la sucursal. cadena

Para configurar el webhook de la rama disponible de este componente, consulta las instrucciones.

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto de Google Cloud.
  3. Selecciona tu agente.
  4. Selecciona la pestaña Gestionar.
  5. Haz clic en Webhooks.
  6. Selecciona el webhook prebuilt_components_arrange_appointment:available_branch.
  7. 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.
  8. Revisa y actualiza el cuerpo de la solicitud para que tenga el formato 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 modifique los nombres de los parámetros, ya que el componente los necesita para acceder a los valores de los campos devueltos.
  10. Revisa y actualiza la configuración de Autenticación según sea necesario.
  11. Haz clic en Guardar.

Obtener espacios disponibles

El webhook prebuilt_components_arrange_appointment:get_available_slots se usa por el componente para comprobar las franjas horarias disponibles para la fecha y el tipo de cita preferidos 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
$flow.preferred_date Fecha preferida para la cita proporcionada por el usuario final en formato "AAAA-MM-DD". cadena
$flow.appointment_type El tipo de cita de la cita. cadena
$flow.branch_code Código de sucursal que identifica la ubicación única de la sucursal seleccionada por el usuario final. 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
available_slots Lista de horas disponibles para la cita en la fecha especificada, en formato "HH:MM XM", por ejemplo, ["09:00 AM", "2:30 PM"]. Si no hay ninguna ranura disponible, este parámetro será una lista vacía []. Lista (cadena)

Para configurar el webhook Get available slots de este componente, consulta las instrucciones.

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto de Google Cloud.
  3. Selecciona tu agente.
  4. Selecciona la pestaña Gestionar.
  5. Haz clic en Webhooks.
  6. Selecciona el webhook prebuilt_components_arrange_appointment:get_available_slots.
  7. 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.
  8. Revisa y actualiza el cuerpo de la solicitud para que tenga el formato 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 modifique los nombres de los parámetros, ya que el componente los necesita para acceder a los valores de los campos devueltos.
  10. Revisa y actualiza la configuración de Autenticación según sea necesario.
  11. Haz clic en Guardar.

Enviar cita

El webhook prebuilt_components_arrange_appointment:submit_appointment se usa en el componente para concertar una cita para el usuario en la fecha, la hora, la sucursal, el motivo y el tipo de cita que haya seleccionado.

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.preferred_date Fecha preferida para la cita proporcionada por el usuario final en formato "AAAA-MM-DD". cadena
$flow.preferred_slot Hora preferida para la cita proporcionada por el usuario final en formato "HH:MM XM". cadena
$flow.appointment_reason El motivo de la cita. cadena
$flow.appointment_type El tipo de cita de la cita. cadena
$flow.branch_code Código de sucursal que identifica la ubicación única de la sucursal seleccionada por el usuario final. 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
request_number El número de solicitud de la cita programada. entero

Para configurar el webhook de envío de citas de este componente, consulte las instrucciones.

  1. Abre la consola de Dialogflow CX.
  2. Elige tu proyecto de Google Cloud.
  3. Selecciona tu agente.
  4. Selecciona la pestaña Gestionar.
  5. Haz clic en Webhooks.
  6. Selecciona el webhook prebuilt_components_arrange_appointment:submit_appointment.
  7. 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.
  8. Revisa y actualiza el cuerpo de la solicitud para que tenga el formato 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 modifique los nombres de los parámetros, ya que el componente los necesita para acceder a los valores de los campos devueltos.
  10. Revisa y actualiza la configuración de Autenticación según sea necesario.
  11. Haz clic en Guardar.

Completado

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