Sei sulla pagina 1di 14

Integracin con Presence Produccin

Control ActiveX
Introduccin
El control ActiveX (PresenceInterfaceX.OCX) permite a una aplicacin recibir
eventos relacionados con la gestin del contacto, as como poder consultar sus
diferentes propiedades (ANI, DNIS, Estacin agente, Identificador agente,).
Para su uso basta incluir un control PresenceInterfaceX en la aplicacin y que este
permanezca creado durante toda la ejecucin de la aplicacin (por ejemplo se
puede incluir en el formulario principal).
Inicialmente deberemos llamar al mtodo Active para que el control se registre en
el programa de produccin, a continuacin llamaremos al mtodo
ConnectToService para indicar que queremos recibir informacin acerca de los
contactos que se produzcan para un servicio en concreto. Si deseamos recibir
informacin para ms de un servicio, deberemos hacer tantas llamadas a
ConnectToService como servicios tengamos:
PresenceX.Active
PresenceX.ConnectToService (100)
PresenceX.ConnectToService (205)
A partir de ese momento recibiremos un evento InboundCallEvent
OutboundCallEvent (dependiendo del tipo de servicio) cada vez que el agente
atienda un contacto de alguno de los servicios. Podremos acceder a la informacin
concreta del contacto a travs de las propiedades del control:

Private Sub PresenceX_InboundCallEvent()


tVDN.Text = PresenceX.VDN Recuperamos el VDN (DNIS) del contacto
tAgentID.Text = PresenceX.AgentId Identificador del agente
tPhone.Text = PRresenceX.Phone2 Telfono del cliente
End Sub

1
Presence CRM OptimizerTM
Integracin con Presence Produccin. Control ActiveX

Presence Technology, S.L.

de 14

Los eventos StartEvent y StopEvent los recibiremos cada vez que el agente inicie
o pare respectivamente su sesin. En el evento StartEvent normalmente se coloca
cdigo de inicializacin de la aplicacin/sesin.
Cuando finalizamos la aplicacin llamaremos al mtodo Close para cerrar la
conexin con el programa de produccin.

Propiedades del control ActiveX


Propiedad

Tipo

L/E

Descripcin

CallType

Integer

Tipo de llamada (0-Saliente, 1-Entrante)

Phone

WideString L

Nmero de telfono del cliente que llama


(ANI), o al que hemos llamado si es un
servicio saliente (obsoleto, usar Phone2)

Phone2

WideString L/E

Nmero de telfono del cliente que llama


(ANI), o al que hemos llamado si es un
servicio saliente

OutBoundMode

Integer

Modo en el que estamos realizando la


emisin para un servicio saliente (0Predictiva, 1-Automtica, 2-Manual, 3Aviso Previo)

PredictiveMode

Integer

Modo en el que estamos realizando la


emisin predictiva, (0-Por tiempo, 1-Por
aplicacin)

PredictiveLevel

Integer

Si el modo predictivo es por aplicacin


este campo nos indica a que nivel debe
lanzar la aplicacin la peticin de generar
una nueva llamada predictiva

SkillExtension

Integer

Nmero de extensin del skill (o cola de


llamadas) en la que se encuentra la
llamada que estamos gestionando

VDN

Integer

Punto de entrada de la llamada que


estamos gestionando (DNIS)

AgentStation

Integer

Estacin en la que esta conectado el


agente que gestiona la llamada

AgentId

Integer

Identificador lgico
gestiona la llamada

del

agente

2
Presence CRM OptimizerTM
Integracin con Presence Produccin. Control ActiveX

Presence Technology, S.L.

que

de 14

Propiedad

Tipo

L/E

Descripcin

ContactId

Integer

Identificador nico para el contacto dentro


del sistema Presence

ClientId

Integer

Identificador del cliente usado por la


aplicacin que gestiona el servicio saliente

ClientInfo

WideString L/E

Informacin adicional de la aplicacin que


se adjunta a la informacin del contacto.
til para adjuntar datos de negocio. Slo
servicios entrantes

ServiceId

Integer

