Skill Expressions
All skill expression definitions are strings, but the strings have a particular format. A skill expression is a set of conditional expressions that are linked together via logic operators. When a skill expression contains more than one conditional expression, the conditional expression to the left has precedence over the conditional expression to the right. Parentheses can be used to overrule this precedence. Your can use an ECMAScript logic expression to create the skill expression string. The following are the parts of the skill expression:
-
Conditional Expression — This is an expression that produces a result of true or false. This expression has the following format and elements: dataname coperator value — for example; english >3
-
dataname — This element is a string which represents the name of these data types:
-
Skill — This is the name of a skill defined in the configuration layer. Skill names are limited to alphanumeric characters and underscores. The name cannot begin with a digit. The name of a skill cannot exceed 126 characters in length.
-
Statistic — This is the name of a statistic defined in the configuration layer. The statistic name in a skill expression can be any agent statistic used in the function SData. It must be written in the format: $(statisticname). For example; $(StatAgentLoggedIn)=1
-
coperator — This is the operator to be used to evaluate the condition. The following are the operators that are supported:
-
!= — The meaning or support is different depending on the data type:
-
Skill — not equal to the indicated level value
-
Statistic — not equal to the indicated statistic value
-
< (<) — The meaning or support is different depending on the data type:
-
Skill — less than the indicated level value. Note: depending on how you use this operator, it may result in including agents that do not have the skill at all (skillname = 0). For example, with English <= 8, the queue functional module includes all agents with the English skill less than 8, and also agents with no English skill at all.
-
Statistic — less than the indicated statistic value
-
<= (<=) — The meaning or support is different depending on the data type:
-
Skill — less than or equal to the indicated level value
-
Statistic — less than or equal to the indicated statistic value
-
= — The meaning or support is different depending on the data type:
-
Skill — equal to the indicated level value
-
Statistic — equal to the indicated statistic value
-
> (>) — The meaning or support is different depending on the data type:
-
Skill — greater than the indicated level value
-
Statistic — greater than the indicated statistic value
-
>= (>=) — The meaning or support is different depending on the data type:
-
Skill — greater than or equal to the indicated level value
-
Statistic — greater than or equal to the indicated statistic value
-
value — This is a value of the same data type as the dataname element. The value must already evaluate to an integer. Floating point numbers are not supported. There are different limitations depending on the data type:
-
Skill value — This value represents the level of skill — for example, is the agent's English skill level greater than 3 (English > 3). An agent can be excluded from a skill by setting that agent's skill level for that skill to zero in the configuration layer (that is, english =0).
-
Statistic — This value represents the value of the statistic — for example, has the agent been ready longer than 20 seconds ($(StatTimeInReadyState) > 20).
-
Logic Operators: The logic operators are a way to evaluate multiple conditional expressions together. The following logic operators are supported: AND(&- &) and OR (|). The AND and OR logic operators have the same priority. For example; "English > 3 & $(StatAgentLoggedIn)=1"
A skill expression has the following limitations:
-
The maximum size of an overall skill expression (as text) is 10239 bytes.
-
A skill expression should have no more than 25 constructions, such as English > 1.