Constraint-based scheduling for delivery of location information
First Claim
1. A system for execution on a mobile computing device, said system executing to reduce a quantity of requests from the mobile computing device for location reports from a network, said system comprising:
- a memory area for storing a plurality of subscriptions each having a time value and application program associated therewith, said time value representing a time at or during which the application program desires to receive a location report, said location report identifying a location of a mobile computing device executing the application program; and
a processor programmed to;
identify a mobility pattern for the mobile computing device based on a location history of the mobile computing device, the location history comprising a plurality of timestamped locations, the location history being correlated with profile data to generate a location tag for one or more of the plurality of timestamped locations, wherein the profile data is associated with a user of the mobile computing device;
define the subscriptions to the location report based at least on the identified mobility pattern;
store the defined subscriptions in the memory area;
determine a report time based on the time value of at least one of the plurality of subscriptions;
generate the location report at the determined report time;
select a plurality of the subscriptions stored in the memory area based on said time value of at least one of the plurality of subscriptions; and
provide the generated location report to the application programs associated with the selected subscriptions.
2 Assignments
0 Petitions
Accused Products
Abstract
Defining subscriptions to location information for a computing device (e.g., a mobile computing device). Application programs, services, and/or peer devices define the subscriptions based on constraints associated with requests for the location information. A location request scheduler coordinates the subscriptions temporally and spatially to reduce the quantity of the requests from the computing device. In some embodiments, the subscriptions are automatically defined based on an observed mobility pattern of the computing device.
-
Citations
19 Claims
-
1. A system for execution on a mobile computing device, said system executing to reduce a quantity of requests from the mobile computing device for location reports from a network, said system comprising:
-
a memory area for storing a plurality of subscriptions each having a time value and application program associated therewith, said time value representing a time at or during which the application program desires to receive a location report, said location report identifying a location of a mobile computing device executing the application program; and a processor programmed to; identify a mobility pattern for the mobile computing device based on a location history of the mobile computing device, the location history comprising a plurality of timestamped locations, the location history being correlated with profile data to generate a location tag for one or more of the plurality of timestamped locations, wherein the profile data is associated with a user of the mobile computing device; define the subscriptions to the location report based at least on the identified mobility pattern; store the defined subscriptions in the memory area; determine a report time based on the time value of at least one of the plurality of subscriptions; generate the location report at the determined report time; select a plurality of the subscriptions stored in the memory area based on said time value of at least one of the plurality of subscriptions; and provide the generated location report to the application programs associated with the selected subscriptions. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method comprising:
-
accessing subscriptions each having a time value and application program associated therewith, said time value representing a time at or during which the application program desires to receive location information describing a location of a computing device executing the application program; accessing a location history of the computing device, the location history comprising a plurality of timestamped locations, the accessed location history being correlated with profile data to generate a location tag for one or more of the plurality of timestamped locations, wherein the profile data is associated with a user of the computing device; defining a report time based on the time value of at least one of the accessed subscriptions; generating the location information at the defined report time; selecting a plurality of the subscriptions based on said time value of at least one of the accessed subscriptions; and providing the generated location information to the application programs associated with the selected subscriptions. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15)
-
-
16. One or more computer-readable devices storing computer-executable components, said components comprising:
-
a memory component that when executed by at least one processor causes the at least one processor to access subscriptions each having a time value and application program associated therewith, said time value representing a time at which the application program desires to receive location information identifying a location of a computing device executing the application program, the memory component storing a location history of the computing device, the location history comprising a plurality of timestamped locations, the location history being correlated with profile data and/or point-of-interest information to generate a location tag for one or more of the plurality of timestamped locations; a timing component that when executed by at least one processor causes the at least one processor to organize the subscriptions into one or more groups based at least on the time values, wherein each of the groups has a group time value; a processor component that when executed by at least one processor causes the at least one processor to execute, at one of the group time values, the application programs associated with the subscriptions in the group associated with said one of the group time values; and a location component that when executed by at least one processor causes the at least one processor to generate, responsive to a request from at least one of the executing application programs, the location information and providing the generated location information to the executing application programs. - View Dependent Claims (17, 18, 19)
-
Specification