Mobile device alert generation system and method

Information

  • Patent Grant
  • 9510156
  • Patent Number
    9,510,156
  • Date Filed
    Thursday, November 19, 2015
    9 years ago
  • Date Issued
    Tuesday, November 29, 2016
    8 years ago
Abstract
A computer-implemented method for providing an alert regarding mobile device location is provided. The method includes obtaining location data corresponding to locations of a mobile device over a period of time. A location pattern is determined based on the location data. The current location of the mobile device is detected at a time based on the determined pattern, and an alert is provided regarding the current location of the mobile device. A system for providing alerts regarding mobile device location is also provided.
Description
BACKGROUND

Mobile communication devices such as cellular telephones, smart phones and the like are frequently enabled to receive signals from Global Positioning System (GPS) satellites for estimating device location coordinates. Also, many mobile communication devices have the ability to perform network scans to determine radio signal information, including identifiers associated with nearby cellular base transceiver stations, and radio access points such as WiFi™ and Bluetooth™ access points. Further, mobile communication devices are frequently enabled to perform signal strength estimates and other signal measurements of incoming signals. Cellular base transceiver stations and radio access points are primarily used for providing voice and data service to a mobile device, but due to their relative permanence can also be used for determining device location.


A number of techniques exist to translate terrestrial signal information into location, including cell triangulation and trilateration techniques, such as Time Difference of Arrival (“TDOA”), Enhanced Observed Time Difference (“EOTD”), Advanced Forward Link Trilateration (“AFLT”) and Enhanced Cell Identification (“E-CID”). Such methods are considered terrestrial counterparts to the GPS satellite-based system which uses a form of triangulation based on satellite positioning. A mobile device may be configured for determining its own location, or in some cases, a remote system in communication with a mobile device via a network can be configured to determine a mobile device's location using translation techniques such as those described above.


It would be desirable to leverage known location determining processes to provide alerts to users and applications regarding the location of particular mobile communication devices. It would be further desirable that such functionality be provided with a high level of automation to enhance user experience.


SUMMARY

According to an embodiment of the invention, a computer-implemented method for providing an alert regarding mobile device location is provided. The method includes obtaining location data corresponding to locations of a mobile device over a period of time. A location pattern is determined based on the location data. The current location of the mobile device is detected at a time based on the determined pattern, and an alert is provided regarding the current location of the mobile device.


According to another embodiment of the invention, a computer-implemented method for providing an alert regarding mobile device location is provided. The method includes obtaining location data corresponding to locations of a plurality of mobile device users over a period of time. A location pattern of the plurality of mobile device users is determined based on the location data. A current location of a particular mobile device user is detected, and an alert is provided based on the current location of the particular mobile device user and the determined location pattern.


According to another embodiment of the invention, a computer-implemented method for providing an alert regarding mobile device location is provided. The method includes detecting requests for location data corresponding to the location of one or more mobile devices over a period of time. A request pattern is determined based on the requests for location data. A current location of the one or more mobile devices is detected at a time based on the determined request pattern. An alert is provided rendering accessible the current location at the time based on the determined request pattern.


According to another embodiment of the invention, a computer-implemented method for providing an alert regarding mobile device location is provided. The method includes detecting requests from a plurality of users for location data corresponding to the location of a plurality of mobile devices. A request pattern of the plurality of users is determined based on the requests for location data. A current location of a particular mobile device is detected at a time based on the determined request pattern, and an alert is provided rendering accessible the current location of the particular mobile device.


According to another embodiment of the invention, a computer-implemented method for providing an alert regarding mobile device location is provided. The method includes receiving identifying information of a user corresponding to one or more environmental conditions. The user is detected at a particular location. Mapping data is received defining positioning of the one or more environmental conditions, and an alert is provided to the user regarding the environmental condition in response to the one or more environmental conditions corresponding to the detected particular location.


According to another embodiment of the invention, a system for providing an alert regarding mobile device location including one or more computing devices with one or more memories comprising instructions operable to enable the one or more computing devices to perform a procedure. The procedure includes obtaining location data corresponding to locations of a mobile device over a period of time and determining a location pattern based on the location data. A current location of the mobile device is detected at a time based on the determined pattern, and an alert is provided regarding the current location of the mobile device.


Elements described with respect to a particular invention embodiment in the above summary or in the below detailed description can be used in the performance of a method or implementation of a system in one or more other invention embodiments described herein.





BRIEF DESCRIPTION OF THE DRAWING(S)

The foregoing summary as well as the following detailed description will be readily understood in conjunction with the appended drawings which illustrate embodiments of the invention. In the drawings:



FIG. 1 is a schematic illustration of an exemplary operating environment in which a coordination system is operable.



FIGS. 2-6 are flow charts showing computer-implemented methods for providing alerts regarding mobile device location.



FIG. 7 is a plan view of an example city streetscape for illustrating methods according to invention embodiments.





DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT(S)

Referring to FIG. 1, a schematic illustration is shown of an exemplary operating environment 10 in which mobile device communication systems, in the form of mobile devices 12 and a coordination system 30, can be used. The mobile devices 12 and coordination system 30 each include one or more computing devices and one or more memory devices, which computing devices and memory devices can be integrally constructed or connected in any suitable manner. It is to be understood that a system or server as described herein comprises a computer system, as is known in the art.


