You are on page 1of 39

- inConcert API aplicada a inConcert Web Designer

Desarrollo de aplicaciones de integración avanzada

La suite provee APIs orientadas a la integración de funcionalidades para


aplicaciones de negocio.
Utilizando la herramienta inConcert Web Designer es posible desarrollar
aplicaciones que integren completamente las funcionalidades de BarAgent y
OutBoundEngine, a través de la invocación de los métodos contenidos en el SDK.

Objetos incluidos en inConcertSDK

inConcert maneja distintos objetos para permitir la interacción con las aplicaciones
y servicios de la plataforma:

Objeto Descripción
ContactData Representa un parámetro de tipo NameValue, que puede ser
asociado a un objeto de tipo Contact. Se utiliza al invocar el método
“AddContactValue”
Contact Representa un contacto existente el motor de marcación saliente con
sus respectivos datos.
Timezone Representa la zona horaria de un teléfono. Un objeto de tipo Phone,
tiene como una de sus propiedades a “Timezone”. Aquí se encuentra
la diferencia en horas y minutos respecto a UTC.
Phone Representa un teléfono. Un objeto Contact puede tener un ARRAY de
muchos teléfonos, con sus respectivas propiedades
Predicate Representa los filtros de búsqueda para contactos. Se utiliza con el
método “SearchContacts”
Session Representa una sesión web con el servidor de inConcert, y contiene
los métodos necesarios para su manejo
OutBoundEngine API que contiene los métodos que permiten interactuar con el Motor
de Marcación Saliente y los servicios de telefonía
Reports Representa un reporte de inConcert Allegro a través de un
identificador, y lo despliega en una nueva pestaña del navegador
BarAgent API que contiene los métodos necesarios para interactuar con la
aplicación BarAgent

Para este documento, de detallan específicamente BarAgent, OutBoundEngine y Session.

Notas:
El archivo “inConcertSDK.js” se encuentra por defecto en la siguiente ruta:
http://XXX.XXX.XXX.XXX:8082/inconcert/shared/inConcertSDK/inConcertSDK.js. (Donde XXX es la IP del
servidor donde está instalada la suite.
Todas las funciones de la SDK son invocadas manera asincrónica, por ello reciben funciones de callback
como parámetro (“callbackSuccess” y “callbackError”). A través de éstas se indica el tratamiento que se
debe dar a la respuesta recibida, diferenciando los casos de éxito y error en la ejecución. Por éste motivo,
no se describen a continuación de forma específica.

Para los códigos HTTP devueltos por las funciones, ver anexo web:
http://es.wikipedia.org/wiki/Anexo:C%C3%B3digos_de_estado_HTTP.

Todas las funciones que aquí se describen retornan el dato “internalCode”. Éste corresponde a un código
que describe el resultado de la ejecución: si devuelve “1” es porque fue exitosa. La lista de los códigos
retornados por cada función, y su descripción se encuentra detallada en un anexo al final de este
documento.

Métodos incluidos en el objeto BarAgent

> GetInteractionId

Se encarga de obtener el identificador de la interacción en curso. Si no se le pasa


ningún valor retorna el ID de la interaccion actual (caso normal).
Se puede utilizar también para obtener el interactionID más reciente de una cadena
de re-llamadas, a partir del InteractionID de la llamada original.

Parámetros que recibe:

Nombre Descripción
interactionId Identificador de llamada.

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso:
response.data.interactionid
func String que identifica la función
(GET_INTERACTIONID)
internalCode Código que describe el resultado de la ejecución. Si
retorna “1” indica éxto.
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

> WrapUp

Se encarga de finalizar la interacción y colocar al agente en estado “disponible”,


listo para recibir una nueva llamada.
Únicamente se puede ejecutar correctamente este método, si existe una llamada en
estado de conclusión (corresponde al estado “ENDED”). De lo contrario, devuelve
mensaje de error.
Por lo general, el WrapUp se programa en el botón “Guardar” de una aplicación,
para finalizar el “After call work” de un agente. En inConcert Web Designer, esto está
predefinido en la opción “WrapUp on save”, dentro del DataSource “Interaction”.

Parámetros que recibe:

Nombre Descripción
interactionId Identificador de llamada.

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
func String que identifica la función (WRAPUP)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la funciónExplica si el
resultado fue exitoso o no, a través de una cadena
de caracteres.

> Answer

Atiende una llamada entrante que se haya asignado al agente desde una cola y se
encuentre timbrando. Cambia su estado de “RINGING” a “CONNECTED”.
Cumple la misma función que el botón “Atender” de la aplicación BarAgent.
Funciona tanto para llamadas entrantes como salientes de discador automático.
El valor “interactionid” puede ser pasado como “undefined” o vacío. En ese caso, la
API obtiene internamente el identificador la llamada activa en el momento y lo utiliza.

Parámetros que recibe:

Nombre Descripción
interactionId Identificador de llamada.

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
func String que identifica la función (ANSWER)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

> HangUp

Finaliza una llamada de voz activa. Cambia el estado de una llamada de


