Method, apparatus and system for notifying a user of a portable wireless device

A method, apparatus and system for notifying a user of a portable communication device. In one embodiment, a location of a first portable communication device is determined for a first user and the location of a second portable communication device is determined for a second user. A determination is made as to whether the location of the second portable communication device is within a same region containing the first portable communication device. If the second portable communication device is within the same region as the first portable communication device, then the first user is notified of the presence of the second user.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The invention relates to communications systems and devices. More particularly, the invention relates to a method, apparatus and system for notifying a user of a portable communication device.

2. Background of the Related Art

Portable communication devices offer tremendous flexibility over conventional land-based means of communications, e.g., telephone handsets. Examples of portable communication devices include mobile communication devices, e.g., a laptop computer, and wireless communication devices, e.g., wireless phones, personal digital assistant devices, and two-way pagers. These and other portable communication devices enable a user to communicate from various places other than a residence, office or payphone. One application of portable communication devices is the use of mobile phones in an emergency situation. For example, if a car breaks down on a freeway, the driver may use the wireless phone to contact local authorities or emergency personnel. Another use of wireless phones is to contact an operator when touring or visiting a city. For example, the user may contact the operator to obtain the locations of nearby tourist attractions and hotels.

To enhance the utility of wireless phones, the Federal Communications Commission (FCC) has mandated that service providers implement an enhanced 911 (E911) system by the end of the year 2001. The mandate also includes the implementation of a global positioning system (GPS) within each wireless phone. With the anticipated implementation of the GPS in wireless phones, there is a need to provide enhanced services for wireless phones and other GPS-based portable communication devices.

SUMMARY OF THE INVENTION

The invention provides a method, apparatus and system for notifying a user of a portable communication device. In one embodiment, a location of a first portable communication device is determined for a first user and the location of a second portable communication device is determined for a second user. A determination is made as to whether the location of the second portable communication device is within a same region containing the first portable communication device. If the second portable communication device is within the same region as the first portable communication device, then the first user is notified of the presence of the second user.

An apparatus, e.g., a portable communication device, comprising a position detector, a memory, a network interface and a processor is also provided. The position detector determines the location of the portable communication device. The memory stores a user alert program. The network interface is configured for the reception and transmission of information from a network. The processor, upon executing the user alert program, is configured to retrieve the location of the apparatus from the position detector, and determine the location of another portable communication device of another user from the information received via the network interface. The processor then determines whether the location of the other portable communication device is within the same region as the retrieved location. If the other portable communication device is within the same region as the retrieved location, the processor is further configured to notify the user of a presence of the other user.

A system for notifying a user of a portable communication device is also provided. The system comprises a first portable communication device, a second portable communication device and a network. The first portable communication device determines a location of the first portable communication device of a first user. The second communication device determines a location of the second portable communication device of a second user and transmits the determined location to the network. The network receives the transmitted location of the second portable communication device.

In different embodiments of the system, the network either transmit the received location to the first portable communication device, or determine whether the location of the second portable communication device is within the same area as the first portable communication device. If the network transmits the location, the first communication device determines whether the location of the second portable communication device is within the same area as the first portable communication device, and notifies the user of the first communication device if both devices are within the same region. If the network performs the determination, the network transmits a notification to the first wireless device of the first user.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

A method, apparatus and system for notifying a user of a portable communication device is disclosed. In one embodiment, a location of a first portable communication device is determined for a first user and the location of a second portable communication device is determined for a second user. A determination is made as to whether the location of the second portable communication device is within a same region containing the first portable communication device. If the second portable communication device is within the same region as the first portable communication device, then the first user is notified of the presence of the second user.

Various programs and devices described hereinafter may be identified based upon the application for which they are implemented in a specific embodiment of the invention. However, it should be appreciated that any particular program or device nomenclature that follows is used merely for convenience, and the invention is not limited to use solely in any specific application identified and/or implied by such nomenclature.

