La solución de CRM personalizado permite a las empresas aprovechar el portal de Contact Center AI Platform (plataforma de CCAI) cuando usan un CRM que no es una integración estándar actual con la plataforma de CCAI. La configuración personalizada del CRM funciona cuando se usa un CRM interno o cualquier CRM no estándar.
Los agentes atienden llamadas y chats, y los supervisores pueden supervisar y generar informes con el portal de CCAI Platform. Todos los detalles sobre la sesión de llamada o chat se almacenan en un archivo de metadatos de sesión. Este archivo puede contener más de 20 puntos de datos, incluida información de la sesión, transferencias, duración de la llamada, participantes, información de diagnóstico y mucho más. El archivo de metadatos de la sesión se puede analizar y usar para el seguimiento y el análisis posteriores a la sesión.
Los metadatos de la sesión y los archivos multimedia subidos por el consumidor se envían a un servicio de almacenamiento externo, y los agentes pueden ver los archivos multimedia subidos por el consumidor directamente en el adaptador del agente durante la sesión.
Se implementa una solución de CRM personalizada con una combinación de los siguientes componentes. Es posible que algunos componentes se apliquen o no a tu configuración:
Generar el archivo de metadatos de sesión para cada sesión de llamada y chat
Envío de metadatos y archivos multimedia a un servicio de almacenamiento externo
Integración de API genérica
URL de búsqueda personalizada
Actualización de registros de CRM por correo electrónico
Búsqueda de cuentas o casos desde el adaptador del agente
Requisitos previos
Para usar la función de CRM personalizado, primero debes configurar el almacenamiento externo. Consulta Almacenamiento externo para soluciones de CRM personalizadas para obtener más información.
Metadatos de sesión
El archivo de metadatos de la sesión contiene información detallada sobre la sesión. Se envía 15 minutos después de que finaliza la sesión. Consulta Archivo de metadatos de sesión para obtener más información.
Métodos de integración e interacción con el CRM personalizados
| API genérica | Una URL personalizada | |
|---|---|---|
| Búsqueda de cuentas | Sí | Sí |
| Búsqueda de casos | Sí | |
| Actualización del caso | Sí | No |
API genérica
El método de integración de API genérica permite usar la API de tu CRM personalizado para establecer una conexión bidireccional con la plataforma de CCAI. Este método fluido se siente igual que la experiencia de integración de CRM predeterminada. El agente no tiene que realizar ninguna acción para crear un registro de CRM para las sesiones de llamadas o chats, según la configuración única de la API. Puede habilitar una búsqueda y actualización de registros sin problemas.
Una URL personalizada
La opción Vínculo personalizado permite que tus agentes interactúen con tu CRM a través de un vínculo personalizado creado para cada sesión. A diferencia de la integración estándar del CRM y la experiencia de la API genérica, el agente debe realizar una acción para que se cree un registro del CRM. En algunos casos, esto podría implicar solo abrir una pestaña con el vínculo personalizado de la sesión, y, en otros, es posible que el agente deba crear el registro de forma manual.
Detalles y configuración de la URL de búsqueda personalizada
La funcionalidad básica de la URL es realizar una búsqueda en el CRM, pero, según tu CRM, se pueden activar procesos más complejos en función del contenido de la URL personalizada. La URL del CRM personalizado se puede configurar con variables que contienen información de la sesión y es accesible en el adaptador del agente durante la sesión. Una vez que se acceda a la URL, se activará el CRM personalizado para realizar una búsqueda. Esta búsqueda en el CRM es la forma en que los agentes pueden usar una "ventana emergente de ticket" para la sesión de llamada o chat activa. El proceso de vínculos personalizados depende exclusivamente de la capacidad del CRM personalizado para procesar este vínculo y modificarlo o reescribirlo si es necesario.
Los metadatos de la sesión, las grabaciones de llamadas y otros archivos almacenados externamente no se vincularán al registro de la CRM, a menos que también se aproveche el método de actualización por correo electrónico que se indica.
En esta configuración, el agente accederá al portal de CCAI Platform y a su CRM en pestañas separadas. Las llamadas y los chats se manejarán en la pestaña de la plataforma de CCAI, y se accederá a los detalles de los tickets en una pestaña de CRM.
Para que esta configuración funcione, haz lo siguiente:
El agente debe acceder a su CRM en el navegador.
El agente debe acceder al portal de CCAI Platform en su navegador.
La URL de búsqueda personalizada debe estar configurada previamente
Tu CRM debe controlar la URL personalizada para mostrar el registro del CRM pertinente.
Comportamiento de la URL de búsqueda personalizada
La Plataforma de la CCAI solo incluirá en la URL los parámetros que no estén vacíos.
CCAI Platform no almacena la URL generada que contiene el ANI, el UID o el correo electrónico en la base de datos de CCAI Platform una vez que finaliza la sesión.
Configuración de URL de búsqueda personalizada
Debido a las diferentes capacidades y comportamientos de los identificadores únicos y los CRM, deberás crear 2 URLs diferentes: una para las sesiones de IVR/PSTN/SMS y otra para las sesiones del SDK web y para dispositivos móviles. Las sesiones de IVR, PSTN y SMS usarán el ANI como identificador único, mientras que los SDK para la Web y dispositivos móviles probablemente usarán el CUID y el correo electrónico.
Se pueden usar las siguientes variables para configurar una URL de búsqueda:
| Variable | Valores |
|---|---|
{CUSTOMER_PHONE_NUMBER} |
Número de teléfono del usuario final |
{ANI} |
Número de teléfono del usuario final. Se retiene para la retrocompatibilidad. |
{CUID} |
ID de usuario personalizado |
{EMAIL} |
Correo electrónico del usuario final |
{MENU_PATH} |
Es la ruta de menú completa de la fila. Por ejemplo, "Pedidos/Confirmación de pedido/Información del pedido". |
{MENU_ID} |
ID del menú |
{CHANNEL} |
Es el canal de la sesión. Valores posibles:
|
{TYPE} |
Es el tipo de sesión. Valores posibles para las llamadas:
Valores posibles para los chats:
|
{SUPPORT_PHONE_NUMBER} |
Es el número de teléfono del centro de asistencia al que llama el usuario final. |
{OUTBOUND_NUMBER} |
Es el número de teléfono que usa un agente para una llamada saliente. |
{SESSION_ID} |
Es el ID de sesión. Valores posibles:
|
{CUSTOM_AGENT_ID} |
Es el campo opcional del ID del agente en el objeto user. El ID del agente no se puede obtener hasta que se establece la sesión y se asigna un agente. Por este motivo, configura tu instancia para que retrase la creación de registros de llamadas o chats y, así, permitir que se defina esta variable. Puedes retrasar la creación de registros de llamadas o chats en Configuración > Administración de operaciones > Detalles de creación de registros de CRM. Para obtener más información, consulta Detalles de la creación de registros de CRM. |
Configuración del portal de CCAI Platform
Accede al portal de CCAI Platform con una cuenta que tenga asignado el rol de administrador.
Ve a Configuración > Configuración del desarrollador.
En la sección CRM, selecciona CRM personalizado.
En CRM lookup, ingresa tus URLs personalizadas.
Selecciona el formato de número de teléfono que se usará en las solicitudes de CRM.
Haz clic en Guardar cambios.
Si aún no lo hiciste, configura tu servicio de almacenamiento externo. Para obtener más información, consulta Almacenamiento externo.
Actualización de registros de CRM por correo electrónico
En configuraciones como la URL de búsqueda personalizada, una vez que se completa una sesión, los metadatos de la sesión deben actualizarse en el CRM. Con esta función, CCAI Platform puede enviar automáticamente datos de la sesión por correo electrónico. Aproximadamente 15 minutos después de que finaliza una sesión, se envía un correo electrónico a una ubicación configurada, y el contenido del correo electrónico se usa para actualizar un registro en tu CRM. Esta función se puede configurar de forma global y por cola. Una vez que se recibe el correo electrónico, es posible que tu CRM esté configurado para actualizar o crear un nuevo registro de CRM para la sesión.
Detalles del correo electrónico
Se envió desde no-reply@ccaiplatform.com.
Contiene:
Subject line
Cuerpo con los metadatos de la sesión en sintaxis JSON
Archivo adjunto en formato TXT con la transcripción del chat cuando corresponda
La plataforma de CCAI esperará 15 minutos después de que finalice la sesión y, luego, enviará el correo electrónico.
Los correos electrónicos solo se envían para las sesiones que se completaron correctamente. No se envía para las sesiones fallidas o abandonadas.
Configuración global
Accede al portal de CCAI Platform con una cuenta que tenga asignado el rol de administrador.
Ve a Configuración > Configuración del desarrollador.
En la sección CRM, asegúrate de que esté seleccionado CRM personalizado.
Habilita Send session outcome via Email.
Ingresa la dirección de correo electrónico a la que deseas que se envíe el mensaje.
Haz clic en Guardar cambios.
Configuración por cola
Accede al portal de CCAI Platform con una cuenta que tenga asignado el rol de administrador.
Ve a Configuración > Cola y selecciona cualquier subcola.
Habilita Send session outcome via Email.
Ingresa la dirección de correo electrónico a la que deseas que se envíe el mensaje.

Haz clic en Save Custom CRM setting.
Anulación y herencia de la configuración
| Configuración | Comportamiento |
|---|---|
| Global = NO habilitada Queue = NO habilitada |
No se envía para todas las filas. |
| Global = NO habilitado Queue = Habilitado |
El parámetro de configuración de la cola (es decir, el estado de activación o desactivación) anula el parámetro de configuración global. El correo electrónico se envía desde una cola determinada a una dirección de correo electrónico definida en el parámetro de configuración de la cola. |
| Global = Habilitado Queue = NO habilitado |
El parámetro de configuración de la cola (dirección de correo electrónico, estado de activación o desactivación) hereda el parámetro de configuración global. El correo electrónico se envía desde una cola determinada a una dirección de correo electrónico definida en el parámetro de configuración global. |
| Global = Habilitado Queue = Habilitado |
El parámetro de configuración de la cola (dirección de correo electrónico) anula el parámetro de configuración global. El correo electrónico se envía desde una cola determinada a una dirección de correo electrónico definida en el parámetro de configuración de la cola. Si la dirección de correo electrónico está vacía, no se envía el correo electrónico. |
Experiencia del agente
Búsqueda de registros de CRM
Accede al portal de CCAI Platform con una cuenta que tenga asignado el rol de agente.
Abre el adaptador de llamadas o chat.
Usa el botón Abrir en una ventana nueva del navegador para activar la búsqueda.
Usa el botón Copiar vínculo para copiar la URL de búsqueda en el portapapeles.

