En este documento, se explica el esquema JSON que se usa para estructurar los metadatos de las transcripciones de chats. Este esquema es necesario para representar y procesar con precisión las conversaciones de chat.
Esquema de metadatos de transcripción de chat
Este esquema describe los datos de estructura de datos de las transcripciones de chats. Los componentes principales se describen en las siguientes secciones:
Información básica de la transcripción
Las siguientes propiedades proporcionan la información fundamental sobre la transcripción:
comm_type(cadena): El tipo de comunicación al que pertenece esta transcripción. Puede ser un chat o una llamada para llamadas con funcionalidad de SMS combinada.comm_id(número entero): Un identificador para la comunicación, por ejemplo, el chat o la llamada a la que se relaciona esta transcripción.transcript_version(cadena): La versión del formato de transcripción. Esto es necesario para la retrocompatibilidad cuando se analizan las transcripciones.assigned_at(cadena, fecha y hora): La marca de tiempo de cuándo se asignó el chat.timezone(cadena): La zona horaria en la que se realizó el chat.
Definiciones de mensajes
La sección definitions contiene componentes de esquema reutilizables que definen la estructura de diferentes tipos de mensajes dentro de la transcripción. Esto proporciona flexibilidad para controlar varios formatos de contenido:
text(objeto): representa un mensaje de texto.type(cadena): debe ser "text".content(cadena): el contenido de texto real del mensaje.lang(cadena): el idioma del contenido de texto.
text_template(objeto): representa un mensaje de texto con plantilla.type(cadena): debe sertext_template.content(cadena): el contenido de la plantilla de texto, que puede incluir marcadores de posición.
markdown(objeto): representa un mensaje con formato Markdown.type(cadena): debe serMarkdown.content(cadena): el contenido de la plantilla de Markdown.
markdown_template(objeto): representa un mensaje de Markdown con plantilla.type(cadena): debe sermarkdown_template.content(cadena): el contenido de la plantilla de Markdown, posiblemente con marcadores de posición.
photo(objeto): representa un mensaje que contiene una foto.type(cadena): debe serphoto.media_id(número entero): el ID del archivo multimedia de la foto.
video(objeto): representa un mensaje que contiene un video.title(cadena): título del video.video(objeto): detalles sobre el video.url(cadena): URL del video.text(cadena): texto alternativo a la URL del video.
media_id(número entero): ID de contenido multimedia para recuperar la URL del video si no se proporciona directamente.
image(objeto): representa un mensaje que contiene una imagen.title(cadena): título de la imagen.image(objeto): detalles sobre la imagen.url(cadena): URL de la imagen.text(cadena): texto alternativo a la URL de la imagen.
document(objeto): representa un mensaje que contiene un documento.title(cadena): título del documento.document(objeto): detalles sobre el documento.url(cadena): URL del documento.text(cadena): texto alternativo a la URL del documento.
inline_button(objeto): representa un conjunto de botones intercalados.title(cadena): título del conjunto de botones intercalados.buttons(array): array de objetos de botón.title(cadena): título del botón.action(cadena): nombre de la acción indicada por el botón.link(cadena): vínculo de URL para acciones de vínculo de respuesta rápida.
sticky_button(objeto): representa un conjunto de botones fijos.title(cadena): título del conjunto de botones fijos.buttons(array): array de objetos de botón.title(cadena): título del botón.action(cadena): nombre de la acción indicada por el botón.link(cadena): vínculo de URL para acciones de vínculo de respuesta rápida.
content_card(objeto): representa una tarjeta de contenido.cards(array): array de objetos de tarjeta de contenido.title(cadena): título de la tarjeta de contenido.body(cadena): texto del cuerpo de la tarjeta de contenido.
server_message(objeto): representa un mensaje recuperado del servidor.message_id(número entero): ID del mensaje del servidor almacenado.content(cadena): contenido del mensaje recuperado del servidor.
action(objeto): representa una acción realizada durante el chat. Puede ser una de las siguientes:action_escalation(objeto): representa una acción de escalamiento.action(cadena): debe ser "escalation".escalation_reason(cadena): el motivo del escalamiento.menu_id(número entero): el ID al que se debe escalar la comunicación.language(cadena): código de idioma ISO 689 de la cola a la que se debe escalar.
action_deflection(objeto): representa una acción de desvío.action(cadena): debe serdeflection.deflection_type(cadena): el tipo de desvío.sip_parameters(objeto o nulo): parámetros SIP para reenviar como parte del desvío, si está presente.
action_end(objeto): representa una acción final.action(cadena): debe serend.
noti(objeto): representa un mensaje de notificación. Puede ser uno de varios tipos de notificaciones:noti_transfer_started(objeto): notificación para una transferencia que comienza.type(cadena): debe sernoti.event(cadena): debe ser "transferStarted".target(cadena): el destino de la transferencia, por ejemplo, menú o agente.agent(objeto): el agente que inició la transferencia.id(número entero): ID del agente.email(cadena): correo electrónico del agente.name(cadena): nombre del agente.
noti_verification_requested(objeto): notificación para una solicitud de verificación.type(cadena): debe sernoti.event(cadena): debe serverificationRequested.agent(objeto): el agente que solicita la verificación.id(número entero): ID del agente que solicita la verificación.email(cadena): correo electrónico del agente que solicita la verificación.name(cadena): nombre del agente que solicita la verificación.
noti_end_user_verified(objeto): notificación para cuando se verifica un usuario final.type(cadena): debe sernoti.event(cadena): debe serendUserVerified.
Otros tipos de
noti_\*definen notificaciones para varios eventos, como solicitudes de fotos, solicitudes de videos, eventos de navegación conjunta, eventos de agente virtual de tareas, unión de agentes y cambios de estado de transferencia o escalamiento.noti_custom(objeto): representa una notificación personalizada.type(cadena): debe sernoti.event(cadena): debe sercustom.detail(objeto): detalles del evento personalizado.key(cadena): clave que representa el detalle del evento personalizado.data(objeto): carga útil de eventos definida de forma personalizada.
Entradas de transcripción
entries(array): Un array de objetos, en el que cada objeto representa un mensaje individual enviado en el chat.timestamp(cadena): la marca de tiempo en la que se envió el mensaje.type(cadena): el tipo de mensaje, que hace referencia a una de las definiciones descritas anteriormente, por ejemplo,text,photo,noti.body(objeto): el contenido del mensaje, que se ajusta a la estructura definida por el tipo del mensaje. UsaoneOfpara permitir diferentes tipos de cuerpo.role(cadena): el rol del participante que envió el mensaje. Los valores posibles incluyenend_user,agent,manager,virtual_agent,external_agent,task_virtual_agent,system.user_data(objeto): datos del usuario que envió el mensaje, a menos que sea un mensaje de usuario final o del sistema.name(cadena): el nombre del usuario.id(número entero): el ID único del usuario.
avatar_url(cadena): URL de almacenamiento del avatar del usuario.