“CONNECTED” a “DISCONNECTED”.
Si está definido el tiempo de WrapUp, pasa al agente a ese estado, de otro modo lo
coloca en “Disponible”, listo para recibir nuevas llamadas.
Cumple la misma función que el botón “Cortar” de la aplicación “BarAgent”.
El valor “interactionid” puede ser pasado como “undefined” o vacío. En ese caso, la
API maneja internamente la llamada activa en el momento y toma su identificador.

Parámetros que recibe:

Nombre Descripción
interactionId Identificador de llamada.

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
func String que identifica la función (HANGUP)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

> MakeCall

Efectúa una llamada saliente manual, a través de la campaña y el número


especificado en los parámetros de entrada.
El agente debe estar asignado a dicha campaña, de lo contrario la llamada no se
ejecuta. Es imprescindible que ésta campaña esté configurada como saliente, y que la
opción “Permitir llamadas manuales” esté habilitada.

Parámetros que recibe:

Nombre Descripción
campaign Identificador de campaña
phone Número de teléfono
iml Colección de pares nombre/valor, enviados junto con
la llamada para usarse en la campaña

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso:
response.data.interactionid
func String que identifica la función (MAKECALL)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

> ManualReschedule

Se encarga de reagendar una llamada para una fecha futura. Este “Reschedule” no
utiliza Discador Automático (aquí radica la diferencia con los “Reschedule” explicados en
la sección correspondiente a OUTBOUNDENGINE), sino que coloca la llamada en la
bandeja de agente, para que este luego manualmente la efectúe.
Se debería programar y ejecutar previamente el método “RecognizePhone” para
validar que el teléfono sea un número correcto.

Parámetros que recibe:

Nombre Descripción
phone Número de teléfono
date Fecha (YYYY-MM-DD)
hour Hora (HH:MM)
iml Colección de pares nombre/valor, enviados junto con
la llamada para usarse en la campaña

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
func String que identifica la función
(MANUALRESCHEDULE)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

> Take

Se encarga de tomar una interacción (aplica para llamadas, mail y chat) que se
encuentra encolada y disponible en la bandeja del agente. Esta función recibe un
parámetro de tipo BOOLEAN, llamado “first” que determina si se toma la primer llamada
de la lista, o si se toma la llamada seleccionada de la cola.

Parámetros que recibe:

Nombre Descripción
first Determina que llamada tomar de la cola

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
func String que identifica la función (TAKE)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

> TakeFirst

Se encarga de tomar la primer interacción (aplica para llamadas, mail y chat) en la


cola disponible en la bandeja del agente.

Parámetros que recibe:

Esta función no recibe parámetros. Toma por defecto la primer llamada en la cola
(First In – First Out).

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
func String que identifica la función (TAKEFIRST)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
Message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

> Hold

Coloca la llamada en curso en espera y se cambia el estado de la interacción a


“HOLD”. En caso de que exista una “música en espera” cargada a la campaña desde
Asterisk, ésta se reproducirá.

Parámetros que recibe:

Esta función no recibe parámetros. Por defecto coloca en estado “HOLD” a la


llamada en curso.

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
func String que identifica la función (HOLD)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

> GetInteractionState

Obtiene el estado de la llamada en curso. La función puede devolver los siguientes


valores:
- QUEUED: Cuando se tiene una llamada entrante encolad
- LOCKED: Cuando un discador progresivo tiene a un agente reservado y está realizando
la llamada
- TAKED: Cuando se tiene una llamada en conversación.
- ENDED: Cuando la llamada está “en conclusión”.
- REDIAL: Cuando se está re discando una llamada previamente finalizada.

Parámetros que recibe:

Nombre Descripción
InteractionId Identificador de llamada

Datos que devuelve:

ariable Descripción:
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso:
response.data.interactionState
func String que identifica la función

(GET_INTERACTIONSTATE)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

> Transfer

Transfiere una llamada. Dependiendo de los los parámetros pasados a “value”, la


función realizará las transferencias.
Valores posibles:

- INTERNO: Transfiere la llamada en curso a un numero específico. Para éste valor, el


parámetro en “phone” deberá ser el número de teléfono al cual se desea transferir
(Ejemplo: 24007885).

- AGENTE: Transfiere la llamada en curso a otro agente. Para éste valor, el parámetro en
“phone” deberá ser el identificador del agente al cuál se quiere transferir (Ejemplo:
agente01).

- COLA: Coloca la llamada en la cola de la misma campaña, dejándola disponible en la


bandeja de todos los agentes asociados a ésta. (En este caso no es necesario el
parámetro “phone”).

Parámetros que recibe:

Nombre Descripción
InteractionId Identificador de llamada
phone Destino de la transferencia, según corresponda
value Tipo de transferencia a realizar (INTERNO,
AGENTE, COLA)
autocommit Indica si la confirmación de la llamada se realizará
automáticamente o no. En el caso que se haya
seleccionado INTERNO aquí se define si se desea
completar inmediatamente la transferencia o esperar
a que el agente lo confirme (Consultation Call)

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
func String que identifica la función (TRANSFER)

internalCode Código de error interno: número que identifica el


motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

> TransferCommit

Se encarga de confirmar una transferencia en dos pasos: se selecciona la