Each mobile device 12 preferably provides a platform which enables an operating system 14 and a module of instructions 16 preferably residing in a memory of the mobile device 12. The mobile device 12, preferably a wireless transmitting and receiving device with cellular telephone functionality, includes a transceiver 18 for communication with cellular base transceiver stations 60, 62 (“base stations”) and a user interface 20, preferably including a display and one or more audio speakers. The transceiver 18 can be configured to communicate with any suitable wireless stations or devices. The mobile device 12 can alternatively include a plurality of transceivers for communication with a plurality of wireless stations or devices of differing protocols. A GPS receiver 22 is preferably provided to receive signals from GPS satellites 70 for determining a location of the mobile device 12.


The coordination system 30 includes a processor or processors and memory or memories which enable operation of an operating system 32, an alert module 40, and databases 36, 38, 42. Preferably, collected mobile device location data is stored in a location database 36, map data corresponding to roads, addresses, building dimensions, and other definable geographic data are stored in a map database 38, and user account information for particular users is stored in a user account database 42. The coordination system 30 is configured to collect data indicative of mobile device location of the mobile devices 12 via a telecommunication network 72, which can include the Internet and other networks, and to associate the mobile devices 12 with particular users associated with accounts in the user account database 42. The location data is preferably received in the form of tuples. Each tuple preferably includes one or more location coordinates and one or more time stamps respectively associated with the one or more location coordinates. Each tuple also preferably includes an identification (“ID”) relating the tuple to a particular mobile device and a precision indication indicating the precision and/or accuracy of the one or more location coordinates.


The tuples or other suitable mobile device location data can be received by the coordination system 30 in the form of one or more short message service (“SMS”) messages received from the mobile devices 12 via a short message service center (“SMSC”) 74, which can be integrated with the telecommunication network 72 or otherwise provided. Alternatively, location data can be sent by the mobile devices 12 using internet protocol (“TCP/IP”) and received by the coordination system 30 via an internet protocol (“IP”) gateway 76, which can be integrated with the telecommunication network 72 or otherwise provided. The coordination system 30 can alternatively query a remote position determining entity (“PDE”) 78, a Gateway Mobile Location Center (“GMLC”), or other system for disseminating location data associated with mobile devices, which PDE 78, GMLC or other system can be provided as a service by a telecommunication carrier or other party, and which system can deliver data to the coordination system 30 via internet protocol through the IP gateway 76 or via other suitable protocol. The coordination system 30 can alternatively receive mobile device location data in any suitable manner.


One or more external application servers 73 can communicate with the coordination system 30 or a mobile device 12 and execute applications which use location data provided by the mobile devices 12 or the coordination system 30 to provide content or services to a user of a particular mobile device 12 or other users requiring data regarding a particular mobile device 12. Similarly, local applications 17 can use such location data to provide content or services to a user of a particular mobile device 12 or other users.


Referring to FIG. 2, a method 200 for providing an alert regarding mobile device location is shown. The method 200 is described with reference to components shown in the operating environment 10 of FIG. 1, wherein the coordination system 30 is preferably configured to perform the method 200 and includes memory for storing instructions for performing the method 200. The method 200 can alternatively be performed via other suitable systems or devices. For example, the mobile device 12 can be configured to execute an application for performing the method 200 via the instructions module 16.


The method 200 includes obtaining location data corresponding to locations of a mobile device such as the mobile device 12 over a period of time (step 202) and determining a location pattern based on the location data (step 204). A current location of the mobile device 12 is detected at a time based on the determined pattern (step 206), and an alert is provided regarding the current location of the mobile device (step 208). Location data is obtained, for example, by the coordination system 30 and stored in the location database 36, and the location pattern is determined, for example, by the alert module 40 and stored in the location database 36. The current location is detected, for example, by the coordination system 30, responsive to the pattern determined by the alert module 40, via data received via a mobile device's GPS receiver 22, a remote position determining entity (“PDE”) 78, a Gateway Mobile Location Center (“GMLC”), or other system for disseminating location data. The location alert is provided, for example, by the alert module 40 to a user via a user system 52 through the network 72.


The mobile device 12 preferably corresponds to a subject user such as a child, a pet, or any person or animal which under certain circumstance may require monitoring. The subject user possesses the mobile device 12 or the mobile device 12 is attached to the subject user to permit the subject user's location to be monitored by a supervising user via a user system 52, which can include any suitable network-connectable computing device. The supervising user preferably includes a parent, guardian or other person with supervisory or oversight responsibility for a particular subject user. In the case that the subject user is a pet, the supervising user can be a pet owner. The alert is preferably scheduled and provided to the supervising user as a data transmission. A user can be both a subject user and a supervising user, for example in the case of two spouses with mutual oversight responsibilities for each other.


The alert can alternatively be provided to a particular application, such as a social networking application. For example, the instruction module 16 of the mobile device 12 or the coordination system 30 executing the method 200 can provide the alert to a social networking application executed on a remote application server 73 via the network 72, which social networking application is accessible by a user system 52 to permit access by a supervising user to information contained in the alert. In another example, the instruction module 16 of the mobile device 12 executing the method 200 can provide the alert to a locally executed application 17 configured to transmit the alert via suitable protocol to the user system 52.


Prior to scheduling or transmitting alerts, a suggestion can be provided, for example by the coordination system 30 or an application executed on the mobile device 12. The suggestion can be provided to the supervising user via a user system 52 in the form of a query as to whether the supervising user desires to receive an alert regarding the current position of the subject user at a particular time. A suggestion can further be provided to the subject user for example via mobile device 12, in the form of a query as to whether the subject user desires to permit the supervising user to receive an alert regarding the current position of the subject user. The coordination system 30, the mobile device 12 or other suitable system can provide the alert in response to receiving acceptance of the suggestion from the subject user and/or the supervising user.


