En el generador de integración, los parámetros de solicitud permiten extraer datos (parámetros de conversación) de las conversaciones de los agente IA y pasarlos a extremos externos. En algunos casos, es posible que tenga que transformar o cambiar el formato de estos datos antes de enviarlos en una solicitud de API como una consulta de URL o en el cuerpo de la solicitud. Para ello, puede usar JSONata, un potente lenguaje de consulta y transformación.
En este artículo se tratan los siguientes temas:
- Reformatear el valor de un parámetro de solicitud
- Ejemplos de casos de uso comunes para cambiar el formato de los valores
Artículos relacionados:
Reformatear el valor de un parámetro de solicitud
Puede cambiar el formato del valor de un parámetro de solicitud usando JSONata.
Para cambiar el formato del valor de un parámetro de solicitud
- En Agentes IA – Avanzado, en la esquina superior derecha, use el campo desplegable agente IA para seleccionar su agente IA.
- En el menú principal a la izquierda, haga clic en Integraciones de API.
- Seleccione o cree una integración.
- En la página Parámetros de solicitud, seleccione o cree el parámetro de solicitud cuyo valor desea cambiar de formato.
- En el campo Valor de prueba, seleccione el icono Reformatear valor (
).
- En el cuadro de diálogo Reformatear valor, en el campo Reformar JSONata, use JSONata para transformar o reformatear el valor vinculado a la clave de parámetro de solicitud seleccionada.
En la consulta JSONata, use “$” para representar la clave cuyo valor está reformateando.
El campo Probar vista previa del valor permite verificar los resultados de la consulta en tiempo real. - Haga clic en Terminado.
- (Opcional) Si está agregando el parámetro de solicitud al cuerpo de una solicitud de API:
- En el encabezado Entorno a la izquierda, seleccione el entorno apropiado.
- Seleccione la pestaña Cuerpo.
- Agregue el objeto JSON usando el parámetro request como un valor entre llaves dobles.
Casos de uso comunes para cambiar el formato de los valores
Dentro del generador de integración, puede definir los parámetros de solicitud asignándolos a claves específicas. Si bien estos valores pueden funcionar tal cual, hay situaciones en las que es necesario transformarlos o cambiarles el formato para que coincidan con los requisitos del sistema externo.
Por ejemplo, podría desear:
- Reformatear fechas: Cambiar el formato de una fecha de MM/DD/AAAA a AAAA-MM-DD o ISO 8601 para que coincida con los requisitos de la API.
- Realizar operaciones de cadena: Manipular cadenas, como agregar o eliminar caracteres, combinar varios campos o transformar cadenas para que contengan HTML.
- Aplicar lógica condicional: Aplicar condiciones, como verificar si un campo está vacío o asignar un valor predeterminado si es necesario.
Esta sección contiene los siguientes ejemplos:
- Escenario: Reformateo de fechas
- Escenario: Reformatear los URL para que se pueda hacer clic en los vínculos
- Escenario: Cambiar el formato de una transcripción de chat para que sea más legible
Escenario: Reformateo de fechas
En este escenario, el extremo necesita verificar una fecha con el formato AAAA-MM-DD o con el formato ISO 8601. Sin embargo, para la conversación, desea que las fechas se muestren en un formato más fácil de usar de DD/MM/YYYY.
Esta es la consulta JSONata que se usaría en esta situación:
$substring($, 6, 10) & "-" & $substring($, 3, 2) & "-" & $substring($, 0, 2)
Escenario: Reformatear los URL para que se pueda hacer clic en los vínculos
En este escenario, desea convertir los URL en vínculos en los que se puede hacer clic buscando texto (una subcadena) que comience con http:// o https:// seguido de varios caracteres que no sean espacios en blanco. Luego desea reemplazar esa subcadena usando la función JSONata $replace, con una cadena que envuelve el URL coincidente en una etiqueta HTML <a> y crear un vínculo en el que se pueda hacer clic.
Esta es la consulta JSONata que se usaría en esta situación:
(
$text := "Chat transcript unavailable. Here is a link:https://www.zendesk.com. Here is another link: https://www.w3schools.com.";
$replace($text, /(https?:\/\/[^\s]+)/, '<a href="$1">$1</a>'
)
Escenario: Cambiar el formato de una transcripción de chat para que sea más legible
En este caso, desea agregar una transcripción de chat a un ticket. Sin embargo, en su forma predeterminada, la transcripción del chat no es muy legible:
- Transcripción de chat - 2024-10-12 (13:04:10) agente IA: Bienvenido al agente IA de ingeniería de clientes. (13:04:10) Agente I>: Elija qué integración desea probar: (13:04:10) Visitante: test c.id: d501304d-da09-4485-a4c7-1c708ec0005d Todas las horas en UTC
Desea transformarlo en un formato más fácil de usar dividiendo cada mensaje en una nueva línea. Como cada mensaje nuevo comienza con un paréntesis de apertura ( ( ), puede usar JSONata para reemplazar cada aparición de ( con un salto de línea seguido de (.
La conversación reformateada se vería así:
- Transcripción de chat - 2024-10-12
(13:04:10) Agente I>: Bienvenido al agente IA de Integration Builder.
(13:04:10) Agente I>: Elija qué integración desea probar:
(13:04:10) Visitante: test c.id: d501304d-da09-4485-a4c7-1c708ec0005d Todas las horas en UTC
Esta es la consulta JSONata que se usaría en esta situación:
$replace($, “(“, “\n(“)
Además, tendría que agregar este parámetro a la sección del cuerpo en su entorno para que se envíe con la solicitud:
{
"chatTranscript": "{{chatTranscript}}"
}