The basic definition of a Rule is a combination of zero or more Conditions (a fact to check) and at least one Action (an instruction to follow).
This can be approximately expressed as:
IF CONDITION IS TRUE THEN PERFORM ACTION
A Rule with no Conditions will always perform the Action associated with the Rule.
Conditions are defined as either client-side Conditions or server-side Conditions. Client-side Conditions are evaluated using data gathered on the client-side. If a Rule with client-side Conditions is run more than once on a page, the client-side Condition is evaluated using fresh data each time. Server-side Conditions are evaluated using data gathered from the server-side. In order to maximize performance, the server is only contacted for data at the time of page load. This means that if a Rule using server-side Conditions is run more than once on a page, the server-side Conditions are evaluated using the data gathered at page load.
Examples of Conditions available within Engagement Engine Editor are:
Does the visitor have cookies enabled on their browser?
Is the visitor’s IP address within a specified range of IP addresses?
Is today’s date after a specified date?
Has the visitor previously been on a call with a contact center agent?
An Action is an instruction that must be followed. Examples available within Engagement Engine Editor are:
Display a Call Invitation.
Run a custom JavaScript function.
Populate a custom data field with information from a specified HTML page element.
This basic concept of a Rule can then be extended to include multiple Conditions and multiple Actions. This can be expressed as:
IF CONDITION(S) ARE TRUE THEN PERFORM ACTION(S)
If a Rule contains multiple Conditions, then a decision must be made as to whether all Conditions must be met to return a True value, or if a True value is returned if any of the Conditions are met.
This can be expressed as:
IF CONDITION1 AND|OR CONDITION2 IS TRUE THEN PERFORM ACTION1 AND ACTION2
The final stage of complexity is the concept of False Actions. A False Action is an instruction to follow if the Conditions are not met. This can be expressed as:
IF CONDITION IS TRUE THEN PERFORM ACTION ELSE PERFORM FALSE ACTION
The most common use of a Rule is in choosing whether or not to display a Call or Chat invitation to a visitor. For example, you may wish to display a Call invitation whenever a visitor has been on a particular webpage for 60 seconds. In this case, the Condition is that the visitor has been on a webpage for 60 seconds, and the Action is to display a Call invitation.
This can be expressed as:
IF TIMEONPAGE >= 60 SECONDS THEN DISPLAY CALL INVITATION
The inclusion of multiple Conditions, Actions, and False Actions means that there is a high level of scope for complexity when designing Rules. Engagement Engine Editor is designed to provide an intuitive user interface for the process of designing Rules.