IP Library › Granted Patent US 11,641,391
Granted Patent B2
US 11,641,391 · App. 16/688,717 · Granted May 2, 2023

Integrated cloud system with lightweight gateway for premises automation

Inventors: Jim Kitchen (Redwood City, CA); Corey Gates (Redwood City, CA); Chris Decenzo (Redwood City, CA)
Assignee: iControl Networks Inc.
H04L67/10H04L65/1033H04L67/02H04W4/80H04L43/08H04L49/70H04W84/042H04W84/12
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 11,641,391
App. No.
16/688,717
Filed
Nov 19, 2019
Granted
May 2, 2023
Kind
B2
Art Unit
2454
USPC
709/219
Abstract

Systems and methods include a system comprising a cloud hub located in a premises. The cloud hub comprises adapters coupled to premises devices, and the cloud hub is configured as a gateway for the premises devices. A virtual gateway is located in a cloud server environment and coupled to the cloud hub. The virtual gateway is configured as a server-side abstraction of the cloud hub. The cloud hub and the virtual gateway are configured as an automation platform that maintains state data of the premises devices, controls interaction among the premises devices, and monitors and manages the premises devices. A security system coupled to the virtual gateway. The security system includes security system components.

Claims (90)

1. A method comprising:

receiving, by a first session server of a plurality of session servers located external to a premises, wherein each session server of the plurality of session servers is configured to host one or more virtual gateways, and from a premises management system located at the premises, a message indicating state data associated with the premises management system;

determining, by the first session server and based on the message, a second session server of the plurality of session servers hosting a first virtual gateway associated with the premises management system and a third session server of the plurality of session servers hosting a second virtual gateway associated with the first premises management system;

causing, by the first session server, shutdown of the second virtual gateway on the third session server; and

routing, by the first session server and to the second session server, the message.

2. The method of claim 1 , wherein the determining the second session server comprises:

determining, based on the message, that the first session server does not comprise a virtual gateway associated with the premises management system.

3. The method of claim 1 , further comprising:

causing, by the first session server and based on the first message, execution of the first virtual gateway on the second session server.

4. The method of claim 1 , wherein the determining the second session server comprises:

broadcasting, by the first session server and to the other session servers of the plurality of session servers, a request for a return response indicating that the respective session server comprises a virtual gateway associated with the premises management system; and

receiving, by the first session server and from the second session server, a return response indicating that the second session server comprises the first virtual gateway.

5. The method of claim 1 , further comprising:

receiving, by the first session server and from a second premises device associated with a second premises management system located at a second premises, a second message indicating state data associated with the second premises management system;

determining, by the first session server and based on the second message, that no other session servers of the plurality of session servers comprise a virtual gateway associated with the second premises management system; and

causing, by the first session server and based on the second message, execution of a third virtual gateway, associated with the second premises management system, on the first session server.

6. The method of claim 1 , wherein the first virtual gateway comprises a gateway state machine associated with the premises management system.

7. The method of claim 6 , wherein the gateway state machine is configured to store the message to maintain state data associated with the premises management system.

8. The method of claim 1 , wherein the first virtual gateway is configured to:

transmit, to a computing device located external to the premises, the state data; and

receive, from the computing device, control data for the premises management system.

9. The method of claim 1 , wherein the message comprises a User Datagram Protocol (UDP) message.

10. The method of claim 1 , wherein the first session server and the premises management system are configured to communicate via a persistent network connection between the first session server and the premises management system.

11. The method of claim 10 , wherein the persistent network connection comprises a Transmission Control Protocol (TCP) connection.

12. The method of claim 1 , wherein the receiving the message comprises:

receiving, via at least one of a security panel located at the premises or a network device located at the premises, the message.

13. The method of claim 1 , wherein the state data is associated with at least one of a sensor, a detector, a camera, a touchscreen controller, a video camera, an input/output (I/O) device, an actuator, a device controller, a premises gateway, a network device, a network router, or a security panel.

14. A first session server device comprising:

one or more processors; and

memory storing instructions that, when executed by the one or more processors, cause the first session server device to:

receive, from a premises management system located at a premises, a message indicating state data associated with the premises management system;

determine, based on the message, a second session server of a plurality of session servers located external to the premises, wherein each session server of the plurality of session servers is configured to host one or more virtual gateways, the second session server hosting a first virtual gateway associated with the premises management system;

determine, based on the first message, a third session server of the plurality of session servers hosting a second virtual gateway associated with the premises management system;

cause, by the first session server device, shutdown of the second virtual gateway on the third session server; and

route, to the second session server, the message.

15. The device of claim 14 , wherein the device comprises multiple session servers of the plurality of session servers.

16. The device of claim 14 , wherein the instructions, when executed by the one or more processors, further cause the device to:

determine the first session server by determining, based on the message, that the device does not comprise a virtual gateway associated with the premises management system.

17. The device of claim 14 , wherein the instructions, when executed by the one or more processors, further cause the device to:

cause, based on the message, execution of the first virtual gateway on the first session server.

18. The device of claim 14 , wherein the instructions, when executed by the one or more processors, further cause the device to:

determine the second session server by:

broadcasting, to the plurality of session servers, a request for a return response indicating that the respective session server comprises a virtual gateway associated with the premises management system; and

receiving, from the second session server, a return response indicating that the second session server comprises the first virtual gateway.

19. The device of claim 14 , wherein the instructions, when executed by the one or more processors, further cause the device to:

receive, from a second premises management system located at a second premises, a second message indicating state data associated with the second premises management system;

determine, based on the second message, that no other session servers of the plurality of session servers comprise a virtual gateway associated with the second premises management system; and

