Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Info

Dentro del Workflow Designer se encuentran las actividades que permiten crear proveedores y webhooks para uContact.

Note

Los flujos de Proveedores y Webhooks poseen algunas de las actividades detalladas en los bots, mas un par de actividades extras exclusivas para su desarrollo, las mismas serán explicadas en cada caso de uso.

Contenido

Table of Contents

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á.

Expandtitle

Tipos de start activity

1 -
  1. Start Activity - Para flujos de Telefonía.

2 -
  1. Bot Start Activity - Para flujos de Bots.

3 -
  1. BotFunction Start Activity - Para crear extensiones de bots.

4 -
  1. Webhook Start Activity - Para recibir información desde un tercero.

5 -
  1. 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 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 sms/whatsapp y en los discadores del mismo canal.

Tip

Si el nombre del proveedor contiene la palabra "whatsapp" en la unified inbox va a aparecer con iconos de whatsapp y el agente va a tener la posibilidad de enviar attachments

Variables disponibles

AGENT
  • AGENT

, MESSAGE, TO, ATTACHMENTS, CAMPAIGN, GUID, SMS_GUID Expand
titleDetalle de variables

  • nombre del agente si hay interaccion

  • MESSAGE
    mensaje

  • TO
    numero destinatario

  • ATTACHMENTS
    array de objetos, cada uno conteniendo un attachment

    Code Block
    languagejson
    [
      {
        "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 de la interaccion

  • GUID
    guid de la interaccion

  • SMS_GUID
    guid unico del mensaje

MessageResult

Para informarle al sistema que el sms fue enviado bien o con error se debe usar la aplicación MessageResult, la misma requiere dos parámetros:

  • result
    Resultado del envio (puede ser cualquier valor)

  • id
    Id unico del mensaje en caso que corresponda (este 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 , HEADERS

expand

titleDetalle de variables

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 sms/whatsapp entrante.

Tip

Para esto ultimo se utiliza la aplicación ReceiveNewMessage

Expand
titleDetalle de aplicación ReceiveNewMessage
Image Modified
  • message
    Mensaje, si corresponde

  • attachment
    Url de attachment

  • from
    Numero que envia el mensaje

  • did
    Numero al que se envia el mensaje, tiene que coincidir con el did de la campaña para que entre a la campaña

  • id
    Id unico del mensaje

MessageStatus

Esta actividad le permitirá actualizar los estados de los mensajes de WhatsApp, se le deben enviar dos parámetros:

  • id
    Id único del mensaje (este id es el mismo que se envía en MessageResult).

  • status
    Los estados a actualizar pueden ser: sent, delivered, read, error, invalid_session y invalid_number.

Log de flows

Se utiliza log4j2 como libreria para el log de flows, y el archivo donde se puede ver todo lo relacionado a los bots se encuenta 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 ejecuto.

Cuando el flow finaliza se imprime el mensaje FINISH.

Ejemplo:

Image Added