Envío de datos a una API mediante flujos de Oracle Infinity (heredado)
Introducción
En este tutorial se demostrará la recopilación de datos en Infinity y el envío a una API de ejemplo (mediante Streams (Legacy) y Action Center (Legacy) Webhooks) para un caso de uso ficticio de reducción de volúmenes del centro de llamadas.
¿Qué es un webhook?: un webhook es una forma de enviar datos a un punto final en tiempo real (por ejemplo, enviar datos de conversión a una API externa).
Objetivos
En este tutorial, completará un caso de uso ficticio de enviar por correo electrónico al cliente contenido de ayuda relevante cuando haga clic en el enlace "contacto" de su sitio web para reducir el número de consultas a las que se enfrenta su centro de contacto.
Usted:
- Cree una API ficticia a la que enviar datos de Infinity.
- Cree un Flujo (heredado) que capture un comportamiento de usuario específico.
- Cree un webhook Connection en Action Center (Legacy).
- Cree un destino en la conexión para formatear los datos que van a la API ficticia.
- Cree una acción para enviar los datos de flujo a una API ficticia.
Consulte el siguiente diagrama para ver una ilustración del caso de uso ficticio:
Ilustración del caso de uso
Requisitos
- Cuenta de Oracle Infinity: debe tener una cuenta y conocer su GUID de cuenta.
- Página web con Oracle Infinity implantado: debe tener una página web con la etiqueta CX de Oracle implantada mediante el GUID de su cuenta (consulte - Centro de inicio rápido de Infinity IQ - Guías de inicio rápido de etiquetas de CX para obtener instrucciones sobre cómo desplegar el seguimiento del infinito en una página web).
Creación de un punto final ficticio
Crearemos un punto final ficticio para recibir nuestros datos de Infinity (que representa la API de una plataforma de correo electrónico para disparar correos electrónicos). Utilizaremos Beeceptor para nuestro punto final simulado.
-
Visite Beeceptor, introduzca un nombre para el punto final y, a continuación, haga clic en Crear punto final.
Seleccione un nombre de punto final único para este tutorial
-
Copie la URL de punto final con Haga clic para copiar.
Al abrir la URL de punto final en otra ventana/separador, debería ver las solicitudes que se muestran en la ventana/separador Beeceptor existente:
Solicitudes en la ventana de Beeceptor original
-
Pruebe el punto final.
Visite la URL de punto final que ha copiado en la nueva ventana/separador del explorador para validar que está recibiendo datos correctamente.
Copiar en el portapapeles
Creación de una conexión de webhook en el centro de acción (heredado)
Se necesita una conexión de webhook para enviar datos al punto final simulado recién creado.
-
Abra la interfaz de usuario de Oracle Infinity.
-
Haga clic en el menú superior izquierdo y vaya a Centro de acciones.
-
Haga clic en Gestionar conexiones (en la esquina superior derecha).
-
Haga clic en Conexión +New > Webhook (en la parte superior izquierda).
-
Introduzca los detalles del punto final.
-
Nombre:
My Email platform
. -
Protocolo de conexión: seleccione
HTTP
. -
Seguridad (HTTPS/WSS): active esta casilla.
-
FQDN del servidor: introduzca el punto final de Beeceptor del portapapeles (menos
https://
). Por ejemplo,YOURENDPOINT.free.beeceptor.com
. -
Puerto :
443
-
Tipo de autenticación:
None
Detalles de la Conexión
-
-
Haga clic en Conectar.
Creación de un destino en la conexión
Un destino dentro de una conexión permite formatear datos antes de enviarlos a una ubicación específica de la conexión.
-
Seleccione la conexión y, a continuación, haga clic en Nuevo en Destinos.
-
Introduzca los siguientes detalles:
- Nombre:
Website Actions
- Punto final de URI:
/
(se utiliza para enviar a una ruta de acceso opcional en el punto final (por ejemplo,myinfinitytest.free.beeceptor.com/
con/
al final es lo que se especifica aquí). - Agrupación de eventos:
Single
- Método HTTP:
POST
- Tipo/contenido de carga útil:
application/json
- Solicitar formateador:
Twig
- Nombre:
-
Pegue la siguiente plantilla de código en la plantilla de solicitud de conexión:
\{\% autoescape 'json' \%\} { "customer_id":"\{\{events[0]['customer_id']\}\}", "event_name":"\{\{events[0]['event_name']\}\}" } \{\% endautoescape \%\}
¿Qué es Twig?: Twig es un lenguaje de plantilla que permite manipular la carga útil antes de enviarla al punto final. Es muy potente que el formato de las cargas útiles esté en el formato correcto para el punto final.
Detalles de Destino
-
Haga clic en Guardar.
Creación de un flujo
Tendrá que crear, probar y guardar un flujo (heredado) para capturar cuando simulemos un usuario haciendo clic en el botón Contacto en nuestro caso de uso ficticio, de modo que podamos enviarlo a nuestro punto final simulado.
-
Creación del flujo
Crearemos un Flujo escribiendo una consulta en busca de usuarios que hagan clic en el botón Contacto (un evento que simularemos en un paso posterior):
- En la interfaz de usuario de Oracle Infinity, haga clic en el menú superior izquierdo y vaya a Streams.
- Pegue la siguiente consulta como Consulta:
data.wt.event_name AS 'event_name',data.wt.dcsvid AS 'customer_id' WHERE data.wt.event_name='contact us' AND Exists(data.wt.dcsvid) AND session.closed='false'
. - Pulse Inicio.
Definición de la consulta
Consulta Explicación:
La primera parte de la sentencia es una
SELECT
de los campos que queremos exponer en el flujo. Este sería el valor actualwt.event_name
(Nombre de evento) ywt.dcsvid
(ID de cliente).Ambos parámetros seleccionados con
SELECT
utilizan Alias declarandoAS
para que podamos declararlos comoevent_name
ycustomer_id
(lo que simplifica la creación de nuestra Acción en un paso posterior).WHERE
que decide cuándo el flujo debe disparar una acción. Esto sería cuando el evento contienewt.event_name='contact us'
AND
awt.dcsvid
(ID de cliente). Además, debemos utilizarsession.closed=false
para permitir que la acción se dispare inmediatamente (no espere hasta que finalice la sesión).Sintaxis de consulta de Streams: consulte el centro de ayuda de Oracle Infinity - Streams para obtener soporte de sintaxis de consulta completa.
-
Prueba del flujo
Validaremos los datos entrantes en nuestro flujo simulando un clic en el botón Contacto y comprobando si podemos ver los datos entrantes:
- Vaya a su sitio web con el seguimiento de Infinity implantado (por ejemplo, mediante el uso de la etiqueta Oracle CX).
- Abra la consola del explorador (por ejemplo, la consola de herramientas para desarrolladores en Google Chrome.
- Copie el código siguiente y péguelo en la consola del explorador:
var cxDataObject = { "wt.event_name":"contact us", // Sample Custom Variable "wt.dcsvid":"MYCUSTOMERID" } // DO NOT EDIT BELOW THIS LINE - ORA.click() window.ORA = window.ORA || {productReady: []}; ORA.productReady.push(['analytics', function(cxDataObject) {return function() {return ORA.click({"data": cxDataObject})}}(cxDataObject)]);
MYCUSTOMERID: este valor representaría el ID del cliente en un despliegue real. En nuestro caso de uso ficticio, esto es lo que una plataforma de correo electrónico utilizaría para saber a quién enviar un mensaje por correo electrónico.
Página de ejemplo con el código y la solicitud dcs.gif Infinity resultante en el separador Red.
-
Guarde el flujo
Guarde el flujo ahora que lo hemos validado correctamente:
-
Arrastre todos los parámetros del lado izquierdo al lienzo principal:
Arrastrando parámetros
-
Haga clic en Guardar el flujo y asígnele un nombre, como Contacto.
-
Cree su acción
Ahora podemos desarrollar la acción que conectará su Flujo a su Conexión para que los datos se muestren en su punto final simulado.
-
En la interfaz de usuario de Oracle Infinity, haga clic en el menú superior izquierdo y vaya al Centro de acciones.
-
Haga clic en +Create Action (Acción).
-
Complete los siguientes campos:
- Nombre:
Contact Us - Email
- Descripción:
Sends Customer ID and Event Name upon Contact Us click
- Intentar reenvío: déjelo como valor por defecto.
- Nombre:
-
En Destino, seleccione:
- Webhook
- Punto final de Beeceptor (o lo que llamó a su conexión).
- Haga clic en Contacto (o en el que haya llamado Destino).
-
En Datos, seleccione Contacto (o lo que le haya asignado a su Flujo) y, a continuación, haga clic en Guardar.
¿Mis variables ya están asignadas?: Como ha utilizado Alias en la consulta, observará que los parámetros seleccionados ya están asignados.
Su flujo con asignaciones
¿Qué hacen las asignaciones de campos?: los nombres
event_name
ycustomer_id
que ha asignado son los que procesará la plantilla Twig configurada en su destino anteriormente en esta guía. -
Vuelva al Centro de acciones donde debería ver la nueva Acción.
-
Haga clic en Iniciar para activar la acción.
Probar el flujo
Una vez completada la configuración, puede enviar datos a su Flujo y recibir la salida en su punto final simulado, simulando el caso de uso del centro de llamadas ficticio.
-
Abra la ventana de beeceptor original, donde puede ver las solicitudes entrantes (por ejemplo,
https://beeceptor.com/console/YOURNAMEOFMOCKENDPOINT
). -
Abra la página de prueba donde está activa la etiqueta Infinity/CX
-
Active otra solicitud según el paso 2 en Creación de un flujo:
var cxDataObject = { "wt.event_name":"contact us", // Sample Custom Variable "wt.dcsvid":"MYCUSTOMERID" } // DO NOT EDIT BELOW THIS LINE - ORA.click() window.ORA = window.ORA || {productReady: []}; ORA.productReady.push(['analytics', function(cxDataObject) {return function() {return ORA.click({"data": cxDataObject})}}(cxDataObject)]);
Ahora debería ver los datos que se muestran en el punto final simulado, donde el punto final simulado simula la plataforma de correo electrónico* que recibe una señal entrante de Infinity:
Sus datos se muestran en el punto final ficticio
*Entorno de producción: en un entorno de producción, tendría una carga útil más compleja el envío de datos a la API de una plataforma de correo electrónico real. Sin embargo, para este tutorial solo estamos utilizando un punto final simulado para mostrar la funcionalidad de Infinity.
Enlaces relacionados
- Centro de inicio rápido de Infinity IQ - Guías de inicio rápido de etiquetas de CX: guías de inicio rápido para desplegar el seguimiento de Infinity.
- Infinity User Help Center - Streams (heredado): documentación sobre flujos (heredado).
- Sintaxis del Centro de ayuda de usuario de Infinito - Consulta de flujos - Sintaxis de consulta de flujos (heredados).
- Infinity User Help Center - Action Center (Legacy): documentación del centro de acciones (heredado).
Más recursos de aprendizaje
Explore otras prácticas en docs.oracle.com/learn o acceda a contenido de aprendizaje más gratuito en el canal YouTube de Oracle Learning. Además, visite education.oracle.com/learning-explorer para convertirse en un explorador de formación de Oracle.
Para obtener documentación sobre los productos, visite Oracle Help Center.
Send data to an API using Oracle Infinity Streams (Legacy)
F50953-01
November 2021
Copyright © 2021, Oracle and/or its affiliates.