IP Library Granted Patent US 8,299,916
Granted Patent B1
US 8,299,916 · App. 13/477,078 · Granted Oct 30, 2012

Alerting based on location and regional specification

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,299,916
App. No.
13/477,078
Granted
Oct 30, 2012
Kind
B1
Abstract

In some embodiments, techniques for processing an alert may include receiving a specification of a region, wherein the specification of the region includes a first location and a radius; creating an alert; associating information relating to the region with the alert; determining a first current location as a second location; determining that the second location is outside the region, based at least in part on the first location and the radius; determining a second current location as the third location; determining that the third location is within the region, based at least in part on the first location and the radius; and responsive to determining that the second location is outside the region and that the third location is within the region, sending an indication that the alert has been triggered, wherein the indication that the alert has been triggered includes an identifier associated with the alert.

Claims (46)

1. A method for processing an alert, comprising:

receiving a specification of a region, wherein the specification of the region includes a first location and a radius;

creating an alert;

associating information relating to the region with the alert;

determining a first current location as a second location, wherein determining the second location follows receiving the specification of the first location and precedes determining a third location;

determining that the second location is outside the region, based at least in part on the first location and the radius;

determining a second current location as the third location;

determining that the third location is within the region, based at least in part on the first location and the radius; and

responsive to determining that the second location is outside the region and that the third location is within the region, sending an indication that the alert has been triggered, wherein the indication that the alert has been triggered includes an identifier associated with the alert.

2. The method of claim 1 , wherein determining the first current location includes receiving an input associated with a global positioning satellite receiver.

3. The method of claim 1 , wherein determining the first current location includes receiving an input associated with a cellular receiver.

4. The method of claim 1 , wherein determining that the second location is outside the region includes determining that a distance between the second location and the first location is greater than the radius.

5. The method of claim 1 , wherein determining that the third location is within the region includes determining that a distance between the third location and the first location is less than the radius.

6. The method of claim 1 , further comprising presenting information relating to the alert.

7. The method of claim 1 , further comprising transmitting information related to the alert to an external device.

8. The method of claim 1 , further comprising storing the alert in a data structure associated with a plurality of alerts.

9. The method of claim 8 , further comprising determining, for each candidate alert associated with the data structure associated with the plurality of alerts, whether the first current location is within a candidate region associated with the candidate alert.

10. The method of claim 8 , wherein the data structure associated with the plurality of alerts is an in-memory data structure.

11. The method of claim 1 , further comprising, after determining the first current location and before determining the second current location, determining that a current location has changed.

12. The method of claim 1 , wherein the specification of the region is associated with a time specification; further comprising associating the time specification with the alert; and further comprising determining a current time, and determining that the current time matches the time specification.

13. A system for processing an alert, comprising:

a processor configured to:

receive a specification of a region, wherein the specification of the region includes a first location and a radius;

create an alert;

associate information relating to the region with the alert;

determine a first current location as a second location, wherein determining the second location follows receiving the specification of the first location and precedes determining a third location;

determine that the second location is outside the region, based at least in part on the first location and the radius;

determine a second current location as the third location;

determine that the third location is within the region, based at least in part on the first location and the radius; and

responsive to determining that the second location is outside the region and that the third location is within the region, send an indication that the alert has been triggered, wherein the indication that the alert has been triggered includes an identifier associated with the alert; and

a memory coupled with the processor, wherein the memory provides instructions to the processor.

14. The system of claim 13 , wherein determining that the second location is outside the region includes determining that a distance between the second location and the first location is greater than the radius.

15. The system of claim 13 , wherein determining that the third location is within the region includes determining that a distance between the third location and the first location is less than the radius.

16. The system of claim 13 , wherein the processor is further configured to store the alert in a data structure associated with a plurality of alerts.

17. The system of claim 16 , wherein the processor is further configured to determine, for each candidate alert associated with the data structure associated with the plurality of alerts, whether the first current location is within a candidate region associated with the candidate alert.

18. A computer program product for processing an alert, the computer program product being embodied in a non-transitory computer readable medium and comprising computer instructions for:

receiving a specification of a region, wherein the specification of the region includes a first location and a radius;

creating an alert;

associating information relating to the region with the alert;

determining a first current location as a second location, wherein determining the second location follows receiving the specification of the first location and precedes determining a third location;

determining that the second location is outside the region, based at least in part on the first location and the radius;

determining a second current location as the third location;

determining that the third location is within the region, based at least in part on the first location and the radius; and

responsive to determining that the second location is outside the region and that the third location is within the region, sending an indication that the alert has been triggered, wherein the indication that the alert has been triggered includes an identifier associated with the alert.

19. The computer program product of claim 18 , wherein the computer readable medium further comprises computer instructions for storing the alert in a data structure associated with a plurality of alerts.

20. The computer program product of claim 19 , wherein the computer readable medium further comprises computer instructions for determining, for each candidate alert associated with the data structure associated with the plurality of alerts, whether the first current location is within a candidate region associated with the candidate alert.

Assignments (13)
AFTER-ACQUIRED INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Feb 27, 2025
From: VIVINT LLC; SMART HOME PROS, INC.; VIVINT AMIGO, INC.
To: DEUTSCHE BANK TRUST COMPANY AMERICAS, AS PRIORITY COLLATERAL TRUSTEE
Reel/Frame 070349/0816 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS RECORDED AT REEL 038275, FRAME 0377 Recorded Nov 11, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VIVINT, INC.
Reel/Frame 069334/0010 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS RECORDED AT REEL 049283, FRAME 0566 Recorded Nov 11, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VIVINT, INC.
Reel/Frame 069334/0137 →
RELEASE (REEL 047029/ FRAME 0304) Recorded Nov 1, 2024
From: BANK OF AMERICA, N.A.
To: VIVINT LLC (F/K/A VIVINT, INC.)
Reel/Frame 069289/0468 →
RELEASE OF SECURITY INTEREST Recorded Jul 12, 2021
From: BANK OF AMERICA, N.A.
To: VIVINT, INC.
Reel/Frame 056832/0725 →
SECURITY AGREEMENT Recorded May 23, 2019
From: VIVINT, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 049283/0566 →
SECURITY AGREEMENT Recorded Sep 6, 2018
From: VIVINT, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 047029/0304 →
SECURITY AGREEMENT Recorded Apr 11, 2016
From: VIVINT, INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 038402/0356 →
SECURITY INTEREST Recorded Mar 28, 2016
From: VIVINT, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 038275/0377 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 25, 2014
From: INTELLECTUAL VENTURES ASSETS 2 LLC
To: VIVINT, INC.
Reel/Frame 033599/0959 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2014
From: S. MOORE MASCHINE LIMITED LIABILITY COMPANY
To: INTELLECTUAL VENTURES ASSETS 2 LLC
Reel/Frame 033158/0560 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 17, 2013
From: BEDROCK LABS, LLC
To: S. MOORE MASCHINE LIMITED LIABILITY COMPANY
Reel/Frame 029652/0806 →
NUNC PRO TUNC ASSIGNMENT Recorded Jan 9, 2013
From: EMIGH, AARON T.
To: BEDROCK LABS, LLC
Reel/Frame 029599/0892 →