transferencia, y luego de la “Consultation Call” (esto es, cuando un agente se comunica
con la persona a la cual se va a transferir, antes de confirmar el paso de la llamada)
completa la transferencia.
Su uso aplica para el caso de “TRANSFER” con autocommit= 0.

Parámetros que recibe:

Nombre Descripción
interactionId Identificador de llamada

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
func String que identifica la función
(TRANSFERCOMMIT)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

> TransferCancel

Se encarga de cancelar una transferencia en dos pasos: se selecciona la


transferencia, y luego de la “Consultation Call” (esto es, cuando un agente se comunica
con la persona a la cual se va a transferir, antes de confirmar el paso de la llamada)
cancela la transferencia. El agente vuelve a hablar con quien comenzó la llamada.
Su uso aplica para el caso de “TRANSFER” con autocommit= 0.

Parámetros que recibe:

Nombre Descripción
interactionId Identificador de llamada
Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
func String que identifica la función
(TRANSFERCANCEL)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

> Forward

Éste método se utiliza para transferir una llamada a una campaña (diferente a la
original por la que conectó).
A diferencia del TRANSFER la llamada siempre se mantiene dentro del
MiddleWare, y por ello es posible pasar todas las variables que sean necesarias de la
llamada original, usando el parámetro IML.

Parámetros que recibe:

Nombre Descripción
interactionId Identificador de llamada
campaign Identificador de campaña
iml Colección de pares nombre/valor, enviados junto con
la llamada para usarse en la campaña

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
func String que identifica la función (FORWARD)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

> Redial

Re conecta una llamada con un cliente. El “rediscado” se realiza siempre sobre el


número de origen de la llamada: si fue entrante, el método marca el CALLERID o número
del cliente. En caso de que haya sido saliente, marca el número discado anteriormente.

Parámetros que recibe:

Nombre Descripción
interactionId Identificador de llamada
phone Número de teléfono

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso:
response.data.interactionid
func String que identifica la función (REDIAL)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

> TransferPopup

Despliega en pantalla el formulario por defecto de la aplicación BarAgent para


realizar transferencias de llamadas.

Parámetros que recibe:

Esta función no recibe parámetros.

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
func String que identifica la función
(TRANSFER_POPUP)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

ConferencePopup

Despliega en pantalla el formulario por defecto de la aplicación BarAgent para


realizar conferencias entre llamadas.

Parámetros que recibe:

Esta función no recibe parámetros.

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
func String que identifica la función
(CONFERENCE_POPUP)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

GetPhoneState

Éste método devuelve el estado del canal telefónico correspondiente a la llamada


en curso. Los posibles resultados son los listados a continuación:

- CONNECTED – Llamada conectada


- DISCONNECTED – Llamada desconectada
- RINGING – Llamada saliente timbrando
- OFFERING – Llamada entrante timbrando
- TRANSFERRING – Transferencia siendo realizada

Parámetros que recibe:


Nombre Descripción
interactionId Identificador de llamada

Datos que devuelve:


Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso:
response.data.phoneState
func String que identifica la función (GET_PHONESTATE)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.
AcceptPreview

La “vista previa”, despliega al agente los datos de el contacto al que se está


marcando. Este método se encarga de aceptar una llamada mostrada al agente como
vista previa, en una campaña de discador.

Parámetros que recibe:

Nombre Descripción
interactionId Identificador de llamada

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
func String que identifica la función (ACCEPTPREVIEW)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

CancelPreview

La “vista previa”, despliega al agente los datos de el contacto al que se está


marcando. Este método se encarga de rechazar una llamada mostrada al agente como
vista previa, en una campaña de discador.

Parámetros que recibe:

Nombre Descripción
interactionId Identificador de llamada

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
func String que identifica la función (CANCELPREVIEW)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.
GetState

Obtiene el estado actual de un agente conectado. Los posibles estados son los
listados a continuación:

- PAUSE – el agente se encuentra en pausa, por lo tanto no puede recibir llamadas


- ACTIVO – el agente se encuentra activo para trabajar
- Estado personalizado de descanso - Toilette, Training, Personal, etc.

Parámetros que recibe:

Esta función no recibe parámetros.

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: response.data.state
func String que identifica la función (GET_STATE)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

ChangeState

Modifica el estado de un agente conectado.

Parámetros que recibe:

Nombre Descripción
state Nuevo estado al que se quiere cambiar

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
func String que identifica la función (CHANGESTATE)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.
SetbuttonEnabled

Este método permite habilitar/deshabilitar los botones de la aplicación BarAgent.


Para ésto, es necesario enviar como parámetro, alguno de los siguientes identificadores
(entre comillas):

