Attention Manager
[System]


Detailed Description

Introduction

The Attention Manager provides a mechanism to applications and and other system services to alert the device user to various events or alarms such as an incoming phone call,a clock alarm, or a calendar event alarm. It controls how these alerts are presented to the user and in what order they are present, specifically on the primary display via the Attention Alert Dialog.

In addition to the dialog, there are several other facilities that an attention alert may activiate such as the Attention Alert Status Gadget and the Attention Alert List. The status gadget will be present when there alerts present on the alert list. When a new alert arrives, the status gadget becomes activated, which depending on the customization, usually results in the gadget starting to blink. The alert list is display by the user selecting the alert status gadget if configured for 5way nav mode or by tapping on the status bar and then tapping on the alert icon in the status selector if finger touch mode is in use.

What is an attention alert?

An attention alert is a collection of properties containing some control values, some layout properties and alert specific data.

The alert is uniquely identified by the tuple of the alert source id (which is usually the bundle id of the application posting the alert), an alert type name, and a string handle. It is through this tuple that an alert is posted, updated and deleted. The delete API does support some wildcard values in order to delete a group of alerts.


Modules

 Attention API
 Attention Property Preferences
 Attention Properties

Attention Alert Type Names

These are some sytem wide common alert type names.

All alert type definitions should follow the naming convention of the form ALP_ALERT_TYPE_xxxx and, in most cases, can be defined within the feature include files and do not need to be defined in this file.

Naming Scheme

The alert type name is meant to be hierarchical in order to group alert types with similar characteristics together.

For instance all the alerts that are of an alarm type natural are grouped under "/alp/alarm" such as the clock, calendar, and tasks alarms. Similarly, messaging applications such as IM, SMS+ and email should develop a hierachy under the /alp/messaging alert type for new messages, account status, and buddy status/presence.

Unfortunately, it will not always be obvious how to do this grouping, such as in the case of mobile alerts which don't share a lot of charactistics in come.

#define ALP_ALERT_TYPE_ALARM   ALP_ALERT_TYPE_ALP "/alarm"
 The alert type group for all ALP alarms.
#define ALP_ALERT_TYPE_ALARM_ANNIVERSARY   ALP_ALERT_TYPE_ALARM_CALENDAR "/anniversary"
 The alert type group for the ALP anniversary alarm.
#define ALP_ALERT_TYPE_ALARM_BIRTHDAY   ALP_ALERT_TYPE_ALARM_CALENDAR "/birthday"
 The alert type group for the ALP birthday alarm.
#define ALP_ALERT_TYPE_ALARM_CALENDAR   ALP_ALERT_TYPE_ALARM "/calendar"
 The alert type group for all ALP calendar alarms.
#define ALP_ALERT_TYPE_ALARM_CLOCK   ALP_ALERT_TYPE_ALARM "/clock"
 The alert type group for the ALP clock alarm.
#define ALP_ALERT_TYPE_ALARM_TASK   ALP_ALERT_TYPE_ALARM "/task"
 The alert type group for the ALP task alarm.
#define ALP_ALERT_TYPE_ALARM_WAKEUP   ALP_ALERT_TYPE_ALARM "/wakeup"
 The alert type group for the ALP wakeup alarm.
#define ALP_ALERT_TYPE_ALP   "/alp"
 The top of the ALP namespace for alert type names.
#define ALP_ALERT_TYPE_DOWNLOAD   ALP_ALERT_TYPE_ALP "/download"
 The alert type group for all ALP download alerts.
#define ALP_ALERT_TYPE_DOWNLOAD_STATUS   ALP_ALERT_TYPE_DOWNLOAD "/status"
 The alert type group for the ALP download status alert.
#define ALP_ALERT_TYPE_MESSAGING   ALP_ALERT_TYPE_ALP "/messaging"
 The alert type group for all ALP messaging (IM,SMS+,email) alerts.
#define ALP_ALERT_TYPE_SECURITY   ALP_ALERT_TYPE_ALP "/security"
 The alert type group for all ALP security alerts.


Define Documentation

#define ALP_ALERT_TYPE_ALARM   ALP_ALERT_TYPE_ALP "/alarm"
 

The alert type group for all ALP alarms.

#define ALP_ALERT_TYPE_ALARM_ANNIVERSARY   ALP_ALERT_TYPE_ALARM_CALENDAR "/anniversary"
 

The alert type group for the ALP anniversary alarm.

#define ALP_ALERT_TYPE_ALARM_BIRTHDAY   ALP_ALERT_TYPE_ALARM_CALENDAR "/birthday"
 

The alert type group for the ALP birthday alarm.

#define ALP_ALERT_TYPE_ALARM_CALENDAR   ALP_ALERT_TYPE_ALARM "/calendar"
 

The alert type group for all ALP calendar alarms.

#define ALP_ALERT_TYPE_ALARM_CLOCK   ALP_ALERT_TYPE_ALARM "/clock"
 

The alert type group for the ALP clock alarm.

#define ALP_ALERT_TYPE_ALARM_TASK   ALP_ALERT_TYPE_ALARM "/task"
 

The alert type group for the ALP task alarm.

#define ALP_ALERT_TYPE_ALARM_WAKEUP   ALP_ALERT_TYPE_ALARM "/wakeup"
 

The alert type group for the ALP wakeup alarm.

#define ALP_ALERT_TYPE_ALP   "/alp"
 

The top of the ALP namespace for alert type names.

#define ALP_ALERT_TYPE_DOWNLOAD   ALP_ALERT_TYPE_ALP "/download"
 

The alert type group for all ALP download alerts.

#define ALP_ALERT_TYPE_DOWNLOAD_STATUS   ALP_ALERT_TYPE_DOWNLOAD "/status"
 

The alert type group for the ALP download status alert.

#define ALP_ALERT_TYPE_MESSAGING   ALP_ALERT_TYPE_ALP "/messaging"
 

The alert type group for all ALP messaging (IM,SMS+,email) alerts.

#define ALP_ALERT_TYPE_SECURITY   ALP_ALERT_TYPE_ALP "/security"
 

The alert type group for all ALP security alerts.


Generated on Wed Jul 30 07:06:44 2008 by Doxygen 1.4.6 for ALP SDK + Hiker Documentation

Copyright © 1999-2008 ACCESS CO., LTD. All rights reserved.