Cisco Cisco Computer Telephony Integration Option 8.5 Developer's Guide
4-25
CTI OS Developer’s Guide for Cisco Unified ICM/Contact Center Enterprise & Hosted
Release 7.5(1)
Chapter 4 Building Your Application
Connecting to the CTI OS Server
When to Use Monitor Mode
Applications that need to receive all events that CTI OS Server publishes, or a specified subset of those
events should use Monitor Mode. Monitor mode applications may receive events for calls, multiple
agents, or statistics. The session receives specific events based on the event filter specified when setting
the session to Monitor mode.
events should use Monitor Mode. Monitor mode applications may receive events for calls, multiple
agents, or statistics. The session receives specific events based on the event filter specified when setting
the session to Monitor mode.
Caution
Monitor mode, as the name implies, is intended for use in applications that passively listen to CTIOS
server events. Monitor mode is not intended for use in applications that actively control the state of calls
or agents. Such applications include but are not limited to the following:
- Applications that log in agents and change their state
- Applications that make or receive calls and change their state
- Applications that silent monitor agents
server events. Monitor mode is not intended for use in applications that actively control the state of calls
or agents. Such applications include but are not limited to the following:
- Applications that log in agents and change their state
- Applications that make or receive calls and change their state
- Applications that silent monitor agents
Caution
When a Monitor mode session is initialized, the CTI OS Server performs a CPU intensive sequence
of operations to provide the application with a snapshot of the state of the system. A large number of
monitor-mode applications connecting to CTI OS server at the same time, such as in a fail-over
scenario, may cause significant performance degradation on CTI OS Server. Therefore, minimize the
number of Monitor mode applications connecting to CTI OS Server to two (2).
of operations to provide the application with a snapshot of the state of the system. A large number of
monitor-mode applications connecting to CTI OS server at the same time, such as in a fail-over
scenario, may cause significant performance degradation on CTI OS Server. Therefore, minimize the
number of Monitor mode applications connecting to CTI OS Server to two (2).
Warning
Note that the button enablement feature can only be used in agent mode sessions and are not intended
for monitor mode applications.
for monitor mode applications.
Monitor Mode Filters
Overview
To set a connection to Monitor mode, you must create a filter that specifies which events to monitor over
that connection. The filter is a String; that String is the value for the
CtiOs_IKeywordIDs.CTIOS_FILTER key in an Arguments instance. That Arguments instance is the
argument for the SetMessageFilter() method.
that connection. The filter is a String; that String is the value for the
CtiOs_IKeywordIDs.CTIOS_FILTER key in an Arguments instance. That Arguments instance is the
argument for the SetMessageFilter() method.
Filter String Syntax
The filter String you create to specify events to monitor must adhere to a specific syntax to accurately
instruct the CTI OS Server to send the correct events.
instruct the CTI OS Server to send the correct events.
The general syntax for the filter String is as follows:
“key1=value1, value2, value3;key2=value4, value5, value6”
Note
The filter String may also contain an asterisk (*), which is used as a wildcard to indicate any possible
value. A prefix can be used in addition to * to narrow the results. For example, using 10* will match
1001, 1002, 10003.However, CTI OS ignores any characters that follow the asterisk. For example,
using 10*1will match both 1001and 1002.
value. A prefix can be used in addition to * to narrow the results. For example, using 10* will match
1001, 1002, 10003.However, CTI OS ignores any characters that follow the asterisk. For example,
using 10*1will match both 1001and 1002.