Identificador del servicio al que pertenece


el contacto que estamos gestionando
actualmente

LineCount

Integer

Indica el numero de lneas ocupadas en la


extensin telefnica

LineActive

Integer

L/E

Indica la lnea activa en la extensin


telefnica. Retorna 1 si no hay ninguna
lnea activa y >= 0 en caso contrario

ContactCode

Integer

L/E

Cdigo de finalizacin del contacto. Es el


mtivo (venta, no interesa, etc.) con el
que se cerrar el contacto

AllowEndContact

Boolean

L/E

Indica si es posible cerrar el contacto


actual. El valor de esta propiedad debe
especificarse dentro de la ejecucin del
evento EndContactEvent. Esta propiedad
tiene la misma funcin que la variable
EndContact que se pasa por referencia en
el evento EndContactEvent. Utilizamos
esta propiedad en lugar de la variable
anterior,
cuando
el
lenguaje
de
programacin no soporta el paso de
variables por referencia en los eventos de
los controles ActiveX.

CollectDigits

WideString L

Dgitos que el cliente ha generado durante


el tratamiento de la llamada por parte de
la centralita o ACD. Slo en servicios
entrantes

CollectVDN

Integer

VDN donde se recogieron los dgitos


introducidos por el usuario y guardados en
la propiedad CollectDigits

ScheduledDate

DateTime

L/E

Fecha de programacin en la que se


realizar la siguiente llamada al contacto
actual. Slo en servicios salientes
3

Presence CRM OptimizerTM


Integracin con Presence Produccin. Control ActiveX

Presence Technology, S.L.

de 14

Propiedad

Tipo

L/E

Descripcin

Comments

WideString L/E

Observaciones para contacto el contacto.


Slo en servicios salientes

ContactName

WideString L/E

Nombre de la persona de contacto. Slo en


servicios salientes

CaptureCall

Integer

L/E

Especifica si el contacto ser capturado por


el agente, es decir si la siguiente llamada
al/del contacto actual ser atendida por el
mismo agente.

CaptureCallDateLimit DateTime

L/E

Especifica la fecha mxima hasta que el


contacto permanecer capturado para el
agente. Slo en servicios entrantes

QueuedContactsEven Integer
tTimer

L/E

Indica cada cuantos segundos recibiremos


el evento QueuedContactsEvent. El valor
por defecto es 15 (segundos). El valor
mnimo es de 5 (segundos).

Correo
Propiedad

Tipo

L/E

Descripcin

EMailInFrom

WideString

Remitente del mensaje entrante

EMailInTo

WideString

Destinatario/s del mensaje entrante

EMailInSubject

WideString

Asunto del mensaje entrante

EmailInMessage

WideString

Cuerpo del mensaje entrante (el texto del


mensaje)

EmailOutFrom

String

L/E

Remitente del mensaje saliente

EmailOutTo

String

L/E

Destinatario/s del mensaje saliente

EmailOutSubject

String

L/E

Asunto del mensaje saliente

EmailOutMessage

String

L/E

Cuerpo del mensaje saliente (el texto del


mensaje)

Mtodos del control ActiveX


4
Presence CRM OptimizerTM
Integracin con Presence Produccin. Control ActiveX

Presence Technology, S.L.

de 14

Mtodo

Descripcin

Active

Establece la comunicacin entre Presence Produccin y la


aplicacin a integrar, iniciando la aplicacin de Presence
Produccin en el caso que sta no haya sido arrancada
previamente. Retorna TRUE (1) en caso de xito y FALSE (0)
en caso contrario

Close

Cierra la comunicacin entre Presence y la aplicacin a


integrar. Finaliza la ejecucin de Presence Produccin

ConnectToService

Indica al servidor de Presence que queremos recibir notificacin


sobre los eventos generados para un servicio

Parmetros: ServiceId
DisconnectFromService

Servicio del cual queremos recibir eventos

Indica al servidor de Presence que queremos dejar de recibir


notificacin sobre los eventos generados para un servicio

Parmetros: ServiceId