For purposes of illustration of methods described herein, a plan view of an example city streetscape 900 is shown in FIG. 7. The streetscape 900 includes city blocks 902 separated by streets 904 permitting travel of vehicles 906. Various building structures are provided on the city blocks 902 including physical locations corresponding to homes 908, an office building 910, a retail store 912, a fitness club 914, playing courts 916, a supermarket 918, a restaurant 920, a parking lot 922, and a library 924. A user 8, carrying a mobile device 12, walks or drives a vehicle 906 within the streetscape 900.


The location pattern can be determined by determining the mobile device 12 is at a particular location during a particular time period of a day for a predetermined number of days. The alert can be provided based on the determined particular time period of the day, and preferably, the alert is provided substantially during such particular time period of day or a predetermined length of time thereafter. In an example pursuant to the method 200, a subject user is detected via a location enabled mobile device to be present at a particular location (e.g. the fitness club 914) from about 7:00 pm to about 9:00 pm each Monday for 3 consecutive Mondays. In response to this detected behavior, the subject user's position is detected at various times between 7:00 pm and 9:00 pm each Monday thereafter. If the subject user is not present at the fitness club 914 between 7:00 pm and 9:00 pm on a Monday, an alert reporting the subject user's current location to a supervising user is transmitted at about 8:00 pm or one or more other times between 7:00 pm and 9:00 pm. Alternatively, the alert including the current location can be transmitted between about 7:00 pm and 9:00 pm each Monday regardless of whether the subject user is present at the fitness club 914. In such manner a supervising user such as the subject user's spouse can learn whether or not the subject user has arrived at the fitness club 914 as expected.


The location pattern can alternatively be determined by determining the mobile device 12 leaves a particular location during a particular time period of a day for a predetermined number of days. The alert can be provided based on the determined particular time period of the day, and preferably the alert is provided substantially during such particular time period of the day or a predetermined length of time thereafter. In an example pursuant to the method 200, a subject user is detected via a location enabled mobile device to leave a first location corresponding to the user's place of work (e.g. office building 910) between 6:00 pm and 7:00 pm for 5 consecutive workdays, Monday through Friday. In response to this detected behavior, an alert reporting the subject user's location to a supervising user is transmitted to a supervising user one or more times at or about 7:00 pm or soon thereafter each workday, Monday through Friday. In such manner, a supervising user such as the subject user's spouse can learn whether the subject user is still at work at the office building 910 at 7:00 pm on a given day.


Referring to FIG. 3, a method 300 for providing an alert regarding mobile device location is shown. The method 300 is described with reference to components shown in the operating environment 10 of FIG. 1, wherein the coordination system 30 is preferably configured to perform the method 300 and includes memory for storing instructions for performing the method 300. The method 300 can alternatively be performed via other suitable systems or devices. For example, a mobile device 12 can be configured to execute an application for performing the method 300. The method 300 includes obtaining location data corresponding to locations of a plurality of mobile device users over a period of time via the users' mobile devices (step 302) and determining a location pattern of the plurality of mobile device users based on the location data (step 304). A current location of a particular mobile device user is detected via the user's mobile device (step 306), and an alert is provided based on the current location of the particular mobile device user and the determined location pattern (step 308). The method 300 enables patterns in similar or dissimilar users' location behaviors to be used to create pertinent alerts for a particular user. To determine similarity between users, identifying information for the mobile device users is preferably obtained.


Location data is obtained, for example, by the coordination system 30 and stored in the location database 36, and the location pattern is determined, for example, by the alert module 40 and stored in the location database 36. The current location is detected, for example, by the coordination system 30, responsive to the pattern determined by the alert module 40, via data received via a mobile device's GPS receiver 22, a remote position determining entity (“PDE”) 78, a Gateway Mobile Location Center (“GMLC”), or other system for disseminating location data. The location alert is provided, for example, by the alert module 40 to a user via a user system 52 through the network 72.


In performing the method 300, identifying information corresponding to the plurality of mobile device users and the particular mobile device user is preferably obtained. The identifying information of each mobile device user preferably includes a plurality of user identifying criteria including one or more of a user address, city of residence, state of residence, age, gender, income level, education level, music preference, and occupation. Alternatively, the identifying information can include any suitable user identifying criteria. The identifying information of the plurality of mobile device users is compared with the identifying information of the particular mobile device user. The location pattern of the plurality of mobile device users is determined in response to the identifying information of the plurality of mobile device users corresponding to, or alternatively not corresponding to, the identifying information of the particular user. The identifying information of the mobile device users corresponds when at least one element of the identifying information matches. For example, location data from a plurality of users having an income level approximately equal to the income level of the particular user is used in determining the location pattern used to trigger an alert based on a current location of the particular user's mobile device. In another example, location data from a plurality of users having music preferences different from the music preferences of a particular user is used in determining the location pattern which is used to trigger an alert based on a current location of the particular user's mobile device.


The identifying information can be manually entered or uploaded to the coordination system 30 at any suitable time by a particular user via a mobile device 12, user system 52 or other system to create a profile for a particular mobile device user which can be stored in the user account database 42. Identifying information is preferably provided to the coordination system 30 via a web or WAP interface. In the case that the mobile device user is a child or otherwise under the care of a supervising user, the supervising user preferably provides the identifying information.


