Querying for devices based on location
First Claim
Patent Images
1. A system, comprising:
- a set of one or more processors configured to;
receive from a device associated with a marketer a request to send a push notification to one or more user devices associated with a location, the request including an indication of a time range at which to send the push notification;
determine, a plurality of bucket indexes to search for a presence of a device identifier, wherein each bucket index of the plurality of determined bucket indexes corresponds to a data structure entity representing a unique combination of a resolution of a geographic polygon and a time slice, wherein the resolution of the geographic polygon corresponds to a precision of a geographic area encompassing the received location and the resolution of a time slice corresponds to a precision of the received time range, each bucket index is mapped to device identifiers for a set of devices that were located within the particular geographic polygon during the temporal window defined by the time slice;
search the bucket indexes for the presence of the device identifier;
receive one or more device identifiers in response to the search;
transmit, by a processor, the push notification to one or more devices associated with the received one or more device identifiers; and
a memory coupled to the set of one or more processors and configured to provide the set of one or more processors with instructions.
9 Assignments
0 Petitions
Accused Products
Abstract
Querying for devices based on location is disclosed. A request to send a push notification to a location is received. One or more bucket indexes to search for the presence of a device identifier are determined. The one or more bucket indexes are searched for the presence of the device identifier. One or more device identifiers are received in response to the search. The push notification is sent to one or more devices associated with the received one or more device identifiers.
43 Citations
18 Claims
-
1. A system, comprising:
-
a set of one or more processors configured to; receive from a device associated with a marketer a request to send a push notification to one or more user devices associated with a location, the request including an indication of a time range at which to send the push notification; determine, a plurality of bucket indexes to search for a presence of a device identifier, wherein each bucket index of the plurality of determined bucket indexes corresponds to a data structure entity representing a unique combination of a resolution of a geographic polygon and a time slice, wherein the resolution of the geographic polygon corresponds to a precision of a geographic area encompassing the received location and the resolution of a time slice corresponds to a precision of the received time range, each bucket index is mapped to device identifiers for a set of devices that were located within the particular geographic polygon during the temporal window defined by the time slice; search the bucket indexes for the presence of the device identifier; receive one or more device identifiers in response to the search; transmit, by a processor, the push notification to one or more devices associated with the received one or more device identifiers; and a memory coupled to the set of one or more processors and configured to provide the set of one or more processors with instructions. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method, comprising:
-
receiving from a device associated with a marketer a request to send a push notification to one or more user devices associated with a location, the request including an indication of a time range at which to send the push notification; determining, a plurality of bucket indexes to search for a presence of a device identifier, wherein each bucket index of the plurality of determined bucket indexes corresponds to a data structure entity representing a unique combination of a resolution of a geographic polygon and a time slice, wherein the resolution of the geographic polygon corresponds to a precision of a geographic area encompassing the received location and the resolution of a time slice corresponds to a precision of the received time range, each bucket index is mapped to device identifiers for a set of devices that were located within the particular geographic polygon during the temporal window defined by the time slice; search the bucket indexes for the presence of the device identifier; receive one or more device identifiers in response to the search; and transmitting, by a processor, the push notification to one or more devices associated with the received one or more device identifiers. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. A computer program product embodied in a non-transitory tangible computer readable storage medium and comprising computer instructions for:
-
receiving from a device associated with a marketer a request to send a push notification to one or more user devices associated with a location, the request including an indication of a time range at which to send the push notification; determining, a plurality of bucket indexes to search for a presence of a device identifier, wherein each bucket index of the plurality of determined bucket indexes corresponds to a data structure entity representing a unique combination of a resolution of a geographic polygon and a time slice, wherein the resolution of the geographic polygon corresponds to a precision of a geographic area encompassing the received location and the resolution of a time slice corresponds to a precision of the received time range, each bucket index is mapped to device identifiers for a set of devices that were located within the particular geographic polygon during the temporal window defined by the time slice; search the bucket indexes for the presence of the device identifier; receive one or more device identifiers in response to the search; transmitting, by a processor, the push notification to one or more devices associated with the received one or more device identifiers.
-
Specification