deviceCharacteristic

  • Delivery Manager name: Device Characteristics
  • Criteria version: The latest rule format supports the deviceCharacteristic criteria v1.3.

Match various aspects of the device or browser making the request. Based on the value of the characteristic option, the expected value is either a boolean, a number, or a string, possibly representing a version number. Each type of value requires a different field.

OptionTypeDescriptionRequires
characteristicenum

Aspect of the device or browser to match.

{"displayType":"enum","options":["BRAND_NAME","MODEL_NAME","MARKETING_NAME","IS_WIRELESS_DEVICE","IS_TABLET","DEVICE_OS","DEVICE_OS_VERSION","MOBILE_BROWSER","MOBILE_BROWSER_VERSION","RESOLUTION_WIDTH","RESOLUTION_HEIGHT","PHYSICAL_SCREEN_HEIGHT","PHYSICAL_SCREEN_WIDTH","COOKIE_SUPPORT","AJAX_SUPPORT_JAVASCRIPT","FULL_FLASH_SUPPORT","ACCEPT_THIRD_PARTY_COOKIE","XHTML_SUPPORT_LEVEL","IS_MOBILE"],"tag":"select"}
BRAND_​NAME

String value such as Samsung or Apple.

MODEL_​NAME

String value such as SCH-I110.

MARKETING_​NAME

String value such as Samsung Illusion.

IS_​WIRELESS_​DEVICE

Boolean value.

IS_​TABLET

Boolean value, subset of IS_​MOBILE.

DEVICE_​OS

String value.

DEVICE_​OS_​VERSION

Version string value.

MOBILE_​BROWSER

String value.

MOBILE_​BROWSER_​VERSION

Version string value.

RESOLUTION_​WIDTH

Number of pixels wide.

RESOLUTION_​HEIGHT

Number of pixels high.

PHYSICAL_​SCREEN_​HEIGHT

Number of millimeters high.

PHYSICAL_​SCREEN_​WIDTH

Number of millimeters wide.

COOKIE_​SUPPORT

Boolean value.

AJAX_​SUPPORT_​JAVASCRIPT

Boolean value.

FULL_​FLASH_​SUPPORT

Boolean value.

ACCEPT_​THIRD_​PARTY_​COOKIE

Boolean value.

XHTML_​SUPPORT_​LEVEL

Numeric value.

IS_​MOBILE

Boolean value.

string​Match​Operatorenum

When the characteristic expects a string value, set this to MATCHES_​ONE_​OF to match against the string​Value set, otherwise set to DOES_​NOT_​MATCH_​ONE_​OF to exclude that set of values.

characteristic is either: BRAND_​NAME, MODEL_​NAME, MARKETING_​NAME, DEVICE_​OS, MOBILE_​BROWSER, PREFERRED_​MARKUP, HTML_​PREFERRED_​DTD, XHTML_​PREFERRED_​CHARSET, VIEWPORT_​WIDTH, XHTMLMP_​PREFERRED_​MIME_​TYPE, AJAX_​PREFERRED_​GEOLOC_​API, XHTML_​FILE_​UPLOAD, XHTML_​SUPPORTS_​IFRAME, FLASH_​LITE_​VERSION
{"displayType":"enum","options":["MATCHES_ONE_OF","DOES_NOT_MATCH_ONE_OF"],"tag":"select"}
{"if":{"attribute":"characteristic","op":"in","value":["BRAND_NAME","MODEL_NAME","MARKETING_NAME","DEVICE_OS","MOBILE_BROWSER","PREFERRED_MARKUP","HTML_PREFERRED_DTD","XHTML_PREFERRED_CHARSET","VIEWPORT_WIDTH","XHTMLMP_PREFERRED_MIME_TYPE","AJAX_PREFERRED_GEOLOC_API","XHTML_FILE_UPLOAD","XHTML_SUPPORTS_IFRAME","FLASH_LITE_VERSION"]}}
MATCHES_​ONE_​OF

The value is included as a string​Value.

DOES_​NOT_​MATCH_​ONE_​OF

The value is not included as a string​Value.

numeric​Match​Operatorenum

When the characteristic expects a numeric value, compares the specified numeric​Value against the matched client.

characteristic is either: RESOLUTION_​WIDTH, RESOLUTION_​HEIGHT, PHYSICAL_​SCREEN_​HEIGHT, PHYSICAL_​SCREEN_​WIDTH, XHTML_​SUPPORT_​LEVEL, MAX_​IMAGE_​WIDTH, MAX_​IMAGE_​HEIGHT, VIEWPORT_​INITIAL_​SCALE
{"displayType":"enum","options":["IS","IS_NOT","IS_LESS_THAN","IS_LESS_THAN_OR_EQUAL","IS_MORE_THAN","IS_MORE_THAN_OR_EQUAL"],"tag":"select"}
{"if":{"attribute":"characteristic","op":"in","value":["RESOLUTION_WIDTH","RESOLUTION_HEIGHT","PHYSICAL_SCREEN_HEIGHT","PHYSICAL_SCREEN_WIDTH","XHTML_SUPPORT_LEVEL","MAX_IMAGE_WIDTH","MAX_IMAGE_HEIGHT","VIEWPORT_INITIAL_SCALE"]}}
IS

Values are equal.

IS_​NOT

Values are not equal.

IS_​LESS_​THAN

The numeric​Value is less than the matched client.

IS_​LESS_​THAN_​OR_​EQUAL