COMMIT = "Commit"
CANCEL = "Cancel"
TAKEFIRST = "TAKEFIRST"
PREVIEW_ACCEPT = "PREVIEW_ACCEPT"
PREVIEW_CANCEL = "PREVIEW_CANCEL"
TAKE = "TAKE"
ANSWER = "ANSWER"
HANGUP = "Hang_Up"
HANGUPCHAT = "End chat"
HANGUPVOICEMAIL = "End voicemail"
HOLD = "HOLD"
UNHOLD = "UNHOLD"
TRANSFER = "TRANSFER"
COMPLETETRANSCONF = "COMPLETE"
CANCELTRANSCONF = "CANCEL"
CONFERENCE = "CONFERENCE"
REQUEUE = "REQUEUE"
MAKECALL = "MakeCall"
CALLBACK = "CALLBACK"
RECORD = "RECORD"
MAKECHAT = "mchat"
SENDDTMF = "SendDTMF"
FINISH = "FINISH"
REDIAL = "REDIAL"
FORWARD = "FORWARD"
REPLAYVOICEMAIL = "Replay voicemail"

Parámetros que recibe:

Nombre Descripción
idButton Identificador del control (botón)
state Valor binario que indica si el botón se debe habilitar
o deshabilitar (0,1)

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
func String que identifica la función
(SETBUTTONENABLED)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

SetbuttonVisible

Permite hacer visible/invisible los botones de la aplicación BarAgent. Para ésto, es


necesario enviar como parámetro, alguno de los siguientes identificadores (entre
comillas):

COMMIT = "Commit"
CANCEL = "Cancel"
TAKEFIRST = "TAKEFIRST"
PREVIEW_ACCEPT = "PREVIEW_ACCEPT"
PREVIEW_CANCEL = "PREVIEW_CANCEL"
TAKE = "TAKE"
ANSWER = "ANSWER"
HANGUP = "Hang_Up"
HANGUPCHAT = "End chat"
HANGUPVOICEMAIL = "End voicemail"
HOLD = "HOLD"
UNHOLD = "UNHOLD"
TRANSFER = "TRANSFER"
COMPLETETRANSCONF = "COMPLETE"
CANCELTRANSCONF = "CANCEL"
CONFERENCE = "CONFERENCE"
REQUEUE = "REQUEUE"
MAKECALL = "MakeCall"
CALLBACK = "CALLBACK"
RECORD = "RECORD"
MAKECHAT = "mchat"
SENDDTMF = "SendDTMF"
FINISH = "FINISH"
REDIAL = "REDIAL"
FORWARD = "FORWARD"
REPLAYVOICEMAIL = "Replay voicemail"

Parámetros que recibe:

Nombre Descripción
idButton Identificador del control (botón)
state Valor binario que indica si el botón se debe hacer
visible o invisible (0,1)

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
func String que identifica la función
(SETBUTTONVISIBLE)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

Recording

Permite manipular la grabación de una llamada en curso: detenerla, iniciarla y


reiniciarla. Por defecto, todas las llamadas son grabadas en inConcert. Este método
permite hacerlo de forma manual, generando así un nuevo archivo de audio.

Parámetros que recibe:

Nombre Descripción
interactionId Identificador de llamada
action Indica la acción a realizar sobre la grabación de
llamada (0 = detiene, 1 = inicia, 2 = detener e iniciar
en la misma acción)

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
func String que identifica la función (RECORDING)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

PlayAudio

Reproduce vía streaming un audio grabado de una llamada, desde el repositorio de


inConcert.
Una interacción puede ser tomada por muchos agentes, y cada una de estas
instancias puede puede tener muchas partes (cada vez que se inicia/detiene la
grabación). Al escuchar estas grabaciones, se tienen definidos:

- SECTION - Posición del agente que la tomó (0,1,2, etc)


- PART - Parte dentro del la atención del agente (1,2, etc)

Parámetros que recibe:


Nombre Descripción
streamserver IP/Nombre del servidor de streaming de audio
repositoryserver IP/Nombre del servidor donde se almacenan los
audios
interactionId Identificador de llamada
section Sección de la grabación que se debe reproducir
part Parte de la grabación (dentro de la sección) que se
debe reproducir

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
func String que identifica la función (PLAYAUDIO)
internalCode Código de error interno: número que identifica el
motivo por el cual falló la ejecución
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

Métodos incluidos en el objeto OutboundEngine

La librería inConcerSDK, provee una interfaz para interactuar con el servidor de


inConcert, y el motor de marcación saliente, permitiendo realizar un manejo completo de
todos sus elementos y funcionalidades, ya sean importaciones, contactos, lotes y
procesos.

Nota
Parámetros como ”accountGroup”, “accountOfficer” o “Category” se corresponden directamente con
estos valores, al momento de hacer la importación de un contacto desde inConcert Allegro.

AddContact

Crea un nuevo contacto. Similar a cuando se realiza una importación, este método
se encarga de guardar un nuevo registro (único en este caso) de contacto en la base de
datos.

Parámetros que recibe:

Nombre Descripción
contactId Identificador del contacto
name Nombre del contacto
accountOfficer Corresponde al campo “Oficial de cuenta” del
contacto
accountGroup Corresponde al campo “Grupo de cuenta” del
contacto
category Corresponde al campo “Categoría” del contacto
campaign Campaña asociada al contacto
importation Importación a la que se asociará el contacto

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función (ADD_CONTACT)
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

AddContactValues

Agrega valores genéricos un contacto preexistente, indicando el nombre y el valor


