Note: Descriptions are shown in the official language in which they were submitted.
CA 02687922 2009-12-04
1
SYSTEM AND METHOD FOR PROVIDING TRAFFIC NOTIFICATIONS TO
MOBILE DEVICES
[0001] The following relates generally to location based services (LBS) for
mobile
devices, and in particular to systems and methods for providing traffic
notifications to
mobile devices.
[0002] Rush hour traffic volume, road construction, vehicular collisions, and
roadside
emergencies are just a few examples of the various events and circumstances
that can
cause traffic congestion. Due to the nature of such events traffic congestion
can be
difficult to predict. Although radio, television, and online news sources can
provide
traffic information gathered using various techniques such as highway cameras,
phone-in
traffic tips, satellite imagery, and road sensors; this information is not
always current or
entirely accurate.
[0003] Old or inaccurate traffic information can be troublesome for various
reasons.
For example, an alternate traffic route, which may be less convenient, is
chosen due to a
traffic report indicating that a traffic problem exists, which problem has
since been
alleviated. This can cause a commuter to take a less optimal route, which can
waste fuel,
cause them to be late, and cause congestion on side-roads. Conversely, a
traffic report
may indicate that the commuter's route is clear, when in fact an event has, in
the
meantime, created a traffic jam, since the traffic report is based on
information that is not
current.
GENERAL
[0004] There may be provided a method, computer readable medium, and
notification
system for providing traffic notifications. The notification system may be
configured to
comprise the computer readable medium, which may comprise computer executable
instructions for obtaining a speed measurement from each of a plurality of
mobile devices
within a congested zone; using the speed measurements to identify traffic
events within
the congested zone; and if a traffic event is identified, sending a
notification to at least one
mobile device approaching the congested zone to provide an alert pertaining to
the traffic
event.
[0005] There may also be provided a method, computer readable medium, and
mobile
device configured for providing traffic notifications. The mobile device may
be
CA 02687922 2009-12-04
2
configured to comprise the computer readable medium, which may comprise
computer
executable instructions for receiving from a traffic notification system, a
notification
comprising an alert pertaining to a traffic event, the traffic event having
been identified by
the notification system using speed measurements obtained from each of a
plurality of
mobile devices with a congested zone, the traffic event being associated
within the
congested zone; providing the alert using an output mechanism of the mobile
device.
BRIEF DESCRIPTION OF THE DRAWINGS
[0006] Embodiments will now be described by way of example only with reference
to the appended drawings wherein:
[0007] Figure 1 is a schematic diagram illustrating an exemplary embodiment of
a
traffic notification system providing a traffic notification to one mobile
device according
to data obtained from a plurality of other mobile devices.
[0008] Figure 2 is a system diagram illustrating the environment in which data
items
are pushed from a host system to a mobile device.
[0009] Figure 3 is a schematic diagram of a mobile device and a display screen
therefor.
[0010] Figure 4 is a schematic diagram of another mobile device and a display
screen
therefor.
[0011] Figure 5 is a block diagram of an exemplary embodiment of a mobile
device.
[0012] Figure 6 is a block diagram of an exemplary embodiment of a
communication
subsystem component of the mobile device of Figure 5.
[0013] Figure 7 is a screen shot of an exemplary home screen displayed by a
mobile
device.
[0014] Figure 8 is a block diagram illustrating exemplary ones of the other
software
applications and components shown in Figure 5.
[0015] Figure 9 is a schematic diagram showing an example configuration for
the
embodiment of Figure 1 when implemented with the wireless router shown in
Figure 2.
[0016] Figure 10 is a flow diagram illustrating exemplary operations performed
by a
traffic notification system for preparing and providing a traffic notification
to a mobile
device.
[0017] Figure 11 is a screen shot illustrating a user interface (UI) for
providing an
email alert according to a received notification in one embodiment.
CA 02687922 2009-12-04
3
100181 Figure 12 is a screen shot illustrating a UI for providing a simple
message
service (SMS) alert according to a received notification in one embodiment.
[0019] Figure 13 is a screen shot illustrating a UI for providing an
interactive map
alert according to a received notification in one embodiment.
[0020] Figure 14 is a pictorial schematic diagram showing one example
configuration
for the other system shown in Figure 9.
[0021] Figure 15 is a screen shot illustrating a UI for enabling selection of
a traffic
update option in a menu accessed through a map application for initiating
participation in
a traffic notification system in one embodiment.
100221 Figure 16 is a flow diagram illustrating exemplary operations for
initiating
participation in a traffic notification system.
100231 Figure 17a is a screen shot illustrating an exemplary follow-up email
notification to the email notification shown in Figure 11.
[0024] Figure 17b is a screen shot illustrating an exemplary further follow-up
email
notification to the email notifications shown in Figures 11 and 17a indicating
that the
traffic congestion has been resolved.
[0025] Figure 18 is a flow diagram illustrating exemplary operations for
querying gas
station locations according to a detected fuel level.
[0026] Figure 19 is a flow diagram illustrating an alternative notification
preparation
routine to that exemplified in Figure 10.
DESCRIPTION OF PREFERRED EMBODIMENTS
[0027] It will be appreciated that for simplicity and clarity of illustration,
where
considered appropriate, reference numerals may be repeated among the figures
to indicate
corresponding or analogous elements. In addition, numerous specific details
are set forth
in order to provide a thorough understanding of the embodiments described
herein.
However, it will be understood by those of ordinary skill in the art that the
embodiments
described herein may be practiced without these specific details. In other
instances, well-
known methods, procedures and components have not been described in detail so
as not to
obscure the embodiments described herein. Also, the description is not to be
considered as
limiting the scope of the embodiments described herein.
[0028] It has been recognized that data pertaining to the location and speed
of a
plurality of mobiles devices can be used to generate dynamic notifications for
other
CA 02687922 2009-12-04
4
mobile devices that may be affected by traffic issues ascertained from the
data provided
by the plurality of mobile devices.
[0029] Turning now to Figure 1, an example zone of traffic is shown, which
comprises
a traffic "problem" hereinafter named a congested zone 2. The congested zone 2
comprises a "left-bound" lane of traffic 4 (i.e. with respect to the page) and
a "right-
bound" lane of traffic 6. It can be seen that the congested zone 2 represents
a common
zone of traffic congestion caused by any one or more traffic events. Another
zone of
traffic is also shown in Figure 1 and, in this example, represents an upstream
zone 8,
which refers to any roadway that is: approaching, expected to connect, lead
into, or is
simply an upstream portion of a same roadway that includes the congested zone
2. In this
example, the upstream zone 8 thus feeds traffic into the congested zone 2 such
that at least
one mobile device 100 approaching the congested zone 2 can be determined.
[0030] In the example shown in Figure 1, the congested zone 2 at a particular
point in
time comprises three vehicles travelling left-bound 4, namely vehicles l OB, l
OC, and l OD;
and comprises a single vehicle I OE travelling right-bound 6. For the present
discussion,
the congestion occurs in the left-bound lane only whereas vehicle l0E is
moving at a
normal rate of speed in the right-bound lane. The upstream zone 8, at the same
point in
time, comprises a single vehicle l0A travelling left-bound 4 towards the
congested zone 2.
Each vehicle l0A-l0E comprises a respective data communications device,
hereinafter
referred to as a mobile device 100A-100E, which travels with the corresponding
vehicle
l0A-l0E in which it currently resides. As will be explained below, the mobile
device 100
can be any suitable device capable of communicating via a wireless network
200. The
mobile devices 100 utilize such capability to provide device data 78 to a
dynamic traffic
notification system 80, via the wireless network 200. The device data 78
comprises
information related to the location and speed of the vehicle 10, as measured
by, or
obtained by (or from) another source, the mobile device 10 located and
travelling within
the vehicle 10. For example, mobile device 100B in vehicle l OB may utilize a
GPS
function to measure the speed of the vehicle l OB and the current location,
prepare device
data 78, and send the device data 78 to the dynamic traffic notification
system 80,
hereinafter referred to as "the notification system 80" for brevity.
[0031] As will also be explained below, the notification system 80 uses device
data 78
from a plurality of mobile devices 100 to dynamically determine traffic
conditions, such
CA 02687922 2009-12-04
as the development of the congested zone 2, in order to prepare a notification
84 that can
be sent to a mobile device 100 that is expected to be headed towards the
congested zone 2.
[0032] To aid the reader in understanding at least one environment in which
the
notification system 80 may be implemented, an example system comprising the
wireless
5 network 200 and other components that may be used to effect communications
between
mobile devices 100 and the notification system 80 will now be described.
[0033] As noted above, data communication devices will be commonly referred to
as
"mobile devices". Examples of applicable mobile devices include pagers,
cellular phones,
cellular smart-phones, portable gaming and entertainment devices, wireless
organizers,
personal digital assistants, computers, laptops, handheld wireless
communication devices,
wirelessly enabled notebook computers and the like.
[0034] One exemplary mobile device is a two-way communication device with
advanced data communication capabilities including the capability to
communicate with
other mobile devices or computer systems through a network of transceiver
stations. The
mobile device may also have the capability to allow voice communication.
Depending on
the functionality provided by the mobile device, it may be referred to as a
data messaging
device, a two-way pager, a cellular telephone with data messaging
capabilities, a wireless
Internet appliance, or a data communication device (with or without telephony
capabilities).
[0035] The mobile device may be one that is used in a system that is
configured for
continuously routing all forms of pushed information from a host system to the
mobile
device. One example of such a system will now be described.
[0036] Referring now to Figure 2, an example system diagram showing the
redirection
of user data items (such as message A or C) from a corporate enterprise
computer system
(host system) 250 to the user's mobile device 100 via a wireless router 26 is
provided. The
wireless router 26 provides the wireless connectivity functionality as it acts
to both
abstract most of the wireless network's 200 complexities, and it also
implements features
necessary to support communicating with and pushing data to, the mobile device
100.
Although not shown, a plurality of mobile devices may access data from the
host system
250. In this example, message A in Figure 2 represents an internal message
sent from, e.g.
a desktop computer within the host system 250, to any number of server
computers in the
corporate network 260 (e.g. LAN), which may, in general, include a database
server, a
calendar server, an E-mail server or a voice-mail server.
CA 02687922 2009-12-04
6
[0037] Message C in Figure 2 represents an external message from a sender that
is not
directly connected to the host system 250, such as the user's mobile device
100, some
other user's mobile device (not shown), or any user connected to the public or
private
network 224 (e.g. the Internet). Message C could be e-mail, voice-mail,
calendar
information, database updates, web-page updates or could even represent a
command
message from the user's mobile device 100 to the host system 250. The host
system 250
may comprise, along with the typical communication links, hardware and
software
associated with a corporate enterprise computer network system, one or more
wireless
mobility agents, a TCP/IP connection, a collection of datastores, (for example
a data store
for e-mail could be an off-the-shelf mail server like Microsoft Exchange
Server or Lotus
Notes Server), all within and behind a corporate firewall.
[0038] The mobile device 100 may be adapted for communication within wireless
network 200 via wireless links, as required by each wireless network 200 being
used. As
an illustrative example of the operation for a wireless router 26 shown in
Figure 2,
consider a data item A, repackaged in outer envelope B (the packaged data item
A now
referred to as "data item (A)") and sent to the mobile device 100 from an
Application
Service Provider (ASP) in the host system 250. Within the ASP is a computer
program,
similar to a wireless mobility agent, running on any computer in the ASP's
environment
that is sending requested data items from a data store to a mobile device 100.
The mobile-
destined data item (A) is routed through the network 224, and through a
firewall
protecting the wireless router 26.
100391 Although the above describes the host system 250 as being used within a
corporate enterprise network environment, this is just one embodiment of one
type of host
service that offers push-based messages for a handheld wireless device that is
capable of
notifying and preferably presenting the data to the user in real-time at the
mobile device
when data arrives at the host system.
[0040] By offering a wireless router 26 (sometimes referred to as a "relay"),
there are
a number of major advantages to both the host system 250 and the wireless
network 200.
The host system 250 in general runs a host service that is considered to be
any computer
program that is running on one or more computer systems. The host service is
said to be
running on a host system 250, and one host system 250 can support any number
of host
services. A host service may or may not be aware of the fact that information
is being
channelled to mobile devices 100. For example an e-mail or message program 138
(see
CA 02687922 2009-12-04
7
Figure 5) might be receiving and processing e-mail while an associated program
(e.g. an
e-mail wireless mobility agent) is also monitoring the mailbox for the user
and forwarding
or pushing the same e-mail to a wireless device 100. A host service might also
be
modified to prepare and exchange information with mobile devices 100 via the
wireless
router 26, like customer relationship management software. In a third example,
there
might be a common access to a range of host services. For example a mobility
agent might
offer a Wireless Access Protocol (WAP) connection to several databases.
[0041] As discussed above, a mobile device 100 may be a hand-held two-way
wireless
paging computer as exemplified in Figures 3-8, a wirelessly enabled palm-top
computer, a
mobile telephone with data messaging capabilities, a PDA with mobile phone
capabilities,
a wirelessly enabled laptop computer, a vending machine with an associated OEM
radio
modem, a wirelessly-enabled heart-monitoring system or, alternatively, it
could be other
types of mobile data communication devices capable of sending and receiving
messages
via a network connection, e.g. a portable gaming device. Although the system
is
exemplified as operating in a two-way communications mode, certain aspects of
the
system could be used in a "one and one-half' or acknowledgment paging
environment, or
even with a one-way paging system. In such limited data messaging
environments, the
wireless router 26 still could abstract the mobile device 100 and wireless
network 200,
offer push services to standard web-based server systems and allow a host
service in a host
system 250 to reach the mobile device 100 in many countries.
[0042] The host system 250 shown herein has many methods when establishing a
communication link to the wireless router 26. For one skilled in the art of
data
communications the host system 250 could use connection protocols like TCP/IP,
X.25,
Frame Relay, ISDN, ATM or many other protocols to establish a point-to-point
connection. Over this connection there are several tunneling methods available
to package
and send the data, some of these include: HTTP/HTML, HTTP/XML,
HTTP/Proprietary,
FTP, SMTP or some other proprietary data exchange protocol. The type of host
systems
250 that might employ the wireless router 26 to perform push could include:
field service
applications, e-mail services, stock quote services, banking services, stock
trading
services, field sales applications, advertising messages and many others. This
wireless
network 200 abstraction is made possible by the wireless router 26, which
implements this
routing and push functionality. The type of user-selected data items being
exchanged by
the host could include: E-mail messages, calendar events, meeting
notifications, address
CA 02687922 2009-12-04
8
entries, journal entries, personal alerts, alarms, warnings, stock quotes,
news bulletins,
bank account transactions, field service updates, stock trades, heart-
monitoring
information, vending machine stock levels, meter reading data, GPS data, etc.,
but could,
alternatively, include any other type of message that is transmitted to the
host system 250,
or that the host system 250 acquires through the use of intelligent agents,
such as data that
is received after the host system 250 initiates a search of a database or a
website or a
bulletin board.
[0043] The wireless router 26 provides a range of services to make creating a
push-
based host service possible. These networks may comprise: (1) the Code
Division
Multiple Access (CDMA) network, (2) the Groupe Special Mobile or the Global
System
for Mobile Communications (GSM) and the General Packet Radio Service (GPRS),
and
(3) the upcoming third-generation (3G) and fourth generation (4G) networks
like EDGE,
UMTS and HSDPA, LTE, Wi-Max etc. Some older examples of data-centric networks
include, but are not limited to: (1) the Mobitex Radio Network ("Mobitex") and
(2) the
DataTAC Radio Network ("DataTAC").
100441 To be effective in providing push services for host systems 250, the
wireless
router 26 may implement a set of defined functions. It can be appreciated that
one could
select many different hardware configurations for the wireless router 26,
however, many
of the same or similar set of features would likely be present in the
different
configurations.
[0045] Referring to Figures 3 and 4, one embodiment of a mobile device 100a is
shown in Figure 3, and another embodiment of a mobile device 100b is shown in
Figure 4.
It will be appreciated that the numeral "100" will hereinafter refer to any
mobile device
100, including the embodiments 100a and 100b, those embodiments enumerated
above or
otherwise. It will also be appreciated that a similar numbering convention may
be used
for other general features common between Figures 3 and 4 such as a display
12, a
positioning device 14, a cancel or escape button 16, a camera button 17, and a
menu or
option button 24.
[0046] The mobile device 100a shown in Figure 3 comprises a display 12a and
the
cursor or view positioning device 14 shown in this embodiment is a trackball
14a.
Positioning device 14 may serve as another input member and is both rotational
to provide
selection inputs to the main processor 102 (see Figure 5) and can also be
pressed in a
direction generally toward housing to provide another selection input to the
processor 102.
CA 02687922 2009-12-04
9
Trackball 14a permits multi-directional positioning of the selection cursor 18
(see Figure
7) such that the selection cursor 18 can be moved in an upward direction, in a
downward
direction and, if desired and/or permitted, in any diagonal direction. The
trackball 14a is
in this example situated on the front face of a housing for mobile device 100a
as shown in
Figure 3 to enable a user to manoeuvre the trackball 14a while holding the
mobile device
100a in one hand. The trackball 14a may serve as another input member (in
addition to a
directional or positioning member) to provide selection inputs to the
processor 102 and
can preferably be pressed in a direction towards the housing of the mobile
device 100b to
provide such a selection input.
[0047] The display 12 may include a selection cursor 18 that depicts generally
where
the next input or selection will be received. The selection cursor 18 may
comprise a box,
alteration of an icon or any combination of features that enable the user to
identify the
currently chosen icon or item. The mobile device 100a in Figure 3 also
comprises a
programmable convenience button 15 to activate a selected application such as,
for
example, a calendar or calculator. Further, mobile device 100a includes an
escape or
cancel button 16a, a camera button 17a, a menu or option button 24a and a
keyboard 20.
The camera button 17 is able to activate photo-capturing functions when
pressed
preferably in the direction towards the housing. The menu or option button
241oads a
menu or list of options on display 12a when pressed. In this example, the
escape or cancel
button 16a, the menu option button 24a, and keyboard 20 are disposed on the
front face of
the mobile device housing, while the convenience button 15 and camera button
17a are
disposed at the side of the housing. This button placement enables a user to
operate these
buttons while holding the mobile device 100 in one hand. The keyboard 20 is,
in this
embodiment, a standard QWERTY keyboard.
[0048] The mobile device 100b shown in Figure 4 comprises a display 12b and
the
positioning device 14 in this embodiment is a trackball 14b. The mobile device
100b also
comprises a menu or option button 24b, a cancel or escape button 16b, and a
camera
button 17b. The mobile device 100b as illustrated in Figure 4, comprises a
reduced
QWERTY keyboard 22. In this embodiment, the keyboard 22, positioning device
14b,
escape button 16b and menu button 24b are disposed on a front face of a mobile
device
housing. The reduced QWERTY keyboard 22 comprises a plurality of multi-
functional
keys and corresponding indicia including keys associated with alphabetic
characters
CA 02687922 2009-12-04
corresponding to a QWERTY array of letters A to Z and an overlaid numeric
phone key
arrangement.
[0049] It will be appreciated that for the mobile device 100, a wide range of
one or
more positioning or cursor/view positioning mechanisms such as a touch pad, a
5 positioning wheel, a joystick button, a mouse, a touchscreen, a set of arrow
keys, a tablet,
an accelerometer (for sensing orientation and/or movements of the mobile
device 100
etc.), or other whether presently known or unknown may be employed. Similarly,
any
variation of keyboard 20, 22 may be used. It will also be appreciated that the
mobile
devices 100 shown in Figures 3 and 4 are for illustrative purposes only and
various other
10 mobile devices 100 are equally applicable to the following examples. For
example, other
mobile devices 100 may include the trackball 14b, escape button 16b and menu
or option
button 24 similar to that shown in Figure 4 only with a full or standard
keyboard of any
type. Other buttons may also be disposed on the mobile device housing such as
colour
coded "Answer" and "Ignore" buttons to be used in telephonic communications.
In
another example, the display 12 may itself be touch sensitive thus itself
providing an input
mechanism in addition to display capabilities. Furthermore, the housing for
the mobile
device 100 should not be limited to the single-piece configurations shown in
Figures 3 and
4, other configurations such as clamshell or "flip-phone" configurations are
also
applicable.
[0050] Now, to aid the reader in understanding the structure of the mobile
device 100
and how it communicates with the wireless network 200, reference will now be
made to
Figures 5 through 8.
[0051] Referring first to Figure 5, shown therein is a block diagram of an
exemplary
embodiment of a mobile device 100. The mobile device 100 comprises a number of
components such as a main processor 102 that controls the overall operation of
the mobile
device 100. Communication functions, including data and voice communications,
are
performed through a communication subsystem 104. The communication subsystem
104
receives messages from and sends messages to a wireless network 200. In this
exemplary
embodiment of the mobile device 100, the communication subsystem 104 is
configured in
accordance with the Global System for Mobile Communication (GSM) and General
Packet Radio Services (GPRS) standards, which is used worldwide. Other
communication
configurations that are equally applicable are the 3G and 4G networks such as
EDGE,
UMTS and HSDPA, LTE, Wi-Max etc. New standards are still being defined, but it
is
CA 02687922 2009-12-04
11
believed that they will have similarities to the network behaviour described
herein, and it
will also be understood by persons skilled in the art that the embodiments
described herein
are intended to use any other suitable standards that are developed in the
future. The
wireless link connecting the communication subsystem 104 with the wireless
network 200
represents one or more different Radio Frequency (RF) channels, operating
according to
defmed protocols specified for GSM/GPRS communications.
[0052] The main processor 102 also interacts with additional subsystems such
as a
Random Access Memory (RAM) 106, a flash memory 108, a display 110, an
auxiliary
input/output (I/O) subsystem 112, a data port 114, a keyboard 116, a speaker
118, a
microphone 120, a GPS receiver 121, short-range communications 122, and other
device
subsystems 124.
[00531 Some of the subsystems of the mobile device 100 perform communication-
related functions, whereas other subsystems may provide "resident" or on-
device
functions. By way of example, the display 110 and the keyboard 116 may be used
for both
communication-related functions, such as entering a text message for
transmission over
the network 200, and device-resident functions such as a calculator or task
list.
100541 The mobile device 100 can send and receive communication signals over
the
wireless network 200 after required network registration or activation
procedures have
been completed. Network access is associated with a subscriber or user of the
mobile
device 100. To identify a subscriber, the mobile device 100 may use a
subscriber module
component or "smart card" 126, such as a Subscriber Identity Module (SIM), a
Removable User Identity Module (RUIM) and a Universal Subscriber Identity
Module
(USIM). In the example shown, a SIM/RUIM/USIM 126 is to be inserted into a
SIM/RUIM/USIM interface 128 in order to communicate with a network. Without
the
component 126, the mobile device 100 is not fully operational for
communication with the
wireless network 200. Once the SIM/RUIM/USIM 126 is inserted into the
SIM/RUIM/USIM interface 128, it is coupled to the main processor 102.
[0055] The mobile device 100 is a battery-powered device and includes a
battery
interface 132 for receiving one or more rechargeable batteries 130. In at
least some
embodiments, the battery 130 can be a smart battery with an embedded
microprocessor.
The battery interface 132 is coupled to a regulator (not shown), which assists
the battery
130 in providing power V+ to the mobile device 100. Although current
technology makes
CA 02687922 2009-12-04
12
use of a battery, future technologies such as micro fuel cells may provide the
power to the
mobile device 100.
100561 The mobile device 100 also includes an operating system 134 and
software
components 136 to 146 which are described in more detail below. The operating
system
134 and the software components 136 to 146 that are executed by the main
processor 102
are typically stored in a persistent store such as the flash memory 108, which
may
alternatively be a read-only memory (ROM) or similar storage element (not
shown).
Those skilled in the art will appreciate that portions of the operating system
134 and the
software components 136 to 146, such as specific device applications, or parts
thereof,
may be temporarily loaded into a volatile store such as the RAM 106. Other
software
components can also be included, as is well known to those skilled in the art.
[0057] The subset of software applications 136 that control basic device
operations,
including data and voice communication applications, may be installed on the
mobile
device 100 during its manufacture. Software applications may include a message
application 138, a device state module 140, a Personal Information Manager
(PIM) 142, a
connect module 144 and an IT policy module 146. A message application 138 can
be any
suitable software program that allows a user of the mobile device 100 to send
and receive
electronic messages, wherein messages are typically stored in the flash memory
108 of the
mobile device 100. A device state module 140 provides persistence, i.e. the
device state
module 140 ensures that important device data is stored in persistent memory,
such as the
flash memory 108, so that the data is not lost when the mobile device 100 is
turned off or
loses power. A PIM 142 includes functionality for organizing and managing data
items of
interest to the user, such as, but not limited to, e-mail, text messages,
instant messages,
contacts, calendar events, and voice mails, and may interact with the wireless
network
200. A connect module 144 implements the communication protocols that are
required
for the mobile device 100 to communicate with the wireless infrastructure and
any host
system 250, such as an enterprise system, that the mobile device 100 is
authorized to
interface with. An IT policy module 146 receives IT policy data that encodes
the IT
policy, and may be responsible for organizing and securing rules such as the
"Set
Maximum Password Attempts" IT policy.
[0058] Other types of software applications or components 139 can also be
installed
on the mobile device 100. These software applications 139 can be pre-installed
applications (i.e. other than message application 138) or third party
applications, which are
CA 02687922 2009-12-04
13
added after the manufacture of the mobile device 100. Examples of third party
applications include games, calculators, utilities, etc.
[0059] The additional applications 139 can be loaded onto the mobile device
100
through at least one of the wireless network 200, the auxiliary I/O subsystem
112, the data
port 114, the short-range communications subsystem 122, or any other suitable
device
subsystem 124.
[0060] The data port 114 can be any suitable port that enables data
communication
between the mobile device 100 and another computing device. The data port 114
can be a
serial or a parallel port. In some instances, the data port 114 can be a USB
port that
includes data lines for data transfer and a supply line that can provide a
charging current to
charge the battery 130 of the mobile device 100.
[0061] For voice communications, received signals are output to the speaker
118, and
signals for transmission are generated by the microphone 120. Although voice
or audio
signal output is accomplished primarily through the speaker 118, the display
110 can also
be used to provide additional information such as the identity of a calling
party, duration
of a voice call, or other voice call related information.
100621 Referring now to Figure 6, an exemplary block diagram of the
communication
subsystem component 104 is shown. The communication subsystem 104 includes a
receiver 150, a transmitter 152, as well as associated components such as one
or more
embedded or internal antenna elements 154 and 156, Local Oscillators (LOs)
158, and a
processing module such as a Digital Signal Processor (DSP) 160. The particular
design of
the communication subsystem 104 is dependent upon the communication network
200
with which the mobile device 100 is intended to operate. Thus, it should be
understood
that the design illustrated in Figure 6 serves only as one example.
[0063] Signals received by the antenna 154 through the wireless network 200
are input
to the receiver 150, which may perform such common receiver functions as
signal
amplification, frequency down conversion, filtering, channel selection, and
analog-to-
digital (A/D) conversion. A/D conversion of a received signal allows more
complex
communication functions such as demodulation and decoding to be performed in
the DSP
160. In a similar manner, signals to be transmitted are processed, including
modulation
and encoding, by the DSP 160. These DSP-processed signals are input to the
transmitter
152 for digital-to-analog (D/A) conversion, frequency up conversion,
filtering,
amplification and transmission over the wireless network 200 via the antenna
156. The
CA 02687922 2009-12-04
14
DSP 160 not only processes communication signals, but also provides for
receiver and
transmitter control. For example, the gains applied to communication signals
in the
receiver 150 and the transmitter 152 may be adaptively controlled through
automatic gain
control algorithms implemented in the DSP 160.
100641 The wireless link between the mobile device 100 and the wireless
network 200
can contain one or more different channels, typically different RF channels,
and associated
protocols used between the mobile device 100 and the wireless network 200. An
RF
channel is a limited resource that must be conserved, typically due to limits
in overall
bandwidth and limited battery power of the mobile device 100.
[0065] When the mobile device 100 is fully operational, the transmitter 152 is
typically keyed or turned on only when it is transmitting to the wireless
network 200 and
is otherwise turned off to conserve resources. Similarly, the receiver 150 may
be
periodically turned off to conserve power until it is needed to receive
signals or
information (if at all) during designated time periods.
[0066] Turning now to Figure 7, the mobile device 100 may display a home
screen 40,
which may be the active screen when the mobile device 100 is powered up or may
be
accessible from other screens. The home screen 40 generally comprises a status
region 44
and a theme background 46, which provides a graphical background for the
display 12.
The theme background 46 displays a series of icons 42 in a predefined
arrangement on a
graphical background. In some themes, the home screen 40 may limit the number
icons
42 shown on the home screen 40 so as to not detract from the theme background
46,
particularly where the background 46 is chosen for aesthetic reasons. The
theme
background 46 shown in Figure 7 provides a grid of icons. It will be
appreciated that
preferably several themes are available for the user to select and that any
applicable
arrangement may be used. One or more of the series of icons 42 is typically a
folder 52
that itself is capable of organizing any number of applications therewithin.
[0067] The status region 44 in this embodiment comprises a date/time display
48. The
theme background 46, in addition to a graphical background and the series of
icons 42,
also comprises a status bar 50. The status bar 50 provides information to the
user based
on the location of the selection cursor 18, e.g. by displaying a name for the
icon 53 that is
currently highlighted.
[0068] An application, such as a maps program 60 (see also Figure 8) may be
initiated
(opened or viewed) from display 12 by highlighting a corresponding icon 53
using the
CA 02687922 2009-12-04
positioning device 14 and providing a suitable user input to the mobile device
100. For
example, maps program 60 may be initiated by moving the positioning device 14
such that
the icon 53 is highlighted by the selection box 18 as shown in Figure 7, and
providing a
selection input, e.g. by pressing the trackball 14b.
5 [0069] Figure 8 shows an example of the other software applications and
components
139 that may be stored on and used with the mobile device 100. Only examples
are
shown in Figure 8 and such examples are not to be considered exhaustive. In
this
example, a global positioning system (GPS) application 54, internet browser
56, simple
message service (SMS) 58, maps program 60 and a profiles application 62 are
shown to
10 illustrate the various features that may be provided by the mobile device
100. The GPS
application 54, in this example, comprises a traffic module 55, which
represents any sub-
program, sub-routine, function or other set of computer executable
instructions for
providing device data 78 to the notification system 80, when such data 78 is
obtained
using the GPS application 54. Also shown in Figure 8 is the message
application 138,
15 which in the following will be referred to as an email application 138 for
clarity. It will be
appreciated that the various applications may operate independently or may
utilize
features of other applications. For example, the GPS application 54 may use
the maps
program 60 for displaying directions to a user.
[0070] Turning now to Figure 9, an exemplary implementation of the
notification
system 80 is shown, wherein the notification system 80 is hosted by the
wireless router 26
described above. In this example, the wireless router 26 is responsible for
routing
messages from and to mobile devices 100A-100E and thus has the ability to
obtain device
data 78 provided by a plurality of such mobile devices 100 in order to prepare
notifications 84 for those plurality of mobile devices 100 and other mobile
devices.
Consistent with Figure 1, the implementation exemplified in Figure 9
illustrates obtaining
device data 78 from each of mobile devices 100B through I OOE and provides a
notification 84 to mobile device 100A. It will be appreciated that the device
data 78 and
notifications 84 may comprise separate and distinct data packages sent using
separate
protocols or may take advantage of existing communication methods such as
email, SMS,
etc.
[0071] The notification system 80, which in this example resides at the
wireless router
26, stores traffic-related data in a traffic database 82. Such traffic-related
data may
comprise any device data 78 obtained from various mobile devices 100, copies
of
CA 02687922 2009-12-04
16
notifications 84 that have already been sent (or are about to be sent - to
facilitate repeated
use of the same notifications 84), and any other information that may be
required to carry
out the delivery of a notification 84 based on the acquisition of device data
78, several
examples of which will be explained below. It will be appreciated that the
traffic database
82 may represent any memory, data store, or storage medium, and may or may not
be
internal to the wireless router 26. For example, the traffic database 82 may
be maintained
by a third party or configured to be an integral component of the notification
system 80.
As such, the configuration shown in Figure 9 is merely for illustrative
purposes and
variations thereof are equally applicable according to the principles
described herein. The
notification system 80 may also have access to a third party source 83 to
obtain additional
data pertaining to traffic events and other location based information. For
example, the
third party source 83 may represent police or emergency crew dispatchers that
provide
more detailed information pertaining to traffic accidents. The third party
source 83 may
also provide information such as the locations of gas stations, tow trucks,
etc. for use in
various embodiments as will be exemplified below. There may be any number of
third
party sources 83 available to the notification system 80 according to the
particular
embodiment.
[0072] Figure 9 also illustrates an example configuration at the location of
the mobile
device 100A. In addition to providing an alert to the user of the mobile
device 100A using
the notification 84 on the mobile device 100A itself, Figure 9 illustrates
that the
notification may be used in other ways. In this example, a copy of the
notification 84' is
provided to an other system 85 through a device interface 86 such that an
alert may be
provided to the user through an output mechanism 88. For example, the vehicle
l0A is
shown as comprising the other system 85, which may represent a vehicle
enterta.inment or
navigation system, a vehicle engine control system, as well as various
dashboard
implemented systems. In this way, the mobile device's access to the
information
comprised in the notification 84 can be shared with other systems in the same
locale as the
mobile device 100A in order to provide a wide range of alert types and to
coordinate with
other sub-systems.
[0073] The configuration shown in Figure 9 can also enable a mobile device 100
without a GPS receiver 121 to utilize location and speed information acquired
by the
vehicle 10, for example through a vehicle navigation system, an on-board-
diagnostics
(OBD) connection or both. As such, the mobile device 100 can also be the
CA 02687922 2009-12-04
17
communication link between a vehicle 10 and the notification system 80 to
accommodate
a wider range of environments and configurations. Also, the mobile device 100
may itself
be integral to the vehicle 10 (not shown), e.g. where the vehicle has a GPS
receiver and
wireless connectivity. It can therefore be appreciated that the principles
described herein
may be applied to a mobile device 100 in any form, including embodiments
wherein the
mobile device 100 is a sub-system of a vehicle 10.
[0074] Turning now to Figure 10, one example illustrating the preparation of a
notification 84 using device data 78 from a plurality of mobile devices 100 is
shown.
Device data 78 from N mobile devices 100, e.g. devices 1, 2, ... , N, is
obtained by the
notification system 80 at 200, which data 78 is then stored in the traffic
database 82. In
the example shown in Figures 1 and 9, device data 78 is obtained from mobile
devices
100A, 100B, 100C, 100D, and 100E. At 202, the device data 78 is then organized
based
on the zone from which it originates and the traffic database is updated. For
example, the
device data 78 from mobile devices 100B-100E would be grouped into one zone,
whereas
the device data 78 from mobile device 100A would be grouped into another zone.
100751 The device data 78 may be stored according to the corresponding mobile
device 100 or may instead be stored according to the current zone. In either
case, the
device data 78 should be time stamped such that a mobile device's movements
can be
tracked between snapshots of data and such that previous notifications and
progress of that
mobile device 100 is known. Also, movements of mobile devices 100 from one
zone to
another should be tracked. In this way, as the mobile device 100 moves
progressively
closer to a congested zone 2, the notifications may be modified to more
intelligently
redirect the mobile device 100. For example, a mobile device 100 that is 20 km
away
from the congested zone 2 may receive a different, less urgent warning, than a
mobile
device 100 that is 5 km away from the congested zone 2 or may be given a
different
suggestion for an alternative route. The combination of location and speed
information,
tracked over time can thus allow the notification system 80 to provide a
cascade of
notifications 84 according to the mobile device's location with respect to the
congested
zone 2.
[0076) The device data 78, thus grouped can then be used to perform a
notification
preparation routine at 204, for each zone at an applicable time. At 206, the
routine 204
determines the speed at which each mobile device 100 and, according to
predetermined
(or user defined) criteria, whether or not such speed is "normal" (as opposed
to an
CA 02687922 2009-12-04
18
anomaly representing traffic congestion) given the location, time of day, etc.
A criterion
such as "Is speed < X km/h" can be used to determine the presence of traffic
congestion
whereby the device data 78 for vehicles 10 having a vehicle speed less than
the threshold
X are selected and can be used in determining traffic congestion. For example,
in Figure
1, vehicles lOB, I OC, and 10D are, in the snapshot shown, travelling at a
relatively low
rate of speed whereas vehicle l0E is travelling at a relatively higher or
"normal" rate of
speed. In this example, the device data 78 for vehicles l OB, l OC, and l OD
would be
chosen in step 206 whereas the device data 78 for vehicle 10E would be
ignored. Other
criteria such as empirically derived information can be used to determine what
constitutes
"normal" traffic. For example, rush hour traffic on certain routes may
experience different
traffic flow than the same route at other times during the day.
100771 At 208, the notification system 80 may then determine if a
predetermined
number of mobile devices 100 have met the criteria applied during step 206
(e.g.
according to threshold A shown in Figure 10). In other words, the notification
system 80
can use a plurality of measurements to confirm that traffic congestion is
present, to avoid
false positives, e.g. where one vehicle is pulling over, exiting a highway or
turning. By
having access to vehicle data 78 for multiple mobile devices 100, the
notification system
80 can better distinguish traffic congestion from anomalies and prepare
dynamic
notifications 84 accordingly.
100781 In one embodiment, the speed measurements that meet the criteria in
step 206
are then be tallied at 208 and compared to threshold A, which may be for
example A = 2.
In such an example, if 3 or more mobile devices 100 are travelling below a
predetermined
speed threshold, then a congested zone 2 is identified - e.g. as shown in
Figure 1. The
notification 84 may then be sent to any number or all connected mobile devices
100 or, as
shown in Figure 10, the notification system 80 may also determine a set of one
or more
upstream mobile devices 100 that are headed to or are within a predetermined
vicinity of
the congested zone 2 at 210. In the present example, upon detecting that
mobile devices
100B, 100C, and 100D form a congested zone 2, and determining that mobile
device
100A is presently in, or headed towards, an upstream zone 8, the notification
system 80
may then identify mobile device 100A as a candidate for receiving a
notification 84.
100791 The notification 84 may then be prepared at 212 and sent to the
candidate
mobile devices 100 at 214. The preparation of the notification 84 at 212 may
include sub-
steps (not shown) of determining, based on information in the traffic database
82, forms of
CA 02687922 2009-12-04
19
communication for the notification 84, and may similarly determine appropriate
content
for a particular type of alert. For example, mobile device 100A may have
selected an
available option to receive an auditory alert rather than a visual alert and
thus the
notification 84 would be prepared accordingly.
[0080] The routine 204 shown in Figure 10 may be executed continuously, semi-
continuously, periodically or according to external events such as the receipt
of a certain
number of device data 78. Also, at 208, if it is determined that there are not
enough speed
measurements to identify a congested zone 2, the traffic database 82 may be
periodically
referenced such that as new device data 78 is received, the notification
system 80 can
dynamically react to changing environments. For example, a first wireless-
enabled mobile
device 100 may enter a traffic jam, which would not trigger the detection of a
congested
zone but as additional mobile devices 100 enter that zone, the traffic jam
would then
trigger. By continually or periodically referencing the incoming device data
78 the traffic
jam can be more quickly detected. This also enables the notification system 80
to avoid
triggering a notification 84 if, for example, the traffic congestion eases a
few seconds later
and no further mobile devices 100 are affected. Figure 10 also illustrates
that the
notification system 80 can be adapted to cover multiple zones and can use any
appropriate
logic to determine which mobile devices 100 (if any) should receive a
notification 84. For
example, mobile device 100C, which is currently in congested zone 2, provides
device
data 78 that enables an alert to be provided to the user of mobile device 100A
but may
also receive another notification 84 (not shown) that alerts the user of
mobile device t OOC
of traffic congestion further down stream, which is determined using device
data 78 from
other mobile devices. In this way, the device data 78 is effectively shared
amongst all
connected mobile devices 100 via the wireless network 200, wireless router 26,
and
notification system 80, the notification system 80 capable of first organizing
and
interpreting the device data 78 to provide dynamic and meaningful alerts for
each mobile
device user. As such, the mobile devices 100 can be used to both give and get
information
related to traffic congestion.
100811 The notification system 80 may also execute different routines 204 for
different
zones, for example, to account for different circumstances. For example,
certain roadways
may be known to have significant slow-downs during rush hour and thus
different
thresholds may apply at different times of the day. In this example, detected
speeds of,
e.g. 40 kph, in a 100 kph zone may not be considered congestion but normal
volume.
CA 02687922 2009-12-04
Turning to Figure 19, an example of a variation of the routine 204 is shown.
In this
variation, the notification system 80, for the particular zone, would first,
at 205, determine
the time at which the device data 78 was collected. In this example, if the
relevant time is
between X and Y, a first set of criteria is used at 206' to select mobile
devices that are
5 considered to not be "normal" (e.g. moving slower than expected). On the
other hand,
outside of this range, a second set of criteria is used, which can be the
usual criteria shown
in Figure 10 or some other set of criteria. This allows the notification
system 80 to lower
the threshold during specific times during the day to take into account known
or
empirically derived information. For example: "Highway 6 is typically slow
from 7 am to
10 9 am".
100821 As discussed above, the notification 84 may take various forms and may
be
delivered to each mobile device 100 via various media. Figure 11 illustrates
an exemplary
email alert 220. In the example shown in Figure 11, the email alert 220 is a
regular email
message that is received and handled by the mobile device 100 in the usual
manner. The
15 email alert 220 comprises a subject line 221 identifying the message as
relating to a traffic
alert, and the body of the alert 220, in this example, it comprises: a concise
warning 222
introducing the nature of the alert, followed by further details 224 regarding
the traffic
congestion, followed by a tip 226 for bypassing the traffic congestion. It can
be
appreciated that the inclusion and nature of each portion (222, 224, 226) of
the body of the
20 email alert 220 is optional and if included, each portion may be presented
in any desired
order, e.g. according to user preferences. For example, user options can be
provided to
specify how the alert should be structured and what it should include.
Similarly, to
minimize the amount of reading involved, an amalgamated message (not shown)
can be
prepared which concisely provides a warning, location of congestion, and a
detour. For
example: "You are headed into traffic along Highway 6, use Detour Rd. as an
alternate".
100831 In the embodiment shown in Figure 11, the concise warning 222 can be
included to allow a "first glance" determination that the vehicle 10 is
heading into traffic
congestion. At an appropriate time, the email alert 220 can be accessed,
opened, and
viewed, using the email application 138, and the further details reviewed. The
further
details 224 can provide any level of detail desired and, in an email message,
it is
appreciated that this level of detail can be readily accommodated. In the
example shown,
the congested zone 2 is identified according to various landmarks such as
being between
certain roads and whether or not the traffic congestion is serious: "Highway 6
is extremely
CA 02687922 2009-12-04
21
slow between Upper Rd and Lower Rd". The tip 226 can suggest an alternate
route to
avoid the congested zone 2. In this example, the following tip 226 is
displayed: "We
suggest taking Bypass Rd to north of Upper Rd and turning west on Junction Rd
as a
detour". In this way, if the opportunity arises, the user can utilize the
mobile device 100
not only to be alerted to the traffic congestion, but also be provided with
useful
information to avoid the congested zone 2.
100841 The email alert 220 may also comprise a link 227 to the map program 60
as
shown in Figure 11. This enables the user to conveniently access a visual
representation
of the detour suggested in the tip 226 or at least to view the area of
congested zone 2 for
perusal and further consideration.
[0085] Figure 12 illustrates an example of an alternative form for the alert,
namely an
SMS alert 230. The SMS alert 230 can include some or all of the information
carried by
the email alert 220. The SMS alert 230 comprises a sender tag 231, which
identifies the
sender of the SMS alert 230 as being the Traffic Notification Service, which
may be an
SMS client created for the notification system 80 and used to forward SMS
alerts 230 to
various mobile devices 100. The SMS alert 230 also comprises sender and
message
details 232, and may include one or more of the portions 222, 224, 226 shown
in Figure
11. In this example, the concise warning 222 and further details 224 are
visible in and the
tip 226 can be viewed by navigating through the message. It will be
appreciated that a
portion of the SMS alert 230 can be sent and other portion(s) held back until
requested,
e.g. when the details of the alert are lengthy or exceed the limit of a single
message.
Alternatively, a first SMS alert 230 can be sent with a concise warning 222
and a link or
call-back mechanism (not shown) provided to enable the user to request further
details
such as the tip 226 regarding a potential detour. Therefore, the SMS alert 230
can be
adapted to be used in different environments with different constraints.
[0086] Figure 13 illustrates another example of an alternative form for the
traffic alert
provided by the notification 84, in this example a map alert 240. As shown in
Figure 13, a
map 242 of an area that comprises the congested zone 248 can be displayed
using the map
program 60 with a warning graphic or icon 246 used to highlight the congested
area. The
map 242 may also provide an intended route 244 and an alternative route 250 to
illustrate
the detour suggested in the tip 226. The map alert 240 may also include a pop-
up window
252 that includes the portions 222, 224, and 226 already exemplified. Although
the pop-
up window 252 is shown as an inset to the map 242, it will be appreciated that
it could
CA 02687922 2009-12-04
22
also be given a dedicated portion of the display 12, or can be accessible by
highlighting a
link (not shown), accessing a menu (not shown) or can be omitted by way of
selecting
appropriate user options. Figure 13 thus illustrates an alternative that
provides a visual
representation of the alert using the information provided in the notification
84.
[00871 Various other alert types are possible and can be adapted to
application-
specific requirements, user preferences, or both. For example, the
notification 84 may
provide an overriding pop-up that is displayed over/within any current screen.
The pop-up
could be given a link 227 to the map program to enable both a quick warning
and the
possibility to access further and more detailed information. In yet another
embodiment,
the alert may comprise a phone call dialled from the notification system 80 to
the mobile
device 10 with an auditory warning spoken to the user. Similarly, the
notification 84 may
comprise a recorded auditory warning that is played to the user upon receipt.
It can
therefore be appreciated that the notification 84 and enclosed warning and
information can
be sent, processed, and displayed in any suitable manner according to the
environment,
output mechanisms available, and user preferences.
[00881 As discussed above, by tracking a mobile device's location over time, a
cascade of notifications 84 can be sent, e.g. to further update the user
regarding the
progress of the traffic congestion or upon receiving additional information
from a third
party source 83. Figure 17a shows a follow up alert 220a to the email alert
220 shown in
Figure 11. In the follow up alert 220a, an updated subject 221a can be
provided to specify
that the alert is an update and may provide more specific details to assist
the user in
recognizing the alert. An updated message 270 is included in the follow up
alert 220a that
in this example provides further detail obtained from a third party source 83
which
explains the nature of the congestion and if available, the status. An updated
map link
227a can also be provided to allow the user to initiate and load the maps
program 60. In
can be appreciated that according to the nature of the updated message 270,
the extent of
the congested zone 2 and the detours 250 may change and providing the updated
map link
227a enables the user to confirm any changes. The follow up notification 200a
is
particularly useful when the mobile device 100 is still approaching but has
not yet reached
the congested zone 2. This allows more detail to be provided where possible.
100891 Figure 17b illustrates a further follow up alert 220b, which indicates
in a
further updated subject line 221b that the traffic congestion has been
resolved. For
example, if the mobile device 100 is still approaching the congested zone 2 as
it is
CA 02687922 2009-12-04
23
clearing, the notification system 80 can provide immediate and timely feedback
to enable
that mobile device 100 to avoid taking a detour. A detailed message 272 is
provided that
explains the updated situation and, in some embodiments, can further tailor
the message
272 according to the previous alerts 220, 220a. For example, as shown in
Figure 17b, the
message 272 indicates that the detour previously suggested does not need to be
taken.
Therefore, the device data 78 available to the notification system 80 enables
intelligent
notifications 84 to be prepared using such available information. An updated
map link
227b can also be provided as before to resolve the user's route to remove
reference to the
detour, etc.
[0090] To accommodate various alternative alerts as exemplified herein, the
notification 84 can be configured to carry various forms and amounts of data.
For
example, a generic notification 84 comprising the portions 222, 224, 226,
delivered in an
email alert 220 can also append or include a map alert 240 (or instructions
for creating a
map alert 240) to enable dual alerts or the choice between different alerts.
The
notification 84 may also provide an instruction to stimulate an auditory alert
such as a
particular tone, ring-tone, or speech alert. As such, the notification 84 can
take any form,
using any data structure, sent over any medium that is applicable to a
particular mobile
device 100 or a particular application of the notification system 80. For
example, if
employed with a network of video game devices, different alert types may be
required
than if employed with a network of mobile phones.
[00911 Turning now to Figure 14, a example of the other system 85 shown in
Figure 9
is provided. In this example, an in-vehicle navigation system 85' having a
display 88', is
configured to interface 86' with mobile device 100A to display alerts such as
those shown
in Figures 11-13 and 17a-17b (220, 220a, 220b, 230, 240). The mobile device
100A can
interface 86' with the navigation system 85' using any available communication
link such
as USB, infrared, Bluetooth, custom cradle or docking station, etc. Figure 14
illustrates
that the mobile device 100A can be used to receive the notification 84, which
is then
converted or processed (if necessary) for use by the navigation system 85',
and a copy of
the notification 84', in whatever form that is appropriate, is forwarded to
the navigation
system 85'. It will be appreciated that the navigation system 85' in such an
embodiment
would require software such as a driver for detecting an incoming notification
and should
include a software application to enable user interactivity. Although not
shown in Figure
14, the mobile device 100A could also interface 86' with an OBD connection or
other in-
CA 02687922 2009-12-04
24
vehicle connection to obtain information for inclusion in the device data 78
and thus the
interface 86' can provide a way to enable the vehicle's sub-systems to
participate in
providing information to the notification system 80 for preparing the
notifications 84.
[0092] If connected to other sub-systems in the vehicle 10, the mobile device
10 may
also be capable of leveraging the notification system 80 and its access to
third party
sources 83, to provide additional alerts to the user, either individually or
in combination
with the traffic-related notification 84. Turning now to Figure 18, an example
illustrating
a notification routine pertaining to fuel level detected in the vehicle 10 is
shown. At 400,
either a vehicle sub-system or the mobile device 100 (or its user), through
its connection
86 to the vehicle 10 (or visual observation), detects a refuel event. The
refuel event can
be triggered by various criteria. For example, if a trip has been programmed
into the GPS
application 54, the mobile device 100 may determine that given the distance to
the
destination and the amount of fuel left, the vehicle 10 will need to be
refuelled at least
once prior to the destination. In another example, the mobile device 100 may
simply
detect that the vehicle's fuel level is particularly (or dangerously) low,
e.g. below a
predetermined threshold, and thus a refuelling is needed. Upon detecting a
refuel event,
the mobile device 100 may then turn on its GPS application 54 and use the
traffic module
55 to gather other device data at 402. A query may then be sent at 404
pertaining to the
optimal gas stations according to certain criteria such as according to
deviation from the
user's route, as well as other information such as fuel type (is diesel
available?), preferred
rest stops, preferred brands of gasoline, etc.
100931 The notification system 80 then receives the query at 406 and, either
locally or
in conjunction with a third party source 83, determines gas stations in the
vicinity of the
programmed route or that satisfy the user's preferences, at 408. If
applicable, the
notification system 80 may at the same time reference the traffic database 82
to determine
if a relevant notification pertaining to traffic exists at 410. A notification
is then prepared
at 412. As noted above, the notification prepared at 412 may comprise a
notification 84
with gas station information appended or may be a separate notification
pertaining only to
the gas stations.
[0094] At 414, if applicable, the notification system 80 may reference the
user
preferences to tailor the notification 84 accordingly. For example, the user
may be given
the opportunity, upon registering the traffic module 55, to select the how
close to their
route they wish the gas stations to be, which companies they prefer, etc. Such
user
CA 02687922 2009-12-04
preferences can be applied to any variation on the procedure shown in Figure
18. It will
be appreciated that user preferences can be incorporated into any of the
embodiments
described herein to enable the user to specify when the notifications 84 are
to be received,
in what form they are to be received (e.g. email vs. SMS vs. auditory vs.
through other
5 system 85 etc.), etc.
[00951 The notification 84 is then sent to the mobile device 100 at 416 and is
received
at 418. In this example, the mobile device 100 would use the received
notification 84 to
alert the user that the fuel level is low and suggest an optimal stopping
location. The
locations for the gas station(s) can be displayed using the maps programs 60,
routes to the
10 gas stations can be provided, and auditory alerts can also be provided. The
refuel event
detection and notification routine shown in Figure 18 is for illustrative
purposes only and
it can be appreciated that similar principles can be applied in providing
other notifications,
e.g. service stations, tow trucks, shopping areas (per user preferences), etc.
[0096] Figure 15 illustrates another embodiment, where the mobile device's GPS
15 receiver 121 is not currently on but the vehicle 10 in which the mobile
device 100
currently resides enters traffic congestion, a time related trigger is set, or
the user initiates
the process. In these situations, a request for a traffic alert based on the
current zone can
be made and, at the same time, the mobile device 100 can begin contributing to
the
information gathering procedure performed by the notification system 80. In
Figure 15, a
20 map 242, similar to the map shown in Figure 13, is currently being
displayed and, in this
example, an intended route 244 is shown, which may have been specified by the
user at
some other time. It may be noted that in this example, the map program 60 is
used for
displaying directions but not necessarily providing current location
information via the
GPS application 54.
25 [0097] Upon receiving an appropriate input such as detecting the selection
of the
menu button 24, a menu 263 can be displayed that lists options 264 available
within the
maps program 60. Of the options 264 shown in Figure 15, a Traffic Update
option 266
can be selected. By detecting the selection of the option 266, the maps
program 60 can
instruct the GPS application 54 to turn on and begin sending device data 78
and receiving
notifications 84. This would enable, upon entering a congested zone 2, the
user to obtain a
map alert 240 such as that shown in Figure 13, which can identify the
congested zone,
identify a detour, etc. This also provides additional device data 78 on which
the
notification system 80 can make its determinations regarding the need for a
particular
CA 02687922 2009-12-04
26
notification in that particular zone. Accordingly, Figure 15 illustrates that
communications between the mobile devices 100 and the notification system 80
can be
automatic or user-initiated in various embodiments.
[0098] Figure 16 illustrates an exemplary set of operations for executing the
embodiment of Figure 15. Upon detecting traffic congestion at 300, or at any
other time
that the user wishes to begin receiving notifications 84, the maps program 60
in this
example provides the ability to initiate the menu 263 and select the Traffic
Update option
266 at 302. The map program 60 would then detect selection of the Traffic
Update option
266 at 304 and then turn on the GPS receiver 121 at 306 at which time it may
acquire
device data 78 for the mobile device 100.
[0099] It may be noted that, as shown in Figure 16, once the GPS receiver 121
has
been turned on, if the notification system 80 is configured to detect the
presence of the
mobile device 100 via the wireless router 26, the mobile device 100 may be
immediately
available to receive a notification 84 at 324 and provide an alert to the user
at 326, which
is experienced by the user at 328. Upon turning on the GPS receiver 121,
device data 78
may be prepared at 308 for sending to the notification system 80 at 310. The
notification
system 80 then receives the device data 78 at 312 and may compare this device
data 78 to
recent notifications and other information in the traffic database 82 at 314.
The traffic
database 82 is also updated at 316 with the new device data 78 to contribute
to the
generation of notifications.
[00100] The notification system 80 determines at 318 if there is a relevant
notification
84 pertaining to the zone in which the mobile device currently is and, if one
is not found,
the process ends at 320. If a relevant notification 84 can be found, it may
then be sent to
the mobile device 100 at 322, where it can be received at 324, an alert
provided to the user
at 326 and the alert experienced at 328.
[00101] It can therefore be seen that data 78 pertaining to the location and
speed of a
plurality of mobiles devices can be used to generate dynamic notifications 84
for other
mobile devices 100 that may be affected by traffic issues ascertained from the
data 78
provided by the plurality of mobile devices 84.
[00102] Although the above has been described with reference to certain
specific
embodiments, various modifications thereof will be apparent to those skilled
in the art as
outlined in the appended claims.