The numeric​Value is less than or equal to the matched client.

IS_​MORE_​THAN

The numeric​Value is more than the matched client.

IS_​MORE_​THAN_​OR_​EQUAL

The numeric​Value is more than or equal to the matched client.

version​Match​Operatorenum

When the characteristic expects a version string value, compares the specified version​Value against the matched client, using the following operators: IS, IS_​MORE_​THAN_​OR_​EQUAL, IS_​MORE_​THAN, IS_​LESS_​THAN_​OR_​EQUAL, IS_​LESS_​THAN, IS_​NOT.

characteristic is either: DEVICE_​OS_​VERSION, MOBILE_​BROWSER_​VERSION
{"displayType":"enum","options":["IS","IS_NOT","IS_LESS_THAN","IS_LESS_THAN_OR_EQUAL","IS_MORE_THAN","IS_MORE_THAN_OR_EQUAL"],"tag":"select"}
{"if":{"attribute":"characteristic","op":"in","value":["DEVICE_OS_VERSION","MOBILE_BROWSER_VERSION"]}}
IS

The version​Value equals the matched client.

IS_​NOT

The version​Value does not equal the matched client.

IS_​LESS_​THAN

The version​Value is less than the matched client.

IS_​LESS_​THAN_​OR_​EQUAL

The version​Value is less than or equal to the matched client.

IS_​MORE_​THAN

The version​Value is more than the matched client.

IS_​MORE_​THAN_​OR_​EQUAL

The version​Value is more than or equal to the matched client.

boolean​Valueboolean

When the characteristic expects a boolean value, this specifies the value.

characteristic is either: IS_​WIRELESS_​DEVICE, IS_​TABLET, COOKIE_​SUPPORT, AJAX_​SUPPORT_​JAVASCRIPT, FULL_​FLASH_​SUPPRT, DUAL_​ORIENTATION, ACCEPT_​THIRD_​PARTY_​COOKIE, GIF_​ANIMATED, JPG, PNG, XHTML_​SUPPORTS_​TABLE_​FOR_​LAYOUT, XHTML_​TABLE_​SUPPORT, PDF_​SUPPORT, IS_​MOBILE
{"displayType":"boolean","tag":"input","type":"checkbox"}
{"if":{"attribute":"characteristic","op":"in","value":["IS_WIRELESS_DEVICE","IS_TABLET","COOKIE_SUPPORT","AJAX_SUPPORT_JAVASCRIPT","FULL_FLASH_SUPPRT","DUAL_ORIENTATION","ACCEPT_THIRD_PARTY_COOKIE","GIF_ANIMATED","JPG","PNG","XHTML_SUPPORTS_TABLE_FOR_LAYOUT","XHTML_TABLE_SUPPORT","PDF_SUPPORT","IS_MOBILE"]}}
string​Valuestring array

When the characteristic expects a string, this specifies the set of values.

string​Match​Operator is either: MATCHES_​ONE_​OF, DOES_​NOT_​MATCH_​ONE_​OF
{"displayType":"string array","tag":"input","todo":true}
{"if":{"attribute":"stringMatchOperator","op":"in","value":["MATCHES_ONE_OF","DOES_NOT_MATCH_ONE_OF"]}}
numeric​Valuenumber

When the characteristic expects a numeric value, this specifies the number.

numeric​Match​Operator is either: IS, IS_​NOT, IS_​LESS_​THAN, IS_​LESS_​THAN_​OR_​EQUAL, IS_​MORE_​THAN, IS_​MORE_​THAN_​OR_​EQUAL
{"displayType":"number","tag":"input","type":"number"}
{"if":{"attribute":"numericMatchOperator","op":"in","value":["IS","IS_NOT","IS_LESS_THAN","IS_LESS_THAN_OR_EQUAL","IS_MORE_THAN","IS_MORE_THAN_OR_EQUAL"]}}
version​Valuestring

When the characteristic expects a version number, this specifies it as a string.

version​Match​Operator is either: IS, IS_​NOT, IS_​LESS_​THAN, IS_​LESS_​THAN_​OR_​EQUAL, IS_​MORE_​THAN, IS_​MORE_​THAN_​OR_​EQUAL
{"displayType":"string","tag":"input","type":"text"}
{"if":{"attribute":"versionMatchOperator","op":"in","value":["IS","IS_NOT","IS_LESS_THAN","IS_LESS_THAN_OR_EQUAL","IS_MORE_THAN","IS_MORE_THAN_OR_EQUAL"]}}
match​Case​Sensitiveboolean

Sets a case-sensitive match for the string​Value field.

string​Match​Operator is either: MATCHES_​ONE_​OF, DOES_​NOT_​MATCH_​ONE_​OF
{"displayType":"boolean","tag":"input","type":"checkbox"}
{"if":{"attribute":"stringMatchOperator","op":"in","value":["MATCHES_ONE_OF","DOES_NOT_MATCH_ONE_OF"]}}
match​Wildcardboolean

Allows wildcards in the string​Value field, where ? matches a single character and * matches zero or more characters.

string​Match​Operator is either: MATCHES_​ONE_​OF, DOES_​NOT_​MATCH_​ONE_​OF
{"displayType":"boolean","tag":"input","type":"checkbox"}
{"if":{"attribute":"stringMatchOperator","op":"in","value":["MATCHES_ONE_OF","DOES_NOT_MATCH_ONE_OF"]}}