de éste. Estos campos no existen por defecto (Ejemplo: Ciudad, Edad, Sexo, etc).
Para ésto, es necesario pasarle al método una ARRAY (lista) de objetos de tipo
ContactData. Cada objeto es un valor genérico de los mencionados anteriormente.

Parámetros que recibe:

Nombre Descripción
contactId Identificador del contacto
contactDataList Colección donde se especifican los nombre-valor a
insertar en el contacto.

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función
(ADD_CONTACT_VALUES)
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.
AddPhone

Agrega un nuevo número de teléfono a un contacto preexistente. Este método no


valida el teléfono que se desea agregar. Para poder validarlo, se deberá utilizar
RECOGNIZEPHONE. Es recomendable que los datos sean válidos al momento de
ingresarlos.

Parámetros que recibe:

Nombre Descripción
contactId Identificador del contacto
phoneType Tipo de destino del teléfono (HOME, CELLULAR,
OFFICE y FAX)
countryId Identificador del país para el teléfono
areaId Identificador del área para el teléfono
phoneNumber Número de teléfono
ZIP Código postal asociado a un teléfono
phoneExtension Extensión del teléfono

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función (ADD_PHONE)
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

AssignAgent

Asigna un agente a un contacto, para que éste solo pueda ser llamado por el
agente especificado.

Parámetros que recibe:

Nombre Descripción
processId Identificador del motor de marcación saliente
batchId Identificador del lote
contactId Identificador del contacto
agentId Identificador del agente a asignar
Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función (ASSIGN_AGENT)
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

AddContactToBatch

Agrega un contacto existente, a un lote existente en un proceso saliente.

Parámetros que recibe:

Nombre Descripción
processId Identificador del proceso saliente
batchId Identificador del lote
contactId Identificador del contacto
agentId Identificador del agente a asignar. Se le puede pasar
vacío y lo marca como undefined. No es un dato
obligatorio.
outofbatchallowed Permite agendar fuera de la fecha de validez del lote
(indica si al contacto se lo podrá llamar por mas que
el lote este vencido). Utiliza valores True/False o 1/0.
IgnoreRules Permite agendar para un momento (fecha y hora), en
el que no haya regla activa en el Motor de Marcación
Saliente ( indica que no se tendrán en cuenta la
reglas de marcado como por ejemplo la cantidad de
reintentos). Utiliza valores True/False o 1/0.

contactDate Fecha en la que se agendará el contacto a ser


llamado (Formato de fecha: YYYY-MM-DD - Formato
de hora: HH:MM)

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función
(ADD_CONTACT_TO_BATCH)
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

CancelContact

Modifica el estado de un contacto existente, y perteneciente a un lote de un proceso


saliente, a “cancelado”.

Parámetros que recibe:

Nombre Descripción
processId Identificador del motor de marcación saliente
batchId Identificador del lote
contactId Identificador del contacto

Datos que devuelve:


Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función
(CANCEL_CONTACT)
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

PauseContact

Modifica el estado de un contacto existente, y perteneciente a un lote de un proceso


saliente, a “pausado”.

Parámetros que recibe:

Nombre Descripción
processId Identificador del motor de marcación saliente
batchId Identificador del lote
contactId Identificador del contacto

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función (PAUSE_CONTACT)
data Objeto contenedor de datos específicos devueltos
por el método . Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

ResumeContact

Este método retoma el estado anterior de los contactos que hayan sido pausados
previamente. Los que no estén “pausados” los va a conservar.

Parámetros que recibe:

Nombre Descripción
processId Identificador del motor de marcación saliente
batchId Identificador del lote
contactId Identificador del contacto

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función
(RESUME_CONTACT)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

CancelPhone

Modifica el estado de un teléfono a “cancelado”. No lo elimina; simplemente lo


deshabilita, evitando que el motor de marcación saliente lo utilice cuando llame al
contacto que lo tiene asociado.
Actúa de la misma forma que el método DISABLEPHONE.

Parámetros que recibe:

Nombre Descripción
contactId Identificador del contacto
countryId Identificador del país para el teléfono
areaId Identificador del área para el teléfono
phoneNumber Número de teléfono
phoneExtension Extensión del teléfono

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función (CANCEL_PHONE)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

ChangePriority

Cambia la prioridad de un contacto dentro de un lote.

Parámetros que recibe:

Nombre Descripción
processId Identificador del motor de marcación saliente
batchId Identificador del lote
contactId Identificador del contacto
newPriority Nuevo valor asignado para la prioridad del contacto

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función
(CHANGE_PRIORITY)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.
DisablePhone

Modifica el estado de un teléfono a “deshabilitado”. No lo elimina; simplemente lo


deshabilita, evitando que el motor de marcación saliente lo utilice cuando llame al
contacto que lo tiene asociado.
Actúa de la misma forma que el método CANCELPHONE.

Parámetros que recibe:

Nombre Descripción
contactId Identificador del contacto
countryId Identificador del país para el teléfono
areaId Identificador del área para el teléfono
phoneNumber Número de teléfono
phoneExtension Extensión del teléfono

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función (DISABLE_PHONE)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

EnablePhone

Modifica el estado de un teléfono a “Habilitado”. Se utiliza cuando previamente un