Servicio del cual queremos dejar de recibir


eventos

GenerateNewPredictiveCall

Solicita al servidor Presence que genere una nueva llamada


predictiva para el servicio que estamos gestionando

InsertNewOutboundContact Inserta un nuevo contacto en un servicio saliente


Parmetros: ServiceId

Servicio

en

el

que

queremos

insertar

(integer)

contacto

LoadId

Carga en la que se incluir el contacto

el

(integer)
ClientId

Identificador del cliente usado por la aplicacin

(integer)

que gestiona el servicio

ClientName

Nombre de la persona de contacto

(WideString)
Phone

Nmero de telfono de contacto

(WideString)

5
Presence CRM OptimizerTM
Integracin con Presence Produccin. Control ActiveX

Presence Technology, S.L.

de 14

Status

Estado

inicial

del

registro,

1-Registro

no

(integer)

programado (llamar como inicial), 2-Registro


programado a un da y hora concreto

ScheduledTim En el caso que el parmetro Status sea 2 aqu


e (DateTime)

indicaremos el da y la hora de llamada

Priority

Prioridad del contacto

(integer)
Obs

Observaciones del contacto

(WideString)
DeleteOutboundContact

Descarga un registro de emisin de un servicio

Parmetros ServiceId

Servicio del que queremos descargar el registro

(integer)

de emisin

LoadId

Carga en la que se buscar el registro. Si

(integer)

especificamos el valor 0 se buscar el registro


de

emisin

en

todas

las

cargas

para

descargarlo.
ClientId

Identificador fuente usado por la aplicacin que

(integer)

gestiona el servicio

ClearCalls

Cuelga todas las llamadas

ClearActiveCall

Cuelga slo la llamada activa, si la hubiere

AnswerCall

Descuelga una llamada entrante

HoldCall

Retiene/Recupera la llamada activa/retenida

TransferCall

Realiza una transferencia entre la llamada activa y la ultima


llamada retenida (obsoleto, usar TransferCall2)

TransferCall2

Realiza una transferencia entre la llamada activa y la ultima


llamada retenida

ConferenceCall

Realiza una conferencia entre la llamada activa y la ultima


llamada retenida

MakeCall

Realiza una nueva llamada

6
Presence CRM OptimizerTM
Integracin con Presence Produccin. Control ActiveX

Presence Technology, S.L.

de 14

Parmetros Phone

Nmero de telfono al que se desea llamar

(WideString)
CloseContact

Finaliza el contacto actual

StartSession

Inicia una nueva sesin de agente

StopSession

Finaliza la sesin de agente


Parmetros EndCode

Motivo de parada de sesin (si indicamos el

(integer)

valor -1 entonces aparecer por pantalla la lista


de motivos de parada)

LoginAgent

Realiza automticamente el login del agente en el


sistema Presence y en la extensin telefnica del ACD
Parmetros Login

Identificador del agente

(WideString)
Password

Contrasea del agente

(WideString)
LogoutAgent

Realiza un Logout del agente

AddCallData

Adjunta datos a la llamada. Esta informacin viajar


junto con el contacto/llamada durante toda su gestin.
Esta funcin se utiliza para implementar transferencias
de voz y datos. Retorna >=0 si los datos se han podido
adjuntar al contacto, en caso contrario retorna <0
Parmetros Variable

Nombre

de

la

variable

con

la

que

(WideString) queremos identificar los datos que vamos


a adjuntar
Data

Valor que queremos adjuntar

(WideString)
GetCallData

Recupera el valor de una variable adjunta al contacto.


Retorna un valor >=0 si la variable existe. En caso
contrario o de error retorna <0
7
Presence CRM OptimizerTM
Integracin con Presence Produccin. Control ActiveX

Presence Technology, S.L.

de 14

Parmetros Variable

Nombre

de

la

variable

adjunta

que

(WideString) deseamos recuperar


Data

Valor de la variable recuperada

(WideString)
StartRecording

Inicia el proceso de grabacin de la llamada *

StopRecording

Detiene el proceso de grabacin de la llamada *