Alternatively, identifying information can be automatically gathered via connections to one or more other systems, such as an application server 73 via the network 72. The application server 73 can include, for example, a social networking application server hosting a social networking application enabling an online social network. The coordination system 30 is preferably configured to access and interface with an online social network supported by the social networking application to obtain a mobile device user's identifying information.


In performing the method 300, the location pattern can be determined by determining the plurality of users are at a particular location during a particular time period of a day for a predetermined number of days. The alert is thereafter provided in response to the current location of the particular mobile device being at the particular location during the particular time period of the day. Alternatively, the alert is provided in response to the current location of the particular mobile device being a predetermined distance from the particular location during the particular time period of the day. The alert can be provided to the particular user whose location is being detected or another user such as a supervising user (e.g. parent, spouse) desiring location information regarding the particular user (e.g. child, spouse). The alert can alternatively be provided to a local or remote application for example in one of the manners described above. The alert can include the location of the particular user, for example in the case where the alert is transmitted to a supervising user. Alternatively, the alert can include a notification of a particular location, preferably nearby the current location of the particular user, in the form of a suggestion that the particular user travel to or stay at the particular location, for example in the case where a particular user wants to be directed to a location frequented by users with like identifying information.


Prior to scheduling or transmitting alerts, a suggestion can be provided to the particular user, or alternatively another user, in the form of a query as to whether the user desires to receive an alert regarding the current position of the particular user. An acceptance of the suggestion indicating a desire to receive the alert can be obtained from the particular user, or alternatively the other user (e.g. a supervising user). The alert can thereafter be provided to the particular user or other user in response to receiving the acceptance of the suggestion.


In an example pursuant to the method 300, a plurality of users determined to be schoolmates of a particular user (e.g. Billy) are detected to go to a particular library each Friday afternoon between 3:00 pm and 5:00 pm over a period of weeks. Based on Billy's schoolmates' location pattern including Friday afternoon visits to the library, an alert is scheduled to fire when Billy arrives at the particular library 924. When Billy arrives at the library 924 between 3:00 pm and 5:00 pm, the alert is transmitted to Billy's mother notifying her that Billy is at the library. Alternatively, Billy's mother can be notified if Billy is not present at the library between 3:00 pm and 5:00 pm.


In another example pursuant to the method 300, information including an event schedule with event type listings for a particular location (e.g. Bloom's Saloon 920) is obtained. A particular user (e.g. Kelly) is determined to frequently go to the particular location (e.g. Bloom's Saloon 920) when a particular type of event is occurring (e.g. bluegrass music is playing), but not when another type of event is occurring (e.g. heavy metal music is playing). One night, a group of users are determined to be in attendance at Bloom's Saloon 920 who have been determined to have previously attended Bloom's Saloon 920 on nights when heavy metal music is playing, but not when bluegrass music is playing. The event preferences (e.g. music preferences) of Kelly and the group of users are compared. An alert is transmitted to Kelly that Kelly may not be interested in attending Bloom's Saloon 920 in view of the differing musical tastes of the group of users, and preferably in response to Kelly's current location being at or within a predetermined distance from Bloom's Saloon 920. An alert is alternatively transmitted to Kelly informing Kelly that she may or may not be interested in attending other nearby venues in view of the like or differing musical tastes of groups of users present at such other venues. Accordingly, an alert can be provided as a recommendation or suggestion that a particular mobile device user be present (or not be present) at a particular location corresponding to or a predetermined distance from the particular user's current location in response to an event preference of the particular mobile device user substantially matching (or not matching) an event preference of a plurality of other mobile device users. In this example, user identifying information in the form of the event preferences is therefore derived from determined locations of the users and information regarding events occurring at such locations.


Referring to FIG. 4, a method 400 for providing an alert regarding mobile device location is shown. The method 400 is described with reference to components shown in the operating environment 10 of FIG. 1, wherein the coordination system 30 is preferably configured to perform the method 400 and includes memory for storing instructions for performing the method 400. The method 400 can alternatively be performed via other suitable systems or devices. For example, a mobile device 12 can be configured to execute an application for performing the method 400. The method 400 includes detecting requests for location data corresponding to the location of one or more mobile devices over a period of time (step 402) and determining a request pattern based on the requests for location data (step 404). A current location of the one or more mobile devices is detected at a time based on the determined request pattern (step 406), and an alert is provided rendering accessible the current location at the time based on the determined request pattern (step 408).


Requests for location data are detected, for example, by the coordination system 30 and stored in the user database 42, and the request pattern is determined, for example, by the alert module 40 and stored in the user database 42. The current location is detected, for example, by the coordination system 30, responsive to the pattern determined by the alert module 40, via data received via a mobile device's GPS receiver 22, a remote position determining entity (“PDE”) 78, a Gateway Mobile Location Center (“GMLC”), or other system for disseminating location data. The alert is provided, for example, by the alert module 40, rendering accessible the current location to a user or application via the network 72.


The one or more mobile devices preferably correspond to at least a first user. Preferably the detected requests originate from a second user, such as a supervising user, and the alert renders the current location of the first user accessible to the second user. The request pattern is preferably determined by detecting a request originating from the second user occurring during a particular time period of a day for a predetermined number of days, and the alert is preferably provided on a later day during the particular time period of the day. The request pattern can alternatively be determined by detecting a request originating from the second user positioned at a particular location a predetermined number of times, and providing the alert to the second user in response to later detecting the second user at the particular location. The alert can alternatively be provided to a local or remote application for example in one of the manners described above.