teléfono está marcado como “Deshabilitado”.

Parámetros que recibe:

Nombre Descripción
contactId Identificador del contacto
countryId Identificador del país para el teléfono
areaId Identificador del área para el teléfono
phoneNumber Número de teléfono
phoneExtension Extensión del teléfono

Datos que devuelve:


Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función (ENABLE_PHONE)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

FinishContact

Modifica el estado de un contacto existente, y perteneciente a un lote de un proceso


saliente, a “cancelado”.

Parámetros que recibe:

Nombre Descripción
processId Identificador del motor de marcación saliente
batchId Identificador del lote
contactId Identificador del contacto

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función (FINISH_CONTACT)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

ReScheduleContact

Se encarga de agendar una llamada a un contacto para una fecha futura. Es


necesario proporcionar la fecha en formato UTC, utilizando el método “convertToUTC”,
para que el discador pueda marcar correctamente al contacto.
Llama a los destinos del contacto, según las reglas de marcado establecidas.

Parámetros que recibe:


Nombre Descripción
processId Identificador del motor de marcación saliente
batchId Identificador del lote
contactId Identificador del contacto
agent Identificador del agente
rescheduleDate Fecha en para la cual se va a re agendar la llamada
(Formato de fecha: YYYY-MM-DD - Formato de hora:
HH:MM)
outOfBatchAllowed Permite agendar fuera de la fecha de validez del lote
(indica si al contacto se lo podrá llamar por mas que
el lote este vencido). Utiliza valores True/False o 1/0.
IgnoreRules Permite agendar para un momento (fecha y hora), en
el que no haya regla activa en el Motor de Marcación
Saliente ( indica que no se tendrán en cuenta la
reglas de marcado como por ejemplo la cantidad de
reintentos). Utiliza valores True/False o 1/0.

Datos que devuelve:


Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función
(RESCHEDULE_CONTACT)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

ReScheduleContactToPhone

Agenda una llamada para una fecha futura, a un teléfono alternativo. Este número
es pasado como parámetro, para luego ser insertado sobre el registro del contacto.
La fecha deberá ser en formato UTC.

Parámetros que recibe:

Nombre Descripción
processId Identificador del motor de marcación saliente
batchId Identificador del lote
contactId Identificador del contacto
agent Identificador del agente
rescheduleDate Fecha re agendada para volver a efectuar la llamada
(Formato de fecha: YYYY-MM-DD - Formato de hora:
HH:MM)
outOfBatchAllowed Permite agendar fuera de la fecha de validez del lote
(indica si al contacto se lo podrá llamar por mas que
el lote este vencido). Utiliza valores True/False o 1/0.
IgnoreRules Permite agendar para un momento (fecha y hora), en
el que no haya regla activa en el Motor de Marcación
Saliente ( indica que no se tendrán en cuenta la
reglas de marcado como por ejemplo la cantidad de
reintentos). Utiliza valores True/False o 1/0.

phoneCountry País para el teléfono


phoneArea Área para el teléfono
phoneNumber Número de teléfono
phoneExtension Extensión del teléfono
phoneType Tipo de destino del teléfono (HOME, CELLULAR,
OFFICE y FAX)
ZIP Código postal asociado a un teléfono

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función
(RESCHEDULE_CONTACT_TOPHONE)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

RescheduleContactCampaign

Agenda un contacto en una fecha futura, para una campaña determinada. Toma el
primer lote que encuentra con fecha válida al momento de la ejecución del método.

Parámetros que recibe:

Nombre Descripción
campaignId Identificador de la campaña
contactId Identificador del contacto
agent Identificador del agente
rescheduleDate Fecha reagendada para volver a efectuar la llamada
(Formato de fecha: YYYY-MM-DD - Formato de hora:
HH:MM)
outOfBatchAllowed Permite agendar fuera de la fecha de validez del lote
(indica si al contacto se lo podrá llamar por mas que
el lote este vencido). Utiliza valores True/False o 1/0.
IgnoreRules Permite agendar para un momento (fecha y hora), en
el que no haya regla activa en el Motor de Marcación
Saliente ( indica que no se tendrán en cuenta la
reglas de marcado como por ejemplo la cantidad de
reintentos). Utiliza valores True/False o 1/0.

phoneCountry País para el teléfono


phoneArea Área para el teléfono
phoneNumber Nombre del contacto
phoneExtension Extensión del teléfono
phoneType Tipo de destino del teléfono (HOME, CELLULAR,
OFFICE y FAX)
ZIP Código postal asociado a un teléfono

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función
(RESCHEDULE_CONTACT_CAMPAIGN)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

RecycleContact

Coloca un contacto en estado “activo”. Es posible asignarlo a un agente, para que


sea éste quien tome la nueva interacción.

Parámetros que recibe:

Nombre Descripción
processId Identificador del motor de marcación saliente
batchId Identificador del lote
contactId Identificador del contacto
agent Identificador del agente a asignar. Se le puede pasar
vacío y lo marca como undefined. No es un dato
obligatorio

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función
(RECYCLE_CONTACT)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

ExtendBatch

