Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Panel

On This Page:

Table of Contents
minLevel2

Related Pages:

How Revive Adserver evaluates the order of delivery

...

rules.

When more than one delivery limitation rule is in use, both AND and OR options can be used to affect the order that delivery limitations rules are evaluated.

...


...


Operator Precedence

Revive Adserver supports the following client delivery limitationsnumerous delivery rules for banners:

...

Supported in Revive Adserver 4.0 and greater.

Limit when a banner can be displayed based on the user's browser - that is, if the user's browser is (or is not) one of the browser(s) and/or browser version(s) selected from the supported list.

For example (see below), limit a banner to only be able to be displayed when the user is using Microsoft IE as a browser:

Image Removed

For example (see below), limit a banner to only be able to be displayed when the user is using Microsoft IE 11 or above as a browser:

Image Removed

Client - Browser (Legacy)

Supported in Revive Adserver 4.0 and greater.

A legacy option which provides partial backwards compatibility for the Client - Browser delivery limitation for users upgrading to Revive Adserver 4.0 and later from a version prior to Revive Adserver 4.0. Please do not use this delivery limitation when creating a new browser-based delivery limitation in Revive Adserver 4.0 and later - use the Client - Browser Version type (above) - as this limitation type will eventually be deprecated from Revive Adserver.

For users who have upgraded from a version prior to Revive Adserver 4.0, any delivery limitations for banners that used the Client - Browser delivery limitation (below) will be converted to this type. However, users should be aware that only Chrome, Firefox, Internet Explorer, Safari and Opera browser types are supported following on from upgrading to Revive Adserver 4.0.

Any delivery limitations for other old and unlikely to be used browser types will be dropped on upgrading.

 

Client - Browser

Supported in versions prior to Revive Adserver 4.0.

Limit when a banner can be displayed based on the user's browser - that is, if the user's browser is (or is not) one of the browser(s) selected from the supported list.

For example (see below), limit a banner to only be able to be displayed when the user is using Microsoft IE as a browser:

Image Removed

Client - Domain

Limit when a banner can be displayed based on the domain that the user is visiting from - that is, if the user's domain is (or is not) as specified (by exact domain name, simple "contains" search matching, or regular expression). The user's domain is obtained by performing a reverse-DNS lookup of the user's IP address.

For example (see below), limit a banner to only be able to be displayed when the user's IP address correctly resolves using reverse-DNS to a domain that contains the string "big-isp" (e.g. "client12345.big-isp.com"):

Image Removed

Client - IP Address

Limit when a banner can be displayed based on the IP address that the user is visiting from - that is, if the user's IP address is (or is not) as specified (by exact IP address, by IP address range using wildcards or by IP address range via a subnet mask).

For example (see below), set a banner to not be able to be displayed when the user's IP address is 127.0.0.1:

Image Removed

For example (see below), set a banner to not be able to be displayed when the user's IP address is in the range 127.0.0.1 to 127.0.0.254:

Image Removed

For example (see below), set a banner to not be able to be displayed when the user's IP address is in the range 127.0.0.1 to 127.0.0.254:

Image Removed

Client - Language

Limit when a banner can be displayed based on the user's configured language - that is, if the user's browser is (or is not) configured to report that the user's language is one of the language(s) selected from the supported list.

For example (see below), limit a banner to only be able to be displayed when the user's browser is either configured to report that the user's language is Albania, or Basque:

Image Removed

Client - Operating System Version

Supported in Revive Adserver 4.0 and greater.

Limit when a banner can be displayed based on the user's operating system - that is, if the user's operating system is (or is not) one of the operating system(s) and/or operating system version(s) selected from the supported list.

For example (see below), limit a banner to only be able to be displayed when the user is using Mac OSX as their operating system:

Image Removed

For example (see below), limit a banner to only be able to be displayed when the user is using Mac OSX 10 or above as their operating system:

Image Removed

Client - Operating System (Legacy)

