[go: up one dir, main page]

HK1153342A - Location-aware instant messaging - Google Patents

Location-aware instant messaging Download PDF

Info

Publication number
HK1153342A
HK1153342A HK11107371.1A HK11107371A HK1153342A HK 1153342 A HK1153342 A HK 1153342A HK 11107371 A HK11107371 A HK 11107371A HK 1153342 A HK1153342 A HK 1153342A
Authority
HK
Hong Kong
Prior art keywords
mobile device
location
friends
random error
friend
Prior art date
Application number
HK11107371.1A
Other languages
Chinese (zh)
Inventor
Barry LEWIS II Joseph
Patel Biren
Sivalingham Sanjeevan
Original Assignee
维里逊专利及许可公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 维里逊专利及许可公司 filed Critical 维里逊专利及许可公司
Publication of HK1153342A publication Critical patent/HK1153342A/en

Links

Description

Location aware instant messaging
Technical Field
Background
Instant Messaging (IM) and chat technologies facilitate near real-time text-based communications between two or more participants over a network. Mobile Instant Messaging (MIM) transforms the desktop IM experience to actually target IM for mobile communication. IM and MIM may utilize friend-to-friend (friend) networks. Friends may use text input (e.g., "i am at home") to inform others of their location, but the automatic location indicators of IM and MIM environments have not been successfully integrated.
Drawings
FIG. 1 depicts an exemplary network in which systems and methods described herein may be implemented;
FIG. 2 is a diagram of an exemplary device that may be used in the system of FIG. 1;
FIG. 3 is an exemplary functional diagram conceptually illustrating an implementation of a location-aware IM service;
fig. 4 is a flowchart illustrating exemplary operations performed by a carrier network provider in a system providing location-aware IM services;
FIG. 5 is a flowchart illustrating exemplary operations performed by an IM portal in a system providing location-aware IM services;
FIG. 6 is an exemplary graphical map displayed on a display of a mobile device; and
fig. 7 is a process flow illustrating exemplary operations that may be performed by various components within a system providing location-aware IM services.
Detailed Description
The following detailed description refers to the accompanying drawings. The same reference numbers in different drawings identify the same or similar elements. Furthermore, the following detailed description does not limit the invention.
Implementations described herein provide a secure authorization system and/or method for conveniently notifying requesting subscribers of an Instant Messaging (IM) network of the geographic location of IM "friends". In one implementation, a requesting subscriber can request the approximate location of a particular "friend" on his IM friends list by selecting a "find friends" feature on the requesting subscriber's IM user interface of the mobile device. In another implementation, the requesting subscriber can request the approximate location of any nearby "friends" on their IM friends list by selecting the "find nearby friends" feature on the requesting subscriber's mobile device's IM user interface. Selecting either "lookup" feature causes the mobile device to communicate with a Location Proxy Server (LPS) to determine the current location of the requesting subscriber's mobile device. The mobile device may communicate its location information to the IM infrastructure. The IM infrastructure may provide geographic location information based on the location of the requesting subscriber or based on a particular friend selected by the requesting subscriber. For security purposes, the IM infrastructure may add random error information to the latitude and/or longitude associated with the requested geographic location.
The term "Instant Messaging (IM)" refers to real-time or near real-time communication between two or more people based on typed text that can be transmitted over a network through a computing device. As used herein, the term "subscriber" may include registered users of an IM service, where a "requesting subscriber" or "requestor" includes a user that initiates a request to locate a friend and a "target user" or "target" may include a subscriber whose location is requested. The "requesting device" may include the communication device used by the requesting subscriber, and the "target device" may be the communication device used by the target subscriber. As used herein, the terms "IM friend" and "friend" may refer to one or more subscribers who agree to accept IM communications from another subscriber. As used herein, the terms "friend," "subscriber," "requesting subscriber," "target subscriber," and/or "user" may be broadly construed to include a device (such as a fixed or mobile communication device) and/or a user of a device.
FIG. 1 depicts an exemplary system 100 in which the principles described herein may be implemented. As illustrated, the system 100 includes a requesting device 120, one or more target devices 130, an IM portal 140, an IM gateway 150, a Position Determination Entity (PDE)160, and/or a Location Proxy Server (LPS)170 interconnected by a network 110. The requesting device 120, the target device 130, the IM portal 140, the IM gateway 150, the PDE 160, and/or the LPS170 may be connected to the one or more networks 110 by wire and/or wirelessly. One requesting device, several target devices, one IM portal, one IM gateway, one PDE, one LPS, and one network are illustrated in fig. 1 for simplicity. In practice, there may be more or fewer requesting devices, target devices, IM portals, IM gateways, PDEs, LPS, and/or networks. Further, in some cases, one or more of requesting device 120, target device 130, IM portal 140, IM gateway 150, PDE 160, and/or LPS170 performs one or more functions described as being performed by another one or more of requesting device 120, target device 130, IM portal 140, IM gateway 150, PDE 160, and/or LPS 170.
Network 110 includes one or more networks including a cellular network, a satellite network, the internet, a telephone network such as the Public Switched Telephone Network (PSTN), a Metropolitan Area Network (MAN), a Wide Area Network (WAN), a Local Area Network (LAN), a mesh network, or another type of network. In an exemplary implementation, network 110 comprises a combination of networks including a cellular network that uses components for communicating data to and from requesting device 120, target device 130, and IM portal 140, IM gateway 150, PDE 160, and/or LPS 170. Such components may include a base station antenna (not shown) for transmitting and receiving data from communication devices in its vicinity. Such components also include base stations (not shown) connected to the base station antennas and communicating with other devices such as switches and routers in accordance with known techniques.
Each of the requesting device 120 and the target device 130 may comprise any type of conventional device capable of communicating over a network. For example, the requesting device 120 and the target device 130 may include any type of device capable of transmitting data (e.g., voice, text, images, multimedia data) to the network 110 and receiving data from the network 110. In an exemplary implementation, one or both of the requesting device 120 and the target device 130 may comprise a mobile terminal. As used herein, the term "mobile terminal" may include: cellular radiotelephones with or without multi-line displays; a Personal Communications System (PCS) terminal for combining a cellular radiotelephone with data processing, facsimile, and data communications capabilities; personal Digital Assistants (PDAs) that may include wireless telephones, pagers, internet/intranet access, Web browsers, organizers, calendars, and/or Global Positioning System (GPS) receivers; portable gaming and/or music playing devices; and/or a conventional laptop and/or palmtop receiver or other device that includes a radiotelephone transceiver. Mobile terminals may also be referred to as "pervasive computing" devices. In another exemplary implementation, one or more of the requesting device 120 and the target device 130 may comprise a desktop computer or other fixed location computing device.
The IM portal 140 includes one or more entities that collect, process, search, and/or provide information in the manner described herein. For example, in one implementation, the IM portal 140 may provide access to an IM service provider, which facilitates IM services over a proprietary interface and/or protocol. The IM portal may include various infrastructure components to store and propagate information related to subscribers of the IM service, including, for example, databases and servers that support location management services.
IM gateway 150 comprises a data transport device such as a gateway, router, switch, firewall, bridge, proxy server, device providing intra-domain switching capabilities, or some other type of device that processes and/or transports data. In one implementation, IM gateway 150 may operate on data on behalf of a network (e.g., a mobile carrier network) and may serve as an entrance to another network (e.g., an IM portal network).
PDE 160 may include one or more entities that collect, process, search for, and/or provide information in the manner described herein. For example, PDE 160 may include one or more components for determining the location of a mobile terminal (e.g., requester device 120 or one target device 130) and/or assisting the mobile terminal in determining its own location. For example, PDE 160 may track the location of Global Positioning System (GPS) satellites through a network of stationary GPS receivers distributed over the coverage area of the wireless network. The PDE may determine the approximate location of the mobile terminal from signals from the local base stations and provide the mobile terminal with the identity and location of GPS satellites that are likely to be in range of the mobile terminal. PDE 160 may support one or more position determination techniques or algorithms to collect position information.
The LPS170 collects and provides real-time (or near real-time) location information for the requesting device 120 and the target device 130. The LPS170 provides privacy management and control, as well as a platform for public geographic services and geographic data.
Fig. 2 is an exemplary diagram of a device 200 that may correspond to any of requesting device 120 and target device 130, IM gateway 150, PDE 160, and/or LPS 170. As illustrated, device 200 may include a bus 210, a processor 220, a main memory 230, a Read Only Memory (ROM)240, a storage device 250, an input device 260, an output device 270, and a communication interface 280. Bus 210 may include conductors or paths that allow communication among the components of device 200.
Processor 220 may include a processor, microprocessor, or processing logic that interprets and executes instructions. Main memory 230 includes a Random Access Memory (RAM) or another type of dynamic storage device that stores information and instructions for execution by processor 220. ROM 240 may include a ROM device or another type of static storage device that stores static information and instructions for use by processor 220. Storage device 250 includes a magnetic and/or optical recording medium and its corresponding drive.
Input device 260 may include one or more mechanisms that allow a user to input information to device 200, such as a keyboard, touch screen, touch pad, mouse, pen, voice recognition and/or biometric mechanisms, and so forth. Output device 270 may include one or more mechanisms that output information to the user, including a display, a printer, speakers, and the like. Communication interface 280 may include any transceiver-like mechanism that enables device 200 to communicate with other devices and/or systems. For example, communication interface 280 may include mechanisms for communicating with another device or system via a network, such as network 110.
As described herein, device 200 performs certain operations in response to processor 220 executing software instructions contained in a computer-readable medium, such as main memory 230. A computer-readable medium may be defined as a physical or logical memory device. The software instructions may be read into main memory 230 from another computer-readable medium, such as storage device 250, or from another device via communication interface 280. The software instructions contained in main memory 230 may cause processor 220 to perform processes described herein. Alternatively, hardwired circuitry may be used in place of or in combination with software instructions to implement processes described herein. Thus, implementations described herein are not limited to any specific combination of hardware circuitry and software.
Although fig. 2 shows exemplary components of the appliance 200, in other implementations, the appliance 200 may contain fewer or additional components that may compliment and enable emergency breakout/notification services. In still other implementations, one or more components of the appliance 200 may perform tasks performed by other components of the appliance 200.
Fig. 3 is an exemplary functional diagram conceptually illustrating an implementation of a location-aware IM service. As shown in fig. 3, a requester 302 (e.g., via a mobile device), a mobile target 304, and a fixed location target 306 may be connected via a carrier network 310, an IM portal 140, and the internet 320. Each of the requester 302, the mobile target 304, and the fixed location target 306 may be a subscriber of a location-aware IM service.
Carrier network 310 may include one or more radio access networks 312, IM gateway 150, PDE 160, and LPS170 connected to a core carrier infrastructure 314. The radio access network 312 may include various components such as antennas, base transceiver stations, mobile switching centers, and interfaces with the PSTN and/or Packet Data Serving Nodes (PDSNs) to facilitate communications with mobiles. The IM portal 140 may include the components necessary for IM traffic, including, for example, one or more load balancers, gateways, and databases connected through a core IM infrastructure (not shown). The IM portal 140 also includes one or more location management servers to manage location-based data, for example, for subscribers of location-aware IM services.
The requester 302 may submit a request to locate one or more IM friends (e.g., a device of another IM subscriber such as one of the mobile target 304 and/or the fixed location target 306). The supplicant 302 and the mobile target 304 may communicate with the carrier network 310 (and more specifically with a location-based service infrastructure such as the PDE 160 and the LPS170 within the carrier network 310) and Global Positioning System (GPS) satellites 340 to determine the geographic location of each subscriber's mobile device. Further, the requester 302, the mobile target 304, and the fixed location target 306 may communicate with the IM portal 140 to provide location information and deliver instant messages.
The location information from each of the requester 302, the mobile object 304, and the fixed location object 306 may be stored in a memory or database operatively connected to the location management server 330. In some implementations, the location information may include, for example, GPS information collected from the mobile communication device or another form of Global Navigation Satellite System (GNSS) information. In other implementations, the location information may be in the form of cell tower triangulation information collected from the mobile communication device. In still other implementations, the location information may be in the form of a fixed address or location associated with a wired network connection or an IP address. For example, location information for fixed location devices may be provided by subscribers when registering for location-aware IM services.
Although the configuration of fig. 3 shows exemplary components, in other implementations, fewer or additional components may be used. In other implementations, the functional components of certain components may be combined. For example, in one implementation, one or more functions of PDE 160 and LPS170 may be combined. Conversely, a single component may be implemented as multiple distributed components. For example, IM gateway 150 may be a distributed component. Further, connections between various components may be made directly or indirectly through nodes, networks, or a combination thereof.
Fig. 4 provides a flowchart 400 illustrating exemplary operations performed by a carrier network provider in providing a request to locate an IM friend to a system providing location-aware IM services. This operation is performed by components of a carrier network, such as carrier network 310, in conjunction with an IM provider, such as IM portal 140.
As shown in FIG. 4, a location request for a nearby friend may be received (block 410). For example, the base station may receive a request to locate a friend in the list of subscriber IM friends. The location request may be for a particular friend (e.g., a single friend selected from a list of friends) or any friend within a particular area (e.g., "nearby friends"). The request for nearby friends may be generated by an IM subscriber such as a mobile device user or a user of a fixed location device. The requestor may establish parameters that constitute "nearby friends" before providing the request. For example, in one implementation, the requester may program a half-kilometer radius parameter of the requester's location into the requesting device. In another implementation, a default parameter of "nearby" may be included within the requesting device software.
The location request may be authenticated (block 420). For example, the requester's location request may be passed to the location proxy server 170 to confirm that the requester making the request is an authorized user and that the request is from a valid Internet Protocol (IP) address. The LPS170 may communicate with another carrier network component, such as an authentication, authorization, and accounting server for authenticating the location request.
The geographic location of the requestor may be received (block 430). For example, the geographic location of the requester may be provided from the requester's mobile device to an IM gateway of the carrier network (such as IM gateway 150). The geographic location of the requestor may be determined by, for example, a GPS system, tower triangulation techniques, manual correlation of the requesting device with a known geographic location, or other location determination techniques. In one implementation, PDE 160 may assist a requesting device in determining its GPS coordinates by providing ephemeris (ephemeris) data to the requesting device to allow faster identification of satellites in view of the requesting device.
The location of the requester may be adjusted using the random error information (block 440). For example, an IM gateway of a carrier network (such as IM gateway 150) may add random error information to the latitude and longitude of the GPS coordinates of the requester (e.g., between 10 and 500 meters) for security/privacy purposes. The value of the error information (e.g., the distance between the user's actual location and the post location) may be limited to within some configurable maximum limit. In some implementations, the error may be specific to each user. It is therefore not possible to determine the error used by the carrier network of one subscriber from the random error used by the carrier network of another subscriber. In another implementation, the same error information will be applied to the subscriber's location when the subscriber is in the same general area. Any change in the error information with respect to the subscriber's location or time may occur gradually. The consistency of the error information for the same location may prevent multiple data points from being used to "zero out" the subscriber's actual location over time. When those dots are spaced apart by at least a configurable distance, the error information applied to the two dots is irrelevant. This would make it difficult to use the error that the carrier imposes on one location (e.g., a public location) to determine the actual coordinates of the subscriber when they are in different locations (e.g., private locations) as long as those locations are spaced apart by at least a configurable distance.
The geographic location of the requestor may be adjusted with random error information using various techniques and/or algorithms. In one implementation, random errors may be added to the default coordinate system defining the region by rounding the more precise location coordinates. For example, the earth's surface may be divided into grid lines of longitude and latitude lines. The spacing between grid lines (and thus the cell size defined by the grid lines) may be determined based on, for example, a configurable maximum error limit. Whenever the location of the requester is identified anywhere within a particular cell, the actual coordinates can be changed to a particular setting (e.g., a default setting) for the location coordinates of that cell.
In another implementation, random errors may be added as a function of position-dependent error. For example, the surface of the earth may be divided into a series of points on a line of latitude. The spacing between latitudinal lines and between successive points on each latitudinal line may be determined based on the distance associated with the error function. A random error vector, including the maximum displacement and direction, may be associated with each point. The random error associated with a point may decrease (e.g., exponentially decrease) as the distance between the point and the user's actual location increases. The random error vector components (displacement and direction) of each point are independent of the vector components of the other points and independent for each user. The displacement component is a random number between 0 and a configurable maximum error limit, while the direction component is a random number between 0 and 360 degrees. For any requester's actual location coordinates, typically several points on one or more latitudinal lines will be within the relevant distance (e.g., two points on a latitudinal line above the actual location and two points on a latitudinal line below the actual location). The random error applied to the actual location of the requester can be calculated by adding a random error vector associated with several points within the associated distance.
In one implementation, the random error information added to the latitude coordinate may be calculated differently than the random error information added to the longitude coordinate. In another implementation, the random error information added to the distance value may be calculated differently from the random error information added to the direction value. In another implementation, random error information may be added to the location coordinates by the requesting device before providing the coordinates to the IM gateway.
Continuing with FIG. 4, the location of the requestor with the random error information may be sent to the IM portal (block 450). For example, the IM gateway may send the randomly modified latitude and longitude coordinates to the IM portal. The IM portal uses the randomly modified latitude and longitude coordinates and the parameters of the requestor to identify the location and/or map data of nearby friends and sends this information back to the carrier network. The aspect of identifying nearby friends is described in more detail with respect to FIG. 5.
The location and/or map data of nearby friends may be received (block 460). For example, the IM gateway may receive a list of friends within a requestor-defined radius of latitude and longitude coordinates randomly modified by the requestor. The list of nearby friends may include various location information depending on what is available to the IM portal. For example, the information may include descriptive location data (e.g., "i am at home" or "Bob's Pizza Palace") and/or specific latitude and longitude coordinates. Finally, the location and/or map data of the nearby friend may be sent to the requestor (block 470).
Fig. 5 provides a flow chart 500 illustrating exemplary operations performed by an IM provider when a request to locate an IM friend is provided to a system providing location-aware IM services. This operation may be performed by components of an IM portal, such as IM portal 140, in conjunction with a wireless carrier network, such as carrier network 310.
As shown in fig. 5, location information of a friend with random error information may be received (block 510). For example, the IM portal may receive location information from other IM subscribers using the mobile carrier network. At least some of these IM subscribers may be friends of a particular requestor, such as requestor 302 of fig. 3. The location data for the IM subscribers using the mobile carrier network is randomly modified prior to being received by the IM portal in a similar manner as described above for the location data of the requester (block 440 of fig. 4). Location data for IM subscribers using a mobile carrier network is combined with other location data and/or manually provided information available from fixed device users. The location information may be stored in memory within the IM portal that may be subsequently retrieved by, for example, a location management server, such as location management server 330 of fig. 3.
Location information for subscribers of a location-aware IM service may be provided in response to various events. For example, in one implementation, the subscriber's location information may be automatically updated as part of the login process to the IM service. The subscriber may select a "update location at login" checkbox in a location selection engage/exit (in/out) menu, for example, available to the subscriber during initial setup of the IM service and/or after login. In another implementation (if the subscriber has chosen to share his location with some level of IM service), the subscriber may be able to request real-time updates to his current location. The request triggers an action by the subscriber device to collect current location information and update the subscriber device and the IM portal. Subscriber-triggered updates may be available to the subscriber via, for example, an "update my location now" option. This option may be used to update the location of the requester and refresh the intelligent group of requesters (as described below). In another implementation, the subscriber may be allowed to manually set their location and/or be required to enter a physical address. The subscriber's location may remain as the manually entered location until the subscriber exits the location-aware IM service, logs in to the location-aware IM service from a device with a fixed location (e.g., a desktop computer), changes the manually set location, performs a subscriber-triggered update, or the location information expires (e.g., the subscriber may set a time limit on the manually set location). If the subscriber enters an address that does not physically exist and the subscriber enters a portion of the physical address, the IM portal sets the subscriber's location using the most recent accurate information based on what the subscriber provided (e.g., city/state, city, zip code area, etc.).
Still referring to FIG. 5, location information for the requester with random error information may be received (block 520). For example, an IM gateway from the carrier network, such as IM gateway 150, may send the mobile location information of the requester adjusted with random error information to an IM portal, such as IM portal 140, that may receive the location information. The location information of the requester can be used to respond to the location request with the location information attached. However, the requester's location information may also be stored in memory within the IM portal and retrieved by a location management server, such as location management server 330 of fig. 3, for example, for use in responding to further location requests.
A location request for a nearby friend may be received (block 530). For example, an IM gateway from a carrier network, such as IM gateway 150, may send a request to locate nearby friends to an IM portal, such as IM portal 140, that may receive the request. The location request may be included with the mobile location information of the requester adjusted with random error information. In one implementation, the location request may include a parameter (such as a particular radius from the requestor's current location) that defines an area in which the requestor's friends should be searched. In another implementation, the parameters of the requester of the location request may be provided to the IM portal and stored prior to the actual request.
The relative distance of the friend's location with random error information may be calculated (block 540). For example, a component in the IM portal may correlate the location information of the requestor with the available location information of the requestor's IM friends. For those subscribers on the requestor's friends list who are authorized to have their location information available to the requestor, the components in the IM portal may identify those within the radius parameters of the requestor.
A list of nearby friends with location and/or map data may be generated (block 550). For example, the IM portal may identify one or more of the requestor's IM friends in the list that have a location within the provided radius parameter. In one implementation, each friend may be included in a list, for example, with an address or description of the location of the record. In another implementation, a graphical map of the area of interest of the requestor can be generated by the location of each friend placed on top of the map. The graphical map ("friend map") can be used to display the current location and nearby surroundings of the requester. The friend map also displays the general location of the requestor's friends within a particular range.
The location and/or map data may be sent to a carrier network (block 560). For example, the IM portal may send a list of nearby friends and/or a map showing the approximate location of the friends to an IM gateway of the carrier network (such as, for example, IM gateway 150) for eventual delivery to the requestor.
FIG. 6 provides an exemplary graphical map displayed on a display of a mobile device. If multiple friends are near a particular area on the map, the IM service provider may group the friends together on a visual icon. If the requestor selects the viewing details using, for example, a soft key on the display of the requestor device, additional information about friends on the map can be provided.
In one implementation, an IM service provider may make available a "get maps" Application Programming Interface (API) in which a requestor's device may specify feet or miles representing the width or height of a map and a Boolean flag (Boolean flag) that would result in a map with at least one friend on the map. In the event that no friend is found within the radius parameter, the IM portal may generate a list or map that includes the nearest requester friend and indicate in the map or list that the search scale has changed because no friend was found within the radius parameter. For example, the request may return at least one friend whenever the boolean flag is set. For example, if the requestor's device requests a map range of "500" meters, but no friends are within the range, the IM portal can send an enlarged map to the extent that at least one friend can be displayed on the map. The size of the magnified map may be presented to the requestor in some visual form, such as a scale indicator on the map. Because horizontal and/or vertical dragging is allowed, the image sent to the requester device may be larger than the actual screen size. The "friend details" screen (available via soft keys) displays the relative estimated distance between the requestor and a particular friend.
In another implementation, the subscriber may be able to view their current location using an IM interface on the subscriber device. This location information may be reverse geocoding, meaning that it displays an address or a physical location name (e.g., "barbeque in the city," if the user has manually updated the location of the barbeque in the city). The IM portal may return both the physical location name and the physical location address once querying other subscribers.
In yet another implementation, detailed subscriber location information is available to subscribers in the vicinity of a particular requester. The "find nearby friends" option may require the requester to update his/her location information and display a friend map to the requester. The scale of the friend map may be a parameter set by the requestor that is directly related to the radius parameter used to define the group of "nearby friends". If there are no friends available in the initial map, the IM web server returns an enlarged map with at least one friend in the map, as long as the requestor has one friend for which location information is available and the requestor sets a boolean flag that may return at least one friend in the map. When the requestor views the friends map, a soft key selection is available for "friends details" where the subscriber can view location information available from the IM service provider for friends displayed on the friends map. The location of each friend is displayed as "near < x location >" to inform the requestor that the location information is not completely accurate.
Fig. 7 provides a process flow illustrating exemplary operations performed by various components within a system providing location-aware IM services when issuing a request to locate an IM friend. The process begins when the requester selects the "find nearby friends" feature from the IM software on the requester's mobile device 120 (line 705). The parameters that may constitute a "nearby" range may be default parameters of the IM software or may be set by the subscriber in advance. For the purposes of this example, the subscriber may have selected parameters for friends that are within a two kilometer radius.
The supplicant device 120 may send an authentication request to the LPS170 (line 710). The LPS170 may authenticate the request and may respond by providing two separate signals. LPS170 may provide PDE 160 with an indication of the valid duration of the requested session and the Mobile Directory Number (MDN) of requester device 120 (row 715). The LPS170 also sends a signal to the requester device 120 with the IP address of PDE 160 (line 720).
The requester device 120 sends the cell site information to PDE 160 (e.g., using an IP address provided from LPS 170) to locate the general location of the requester device 120 (row 725). Based on the cell site information, PDE 160 may send ephemeris data to requester device 120 that may be used to locate the appropriate satellite for global positioning (row 730). The requester device 120 may send a signal to the satellite 340 to request location information (row 735). The satellite 340 may respond to the signal by providing latitude and longitude coordinates representing the location of the requester device 120 (row 740). The latitude and longitude coordinates of requester device 120 may be sent to IM gateway 150 (row 745). IM gateway 150 may receive the latitude and longitude coordinates of requesting device 120 and add a random error (row 750). Introducing random errors into the coordinates makes it difficult for an individual with malicious intent to locate the exact location of the requester device 120, since a third party can never fully determine what "error" was introduced.
IM gateway 150 may send the randomly modified latitude and longitude coordinates of requesting device 120 to IM portal 140 (row 755). The IM portal 140 may have stored location data relating to other subscribers. IM portal 140 may query its infrastructure (e.g., location management server 330) to identify the location of any friends related to requester device 120. The location data of the friend can include, for example, randomized coordinates from the mobile device, a location associated with a fixed IP address, a manually entered location, and other location data. Assuming that one or more friends agree to allow the requester to view their location information, the IM portal 140 may identify the location and identity of any friend (i.e., "nearby friend") within a two kilometer radius of the randomly modified latitude and longitude coordinates of the requester device 120 (row 760). Nearby friend information may be sent to IM portal 150 (line 765) and thereafter passed to requesting device 120 (line 770).
The methods and systems described herein may provide the ability for a carrier network provider to receive a request from a mobile device of a requestor to locate an Instant Messaging (IM) friend in the requestor's IM friend list. The carrier network provider authenticates the request for use with location-based services on the carrier network and provides information to assist the requester's mobile device in identifying its location. The carrier network can receive the geographic location coordinates of the mobile device from the requestor and add random error information to the geographic location coordinates before sending a request to locate an IM friend and the geographic location coordinates to the IM portal. After processing through the IM portal, the carrier network may receive a list of IM friends of the requestor within a particular area near the geographic location coordinates with random error information and may send the list of IM friends within the particular area near the geographic location coordinates with random error to the mobile device of the requestor.
The foregoing description provides illustration and description, but is not intended to be exhaustive or to limit the embodiments to the precise form disclosed. Modifications and variations are possible in light of the above teachings or may be acquired from practice of the systems and methods disclosed herein.
For example, while it has been shown that random error information is introduced to the location of the requestor before it is sent to the IM portal, in other implementations, random error may be introduced to the latitude and longitude coordinates of nearby friends after the real coordinates have been used to locate the friends within the parameters of the requestor.
As a further example of variation, in one implementation, a dynamic group of friends (or "smart group") may be defined in which a subscriber may customize parameters used to determine the particular friends listed under the group when setting the parameters. The smart group may be set as a geo-fencing (geo-fence) for a specific location. For example, any subscriber within five kilometers or miles of the requester's current location may be a parameter of a particular intelligent group. The smart group parameter may have a maximum distance (e.g., 100 kilometers) and this maximum may coincide with the maximum zoom distance of the friend map (if zoom capability is available). A limited number of effective distances may be presented to the subscriber for selection as an intelligent group selection parameter (e.g., 1, 5, 20, or 100 kilometers). For example, the default intelligence group may use one kilometer as a parameter for "nearby friends". The criteria for the default smart group and the friends map is that they can be drawn together so that, for example, when a subscriber views friends listed in the default smart group, the friends also appear on the friends map. The radius parameter may be unique to the screen name and may be a parameter stored by the IM service provider to allow the subscriber to log in (e.g., desktop or mobile) from a different device and still maintain a constant "nearby friends" distance. For example, the subscriber uses the intelligent group to easily send instant messages to the entire group (e.g., multicast) or to easily select an IM recipient from the intelligent group.
As another example, a subscriber to a location-aware IM service may be able to manage privacy controls for devices having fixed locations or mobile devices. The subscriber may be able to turn on/off the shared location awareness completely dynamically. Alternatively, the subscriber may control which group may share location information (e.g., only friends/herself/specific contacts) and may allow/deny certain subscribers/groups to view subscriber location. For example, a subscriber may be able to establish a stealth (e.g., disable location-aware features) that is specific to all friends or individual friends. The subscriber's device may send these settings to the IM service provider, and the IM service provider may store the settings along with other privacy preferences. Privacy settings for the subscriber may be stored by the IM service provider and may be provided to the mobile device (via the gateway) during subscriber login. The privacy settings may also be modified by the subscriber of the mobile device while logged into the location-aware IM service.
As yet another example, the perception of the mobile location of the subscriber may be to opt-in (opt-in) solutions. In one implementation, the user can be prompted to opt-in to set his privacy controls when first logging in to the location-aware IM service. For example, the subscriber may have a "yes/no more query" option in response to a request for opt-in participation. After the subscriber has finished logging in to the location-aware IM service, the subscriber may also have the ability to opt out/opt in to share location information. Opt-out takes precedence over any existing privacy settings and may temporarily disable sharing of location with any other subscriber regardless of whether automatic location updating of the subscriber is activated.
As yet another example, a location-aware IM service may provide subscribers with the ability to send invitations to their friends to share their location with the subscribers. The subscriber can make requests using at least two different schemes: by a batch request during privacy settings or by an individual request to a particular friend on the subscriber's friend list. When the subscriber sets privacy for the location-aware IM service, the subscriber's device can check with the IM service provider to see with which friend the subscriber chooses to participate in sharing his/her location (during a particular occasion). If the subscriber's device finds that some of these friends do not share location awareness with the subscriber, the subscriber's device may prompt the subscriber whether they want to ask these friends to share location with the subscriber. The subscriber has authorized location awareness for the friend during a previous configuration attempt, and no request for the friend is sent. After initial setup, the subscriber can select individual friends and request an invitation to send to the individual friends to share a location with them. For example, if subscriber a initiates a request to subscriber B, subscriber B receives the option: (1) adding subscriber a to the friends list and agreeing to permit sharing of the location of subscriber B (and, optionally, adding subscriber a to the friends of subscriber B only if subscriber a is not on the friends list of subscriber B); (2) rejecting the request; (3) subscriber a is blocked. When subscriber a blocks subscriber B, subscriber B is no longer able to view the location of subscriber a (including the existing location) until subscriber a unblocks subscriber B. Subscriber B may also be given the option to know more about what location sharing means, the way they share the location, and how they download specific software.
As a further example, the subscriber's friends list may include visual identification that may make it easy for the subscriber to see who they share locations with and who shares locations with them. For example, the subscriber's device may also be able to determine that a friend is in a "stealth" state and display that state to the subscriber. For example, a single arrow (e.g., →) in one direction immediately after a presentation icon for a particular friend on the subscriber's friends list may represent a location that the subscriber shares but the friend does not share; a single arrow in the opposite direction (e.g. ←) can represent a location shared by friends but not shared by subscribers, while a double arrow (e.g. ← →) can represent a location shared in both directions. The IM service provider may allow an asynchronous update capability that allows the subscriber's device to determine which friends are currently sharing locations with the subscriber.
Further, while series of blocks have been described with regard to the flowcharts of fig. 4, 5, and 7, the order of the blocks may be different in other implementations. Additionally, non-dependent acts may be performed in parallel.
It should be apparent that the embodiments described herein may be implemented in many different forms of software, firmware, and hardware in the implementations illustrated in the figures. The actual software code or specialized control hardware used to implement the embodiments described herein is not limiting of the invention. Thus, the operation and behavior of the embodiments were described without reference to the specific software code-it being understood that software and control hardware can be designed to implement the embodiments based on the description herein.
Furthermore, certain implementations described herein may be implemented as "logic" that performs one or more functions. This logic includes hardware, such as a processor, microprocessor, application specific integrated circuit, or field programmable gate array, or a combination of hardware and software.
It should be emphasized that the term "comprises/comprising" when used in this specification is taken to specify the presence of stated features, integers, steps or components but does not preclude the presence or addition of one or more other features, integers, steps, components or groups thereof.
Even though specific combinations of features are recited in the claims and/or disclosed in the specification, these combinations are not limiting of the invention. Indeed, many of these features may be combined in ways not specifically recited in the claims and/or disclosed in the specification.
No element, act, or instruction used in the description of the present application should be construed as critical or essential to the invention unless explicitly described as such. Furthermore, an item without a quantifier can include one or more items. Where only one item is referred to, the terms "a" and "an" or similar language is used. Further, as used herein, the phrase "based on" means "based, at least in part, on" unless explicitly stated otherwise.

Claims (20)

1. A computing device implemented method comprising:
receiving a request from a requester mobile device to locate an Instant Messaging (IM) friend from a list of IM friends associated with the requester mobile device;
authenticating the request to use location-based services;
receiving geographic location coordinates from the requester mobile device;
adding random error information to the geographic location coordinates;
sending the request to locate an Instant Messaging (IM) friend and the geo-location coordinates with random error to an Instant Messaging (IM) portal;
receiving a list of Instant Messaging (IM) friends associated with the requester mobile device within a particular area near the geographic location coordinates with random error information; and
sending the list of Instant Messaging (IM) friends within the particular area near the geographic location coordinates with random error information to the requester mobile device.
2. The method of claim 1, further comprising:
receiving cell site information from the requester mobile device; and
ephemeris data is sent to the requester mobile based on the cell site information.
3. The method of claim 1, wherein the Instant Messaging (IM) portal stores location-based data related to one or more mobile Instant Messaging (IM) subscribers.
4. The method of claim 3, wherein the location-based data for the one or more mobile Instant Messaging (IM) subscribers comprises random error information generated prior to sending the location-based data for the one or more mobile Instant Messaging (IM) subscribers to the Instant Messaging (IM) portal.
5. The method of claim 1, wherein adding random error information comprises modifying the geographic location coordinates to default coordinates within a defined area based on a configurable maximum error limit.
6. The method of claim 1, wherein adding random error information comprises modifying the geographic location coordinates to include an error vector comprising a sum of random error vectors associated with particular geographic points.
7. The method of claim 1, wherein the particular region is a radius range from a location of a requestor mobile device selected by a requestor.
8. The method of claim 1, wherein the requestor mobile device defines a subset of Instant Messaging (IM) friends based on a list of IM friends within the particular area near the geographic location coordinates with random error information.
9. A system, comprising:
an Instant Messaging (IM) gateway to:
receiving a request to locate an Instant Messaging (IM) friend from an IM friend list associated with a requester mobile device,
receiving geographic location coordinates from the requester mobile device,
adding a random error to the geographical location coordinates,
sending the request to locate an IM friend and the geo-location coordinates with random error to an IM portal, an
Receiving a list of IM friends from the IM portal within a particular area near the geo-location coordinates with random error.
10. The system of claim 9, further comprising:
a location proxy server for authenticating a request from a requester mobile device to use a location-based service; and
a location determination entity to receive cell site information from the requester mobile device and to send ephemeris data to the requester mobile device based on the cell site information.
11. The system of claim 9, wherein the IM gateway further:
receiving geographic location coordinates of a mobile device from an IM friend; adding a random error to the geographic location coordinates of the mobile device of the IM friend; and sending the geographic location coordinates associated with the mobile device of the IM friend with a random error to the IM portal.
12. The system of claim 9, wherein the IM portal stores location-based data for one or more IM friends.
13. The system of claim 9, wherein the random error comprises a configurable maximum error limit.
14. The system of claim 9, wherein the particular region is a radius from a location of the requestor device selected by a requestor.
15. The system of claim 9, wherein the list of IM friends within the particular area near the geo-location coordinates with random error comprises a map of area including an indication of a location of each IM friend in a particular area.
16. The system of claim 9, wherein the requestor mobile device defines a subset of IM friends based on a list of IM friends within a particular area near the geographic location coordinates with random error.
17. A computer-readable memory comprising computer-executable instructions, the computer-readable memory comprising:
one or more instructions for receiving a request from a requester mobile device to locate an Instant Messaging (IM) friend from an IM friend list associated with the requester mobile device;
one or more instructions for transmitting ephemeris data to the requester mobile device based on cell site information from the requester mobile device;
one or more instructions for receiving geographic location coordinates from the requester mobile device;
one or more instructions for adding a random error to the geographic location coordinates;
one or more instructions for sending the request to locate an IM friend and the geo-location coordinates with random error to an IM portal;
one or more instructions for receiving a list of IM friends associated with the requestor mobile device within a particular area near the geographic location coordinates with random error; and
one or more instructions for transmitting a list of IM friends within the particular area in the vicinity of the geographic location coordinates with random error to the requestor mobile device.
18. The computer readable memory of claim 17, further comprising:
one or more instructions for authenticating the request to use location-based services.
19. A system, comprising:
means for receiving a request from a mobile device to locate an Instant Messaging (IM) friend within a particular range of the mobile device;
means for receiving geographic coordinates from the mobile device;
means for adding a random error to the geographic location coordinates;
means for sending the request and the geographic location coordinates with random error to an IM portal;
means for receiving a list of IM friends within the particular range of the mobile device based on the geographic location coordinates with random error; and
means for sending a list of IM friends within the particular range to the mobile device.
20. The system of claim 19, further comprising:
means for authenticating a request from the mobile device to locate an Instant Messaging (IM) friend within a particular range of the mobile device;
means for receiving cell site information from the mobile device; and transmitting ephemeris data to the mobile device based on the cell site information.
HK11107371.1A 2008-06-19 2009-06-09 Location-aware instant messaging HK1153342A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/142,207 2008-06-19

Publications (1)

Publication Number Publication Date
HK1153342A true HK1153342A (en) 2012-03-23

Family

ID=

Similar Documents

Publication Publication Date Title
US8655960B2 (en) Location-aware instant messaging
CN100383550C (en) Method and apparatus for locating multiple mobile units tracking another mobile unit
US9918194B2 (en) Apparatus and systems for providing location-based services within a wireless network
US8989778B2 (en) Secure and private location sharing for location-aware mobile communication devices
US7203502B2 (en) System for providing location-based services in a wireless network, such as locating individuals and coordinating meetings
KR101418640B1 (en) Identifying and locating users on a mobile network
US7116985B2 (en) Method for providing location-based services in a wireless network, such as varying levels of services
US7190960B2 (en) System for providing location-based services in a wireless network, such as modifying locating privileges among individuals and managing lists of individuals associated with such privileges
US7181227B2 (en) Data structures and methods for location-based services within a wireless network
US20070004426A1 (en) Location information display for cellular device
CN100450266C (en) Location determination system for wireless networks and related methods
WO2019201651A1 (en) Peer to peer communication system
HK1153342A (en) Location-aware instant messaging
KR20040047276A (en) Method of providing community service using location based service