Los agentes IA de Zendesk son chatbots impulsados por IA que interactúan con los clientes a través de los canales de mensajería, correo electrónico (canal que incluye la API y el formulario web) y voz (EAP). Entablan conversaciones con los clientes, realizan acciones (en sistemas autorizados) de manera autónoma y se encargan de automatizar y resolver problemas para que los agentes humanos puedan dedicarse a trabajos más complejos.

¿Qué plan tengo?
Suite, todas las versiones Team, Growth, Professional, Enterprise o Enterprise Plus
Support Team, Professional o Enterprise

JSONata Exerciser: https://try.jsonata.org/
Funciones de JSONata: String, Number, Object, Array

Convertir en cadena cualquier tipo de valor: $string(Account.Order[0].Product[0].ProductID): "858383"
Convertir en número cualquier tipo de valor: $number(Account.Order[0].Product[0].SKU): 406654608

Fecha y hora

$now() > ISO 8601, p. ej., 2022-10-17T09:50:03.163Z
$millis() > UNIX Epoch en milisegundos, p. ej., 1666000139832

Función $toMillis() (UNIX x 1000) (para todas las conversiones y comparaciones matemáticas):

$toMillis(date)
> p. ej., 1626335334767

Si la fecha no está en formato ISO 8601, se puede usar $toMillis igualmente especificando el formato de entrada, p. ej., $toMillis('2020-09-09 00:00:00 +02:00', '[Y0001]-[M01]-[D01] [H01]:[m01]:[s01] [Z]')

Función $fromMillis() (UNIX x 1000) (legible para el ser humano; se pasa el patrón de salida como parámetro):

$fromMillis($toMillis(date), '[M01]/[D01]/[Y0001] [h#1]:[m01][P]')
> p. ej., 07/15/2021 7:48am

Ejemplo: diferencia entre orderDate y now():

($millis() - $toMillis(orderDate))/1000/60 > En minutos
($millis() - $toMillis(orderDate))/1000/60/60/24 > En días

> p. ej., 461 días, que ahora se pueden usar en los operadores numéricos de bloques condicionales: <>=

 

Agregar varios resultados: tarjetas y carruseles

(Cuando haga pruebas en un widget activo en una plataforma de CRM, tenga en cuenta las limitaciones técnicas) 

IMPORTANTE: Las tarjetas y carruseles del generador de diálogo buscan matrices. Si no se define el resultado esperado en JSONata como [], puede devolver un objeto en lugar de una matriz y generar un error técnico.

Cuando se incluyen en un mensaje de texto de un agente IA, los objetos (no anidados) se mostrarán como [object Object] y las matrices como [object Object],[object Object].

Consulta básica para crear un nuevo objeto por entrada:

Account.Order.Product.{'Quantity': Quantity}


Tarjetas y carruseles sencillos:

Account.Order.Product[[0..8]].{
'SKU': $substring(SKU, 0, 50), 'Quantity': Quantity}

… [[0..8]] > Intervalo de resultados con el primer elemento como índice 0 y un límite de 10 objetos como máximo para la mayoría de las plataformas de CRM
… $substring(SKU, 0, 50) > Truncar el exceso de caracteres (el primer carácter es el índice 0)


Tarjeta alternativa opcional si el cuerpo de respuesta está vacío o no se encuentra:

Account.Order.Product ? 
[Account.Order.Product[[0..8]].{
'SKU': $substring(SKU, 0, 50), 'Quantity': Quantity}] :
[{"SKU" : "Product Not Found"}]

 

Agregar varios resultados: correo electrónico

$join(Account.Order.Product.(
"SKU: " & SKU & ", " & "Price: " & Price), '\n')

… '\n' > Insertar un salto de línea para separar los resultados, si la plataforma de CRM admite formato básico

 

Tecnología de Zendesk