In an example pursuant to the method 400, a request from a user (e.g. Monica) for her dog's location is detected each day, wherein a location aware mobile device is attached to the dog. Monica's request is detected as occurring each day upon Monica's arrival at her place of work (e.g. office building 910). Thereafter, an alert is transmitted to Monica every workday upon detecting Monica's mobile device at Monica's place of work at the office building 910. For example, the coordination system 30 can be configured to schedule an alert via the alert module 40 to be transmitted to Monica's mobile device 12 immediately upon detecting the mobile device 12 at the office building 910.


Referring to FIG. 5, a method 500 for providing an alert regarding mobile device location is shown. The method 500 is described with reference to components shown in the operating environment 10 of FIG. 1, wherein the coordination system 30 is preferably configured to perform the method 500 and includes memory for storing instructions for performing the method 500. The method 500 can alternatively be performed via other suitable systems or devices. For example, a mobile device 12 can be configured to execute an application for performing the method 500. The method 500 includes detecting requests from a plurality of users for location data corresponding to the location of a plurality of mobile devices (step 502) and determining a request pattern of the plurality of users based on the requests for location data (step 504). A current location of a particular mobile device is detected at a time based on the determined request pattern (step 506), and an alert is provided rendering accessible the current location of the particular mobile device (step 508).


Requests for location data are detected, for example, by the coordination system 30 and stored in the user database 42, and the request pattern is determined, for example, by the alert module 40 and stored in the user database 42. The current location is detected, for example, by the coordination system 30, responsive to the pattern determined by the alert module 40, via data received via a mobile device's GPS receiver 22, a remote position determining entity (“PDE”) 78, a Gateway Mobile Location Center (“GMLC”), or other system for disseminating location data. The alert is provided, for example, by the alert module 40, rendering accessible the current location to a user or application via the network 72.


Identifying information corresponding to the plurality users and a particular user is preferably obtained. Identifying information of the plurality of users is compared with the identifying information of the particular user, for example via the alert module 40. The request pattern of the plurality of users is determined in response to the identifying information of the plurality of users corresponding to the identifying information of the particular user, whereby request data from users having identifying information which matches in a predetermined manner the identifying information of the particular user is used to define the request pattern used to determine the timing of the alert. The particular user is provided with the alert rendering accessible the current location of the particular mobile device. The alert can alternatively be provided to a local or remote application, for example in one of the manners described above, which application is preferably accessible by the particular user. For example, the particular user can correspond to a supervising user such as a parent, the particular mobile device can be carried by a supervised subject user such as a child of the parent, the other plurality of users can correspond for example to other supervising users such as other parents, and the plurality of mobile devices can correspond to other supervised users such as children of the other parents.


Prior to scheduling or transmitting alerts, a suggestion can be provided to the particular user in the form of a query as to whether the user desires to receive an alert regarding the current position of a particular mobile device. An acceptance of the suggestion indicating a desire to receive the alert can be obtained from the particular user. The alert can thereafter be provided to the particular user in response to receiving such acceptance.


In an example pursuant to the method 500, a particular user Margaret has a 13 year old child. A plurality of other users also have 13 year old children. The other users schedule an alert to automatically check locations of their respective children at about 10:00 pm on all school nights. The scheduling of the alert can be performed for example by a request to the coordination system 30. In response to the alert scheduled by the other users, a suggestion is provided to Margaret to schedule an alert to occur at about 10:00 pm on school nights including a current location of her child. The suggestion and alert can be provided in a transmission for example by the coordination system 30 via the alert module 40 to a device or system operated by Margaret.


Referring to FIG. 6, a method 600 for providing an alert regarding mobile device location is shown. The method 600 is described with reference to components shown in the operating environment 10 of FIG. 1, wherein the coordination system 30 is preferably configured to perform the method 600 and includes memory for storing instructions for performing the method 600. The method 600 can alternatively be performed via other suitable systems or devices. For example, a mobile device 12 can be configured to execute an application for performing the method 600. The method 600 includes receiving identifying information of a user corresponding to one or more environmental conditions (step 602) and detecting the user at a particular location (step 604). Mapping data is received defining positioning of the one or more environmental conditions (step 606), and an alert is provided to the user in response to the one or more environmental conditions corresponding to the detected particular location (step 608). The mapping data preferably includes geographic information system (GIS) mapping data. The user is preferably detected at the particular location a predetermined number of times to establish a pattern prior to providing an alert corresponding to the particular location.


In an example pursuant to the method 600, an indication is received from a particular user (e.g. Paul) that he is allergic to pollen. Paul is detected to travel to a particular location corresponding to a particular location, his place of work, retail store 912, a predetermined number of times evidencing a pattern of travel to the particular location. Mapping data (e.g. GIS mapping data) is received indicating that today there is a high concentration of pollen in the air near the retail store 912. Based on Paul's indication and the mapping data, an alert is provided to Paul indicating that his work is near an area with a high concentration of allergen (e.g. pollen). The indication from Paul and the mapping data can be received for example by the coordination system 30, and the coordination system 30 can transmit the alert to Paul through the network 72 via his mobile device 12 indicating that his place of work is near a high concentration of pollen.


While embodiments of the invention have been described in detail above, the invention is not limited to the specific embodiments described above, which should be considered as merely exemplary. Further modifications and extensions of the invention may be developed, and all such modifications are deemed to be within the scope of the invention as defined by the appended claims.