RequestServiceAgents

Solicita la lista de agentes conectados a un determinado


servicio. Para cada agente podremos consultar su login,
nombre y estado para ese servicio. Para recorrer la lista
de agentes y obtener la informacin de cada uno de
ellos,

usaremos

los

metodos

ServiceAgentsLogin,

ServiceAgentsCount,

ServiceAgentsName

ServiceAgentsStatus. Si no se puede obtener la lista de


agentes la funcin retornar el valor false
Parmetros ServiceId
(integer)
ServiceAgentsCount

Servicio del cual queremos obtener la lista


de agentes.

Indica el nmero de agentes conectados al servicio


solicitado en el metodo RequestServiceAgents

ServiceAgentsLogin

Devuelve el login del agente conectado al servicio


solicitado en el mtodo RequestServiceAgents y que se
encuentra en la posicin index de la lista

Parmetros index

Posicin del agente en la lista

(integer)
ServiceAgentsName

Devuelve el nombre del agente conectado al servicio


solicitado en el mtodo RequestServiceAgents y que se
encuentra en la posicin index de la lista

Parmetros index

Posicin del agente en la lista

(integer)
8
Presence CRM OptimizerTM
Integracin con Presence Produccin. Control ActiveX

Presence Technology, S.L.

de 14

ServiceAgentsStatus

Devuelve el estado del agente conectado al servicio


solicitado en el mtodo RequestServiceAgents y que se
encuentra en la posicin index de la lista. Los posibles
valores para el estado del agente son:
0 Parado
1 Disponible
2 Atendiendo contacto
3 Trabajo tras llamada
4 Otro (atendiendo contacto o trabajo tras
llamada de otro servicio diferente al solicitado)

Parmetros index

Posicin del agente en la lista

(integer)

Correo
EmailInAttachmentCount

Devuelve el nmero de ficheros adjuntos del correo


entrante (Resultado: Integer)

EmailInAttachmentName

Devuelve el nombre del fichero adjunto del correo


entrante (Resultado: String)

Parmetros Index

Especifica el indice del fichero adjunto

(integer)
EmailInAttachmentSave

Guarda en disco un fichero adjunto del correo entrante

Parmetros Index

Especifica el indice del fichero adjunto

(integer)
Path

Especifica el directorio donde deseamos

(WideString) guardar el fichero adjunto


EmailInAttachmentOpen

Ejecuta un fichero adjunto del correo entrante

Parmetros Index

Especifica el indice del fichero adjunto


9

Presence CRM OptimizerTM


Integracin con Presence Produccin. Control ActiveX

Presence Technology, S.L.

de 14

(integer)
EmailOutAttachmentCount

Devuelve el nmero de ficheros adjuntos del correo


saliente (Resultado: Integer)

EMailOutAttachmentName

Devuelve el nombre del fichero adjunto del correo


saliente (Resultado: String)

Parmetros Index

Especifica el indice del fichero adjunto

(integer)
EMailOutAttachmentInsert Aade un fichero adjunto al correo saliente
Parmetros FileName

Especifica

el

nombre

del

fichero

(WideString) insertar
EmailOutAttachmentDelete Elimina un fichero adjunto del correo saliente
Parmetros Index

Especifica el indice del fichero adjunto

(integer)
EmailOutSend

Enva el correo saliente

Internet
InternetVariable

Devuelve el valor de una variable de la sesin de Internet


(Resultado: WideString)

Parmetros Variable

Nombre de la variable a obtener

(WideString)

Eventos del control ActiveX


Evento

Descripcin

LoginEvent

Se recibe cuando se produce el login del agente en el sistema


10
Presence CRM OptimizerTM
Integracin con Presence Produccin. Control ActiveX

Presence Technology, S.L.

de 14

Presence (y en su extension ACD)


LogoutEvent

Se recibe cuando se produce el logout del agente del sistema


Presence

StartEvent

Se recibe cuando el agente inicia su sesin de trabajo (cuando pulsa


el botn Iniciar en el programa de produccin)

StopEvent

