Modes of Operation and Logging

Modes of operation

The Connector can be configured to operate in one of the following four modes.

Log

The Connector connects to a CTI server and logs the event activity. While agent and flag processing is not performed, events that have a handler are still parsed in depth before their details are logged. If there is a need to prevent deep parsing, for example to avoid a parsing exception, set ShallowMsgLogging to true (see Logging). In Log mode the Connector also skips the startup step of querying the Recording Services for user and system flag information. This mode is useful during initial system setup, to determine which events and information are available before configuring the user and flag mapping rules.

AgentState

The Connector processes the CTI server’s AGENT_STATE_EVENT for login and logout indications, and sends AgentLogin or AgentLogout commands to the associated Recording Service as appropriate. Logging is also performed.

TagRecordings

The Connector processes the five flag-triggering events (see Call Flagging), and where the user and the triggered flags are identified, attaches the flags to the user’s active recording. Logging is also performed.

Normal

Combines the AgentState and TagRecordings modes. Logging is also performed.

The mode of operation is set with the CiscoUCCEConnectorService.ConnectorMode app setting.

<add key="CiscoUCCEConnectorService.ConnectorMode" value="TagRecordings" />

In Log mode, the configuration poll and the catalogue publish are skipped too, so trigger rules come from the FlagTrigger app setting only.

Logging

The Connector writes its log to the QMS log folder, C:\ProgramData\CallRex\Logs, as the other QMS services do. It starts a new file each time the service starts, and again at each rollover, named CiscoUCCEConnectorService - yyyy-MM-dd HH.mm.ss.txt after the time it was started; the newest is the one in use. Four app settings control the log:

Log.FileLogLevel

The level of detail: Debug, Info, Warn, Error, Fatal or None. Debug logs every CTI message, and is for diagnosis; the installed level is Info. In the log, Info lines are labelled TRACE, as in the other QMS services' logs.

Log.RolloverInterval

Daily or Hourly: when to start a new file, at the first line written after midnight or after each hour. Hourly keeps files small when logging at Debug on a busy contact center. (Minutely is accepted, for testing.)

Log.MaxLogDays

Log files older than this many days are deleted. 0 turns the clean-up off.

Log.ArchiveLogDays

Log files older than this many days are zipped, by day, into the folder’s archive subfolder. 0 turns archiving off.

The clean-up runs when the service starts and daily just after midnight. Like the clean-up of the Call Recording Service, the Data Service and the Media Processing Service, it covers every log file in the folder, not only the Connector’s, so on a server running several of them the shortest setting applies. They are installed with the same values, 30 and 7 days; the other services' are set with the QMS Configuration tool.

<add key="Log.FileLogLevel" value="Info" />
<add key="Log.RolloverInterval" value="Daily" />
<add key="Log.MaxLogDays" value="30" />
<add key="Log.ArchiveLogDays" value="7" />

Three app settings affect the content of the log entries:

CiscoUCCEConnectorService.LogMsgHexOnCapture

true or false. If true, CTI server messages are logged on receipt, before they are queued for processing. The message is logged as hex and includes the CTI message header.

CiscoUCCEConnectorService.LogMsgHexOnProcessing

true or false. If true, CTI server messages are logged as they are taken from the queue for processing. The message is logged as hex and excludes the CTI message header.

CiscoUCCEConnectorService.ShallowMsgLogging

true or false. If true, CTI message logging is limited to the header contents (message type and length); the details of messages that have handlers are not logged, and the messages are not parsed in depth. This setting applies only when the mode is Log.

For example:

<add key="CiscoUCCEConnectorService.LogMsgHexOnCapture" value="false" />
<add key="CiscoUCCEConnectorService.LogMsgHexOnProcessing" value="true" />
<add key="CiscoUCCEConnectorService.ShallowMsgLogging" value="false" />