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),WhileandForEachentry in a Table.- Boolean Comparators
EqualTo,NotEqualTo,GreaterThan,LessThan,GreaterThanOrEqualTo,LessThanOrEqualTocomparators can be tested againstBoolean,Integer,StringandFloattypes. Case insensitive tests are also supported forStringtypes
Events in Rules
Subscriptions to a a wide variety of handset events are supported including:
APN_OPENandAPN_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.
FOCUSandFOCUS_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_REPLACEALLSTR_TRIM,STR_TO_UPPERandSTR_TO_LOWERoperations 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_LNandMATH_EXP. - GPS and Location
- Support is provided for GPS
LATITUDE,LONGITUDE,ALTITUDE,H_ACCURACYandV_ACCURACY. In addition, functions are provided toCALCULATE_DISTANCEandCALCULATE_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,SIDand 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.
Tableaccess is also provided to the device SMS db. - Call Log
- Provides missed call counts.
Tableaccess is also provided to the device Call Log. - Handset Properties
- Accessors are provided to many handset properties including:
IMEI,HANDSET_MAKE,HANDSET_MODELMACHINE_UIDPLATFORM_VERSIONFIRMWARE_VERSIONSCREEN_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.
SendMMSandSendEmail- 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 includename,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,captionandUID. Views may also retrieve the icon associated with an app on the device. - Call Log
- The
calllogDbdatabaseTableincludes information on calls made to and from the handset. - Contacts
- The
contactsDbexposes the handset contacts database in aTable. Columns include:name,surname,phone(primary),address, etc. In addition, extended fields in the DB can be queried by their UID. - Fonts
- The
fontDbcontains a list of all of the fonts installed on the handset as well as various supporting information on each font. - SMS Inbox
- The
smsDbrepresents the handset Inbox. It containsfrom,body,unreadandtimefields. - Time Zones
- The system Time Zone and Time Zone Cities databases are exposed through the
timezoneDbandTimeZoneCitiesTables.