FIG. 1depicts a system100used for notifying a user of the presence of other users. In one embodiment, the user is notified of the presence of another user within the same group, i.e., another group member. Different users may be classified into various groups. For example, each user may categorize different groups of other users, e.g., groups of relatives, friends, co-workers, and the like.

In one embodiment, the system100comprises at least one portable communication device102A and102B and a network104. The wireless communication device102A may communicate or transfer information with the wireless communication device102B or some other wireless communication device (not shown) via the network104, or exchange information with the network104. The following description will describe the portable communication device102A and102B with respect to the portable communication device102A. However, the description similarly applies to other portable communication devices, e.g.,102B, in the system100.

The portable communication devices102A and102B and the network104may transmit and receive different types of information in different data formats. Exemplary types of information may include text, voice, video, control signals, and the like. Exemplary data formats may include radio frequency (RF) signals and packetized signals.

The network104is used to transmit information with various portable communication devices, e.g.,102A and102B. In one embodiment, the network104may comprise a collection of networks known as the Internet. Individual networks within the Internet may comprise a point to point network, e.g., a plain old telephone system (POTS) network, a broadcast network, e.g., a wireless or RF network, and the like. Transmission of information via the network104is performed in accordance with standard transmission formats, e.g., TCP/IP (Transmission Control Protocol/Internet Protocol), ATM (Asynchronous Transfer Mode), SONET (Synchronous Optical Network) and the like. In another embodiment, the network104may comprise a wireless communications system. This embodiment is further described with respect to FIG.2.

The portable communication devices102A and102B (hereinafter referred to generally as102) may comprise any two-way mobile device capable of receiving and transmitting information via the network104. The portable communication devices102may be a mobile communication device or wireless communication device. One example of a mobile communication device is a laptop computer. Examples of wireless communication devices include a cellular phone, personal digital assistant (PDA) device, a two-way pager, and the like. Some portable communication devices102, embodiments may also contain a global positioning system (GPS) as mandated by the Federal Communications Commission (FCC). The portable communication device102is further described with respect to FIG.3.

With the inclusion of the GPS in the portable communication devices102, one enhancement of the portable communication device102is to notify or alert a user of the presence of another user within the same region or area, e.g.,106A. Suppose the user of portable communication device102A is a friend or relative of the user of portable communication device102B. The two users live in different regions106A and106B but wish to meet with each other in person whenever possible. The portable communication device102A enables such a meeting by notifying or alerting the user of the presence of the portable communication device102B within the area106A, which in turn indicates the presence of the user of communication device102B in area106A.

The above example is applicable to any group of two or more members. As such, if the user of the portable communication device102A is in region106A, the user of the portable communication device102A is notified of the presence of another group member, e.g., the user of portable communication device102B, in the same region106A. The user of the other portable communication device102B is also notified. Similarly, if the user of the portable communication device102A enters another region106B having another user with portable communication device102B, both users of the portables communication devices102A and102B are notified of the presence of another group member in the same region, e.g.,106B. Additionally, a user of the portable communication device102may also have multiple groups of group members. For example, the user may have a first group for relatives, a second group for friends, and a third group for a professional association. The portable communication device102may selectively provide notification when members of each group enter the user's local region106.

FIG. 2depicts one embodiment of a network104of the system100of FIG.1. In this embodiment, the network104is a wireless communications network. Specifically, the wireless communications network generally comprises at least one wireless switching office202and a plurality of communications towers204A and204B. Although one wireless switching office202and two communications towers204A and204B are illustratively depicted,FIG. 2likewise applies to any number of switching offices202and communications towers204A and204B.

