Cisco Cisco Computer Telephony Integration Option 8.5 Developer's Guide
8-31
CTI OS Developer’s Guide for Cisco Unified ICM/Contact Center Enterprise & Hosted
Release 7.5(1)
Chapter 8 Session Object
Notes On Message Filters
In this form, the filter expression must start with a key name (key). Following the key must be an equal
sign (=), and at least one value (value1) must be specified. Optionally, additional values (e.g.
value2, …
sign (=), and at least one value (value1) must be specified. Optionally, additional values (e.g.
value2, …
) for the same key might be specified (optional parts of the expression are indicated with
square brackets []). This will be interpreted as a logical OR among all of the values specified for that
key, e.g. if any of those values is found, the condition will be satisfied.
key, e.g. if any of those values is found, the condition will be satisfied.
For example, a filter expression with one key and multiple values might look like the following:
sFilterExpression = “AgentID=22866, 22867, 22868”
The interpretation of this filter is to match on any event with AgentID of 22866, 22867, or 22868.
Combining Filters
Multiple filters expressions (as described above) can be combined to create more complex expressions.
The general form allows for any number of filters to be concatenated using the semicolon (;), which
produces a logical AND effect.
The general form allows for any number of filters to be concatenated using the semicolon (;), which
produces a logical AND effect.
For example, a filter expression with multiple keys, each with multiple values might look like the
following:
following:
sFilterExpression =
“AgentID=22866, 22867, 22868; SkillGroupNumber=20, 21”
The interpretation of this filter is to match on any event with AgentID of 22866, 22867, or 22868 and
with SkillGroupNumber of 20 or 21.
with SkillGroupNumber of 20 or 21.
Filtering for Specific Events
One of the most powerful types of event filters for custom applications are filters that work on specific
events.
events.
An example of such an application would be an “all agents” real time display, listing the agent states of
all known agents at the call center, using the eAgentStateEvent to receive agent updates. To request
specific events, use the MessageID keyword, and the numeric value for the event ID that you wish to
receive:
all known agents at the call center, using the eAgentStateEvent to receive agent updates. To request
specific events, use the MessageID keyword, and the numeric value for the event ID that you wish to
receive:
‘ register for all eAgentStateEvents
sFilterExpression = “MessageID = 30”
It is also possible to obtain multiple specific events. For example, consider an all calls real-time display
application, using eCallBeginEvent and eCallEndEvent to add or remove calls from a view:
application, using eCallBeginEvent and eCallEndEvent to add or remove calls from a view:
‘ register for all eCallBeginEvents, eCallEndEvents
sFilterExpression = “MessageID = 23, 24”
Events Not Allowed In Filter Expressions
The following events cannot be used in filter expressions:
•
ePreLogoutEvent
•
ePostLogoutEvent
•
eOnConnection
•
eOnConnectionClosed