Claims
  • 1. A method for providing an alert regarding mobile device location, the method comprising: receiving identifying information of a user of a mobile device corresponding to at least one environmental condition;determining by the mobile device via data from a Global Positioning System (“GPS”) receiver a plurality of positions of the mobile device at a plurality of times;determining a location pattern based on the plurality of positions at the plurality of times;receiving mapping data defining positioning of the at least one environmental condition;determining by the mobile device via data from the Global Positioning System (“GPS”) receiver, at a time based on the location pattern, a current location of the mobile device; andproviding an alert regarding the at least one environmental condition to the user in response to the at least one environmental condition corresponding to the current location.
  • 2. The method of claim 1, wherein the mapping data comprises geographic information system (GIS) mapping data.
  • 3. The method of claim 1, wherein: the identifying information comprises an indication of an allergy of the user;the at least one environmental condition comprises an indication of an allergen present in a particular geographic area; andthe alert comprises an indication that the allergen is present in the current location of the mobile device.
  • 4. A method for providing an alert regarding mobile device location, the method comprising: receiving identifying information of a user of a mobile device corresponding to at least one environmental condition;determining by the mobile device via data from a Global Positioning System (“GPS”) receiver a plurality of positions of the mobile device at a plurality of times;determining a location pattern based on the plurality of positions at the plurality of times, the location pattern identifying a particular location where the user was present on multiple occasions;receiving data defining positioning of the at least one environmental condition;determining that the at least one environmental condition corresponds to the location pattern;providing an alert to the user regarding the at least one environmental condition to the user in response to the at least one environmental condition corresponding to the particular location where the user was present on multiple occasions.
  • 5. The method of claim 4, wherein: the identifying information comprises an indication of an allergy of the user;the at least one environmental condition comprises an indication of an allergen present in a particular geographic area; andthe alert comprises an indication that the allergen is present at the particular location where the user was present on multiple occasions.
  • 6. The method of claim 4, further comprising: providing at least one network-connected computing system (“computing system”);receiving by the computing system from the mobile device via a network the positions of the mobile device at a plurality of times;receiving by the computing system via the network the data defining the positioning of the at least one environmental condition;determining by the computing system the location pattern and that the at least one environmental condition corresponds to the location pattern; andproviding by the computing system the alert via the network.
  • 7. The method of claim 4, wherein determining the location pattern comprises determining the mobile device is at the particular location during a particular time period of a day for a predetermined number of days.
  • 8. The method of claim 4, wherein determining the location pattern comprises determining the mobile device leaves a particular location during a particular time period of a day for a predetermined number of days.
  • 9. The method of claim 4, further comprising providing the alert to at least one of a local application or a remote application.
  • 10. The method of claim 4, further comprising obtaining via a network the identifying information from a system executing a social networking application configured to retrieve the identifying information.
  • 11. The method of claim 4, further comprising: suggesting the user receive the alert;obtaining an acceptance of the suggestion from the user; andproviding the alert in response to obtaining the acceptance of the suggestion.
  • 12. A mobile communication device (“mobile device”) comprising a Global Positioning System (“GPS”) receiver, at least one computing device, and at least one memory comprising instructions operable to enable performance of a method comprising: receiving identifying information of a user of the mobile device corresponding to at least one environmental condition;determining by the mobile device via data from the GPS receiver a plurality of positions of the mobile device at a plurality of times;determining a location pattern based on the plurality of positions at the plurality of times;receiving mapping data defining positioning of the at least one environmental condition;determining by the mobile device via data from the Global Positioning System (“GPS”) receiver, at a time based on the location pattern, a current location of the mobile device; andproviding an alert regarding the at least one environmental condition to the user in response to the at least one environmental condition corresponding to the current location.
CROSS REFERENCE TO RELATED APPLICATION(S)

This application is a continuation of U.S. patent application Ser. No. 14/275,261, filed May 12, 2014, which is a divisional of U.S. patent application Ser. No. 13/087,250, filed on Apr. 14, 2011, which claims the benefit of U.S. Provisional Application No. 61/406,125, filed Oct. 23, 2010, which applications are incorporated by reference as if fully set forth.