Se recibe cuando el agente para su sesin de trabajo (cuando pulsa


el botn Parar en el programa de produccin)

NewEndCodeEvent

Se recibe cuando el agente cambia el cdigo de finalizacin (final) del


contacto, el nuevo cdigo de finalizacin lo recibimos sobre la
variable EndCode, si el agente no especifica ningn cdigo de
finalizacin recibimos el valor 1

OutboundCallEvent

Se recibe cuando el agente atiende un contacto saliente

InboundCallEvent

Se recibe cuando el agente atiende un contacto entrante

EndContactEvent

Se recibe cuando el agente intenta finalizar el contacto actual, aqu la


aplicacin debera comprobar si esta todo correcto y es posible cerrar
la gestin del contacto (por ejemplo si estn cumplimentados todos
los campos obligatorios), la aplicacin indica si es posible cerrar el
contacto a travs de la variable EndContact si su valor es TRUE se
acepta la finalizacin y FALSE en caso contrario

RecordStartedEvent

Se recibe cuando se inicia la grabacin bajo demanda de la llamada


actual. Como parmetro recibimos la identificacin de la grabacin
RecordID

CloseEvent

Se recibe cuando se cierra la aplicacin de Presence Produccin

QueuedContactsEvent

Se recibe cada vez que transcurre el tiempo especificado en la


propiedad QueuedContactsEventTimer.

Este evento informa del

nmero de contactos que hay en espera para cada uno de los


servicios a los que esta conectado el control.

Parmetros ServiceId

Cdigo del servicio

(integer)

11
Presence CRM OptimizerTM
Integracin con Presence Produccin. Control ActiveX

Presence Technology, S.L.

de 14

QueuedContacts Nmero de contactos (llamadas) en


(integer)

espera

ServiceName

Nombre del servicio

(WideString)
AfterCallWorkEvent

Se recibe cuando el agente pasa a estado de Trabajo tras llamada


(ACW)

UnexpectedLogoutEvent

Se recibe cada vez que el agente se desconecta ("deslogea") del


sistema ACD de manera inesperada, es decir sin estar bajo el control
del sistema Presence.

AlertCallEvent

Se recibe cada vez que el agente recibe una llamada de un servicio.

Parmetros ServiceId

Cdigo del servicio al que pertence la

(integer)

llamada recibida por el agente

Phone

Nmero de telfono (ANI) del cliente que

(WideString) llama (servicio de recepcin) o esta


siendo llamado (servicio de emisin)
VDN

VDN/CDN

por

donde

ha

entrado

la

(integer)

llamada recibida por el agente

Skill

Extensin del skill donde se ha encolado

(integer)

la llamada recibida por el agente (slo


aplicable en entornos Avaya)

EndAlertCallEvent

Se recibe si la llamada del servicio recibida por el agente, es colgada


antes de que este la pueda contestar.

Parmetros ServiceId

Cdigo del servicio al que pertenca la

(integer)

llamada colgada

Phone

Nmero de telfono (ANI) del cliente que

(WideString) estaba llamando (servicio de recepcin)


o estaba siendo llamado (servicio de
emisin)

12
Presence CRM OptimizerTM
Integracin con Presence Produccin. Control ActiveX

Presence Technology, S.L.

de 14

VDN

VDN/CDN por donde haba entrado la

(integer)

llamada recibida por el agente

Skill

Extensin

(integer)

encolado
agente

del
la

(slo

skill

llamada

donde

se

recibida

aplicable

en

haba
por

el

entornos

Avaya)

13
Presence CRM OptimizerTM
Integracin con Presence Produccin. Control ActiveX

Presence Technology, S.L.

de 14

Ejemplos
En la carpeta \Integracin\Ejemplos podemos encontrar ejemplos de uso del control
PresenceInterfaceX para los siguientes entornos de programacin:

Visual Basic (carpeta VisualBasic)

Delphi (carpeta Delphi)

14
Presence CRM OptimizerTM
Integracin con Presence Produccin. Control ActiveX

Presence Technology, S.L.

de 14

Potrebbero piacerti anche