Supported in Revive Adserver 4.0 and greater.

A legacy option which provides partial backwards compatibility for the Client - Operating System delivery limitation for users upgrading to Revive Adserver 4.0 and later from a version prior to Revive Adserver 4.0. Please do not use this delivery limitation when creating a new operating system-based delivery limitation in Revive Adserver 4.0 and later - use the Client - Operating System Version type (above) - as this limitation type will eventually be deprecated from Revive Adserver.

For users who have upgraded from a version prior to Revive Adserver 4.0, any delivery limitations for banners that used the Client - Operating System delivery limitation (below) will be converted to this type. However, users should be aware that only Windows 7, Windows XP, Windows 2000, Linux, FreeBSD, Solaris and Mac OSX operating systems are supported following on from upgrading to Revive Adserver 4.0.

Any delivery limitations for other old and unlikely to be used operating systems will be dropped on upgrading.

Client - Operating System

Supported in versions prior to Revive Adserver 4.0.

Limit when a banner can be displayed based on the user's operating system - that is, if the user's operating system is (or is not) one of the operating system(s) selected from the supported list.

For example (see below), limit a banner to only be able to be displayed when the user is using Mac OSX as their operating system:

Image Removed

Client - Useragent

Limit when a banner can be displayed based on the user's browser "Useragent" string - that is, if the user's browser "Useragent" string is (or is not) as specified (by exact string, simple "contains" search matching, or regular expression). 

For example (see below), limit a banner to only be able to be displayed when the user has a browser with "Useragent" string that matches a regular expression of "fire.*" (that is, for example, "fire", "firefox", "firefly", etc.):

...

Whenever more than one delivery rule is used for a single banner, it is possible to use either the logical AND or OR option to define how the delivery rules are applied. For example:

Image Added

Revive Adserver's logical operators are applied as PHP logical operators, where AND takes precedence over OR.

So, for the above example, this means that the banner will deliver if:

  • The client browser is any version of Internet Explorer
  • OR
  • The client language is English AND the day of the week is a weekday.

Non-Trivial Ordering

The fact that Revive Adserver applies the AND and OR logical operators in the same order as PHP means that it is non-trivial to apply the logical operators in reverse order. For example, say that the desire is to deliver a banner when:

  • The client browser is any version of Internet Explorer OR the client language is English
  • AND
  • The day of the week is a weekday.

In this case, a potential solution is to duplicate one of the delivery rules:

Image Added

This is evaluated as:

  • The client browser is any version of Internet Explorer AND the day of the week is a weekday
  • OR
  • The client language is English AND the day of the week is a weekday.

This is, logically, the same as the original requirement, but expressed in a slightly more complex way.

Delivery Rule Sets

While duplication of delivery rules is a potential solution to altering the default precedence ordering of delivery rules, this can quickly become complex and difficult to understand if there are more than just a few delivery rules.

In this case, it generally becomes far simpler to use delivery rule sets.

Revive Adserver evaluates each delivery rule set as an independent unit of delivery rules. Therefore, it would be possible to create a delivery rule set called "Internet Explorer OR English" (for example), with the following delivery rules:

  • The client browser is any version of Internet Explorer OR the client language is English

This delivery rule set could then be combined with the other delivery rule:

  • Internet Explorer OR English (i.e. the Delivery Rule Set)
  • AND
  • The day of the week is a weekday.

Revive Adserver will, in this case, firstly evaluate the delivery rule set, and determine if the browser is Internet Explorer OR if the client language is English. If either one of these is true, then the delivery rule set will be considered as okay, and Revive Adserver will then evaluate if it is a weekday. Again, if so, then both delivery rules (the delivery rule set and the day of the week) will be valid, so the banner will deliver.

In this case, the use of the delivery rule set has meant that the OR operator has effectively been applied (within the delivery rule set) first, and then the result is then applied with the AND operator - which is the reverse of the default operator precedence that would have otherwise been applied without the delivery rule set.