|
|
Awarenex:
Awareness and Communication for Mobile Users
The aim of the system code-named Awarenex is to help members of
distributed work groups stay in close contact with each other, even when they are mobile. The
interface helps users answer the question "What is the best way to make contact right
now?" To make that contact, Awarenex provides an integrated interface to communication
resources (instant messaging, telephony, e-mail, and on-line calendar browsing) to help
establish contact.
The Awarenex user interface is tailored for each
client device (desktop computer, wireless Palm, RIM Blackberry, telephone) while
providing the same core functionality on each platform. The desktop client is
designed to be left open on the desktop for continual monitoring. The handheld
clients are designed for mobile operation where users only periodically glance
at the interface. And the speech interface enables occassional access from any
telephone. The main components in the Awarenex graphical clients are:
-
Contact List: a selected list of colleagues for which awareness
information is provided and through which you can easily establish contact with them.
-
Contact Locator: upon selecting a particular colleague, more detailed
communication activity information and access to communication resources are presented.
-
Communication Resources: interfaces to use instant messaging, e-mail,
telephone, and calendar.
Contact List
The Contact List displays selected colleagues, their locale, and their awareness
information. The Contact List tries to address the question of whether people are
available for communication. In the images below showing the Contact List displayed
on a desktop computer, Palm Pilot, and RIM Blackberry device, activity icons show if
the user is currently engaged in any communication activities.
For example, the icon with the lightening bolt indicates a user is actively engaged
in an instant message conversation. A telephone icon indicates that the person is
currently talking on the telephone. A clock icon denotes a current calendar
appointment. If a user is not actively using any device, an indication of how long
since the most recent activity is given in parentheses (e.g., computer idle time or
when a cell phone was last used).
Contact Locator
Selecting an entry in the Contact List brings up the Contact Locator, which
provides more detailed awareness information and presents options for contacting that person.
For example, the display shows the text of the person's next calendar appointment and
their idle or logged out time on all of their devices. A locale name is highlighted in
green or bolded to indicate Awarenex's best guess about how to contact someone. All
options are available, however, allowing the user to make the final judgement.
Communication Resources
From the Contact Locator, users can select which kind of
communication to initiate. In some cases, the device being used can handle the communication
directly. For example, it's possible to send an e-mail or instant message from a Palm. To place
a call from a Palm, the Palm sends your phone number and the number of the person you wish to
call to the Awarenex server, which will then ring your phone and make the connection with the
other person.
Speech Access from the Telephone
A speech interface provides the Awarenex capabilities to users
calling in over the phone without any handheld device. For example, if a user calls your phone
and you do not pick up, she could identify herself as an Awarenex user and go through the
following dialog:
Awarenex: Tom is not answering. Would you like to leave a voice-mail, send a page, or
check his status?
Caller: Check his status.
Awarenex: Tom has an appointment all day that says `working at home.' He is currently
active on his home computer. What next?
Caller: Call him at home.
Awarenex: Calling Tom at home...
Awarenex would then transfer the call. Without a display, Awarenex
does not provide all the awareness information about a user, but can provide the most relevant
information to suggest the best alternative to making contact with the intended recipient. The
awareness information can also be used to automatically route calls, if the user so chooses.
Awarenex Implementation
Awarenex is a centralized system consisting of a set of
device-dependent clients and two main server components. For handheld devices, we used the Palm
Vx connected to a Novatel Minstrel wireless modem using OmniSky service and the RIM Blackberry
957 using the Mobitex pager network. The main server components are the Awarenex server and the
telephone Dialer server.
The Awarenex server receives activity and communication information
from the clients and from the Dialer server, and propagates those changes to appropriate
clients. The Dialer server consists of a multi-line telephone switch and is responsible for
placing calls between Awarenex users and providing a speech interface to the Awarenex service.
When a user places a telephone call through Awarenex, the Awarenex server connects to the Dialer
server which places the call and tracks the status (e.g., busy, answer, hang-up) of both parties
of the call. The Awarenex server propagates each party's status as activity information for that
person. The Dialer server also acts as a client of the Awarenex server, providing a speech
interface to users who call into the Dialer server.
Two additional server-side components are used to communicate with
the wireless handheld clients. A proxy to the Awarenex server resides outside our firewall and
is connected to our internal server via an encrypted tunnel. The Palm client connects directly
to this server proxy using a TCP/IP connection. The second additional server-side component is a
transcoder that translates messages between the server proxy and the Mobitex pager network
gateway (used by the RIM Blackberry).
All the server components are written in the JavaTM programming
language. The RIM and Palm clients are written in C++. The components communicate using an ASCII
message protocol. The protocol and distribution architecture are designed to support scalability
through the use of multiple Awarenex servers.
Project Status
The Awarenex prototype demonstrates:
-
Providing interfaces on multiple platforms for interacting with a
centralized resource of dynamically changing awareness information
-
Coordinating actions among different devices operating on independent
networks
-
Integrating telephony with other communication resources and
providing awareness of telephony activity
At this point we are field testing the desktop client on both PC and UNIX platforms.
In addition, we have working prototypes of the Palm and RIM clients
as well as the speech interface.
For more information about Awarenex, refer to:
|