Modifica la fecha de fin de la validez de un lote. No afecta directamente a los


contactos de éste.

Parámetros que recibe:

Nombre Descripción
processId Identificador del motor de marcación saliente
batchId Identificador del lote
endDate Nueva fecha de fin de validez para el lote (Formato
de fecha: YYYY-MM-DD)

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función (EXTEND_BATCH)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

RecognizePhone

Se encarga de chequear la validez de un teléfono a través la cantidad de dígitos,


código de área, país y formato.
Se pueden pasar los números por separado (país = “34”, área = “93”, número =
”1980149”), o concatenados en el campo “numero” con el signo “+” delante
(“+34931980149”). También es posible colocar el “country” y los demás parámetros juntos
en el campo “número” (país = “34”, área = “”, numero = “931980149”).
En caso de ser válido devuelve el número segmentado en sus diferentes
componentes.
Parámetros que recibe:

Nombre Descripción
country País para el teléfono
area Área para el teléfono
number Número de teléfono
extension Extensión del teléfono

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función
(RECOGNIZE_PHONE)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

RetrieveContact

Obtiene un objeto contacto con todos sus datos: nombre, importación, teléfono, etc.
Busca a través de un identificador y devuelve toda la información referente a ese registro.

Parámetros que recibe:

Nombre Descripción
contactId Identificador del contacto

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función (GET_CONTACT)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso:
response.data.Contact (con todas sus propiedades)
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.
SetDispositionCode

Tipifica una llamada: le asigna un resultado de gestión a la interacción. Este


resultado está compuesto por la descripción sumado a la información agregada (“isGoal”,
“isUseful”) y el código de resultado.
Fuerza a que el discador evalúe las reglas de marcado si se encuentran los
parámetos PROCESSID, BATCHID, CONTACTID y CONTACTCODE. En caso contrario,
puede guardar el resultado de gestión usando INTERACTIONID y BUSINESSCODE.

Parámetros que recibe:

Nombre Descripción
processId Identificador del motor de marcación saliente
batchId Identificador del lote
contactId Identificador del contacto
interactionId Identificador de la llamada
contactCode Código para la tipificación de la llamada
businessCode Código para la tipificación de la llamada (definido en
la campaña)
contactName Nombre del contacto

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno.
func String que identifica la función
(SET_DISPOSITION_CODE)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

StartContactImport

Carga un archivo de tipo .CSV a la base de datos de inConcert. Esta funcionalidad


opera de la misma forma desde la interfaz web para importar una lista de contactos.

Parámetros que recibe:

Nombre Descripción
divForm Etiqueta HTML que se utiliza para realizar el upload
de la importacion. Tiene que existir en la página
desde donde se llama a la SDK, y también tiene que
existir el elemento donde se indica la ruta del archivo
a subir.
inputFile Archivo para importar a la base de datos de
inConcert
importId Identificador de la importación
dbProvider Proveedor de los datos a importar
formatId Identificador del formato de datos (mapeo)
duplicateCheck Especifica el tipo de chequeo de duplicados al
importar (Key, None, Phone, NamePhone)
duplicateSolver Acción que se debe tomar con los duplicados
(KeepNew, KeepOld, AppendNewToOld,
AppendOldToNew)
vipImport Marca los contactos como “Lista Negra”, para evitar
que se los llame
clientImport Marca los contactos como clientes

Datos que devuelve:

Este método no devuelve datos.

DeleteContactImport

Elimina una importación existente de la base de datos de inConcert.

Parámetros que recibe:

Nombre Descripción
importationId Identificador de la importación

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función
(DELETE_CONTACT_IMPORT)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

GetImportStatus

Obtiene el estado actual de una importación. Los valores posibles son los listados a
continuación:
- RUNNING – ejecutando proceso de carga
- COMPLETE – carga completa
- ABORTED – carga interrumpida debido a un error en el proceso (Ej: demasiados
teléfonos inválidos)
- PAUSED – carga pausada
- DELETING – en proceso de eliminación de la carga de contactos

Parámetros que recibe:

Nombre Descripción
importId Identificador de la importación

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno.
func String que identifica la función
(GET_IMPORT_STATUS)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

CreateBatchFromFilter

Crea un lote a partir de un determinado filtro.

Parámetros que recibe:

Nombre Descripción
filterId Identificador del filtro
processId Identificador del motor de marcación saliente
batchId Identificador del lote
startDate Fecha para el inicio de la validez del lote (Formato
de fecha: YYYY-MM-DD)
endDate Fecha para el final de la validez del lote (Formato de
fecha: YYYY-MM-DD)
excludeDuplicates Excluye duplicados (0 = No, 1 = Si)
orderField Confirma un orden de marcación.
priorityBase Valor de prioridad base para los contactos del lote
inverseOrder Orden de marcación creciente o decreciente (0 = de
menor a mayor , 1 = de mayor a menor)

Datos que devuelve:


Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno.
func String que identifica la función
(CREATE_BATCH_FROM_FILTER)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

CreateFilter

Crea un filtro a partir de los valores pasados como parámetro.


