Client Data Sheet

PACE is a general purpose campaign engine for mobile phone handsets and is supported on a range of Symbian based operating systems.

The client is fully programmable through the use of general purpose campaigns. This data sheet provides a non-exhaustive list of capabilities.

Operating Systems

The PACE client is supported on:

We are actively porting the client to other handset operating systems.

Evaluators in Rules

The following is a non-exhaustive list of the evaluators supported in PACE rules:

Basic Types
Boolean, Integer, String and Float types are inferred through usage.
Flow Control
Branch (i.e. IF, THEN, ELSE), While and ForEach entry in a Table.
Boolean Comparators
EqualTo, NotEqualTo, GreaterThan, LessThan, GreaterThanOrEqualTo, LessThanOrEqualTo comparators can be tested against Boolean, Integer, String and Float types. Case insensitive tests are also supported for String types

Events in Rules

Subscriptions to a a wide variety of handset events are supported including:

APN_OPEN and APN_CLOSE
A device Access Point was opened or closed.
BATTERY
The handset battery changed state, e.g. it was placed on a charger or its charge state changed.
CHANNEL_SMS
Register for notifications about the delivery of directed SMS messages to a particular channel ID.
FOCUS and FOCUS_EVENT
General purpose window focus notifications as well as notifications about a specific window UID.
GPS
The handset GPS changed state, location changed, etc.
NETWORK_INFO
Register for notifications about the availability of network information.
NETWORK_REG
Register for notifications about the network registration state.
SMS
Register for notifications about the delivery of new SMS messages.
TIME_EVENT
Register for a notification at a specific date/time.
UI Events
An active view can register for key press or touch events and can bind callback functions to particular keys.
VOICE
Register for notifications about voice calls on the device.

Operations

The list of evaluators supported by the client is large and so the following list has been abridged in order to give a sense of what can be achieved.

Assignment Operations
Variables can be assigned using using a name, value pair. Variables can be written to persistent storage. Persistence stores are supported on a per-channel basis and are deleted automatically when the channel is deleted. The client also supports variable introspection and iteration for transient variables.
String Operations
STR_COMPARE, STR_CUT, STR_FIND, STR_LENGTH, STR_MATCH, STR_REPLACEALL STR_TRIM, STR_TO_UPPER and STR_TO_LOWER operations are supported.
Mathematical Operations
The standard set of mathematical operations is supported on arbitrary precision integer and floating point types. The following functions are also provided for floating point operations: MATH_SIN, MATH_COS, MATH_TAN, MATH_ASIN, MATH_ACOS, MATH_ATAN, MATH_FRAC, MATH_SQRT, MATH_LOG, MATH_LN and MATH_EXP.
GPS and Location
Support is provided for GPS LATITUDE, LONGITUDE, ALTITUDE, H_ACCURACY and V_ACCURACY. In addition, functions are provided to CALCULATE_DISTANCE and CALCULATE_BEARING. Location may also be determined from Network (i.e. Cell Id) parameters.
Network
Current handset network information is available through the following functions: ACCESS (i.e. GSM, UMTS etc), MODE (registration mode, e.g. on home network), MCC, MNC, AREA_CODE, DISPLAY_TAG, SHORT_NAME, LONG_NAME, SID and more...
Voice
Provides access to the state of the handset voice line(s) as follows: STATE, REMOTE_STATE, DIRECTION, IN_NUMBER, IN_TYPE, IN_PLAN, OUT_NUMBER, OUT_TYPE, OUT_PLAN.
Messaging
Provides access to the handset inbox status including unread message counts for SMS, MMS and Email. Table access is also provided to the device SMS db.
Call Log
Provides missed call counts. Table access is also provided to the device Call Log.
Handset Properties
Accessors are provided to many handset properties including: IMEI, HANDSET_MAKE, HANDSET_MODEL MACHINE_UID PLATFORM_VERSION FIRMWARE_VERSION SCREEN_WIDTH, SCREEN_HEIGHT, CLIENT_VERSION (of the PACE client) and, IMSI (from which the home network can be determined).
Date and Time Functions
A wide range of date and time functions are supported including conversions to any time zone, as well as calculating the difference between two times and formatting a date/time string.
Table Lookup Functions
Table lookup functions allow a rule to perform a lookup against, iterate through, a system or user defined Table. Updates are supported for user defined tables.

Actions

An action is usually performed in response to user input from a Focused or Popup view. The following list gives an indication of the click-through options available to campaign designers.

Call
Call a used defined function.
CopyFile
Copy a file, possibly from the protected PACE channel storage area to a public directory.
Dial
Initiate a voice call.
Hangup
Hangup an active voice call.
Install/Update/Uninstall
Apply the given action to a content channel.
InstallSIS
Install the given application.
Launch
Launch an application.
Log
Log a message to the debug log (debug builds only).
SendSMS
Send an SMS either silently, or by launching the system SMS editor.
SendMMS and SendEmail
Send an MMS or Email.
ShowView
Show (replace or pop onto the view stack) a view element making it visible to the user.
Set
Set a variable.

Multimedia

Various handset databases are exposed as

Audio / Video Playback
The handset multimedia framework is exposed so that a view can play any content type supported by the handset, including RTSP streams.
Audio Recording
Audio recording is supported.

Device Databases

Various handset databases are exposed as Tables which can be queried using rules. The following device databases are provided in read-only mode:

Access Points
All of the Access Points configured on the handset can be queried using this Table. Columns include name, status (i.e. is the Access Point open), type (i.e. Internet/WAP/both), bearertype (i.e. GPRS, WLAN, etc.).
Applications
The list of installed applications on the handset can be queried using this Table. Columns include: fullname, caption and UID. Views may also retrieve the icon associated with an app on the device.
Call Log
The calllogDb database Table includes information on calls made to and from the handset.
Contacts
The contactsDb exposes the handset contacts database in a Table. Columns include: name, surname, phone (primary), address, etc. In addition, extended fields in the DB can be queried by their UID.
Fonts
The fontDb contains a list of all of the fonts installed on the handset as well as various supporting information on each font.
SMS Inbox
The smsDb represents the handset Inbox. It contains from, body, unread and time fields.
Time Zones
The system Time Zone and Time Zone Cities databases are exposed through the timezoneDb and TimeZoneCities Tables.

Top of Page.