Each communications tower204A and204B is used to receive and transmit information, e.g., voice, text and video, between the wireless switching office202and all portable communication devices102, e.g., wireless communication devices102A and102B in its respective area or region106A and106B. The information exchanged between the devices102A and102B and respective towers204A and204B may be in a form of a radio frequency (RF) signal or a packetized signal. Illustratively, communications tower204A may receive and transmit information, e.g., in the form of data packets, between the wireless switching office202and all wireless communication devices, e.g., wireless communication device102A, in region106A. Similarly, communications tower204B may receive and transmit information between the wireless switching office202and all wireless communication devices, e.g., wireless communication device102B, in region106B.

The wireless switching office202receives and transmits information from wireless communication devices102A and102B via respective communications towers204A and204B. The wireless switching office202also coordinates the transfer of information between various wireless communication devices, e.g.,102A and102B. Namely, the wireless switching office202enables one wireless communication device102A to send and receive information from another wireless communication device102B. In one embodiment, the wireless switching office202receives information containing the location of wireless communication device102B and transmits this information to another wireless communication device102A.

FIG. 3depicts a block diagram of one portable communication device102A used in the communications system of FIG.1. The following description is provided with respect to portable communication device102A. However, the description may similarly apply to other portable communication devices, e.g.,102B. In one embodiment, the portable communication device102comprises a processor302, a memory304and a position detector306.

The processor302performs instructions based upon the requirements of the operating system308and a group alert program310stored in the memory304. The processor302executes the group alert program310to implement the embodiments of the present invention. In one embodiment, the processor302receives data or information from the wireless switching office202and determines to notify the user (of the portable communication device102A) when the portable communication device102B of another group member is in the same area or region106A. In another embodiment, the processor302executes commands provided from a user. In another embodiment, the processor302transmits information, e.g., location of the portable communication device102A from the position detector306, to the network104. These embodiments are further described with respect toFIGS. 5-7.

The memory304stores the necessary data and programming structures324necessary for the operation of the portable communication device102. The memory304stores the operating system308, the user alert program310and other application programs (not shown). The memory304may comprise a combination of memory devices including random access memory (RAM), nonvolatile or backup memory (e.g., programmable or flash memories, read only memories (ROM), and the like).

The position detector306determines the current location or position of the portable communication device102. In one embodiment, the position detector306comprises a global positioning system (GPS). The operating system308manages the operation of the portable communication device102. Namely, the operating system308coordinates the receipt of information from the network104, receipt of commands from the user via the input device320, and the output of information to the output device322and/or the network104. The user alert program310contains instructions for alerting the user of the portable communication device102A when another group member is in the same area or region, e.g.,106A.

The network interface312comprises controllers to enable the portable communication device102to receive and transmit information in the form of radio frequency signals or data packets via the antenna318. In one embodiment, the network interface312enables the reception of data packets from the wireless switching office202and the transmission of data packets to the wireless switching office202. The data packets may contain contact information about the group member and the location of the portable communication device102. One embodiment of such a data packet is further described with respect to FIG.4.

The support circuits316include devices or components that support the operation of the portable communication device102. Examples of support circuits316include a power supply, a clock, and the like. The input/output interface314comprises controllers used to couple the processor302to the input device320and the output device322. Namely, the input/output interface314enables the transmission of information containing voice, text and video between the processor302, the input device320and the output device322.

The input device320may comprise any device utilized to provide input to the portable communication device102. Examples of the input device320include a keypad, a microphone, a touch screen, a light pen, and the like. The output device322may comprise any device utilized to provide output for the portable communication device102. Examples of the output device322include a speaker and a display. Although the output device322is shown separately from the input device320, the output device322may be combined or integrated with the input device320.

FIG. 4depicts a format of a data packet400transmitted and received in the communications system100of FIG.1. The data packet400is transmitted between the wireless switching office202and the wireless communication devices102A and102B via respective communications towers204A and204B. In one embodiment, the packet400contains information relating to a subset of users belonging to a specific group or classification. Specifically, the packet400comprises a group identifier field402, a group member contact information field404and a group member location field406. The group identifier field402identifies a specific group of group members. The group member contact information field404may comprise a phone number, an electronic mail address, and the like. The group member location field406comprises the location of the portable communication device102as determined using the position detector306. Although the group identifier field402, the group member contact information field404, and the group member location field406are depicted in one data packet400inFIG. 4, the information herein may also be split into more than one data packet and transmitted between the wireless switching office202and the communication device102but different times.