Ejemplo de uso:
var filter = new Array()
filter[0] = {"Name":"LastUpdate","Operator":"=","Value":"Import_20130812","IsCustom":"0"}
filter[1] = {"Name":"LastManagementResult","Operator":"<>","Value":"5","IsCustom":"0"}
oe.CreateFilter("unFiltro", filter, undefined, undefined)

Las condiciones se aplican todas juntas, con un AND entre una y la otra. En esta
modalidad no está permitido crear filtros con otros operadores y paréntesis entre
condiciones.

Parámetros que recibe:

Nombre Descripción
filterId Identificador del filtro
filterValues Array de valores para generar el filtro

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función (CREATE_FILTER)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.
CreateBatchFromImport

Crea un lote a partir de una determinada importación

Parámetros que recibe:

Nombre Descripción
importId Identificador de la importación
processId Identificador del motor de marcación saliente
batchId Identificador del lote
startDate Fecha para el inicio de la validez del lote (Formato
de fecha: YYYY-MM-DD)
endDate Fecha para el final de la validez del lote (Formato de
fecha: YYYY-MM-DD)
excludeDuplicates Excluye duplicados (0 = No, 1 = Si)

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función
(CREATE_BATCH_FROM_IMPORT)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

GetCampaignDispositions

Obtiene las tipificaciones (“DispositionCodes”) de una campaña determinada y sus


propiedades.

Parámetros que recibe:

Nombre Descripción
campaignId Identificador de la campaña

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función
(GET_CAMPAIGN_DISPOSITIONS)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

SearchContacts

Realiza una búsqueda de contactos y devuelve una lista con todos aquellos que
cumplan con el criterio definido. Éste se define a través del parámetro PREDICATE.
El “predicado” son los criterios de búsqueda que se quieren aplicar (ejemplo; todos
los contactos de un lote). Para ésto se puede crear un objeto de tipo Predicate y agregar
la expresión que se desea.
Ejemplo de uso:

Set vPredicate = CreateObject("InconcertSDK.Predicate")


vPredicate.AddParenthesis(True)
Call vPredicate.AddOperand("number", "=", "phone", "int", "12345678")
Call vPredicate.AddOperator("AND")
Call vPredicate.AddOperand("ContactID", "=", "phone", "string",
"8EB660F7BC1B40A2A647B9B13CD475BE")
Call vPredicate.AddParenthesis(False)
Call vPredicate.AddOperator("OR")
Call vPredicate.AddParenthesis(True)
Call vPredicate.AddOperand("number", "=", "phone", "int", "24007885")
Call vPredicate.AddOperator("AND")
Call vPredicate.AddOperand("area", "=", "phone", "int", "1")
Call vPredicate.AddParenthesis(False)

Parámetros que recibe:


Nombre Descripción
predicate Indica el filtro de búsqueda

Datos que devuelve:


Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función
(SEARCH_CONTACTS)
data Objeto contenedor de datos específicos devueltos
por el método. Para este caso: undefined
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

Métodos incluidos en el objeto Session


Para poder ejecutar los métodos descritos anteriormente, es necesario validar al
agente contra el servidor. Esto es posible utilizando los métodos contenidos en el objeto
SESSION.

Login

Inicializa una sesión contra el servidor Middleware y permite realizar el login al


“OutboundEngine” para poder utilizar cualquiera de los métodos existentes. La clave es
encriptada con MD5, antes de enviarla.

Ejemplo de ejecución:

LoginResult = ObjSession.Login ("192.168.1.2", "8082", "agente1", "1234", "vcc1",


"outboundengine")

Devuelve TRUE si el login fue correcto y FALSE en caso contrario.

Parámetros que recibe:

Nombre Descripción
username Identificador del usuario a loguear
password Contraseña correspondiente
callcenterId Identificador del VCC contra el cual se identificará el
usuario

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función (LOGIN)
data Objeto contenedor de datos específicos devueltos
por el método.
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

LoginFromToken

Ejecuta el “Login” reutilizando la sesión del BarAgent. Evita tener que ingresar
nuevamente usuario y clave.
La aplicación BarAgent pasa el TOKEN asociado a la sesión a través de un
CTIPopUp.

Parámetros que recibe:


Nombre Descripción
applicationName Identificador de la aplicación a la que el usuartio se
conectará (OUTBOUNDENGINE, BARAGENT)
userAuthToken Identificador de la sesión del usuario. Se encuentra
en la tabla “...” de la base de datos de inConcert
(SELECT...)

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función
(LOGINFROMTOKEN)
data Objeto contenedor de datos específicos devueltos
por el método.
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

LogOut

Desconecta una sesión del servidor

Parámetros que recibe:

Esta función no recibe parámetros.

Datos que devuelve:

Variable Descripción
code Código HTTP que retorna la función. También puede
devolver -1 cuando la request da timeout.
internalCode Código que indica si la función se ejecuto
correctamente o no. En caso de que si, devuelve 1.
En caso de que no devuelve código de error interno
func String que identifica la función (LOGOUT)
data Objeto contenedor de datos específicos devueltos
por el método.
message Descripción del resultado de la función (String).
Explica si el resultado fue exitoso o no, a través de
una cadena de caracteres.

You might also like