Almacenamiento externo para soluciones de CRM personalizadas
El almacenamiento externo para soluciones personalizadas permite usar un servicio de almacenamiento externo para almacenar y recuperar metadatos de sesiones de la Plataforma de CCAI, grabaciones de llamadas, transcripciones de chats y archivos multimedia subidos por los consumidores. Los archivos se almacenan fuera de un CRM.
Para configurar el almacenamiento externo, debes tener lo siguiente:
Una cuenta válida de CCAI Platform con los roles de administrador y agente asignados para la configuración y las pruebas
Un servicio de almacenamiento externo
Estructura de carpetas
La siguiente estructura de carpetas se organizará en tu almacenamiento externo en Ruta de la carpeta:
ujet-chat-transcripts
ujet-media
ujet-metadata
ujet-voice-recordings
ujet-voicemails
Formatos de archivo y convenciones de nomenclatura
Los siguientes tipos de archivos se pueden enviar al servicio de almacenamiento externo. Los archivos se encriptan durante la transmisión con HTTPS:
| Archivo | Nombre |
|---|---|
| Grabaciones de llamadas | - call-{id}.mp3 - call-{id}.wav |
| Archivos multimedia | - call-{id}-photo-{photo-id}.jpg - call-{id}-video-{video-id}.mp4 - chat-{id}-photo-{photo-id}.jpg - chat-{id}-video-{video-id}.mp4 |
| Transcripciones de chats | - chat-{id}.txt |
| Metadatos de sesión | - call-{id}.json - chat-{id}.json |
Experiencia del agente y el supervisor
Durante la sesión de llamada o chat, las fotos y los videos que sube el cliente con las acciones inteligentes se muestran en el adaptador del agente.
Si utilizas la interacción de CRM con URL personalizada combinada con el método de actualización de correo electrónico del archivo de metadatos de la sesión, los agentes y supervisores pueden acceder a la información de la sesión a través de tu servidor externo.
Configura el servicio de almacenamiento externo
Completa estos pasos para configurar tu almacenamiento externo:
Accede al portal de CCAI Platform con una cuenta que tenga asignado el rol de administrador.
Ve a Configuración > Configuración del desarrollador.
En la página Configuración de desarrollador, navega a la sección Almacenamiento externo.
Para habilitar el almacenamiento de información fuera de los servidores de la CRM, activa el interruptor en Activado y, luego, selecciona los tipos de archivos que se almacenarán.
En la sección Configuración del servidor, selecciona tu tipo de almacenamiento y completa los pasos de configuración: Servidor SFTP, Google Cloud bucket.
Servidor SFTP
Ingresa el host (URL o dirección IP) del SFTP.
Ingresa el número de puerto.
Ingresa el ID de usuario de acceso de SFTP.
Si el servidor SFTP requiere una contraseña para la autenticación, ingrésala en el campo Contraseña.
Si el servidor SFTP requiere una clave privada para la autenticación, selecciona la casilla de verificación Clave privada SSH.
Ingresa (copia y pega) la clave privada SSH.
Ingresa la frase de contraseña de la clave privada. Si la información de la sesión se debe almacenar en una carpeta específica del servidor SFTP, selecciona la casilla de verificación Ruta de la carpeta y, luego, ingresa la ruta de la carpeta SFTP.
Haz clic en Guardar cambios.
Cloud Storage
Ingresa el Google Cloud nombre del bucket de destino.
Ingresa el ID de cliente de Google Cloud .
Ingresa el Google Cloud secreto del cliente.
Si la información de la sesión se debe almacenar en una carpeta específica del bucket Google Cloud , selecciona la casilla de verificación Ruta de acceso a la carpeta y, luego, ingresa la ruta de acceso a la carpetaGoogle Cloud .
Haz clic en Vincular y guardar.
Prueba la configuración del almacenamiento externo
Para los CRM con integración estándar existente, sigue estos pasos:
Accede a tu CRM.
Accede a CCAI Platform desde el CRM con las credenciales de CCAI Platform que tienen asignado el rol de agente.
Realizar una llamada o chatear Se muestra el registro de CRM asociado a la sesión.
Cuando finalice la sesión, el archivo de transcripción se debería subir en cuestión de segundos.
Navega directamente a la carpeta de almacenamiento del servidor externo y verifica que el archivo esté disponible.
Envío de archivos de sesión al CRM
Cuando el almacenamiento externo está habilitado, la configuración para desarrolladores de las URLs de almacenamiento externo y de almacenamiento de la CRM permite enviar archivos de sesión y decidir qué fuente usar para mostrar archivos en el adaptador del agente.
Para ver estos parámetros de configuración, debes habilitar el almacenamiento externo en Configuración > Configuración para desarrolladores > Almacenamiento externo. Activa la opción Habilitar el almacenamiento de información fuera de los servidores de CRM.
Almacenamiento de CRM
Ve a Configuración > Configuración para desarrolladores > Almacenamiento externo > Almacenamiento de CRM.
Marca la casilla junto a También envía archivos de sesión al CRM para enviar archivos de sesión, como grabaciones de llamadas o transcripciones de chats, a tu CRM y al almacenamiento externo configurado.
Haz clic en Guardar cambios.
Si la casilla de verificación está marcada, las grabaciones se almacenarán tanto en el CRM como en el almacenamiento externo.
URLs de almacenamiento externo
La URL de almacenamiento externo se usa en dos lugares:
Es el adaptador de agentes.
Informes: Muestra la URL de medios en el informe y en los menús, como Configuración, Llamadas y Completadas.
Ve a Configuración > Configuración para desarrolladores > Almacenamiento externo > URLs de almacenamiento externo.
Selecciona las URLs de CRM o las URLs de almacenamiento externo de la fuente para mostrar los archivos en el adaptador del agente.
Haz clic en Guardar cambios.
Almacenamiento de CRM
Si la casilla de verificación para el almacenamiento de la CRM no está marcada, las grabaciones se almacenarán solo en el almacenamiento externo y se usará un vínculo a la CRM.
Si la casilla de verificación está marcada, las grabaciones se almacenarán tanto en la CRM como en el almacenamiento externo.
URLs de almacenamiento externo
La URL se usa en dos lugares:
Una muestra los medios en el adaptador de la plataforma de CCAI. El almacenamiento externo o el CRM.
El otro está en el informe. Revelamos la URL de los medios en los informes y en los menús, como Configuración, Llamadas y Completadas.
Mostrar el CRM personalizado en el portal de CCAI Platform
Cuando usas la integración de CRM personalizada con tu propio CRM creado de forma personalizada, puedes cargar tu CRM en una página dedicada dentro del portal de CCAI Platform. Una vez que se habilite, se cargará la pestaña CRM en el portal de CCAI Platform y se mostrará tu página de CRM personalizada. Esto se puede configurar en Configuración para desarrolladores > CRM.
Esta capacidad permite a los agentes controlar las sesiones de asistencia en vivo con los adaptadores de llamadas y chats de la plataforma de CCAI mientras trabajan en tu CRM personalizado. Esto incluye revisar los detalles de la cuenta y el registro que se abren automáticamente, y los archivos y datos específicos de la sesión que se pasan desde tu app para dispositivos móviles o por los consumidores, todo con el portal de CCAI Platform.
Cómo configurar una página de CRM personalizada
Para configurar una página de CRM personalizada, sigue estos pasos:
En el portal de la Plataforma de CCAI, haz clic en Configuración > Configuración del desarrollador. Si no ves el menú Configuración, haz clic en Menú.
En el panel CRM, haz clic en CRM personalizado.
Haz clic en el botón de activación Mostrar CRM en el portal de CCAI Platform para activarlo.
En URL visible, ingresa la URL de tu página de CRM personalizada y, luego, haz clic en Guardar.
Abrir la ventana emergente de URL personalizada
Usa Abrir URL personalizada para que aparezca una ventana emergente de URL personalizada cuando no se encuentre un contacto en el sistema. Crea un registro de CRM con un ID de cuenta temporal y activa un vínculo personalizado con parámetros basados en la configuración a nivel de la fila.
Habilita la aparición de la pantalla por fila
Ve a Configuración > Cola > IVR y haz clic en una cola para editarla.
Ve a Abrir URL personalizada en el panel.
Ingresa una URL para que aparezca una ventana emergente en la pantalla.
Incluye los parámetros de variables {ACCOUNT_ID} y {PHONE_NUMBER} en la URL.
Se proporciona un ejemplo.
- Haz clic en Save.
Integración genérica de la API de CRM personalizada
El método de integración de API genérico permite usar la API de tu CRM para establecer una conexión bidireccional con la plataforma de CCAI. Este método fluido se siente igual que la experiencia de integración de CRM lista para usar.
El agente no tiene que realizar ninguna acción para crear un registro de CRM para las sesiones de llamadas o chats. Según la configuración de la API única, puede habilitar una búsqueda y actualización de registros sin problemas.
Terminología
Plazo |
Descripción |
Cuenta |
Se usa para hacer referencia a la entidad Cuenta/Contacto/Cliente/Cliente potencial en el CRM. Es posible que tu CRM tenga otro nombre para esta entidad. Las cuentas contienen registros. |
Registro |
Se usa para hacer referencia a la entidad de caso, ticket, conversación o incidente en el CRM. Es posible que tu CRM tenga otro nombre para esta entidad. Los registros pertenecen a las cuentas. |
Comentario |
Se usa para hacer referencia a la entidad Comment/Note en el CRM. Es posible que tu CRM tenga otro nombre para esta entidad. Los comentarios pertenecen a los registros. |
Configuración de la API
En esta sección, se describen los parámetros de configuración específicos de la API del CRM personalizada.
Método de autenticación
La plataforma de CCAI admite tres métodos de autenticación para tu CRM:
Autenticación básica: Configura las credenciales de autenticación que incluyen Nombre de usuario y contraseña.
Encabezado personalizado: Configura pares clave-valor de encabezados personalizados: Clave del campo y Valor del campo. Ingresa todos los pares que necesites.
OAuth: La plataforma de la CCAI admite el protocolo estándar de la industria para la autorización OAuth 2.0. Especifica la información de OAuth si necesitas habilitar la opción "Incluir la URL de redireccionamiento como parte de la URL de autorización y la URL del token".
Configura los siguientes valores:
URL de autorización (obligatoria)
URL del token (obligatoria)
ID de cliente (obligatorio)
Secreto del cliente (obligatorio)
Alcance
Estado
Tipo de acceso
Formato del número de teléfono
Selecciona el formato de número de teléfono que se usará en las solicitudes del CRM:
Automático: Crear: +1 222 333 4444, Buscar: *222*333*4444
E.164: +12223334444
US Local: 2223334444
Estándar local de EE.UU.: (111) 222-3333
Internacional: +1 222 333 4444
Se agotó el tiempo de espera de la solicitud a la API
Configura el tiempo de espera de la solicitud de API de 1 a 10 segundos con el menú desplegable. Este tiempo de espera se aplicará a todos los extremos que configures.
URLs de búsqueda de CRM
Especifica las URLs de búsqueda que se usarán para dirigir un agente a la cuenta y el registro actuales.
Ingresa las URLs de búsqueda tal como aparecen en tu CRM cuando tienes abierta una página de cuenta o de registro en tu navegador.
También puedes usar URLs de búsqueda de CRM con el SDK web y los SDKs para dispositivos móviles. Puedes configurar los SDKs para que busquen información de la cuenta y el registro del CRM para mostrarla en el adaptador del agente. Para obtener una lista completa de las URLs de búsqueda de CRM, consulta Parámetros de URL de la solicitud.
URL de búsqueda de la cuenta
Usa la variable {ACCOUNT_ID} para insertar el ID de la cuenta real.
Ejemplo:
https://www.example.com/contact/{ACCOUNT_ID}
URL de búsqueda de registros
Usa la variable {RECORD_ID} para insertar el ID de registro real.
Ejemplo:
https://www.example.com/record/{RECORD_ID}
extremos de API
Esta es la configuración más importante para la API genérica.
Para que la búsqueda de cuentas esté disponible para tus agentes, debes configurar los extremos Find an account y Create an account.
Además, puedes configurar los extremos Find a record y Create a record para permitir que tus agentes busquen o creen registros. Para ello, se requiere la configuración de la cuenta del paso anterior.
Por último, si ingresas los extremos Update a record, Upload a file y Comment, se habilitarán las actualizaciones de registros. Para ello, se requiere la configuración de grabación del paso anterior.
Configuración de extremos
Establece la siguiente configuración:
URL de solicitud: Es la URL del extremo de API.
Elige el método de solicitud entre POST, GET, PUT o PATCH.
Especifica los parámetros de la solicitud. Puedes usar las variables definidas por la Plataforma de la CCAI para pasar la información requerida (consulta la siguiente tabla). También puedes ingresar texto sin formato o números como valores de los parámetros. Puedes agregar tantos parámetros como necesites.
Si el extremo es POST/PUT/PATCH, la plataforma de la CCAI ofrece controles más detallados sobre cómo se compila la solicitud. Elige Formato de datos de la solicitud en Propiedad o Contenedor. Especifica el formato del JSON de solicitud.
Property. Esto indica que el objeto de solicitud es un mapa de propiedades básico cuando CCAI Platform compila el cuerpo de la solicitud a partir de parámetros.
Contenedor. Indica que los datos del objeto de solicitud que se enviarán deben anidarse dentro de una estructura. Elige Tipo de contenedor en Mapa o Matriz. Ingresa el Nombre del contenedor. Se usa como el nombre del objeto principal cuando se compila el cuerpo de la solicitud a partir de parámetros.
Ejemplo: Map: { container_name : { ...parameters } }
Ejemplo: Array: {container_name : [ { ...parameters } ] }
Ingresa la ubicación de los datos de respuesta. Se usa para ubicar el objeto de respuesta objetivo en la respuesta JSON.
Parámetros de URL de la solicitud
| Parámetro | Variable | Comentario |
|---|---|---|
| ID del agente | {AGENT_ID} |
Es el ID interno del agente. |
| ID personalizado del agente | {AGENT_CUSTOM_ID} |
Campo opcional del perfil del usuario. |
| Correo electrónico del agente | {AGENT_EMAIL} |
El correo electrónico del agente que responde, si corresponde. |
| Nombre del usuario final | {NAME} |
|
| Nombre del usuario final | {FIRST_NAME} |
Fuente: Name |
| Apellido del usuario final | {LAST_NAME} |
Se toma de Name y, si falta, el valor predeterminado es --. |
| ID externo | {UJET_ID} |
ID de usuario final de CCAI Platform |
| Correo electrónico | {EMAIL} |
|
| Tipo de llamada o sesión | {SESSION_TYPE} |
|
| Número de teléfono del usuario final | {PHONE_NUMBER} |
Formateado con la opción de configuración |
| ID de llamada | {Call_ID} |
Es el ID de la llamada de CCAI Platform. |
| ID de chat | {Chat_ID} |
Es el ID del chat de CCAI Platform. |
| Idioma | {LANG} |
|
| UID personalizado | {CUSTOM_USER_ID} |
En dispositivos móviles, se encuentra en el lado izquierdo del correo electrónico. Por ejemplo, test.user3 de test.user3@test.co |
| ID de la cuenta | {ACCOUNT_ID} |
Se encuentra llamando al extremo Find/Create contact. |
| ID de registro | {RECORD_ID} |
Se encuentra llamando al extremo Find/Create record. |
| ID de sesión | {SESSION_ID} |
ID de sesión de CCAI Platform |
| Ruta de acceso al menú | {MENU_PATH} |
|
| Número de teléfono saliente | {OUTBOUND_PHONE_NUMBER} |
Formateado con la opción de configuración |
| Nombre de la cola | {QUEUE_NAME} |
|
| ID de cola | {QUEUE_ID} |
Es el ID de la cola interna. |
| Nombre del SDK | {SDK_NAME} |
Nombre del usuario final, como se indica en el SDK web o el SDK para dispositivos móviles. |
| Correo electrónico del SDK | {SDK_EMAIL} | Dirección de correo electrónico del usuario final, tal como se indica en el SDK web o el SDK para dispositivos móviles. |
| Teléfono del SDK | {SDK_PHONE} | Número de teléfono del usuario final, como se indica en el SDK web o el SDK para dispositivos móviles. |
| Identificador del SDK | {SDK_IDENTIFIER} |
Identifica a un usuario final o una cuenta del SDK para la Web o para dispositivos móviles. No incluyas PII en esta propiedad. Cuando se crea una cuenta, este identificador es obligatorio en la solicitud. |
| ID de sesión de SmartAction | {SMART_ACTION_SESSION_ID} |
|
| SmartAction: verificación | (Disponible próximamente) | |
| SmartAction: entrada de texto | (Disponible próximamente) | |
| Calificación | {RATING} |
Solo está disponible si un usuario la dejó. |
| Mensaje de comentarios | {FEEDBACK} |
Solo está disponible si un usuario la dejó. |
| Duración de la llamada | {CALL_DURATION} |
En mm:ss |
| Tiempo de espera | {HOLD_TIME} |
En mm:ss |
| Tiempo de espera | {WAIT_TIME} |
En mm:ss |
| Duración del trabajo después de la llamada | (Disponible próximamente) | |
| Tipo de dispositivo | {DEVICE_TYPE} |
|
| Desconectado por | {DISCONNECTED_BY} |
|
| Canal | {CHANNEL} |
|
| Asunto del registro | {TICKET_SUBJECT} |
Se usa como título del registro |
| Descripción del registro | {TICKET_DESCRIPTION} |
|
| HTML de la descripción del registro | {TICKET_DESCRIPTION_HTML} |
Es igual a la descripción, pero con formato HTML. |
| Cuerpo del comentario | {COMMENT_BODY} |
Solo está disponible en situaciones de agregar comentarios (guardar calificación, finalizar llamada o chat, iniciar llamada o chat) |
| Datos del archivo | {FILE_DATA} |
Solo está disponible en el extremo de carga de archivos, pero contiene el código base64 o los datos del formulario multipart. |
Funciones de parámetros de URL de solicitud
Se proporcionan funciones para ayudar con las variables dinámicas de la plataforma de CCAI. Estas funciones solo están disponibles para usarse en la sección Request Parameter de la configuración del endpoint.
El valor resultante creado a partir de una función será una cadena. Si la función no devuelve ningún valor, el parámetro se quita de la lista de parámetros de la solicitud antes de la ejecución.
| Función | Sintaxis de la función | Descripción |
|---|---|---|
| Valor predeterminado | =DEFAULT_VALUE(val1, val2) |
El valor usará val1, a menos que sea nulo o esté vacío, y volverá a val2 de forma predeterminada. |
Concatenación Or | =CONCAT_OR(val1, val2,
val3) | Concatenación de varios valores con or. Ejemplo: "val1 or val2 or val3" |
Concatenación And | =CONCAT_AND(val1, val2,
val3) | Concatenación de varios valores con and. Ejemplo: "val1 and val2 and val3" |
Ejemplos
A continuación, se incluyen algunos ejemplos del uso de la función de parámetros de URL de solicitud.
Predeterminado
En el siguiente ejemplo, se usa DEFAULT_VALUE en Create a Record Endpoint.
La clave y el valor para la configuración del agente usan la función predeterminada para tener una alternativa en caso de que el valor del correo electrónico del agente esté vacío. El correo electrónico del agente puede estar vacío en el registro de creación por varios motivos: es posible que un cliente haya finalizado la llamada del IVR antes de que un agente asignado responda la llamada entrante o, en el caso de los chats, se creará un registro antes de que un agente responda. De esta manera, los parámetros obligatorios pueden establecerse de forma predeterminada en valores seguros hasta que se realicen actualizaciones posteriores o se establezcan en casos de llamadas abandonadas.