FIG. 5depicts a flow diagram of a method500for processing information received from the network104, e.g., wireless switching office202of a wireless communication network. The method500is implemented for each group or classification containing the user of the portable communication device102. For purposes of illustration, the method500is described with respect to portable communication device102A. However, the method500similarly applies to the other portable communication devices, e.g.,102B, in the communications system100.

The method500starts at step502and proceeds to step504where the portable communication device102A receives information via the network104, e.g., the wireless switching office202via communications tower204A. At step506, a query determines whether the received information contains a location of another group member, e.g., group member with portable communication device102B. In one embodiment, step506may initially determine whether the received packet400contains information on a group member, i.e., whether the value of the group identifier field402is the same for the group member carrying the portable communication device102A. If the value of the group identifier field402is the same as the member with the portable communication device102A, step506then extracts the location of other group member from the group member location field406.

If the received information does not contain the location of another group member, the method500proceeds to step508where other types of operations are performed on the received information. Step508includes but is not limited to any operation that is not related to determining the proximity of another group member. After step508, the method500returns to step504where additional information is received from the network104. For example, step508may include the reception of data packets400from the wireless switching office202.

If the received data contains the location of another group member, the method500proceeds to step510where a query determines whether the group member may be detected. Namely, step510determines whether detection is enabled for the other group member. If the other group member may not be detected, the method500returns to step504. If the other group member may be detected, the method500proceeds to step512where the location of the group member is extracted from the received information and stored in the memory304. In one embodiment, step512extracts the location of the group member from the group member location field406of the incoming packet400and stores the extracted location in the memory304.

At step514, a query determines whether the other group member is in the same region, e.g.,106A, as the group member with the portable communication device102A. In one embodiment, step514determines whether the portable communication device102B of the other group member is within a threshold distance of the portable communication device102A. Alternatively, step514may determine whether the portable communication device102B of the other group member is in the same region or cell, e.g.,106A, as the portable communication device102A.

If the group member is not in the same area106A as the group member with the portable communication device102A, the method500proceeds to step516where the last two saved locations of the other group member are retrieved from the memory304. Step516is only illustrative and may include three or more locations of the portable communication device102B. The method500then proceeds to step518where the rate and direction of travel is determined for the other group member with the portable communication device102B. In one embodiment, step518is determined using the retrieved location from step516and the corresponding time for the location as extracted from the received data packet400.

At step520, a query determines whether the other group member is about to enter the same region, e.g.,106A, as the group member with the portable communication device102A. For example, step520may determine whether the portable communication device102B of the other group member will enter the same region, e.g.,106A, within a threshold amount of time. If the other group member is not about to enter the same region, e.g.,106A, the method500returns to step504where additional information from the network104is received.

If the other group member is about to enter the same region, e.g.,106A, the method500proceeds to step522. At step522, a query determines whether an alarm or other notification, e.g., electronic mail message, was recently issued for the presence of the other group member in the same area as the group member with the portable communication device102A. In one embodiment, step522determines whether the notification was issued within a threshold amount of time. As such, step522provides a waiting period between successive notifications, e.g., alarms. Otherwise, step522would subject the user of the portable communication device102A to multiple alarms within a short period of time.

If the notification was recently issued, the method500returns to step504where additional information from the network104is received. If the notification was not recently issued, the method500proceeds to step524where a query determines whether alarms are enabled for this group with the other group member. If the alarms are not enabled for this group, the method500returns to step504to receive additional information from the network104.

