Al iniciar el Workflow Designer podemos ver las Start Activity
Estas son la actividad inicial de cualquier flujo, al arrastrar una hacia la mesa de trabajo, se define qué tipo de flujo será.
Tipos de start activity
Start Activity - Para flujos de Telefonía.
Bot Start Activity - Para flujos de Bots.
BotFunction Start Activity - Para crear extensiones de bots.
Webhook Start Activity - Para recibir información desde un tercero.
ChannelProvider Start Activity - Para enviar información hacia un tercero.
Tip |
---|
Una vez que se coloque la start activity deseada, se desplegarán las actividades relacionadas a con su canal y necesarias para la creación del flujo. |
ChannelProvider Start Activity
Campo de configuración
name
Va a ser el nombre del proveedor, el mismo va a aparecer en las campañas de smsSMS/whatsapp WhatsApp y en los discadores del mismo canal.
Tip |
---|
Si el nombre del proveedor contiene la palabra "whatsappWhatsApp" en la unified inbox va a aparecer con iconos de whatsapp WhatsApp y el agente va a tener la posibilidad de enviar attachments. |
Variables disponibles
AGENT
nombre Nombre del agente si hay interaccion interacción.MESSAGE
mensajeMensaje.TO
numero Número destinatario.ATTACHMENTS
array Array de objetos, cada uno conteniendo un attachment.Code Block language json [ { "extension":"png", "path":"20210226/8b5eb91a-2799-4c30-a712-9cfbbd333f49.1584030188436.png", "url":"https://example.ucontactcloud.com/attachments/20210226/8b5eb91a-2799-4c30-a712-9cfbbd333f49.1584030188436.png", "type":"image/png" } ]
CAMPAIGN
campaña Campaña de la interaccion interacción.GUID
guid GUID de la interaccion interacción.SMS_GUID
guid unico GUID único del mensaje.
MessageResult
Para informarle al sistema que el sms SMS fue enviado bien o con error se debe usar la aplicación MessageResult, la misma requiere dos parámetros:
result
Resultado del envio envío (puede ser cualquier valor).id
Id unico ID único del mensaje en caso de que corresponda (este id ID es normalmente devuelto en la llamada a la API del proveedor).
Tip |
---|
Para crear un proveedor personalizado, lo más común es que se use la aplicación ExecWebService. |
Webhook Start Activity
Campo de configuración
name
Es el nombre del webhook que al mismo tiempo se va a corresponder con la ruta de POST para poder ejecutar el flujo.
POST https://instance.ucontactcloud.com/IntegraChannels/resources/webhook/{name}
Variables disponibles
BODY
type: Obj
example:
Code Block |
---|
{ "name": "Daniel" } |
HEADERS
type: Obj
example:
Code Block |
---|
{ "Accept"🙁 "/" ], "Cache-Control"🙁 "no-cache" ], "Connection"🙁 "close" ], "User-Agent"🙁 "PostmanRuntime/7.26.8" ] } |
ReceiveNewMessage
El webhook se puede ejecutar para ejecutar muchas aplicaciones diferentes, desde la ejecución de una consulta, una llamada a un webservice, hasta la inyección al sistema de un smsSMS/whatsapp WhatsApp entrante.
Tip |
---|
Para esto ultimo último se utiliza la aplicación ReceiveNewMessage |
message
Mensaje, si corresponde.attachment
Url de URL del attachment.from
Numero Número que envia envía el mensaje.did
Numero Número al que se envia envía el mensaje, tiene que coincidir con el did DID de la campaña para que entre a la campaña.id
Id unico ID único del mensaje.
MessageStatus
Esta actividad le permitirá actualizar los estados de los mensajes de WhatsApp, se le deben enviar dos parámetros:
id
Id ID único del mensaje (este id ID es el mismo que se envía en MessageResult).status
Los estados a actualizar pueden ser:sent
,delivered
,read
,error
,invalid_session
y einvalid_number
.
Log de flows
Se utiliza emplea log4j2 como libreria librería para el log de flows, y el archivo donde se puede ver todo lo relacionado a con los bots se encuenta encuentra en var/log/IntegraFlows.log
Este archivo no solo loguea los errores, sino que de manera similar a lo que se hace en el https://integra-scm.atlassian.net/l/c/nY4voq0m, loguea todas las actividades que se van recorriendo a medida que se recorre el flow.
El formato en que se imprime la información en IntegraFlows.log es el siguiente:
AAAA-MM-DD HH:mm:ss - [Número de thread] - [Nombre del flow - guid del flow] [Número de paso de la actividad]
Primero se va a loguear la ejecución de la actividad y luego se loguean los parámetros de la actividad que se ejecutoejecutó.
Cuando el flow finaliza se imprime el mensaje FINISH.
Ejemplo:
Logger
Una vez que se carga un flujo con contexto bots, channel providers o webhooks en Workflow Designer, se puede visualizar la opción Logger, la cual permite ver el log de todas las ejecuciones del flow que está cargado.
Por defecto, el logger está desactivado, para activarlo hay que presionar en el interruptor que se encuentra en la esquina superior izquierda.
También cuenta con la posibilidad de filtrar los mensajes en la consola del workflow según nivel de error. Los niveles disponibles son Info, Warning y Severe.
Ejemplo de Logger: