inConcert FlowDesigner Descripción de Actividades TELEPHONY ........................................................................................................................................... 6 ANSWER THE CALL ................................................................................................................ 6 CALL PROGRESS ..................................................................................................................... 7 CREATE CONFERENCE GET INPUT .......................................................................................................... 8 ................................................................................................................................ 9 START CALL RECORDING END CURRENT CALL .................................................................................................... 11 ............................................................................................................. 12 HOLD ...................................................................................................................................... 13 MENU ....................................................................................................................................... 14 MAKE NEW CALL .................................................................................................................... 16 PLAY WAVE FILES ................................................................................................................. 17 TRANSFER THE CALL VOICEMAIL ........................................................................................................... 18 ............................................................................................................................ 19 CHAT ..................................................................................................................................................... 20 CHAT SESSION ..................................................................................................................... 20 MANAGE CHAT SESSION .................................................................................................... 22 CONECTIVITY ....................................................................................................................................... 23 EXECUTE COM METHOD QUEUE .................................................................................................................................... 24 FILE TRANSFER ..................................................................................................................... 25 MAILBOX OPERATION MQSERIES ........................................................................................................... 27 .............................................................................................................................. 28 SOCKET OPERATION TUXEDO ...................................................................................................... 23 ........................................................................................................... 30 .................................................................................................................................. 31 FAX ........................................................................................................................................................ 32 SEND FAX ............................................................................................................................... 32 FILE SYSTEM........................................................................................................................................ 34 FILE ATTRIBUTES ................................................................................................................. 34 VIEW ATTRIBUTES ............................................................................................................... 35 CONCATENATE FILE ............................................................................................................ 36 COMPRESS/UNCOMPRESS FILE COPY/MOVE FILE ........................................................................................ 37 .................................................................................................................. 38 IC FlowDesigner Página 2 DELETE FILE ......................................................................................................................... 38 .................................................................................................... 39 ENCRYPT/DECRYPT FILE RENAME FILE ........................................................................................................................ 40 FLATFILE ................................................................................................................................ 41 MSWORD ............................................................................................................................... 42 HTML ....................................................................................................................................... 44 REPOSITORY UPLOAD / DOWNLOAD ............................................................................... 46 MAIL....................................................................................................................................................... 47 FORWARD EMAIL SETTINGS SEND NEW MAIL ............................................................................................... 47 .................................................................................................................... 48 ............................................................................................................................ 49 REPLY MAIL MIDDLEWARE ...................................................................................................................................... 50 EVENT ..................................................................................................................................... 50 EXECUTE STATE ................................................................................................................... 52 BUILD/PARSE OPERATION CANCEL ................................................................................................... 53 ................................................................................................................................. 54 RETURN VALUE .................................................................................................................... 54 EXECUTE PROCESS ............................................................................................................ 55 EXECUTE SQL SENTENCE .................................................................................................. 56 WAIT ....................................................................................................................................... 57 FILTER .................................................................................................................................... 58 SPLIT ...................................................................................................................................... 60 FILTER SPLIT ......................................................................................................................... 61 FILTER FILE ........................................................................................................................... 62 SINCRONISM ......................................................................................................................... 63 TRIGGER EVENT ................................................................................................................... 64 MIDDLEWARE PETITION ...................................................................................................... 65 DBPOOL .................................................................................................................................. 66 LOG ACTIVITY ........................................................................................................................ 67 LOTUS NOTES DOMINO...................................................................................................................... 68 LOTUS NOTES COM .............................................................................................................. 68 VOICE SERVICES................................................................................................................................. 70 TEXT TO SPEECH OPERATION ......................................................................................... 70 IC FlowDesigner Página 3 VOICE RECOGNITION ......................................................................................................... 71 VOICE ENROLL AND VERIFY .............................................................................................. 73 TASK SCHEDULER .............................................................................................................................. 74 ADD TASK .............................................................................................................................. 74 REMOVE TASK ...................................................................................................................... 76 VARIABLES .......................................................................................................................................... 77 ................................................................................................................. 77 CLEAR VARIABLE VARIABLE FLUSH .............................................................................................................................. 78 .................................................................................................................................... 79 NOTIFY VARIABLE ................................................................................................................ 79 PERSIST VARIABLES ........................................................................................................... 80 UP-DOWN VARIABLE ........................................................................................................... 81 CONTACT CENTER.............................................................................................................................. 82 CONTROL AGENT .................................................................................................................. 82 WORKITEM CONTROL CTI – POP UP ........................................................................................................ 84 ....................................................................................................................... 86 DELIVER WORKITEM ............................................................................................................ 87 DELIVER WORKITEM ............................................................................................................ 88 CALL RECORD ....................................................................................................................... 89 SELECT WORKITEM ............................................................................................................. 90 UPDATE WORKITEM ............................................................................................................. 91 IC FlowDesigner Página 4 Este documento tiene como objetivo describir el uso de las actividades soportadas por inConcert. Se detalla cada uno de los campos que se deben completar para ejecutar las mismas así como comentarios y recomendaciones sobre cada una de ellas. Nota: Todo lugar donde se indique el uso de una expresión, se entiende por una expresión válida para el evaluador de expresiones. Las mismas se componen de variables, constantes, funciones y operadores lógicos. • Las variables pueden ser las definidas por el usuario en un proceso, o las predefinidas del sistema como ser AGTEMSG_IDCAMP, FILTER_NUMLINEA, etc. • Las constantes son valores ingresados entre comillas dobles como ser: “Saldos”. • Las funciones son las detalladas en el documento de “Evaluador de expresiones”, por ejemplo OBTCMP(vDatos, 3, Chr(64)). • Los operadores lógicos son los usuales: AND, OR, <, >, <>, =, (, ). Entonces, una expresión válida es una combinación de todo lo anterior, por ejemplo: IIF ( vOptMenu = “Saldos” AND vResult = “OK”, OBTCMP(vDatos, 3, Chr(64)), OBTCMP(vDatos, 2, Chr(64)) ) expresa que si la variable vOptMenu es “Saldos” y el valor de vResult es “OK”, se retorne el valor del campo 3 del string vDatos, caso contrario se retorna el valor del campo 2. IC FlowDesigner Página 5 TELEPHONY Grupo de actividades especializadas en el manejo de telefonía. Answer the Call Permite atender una llamada. Parámetros: • Cancel Process On Error: si se chequea indica que el proceso se cancelará ante un error de TAPI. Uso: Atender llamadas entrantes. Recomendación: No realizar nada más en ese mismo estado. Esperar por el evento CsConnected. IC FlowDesigner Página 6 Call Progress Permite detectar el estado o resultado de una llamada saliente. Parámetros: • Sync/Async: indica si la detección se hará en modo sincrónico o asincrónico. • Events: se podrán marcar uno o más eventos a detectar. Estos son configurables y se encuentran en la Registry del servidor, bajo HKEY_LOCAL_MACHINE\SOFTWARE\NBXAcdService\CallProgess • Store Result in Variable: nombre de la variable donde quedará almacenado el valor devuelto por Call progress. Los valores posibles serán configurables y se encuentran en la Registry del servidor, bajo HKEY_LOCAL_MACHINE\SOFTWARE\NBXAcdService\CallProgess • Cancel Process On Error: si se chequea indica que el proceso se cancelará ante un error de TAPI. Uso: Saber el resultado de una llamada saliente. Por ejemplo: en una campaña de TeleMarketing se realiza una llamada y se desea vocalizar un prompt de audio únicamente si me contesta una voz humana. En una campaña de este tipo, luego de detectar el resultado se podría querer actualizar algún registro de una tabla, para ello, ver actividad SQL. Observación: Si se elige la ejecución Asincrónica, en la variable resultado no tendrá ningún sentido. Para ello, hay esperar por el evento CPState, y el resultado estará almacenado en la variable CallProState. Nota: Para realizar una llamada saliente ver la actividad Make new call. IC FlowDesigner Página 7 Create Conference Crea una conferencia entre el cliente, el WavePhone que lo atendió y un número destino. Parámetros: • Address: Ingreso libre de la dirección con la que se establecerá la conferencia. Puede ser una constante o una variable. Se puede seleccionar si es una variable existente. • Cancel Process On Error: si se chequea indica que el proceso se cancelará ante un error de TAPI. • TimeOut: Expresa el tiempo de espera en milisegundos para completar la actividad. Pasado este tiempo, se intenta dejar todo en un estado seguro nuevamente. Un TimeOut de cero generará una espera infinita, siendo esto bastante peligroso. • Synchronous: Indica si la conferencia se hace un modo sincrónico o asincrónico. • Supervised Operation: Si la conferencia se hace supervisada o no. Sincrónica Asincrónica • No Supervisada Retorna TRUE si se pudo iniciar correctamente la actividad. No hay feedback de ningún tipo. Supervisada Máximo control, retorna TRUE solo si el tercero atiende. Si se va por TimeOut u otra cosa, retorna FALSE Disponible el evento EndConf; y el resultado está en la varible EndConfResult. Store Result in variable: variable donde se almacenará el resultado de la conferencia. (Solo en caso de que sea sincrónica tiene sentido su valor) Nota: La conferencia funciona solamente con WavePhones. No se puede hacer una transferencia y luego hacer una conferencia. IC FlowDesigner Página 8 Get Input Realiza la captura de dígitos, permitiendo incluir condiciones lógicas de fin de captura y control de tiempo y/o reintentos. IC FlowDesigner Página 9 Parámetros: • Retries: cantidad de veces que se podrá reintentar ingresar dígitos. El reintento se hará cada vez que falle la condición de salida o transcurra el tiempo de time out. • Cant. Digits: cantidad de dígitos a detectar. Cuando no se sepa de antemano la cantidad a detectar, se puede ingresar un número alto y que la detección finalice cuando se detecta el dígito de fin de captura. • Exit condition: condición lógica de salida. Cada vez que se detecta un dígito, se evalúa si se cumple la condición, al cumplirse la condición se continúa con el flujo. Si la condición no se cumple, se harán la cantidad de reintentos especificados en Retries. Se pueden utilizar todas las funciones del evaluador de expresiones y las variables acumuladas hasta el momento. Están disponibles dos variables exclusivas de esta actividad: Reintentos (numérico) y Digitos (texto). Ejemplo: LEN(Digitos)>=5 AND LEN(Digitos)<12 AND Reintentos<3 • Prompt: información a vocalizar. Se puede ingresar: o Nombres de archivos wav a tocar, separados por un blanco (“arch1” + Chr(32) + “arch2” + Chr(32) + “arch3”). o Variable conteniendo la tira de wavs a tocar o Funciones del evaluador de expresiones o Combinaciones de todo lo anterior o Ejemplo: “arch” + Chr(32) + NUM2TEXT(Monto, “ “) + Chr(32) + varWavDolares • Prompt for Error: información a vocalizar cada vez que la condición de salida no se cumpla. Se puede ingresar lo mismo que en Prompt. • End Digit: dígito de fin de captura, el usuario puede ingresar menos dígitos de los indicados en nro. de dígitos a detectar y terminar antes la captura. • Store Result in Variable: Variable donde quedan los dígitos detectados (el dígito de fin no se guarda). Si se hacen todos los reintentos y la condición no se cumplió, el valor de la variable será – 1. Si se cumple el time out el resultado es –2. • TimeOut: cantidad de segundos a esperar para el ingreso de dígitos. • Cancel Process On Error: si se chequea indica que el proceso se cancelará ante un error de TAPI. Uso: Vocalización de información, o pedido de dígitos. Es útil para hacer pedido de nros. de cuenta o claves, ya que controla el nro. de reintentos, time out y otras condiciones lógicas que se puedan dar. También es útil para vocalizar información extensa que eventualmente se desee interrumpir mediante la digitación de algún botón del teléfono. IC FlowDesigner Página 10 Start Call Recording Comienza la grabación de una llamada. Parámetros: • Filename: Nombre completo del archivo destino donde quedará almacenada la grabación, se puede ingresar una variable con el nombre cargado, o una constante. • Max record time: cantidad de segundos de la llamada a grabar, si se marca No limit, se graba la llamada hasta que ésta finaliza. • Cancel Process On Error: si se chequea indica que el proceso se cancelará ante un error de TAPI. • Synchronous Recording: Indica si la grabación se realiza en modo sincrónico o asincrónico. Uso: Mantener un registro del contenido de las llamadas. Se podría mandar ese archivo wav por mail, por ejemplo. IC FlowDesigner Página 11 End Current Call Realiza la tarea de cortar una llamada. Parámetros: • Cancel Process On Error: si se chequea indica que el proceso se cancelará ante un error de TAPI. Uso: Finalizar la llamada en curso. IC FlowDesigner Página 12 Hold Realiza la tarea de poner/quitar una llamada de onHold. Parámetros: • Hold: si se marca, la llamada será puesta onHold, si se desmarca, la llamada será sacada de onHold. • Cancel Process On Error: si se chequea indica que el proceso se cancelará ante un error de TAPI. • After Hold Wait: Tiempo de espera en milisegundos antes de continuar luego de un Unhold. Esto es para dar tiempo a que se complete la operación de desholdeo de la llamada antes de continuar con el siguiente paso en el proceso. Uso: Por ejemplo se puede tocar música al cliente mientras espera que lo transfieran a un agente. IC FlowDesigner Página 13 Menu Permite especificar menús de opciones. Parámetros: • Type: indica el tipo de menú a crear. La opción MenuID es para tocar menús predefinidos (estáticos) (existe un formato de mensaje que dice cómo es el menú), la opción Dinamic Menu es para cuando el menú está cargado en una variable (dinámico). La variable debe tener el siguiente formato: nroOpcion1 + Chr(129) + idLinea1 + Chr(129) + Prompt1 + Chr(128) + nroOpcion2 + Chr(129) + idLinea2 + Chr(129) + Prompt2 + Chr(128) +... • Menu Identifier (para menú estático): nombre del formato de mensaje que define al menú. • Menu Version (para menú estático): nro. de versión del formato de mensaje que define al menú. • Variable (para menú dinámico): nombre de la variable que contiene al menú. • Edit Menu (para menú estático): botón para editar el formato de mensaje que define al menú. Un formato está compuesto por varias líneas, cada línea representa una opción del menú a vocalizar. Aparecerá un formulario con las siguientes opciones: • Line Number: nro. de línea, es para definir en qué orden se vocalizarán las opciones del menú • Conditional Line: se puede condicionar la vocalización de una opción. Si se marca, se deberá ingresar la condición lógica ante la cual se inhibe la vocalización de la línea. Por ej. IC FlowDesigner Página 14 • • • • • • • • • • • • • • • TieneCajaAhorro = False, si el cliente no posee cajas de ahorro no se vocaliza la opción de cajas de ahorro. Description: descripción de lo que se vocaliza en esta línea Line Id: valor que retorna el menú. Si se quiere devolver una constante, se deberá escribir entre comillas dobles, sino se puede devolver el valor de una variable. Por ej. “2”, se devuelve el valor 2 en caso de elegir esta opción del menú. Por ej. NroCuenta, se devuelve el valor de la variable NroCuenta. Option Number: nro. de botón a pulsar para esta opción. Se puede marcar Automatic para que el menú decida qué numeración poner. Prompt: información a vocalizar. Se puede ingresar: o Nombres de archivos wav a tocar, separados por un blanco (“arch1” + Chr(32) + “arch2” + Chr(32) + “arch3”). o Variable conteniendo la tira de wavs a tocar o Funciones del evaluador de expresiones o Combinaciones de todo lo anterior o Ejemplo: “arch” + Chr(32) + NUM2TEXT(Monto, “ “) + Chr(32) + varWavDolares MaxOptions: cantidad máxima de opciones que tocará por vez el menú. Por ejemplo el menú tiene 19 opciones y MaxOptions dice 8. Se tocarán dos grupos de 8 opciones y uno de 3 opciones. Para escuchar el siguiente grupo de opciones, se deberá pulsar el botón de dígito de más opciones. Retries: cantidad de veces que se podrá intentar vocalizar el menú. El reintento se hará cada vez que se elija una opción incorrecta o transcurra el tiempo de time out. Por cada vez que sucede esto, se vocaliza el prompt de error y luego las opciones correspondientes. Cant. Digits: cantidad de dígitos a detectar. Cuando no se sepa de antemano la cantidad a detectar, se puede ingresar un número alto y que la detección finalice cuando se detecta el dígito de fin de captura. More Options Digit: dígito de más opciones para cuando el menú tenga más opciones, que las indicadas en MaxOptions. Prompt for More Options: información que se vocaliza en caso de solicitar que se oprima un botón de más opciones. Prompt for Error: información a vocalizar cada vez que se digite una opción incorrecta, o sea, que el menú no la ofrezca como opción válida. Se puede ingresar lo mismo que en los Prompt de las opciones del menú. End Digit: dígito final de captura, el usuario puede ingresar menos dígitos de los indicados en nro. de dígitos a detectar y terminar antes la captura. Store Result in Variable: Variable donde queda la opción elegida (el dígito de fin no se guarda). Devolverá lo puesto en Line ID. Si se hacen todos los reintentos y la condición no se cumplió, el valor de la variable será –1. Si se va por time out el valor será –2. TimeOut: cantidad de segundos a esperar para que se digite una opción. Language: lenguaje en que se vocalizarán los números de opción. Se deben tener los prompts de audio que vocalizan los números en el idioma seleccionado. Cancel Process On Error: si se chequea indica que el proceso se cancelará ante un error de TAPI. Uso: Creación de menús en general. Nota: Se tienen disponibles las siguientes variables en cada iteración del menú (en cada reintento, útil para el prompt for error, y al terminar la ejecución de la actividad): MENU_KEYPRESS (almacena lo digitado hasta el momento) y MENU_LASTERROR (almacena los flags del menu, -1,-2 o lo digitado). Es útil para determinar si se digitó algo realmente al ocurrir un time out, o no digitó nada. Actividades Relacionadas: Cuando se utiliza un menú dinámico, quizá se necesite utilizar las actividades Filter(Filtrar un String), o Build/Parse (Para construir el menú). IC FlowDesigner Página 15 Make New Call Genera una llamada saliente. Parámetros: • Dial To Number: nro. de teléfono destino de la llamada, puede ser un WavePhone. • Outbound Call Port List: lista de puertos por donde hacer la llamada saliente. Esta lista debe contener los puertos de IVR separados con ~. Se puede obtener de la variable AGTEMSG_PUERTOSCAMP. • Last Port used: variable donde se almacena el primer puerto a usar para realizar una llamada. Se puede obtener invocando la función GETLASTPORT(AGTEMSG_IDCAMP,AGTEMSG_VRCAMP). Este puerto se utiliza como arranque en el ciclo de búsqueda de un puerto libre. • Store Port Used To Dial in Variable: nombre de variable donde se almacena el puerto que se utilizó para realizar la llamada. • Cancel Process On Error: si se chequea indica que el proceso se cancelará ante un error de TAPI. Uso: Por ejemplo para realizar una campaña de llamadas salientes de TeleMarketing. IC FlowDesigner Página 16 Play Wave Files Toca una lista de archivos de audio grabados en formato Wav en un puerto. Parámetros: • Play prompts: permite ingresar una lista de nombres de archivos wav a tocar, sin necesidad de indicarle el camino y la extensión. Se puede ingresar un nombre explícito (entre “”) o elegirlo de una lista de prompts predefinidos. Antes de poder utilizar esta actividad, debe estar definida la variable que indica el camino de donde se encuentran los archivos a tocar. Esto se hace con la actividad Variable, el nombre de la variable debe ser DIRDEFAULTWAV y el valor debe estar entre “” y con el separador de directorio final, por ej. “C:\WAV\”. • Synchronous Play: indica si se tocarán los wavs de manera sincrónica o asincrónica. Si se elige de manera asincrónica, la tocada de wavs se detendrá una vez que se de un evento que la corte. • Cancel Process On Error: si se chequea indica que el proceso se cancelará ante un error de TAPI. • Store result in variable: variable donde se almacena el resultado de ejecutar la actividad, un valor de 0 indica que todos los wavs se tocaron con éxito, si alguno falla, se devuelve el nro. del primer wav que falló (1,2,3,...) Uso: Vocalización de información en general. Recordar que los archivos a tocar deben estar accesibles para el servidor de inConcert. Los prompts predefinidos se encuentran el la tabla ‘WavePrompts’ de la base inConcert, el camino es el especificado para el FTP. IC FlowDesigner Página 17 Transfer The Call Transfiere una llamada a otra extensión. Parámetros: • Address: nro. de teléfono destino, puede ser un wavephone o una variable precargada. • Cancel Process On Error: si se chequea indica que el proceso se cancelará ante un error de TAPI. • TimeOut (sólo si es supervisada): Expresa el tiempo de espera en milisegundos para completar la actividad. Pasado este tiempo, se intenta dejar todo en un estado seguro nuevamente. Un TimeOut de cero generará una espera infinita, siendo esto bastante peligroso. • Synchronous: Indica si la transferencia se hace un modo sincrónico o asincrónico. • Supervised Operation: Si la transferencia se hace supervisada o no. • • • Sincrónica • • No Supervisada Retorna TRUE si se pudo iniciar correctamente la actividad. • • • Asincrónica • No hay feedback de ningún tipo. • Supervisada Máximo control, retorna TRUE solo si se atiende. Si se va por TimeOut u otra cosa, retorna FALSE Disponible el evento EndTransfer; y el resultado está en la variable EndTransferResult. Store Result in variable: variable donde se almacenará el resultado de la transferencia. (Solo en caso de que sea sincrónica tiene sentido su valor) Uso: Derivar una llamada a una extensión una vez que se desea. IC FlowDesigner Página 18 VoiceMail Permite grabar correos de voz en el servidor inConcert en formato wav. Parámetros: • Prompt: prompt de audio a vocalizar al usuario previo al inicio de la grabación del correo de voz, por ejemplo una grabación que diga “Tendrá 30 segundos para dejar un correo de voz, gracias” • Max record time: tiempo máximo de la duración de la grabación • Queue VoiceMail: si se chequea esta opción se indica que el VoiceMail se encola. • Announce to: a quien se le encola este voicemail • Cancel Process On Error: si se chequea indica que el proceso se cancelará ante un error de TAPI Comentarios: No hay restricción de cantidad de correos de voz a grabar, el límite está dado por la capacidad del disco del server inConcert solamente. IC FlowDesigner Página 19 CHAT Grupo de actividades para manejo de sesiones de chat de inConcert a través de diferentes canales (TCP/IP, ISAPI, MSN, etc). Chat Session Permite crear, modificar, grabar y borrar sesiones de chat. Parámetros: • Operation: crear una nueva sesión de chat, modificar una sesión o eliminarla • Session Identifyer: identificador único de la sesión de chat, permite identificar una sesión existente para su modificación o eliminación • Session Name: nombre descriptivo que se le dará a la sesión. Este nombre es el que aparece en la ventana del chat • Store result status: variable donde se alamcenará el resultado de la actividad, retorna TRUE o FALSE • Record chat session: marca para indicar que esta sesión se grabará • Specify file path: archivo donde se almacenará la sesión de chat Uso: La creación de una sesión permite que dos o más participantes chateen entre sí. A los efectos del usuario funciona como si fuera una "sala" de conversación. Podría existir una sesión "Ventas" , una sesión "Soporte Técnico" o una sesión de chateo privada entre dos usuarios específicos. IC FlowDesigner Página 20 Comentarios: Requiere que esté el servicio “Chat Server” instalado en el server inConcert. Existe un grupo de variables predefinidas disponibles: IDCHAT: identificador de la sesión de chat CLIENT_IP: Es la dirección IP de quien inicia el chat Datos de quien utiliza la página (si los ingresa): CLIENT_NAME CLIENT_DEPENDENCY CLIENT_COMPANY CLIENT_TEL CLIENT_EXT CLIENT_EMAIL IC FlowDesigner Página 21 Manage Chat Session Permite administrar una sesión de chat existente. Parámetros: • Operation: agregar un usuario a la sesión (crear salones de chateo), remover un usuario de la sesión, transferir el chat a otro usuario (se mueve el usuario de la sesión actual a la nueva sesión), agregar texto a una sesión (permite manipular sesiones de chat con respuestas automatizadas) • Session Identifyer: identificador único de la sesión de chat, aquí se puede utilizar la variable IDCHAT • User name: nombre del usuario a agregar/remover o transferir • Target session: identificador de la sesión a la cual se desea transferir al usuario actual • Text to add: expression indicando el texto a agregar a la sesión actual • Store result status: variable donde se alamcenará el resultado de la actividad, retorna TRUE o FALSE Uso: Permite intervenir en sesiones de chat generadas con el cliente de chat inConcert. IC FlowDesigner Página 22 CONECTIVITY Este grupo de actividades permite implementar conectividad con diferentes aplicativos. Por lo general requieren instalación de software de terceros. Execute COM Method Permite ejecutar componentes (COM, DCOM) registrados en el servidor inConcert. Parámetros: • Program id: Interfase pública que contiene el método, se debe escribir entre comillas dobles • Method: Nombre del método a ejecutar, se debe escribir entre comillas dobles • Parameters: parámetros requeridos por el método • Store result in variable: el resultado de la ejecución queda almacenado en la variable especificada Uso: Ejecución de cualquier método que brinde un objeto COM/DCOM registrado en el servidor donde se encuentre corriendo el servicio de Middleware. IC FlowDesigner Página 23 Queue Permite implementar mensajería entre sistemas. Parámetros: • Data source: fuente de datos • Queue manager provider: proveedor • Channel: canal • Receive message in variable: el mensaje recibido se almacenará en la variable especificada • Send message from variable: el mensaje se toma de la variable especificada • Message: en vez de especificar una variable, se puede poner una expresión • Time out: tiempo máximo de espera • Execution mode: A (asincrónico), S (sincrónico), M (vía mail box), W (vía mail box con espera de respuesta) IC FlowDesigner Página 24 File Transfer Permite transferir archivos desde y hacia un servidor FTP. Parámetros: • Use DSN: Se lo debe marcar si se dispone de un DSN para el acceso al servidor el cual se deberá indicar en el "combo" de la derecha. En caso de usar DSN, se deshabilitarán las opciones "URL", "Port" y "User/password" • URL: Dirección IP del servidor FTP. • Port: Puerto de conexión al servidor (usualmente "21") • User: Usuario para acceso al FTP. • Password: Contraseña para acceso al FTP. • Action: Upload/Download, bajar o subir el archivo/carpeta. • Type: File/Folder, archivo o carpeta completa • Source: Camino y nombre del archivo/carpeta origen • Destination: Camino y nombre del archivo/carpeta destino IC FlowDesigner Página 25 • Sist. 390 Permite implementar mensajería con un sistema IBM 390. Parámetros: • Data Source: DSN a utilizar • Send/Receive: se debe indicar si se desea recibir o enviar mensajes. Si se elige SEND, se hará un Send/Receive, se tomará el mensaje origen de la variable especificada, y el resultado se dejará en la misma variable. • Store result in variable: el mensaje recibido se almacenará en la variable especificada • Variable or message to Send: el mensaje se toma de la variable especificada y se deja el resultado en la misma Uso: Brinda conectividad con aplicativos corriendo sobre un IBM 390. Comentarios: En el server inConcert se debe tener instalado el emulador IBM Personal Communications. Hay que configurar el DSN (tabla DSNData_0179) de la siguiente manera: • IdDSN_0179: identificacion interna para uso con el Gateway, por ej: “Sist_390” • Versio0179: versión del data source, por ej: “1.0” • Descri0179: ProgramId del componente que implementa la comunicación, debe ser “KS3270COMLib.Emulator” • Driver0179: nombre descriptivo, por ej: “Sist_390” • StrCon0179: PSID;Secuencia command~reply para login e inicio aplicacion. Por ej: “a;@C,1500,,,| @C,1500,,,|”, en este caso se le envían dos clear screen para limpiar la pantalla de la consola. Otro ejemplo: “a;p@E~1500,,,|@C~1500,,,|cesn@E~1500,,,|analisis@Tcopa@E~1500,,,|mantis@E~1500 ,,,|audible@T~500,,,|audible@E~2000,,,|” • ReqPat0179: “S” • BaseD_0179: le dice que el canal esta implementado por un COM, debe ser “COM” • Motor_0179: indica el profile file a utilizar para establecer la sesión, por ej: “C:\Profiles\Profile.ws” • Server0179: identificación interna del canal a utilizar, por ej: “Channel_S390” Los campos que no se especifican quedan vacíos. IC FlowDesigner Página 26 MailBox Operation Permite implementar mensajería entre sistemas vía mail box de entrada/salida. Parámetros: • MailBox Out: Inserta un mensaje para un Canal vinculado a una Entidad Externa en el MailBox de salida. El GateWay y los notificadores de canales serán los encargados de entregar el mensaje al canal destino de acuerdo al conjunto de parámetros asociado a dichos canal. • MailBox In: Inserta un mensaje a ser ejecutado por el MiddleWare en el futuro, de acuerdo a los valores fijados. • Operation: Send/Receive • Extern entity: entidad externa • Priority: Prioridad del mensaje • Retries: Reintentos de envío o ejecución • Initial date: Fecha a partir de la cual se intenta enviar el mensaje al Canal o ejecutar la petición • Final date: Fecha máxima de intento de envío o ejecución • Execution mode: sincrónico o asincrónico • Request ID: Identificador único que se le dará al mensaje • Versión: Versión • Store message in variable: el resultado de la operación queda almacenado en la variable indicada Comentarios: Tanto en un mail box de entrada como de salida, se puede hacer un send o un receive, esto es porque siempre se puede querer esperar que otra entidad deje mensajes en esos mail box. Por ejemplo en un mail box de salida hacer un receive de un mensaje que deja un tercero. IC FlowDesigner Página 27 MQSeries Permite implementar mensajería a través de IBM MQSeries. Parámetros: • Data Source: Parámetro que especifica el origen de datos. • Store Result In Variable: Variable donde se va a almacenar el resultado de la consulta a MQSeries. • TimeOut: Aquí se especifica el tiempo de espera para la respuesta de MQSeries. Pasado este tiempo, la actividad finaliza y se continúa con la ejecución del flujo actual. • Message To Send: Parámetro que especifica el String de Entrada/Envio. El mismo va entre comillas dobles o puede ser una variable. • Compare Method: Permite seleccionar el modo de manipulación de los mensajes en colas, de qué manera se va a realizar el sincronismo de mensajes. • Action: parámetros que determinan qué operación se va a realizar, sólo put de mensajes en cola, sólo get de mensajes o ambos. • Input Queue: aquí se especifica la cola de entrada con la que se va a manejar en MQSeries, se debe indicar si es una cola remota. IC FlowDesigner Página 28 • • • Output Queue: aquí se especifica la cola de salida con la que se va a manejar en MQSeries, se debe indicar si es una cola remota. Queue Manager: parámetro que especifica el administrador de colas Channel: Parámetro que especifica el canal de conexión. En caso de especificar un DSN, el mismo debe configurarse de la siguiente manera: - Campo Base de Datos.- Cola de envío: Cola de recibo - Campo String de Conexión.- QueueManager: Channel : Modo de ejecución (vacío es sólo send o sólo receive, “W” es send/receive) : : Flag de cola de receive remota (siempre “”): Flag de cola de send remota (“W” para indicar que es remota, “” para indicar que es local) - Campo TimeOut.- TimeOut en milisegundos - Campo Driver.- nombre de la variable de entorno que contiene el servidor MQ (“MQSERVER”) : valor de la variable de entorno (es el mismo valor que el Channel) Comentarios: El canal debe tener el MCAUser especificado, sino da problemas de autorización al querer acceder una cola. Se requiere tener el Cliente MQSeries 5.1, 32 bits instalado en el server inConcert. IC FlowDesigner Página 29 Socket Operation Permite implementar mensajería entre sistemas a través de sockets. Parámetros: • Socket DSN: DSN del socket a utilizar. Los DSN predefinidos se toman de la tabla ‘DSNData_0179’ cuyo driver sea ‘Socket’. • Message options: Send/Receive, se debe indicar que es lo que se desea hacer en el socket, si recibir o enviar mensajes. • Receive message in variable: el mensaje recibido se almacenará en la variable especificada • Send message from variable: el mensaje se toma de la variable especificada IC FlowDesigner Página 30 Tuxedo Permite implementar mensajería con el Middleware Monitor Transaccional BEA Tuxedo. Esta actividad se comunica de manera sincrónica con Tuxedo. Parámetros: • Service: Nombre del servicio a utilizar que provee Tuxedo • Store Result in Variable: El mensaje recibido se almacenará en la variable especificada • Input String-Variable: El mensaje a enviar se toma de la variable especificada o se envía directamente el String ingresado. El String debe escribirse entre comillas dobles Comentarios: Requiere tener instalado en el server inConcert el cliente Tuxedo 7.1 32 Bits IC FlowDesigner Página 31 FAX Send Fax Permite encolar o enviar un fax por la misma línea, el documento a enviar debe estar grabado en formato Word. Parámetros: • Send Fax Options: “Dial to user” permite encolar un fax para enviarlo ni bien haya un puerto de fax disponible, “Over same line” permite enviar un fax de forma inmediata por la misma línea que se estableció la llamada. • File or IML to send: archivo a enviar como cuerpo del fax. Para el caso de marcar la opción de “Send múltiple faxes”, se debe especificar el IML conteniendo los archivos a enviar. Este IML debe tener el siguiente formato : Separador Archivo1 Separador Archivo2 ... . Por ej: @C:\Files\EstadoCuenta.doc@C:\Files\Cronograma.doc@... • Destiny number: nro. de teléfono destino a donde se enviará el fax encolado. Admite pausas (se especifican con comas). • Store result in variable: variable donde se almacenará el resultado del envío del fax. Los resultados posibles para la opción “Dial to user” son: 0 – Todo OK -1 – No se pudo inicializar el fax (ej.: el archivo no existía) -3 – No existen puertos inicializados. Las opciones para la opción “Over same line” son: X – Número de puerto por donde salió el fax -1 – No se pudo inicializar el fax (ej.: el archivo no existía) -2 – No hay puertos disponibles -3 – No existen puertos inicializados El envío en modo encolado dispara los siguientes eventos una vez finalizado el envío: IC FlowDesigner Página 32 FaxSending: se dispara cuando se comienza a enviar el fax FaxSent: éxito al enviar el fax FaxNotSent: fracaso al enviar el fax En envío inmediato por la misma línea requiere que se utilicen las siguientes actividades en este orden: 1. 2. 3. 4. Fax, si da resultado >0 , seguir con paso 2. PlayWav, tocar wav pidiendo tono de fax Wait, esperar 50 ms TransferCall, transferir la llamada en modo sincrónico supervisado al puerto por donde se enviará el fax, este puerto es el resultado de la actividad Fax del paso 1. Uso: Envío de faxes en forma inmediata o diferida. Comentarios: Hay que instalar el servicio “TLFaxServer” en el servidor inConcert, así como una placa de fax Dialogic. IC FlowDesigner Página 33 FILE SYSTEM Este grupo de actividades permite interactuar con el sistema de archivos de Windows. File Attributes Modifica los atributos de un archivo. Parámetros: • From: Camino y nombre de archivo al cual se desea modificar el (los) atributo(s). • Attributes: Hide, Read Only, File IC FlowDesigner Página 34 View Attributes Recupera los atributos de un archivo. Parámetros: • File: Camino y nombre de archivo del cual se desea ver los atributos. • Store result in variable: varaobel donde se almacenan los atributos del archivo en formato IML IC FlowDesigner Página 35 Concatenate File Permite concatenar dos archivos de texto. Parámetros: • From: Camino y nombre del archivo al cual se le concatenará el archivo especificado en “To”. • To: Camino y nombre del archivo a concatenar. IC FlowDesigner Página 36 Compress/Uncompress File Comprime o descomprime físicamente un archivo. Parámetros: • From: Camino y nombre de archivo a comprimir / descomprimir. • To: Camino y nombre de archivo destino. • Overwrite existing files: Si desea sobrescribir el archivo destino si ya existe. • Save Path: Si desea preservar el camino con el cual se grabó. • Process Subfolders: Si desea procesar las subcarpetas asociadas. IC FlowDesigner Página 37 Copy/Move File Permite copiar o mover archivos. Parámetros: • From: Camino y nombre de archivo origen. • To: Camino y nombre de archivo destino. • Overwrite existing files: Si desea sobrescribir el archivo destino en caso de existir. Delete File Permite borrar un archivo. Parámetros: • File: Camino y nombre de archivo a borrar. IC FlowDesigner Página 38 Encrypt/Decrypt File Permite encriptar y desencriptar archivos. Parámetros: • From: Camino y nombre de archivo origen. • To: Camino y nombre de archivo destino. • Overwrite existing files: Si desea sobrescribir archivo destino en caso de existir. • Key: Clave de encriptación/desencriptación. "DES" – 8 Bytes, "IDEA" – 16 Bytes, "MIME" , "FILEBLOWFISH" – 72 Bytes, "TDES" – 24 Bytes • Mode: Modo de encriptación/desencriptacion. "ECB", "CBC", "CFB", "OFB" IC FlowDesigner Página 39 Rename File Permite renombrar un archivo. Parámetros: • From: Camino y nombre de archivo origen. • To: Camino y nombre de archivo nuevo. • Overwrite existing files: Si desea sobrescribir el archivo destino en caso de existir. IC FlowDesigner Página 40 FlatFile Lee o graba un archivo plano (en formato texto). Parámetros: • Action: leer o escribir • Open Mode: indica en que modo se va a abrir el archivo para escribirlo o leerlo • Restrictive: disponible si se hace una lectura, indica si el archivo se abre en modo restrictivo. • Read From File/Store Result in File: camino y nombre del archivo origen/destino. NO se aceptan variables. • Store Result in Variable/Read fromVariable: variable donde va a guardar el resultado de la lectura del archivo/variable de donde lee los datos a guardar en el archivo • Register Length: (lectura) tamaño del bloque a leer. • Delimiter: (escritura) delimitador que se usará para separar los registros a grabar en el archivo. Si se marca New Line, el separador será un enter. • Read All Records?: permite leer todos los registros del archivo de una vez, o registro a registro. IC FlowDesigner Página 41 MSWord Genera documentos Word a partir de una plantilla, la cual puede tener definida campos y tablas. Parámetros: • Template Name: El Path de la plantilla que va a utilizar para armar el documento. El mismo debe estar completo y entre comillas dobles. Puede ponerse también en lugar del Path, una variable que contenga una ruta, la misma debe contener una ruta completa especificada entre comillas dobles • Target File Name: Aquí se especifica el Path donde va a ser generado el Documento. Idem parámetro anterior • Field Value: Aquí se especifican todos los valores de los campos. Éstos deben ser ingresados en el orden que se encuentran los campos en la plantilla Word. Admite expresiones • Table Rows And Columns: El formato de la Tabla se especifica de la siguiente manera: o Cantidad de Filas o Chr(126) o Cantidad de Columnas o Chr(126) IC FlowDesigner Página 42 Luego el valor que contendrá cada celda, en orden de izquierda a derecha, de arriba abajo, separado por un signo de exclamación que cierra (chr(33)) o Todo esto será concatenado con signos de más (+) Por ejemplo una tabla de 3 columnas y dos filas se especifica así: 2~3~Celda11!Celda12!Celda13!Celda21!Celda22!Celda23 Store Result In Variable: variable que retornará la generación del documento Word. Los posibles valores de retorno son: o • -1 0 1 2 3 4 5 6 7 Error no especificado OK Método desconocido Tipo de parámetro incorrecto Cantidad de parámetros incorrecta El template especificado no existe El campo indicado no existe La tabla indicada no existe Los datos de la tabla son incorrectos Uso: Por ejemplo el envío de e-mail con un estado de cuenta adjunto en formato Word . Comentarios: Requiere que esté MS Word 2000 instalado en el server inConcert. IC FlowDesigner Página 43 HTML Genera documentos HTML a partir de una plantilla (html), la cual puede tener definida campos y tablas. Parámetros: • Template Name: El Path de la plantilla que va a utilizar para armar el documento HTML. El mismo debe estar completo y entre comillas dobles. Puede ponerse también en lugar del Path, una variable que contenga una ruta, la misma debe contener una ruta completa especificada entre comillas dobles • Target File Name: Aquí se especifica el Path donde va a ser generado el Documento HTML. Idem parámetro anterior HTML Fields • Field Name: Aquí se especifica el nombre identificador de un campo que se encuentre en la plantilla Html. Admite variables. • Field Value: Aquí se especifican el valor que le corresponderá al campo que se está agregando. Admite expresiones IC FlowDesigner Página 44 Una vez indicado campo y valor respectivo, se debe presionar el botón + (con el símbolo de más) para agregarlo definitivamente. HTML Tables • Table Name: Aquí se especifica el nombre identificador de la tabla que se encuentra en la plantilla Html. Admite variables. • Table Rows And Columns: Aquí se indican los valores con los que se cargará la tabla respectiva. A continuación se indica un ejemplo del formato con el cual se debe ingresar la información que se debe utilizar para cargar una tabla de tres filas y seis columnas. Nótese como se especifican también las celdas vacías. <fila> <col>1 9 2004</col> <col>A C.AHORROS</col> <col>0</col> <col>3955</col> <col></col> <col>-9341.95</col> </fila> <fila> <col>1 9 2004</col> <col>Depósito Val. 8646</col> <col>8646</col> <col></col> <col>3955</col> <col>-5386.95</col> </fila> <fila> <col>1 9 2004</col> <col>Clearing Recibido</col> <col>340011</col> <col>354</col> <col></col> <col>-5740.95</col> </fila> • Store Result In Variable: variable que retornará la generación del documento HTML. Los posibles valores de retorno son: -1 0 1 2 3 4 5 6 7 Error no especificado OK Método desconocido Tipo de parámetro incorrecto Cantidad de parámetros incorrecta El template especificado no existe El campo indicado no existe La tabla indicada no existe Los datos de la tabla son incorrectos Uso: Por ejemplo el envío de e-mail con un estado de cuenta adjunto en formato HTML . O el envío de un Fax del archivo HTML generado. IC FlowDesigner Página 45 Repository Upload / Download Sube / Baja un archivo de cualquier tipo al / del Repositorio de Datos.. Parámetros Upload File: • File: Aquí se especifica la ruta completa y el nombre del archivo a ser subido al repositorio. • Agent Identification: si se desea que ese archivo quede asociado a un agente, se especifica aquí el ID del mismo. En caso contrario se deja vacío. • Part Identification: Aquí se indica el ID de Lote del archivo (puede ser autogenerado con una función del Evaluador de Expresiones) + el carácter Pipe (|) – chr(124) + el nro de parte del lote (por ej: 2387418234782134|1 ) • Additional Data (IML): Aquí se especifica, si se desea, información adicional al archivo, la cual debe ser especificada en formato IML. Por ej., si el archivo que se está subiendo, deberá ser impreso en algún momento, con un encabezado y pie de página determinados, se debe indicar dicho Header y/o Footer, en este campo, de la siguiente manera: "~|printheader~Cliente Nro: ABA-12345|printfooter~Página 1|" Parámetros Download File: • Part Identification: Aquí se indica el ID de Lote del archivo. • Part Number: Aquí se indica el número de parte del lote especificado. • Target File: Aquí se especifica la ruta completa en donde se dejará el archivo bajado del repositorio. • Store Result in Variable: nombre de la variable en donde se guardará el resultado de la actividad. IC FlowDesigner Página 46 MAIL Grupo de actividades que implementan el envío de e-mail. La dirección IP del servidor de correo se especifica en la tabla ‘Parametr0206’ bajo la entrada ‘ServidorSMTP’. Los campos From, To, CC, Subject y Body admiten tanto variables como constantes. Forward Email Settings Permite reenviar un mail. Parámetros: • To: Cuenta destino, dirigido a • CC: Lista de cuentas a copiar el mail, con copia a • Body: Cuerpo del mail • Attachments: Lista de archivos a incluir IC FlowDesigner Página 47 Send New Mail Permite crear un nuevo mail. Parámetros: • From: Cuenta de, origen • To: Cuenta destino, dirigido a • CC: Lista de cuentas a copiar el mail, con copia a • Subject: Asunto del mail • Send HTML: marca de enviar el cuerpo del mail como html. Si se marca esta opción, se debe especificar en HTML File el nombre del archivo completo que contiene el HTML a enviar. • Body: Cuerpo del mail • Attachments: Lista de archivos adjuntos a incluir IC FlowDesigner Página 48 Reply Mail Permite responder un mail. Parámetros: • From: Cuenta de, origen • CC: Lista de cuentas a copiar el mail, con copia a • Subject: Asunto del mail • Send HTML: marca de enviar el cuerpo del mail como html. Si se marca esta opción, se debe especificar en HTML File el nombre del archivo completo que contiene el HTML a enviar. • Body: Cuerpo del mail • Attachments: Lista de archivos a incluir IC FlowDesigner Página 49 MIDDLEWARE Este grupo de actividades permite ejecutar diferentes acciones sobre el middleware de inConcert. Event Permite realizar diferentes acciones sobre la colección de eventos que tenga asociada una interacción. “WAIT” Permite quedarse esperando por un determinado tiempo por el arribo de un evento. Parámetros: • Event Name.- identificación de evento por el que se desea esperar. • Instance ID.- identificación de la interacción sobre la cual se desea esperar por el evento. Si es vacío se asume que se desea esperar por la llegada del evento para la interacción actual. • Remove Event.- ante el arribo del evento, se puede optar por eliminarlo de la colección de eventos de la interacción, o no. Esto inhibirá que se realice un salto de estado por el arribo de este evento en el caso de decidir la eliminación del mismo. • Store Result In Variable.- variable donde se almacena el resultado. Si el evento no sucede en x tiempo, se devuelve el string vacío. • TimeOut.- Tiempo máximo de espera por el arribo del evento. “SELECT” Permite consultar por los valores de un determinado evento. Parámetros: • Event Name.- identificación de evento que se desea consultar. • Instance ID.- identificación de la interacción sobre la cual se desea consultar por el evento. Si es vacío se asume que se desea consultar por un evento para la interacción actual. • Remove Event.- se puede optar por consultar y eliminar el evento de la colección de eventos de la interacción, o no. Esto inhibirá que se realice un salto de estado por este evento en el caso de decidir la eliminación del mismo. IC FlowDesigner Página 50 • Store Result In Variable.- variable donde se almacena el resultado. Si el evento no existe en la colección, se devuelve el string vacío. “EXIST” Permite consultar por la existencia de un evento. Parámetros: • Event Name.- identificación de evento que se desea consultar. • Instance ID.- identificación de la interacción sobre la cual se desea consultar por el evento. Si es vacío se asume que se desea consultar por un evento para la interacción actual. • Store Result In Variable.- variable donde se almacena el resultado. Se devuelve True o False. “REMOVE” Permite eliminar un evento o todos. Parámetros: • Event Name.- identificación de evento que se desea eliminar. Si se pone “”, se eliminan todos los eventos. • Instance ID.- identificación de la interacción de la cual se desea eliminar el evento. Si es vacío se asume que se desea eliminar un evento de la interacción actual. • Store Result In Variable.- variable donde se almacena el resultado. Se devuelve True o False. ADD-UPDATE Permite agregar un evento o modificar los valores de un evento existente. Parámetros: Event Name.- identificación de evento que se desea modificar o agregar. Instance ID.- identificación de la interacción sobre la cual se desea agregar / modificar el evento. Si es vacío se asume que se desea agregar / modificar el evento para la interacción actual. Overwrite Event.- se puede optar por sobrescribir o no el evento – en el caso que este ya exista. Event Value To Add.- Valor del nuevo evento a agregar o valor del evento a modificar. El valor debe tener este formato - tanto para agregar un evento como para comprender el resultado de una consulta: Msg & Chr(135) & NroTran & Chr(135) & IdEvento & Chr(135) & VrEvento & Chr(135) & Origen & Chr(135) & SepSubCp & Chr(135) & SepCp & Chr(135) & IdProceso & Chr(135) & VrProceso & Chr(135) & TpParser & Chr(135) & MasterKey & Chr(135) & Separadores & Chr(135) & EntidadEvento En Msg se debe poner en formato IML los parámetros y valores del evento. Por ejemplo para dar de alta el evento “CreateCall” con los parámetros NroDiscar = 7107866 y Campaña = CSalienteAuto se debe especificar así: Msg = IDEvento,CreateCall,8,P/IdLlamada,{F8E4B435-E39E-4533-BA7B2AF6FB733D38},8,P/NroDiscar,7107866,8,P/Campaña,CSalienteAuto,8,P/ NroTran = {F8E4B435-E39E-4533-BA7B-2AF6FB733D38} IdEvento = CreateCall VrEvento = 1.0 Origen = TAPI SepCubCp = , SepCp = / IdProceso = “” VrProceso = ”” TpParser = ParserIML MasterKey = ”” Separadores = “” EntidadEvento = “PRUEBA” IC FlowDesigner Página 51 Execute State Permite ejecutar cualquier estado perteneciente a cualquier proceso (Flujo) contenido en el servidor inConcert. Luego de ejecutado el estado invocado, se continúa con la ejecución del flujo actual. IC FlowDesigner Página 52 Build/Parse operation Parsea o construye un mensaje. Parámetros: • Parse: Parsea un mensaje, reconoce los campos especificados como parte del mensaje y carga las variables correspondientes con dichos campos. En función del tipo de formateador a usar y el tipo de mensaje a reconocer serán las necesidades de especificación del mensaje. Por ejemplo para el formato IML no es imprescindible que exista un formato asociado al mensaje a reconocer • Build: Construye un mensaje a partir de la lista de variables cargada en ese momento en el flujo • Message format: Formato del mensaje a utilizar para parsear o construir el mensaje. • Versión: Versión del formato de mensaje a usar • Parser Type: Tipo de formateador • Store builded message in variable/Parse message from variable: variable donde se deja el mensaje construido/variable de donde se toma el mensaje a parsear Uso: Parse: facilita la carga en variables de campos contenidos en mensajes con formatos variables, independizándose de futuros cambios en el formato del mismo, ya que el agregar o quitar un campo del mensaje solo implica modificar el formato de mensaje en cuestión. Build: permite reutilizar la construcción de mensajes a partir de variables, pues el mismo formato de mensaje se puede utilizar en distintos puntos del proceso y/o en otros procesos. Nota: El formato a utilizar se debe especificar con la herramienta de administración de inConcert. IC FlowDesigner Página 53 Cancel Finaliza la ejecución de líneas de flujo con error. Parámetros: • Store result in variable: nombre de la variable donde retorna el resultado de la ejecución de la actividad. Uso: Finalizar un proceso en cualquier punto del mismo, por ejemplo ante el resultado de la evaluación de una expresión o ante un valor de error retornado por una actividad de conectividad. Return Value Determina el valor a retornar por el flujo corriente en ejecución. Parámetros: • Return: se puede elegir retornar una expresión o el valor de una variable. o Expression to evaluate and return: se pueden utilizar las funciones del evaluador de expresiones, variables y constantes. o Variable to return: nombre de la variable a retornar Uso: Se debe poner al final de un flujo que se va a utilizar desde un Split. IC FlowDesigner Página 54 Execute Process Permite ejecutar un salto de proceso desde el proceso actual. Parámetros: • Process ID: Identificación del proceso a ejecutar. • Process versión: Versión del proceso a ejecutar. • Estado: Estado del proceso. • Evento: Evento del proceso. Uso: Permite tener procesos especializados en determinadas operaciones e invocarlos desde otros procesos que necesiten ejecutar la operación en cuestión. Nota: Si estado y evento son vacíos la ejecución comienza desde el estado inicial del proceso. Si el evento es vacío la ejecución comienza en el estado especificado. Si estado y el evento son no son vacíos, se comienza la ejecución en el estado y simulando que ocurrió el evento indicado, evaluando las condiciones de salida con los valores que tengan cargadas las variables en el momento. IC FlowDesigner Página 55 Execute SQL Sentence Permite ejecutar una sentencia SQL. IC FlowDesigner Página 56 Parámetros: • DSN: Nombre de la conexión que da conectividad con el servidor de base de datos sobre el cual se desea ejecutar la sentencia SQL • Field Sep.: Código ASCII del caracter que se utilizará como separador de campo en el resultado de la consulta SQL • Row Sep.: Código ASCII del caracter que se utilizará como separador de fila/registro en el resultado de la consulta SQL • Database: Nombre de la base de datos • Table: Nombre de la tabla a consultar • Tipo de ejecución: Stored Procedure o Query • Store result in variable: Variable donde se carga el resultado de la ejecución. Si ocurre algún error en la ejecución retorna el string vacío • Si tipo de ejecución es Stored Procedure se pedirá además: o Name: Nombre del procedimiento almacenado a ejecutar o Parameters: parámetros requeridos del procedimiento almacenado, se permite ingresar expresiones o Exec Action: se debe marcar en el caso de ejecutar procedimientos almacenados que no retornen resultado • Si tipo de ejecución es Query se pedirá además: o Tipo: Puede ser “Select”,”Update” o ”Insert” o Campos(Select): Aquí se definen los campos a devolver por la consulta. o Condicion(Where): Permite ir agregando la(s) condicion(es), en caso de poner el valor directamente se debe colocar entre comillas dobles, de lo contrario se toma como variable. Uso: Permite interactuar con múltiples manejadores de base de datos. Por lo general se requiere que esté el cliente del manejador en cuestión instalado en el server inConcert. Por ejemplo para conectarse a una base de datos Oracle, se requiere el cliente Oracle. Wait Espera N milisegundos antes de continuar con la siguiente actividad. Parámetros: • Miliseconds to wait: cantidad de milisegundos a esperar. IC FlowDesigner Página 57 Filter Permite a partir de una cadena separarla en N sub cadenas, a cada una de las cuales se les aplica Parser y Build, los resultados se concatenan y se dejan en una variable de destino. IC FlowDesigner Página 58 Parámetros: • Variable to filter: Cadena o variable donde se encuentra la cadena a filtrar • Msg. Format: Identificación del formato de mensaje a utilizar en el filter • Msg versión: Versión del formato de mensaje a utilizar en el filter • Separator/Length: si se elige ‘Fixed length fields’ se debe indicar el largo de la cadena en bytes, si se elige ‘Variable length fields’ se debe indicar el separador (numero de carácter ASCII) que trae la cadena. • Build caracter separator: carácter o ASCII correspondiente con el cual se desea separar los resultados concatenados • Parser type: Tipo de parser a utilizar si no se especifica formato de mensaje • Store result in variable: variable donde se almacenará el resultado • Filter condition: condición que se aplicará al ejecutar las iteraciones de forma de filtrar registros, se pueden utilizar expresiones. Estas expresiones deben evaluar a True o False, ya que el filter descartará aquellos registros en cuya iteración la expresión de False. En especial se pueden utilizar las variables que cargan durante el parse. Uso: Facilita el procesamiento de mensajes compuestos por registros y campos, como ser el resultado de una consulta a una base de datos. IC FlowDesigner Página 59 Split Toma una cadena y la separa en N mensajes a procesar (aplica un Flow), los resultados se concatenan en otra cadena. Parámetros: • Variable to split: Cadena o variable donde se encuentra la cadena a filtrar • Flow name: Nombre del flujo a ejecutar por cada iteración del Split • Flow versión: Versión del flujo • Separator/Length: si se elige “Fixed length fields” se debe indicar el largo de la cadena en bytes, si se elige “Variable length fields” se debe indicar el separador (numero de carácter ASCII) que trae la cadena como separador de registro. • Store result in variable: variable donde se almacenará el resultado • ParserIML: si se marca la casilla, se pedirá el carácter separador. Esto se utiliza para cuando no se desea usar un formato de mensaje Uso: Hay dos formas de usar los resultados que va procesando el Split desde el flujo a ejecutar: la variable AGTEMSG_MSGRAW tiene el contenido de la línea enviada desde el SPLIT, la otra es a través de las variables generadas por el parser inicial que realiza el flujo del Split. El Flujo que se ejecuta para cada línea del SPLIT primero hace un parser de la línea enviada por el SPLIT (con un formato de mensaje con Id de Fmto de mensaje igual al nombre del flujo). IC FlowDesigner Página 60 Filter Split Toma una entrada, la separa en N transacciones y le aplica un filter a cada una. Los resultados se almacenan en N variables de salida. Se debe asociar cada variable de salida con una cláusula where. Parámetros: • Variable to split: Cadena o variable donde se encuentra la cadena a filtrar • Msg. Format: Identificación del formato de mensaje a utilizar en el filter • Msg versión: Versión del formato de mensaje a utilizar en el filter • Separator/Length: si se elige ‘Fixed length fields’ se debe indicar el largo de la cadena en bytes, si se elige ‘Variable length fields’ se debe indicar el separador (numero de carácter ASCII) que trae la cadena. • Build caracter separator: carácter o ASCII correspondiente con el cual se desea separar los resultados concatenados • Parser type: Tipo de parser a utilizar si no se especifica formato de mensaje • Store where result in variable: variables asociadas a condiciones lógicas donde se almacenará cada resultado filtrado Uso: Permite almacenar en diferentes variables porciones del mensaje agrupados por valores que se encuentren en el mismo. Por ejemplo, un mensaje con el siguiente formato se puede cortar y almacenar en variables diferentes según el valor del campo que sigue al carácter @: @01datos...@02datos....@01datos...@01datos...@02datos... En este caso se pueden almacenar en la variable vDatos01 los datos que se encuentran luego del @01, y en vDatos02 lo que sigue al @02. IC FlowDesigner Página 61 Filter File Toma un archivo de texto, lo separa en N transacciones y le aplica un filter a cada una, los resultados se almacenan en un archivo de salida. Parámetros: • File to filter: Nombre y camino de archivo de texto a filtrar. • Store result in file: Nombre y camino de archivo de destino. • Variable to filter: Cadena o variable donde se encuentra la cadena a filtrar • Msg. Format: Identificación del formato de mensaje a utilizar en el filter • Msg versión: Versión del formato de mensaje a utilizar en el filter • Separator/Length: si se elige ‘Fixed length fields’ se debe indicar el largo de la cadena en bytes, si se elige ‘Variable length fields’ se debe indicar el separador (numero de carácter ASCII) que trae la cadena. • Build caracter separator: carácter o ASCII correspondiente con el cual se desea separar los resultados concatenados • Buffer size: tamaño del bloque a leer • Parser type: Tipo de parser a utilizar si no se especifica formato de mensaje • Store result in variable: variable donde se almacenará el resultado • Filter condition: condición que se aplicará al ejecutar el filter, se pueden utilizar variables, funciones del evaluador de expresiones y constantes. En especial se pueden utilizar las variables que cargan durante el parse como ser FILTER_NUMLINEA. • Variables to mantain in every iteration: conjunto de variables que se desee mantener en cada iteración que realice el filter. Uso: Mismo uso que la actividad de Filter, solo que en vez de tomar el mensaje a filtrar de una variable, se toma del contenido de un archivo de texto, y que el resultado se almacena en otro archivo de texto. IC FlowDesigner Página 62 Sincronism Mecanismo para sincronizar instancias de procesos. Esta sincronización se realiza a través de la escritura de valores en una tabla. Parámetros: • Petition: se puede optar por una de las siguientes acciones o Wait: Espera por una clave pública de intercambio o Select: Recupera valor asociado a una clave pública de intercambio o Exist: Verifica si existe una clave pública de intercambio o Add-Update: Inserta/actualiza el valor de una clave pública de intercambio • Value Key: determina la clave del valor a esperar, seleccionar, consultar existencia o actualizar • Transaction Key: clave de la transacción, ésta se crea (se debe determinar por primera vez) cuando se hace un add value. • Extern entity: entidad externa • State: Partial (el valor aún puede sufrir cambios) / Total (el valor es el definitivo). • Store result in variable: variable donde quedará almacenado el valor recuperado, esto es para las acciones de esperar, seleccionar y existe. Si el valor a seleccionar no existe, se devuelve –1 en la variable AGTEMSG_LASTERROR. • Variable to add-update: variable donde se encuentra el valor a actualizar. • Time out: Tiempo máximo en milisegundos que espera por el valor, si se marca Wait forever? espera infinitamente. • Remove value: Para las acciones de esperar y seleccionar, se puede indicar si se desea que el valor se borre o se mantenga. • Overwrite value: Para la acción de add-update, se puede indicar si se desea que el valor se sobreescriba o se mantenga. Uso: Permite tener dos o mas instancias de proceso sincronizadas por un valor de intercambio. Por ejemplo un proceso de aprobación de un préstamo que genere dos workitems para que sean revisados por dos autorizadores, un proceso puede estar esperando por una de las firmas antes de poder continuar con el proceso actual. IC FlowDesigner Página 63 Trigger Event Permite simular la aparición de un evento dentro del flujo en ejecución. IC FlowDesigner Página 64 Middleware Petition Permite ejecutar una petición sobre el servidor Middleware. Parámetros: • Operation: Send o Receive • Server: Servidor donde se encuentra el Middleware • Port: Puerto de la conexión. • User: Usuario Middleware • Password: Clave para dicho usuario. • Petition: Nombre de la petición a ejecutar • Versión: Versión de la petición. • Parameters: Se deben indicar los parámetros que requiere la petición en cuestión • Store result in variable: Variable donde guarda el resultado de la operación al hacer un Receive. Uso: Las peticiones nos dan el mecanismo para interactuar con bases de datos o aplicativos en sistemas heterogéneos, independizándonos de la implementación de los mismos. Por ejemplo podemos ejecutar una consulta SQL sobre una base de datos Oracle. IC FlowDesigner Página 65 DBPool Permite recorrer un conjunto de registros obtenidos de una consulta SQL y para cada uno de ellos ejecutar un flujo, una petición o enviar un mensaje a un mailbox de salida. Parámetros: • Pool ID: Identificador de la definición de pooleo a utilizar, la misma se especifica en la tabla ‘PoolEjMW0255’ • Execute Flow: Marca que indica si se desea ejecutar un flujo por cada registro obtenido • Extern Entity: Entidad externa, para ejecutar flujos definidos con la herramienta de Flow Designer, se debe selccionar “CallCenter” • Inherit Variables: Marca que indica si se van a heredar la variables que se carguen en el proceso desde donde se invoca a la actividad de poleo. Estas variables serán visibles en el flujo que se mande a ejecutar. En el flujo que se ejecuta siempre se tiene visibilidad de las variables que se cargan en el select de la consulta. Uso: Recorrer registros de una tabla y por cada uno de ellos ejecutar un flujo que haga el envio de un e-mail con información recogida de esa misma consulta. Nota: Para especificar la definción de pooleo tener en cuenta lo siguiente: - En la tabla de canales (Canales_0253) en el campo “ModoCm0253” se debe ingresar “FW” si se desea ejecutar un flujo, para ejecutar una petición se debe ingresar “MW”. - Si se utiliza la expresión STATUS() en el campo “OtrUpd0255” en la definición del pooleo y la ejecución es exitosa, se actualiza el registro actual con el valor del campo “EstaUp0255”, sino con el del campo “EsUpEr0255”. IC FlowDesigner Página 66 Log Activity Permite guardar información de valores asociados a una actividad, automáticamente se guarda el Time Stamp del momento en que se ejecuta esa actividad. Parámetros: • Activity name: Nombre de la actividad a loguear. • Activity description: descripción de la actividad. • Attribute name: nombre del atributo relacionado con la actividad que se quiere loguear. • Attribute value: valor del atributo, se puede guardar una constante, una expresión o una variable. Uso: Sirve para loguear información de la ejecución de una interacción. Esta información se puede utilizar para obtener estadísticas, por ejemplo determinar cuáles son las opciones más utilizadas por los clientes y en qué horario ocurren. Comentarios: Esta actividad facilita la tarea de logueo de información, sin necesidad de definir tablas adicionales. Las tablas involucradas se encuentran en la base MMProDat y son: InstProc0240 (un registro por cada interacción), LgInsPro0241 (un registro por cada estado por el que pasó la interacción), LgCbActi0246 (un registro por cada actividad que ocurrió dentro de un estado), LgLnActi0247 (un registro por cada atributo que se guardó dentro de una actividad). IC FlowDesigner Página 67 LOTUS NOTES DOMINO Lotus Notes COM Permite intercambiar información con servidores Lotus Notes – Lotus Domino permitiendo crear, actualizar, eliminar y recuperar documentos. IC FlowDesigner Página 68 Parámetros: Operation: • “Create Document” , opción para crear un nuevo documento. o Server: Aquí se debe especificar el Servidor LN o Database: Aquí se debe especificar la Base de Datos LN o Form: Aquí se debe poner el formulario a utilizar o Notes Field: Aquí se especifican los campos a crear. o Value: Aquí se deben poner los valores que irán en dichos campos. o Store UNID Variable: se debe especificar una variable que almacenará el UNID del documento que se acaba de crear. • “Update Document”, opción para actualizar un documento. o Server: Aquí se debe especificar el Servidor LN o Database: Aquí se debe especificar la Base de Datos LN o UNID: Aquí se especifica el UNID del documento que se va actualizar o Notes Field: Aquí se especifican los campos a actualizar. o Value: Aquí se deben poner los nuevos valores o By UNID/By View: aquí se especifica si el documento a actualizar se debe identificar por UNID o por VISTA/CLAVE o Store result in variable: Se debe especificar una variable donde quedará el resultado de la operación (TRUE/FALSE). • “Delete Document”: opción para borrar un documento. o Server: Aquí se debe especificar el Servidor LN o Database: Aquí se debe especificar la Base de Datos LN o UNID: Aquí se especifica el UNID del documento que se va actualizar o By UNID/By View: aquí se especifica si el documento a actualizar se debe identificar por UNID o por VISTA/CLAVE o Store result in variable: Se debe especificar una variable donde quedará el resultado de la operación (TRUE/FALSE). • “Get Document Fields”: opción para recuperar valores de campos de un documento. o Server: Aquí se debe especificar el Servidor LN o Database: Aquí se debe especificar la Base de Datos LN o By UNID/By View: aquí se especifica si el documento a recuperar se debe identificar por UNID o por VISTA/CLAVE o UNID: en el caso que Options tenga el valor “By UNID”, se debe especificar el DocumentUniqueID del documento a recuperar o View y Key: en el caso que Options tenga el valor “By View”, nombre de la vista y clave del documento para hacer la búsqueda. o Store field values in variable: Se debe especificar una variable donde quedarán almacenados TODOS los campos del documento. Para que estos queden accesibles se debe realizar la operación UPIUFF de dicha variable(ver actividad Up-Down variable). Uso: Interactuar con bases de datos documentales almacenadas en formato .nsf Comentarios: Se debe tener instalado el cliente Notes en el server inConcert , Vr. 5x en adelante. El usuario Notes que se configure en ese cliente no debe tener password. IC FlowDesigner Página 69 VOICE SERVICES Text To Speech Operation Implementa la funcionalidad de vocalización de textos. Parámetros: • Text to speech: variable o constante conteniendo el mensaje a vocalizar • Voice to be used: voz a utilizar, puede ser femenina o masculina • Sync: permite hacer vocalización en modo sincrónico o asincrónico. En modo asincrónico permite continuar ejecutando el proceso actual • Cancel Process On Error: si se chequea indica que el proceso se cancelará ante un error de TAPI. Uso: Vocalización de textos, muy útil a la hora de vocalizar nombres propios, por ejemplo al dar el saludo de bienvenida a un usuario al sistema, luego de haberlo identificado mediante un IVR. Requiere que se instale un paquete de TextToSpeech en el server inConcert. IC FlowDesigner Página 70 Voice Recognition Implementa la funcionalidad de reconocimiento y validación de voz mediante tecnología Loquendo. IC FlowDesigner Página 71 Parámetros: • Use Grammar: gramática a utilizar. La misma se define con el cliente Nuance. • Retries: cantidad de reintentos que se desean dar al usuario para vocalizar el dato requerido • Timeout: tiempo máximo que se le da al usuario para vocalizar el dato requerido • Confirmation Prompt: prompt de audio que se le vocaliza al usuario pidiendo su confirmación. Este prompt debe ser una grabación que exista en el server inConcert a la cual se le concatena la información que se reconoce que ingresó el usuario • Prompt: Lista de prompts de audio que se le brindan al usuario como opciones • Cancel Process On Error: si se chequea indica que el proceso se cancelará ante un error de TAPI. • Store result in variable: variable donde se almacena el resultado de ejecutar la actividad, en la misma queda en formato IML la información de los datos que se reconocieron. Por ejemplo: ~|ResultString|i wanna buy a ticket~OverallConfidence|51 ~ConfidenceWithOutFiller|51 ~Slots|æÆôSlotNameÆopcioninicialæSlotValueÆticketæSlotConfidenceÆ0ô En este caso se reconoce que el usuario vocalizó una frase que contenía: i wanna buy a ticket Uso: Permite implementar menús dirigidos por voz en lugar de digitación de teclas. También permite identificar y validar un usuario mediante su registro de voz, evitando el mantenimiento de contraseñas – ahorrándole al usuario el recordar sus contraseñas – a la vez que ofrece un nivel de seguridad mayor a este mecanismo. Comentarios: Requiere que esté instalado Nuance 7.0.4 en el server inConcert y las gramáticas que se deseen utilizar. Luego de ejecutar esta actividad, se requiere que se haga un parseo del resultado, en particular se debe obtener los slots que se cargaron en la actividad. En ejemplo anterior, para obtener el slot que contiene el resultado “ticket”, se deben realizar las siguientes operaciones: • SepSlots = ô de Mid(Slots,3,1) • SepCmpSlot = æ de Mid(Slots,1,1) • SepScmpSlot = Æ de Mid(Slots,2,1) • Slots = SlotNameÆopcioninicialæSlotValueÆticketæSlotConfidenceÆ0ô de Right(Slots,Len(Slots)-3) • OpcionInicial = ticket de obtsubcmp(slots,2,2,SepCmpSlot,SepScmpSlot) IC FlowDesigner Página 72 Voice Enroll and Verify Actividad que invoca al componente de Loquendo para la verificación y/o validación por voz. IC FlowDesigner Página 73 TASK SCHEDULER Grupo de actividades para administración de tareas agendadas en el Servidor inConcert. Add Task Permitir agendar llamadas a objetos COM, eventos COM y peticiones al MiddleWare.. IC FlowDesigner Página 74 Parámetros: • Task id: identificador de la tarea • Description: texto descriptivo de lo que realiza la tarea • Task type: tipo de tarea a agendar: “MW” para peticiones al middleware, “COM” para invocaciones a objetos COM, “EVT” para recibir eventos • Task start date: Fecha de comienzo de la tarea • Execution interval: Intervalo en Milisegundos entre cada ejecución • Execution period: Periodo de ejecución o “P” Permanente (utiliza el Intervalo) o “U” Única vez o “D” Diario o “S” Semanal o “M” Mensual o “LMV” Lunes, Miércoles y Viernes o “MJS” Martes, Jueves y Sábados Si el periodo esta precedido por un punto (ej.: “.U”, “.LMV”) la tarea comenzará pausada. • Persist: Si la tarea persistirá hasta que se remueva (ante caídas por ejemplo) • Global execution window: o Start date: Comienzo de la Ventana Global de Ejecución o End date: Fin de la Ventana Global de Ejecución • Local execution window: o Start time: Comienzo de la Ventana Local de Ejecución. Se tomara en cuenta únicamente la hora y los minutos o End time: Fin de la Ventana Local de Ejecución. Se tomara en cuenta únicamente la hora y los minutos • Para el caso de selección de tipo de tarea “COM”: o Object pointer: Objeto COM (se ignorará el parámetro Interface) o Interface: Interface del objeto COM (se ignorará el parámetro PtObjeto) o Method: Método a ser invocado en el Objeto • Para el caso de selección de tipo de tarea “MW”: o Petition name: nombre de la petición a agendar o Message format: o Parameters: parámetros de la petición • Store result in variable: variable donde se almacenará el resultado de agendar la tarea. Retorna TRUE si tuvo éxito. Otros valores posibles son: 2 La variable definida en CpOrDt0172 no existe 1 No se encontró identificador de tarea 0 Ok -1 Error en Actividad -2 Falló la ejecución de la acción AddTarea o RemTarea (El ComScheduler devolvió False) Uso: Por ejemplo permite agendar el inicio de una campaña saliente que tiene “CreateCall” como evento inicial. En ese caso se debe agendar la petición “TAPI2WF”. IC FlowDesigner Página 75 Remove Task Elimina una tarea agendada. Parámetros: • Task id: identificador de la tarea a eliminar • Store result in variable: variable donde se almacenará el resultado de la eliminación de la tarea. Retorna TRUE si tuvo éxito. Otros valores posibles son: 2 La variable definida en CpOrDt0172 no existe 1 No se encontró identificador de tarea 0 Ok -1 Error en Actividad False) -2 Falló la ejecución de la acción AddTarea o RemTarea (El ComScheduler devolvió IC FlowDesigner Página 76 VARIABLES Grupo de actividades para definición y manejo de variables en un proceso. Clear Variable Elimina una variable o lista de variables de memoria. Parámetros: • Acción: Elimina una lista de variables o todas • En caso de eliminar una lista se pide: o Tipo: Variable nueva o existente. o Nombre: Nombre de la variable. Uso: La elección de eliminar todas las variables puede tener efectos indeseados pues elimina las variables de control como ser IdLlamada. IC FlowDesigner Página 77 Variable Permite agregar / modificar variables. Parámetros: • Name: nombre de la variable • Value: Valor a asignar, pueden ser constantes, variables o expresiones. Comentarios: Una buena práctica es borrar las variables que ya no vayan a utilizar más (actividad Clear Variable). IC FlowDesigner Página 78 Flush Actualiza en memoria los valores actuales de las variables. Uso: Permite notificar valores de variables a IC Agent sin tener que esperar a un cambio de estado. Notify Variable Notifica valores de variables a IC Agent . Uso: Permite notificar valores de variables a IC Agent antes del cambio a un determinado estado (LOCKED, QUEDED, etc.). IC FlowDesigner Página 79 Persist Variables Da de alta variables precargadas al inicio de un proceso que no son persistentes. Uso: Permite persistir variables no persistentes de campañas que se cargan al inicio un proceso. IC FlowDesigner Página 80 Up-Down Variable Permite almacenar el contenido de una lista de variables en una cadena en formato IML, o también permite la opción inversa, a partir de una cadena IML cargar una lista de variables (las variables recuperarán el valor que tenían al momento de guardarlas). Parámetros: • Tipo.- Puede ser “Down” (almacena una lista de variables),”Down ALL” (almacena todas las variables que hay definidas hasta el momento) y “Up” (cargar una lista de variables). • Si tipo es “Up”: Up from variable: Variable donde previamente se hizo la carga de las variables • Si tipo es “Down”: Down to variable: Variable destino donde se almacenará la lista de variables en formato IML Variable list.- Lista de variables a guardar • Si tipo es “Down ALL”: Down to variable: Variable destino donde se almacenarán todas las variables actuales en formato IML Uso: Permite preservar el estado de una lista de variables en un momento dado y recuperarlo mas adelante. IC FlowDesigner Página 81 CONTACT CENTER Este grupo de actividades permite manipular workitems. Control Agent Permite obtener un agente libre a través de iteraciones controladas por condiciones lógicas o temporales, y ejecutar determinadas acciones durante la búsqueda. Funcionamiento: Ni bien se entra al control agent, se mira si existe un agente libre en la/s cola/s especificada que cumpla con las condiciones de búsqueda – esto es que pertenezca a la campaña definida en “Campaign ID” y esté apto para atender interacciones del tipo especificado en “WorkItem Type”, la búsqueda se hace aplicando el algoritmo definido en “Algorithm”. Si existe un agente que cumpla con estas características, se retorna el agente hallado, de lo contrario se comienza a ejecutar el bucle de búsqueda. Si la opción de “Subscribe” está marcada, se suscribe la interacción en la colección de interacciones que están pendientes de asignación de agente – esto sirve para asignar el primer agente que se libere a la primer interacción que pueda tomar el mismo. En cada iteración se pueden ejecutar los siguientes pasos: se incrementa la prioridad que tiene la interacción en la colección de interacciones pendientes y/o se ejecuta el flujo especificado en “Execute Flow” de “Actions”. IC FlowDesigner Página 82 El bucle finaliza una vez que se encuentra agente libre o se hacen todas las iteraciones e0specificadas en “Repeat Times” o se cumple la condición de fin (“End Condition”). Una vez finalizado el bucle se ejecuta el flujo especificado en “Execute Flow” de “Post-Actions“. En caso de hallarse un agente libre, se retorna el resultado en la variable especificada en “Store Result In Variable”, caso contrario se devuelve “”. Parámetros: • Algorithm.- Algoritmo de búsqueda a utilizar. La opción “Definido en campaña” utiliza el algoritmo que se encuentre definido en la campaña especificada en el parámetro “Campaign ID”. Si se seleciona el Algoritmo “P2P” se habilitan dos campos para completar que servirán para identificar al Cliente, una vez identificado dicho cliente se busca dentro de los Agentes que tiene relacionados aquel que esté disponible: Client ID: Se especifica aquí el número identificador del Cliente Country: Se especifica aquí el país del Cliente Para completar estos dos campos están disponibles si se desean dos variables: AGTEMSG_IDCLIENTE y AGTEMSG_IDPAIS. • Agents Nº to return.- Indica la cantidad de Agentes a retornar. Cuando se indica más de uno no se puede suscribir agente. • Agents to Exclude: indica la lista de Agentes a excluir de la búsqueda • Search in Queues: indica la lista de Colas a incluir en la búsqueda • Lock Agent.- permite bloquear el agente libre encontrado de forma que no se le asigne otra interacción hasta que no finalice de procesar la interacción actual o se lo libere. • Subscribe.- permite suscribir la interacción actual a una lista de interacciones pendientes de forma que ni bien se libere un agente, se notifique su liberación y se revise esta lista de interacciones para ver si este agente puede atender alguna de ellas. Si no suscribo la interacción, nunca se le asignará un agente libre a la misma – a no ser que ni bien entre al control agente se encuentre uno libre. • WorkItem type.- define el tipo de la interacción actual • Campaign ID.- Identificación de la campaña a la cual debe pertenecer el agente que se le asignará a la interacción actual. • Repeat Times.- Cantidad de iteraciones a ejecutar en el bucle de búsqueda. • Time Out Between Executions.- tiempo de espera entre iteraciones • End Condition.- Condición de fin del bucle. Se pueden utilizar expresiones. • Actions.- por cada iteración se pueden realizar dos acciones, incrementar la prioridad de la interacción y/o ejecutar un proceso. Para determinar la nueva prioridad, se puede utilizar expresiones que evalúen a un número entero. Si el flujo a ejecutar demora más tiempo que el especificado en “Time Out Between Executions”, se espera a que finalice el flujo para continuar con la siguiente iteración. • Post-action.- Identificación del flujo a ejecutar finalizado el bucle. Este flujo se ejecuta siempre, se haya encontrado agente libre o no. • Store result in variable.- variable donde se almacenará el resultado. En esta actividad se pueden utilizar las siguientes variables: - CTRLAGENT_ITERACION: variable que se actualiza en cada iteración del bucle. - CTRLAGENT_RESP: variable con la respuesta cargada - CTRLAGENT_AGENTELIBRE: nombre del agente libre hallado - CTRLAGENT_SKILLCAMPAGTE: skill correspondiente agente libre hallado para la campaña - CTRLAGENT_SKILLWIAGTE: skill correspondiente al agente libre hallado para el tipo de workitem - CTRLAGENT_INTERNOAGTE: interno del agente libre hallado - CTRLAGENT_PROTOCOLO: protocolo del agente libre hallado - CTRLAGENT_DIRECCION: dirección IP del PC del agente libre hallado - CTRLAGENT_DIRECCIONTEL: dirección y teléfono del agente libre hallado - AGTEMSG_PRIORIDAD.- prioridad de la interacción actual - AGTEMSG_PRIORIDADSUSC: Prioridad de una llamada en el control Agent IC FlowDesigner Página 83 WorkItem Control Permite monitorear un workitem a través de iteraciones controladas por condiciones lógicas o temporales, y ejecutar determinadas acciones mientras se ejecuta el bucle. Parámetros: • Id Workitem to Control.- variable o constante indicando la identificación del workitem a controlar. • Repeat Times.- cantidad de iteraciones a realizar sobre ese workitem, si se marca No Limit, las iteraciones se repiten indefinidamente. • Repeat interval.- intervalo de tiempo entre cada iteración a realizar sobre ese workitem, si se marca Continued el intervalo equivale a cero segundo. • Wait for value.- el bucle puede detenerse porque aparezca un valor esperado, para lo cual debe indicarse la clave de la transacción y la entidad externa. Por más detalles ver la actividad Sincronism. • Condition.- el bucle puede detenerse porque se cumpla una condición lógica. Para especificar la misma se pueden utilizar expresiones. • Actions.- por cada iteración se pueden realizar tres acciones, cambiar la prioridad del workitem y/o cambiar la interacción de cola y/o ejecutar un proceso. IC FlowDesigner Página 84 El cambio de prioridad determinará en qué posición de la bandeja del agente aparecerá la interacción encolada, se pueden utilizar expresiones que evalúen a un número entero. o El cambio de cola se especifica mediante una lista de expresiones que evalúan a un nombre de una cola válida. Por cada iteración, se moverá la interacción a la cola especificada en la lista – para la iteración nro. 1 se mueve a la cola en la 1er. posición de la lista, para la iteración nro. 2 se mueve a la cola en la 2da. posición de la lista y así sucesivamente. Si se especifican menos colas en la lista que iteraciones, las últimas iteraciones no moverán la interacción, por lo tanto la misma quedará en la última cola de la lista. o Para la ejecución de un proceso cabe señalar la siguiente aclaración: si el flujo a ejecutar demora más tiempo que el especificado en “Repeat interval”, se espera a que finalice el flujo antes de continuar con la siguiente iteración. Post-Action.- Identificación del flujo a ejecutar finalizado el bucle. o • Uso: Se utiliza en procesos de interacciones entrantes encoladas, la interacción se encola y se manipula la visión que tienen los agentes de la misma. Comentarios: Las expresiones que se pongan en el campo de Prioridades y Condición de Salida deben están entre comillas dobles si se quiere que se evalúe en cada interacción. Cambio de cola: por cada iteración va a ejecutar una línea. Si se quiere poner varias líneas y en una de ellas se pone una expresión, hay que poner una comilla doble al principio de la primer línea y una comilla doble al final de la ultima línea. Hay disponibles dos variables para utilizar en las expresiones: CTRLWLIST_ITERACIÓN (nro de iteración actual) y AGTEMSG_PRIORIDAD (prioridad actual del workitem). IC FlowDesigner Página 85 CTI – Pop Up Permite invocar screen popup desde los siguientes elementos: a) (SCRIPTING) formularios elaborados con las aplicaciones inConcert Data Capture o inConcert Application Designer, b) (COM), componentes de terceras partes (por ejemplo aplicaciones CRM) IC FlowDesigner Página 86 c) (INTERNET EXPLORER) permite conectarse con páginas ASP y pasarle parámetros IC FlowDesigner Página 87 Deliver WorkItem Permite manipular workitems. Parámetros: • Announce to: Puede ser: 1 - To User, 2 - To Queue, 3 – To Profile. Según caso se debe ingresar: o Caso 1: Usuario.- Usuario al cual se asigno. o Caso 2: Queue.- Cola de usuarios asignada. o Caso 3: Profile.- Grupo de usuarios asignados. • WorkItem State: Estado del workitem (QUEUED, TAKED, LOCKED, PARKED, etc.) • WorkItem Type: Tipo de workitem (TPIDIRCALL, MAIL, CHAT, etc) • WorkItem Feature: Visibilidad en la BarAgent (INVISIBLE, VISIBLE, FINISHED) • Priority: Prioridad que tomará el workitem, esta prioridad determina el orden que ocupará el workitem en la bandeja del agente. IC FlowDesigner Página 88 • • • • • • Validity Date: indica hasta cuando es válido el workitem, transcurrido ese tiempo, el workitem queda inválido y no se puede trabajar más con él Start Date: indica a partir de qué momento toma validez el workitem de manera de poder trabaja con él Specify interaction ID: aquí se define el identificador de la interacción asociada al wokitem que se define en el campo “Specify workitem ID”. Esto se utiliza para relacionar una interacción con sus workitems hijos. Specify workitem ID: aquí se define el identificador del wokitem sobre el cual se desea hacer la operación. Está disponible la variable AGTEWF_IDINSTANCIA, la cual contiene el identificador del workitem actual Store result in variable: variable donde queda almacenado el resultado, un valor diferente a 0 denota error en la operación Cancel process on error: si hubo error en la ejecución de la actividad, se procede a cancelar el proceso actual Uso: Con esta actividad se determinan los cambios que puede tener un workitem. Call Record IC FlowDesigner Página 89 Select WorkItem Permite seleccionar una instancia de interacción a partir del ID de instancia, carga una lista de variables predeterminada que queda disponible para su utilización posterior. Parámetros: • Workitem ID: variable o constante indicando la identificación del workitem a seleccionar. Por ejemplo se puede utilizar el IUFF AGTEMSG_PKWHERE. Carga las siguientes variables: AGTEMSG_USUARIO, AGTEMSG_PERFIL, AGTEMSG_IDCOLA, AGTEMSG_SECCION, AGTEMSG_AGENCIA, AGTEMSG_PRIORIDAD, AGTEMSG_ESTADO, AGTEMSG_ FECESTADOWI, AGTEMSG_FECHALTA, AGTEMSG_FECHADESDE, AGTEMSG_VENCIMIENTO, AGTEMSG_TMSTMP IC FlowDesigner Página 90 Update WorkItem Permite actualizar determinados atributos de un workitem existente. Parámetros: • Id Workitem: variable o constante indicando la identificación del workitem a seleccionar. Por ejemplo se puede utilizar AGTEMSG_PKWHERE. • Tipo: Puede ser: Usuario, IDCola o Perfil. • Section: sección del workitem. • Agency: agencia del workitem. • Priority: prioridad del workitem. IC FlowDesigner Página 91