If the alarms are enabled for this group, the method500proceeds to step526where the notification is issued to notify the user of the portable communication device102A of the presence of the other group member in the same region, e.g.,106A. Types of notification may include an alarm or an electronic mail message. The method500proceeds to step528where an approximate meeting location is determined for the two group members with respective portable communication devices, e.g.,102A and102B. After step528, the method500returns to step504where additional information is received from the network104.

AlthoughFIG. 5is described in the context of the portable communication device102A, one having ordinary skill in the art may modifyFIG. 5for implementation in the network104. The main difference is that the data packets400are directly received from the portable communication devices102A and102B instead of the wireless switching office202.

FIG. 6depicts a flow diagram of a method600for processing user input to the portable communication device102. The method600is generally described with respect to any portable communication device102, e.g.,102A or102B. In one embodiment, the user input is provided via the input device318. The method600starts at step602and proceeds to step604where a user action or command is retrieved. At step606, a query determines whether the retrieved action is to contact the group member identified in the notification of step526. If the user action is to contact the identified group member, the method500proceeds to step608where the identified group member is contacted. Step608may dial a phone number of the identified group member or send an electronic mail message to the identified group member.

If the user action is not to contact the identified group member, the method600proceeds to step610where a query determines whether the user action is a request to display the locations of other group members. If the user action is to display the locations of other group members, the method600proceeds to step612where the saved location for each group member is retrieved from the memory304. At step614, the method600then proceeds to display the location of each group member on the output device320. After step614, the method600returns to step604where the next user action is retrieved.

Returning to step610, if the user action is not to display the locations of other group members, the method600proceeds to step616where a query determines whether the user action is to modify the size of the group. Namely, step616determines whether the user action is to add another member to the group or remove a member from the group. If the user action is to modify the size of the group, the method600proceeds to step618where data structures324stored in memory304are modified. After step618, the method600returns to step604where the next user action is retrieved.

If the user action is not to modify the size of the group, the method600proceeds to step620where a query determines whether the user action is to modify detection by other group members. For example, a user may either enable or disable detection of the device102by other members of the group. If the user action is to modify detection by other group members, the method600proceeds to step622where the user action of whether to disable or enable detection is transmitted to the network104. After step622, the method600returns to step604where the next user action is retrieved.

If the user action is not to modify detection by other group members, the method600proceeds to step624where other user actions are processed. Examples of such user actions include calling people who are not group members or sending electronic mail messages to people who are not group members. After step624, the method600returns to step604where the next user action is retrieved.

FIG. 7depicts a flow diagram of a method700for transmitting information from a portable communication device102to the network100in the communications system.100. The method700is described with respect to portable communication device102A but also applies to other portable communication devices, e.g.,102B. Specifically, the method700starts at step702and proceeds to wait a threshold time interval at step704. In one embodiment, the threshold time interval represents a delay between successive transmissions of the location of the portable communication device102A to network104, e.g., the Internet or the wireless switching office202of a wireless communications network.

The method700then proceeds to step706where the current location of the portable communication device102A is obtained from the position detector306, e.g., a global positioning system (GPS) device. At step708, the method700transmits the retrieved location of the portable communication device102A to the network104. In one embodiment, the location of the portable communication device102A is contained in the group member location field406of the transmitted packet400. A portable communication device, e.g.,102B, of another group member would then receive and process this information from the wireless switching office202. The method700proceeds to step710where other information is transmitted to the network104. For example, if the user of the portable communication device102A wishes to avoid detection by users of other portable communication devices, e.g.,102B, then such information may be transmitted to the network104. After step710, the method700returns to step704.

Although various embodiments which incorporate the teachings of the present invention have been shown and described in detail herein, those skilled in the art can readily devise many other varied embodiments that still incorporate these teachings. In other embodiments, various components of the present invention may be implemented in whole or in part on a server computer located at the network switching office202. Peer-to-peer embodiments are also within the scope of the present invention. Therefore, it is desired that the embodiments described herein be considered in all respects as illustrative, not restrictive, and that reference be made to the appended claims for determining the scope of the invention.