Concatenación
En el siguiente ejemplo, se usa CONCAT_OR en el extremo Find an Account by Query. Este ejemplo es específico de Zoho CRM, pero muestra cómo se puede usar CONCAT_OR. CONCAT_AND sigue las mismas reglas, pero conecta los valores con and en lugar de or. Consulta los siguientes casos para conocer los valores presentes en el extremo en el momento de la ejecución y el valor resultante que se pasa como parámetro de la solicitud.

| Claves presentes | Valor resultante |
|---|---|
ACCOUNT_ID |
(Id:equals:<uuid>) |
ACCOUNT_ID, EMAIL |
(Id:equals:<uuid>) o (Email:equals:kim@example) |
PHONE_NUMBER, EMAIL |
(Phone:equals:+12223334444) o (Email:equals:kim@example) |
Cuenta de API
Los extremos de la cuenta de la API admiten la integración con las cuentas del CRM.
Se reintentan las llamadas a los extremos que muestran un error 400. No se reintentan las llamadas que devuelven otros errores. Los reintentos continúan durante una semana y disminuyen con una reducción exponencial. Para obtener información sobre los flujos de la API, consulta API genérica de CRM personalizada: Flujos.
Encuentra una cuenta por medio del extremo de búsqueda (anteriormente, extremo de búsqueda de cuentas)
Este extremo se usa para encontrar una cuenta por número de teléfono, correo electrónico o ID interno del CRM. Este es el endpoint predeterminado que se usa para encontrar una cuenta.
Respuesta de ejemplo:
{
"id": 123,
"name": "Kim",
"phone": "11234567890",
"email": "Kim@agents.co"
}
Extremo para encontrar una cuenta por ID
Este extremo se usa para encontrar una cuenta por ID. Por lo general, este ID formará parte de la URL. La validación de URL también tendrá en cuenta si la URL no se forma con el ID, por lo que no se usará este extremo. Esto seguirá los estándares de REST. Si se devuelve un error 404 en la búsqueda fallida, se realizará la búsqueda por consulta a continuación.
Respuesta de ejemplo:
{
"id": 123,
"name": "Kim",
"phone": "11234567890",
"email": "Kim@agents.co"
}
Crea un extremo de la cuenta
Este extremo se usa para crear una cuenta si no encontramos una. La mayoría de los CRM requieren que los registros se adjunten a las cuentas. Para crear un flujo unificado, aplicamos este requisito a todos los CRM.
Registro de API
Los extremos de registro de la API permiten la integración con registros o casos en tu CRM.
Cómo encontrar un registro por consulta (anteriormente, extremo para encontrar un registro)
Este extremo se usa para encontrar un registro según un criterio. Por lo general, se usa para encontrar registros asociados a una cuenta. Si la plataforma de CCAI está configurada para reutilizar registros existentes, se usará el registro encontrado. Este es el extremo predeterminado que se usa para encontrar un registro.
Respuesta de ejemplo:
{
"id": 456,
"subject": "Record title",
"status": "open", // enumerated status open/closed, or 1,2,3
"contactId": 123, // contact attached to ticket
"phone": "11234567890", // contact phone
}
Crea un extremo de registro
Este extremo se usa para crear un registro. Se crea un registro nuevo si no se encuentra uno en la solicitud de Find a record o si CCAI Platform está configurada para no reutilizar registros existentes.
Solicitud de ejemplo:
{
"id": 123,
"subject": "Record title",
"description": "A longer description of the record, can be formatted in html",
"phone": "11234567890", // can be saved in multiple formats
"contactId": 123,
"sourceType": "PHONE", // PHONE/CHAT
"menu": "queue1",
"direction": "outgoing",
"rating": 5, // 1-5 scale
"feedback": "the agent was great!" // description of rating
}
Actualiza un extremo de registro
Este endpoint se usa para actualizar un registro. Actualiza el título y la descripción del registro. Este extremo también funciona de forma opcional para actualizar el registro según los eventos de CCAI Platform, como guardar la calificación de CSAT, los eventos de finalización de llamadas o chats, las colas seleccionadas, la verificación de usuarios y otros.
Extremo para subir un archivo
Este extremo se usa para subir un adjunto.
Elige el Tipo para tu extremo de carga
Formulario codificado en Base64
Formulario multiparte
Selecciona los archivos que quieres adjuntar
Grabaciones de llamadas
Transcripciones de chats
Mensajes de voz
Fotos
Videos
Archivo de metadatos de sesión
Elige Tipo de adjunto en ID y URL del adjunto. Especifica el formato del JSON de respuesta.
ID
ID del archivo adjunto. Ingresa la ubicación de un parámetro en la respuesta JSON para el ID del adjunto. Estará disponible para la URL del compilador de adjuntos como {ATTACHMENT_ID}.
URL de Attachment Builder. Ingresa la URL para descargar el archivo adjunto. Las variables RECORD_ID y ATTACHMENT_ID están disponibles.
Ejemplo:
https://www.example.com/Accounts/{RECORD_ID}/Attachments/{ATTACHMENT_ID}URL del adjunto
Ingresa la ubicación de un parámetro en la respuesta JSON para la URL de descarga del archivo.
Selecciona la casilla de verificación Agregar comentario al registro de la CRM si deseas que CCAI Platform deje un comentario en un registro cuando se suba un archivo. Se respetará el parámetro de configuración Text Format del endpoint Comment para estos comentarios.
El siguiente es un ejemplo de formulario de varias partes que usa POST/PUT/PATCH:
{
"file": <file data>
"id": 123, // optional, this can also just be part of the URL;
// for example https://example-customer.com/upload/record/{RECORD_ID}
}
Respuesta de ejemplo:
Ejemplo A: Existe una URL de descarga
{
"id": 123,
"url": "https://some-hosted-url.com"
}
Ejemplo B
En este caso, no existe una URL de descarga, pero sí un extremo de adjuntos de descarga que usa este ID. Por ejemplo, https://www.customer-api.com/record/{RECORD_ID}/Attachments/{ATTACHMENT_ID}.
{
"id": 123
}
Extremo de comentarios
Este endpoint se usa para agregar un comentario a un registro. Si el extremo está configurado, CCAI Platform agregará comentarios a los registros con los siguientes eventos:
Inicio de llamada o chat
Finalización de la llamada o el chat
Calificación y comentario de CSAT
paquete de datos personalizado
transferir comentarios
código de disposición y notas
Preguntas y respuestas de la encuesta
Elige Formato de texto para los comentarios. Si la casilla de verificación Convertir texto a HTML está marcada, el texto estará en formato HTML o texto sin formato.
Ejemplo de solicitud, POST/PUT/PATCH:
{
"comment": "Some text",
// string can also be formatted on ujet side as html
"id": 123,
// optional, this can also just be part of the URL;
// for example https://example-customer.com/comment/record/{RECORD_ID}
}
API genérica de CRM personalizada: Flujos
En esta sección, se proporcionan diagramas de flujo para los flujos de API genéricos del CRM personalizado.
Diagramas de flujo básicos

