You are here

Techniques to display the CTI Call Data in Siebel Application

While integrating Siebel and CTI with products like Avaya or CISCO typically clients will have following types of requirement:

- Create a customer control on the CTI toolbar and populate it with Call Data
- Present Call Data to the agent for the duration of a call
- Inform the agent at the beginning of the ANI or Language of the caller

 

There are three techniques how these types of requirements can be achieved:

1. Populate Call Data into the Persistent Customer Dashboard
2. Display Call Data in the status bar at the top of the application
3. Populate the call data on the CTI toolbar

Please see the details below on how to achieve each of these:

1. Populate Call Data into the Persistent Customer Dashboard

A.) On the first event into Siebel when a new call is received, for example "EventRinging" for Genesys or "InboundCall" for CT Connect, trigger an Event Log. Configure the Event Log to create an Activity record and populate some of its Fields with Call Data:

[EventLog:LogIncomingCall]
BusObj = "Action"
BusComp = "Action"
LogField.ANI = "{ANI}"
LogField.DNIS = "{DNIS}"
LogField.RefId = "{RefId}"
LogField.Type = "Call - Inbound"
LogField.Description = "Inbound call"
AfterWork.'Planned Completion'= "{@Now}"
AfterWork.'Done' = "{@Now}"
AfterWork.'ACD Call Duration' = "{@WorkDuration}"

Please note the fields "LogField.ANI", "LogField.DNIS" and "LogField.RefId" mentioned above will have to be created separately on the "Action" business component. Also, the above configuration is based on the fields {ANI}, {DNIS} and {RefId} already existing in the Call Data attached to the call. The three fields mentioned are only examples, any field from the Call Data could be populated into the Activity record.


B.) On the next event into Siebel (i.e. "EventEstablished" in Genesys or "TpAnswered" for CT Connect) trigger another EventLog that will populate the dashboard:

[EventLog:LogIncomingCallConsumerNotFound]
ServiceMethod = "Persistent Customer Dashboard.Update Dashboard from CTI"
ServiceParam.Field = "Id"
ServiceParam.Value = "{@WorkObjectID}"
ServiceParam.BuscompName = "Action"


2.) Display Call Data in the Status Bar at the top of the application

It should be possible to update the text displayed in the Status Bar area at the top of the application above the CTI toolbar by invoking a command on the following lines:

[Command:ShowMessage]
ServiceMethod = "Communications Client.ShowStatusText"
CmdData = "ShowMessage"

;; The message is shown at the status box. Please change it accordingly.
[CmdData:ShowMessage]
ServiceParam.Text = "{ANI} {DNIS} {RefId}"

This command could be called from an EventResponse or a script anywhere in the application.

However, please note the following with regards to the text displayed in the Status Bar:

- The message will timeout after a short period of time.

- Even with the increased timeout specified the message will be overwritten next time the "ShowStatusText" method is invoked. This method can be invoked at anytime by the 3rd party CTI driver which we cannot control or prevent.


3.) Populate the Call Data on the CTI toolbar

It is not possible to achieve this requirement using standard out of the box functionality. However, you can add custom controls to the Siebel CTI toolbar and update them with values from the call data. This configuration requires the modification of internal .swt and .js files and you must engage Expert services to achieve such a requirement.