US Referenced Citations (175)
Number Name Date Kind
4788711 Nasco Nov 1988 A
5223844 Mansell et al. Jun 1993 A
5278539 Lauterbach et al. Jan 1994 A
5535431 Grube et al. Jul 1996 A
5604787 Kotzin et al. Feb 1997 A
5610821 Gazis et al. Mar 1997 A
5628050 McGraw et al. May 1997 A
5724243 Westerlage et al. Mar 1998 A
5732383 Foladare et al. Mar 1998 A
5815802 Loechner, II Sep 1998 A
5833479 Talbot Nov 1998 A
5907293 Tognazzini May 1999 A
5948040 Delorme et al. Sep 1999 A
5959577 Fan et al. Sep 1999 A
5959945 Kleiman Sep 1999 A
6031455 Grube et al. Feb 2000 A
6052598 Agrawal et al. Apr 2000 A
6091956 Hollenberg Jul 2000 A
6115611 Kimoto et al. Sep 2000 A
6134454 Foladare et al. Oct 2000 A
6236933 Lang May 2001 B1
6240294 Hamilton et al. May 2001 B1
6243039 Elliott Jun 2001 B1
6256577 Graunke Jul 2001 B1
6278375 Hucker Aug 2001 B1
6351221 Phillips et al. Feb 2002 B1
6381465 Chern et al. Apr 2002 B1
6400956 Richton Jun 2002 B1
6437696 Lemelson et al. Aug 2002 B1
6501947 Hunzinger et al. Dec 2002 B1
6519465 Stilp et al. Feb 2003 B2
6587835 Treyz et al. Jul 2003 B1
6615130 Myr Sep 2003 B2
6631267 Clarkson et al. Oct 2003 B1
6647257 Owensby Nov 2003 B2
6647269 Hendrey et al. Nov 2003 B2
6701234 Vogelsang et al. Mar 2004 B1
6731238 Johnson May 2004 B2
6731940 Nagendran May 2004 B1
6745021 Stevens Jun 2004 B1
6772213 Glorikian Aug 2004 B2
6795710 Creemer Sep 2004 B1
6813502 Son et al. Nov 2004 B2
6816720 Hussain et al. Nov 2004 B2
6834195 Brandenberg et al. Dec 2004 B2
6873850 Dowling et al. Mar 2005 B2
6885874 Grube et al. Apr 2005 B2
6895238 Newell et al. May 2005 B2
6914525 Rao et al. Jul 2005 B2
6941126 Jordan, Jr. Sep 2005 B1
6952645 Jones Oct 2005 B1
6961562 Ross Nov 2005 B2
6985696 Bromham et al. Jan 2006 B2
7039387 Macolly et al. May 2006 B2
7054612 Patel May 2006 B2
7079850 Cameron Jul 2006 B2
7123926 Himmelstein Oct 2006 B2
7149533 Laird et al. Dec 2006 B2
7184744 Schnabel Feb 2007 B1
7194249 Phillips et al. Mar 2007 B2
7202814 Caspi et al. Apr 2007 B2
7248961 Park et al. Jul 2007 B2
7260378 Holland et al. Aug 2007 B2
7301450 Carrino Nov 2007 B2
7400892 Banks Jul 2008 B1
7525484 Dupray et al. Apr 2009 B2
7593740 Crowley et al. Sep 2009 B2
7606772 Flinn et al. Oct 2009 B2
7627334 Cohen Dec 2009 B2
7643834 Ioppe et al. Jan 2010 B2
7764946 Sennett et al. Jul 2010 B1
7805131 Cholkar et al. Sep 2010 B2
7864073 Lee et al. Jan 2011 B2
7876239 Horstemeyer Jan 2011 B2
7881864 Smith Feb 2011 B2
7941161 Ioppe et al. May 2011 B2
7941162 Ioppe et al. May 2011 B2
7957751 Cone Jun 2011 B2
7974637 Taveniku Jul 2011 B1
7983659 Shinya Jul 2011 B2
8023959 Bhuta et al. Sep 2011 B2
8032153 Dupray et al. Oct 2011 B2
8073460 Scofield et al. Dec 2011 B1
8073907 Roumeliotis et al. Dec 2011 B2
8145240 Roumeliotis et al. Mar 2012 B2
8200248 Ioppe et al. Jun 2012 B2
8204514 Ioppe et al. Jun 2012 B2
8229421 Hotes et al. Jul 2012 B2
8244236 Roumeliotis et al. Aug 2012 B2
8255393 Yu et al. Aug 2012 B1
8315905 Adair Nov 2012 B1
8412647 Hotes et al. Apr 2013 B2
8447810 Roumeliotis et al. May 2013 B2
20010022558 Karr, Jr. et al. Sep 2001 A1
20010029425 Myr Oct 2001 A1
20010044310 Lincke Nov 2001 A1
20020116266 Marshall Aug 2002 A1
20020193150 Pritchard Dec 2002 A1
20030008668 Perez-Breva et al. Jan 2003 A1
20030064788 Walker et al. Apr 2003 A1
20030134645 Stern Jul 2003 A1
20030216960 Postrel Nov 2003 A1
20040002349 Yamagishi Jan 2004 A1
20040064565 Batra et al. Apr 2004 A1
20040122734 Schleicher et al. Jun 2004 A1
20040147267 Hill et al. Jul 2004 A1
20040185822 Tealdi et al. Sep 2004 A1
20040186776 Llach Sep 2004 A1
20040214584 Marinier Oct 2004 A1
20040259573 Cheng Dec 2004 A1
20050039206 Opdycke Feb 2005 A1
20050079877 Ichimura Apr 2005 A1
20050195193 Lehman Sep 2005 A1
20050202830 Sudit Sep 2005 A1
20050282559 Erskine et al. Dec 2005 A1
20060009234 Freer Jan 2006 A1
20060058036 Watanabe et al. Mar 2006 A1
20060064346 Steenstra et al. Mar 2006 A1
20060079245 Moed Apr 2006 A1
20060089136 Rajkotia Apr 2006 A1
20060089878 Roberts et al. Apr 2006 A1
20060111089 Winter et al. May 2006 A1
20060135120 Likourezos Jun 2006 A1
20060200435 Flinn et al. Sep 2006 A1
20060223494 Chmaytelli et al. Oct 2006 A1
20060270421 Phillips et al. Nov 2006 A1
20070049290 Mullen Mar 2007 A1
20070072583 Barbeau et al. Mar 2007 A1
20070088610 Chen Apr 2007 A1
20070100595 Earles May 2007 A1
20070142068 Matsuo Jun 2007 A1
20070149214 Walsh et al. Jun 2007 A1
20070218900 Abhyanker Sep 2007 A1
20070270132 Poosala Nov 2007 A1
20070273558 Smith et al. Nov 2007 A1
20070282678 Dendi et al. Dec 2007 A1
20070293240 Drennan Dec 2007 A1
20080018453 Adler Jan 2008 A1
20080027634 Obradovich et al. Jan 2008 A1
20080070588 Morin Mar 2008 A1
20080071749 Schloter Mar 2008 A1
20080077489 Gilley et al. Mar 2008 A1
20080119207 Harris May 2008 A1
20080146250 Aaron Jun 2008 A1
20080153511 Mock Jun 2008 A1
20080153512 Kale Jun 2008 A1
20080169920 Spencer Jul 2008 A1
20080183560 Kaplan et al. Jul 2008 A1
20080242373 Lu et al. Oct 2008 A1
20090156161 Strahs Jun 2009 A1
20100042493 Nino et al. Feb 2010 A1
20100190513 Andreasson et al. Jul 2010 A1
20100241496 Gupta Sep 2010 A1
20100241709 Roumeliotis et al. Sep 2010 A1
20100255856 Kansai et al. Oct 2010 A1
20100291907 MacNaughtan et al. Nov 2010 A1
20100291950 Lin et al. Nov 2010 A1
20100323715 Winters Dec 2010 A1
20110034183 Haag et al. Feb 2011 A1
20110124399 Dutilly et al. May 2011 A1
20110143772 Sridhara et al. Jun 2011 A1
20110256881 Huang et al. Oct 2011 A1
20110302024 Gunawardana et al. Dec 2011 A1
20110320259 Roumeliotis et al. Dec 2011 A1
20120009904 Modi et al. Jan 2012 A1
20120040761 Auterio et al. Feb 2012 A1
20120077523 Roumeliotis et al. Mar 2012 A1
20120083285 Shatsky et al. Apr 2012 A1
20120100866 Grossman et al. Apr 2012 A1
20120135756 Rosso et al. May 2012 A1
20120202528 Roumeliotis et al. Aug 2012 A1
20120215617 Shah et al. Aug 2012 A1
20120253668 Sheha et al. Oct 2012 A1
20120315925 Ioppe et al. Dec 2012 A1
20140247126 Grossman et al. Sep 2014 A1
Foreign Referenced Citations (8)
Number Date Country
0781067 Jun 1997 EP
1081974 Mar 2001 EP
11346380 Dec 1999 JP
WO 0195592 Dec 2001 WO
WO 0199082 Dec 2001 WO
WO 2004034721 Apr 2004 WO
WO 2007040320 Apr 2007 WO
WO 2007102816 Sep 2007 WO
Non-Patent Literature Citations (24)
Entry
Streetadvisor.com, publication date unknown (access date Jun. 18, 2008).
Office Action dated dated Jul. 19, 2012 for U.S. Appl. No. 12/611,109.
Office Action dated Mar. 15, 2012 for U.S. Appl. No. 13/310,768.
Office Action dated Mar. 30, 2011 for U.S. Appl. No. 12/406,917.
Office Action dated Oct. 11, 2011 for U.S. Appl. No. 12/406,774.
Office Action dated Jun. 22, 2012 for U.S. Appl. No. 13/429,358.
International Search Report dated Apr. 17, 2003 for PCT/CA/0201080.
Office Action dated Feb. 25, 2015 for U.S. Appl. No. 12/857,888.
Digital cellular telecommunications system (Phase 2+) (GSM);Universal Mobile Telecommunications System (UMTS); Location Services (LCS); Service description, Stage 1 (3GPP TS 22.871 version 4.3.0 Release 4); ETSI TS 122 071 V4.3.0 (Mar. 2001) ETSI TS 122 071 V4.3.0, XX, XX, Apr. 25, 2001, pp. 1-41, XP002222160.
Office Action dated Oct. 14, 2011 for U.S. Appl. No. 13/098,471.
Office Action dated Oct. 18, 2011 for U.S. Appl. No. 13/098,474.
Office Action dated Apr. 11, 2008 for U.S. Appl. No. 10/483,778.
Office Action dated Jun. 24, 2009 for U.S. Appl. No. 10/483,778.
Office Action dated Dec. 3, 2008 for U.S. Appl. No. 10/483,778.
Office Action dated Aug. 4, 2008 for U.S. Appl. No. 10/483,778.
Office Action dated Sep. 24, 2007 for U.S. Appl. No. 10/483,778.
Office Action dated May 16, 2013 for U.S. Appl. No. 12/857,888.
Office Action dated Nov. 13, 2012 for U.S. Appl. No. 12/857,888.
International Search Report dated Nov. 17, 2008 for PCTAU2008001374.
European search report dated Mar. 9, 2012 for EP 08800009.6.
Office Action dated Mar. 29, 2013 for U.S. Appl. No. 13/087,250.
Office Action dated Sep. 1, 2015 for U.S. Appl. No. 12/857,888.
Loss leader, from Wikipedia, downloaded from https://en.wikipedia.org/wiki/Loss—leader on Aug. 25, 2015.
Coupon, from Wikipedia, downloaded from https://en.wikipedia.org/wiki/Coupon on Mar. 9, 2015.
Related Publications (1)
Number Date Country
20160080909 A1 Mar 2016 US
Provisional Applications (1)
Number Date Country
61406125 Oct 2010 US
Divisions (1)
Number Date Country
Parent 13087250 Apr 2011 US
Child 14275261 US
Continuations (1)
Number Date Country
Parent 14275261 May 2014 US
Child 14946420 US