cause, based on the second message, execution of a third virtual gateway, associated with the second premises management system, on the device.

20. A system comprising:

a plurality of premises devices associated with a premises management system located at a premises; and

a first session server of a plurality of session servers, wherein the plurality of session servers are located external to the premises and wherein each one of the plurality of session servers is configured to host one or more virtual gateways, wherein the first session server is configured to:

receive, from a premises device of the plurality of premises devices, a message indicating state data associated with the premises management system;

determine, based on the message, a second session server of the plurality of session servers hosting a first virtual gateway of the one or more virtual gateways that is associated with the premises management system;

determine, based on the first message, a third session server of the plurality of session servers hosting a second virtual gateway associated with the premises management system;

cause, by the first session server, shutdown of the second virtual gateway on the third session server; and

route, to the second session server, the message.

21. The system of claim 20 , wherein the first session server is further configured to:

determine the second session server by determining, based on the message, that the first session server does not comprise a virtual gateway associated with the premises management system.

22. The system of claim 20 , wherein the first session server is further configured to:

cause, based on the message, execution of the first virtual gateway on the second session server.

23. The system of claim 20 , wherein the first session server is further configured to:

determine the second session server by:

broadcasting, to the other session servers of the plurality of session servers, a request for a return response indicating that the respective session server comprises a virtual gateway associated with the premises management system; and

receiving, from the second session server, a return response indicating that the second session server comprises the first virtual gateway.

24. The system of claim 20 , wherein the first session server is further configured to:

receive, from a second premises device associated with a second premises management system located at a second premises, a second message indicating state data associated with the second premises management system;

determine, based on the second message, that no other session servers of the plurality of session servers comprise a virtual gateway associated with the second premises management system; and

cause, based on the second message, execution of a third virtual gateway, associated with the second premises management system, on the first session server.

25. The system of claim 20 , wherein the first virtual gateway comprises a gateway state machine associated with the premises management system.

26. The system of claim 25 , wherein the gateway state machine is configured to store the message to maintain state data associated with the premises management system.

27. The system of claim 20 , wherein the first virtual gateway is configured to:

transmit, to a computing device located external to the premises, the state data; and

receive, from the computing device, control data for the premises management system.

28. A non-transitory computer-readable medium storing instructions that, when executed, cause:

receiving, by a first session server of a plurality of session servers located external to a premises, wherein each session server of the plurality of session servers is configured to host one or more virtual gateways, and from a premises management system located at the premises, a message indicating state data associated with the premises management system;

determining, by the first session server and based on the message, a second session server of the plurality of session servers hosting a first virtual gateway associated with the premises management system;

determining, by the first session server and based on the first message, a third session server of the plurality of session servers hosting a second virtual gateway associated with the premises management system;

causing, by the first session server, shutdown of the second virtual gateway on the third session server; and

routing, by the first session server and to the second session server, the message.

29. The non-transitory computer-readable medium of claim 28 , wherein the determining the second session server comprises:

determining, based on the message, that the first session server does not comprise a virtual gateway associated with the premises management system.

30. The non-transitory computer-readable medium of claim 28 , wherein the determining the second session server comprises:

broadcasting, by the first session server and to the other session servers of the plurality of session servers, a request for a return response indicating that the respective session server comprises a virtual gateway associated with the premises management system; and

receiving, by the first session server and from the second session server, a return response indicating that the second session server comprises the first virtual gateway.

31. The non-transitory computer-readable medium of claim 28 , wherein the instructions, when executed, further cause:

causing, by the first session server and based on the message, execution of the first virtual gateway on the second session server.

32. The non-transitory computer-readable medium of claim 28 , wherein the instructions, when executed, further cause:

receiving, by the first session server and from a second premises device associated with a second premises management system located at a second premises, a second message indicating state data associated with the second premises management system;

determining, by the first session server and based on the second message, that no other session servers of the plurality of session servers comprise a virtual gateway associated with the second premises management system; and

causing, by the first session server and based on the second message, execution of a third virtual gateway, associated with the second premises management system, on the first session server.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2021
From: KITCHEN, JIM; GATES, COREY; DECENZO, CHRIS
To: ICONTROL NETWORKS, INC.
Reel/Frame 055939/0205 →
Continuity (24)
Continuation 15198855 · Jun 30, 2016
Division 15198531 · Jun 30, 2016
Continuation In Part 15196646 · Jun 29, 2016
Continuation In Part 15177915 · Jun 9, 2016
Continuation In Part 14943162 · Nov 17, 2015
Continuation In Part 16688717
Continuation In Part 14645808 · Mar 12, 2015
Continuation In Part 14628651 · Feb 23, 2015
Continuation In Part 13954553 · Jul 30, 2013
Continuation In Part 13929568 · Jun 27, 2013
Continuation In Part 13718851 · Dec 18, 2012
Continuation In Part 13531757 · Jun 25, 2012
Continuation In Part 13334998 · Dec 22, 2011
Continuation In Part 13104932 · May 10, 2011
Continuation In Part 12972740 · Dec 20, 2010
Continuation In Part 12539537 · Aug 11, 2009
Continuation In Part 12197958 · Aug 25, 2008
Continuation In Part 12189780 · Aug 11, 2008
Provisional Application 62186825 · Jun 30, 2015
Provisional Application 62186696 · Jun 30, 2015
Provisional Application 62186974 · Jun 30, 2015
Provisional Application 62186925 · Jun 30, 2015
Provisional Application 62186857 · Jun 30, 2015
Related Publication 20200267207A1 · Aug 20, 2020
Cited By (1)
US 12,445,317