Flujo de búsqueda o creación de cuenta

Flujo de búsqueda o creación de registros

Flujo de acciones posteriores a la llamada o el chat

Flujo de actualización de registros

Flujo de comentarios

Flujo de carga de archivos

Adaptadores de agentes
Un CRM personalizado ofrece un método genérico para integrar adaptadores (widgets de IU) en sistemas de CRM. El sistema de CRM debe poder controlar la forma en que se activan y se activan los adaptadores dentro de él.
Por lo general, se necesita un software o una aplicación de CRM para integrar adaptadores de interfaz de usuario. Ya proporcionamos esta capacidad para varios softwares de CRM, como Salesforce, Kustomer, Zendesk y otros.
iFrame
Los adaptadores de agentes se pueden integrar sin problemas en un CRM o cualquier otra herramienta a través del uso de una etiqueta iFrame. Para obtener más información sobre la etiqueta iframe de HTML, consulta Etiqueta iframe de HTML.
Sin embargo, el CRM debe controlar cómo se presentan los adaptadores al usuario. Por ejemplo, podría incluir botones de la IU para mostrar y ocultar los adaptadores. Además, los adaptadores se pueden diseñar para que se puedan arrastrar, lo que permite que el agente los reposicione en la pantalla según le convenga. En los siguientes ejemplos, se muestra el formato de URL.
Adaptador de llamadas:
https://tenant.loc.ccaiplatform.com/agent/?type=call&from=custom
Adaptador de chat:
https://tenant.loc.ccaiplatform.com/agent/?type=chat&from=custom
Plantilla de iFrame
Adaptador de llamadas:
html
<iframe src="https://tenant.loc.CCAI Platformlatform.com/agent/?type=call&from=custom" allow="microphone; camera; geolocation" width="290" height="600"></iframe>
Adaptador de chat:
html
<iframe src="https://tenant.loc.CCAI Platformlatform.com/agent/?type=chat&from=custom" allow="microphone; camera; geolocation" width="450" height="590"></iframe>
Parámetros de URL
Los parámetros de URL se pueden usar para proporcionar información adicional al software, como el tipo de interacción (llamada o chat), la fuente de la interacción (personalizada) y otros detalles relevantes.
Si el parámetro de configuración del CRM del arrendatario no está disponible en las listas, el parámetro From siempre debe establecerse en Custom.
Tipo
- Llamar
- Chat
De
- Personalizado (debe coincidir con el parámetro de configuración del CRM del arrendatario). Siempre debe ser custom para cualquier CRM que no esté en las listas. Si no hay una configuración del CRM, puedes omitir este parámetro.
Eventos en adaptadores de agentes
Los adaptadores de agentes publican eventos a los que se puede conectar el sistema de CRM, que luego procesa las actualizaciones del CRM. Para ello, el CRM debe escuchar las publicaciones de la ventana principal y leer los datos de las publicaciones. Según los datos, puede activar acciones como abrir una pestaña de tickets para un ID de sesión específico.
Tanto el adaptador de llamadas como el adaptador de chat tienen eventos específicos que se pueden utilizar para mejorar las capacidades del CRM.
Adaptador de llamadas
- Nueva llamada
- Se inició la ocultación de la llamada
- Finalizó la ocultación de la llamada
- Finalizar llamada
Adaptador de chat
- Nuevo chat
- Chat activo
- Mensaje entrante de chat
- Mensaje saliente de Chat
- Finalizar chat
- Chat descartado
Ambos adaptadores
- Acceso del agente
- Se inició la sesión de Compartir pantalla
- Se cambió el control remoto de la sesión de Compartir pantalla
- Cambió el dispositivo de la sesión de uso compartido de pantalla completa
- Finalizó la sesión de Compartir pantalla
- Transferir
- Se agregó la fiesta
- El agente se conecta a la sesión
- Salida del agente
- Se agregó Agent Assist
Datos de eventos
call_id: Es un identificador de una llamada de voz entrante con IVR (respuesta de voz interactiva).chat_id: Es un identificador de una llamada entrante de mensajería (chat web o móvil).cobrowse_session_id: Es un identificador para una sesión de Screen Share. Se puede iniciar una sesión de Compartir pantalla en una llamada o sesión de chat.session_type: Es el tipo de sesión, como voz, chat o mensajería.va_data_parameters: Son todas las variables configuradas en la fila para enviar al agente virtual. Esto solo es obligatorio para los eventos que involucran al agente virtual. Es opcional.session_variable: Todas las variables del agente virtual que se envían a la plataforma de CCAI en la carga útil. Es opcional.custom_sip_headers: Esto permite que los encabezados SIP personalizados de las llamadas SIP entrantes aparezcan en el registro de eventos POST. Solo se requiere si se usan encabezados SIP personalizados. Es opcional.custom_data_secured: Contiene datos personalizados firmados de tu servidor. Es opcional.custom_data_not_secured: Contiene datos personalizados sin firmar de tu página web. Para obtener más información, consulta Cómo chatear con datos personalizados sin firmar. Es opcional.
IDs de agentes
agent_id: Es un identificador de un agente.from_agent_id: Se usa cuando se enrutan llamadas o chats de un agente a otro para indicar el agente de origen.to_agent_id: Se usa cuando se enrutan llamadas o chats de un agente a otro para indicar el agente de destino.agent_custom_id: Es un ID de agente del perfil del usuario, si se ingresó en el perfil. Es opcional.from_agent_custom_id: Se usa cuando se enrutan llamadas o chats de un agente a otro para indicar el agente de origen.to_agent_custom_id: Se usa cuando se enrutan llamadas o chats de un agente a otro para indicar el agente de destino.agent_email: Es la dirección de correo electrónico del agente.from_agent_email: Se usa cuando se enrutan llamadas o chats de un agente a otro para indicar el agente de origen.to_agent_email: Se usa cuando se enrutan llamadas o chats de un agente a otro para indicar el agente de destino.
IDs de agentes virtuales
virtual_agent_id: Es el número de ID asignado a un agente virtual específico.
IDs de la fila
queue_id: Es el identificador de una cola de CCAI Platform y solo existe cuando la llamada se origina en una cola.from_queue_id: Se usa cuando se enrutan llamadas o chats de una cola a otra para indicar la cola de origen.to_queue_id: Se usa cuando se enrutan llamadas o chats de una cola a otra para indicar la cola de destino.queue_path: Es la ruta de acceso a una cola de CCAI Platform y solo existe cuando la llamada se origina en una cola.from_queue_path: Se usa cuando se enrutan llamadas o chats de una cola a otra para indicar la cola de origen.to_queue_path: Se usa cuando se enrutan llamadas o chats de una cola a otra para indicar la cola de destino.
Campaign ID
campaign_id: Es el ID de la campaña de CCAI Platform. Solo se incluyen si el tipo de llamada es una llamada de campaña.campaign_name: Es el nombre de una campaña de CCAI Platform. Solo se incluyen si el tipo de llamada es una llamada de campaña.
Mensaje
message: Evento que indica que se recibió un mensaje nuevo del consumidor, además del contenido del mensaje.
Tipos de sesión
session_type: Es un tipo de sesión de CCAI Platform.cobrowse_session_remote_control: Indica el estado de una sesión de Compartir pantalla de control remoto solicitada. Valores:off,requested,rejected,on.cobrowse_session_full_device: Indica el estado de una sesión completa de Screen Share del dispositivo. Valores:off,requested,rejected,on.
Participantes
type: Tipo de participante:end_user;agent; (de participants.type de la respuesta de /api/v1/calls o /api/v1/chats).cobrowse_session_requested_by: Indica quién inició una sesión de Compartir pantalla. Los valores posibles sonagentoend_user.cobrowse_session_ended_by: Indica quién finalizó una sesión de Compartir pantalla. Los valores posibles sonagent,end_useroapi.end_user_id:participants.end_user_idde la respuesta de/api/v1/callso/api/v1/chatsEste campo solo está presente si el tipo esend_user.
Tipos de interacción o sesión
Tipos de llamadas
- Llamadas de voz entrantes: Llamadas de RTC estándares.
- Llamadas entrantes de voz (IVR con dispositivos móviles): Son las llamadas de respaldo de RTC que se realizan desde el SDK para dispositivos móviles.
- Llamada entrante por voz (dispositivos móviles): Los consumidores la realizan a través de un SDK para dispositivos móviles instalado.
- Devolución de llamada de voz (Web): Se inicia desde el SDK web.
- Llamada entrante de voz (API): Se inicia con la API.
- Programada por voz (dispositivos móviles): Se programó con un SDK para dispositivos móviles instalado.
- Programada por voz (web): Se programó con un SDK web instalado.
- Llamada saliente de voz: La inicia un agente marcando un número.
- Llamada saliente de voz (API): Se inicia con la API.
- Campaña de voz: Se inicia con un marcador saliente (campaña).
Tipos de chat
- Mensajería (WhatsApp): Se inicia con WhatsApp.
- Mensajería entrante (SMS)
- Mensajería saliente (SMS)
- Mensajería saliente (SMS a través de la API)
- Mensajería (web): Se inicia con un SDK web instalado.
- Mensajería (dispositivos móviles): Se inicia con un SDK para dispositivos móviles instalado.
Tipo de llamada o chat
- Sesión de Compartir pantalla: La inicia un agente o un usuario final durante una llamada o un chat.
Tipos de eventos
Estos son los tipos de eventos que publica el adaptador del agente:
Se cambió el control remoto de la sesión de Compartir pantalla
Se cambió el dispositivo completo de la sesión de Compartir pantalla
Acceso del agente
Un evento de inicio de sesión del agente ocurre cuando el agente inicia sesión en el adaptador.
A continuación, se incluye un ejemplo de un evento Agent_Login:
{
"type": "Agent_Login",
"data": {
"agent_id": 1,
"agent_custom_id": "007",
"agent_email": "Kim@example.com",
}
}
A continuación, se incluyen las descripciones de los campos de datos del evento:
agent_id: Es el identificador del agente.Opcional:
agent_custom_id: Es el identificador personalizado del agente, si se ingresó en su perfil.agent_email: Es la dirección de correo electrónico asociada a la cuenta del agente.
Nueva llamada
Se produce un evento de llamada nuevo cuando un agente responde una llamada. Este evento contiene información como cuándo comenzó la llamada, qué agente la atendió y de dónde provino.
A continuación, se muestra un ejemplo de un evento New_Call:
{
"type": "New_Call",
"data": {
"agent_id": 1,
"agent_custom_id": "007",
"agent_email": "Kim@example.com",
"queue_id": 8469,
"queue_path": "Developers / Kim",
"campaign_id": 1432,
"campaign_name": "Survey Movie",
"call_id": 103646,
"session_type": "Voice Campaign (UJET)"
}
}
A continuación, se incluyen las descripciones de los campos de datos del evento:
agent_id: Es el identificador del agente.agent_custom_id: Es el identificador personalizado del agente, si se ingresó en su perfil. Es opcional.agent_email: La dirección de correo electrónico asociada a la cuenta del agentequeue_id: Es el identificador de la cola desde la que se originó la llamada. Este campo se incluye cuando la llamada se originó en una fila. Es opcional.queue_path: Es la ruta de acceso de la cola desde la que se originó la llamada. Este campo se incluye cuando la llamada se originó en una cola. Es opcional.campaign_id: Es el identificador de la campaña. Este campo se incluye en una llamada de campaña. Es opcional.campaign_name: Es el nombre de la campaña. Este campo se incluye en una llamada de campaña. Es opcional.call_id: Es el identificador de la llamada.session_type: Es el tipo de sesión.virtual_agent_id: Es el identificador del agente virtual. Este campo se incluye en los eventos que involucran al agente virtual. Es opcional.va_data_parameters: Son las variables configuradas en la cola para enviar al agente virtual. Este campo se incluye para los eventos que involucran al agente virtual. Es opcional.session_variable: Todas las variables del agente virtual que se envían a Contact Center AI Platform. Es opcional.custom_sip_headers: Permite que los encabezados personalizados del Protocolo de inicio de sesión (SIP) de las llamadas SIP entrantes aparezcan en el registro de eventos POST. Este campo se incluye si se usan encabezados SIP personalizados. Es opcional.custom_data_secured: Contiene datos personalizados firmados de tu servidor. Es opcional.custom_data_not_secured: Contiene datos personalizados sin firmar de tu página web. Para obtener más información, consulta Cómo chatear con datos personalizados sin firmar. Es opcional.
Se inició la ocultación de la llamada
Se produce un evento de inicio de ocultamiento de llamada cuando se inicia el ocultamiento de una llamada y no se está grabando. Los datos del evento constan del ID del agente que atendió la llamada y el ID de la llamada.
agent_id: Es el ID del agente que atendió la llamada.call_id: ID de la llamada
Este es un ejemplo de un evento de inicio de ocultamiento de llamadas:
{
"agent_id": 2896,
"call_id": 97939
}
Se detuvo la ocultación de la llamada
El evento de detención de la ocultación de llamadas se produce cuando finaliza la ocultación de una llamada y se reanuda la grabación. Este evento consta del ID del agente que atendió la llamada y el call ID.
agent_id: Es elIDdel agente que atendió la llamada.call_id: Es elIDde la llamada.
A continuación, se muestra un ejemplo de datos de eventos de detención de la ocultación de llamadas:
{
"agent_id": 2896,
"call_id": 97939
}
Finalizar llamada
Se produce un evento de finalización de llamada cuando finaliza una llamada. Este evento contiene información, como cuándo finalizó la llamada, qué agente la atendió y de dónde provino.
A continuación, se incluye un ejemplo de un evento End_Call:
{
"type": "End_Call",
"data": {
"agent_id": 1,
"agent_custom_id": "007",
"agent_email": "Kim@example.com",
"queue_id": 8469,
"queue_path": "Developers / Kim",
"campaign_id": 1432,
"campaign_name": "Survey Movie",
"call_id": 103646,
"session_type": "Voice Campaign (UJET)"
}
}
A continuación, se incluyen las descripciones de los campos de datos del evento:
agent_id: Es el identificador del agente.agent_custom_id: Es el identificador personalizado del agente, si se ingresó en su perfil. Es opcional.agent_email: La dirección de correo electrónico asociada a la cuenta del agentequeue_id: Es el identificador de la cola desde la que se originó la llamada. Este campo se incluye cuando la llamada se originó en una fila. Es opcional.queue_path: Es la ruta de acceso de la cola desde la que se originó la llamada. Este campo se incluye cuando la llamada se originó en una cola. Es opcional.campaign_id: Es el identificador de la campaña. Este campo se incluye en una llamada de campaña. Es opcional.campaign_name: Es el nombre de la campaña. Este campo se incluye en una llamada de campaña. Es opcional.call_id: Es el identificador de la llamada.session_type: Es el tipo de sesión.virtual_agent_id: Es el identificador del agente virtual. Este campo se incluye para los eventos que involucran al agente virtual. Es opcional.va_data_parameters: Son las variables configuradas en la cola para enviar al agente virtual. Este campo se incluye para los eventos que involucran al agente virtual. Es opcional.session_variable: Todas las variables del agente virtual que se envían a Contact Center AI Platform. Es opcional.custom_sip_headers: Permite que los encabezados personalizados del Protocolo de inicio de sesión (SIP) de las llamadas SIP entrantes aparezcan en el registro de eventos POST. Este campo se incluye si se usan encabezados SIP personalizados. Es opcional.custom_data_secured: Contiene datos personalizados firmados de tu servidor. Es opcional.custom_data_not_secured: Contiene datos personalizados sin firmar de tu página web. Para obtener más información, consulta Chatea con datos personalizados sin firmar (opcional). Es opcional.
Nuevo chat
Se produce un evento de chat nuevo cuando un agente toma una sesión de chat. Este evento indica cuándo comenzó el chat y contiene información como el agente que lo atendió y el lugar de origen.
A continuación, se incluye un ejemplo de un evento New_chat:
{
"type": "New_Chat",
"data": {
"chat_id": 73522,
"session_type": "messaging inbound (web chat)",
"agent_id": 1,
"agent_email": "ariel@example.com",
"queue_id": 7678,
"queue_path": "HB TEAM / Ariel"
}
}
A continuación, se incluyen las descripciones de los campos de datos del evento:
chat_id: Es el identificador del chat.session_type: Es el tipo de sesión.agent_id: Es el identificador del agente.agent_custom_id: Es el identificador personalizado del agente, si se ingresó en su perfil. Es opcional.agent_email: Es la dirección de correo electrónico asociada a la cuenta del agente.queue_id: Es el identificador de la cola desde la que se originó la llamada. Este campo se incluye cuando la llamada se originó en una fila. Es opcional.queue_path: Es la ruta de acceso de la cola desde la que se originó la llamada. Este campo se incluye cuando la llamada se originó en una cola. Es opcional.custom_data_secured: Contiene datos personalizados firmados de tu servidor. Es opcional.custom_data_not_secured: Contiene datos personalizados sin firmar de tu página web. Para obtener más información, consulta Chatea con datos personalizados sin firmar (opcional). Es opcional.
Finalizar chat
Se produce un evento de finalización del chat cuando finaliza una sesión de chat. Este evento indica cuándo finalizó el chat y contiene información, como el agente que lo atendió y el lugar de origen.
A continuación, se incluye un ejemplo de un evento End_Chat:
{
"type": "End_Chat",
"data": {
"chat_id": 73522,
"session_type": "Messaging Inbound (Web Chat)",
"agent_id": 1,
"agent_email": "ariel@example.com",
"queue_id": null,
"queue_path": null,
"agent_custom_id": null
}
}
A continuación, se incluyen las descripciones de los campos de datos del evento:
chat_id: Es el identificador del chat.session_type: Es el tipo de sesión.agent_id: Es el identificador del agente.agent_custom_id: Es el identificador personalizado del agente, si se ingresó en su perfil. Es opcional.agent_email: Es la dirección de correo electrónico asociada a la cuenta del agente.queue_id: Es el identificador de la cola desde la que se originó la llamada. Este campo se incluye cuando la llamada se originó en una fila. Es opcional.queue_path: Es la ruta de acceso de la cola desde la que se originó la llamada. Este campo se incluye cuando la llamada se originó en una cola. Es opcional.custom_data_secured: Contiene datos personalizados firmados de tu servidor. Es opcional.custom_data_not_secured: Contiene datos personalizados sin firmar de tu página web. Para obtener más información, consulta Chatea con datos personalizados sin firmar (opcional). Es opcional.
Chat activo
Se produce un evento de chat activo cuando el agente cambia a una pestaña de chat en el adaptador de chat.
A continuación, se incluye un ejemplo de un evento Active_Chat:
{
"type": "Active_Chat",
"data": {
"chat_id": 73521,
"session_type": "messaging inbound (web chat)",
"agent_id": 1,
"agent_email": "ariel@example.com",
"queue_id": 7678,
"queue_path": "HB TEAM / Ariel"
}
}
A continuación, se incluyen las descripciones de los campos de datos del evento:
chat_id: Es el identificador del chat.session_type: Es el tipo de sesión.agent_id: Es el identificador del agente.agent_custom_id: Es el identificador personalizado del agente, si se ingresó en su perfil. Es opcional.agent_email: Es la dirección de correo electrónico asociada a la cuenta del agente.queue_id: Es el identificador de la cola desde la que se originó la llamada. Este campo se incluye cuando la llamada se originó en una fila. Es opcional.queue_path: Es la ruta de acceso de la cola desde la que se originó la llamada. Este campo se incluye cuando la llamada se originó en una cola. Es opcional.custom_data_secured: Contiene datos personalizados firmados de tu servidor. Es opcional.custom_data_not_secured: Contiene datos personalizados sin firmar de tu página web. Para obtener más información, consulta Chatea con datos personalizados sin firmar (opcional). Es opcional.
Mensaje entrante de chat
Un evento de mensaje entrante de chat indica que se recibió un mensaje nuevo del cliente. Incluye el contenido del mensaje.
Se registran los datos de los siguientes campos para un evento de mensaje entrante de chat:
chat_id: Identifica la sesión de chat.session_type: Indica el tipo de sesión que se está creando, como la mensajería entrante a través del chat web.agent_id: Identifica al agente que maneja la sesión de chat.agent_custom_id: Este campo solo existe si el perfil del agente incluye un ID personalizado. Es opcional.agent_email: Es la dirección de correo electrónico del agente que maneja la sesión de chat. Este campo solo se incluye cuando el chat se origina en una cola. Es opcional.queue_id: Es el ID de la fila de la que se originó la sesión de chat. Este campo solo se incluye cuando el chat se origina en una cola.queue_path: Es la ruta de acceso de la fila desde la que se originó la sesión de chat. Este campo solo se incluye cuando el chat se origina en una cola.message: Es un evento que indica que se recibió un mensaje nuevo del consumidor, además del contenido del mensaje.custom_data_secured: Permite la transmisión de datos personalizados protegidos del SDK. Es opcional.custom_data_not_secured: Permite la transmisión de datos personalizados no seguros del SDK. Es opcional.
A continuación, se incluye un ejemplo de un evento Chat_Inbound_Message:
{
"type": "Chat_Inbound_Message",
"data": {
"chat_id": 73522,
"session_type": "messaging inbound (web chat)",
"agent_id": 1,
"agent_email": "ariel@example.com",
"queue_id": 7678,
"queue_path": "HB TEAM / Ariel",
"message" : "Can you help me with my order tracking number?"
}
}
Mensaje saliente de chat
Se produce un evento de mensaje saliente del chat cuando se recibe un mensaje nuevo del cliente. Incluye el contenido del mensaje.
Se registran los datos de los siguientes campos para un evento de mensaje saliente de chat:
chat_id: Identifica la sesión de chat.session_type: Indica el tipo de sesión que se está creando, como la mensajería entrante a través del chat web.agent_id: Identifica al agente que maneja la sesión de chat.agent_custom_id: Este campo solo se incluye si el perfil del agente tiene un ID personalizado. Es opcional.agent_email: Es la dirección de correo electrónico del agente que maneja la sesión de chat. Este campo solo se incluye cuando el chat se origina en una cola. Es opcional.queue_id: Es el ID de la fila de la que se originó la sesión de chat. Este campo solo se incluye cuando el chat se origina en una cola.queue_path: Es la ruta de acceso de la fila desde la que se originó la sesión de chat. Este campo solo se incluye cuando el chat se origina en una cola.message: El evento indica que se recibió un mensaje nuevo del consumidor, además del contenido del mensaje.custom_data_secured: Permite la transmisión de datos personalizados protegidos del SDK. Es opcional.custom_data_not_secured: Permite la transmisión de datos personalizados no seguros del SDK. Es opcional.
A continuación, se incluye un ejemplo de un evento Chat_Outbound_Message:
{
"type": "Chat_Outbound_Message",
"data": {
"chat_id": 73522,
"session_type": "messaging inbound (web chat)",
"agent_id": 1,
"agent_email": "ariel@example.com",
"queue_id": 7678,
"queue_path": "HB TEAM / Ariel",
"message" : "Please give me a moment to look up your account information"
}
}
Chat descartado
Un evento de chat descartado ocurre cuando el agente cierra la pestaña de chat en el adaptador de chat.
A continuación, se incluye un ejemplo de un evento Dismissed_Chat:
{
"type":"Dismissed_Chat",
"data":{"chat_id":73522,
"session_type":"Messaging Inbound (Web Chat)",
"agent_id":1,
"agent_email":"ariel@example.com"
}
}
A continuación, se incluyen las descripciones de los campos de datos del evento:
chat_id: Es el identificador del chat.session_type: Es el tipo de sesión.agent_id: Es el identificador del agente.agent_custom_id: Es el identificador personalizado del agente, si se ingresó en su perfil. Es opcional.agent_email: La dirección de correo electrónico asociada a la cuenta del agentequeue_id: Es el identificador de la cola desde la que se originó la llamada. Este campo se incluye cuando la llamada se originó en una fila. Es opcional.queue_path: Es la ruta de acceso de la cola desde la que se originó la llamada. Este campo se incluye cuando la llamada se originó en una cola. Es opcional.custom_data_secured: Contiene datos personalizados firmados de tu servidor. Es opcional.custom_data_not_secured: Contiene datos personalizados sin firmar de tu página web. Para obtener más información, consulta Chatea con datos personalizados sin firmar (opcional). Es opcional.
Se inició la sesión de Compartir pantalla
Se produce un evento Se inició una sesión de Screen Share cuando un agente o un usuario final inician una sesión de Screen Share. Las sesiones de Compartir pantalla se pueden iniciar durante una llamada o un chat. Para obtener más información, consulta Compartir pantalla.
Este es un ejemplo de un objeto JSON para un evento de sesión iniciada de Screen Share:
{
"type": "Cobrowse_Session_Started",
"data": {
"agent_id": 5,
"chat_id": 791,
"cobrowse_session_id": "Y1zYY6XIYX4oapqpEz3qHw",
"cobrowse_session_requested_by": "agent",
"cobrowse_session_remote_control": "off",
"cobrowse_session_full_device": "off"
}
}
A continuación, se incluyen las descripciones de los campos de datos del evento:
agent_id: Es el identificador del agente.call_id: Es el identificador de una llamada entrante en el canal de IVR (respuesta de voz interactiva). Este campo se incluye si la sesión de Compartir pantalla se inició durante una llamada.chat_id: Es el identificador de un chat entrante en el canal web o para dispositivos móviles. Este campo se incluye si la sesión de Compartir pantalla se inició durante un chat.cobrowse_session_id: Es el identificador de una sesión de Screen Share.cobrowse_session_requested_by: Indica quién inició una sesión de Compartir pantalla. Los valores sonagentyend-user.cobrowse_session_remote_control: Indica el estado de una sesión de Compartir pantalla de control remoto. Los valores sonon,rejected,requestedyoff.cobrowse_session_full_device: Indica el estado de una sesión completa de Screen Share del dispositivo. Los valores sonon,rejected,requestedyoff.custom_data_secured: Contiene datos personalizados firmados de tu servidor. Es opcional.custom_data_not_secured: Contiene datos personalizados sin firmar de tu página web. Para obtener más información, consulta Chatea con datos personalizados sin firmar (opcional). Es opcional.
Se cambió el control remoto de la sesión de Compartir pantalla
Se produce un evento de cambio de control remoto de sesión de Compartir pantalla cuando cambia el estado de una sesión de Compartir pantalla de control remoto. Este evento indica el estado de la sesión de Compartir pantalla del control remoto. Para obtener más información, consulta Screen Share.
Este es un ejemplo de un objeto JSON para un evento Cobrowse_Session_Remote_Control_Changed:
{
"type": "Cobrowse_Session_Remote_Control_Changed",
"data": {
"agent_id": 5,
"chat_id": 791,
"cobrowse_session_id": "Y1zYY6XIYX4oapqpEz3qHw",
"cobrowse_session_remote_control": "requested"
}
}
A continuación, se incluyen las descripciones de los campos de datos del evento:
agent_id: Es el identificador del agente.call_id: Es el identificador de una llamada entrante en el canal de IVR (respuesta de voz interactiva). Este campo se incluye si la sesión de Compartir pantalla se inició durante una llamada.chat_id: Es el identificador de un chat entrante en el canal web o para dispositivos móviles. Este campo se incluye si la sesión de Compartir pantalla se inició durante un chat.cobrowse_session_id: Es el identificador de una sesión de Screen Share.cobrowse_session_remote_control: Indica el estado de una sesión de Compartir pantalla con control remoto. Los valores sonon,rejected,requestedyoff.custom_data_secured: Contiene datos personalizados firmados de tu servidor. Es opcional.custom_data_not_secured: Contiene datos personalizados sin firmar de tu página web. Para obtener más información, consulta Chatea con datos personalizados sin firmar (opcional). Es opcional.
Cambió el dispositivo de la sesión de uso compartido de pantalla completa
Se produce un evento de cambio de dispositivo completo de la sesión de Compartir pantalla cuando cambia el estado de una sesión de Compartir pantalla de dispositivo completo. Este evento indica el estado de la sesión completa de uso compartido de la pantalla del dispositivo. Para obtener más información, consulta Compartir pantalla.
A continuación, se incluye un ejemplo de un evento Cobrowse_Session_Full_Device_Changed:
{
"type": "Cobrowse_Session_Full_Device_Changed",
"data": {
"agent_id": 5,
"cobrowse_session_id": "9-Kshrag-gn6ZSuIxoMtWQ",
"cobrowse_session_full_device": "rejected"
}
}
A continuación, se incluyen las descripciones de los campos de datos del evento:
agent_id: Es el identificador del agente.call_id: Es el identificador de una llamada entrante en el canal de IVR (respuesta de voz interactiva). Este campo se incluye si la sesión de Compartir pantalla se inició durante una llamada.chat_id: Es el identificador de un chat entrante en el canal web o para dispositivos móviles. Este campo se incluye si la sesión de Compartir pantalla se inició durante un chat.Cobrowse_session_id: Es el identificador de una sesión de Screen Share.Cobrowse_session_full_device: Indica el estado de una sesión completa de Screen Share del dispositivo. Los valores sonon,rejected,requestedyoff.custom_data_secured: Contiene datos personalizados firmados de tu servidor. Es opcional.custom_data_not_secured: Contiene datos personalizados sin firmar de tu página web. Para obtener más información, consulta Chatea con datos personalizados sin firmar (opcional). Es opcional.
Finalizó la sesión de Compartir pantalla
Se produce un evento de inicio de sesión de Compartir pantalla cuando un agente, un usuario final o la API finalizan una sesión de Compartir pantalla. Para obtener más información, consulta Cómo configurar la función de compartir pantalla.
A continuación, se incluye un ejemplo de un evento Cobrowse_Session_Ended:
{
"type": "Cobrowse_Session_Ended",
"data": {
"agent_id": 5,
"cobrowse_session_id": "9-Kshrag-gn6ZSuIxoMtWQ",
"cobrowse_session_requested_by": "end_user",
"cobrowse_session_ended_by": "agent",
"cobrowse_session_remote_control": "on",
"cobrowse_session_full_device": "rejected"
}
}
A continuación, se incluyen las descripciones de los campos de datos del evento:
agent_id: Es el identificador del agente.call_id: Es el identificador de una llamada entrante en el canal de IVR (respuesta de voz interactiva). Este campo se incluye si la sesión de Compartir pantalla se inició durante una llamada.chat_id: Es el identificador de un chat entrante en el canal web o para dispositivos móviles. Este campo se incluye si la sesión de Compartir pantalla se inició durante un chat.cobrowse_session_id: Es el identificador de una sesión de Screen Share.cobrowse_session_ended_by: Indica quién finalizó la sesión de Compartir pantalla. Los valores sonagent,end-useryapi.cobrowse_session_remote_control: Indica el estado de una sesión de Compartir pantalla con control remoto. Los valores sonon,rejected,requestedyoff.cobrowse_session_full_device: Indica el estado de una sesión completa de Screen Share del dispositivo. Los valores sonon,rejected,requestedyoff.custom_data_secured: Contiene datos personalizados firmados de tu servidor. Es opcional.custom_data_not_secured: Contiene datos personalizados sin firmar de tu página web. Para obtener más información, consulta Chatea con datos personalizados sin firmar (opcional). Es opcional.
Transferir
Se produce un evento de transferencia cuando se transfiere una llamada o un chat. Puede referirse a una transferencia con introducción o directa.
Los siguientes campos de eventos forman parte de un evento de transferencia.
chat_idocall_id: Identifica la sesión de llamada o chat.session_type: Indica el tipo de sesión que se está creando, como un mensaje entrante a través del chat web.campaign_id: Es el ID de la campaña. Este campo solo está presente si el tipo de llamada es una llamada de campaña. Es opcional.campaign_name: Es el nombre de la campaña. Este campo solo está presente si el tipo de llamada es una llamada de campaña. Es opcional.from_agent_id: Se usa cuando se enrutan llamadas o chats de un agente a otro para indicar el agente de origen.from_agent_custom_id: Se usa cuando se enrutan llamadas o chats de un agente a otro para indicar el agente de origen. Es opcional.from_agent_email: Se usa cuando se enrutan llamadas o chats de un agente a otro para indicar el agente de origen.to_agent_id: Se usa cuando se enrutan llamadas o chats de un agente a otro para indicar el agente de destino.to_agent_custom_id: Se usa cuando se enrutan llamadas o chats de un agente a otro para indicar el agente de destino. Es opcional.to_agent_email: Se usa cuando se enrutan llamadas o chats de un agente a otro para indicar el agente de destino.from_queue_id: Se usa cuando se enrutan llamadas o chats de una cola a otra para indicar la cola de origen.from_queue_path: Se usa cuando se enrutan llamadas o chats de una cola a otra para indicar la cola de origen.to_queue_id: Se usa cuando se enrutan llamadas o chats de una cola a otra para indicar la cola de destino.to_queue_path: Se usa cuando se enrutan llamadas o chats de una cola a otra para indicar la cola de destino.virtual_agent_id: Es el ID asignado a un agente virtual. Es opcional.va_data_parameters: Todas las variables configuradas en la cola para enviar al agente virtual. Esto solo es necesario para los eventos que involucran al agente virtual. Es opcional.(
session_variable: Todas las variables del agente virtual que se envían a CCAI Platform en la carga útil. Es opcional.custom_sip_headers: Permite que los encabezados SIP personalizados de las llamadas SIP entrantes aparezcan en el registro de eventos POST. Solo se requiere si se usan encabezados SIP personalizados. Es opcional.custom_data_secured: Permite la transmisión de datos personalizados protegidos del SDK. Es opcional.custom_data_not_secured: Permite la transmisión de datos personalizados no seguros del SDK. Es opcional.
Este es un ejemplo de un evento de transferencia:
{
"type": "Transfer_Chat",
"data": {
"chat_id": 103646,
"session_type": "Messaging Inbound (SMS)",
"campaign_id": 1432,
"campaign_name": "Survey Movie",
"from_agent_id": 1,
"from_agent_custom_id": "007",
"from_agent_email": "Ira@example.com",
"to_agent_id" : 5
"to_agent_custom_id": "100"
"to_agent_email" : "ariel@example.com"
"from_queue_id": 8469,
"from_queue_path": "Developers / Ariel",
"to_queue_id" : 1234,
"to_queue_path" : "Schemes / Auric"
}
}
Se agregó la fiesta
Un evento de parte agregada se refiere a cualquier transferencia. Puede ser una transferencia de llamada o de chat.
Un evento de fiesta agregada contiene los siguientes datos:
chat_idocall_id: Identifica la sesión de llamada o chat.session_type: Indica el tipo de sesión que se está creando, como un mensaje entrante a través del chat web.agent_custom_id: Este campo solo existe si el perfil del agente incluye un ID personalizado. Es opcional.agent_email: Es la dirección de correo electrónico del agente que maneja la sesión de llamada o chat.queue_id: Es el ID de la fila de la que se originó la sesión de chat. Este campo solo se incluye cuando el chat se origina en una cola. Es opcional.queue_path: Es la ruta de acceso de la fila desde la que se originó la sesión de chat. Este campo solo se incluye cuando el chat se origina en una cola. Es opcional.campaign_id: Es el ID de la campaña. Este campo solo se incluye cuando el tipo de llamada es una llamada de campaña. Es opcional.campaign_name: Es el nombre de la campaña. Este campo solo se incluye cuando el tipo de llamada es una llamada de campaña. Es opcional.type: Es el tipo de participante, por ejemplo, end_user o agent. Este campo se devuelve como parte del tipo participants de la respuesta/api/v1/callso/api/v1/chats.end_user_id: Es el end_user_id. Este campo se devuelve como parte de la respuesta de/api/v1/callso/api/v1/chats. Este campo solo está presente en las llamadas o los chats de usuarios finales que se enrutan de un agente a otro para indicar el agente de destino. Es opcional.virtual_agent_id: Es el identificador asignado a un agente virtual. Es opcional.va_data_parameters: Todas las variables configuradas en la cola para enviar al agente virtual. Esto solo es necesario para los eventos que involucran al agente virtual. Es opcional.session_variable: Todas las variables del agente virtual que se envían a CCAI Platform en la carga útil. Es opcional.custom_sip_headers: Esto permite que los encabezados SIP personalizados de las llamadas SIP entrantes aparezcan en el registro de eventos POST. Solo se requiere si se usan encabezados SIP personalizados. Es opcional.custom_data_secured: Permite la transmisión de datos personalizados protegidos del SDK. Es opcional.custom_data_not_secured: Permite la transmisión de datos personalizados no seguros del SDK. Es opcional.
A continuación, se muestra un ejemplo de un evento Party_Added.
{
"type": "Party_Added",
"data": {
"chat_id": 103646,
"session_type": "Messaging Inbound (SMS)",
"campaign_id": 1432,
"campaign_name": "Survey Movie",
"agent_id": 1,
"agent_custom_id": "007",
"agent_email": "ariel@example.com",
"queue_id": 8469,
"queue_path": "Developers / Ariel",
"type" : "agent"
}
}
El agente se conecta a la sesión
El evento de conexión del agente a la sesión se produce cuando un agente se conecta a una sesión. Existen dos tipos diferentes de eventos. El tipo se determina según si es una llamada o un chat.
Los siguientes campos de eventos forman parte de un evento de conexión del agente a la sesión.
agent_id: Identifica al agente que maneja la llamada o la sesión de chat.agent_email: Es la dirección de correo electrónico del agente que maneja la sesión de llamada o chat.agent_custom_id: Este campo solo existe si el perfil del agente incluye un ID personalizado. Es opcional.chat_idocall_id: Identifica la sesión de llamada o chat.virtual_agent_id: Es el ID asignado a un agente virtual específico. Es opcional.campaign_id: Es el ID de la campaña. Este campo solo se incluye cuando el tipo de llamada es una llamada de campaña. Es opcional.campaign_name: Es el nombre de la campaña. Este campo solo se incluye cuando el tipo de llamada es una llamada de campaña. Es opcional.queue_id: Es el ID de la fila de la que se originó la sesión de chat. Este campo solo se incluye cuando el chat se origina en una cola. Es opcional.queue_path: Es la ruta de acceso de la fila desde la que se originó la sesión de chat. Este campo solo se incluye cuando el chat se origina en una cola. Es opcional.session_type: Indica el tipo de sesión que se está creando, como un mensaje entrante a través del chat web.virtual_agent_id: Es el ID asignado a un agente virtual. Es opcional.va_data_parameters: Son todas las variables configuradas en la cola para enviarlas al agente virtual. Esto solo es obligatorio para los eventos que involucran al agente virtual. Es opcional.session_variable: Son todas las variables del agente virtual que se envían a UJET en la carga útil. Es opcional.custom_sip_headers: Esto permite que los encabezados SIP personalizados de las llamadas SIP entrantes aparezcan en el registro de eventos POST. Solo se requiere si se usan encabezados SIP personalizados. Es opcional.custom_data_secured: Permite la transmisión de datos personalizados protegidos del SDK. Es opcional.custom_data_not_secured: Permite la transmisión de datos personalizados no seguros del SDK. Es opcional.
A continuación, se incluye un ejemplo de datos de eventos de Agent_Joined_Chat:
{
"type": "Agent_Joined_Chat",
"data": {
"chat_id": 103646,
"campaign_id": 1432,
"campaign_name": "Survey Movie",
"agent_id": 1,
"agent_custom_id": "007",
"agent_email": "ariel@example.com",
"queue_id": 8469,
"queue_path": "Developers / Ariel",
"session_type": "Messaging Inbound (SMS)",
}
}
Salida del agente
Un evento de cierre de sesión del agente se produce cuando un agente cierra sesión en el adaptador del agente.
Los siguientes campos de eventos forman parte de un evento de Agent_Logout.
agent_id: Es el identificador del agente que accedió.agent_email: La dirección de correo electrónico asociada a la cuenta del agenteagent_custom_id: Es el ID personalizado del agente, si se ingresó en su perfil. Es opcional.
A continuación, se incluye un ejemplo de un evento Agent_Logout:
{
"type": "Agent_Logout",
"data": {
"agent_id": 1,
"agent_custom_id": "007",
"agent_email": "ariel@example.com",
}
}
Se inició Agent Assist
Se produce un evento de inicio de Agent Assist cuando un agente activa Agent Assist durante una sesión de llamada o chat.
A continuación, se incluye un ejemplo de un evento Agent_Assist_Started:
{
"type": "Agent_Assist_Started",
"data": {
"conversation_id": "12345",
"queue_id": "65",
"agent_id": "1",
"session_id": "78534G4RT4284",
"queue_language_id": "en",
"timestamp": "12:45:15"
}
}
Estos son los campos del evento:
conversation_id: Es el identificador de la conversación.queue_id: Es el identificador de la fila.agent_id: Es el identificador del agente.session_id: Es el identificador de la sesión.queue_language_id: Es el idioma de la fila.timestamp: Es la marca de tiempo.
Ventana emergente en segundo plano
La función de aparición de pantalla permite que los agentes realicen una aparición de pantalla del CRM en segundo plano, lo que significa que la información del cliente se muestra en la pantalla del agente sin que este deba realizar ninguna acción. Esto proporciona una experiencia más fluida para los consumidores y reduce el tiempo de procesamiento de los agentes.
Apertura de registro de CRM
El evento, CRM_Record_Pop, es un evento del servidor que se activa cuando se debe extraer un ticket. Este evento incluye un parámetro llamado recordUrl que contiene la URL del registro de CRM, lo que te permite realizar una aparición en pantalla si te suscribes a los eventos POST cuando utilizas adaptadores integrados.
Para lograr esto, en el siguiente ejemplo, se muestra cómo agregar un objeto de escucha de eventos que escucha los mensajes enviados desde otro iframe o ventana. Este fragmento de código está diseñado para habilitar la comunicación entre diferentes marcos o ventanas y permitir actualizaciones dinámicas del contenido que se muestra en el iframe según los mensajes recibidos.
// name is the html property of the iframe
const iframeTarget = document.querySelector('iframe[name="target_iframe_adapter"]')
// example usage of add event listener
// https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener
window.addEventListener('message', (e) => {
try {
const data = JSON.parse(e.data)
const type = data.type
console.log('EventListener: ', JSON.stringify(data))
if (type === 'CRM_Record_Pop') {
const recordUrl = data.data.recordUrl
if (!recordUrl) {
return
}
console.log(`Opening <strong>recordUrl</strong> in iframe <strong>${iframeTarget.getAttribute('name')}</strong>`)
// changing an iframe target to the record URL pop
iframeTarget.src = recordUrl
} else if (type === 'New_Chat') {
console.log(`<strong>Chat started...</strong>`)
// handling here for new_chat events
} else if (type === 'End_Chat') {
console.log(`<strong>Chat ended...</strong>`)
// handling here for end_chat events
} if (.... //other event types) {
// code handling for other types
}else {
console.log(JSON.stringify(data))
}
} catch (e) {
log(e, true)
}
}, false)