Redundancy for back-end failure

Methods and systems are described for back-end failure redundancy in security and automation systems. According to at least one embodiment, an apparatus for back-end failure redundancy includes a processor, a memory in electronic communication with the processor, and instructions stored in the memory. The instructions are executable by a processor to detect an alarm event, and attempt to establish a connection between a control panel and a backend system. If no connection between control panel and backend system is made, the instructions may initiate a two-way cellular call between the control panel and a central station, and deliver a caller ID from the control panel to the central station via the two-way cellular call.

BACKGROUND

Advancements in media delivery systems and media-related technologies continue to increase at a rapid pace. Increasing demand for media has influenced the advances made to media-related technologies. Computer systems have increasingly become an integral part of the media-related technologies. Computer systems may be used to carry out several media-related functions. The wide-spread access to media has been accelerated by the increased use of computer networks, including the Internet and cloud networking.

Many homes and businesses use one or more computer networks to generate, deliver, and receive data and information between the various computers connected to computer networks. Users of computer technologies continue to demand increased access to information and an increase in the efficiency of these technologies. Improving the efficiency of computer technologies is desirable to those who use and rely on computers.

With the wide-spread use of computers and mobile devices has come an increased presence of home automation and security products. Advancements in mobile devices allow users to monitor and/or control an aspect of a home or business. Backup systems in the event of system failure or failure of various portions of an automation and/or security system may not be readily available.

SUMMARY

Methods and systems are described for back-end failure redundancy in security and automation systems. According to at least one embodiment, an apparatus for back-end failure redundancy includes a processor, a memory in electronic communication with the processor, and instructions stored in the memory. The instructions are executable by a processor to detect an alarm event and attempt to establish a connection between a control panel and a backend system. If no connection between the control panel and backend system is made, the instructions may initiate a two-way cellular call between the control panel and a central station, and deliver a caller ID from the control panel to the central station via the two-way cellular call.

In one embodiment, the control panel may be located at a residence, and the control panel may include controls for a home security system. The central station may be a call center and the call center may place a separate two-way call to a designated person responsible for the control panel upon receipt of the caller ID. The instructions may also provide dispatching emergency assistance through the central station in response to receiving the caller ID. Attempting to establish a connection between the control panel and the backend system may be performed over a network. The network may include the Internet. The control panel may include a cellular radio. The control panel may communicate with the backend system through a separate network than a network used to communication between the control panel and the central station. The instructions may be executable by a processor to perform an intervening action after the caller ID is delivered. The intervening action may include at least one of dispatching fire, police or medical assistance, or dispatch maintenance service.

In another embodiment, a computer-program product for back-end failure redundancy includes a non-transitory computer-readable medium storing instructions executable by a processor to detect an alarm event and attempt to establish a connection between a control panel and a backend system. If no connection between control panel and backend system is made, the instructions initiate direct communication between the control panel and a central station, and deliver information from the control panel to the central station via the direct communication.

In one embodiment, the direct communication includes a 2-way cellular call. The information may include a caller ID. The information may include only a caller ID.

In a further embodiment, a computer-implemented back-end failure redundancy method comprises attempting to establish a connection between a control panel and a backend system, confirming that no connection between control panel and backend system is made, initiating a two-way cellular call between the control panel and a central station, and communicating information between the control panel and the central station via the two-way cellular call.

In one embodiment, the method further includes detecting an alarm event, and the information relates to the alarm event. The alarm event may include one of detecting smoke, fire, or an intruder, or a medical emergency. Communicating information may include delivering a caller ID. The method may include confirming whether an alarm signal has been received from the backend system to the central station in connection with the control panel. The method may include accessing a database to confirm whether the information received by the central station corresponds with a control panel being monitored by the central station.

DETAILED DESCRIPTION

The systems and methods described herein relate to home automation and home security, and related security systems and automation for use in commercial and business settings. More specifically, the systems and methods described herein relate to an improved communication arrangement between a control panel installed in the monitored property, a backend communication system, and a central station. The communication arrangement provides redundancy for delivery of information (e.g., alarm information) from the control panel to the central station in the event the backend system, which is typically interposed between the control panel and central station and the sole means of communicating information from the control panel to the central station, is inaccessible by the control panel. The communication arrangement provides for bypass of the backend system when the backend system is down (e.g., unable to receive communications, such as an alarm signal, from the control panel).

FIG. 1is a block diagram illustrating one embodiment of an environment100in which the present systems and methods may be implemented. In some embodiments, the systems and methods described herein may be performed on a remote management device105(e.g., a control panel). The environment100may include the device105, a backend system110, a central station115, and first and second networks120,125. The first and second networks120,125provide communication between at least some of the device105, backend system110, and central station115.

In some embodiments, the remote management device105is a portable electronic device with a touch screen display. The device105may be in communication with one or more sensors. A sensor may include, for example, a camera sensor, audio sensor, forced entry sensor, shock sensor, proximity sensor, boundary sensor, appliance sensor, light fixture sensor, temperature sensor, light beam sensor, three-dimensional (3-D) sensor, motion sensor, smoke sensor, glass break sensor, door sensor, window sensor, carbon monoxide sensor, accelerometer, global positioning system (GPS) sensor, Wi-Fi positioning system sensor, capacitance sensor, radio frequency sensor, near-field sensor, heartbeat sensor, breathing sensor, oxygen sensor, carbon dioxide sensor, brain wave sensor, movement sensor, voice sensor, and the like.

In some configurations, device105may include components such as a user interface135, a communication module140, and an alarm module145. Although the components of device105are depicted as being internal to device105, it is understood that one or more of the components may be external to the device105and connect to device105through wired and/or wireless connections. For example, one or more components (e.g., software, firmware, and/or hardware) of communication module140may be located, installed, and/or part of other components and/or systems of environment100.

In some embodiments, device105may communicate with backend system110via the first network120. The backend system110may then communicate at least some of the information received from device105to central station115. Alternatively, device105may communicate with central station115separately through the second network125. Examples of networks120,125include cloud networks, local area networks (LAN), wide area networks (WAN), virtual private networks (VPN), wireless networks (using 802.11, for example), and/or cellular networks (using 3G and/or LTE, for example), etc. In some embodiments, the first network120may include the Internet and the second network125may include cellular networks.

The primary communication channel between device105and central station115may include routing through backend system110. Typically, when device105has information to transfer to central station115(e.g., information about an alarm event determined using alarm module145), the device105may attempt to create a communication link with backend system110via communication module140. If the communication link is available, the link is established and the information is transferred from device105to backend system110via, for example, communication module140. The backend system110then transfers at least some of the information received from device105, and potentially additional information, to central station115.

The environment100may be configured to provide a redundant or backup communication system between device105and central station115in addition to the communications possible via backend system110. The redundant communication system typically becomes active when device105attempts to create a communication link with backend system110and the link fails. The failure to create a communication link between device105and backend system110may occur for any of a number of reasons, including, for example, failures associated with the first network120(e.g., dysfunctional hardware, etc.) or failures associated with backend system110(e.g., power outage, etc.).

If the communication link is unavailable, the device105may create a backup communication link with central station115via communication module140, and communicate information to central station115via the backup communication link. The backup communication link may be created by initiating, for example, a 2-way cellular call from a cellular radio of the device105and a cellular device at central station115. The information transferred from device105to central station115via the backup communication link may include, for example, a caller ID or other information associated with device105, an alarm communication (e.g., an alarm code) or information about the property location.

Once central station115receives the information conveyed by device105, whether through backend system110or directly from device105, central station115may perform any of a number of functions including, for example, initiating a separate two-way call with a designated contact person associated with device105or the property generally, dispatching emergency or service personnel, or some other intervening action using, for example, a response module180.

Referring now toFIG. 2, in some embodiments, an environment200may include the components of environment100described above, and may further include a sensor130, a mobile computing device155, a home automation controller160, a database165, and a display170. Additionally, a remote management device105-amay include an application150. The device105-amay be an example of the device illustrated inFIG. 1.

Sensor130shown inFIG. 2may represent one or more separate sensors or a combination of two or more sensors in a single sensor device. For example, sensor130may represent one or more camera sensors and one or more motion sensors connected to environment200. Additionally, or alternatively, sensor130may represent a combination sensor such as both a camera sensor and a motion sensor integrated in the same sensor device. Although sensor130is depicted as connecting to device105-aover network120, in some embodiments, sensor130may connect directly to device105-a. Additionally, or alternatively, sensor130may be integrated with a home appliance or fixture such as a light bulb fixture. Sensor130may include an accelerometer to enable sensor130to detect a movement. Sensor130may include a wireless communication device enabling sensor130to send and receive data and/or information to and from one or more devices in environment200. Additionally, or alternatively, sensor130may include a GPS sensor to enable sensor130to track a location of sensor130. Sensor130may include a proximity sensor to enable sensor to detect proximity of a person relative to a predetermined distance from a dwelling (e.g., geo-fencing). Sensor130may include one or more security detection sensors such as, for example, a glass break sensor, a motion detection sensor, or both. Additionally, or alternatively, sensor130may include a smoke detection sensor, a carbon monoxide sensor, or both.

In some embodiments, mobile computing device155may include a television set. Additionally, or alternatively, mobile computing device155may include one or more processors, one or more memory devices, and/or a storage device. Examples of mobile computing device155may include a viewing device associated with a media content set top box, satellite set top box, cable set top box, DVRs, personal video recorders (PVRs), and/or mobile computing devices, smart phones, personal computing devices, computers, servers, etc.

In some embodiments, a user may access the functions of device105-aand/or home automation controller160from mobile computing device155. For example, in some embodiments, mobile computing device155includes a mobile application that interfaces with one or more functions of device105-a, home automation controller160, and/or backend system110and central station115.

Examples of the home automation controller160may include a dedicated home automation computing device (e.g., wall-mounted controller), a personal computing device (e.g., laptop, desktop, etc.), a mobile computing device (e.g., tablet computing device, smartphone, etc.), and the like.

In some embodiments, device105-amay be integrated with home automation controller160in the form of one or more personal computing devices (e.g. mobile devices, smart phones, and/or personal computing devices) to both control aspects of a property as well as to receive and display notifications regarding monitored activity of a property.

In some embodiments, central station115may be coupled to database165. Backend system110may be directly coupled to database165or may be indirectly coupled via central station115. Database165may include, for example, control panel IDs associated with each device105-abeing monitored by backend system110and central station115. Database165may include other information including, for example, historical information about device105-aand other aspects of environment200, contact information for various response personnel, and the like.

Application150may allow a user to control (either directly or via home automation controller160) an aspect of the monitored property, including security, energy management, locking or unlocking a door, checking the status of a door, locating a person or item, controlling lighting, thermostat, cameras, receiving notification regarding a current status or anomaly associated with a home, office, place of business, and the like. In some configurations, application150may enable device105-ato interface with home automation controller160and provide the user interface135to display automation, security, and/or energy management content on device105-aand/or mobile computing device155. Thus, application150, via the user interface135, may allow users to control aspects of their home, office, and/or other type of property. Further, application150may be installed on mobile computing device155in order to allow a user to interface with a function of device105-a, home automation controller160, and/or backend system110or central station115.

FIG. 3is a block diagram illustrating one example of a communication module140-a. Communication module140may be one example of communication module140depicted inFIGS. 1 and/or 2. As depicted, communication module140-amay include a link determination module300, a call module305, and an information transfer module310. Communication module140-amay include additional modules and capability in other embodiments. Similarly, communication module140-amay include a fewer number of modules and functionality than that which is described with reference toFIG. 3.

Link determination module300may operate to determine whether it is possible to create a communication link between device105and backend system110. Link determination module300may determine, for example, whether the first network120is available, and if it is, determine whether backend system110is available to create the communication link. If the communication link is available, communication module140-agenerates the communication link between device105and backend system110via the second network120. Information transfer module310of communication module140may then transfer information from device105to backend system110. The information may include, for example, information about an alarm event determined using alarm module145(seeFIG. 1).

In the event that link determination module300determines that a communication link between device105and backend system110is not possible, call module305may operate to create a communication link between device105and central station115. In at least one example, call module305initiates a two-way cellular call between device105and central station115via the second network125. Once the communication link between device105and central station115is initiated using call module305, information transfer module310may transfer information from device105to central station115. The information transferred via information transfer module310may be dependent upon, at least in part, the type of communication link generated between device105and central station115. In the case of a two-way cellular call, the information transferred may include, for example, a caller ID. Other information may include, for example, an alarm code, a residence address, or other available detail. In the case of a communication link over another type of communication medium such as the Internet, additional detail may be provided in the transferred information.

The label of “call” module305does not necessarily limit the functionality of call module305to making calls in order to create a communication link between device105and central station115. Other types of communication links are possible via the second network125, and call module305may operate to generate any one of a number of different types of communication links using various technologies, such as any one of the technologies discussed above related to networks120,125.

FIG. 4is a block diagram illustrating one example of a response module180-a. Response module180-amay be one example of response module180depicted inFIGS. 1 and/or 2. As depicted, response module180-amay include a detection module400, an ID verification module405, a backend confirmation module410, a dispatch module415, and a user outreach module420.

When communications are incoming from backend system110, response module180-amay have a different protocol or operating procedure than when information is incoming directly from device105via network125. During operation of environments100,200, wherein communications from device105are transferred through the first network120and backend system110to central station115, detection module400detects a communication incoming from backend system110, identifies a device and/or a location for the incoming information via the ID verification module405, and then uses the dispatch module415and/or the user outreach module420to perform an intervening action. The backend confirmation module410may operate to confirm that the incoming information is being sent from the backend system110rather than from another source.

In the event of a backend failure (e.g., inability for device105to communicate with backend system110), the response module180-amay initiate a separate operating procedure. In the separate (e.g., redundant or backup) procedure, the detection module400detects incoming information. In at least some examples, the incoming information received from the backend system110is different or provided in a different format and/or communication medium from the information delivered directly from device105via the second network125. In at least some arrangements, the information sent directly from device105via the second network125is unique as compared to communication from backend system110and immediately triggers the alternative operating procedure referenced as a backup procedure. For example, the information received by detection module400may be in the form of a caller ID sent via a two-way cellular call, wherein information delivered from backend system110does not include a caller ID or send information via a two-way cellular call.

Once the information is received by detection module400, response module180-aoperates the ID verification module405to determine which device105and/or location at which the device105resides. Once the ID verification is complete, central station115may be able to recognize the type of system (e.g., security or automation) and its related capabilities. The backend confirmation module410may check to confirm that no information associated with the identified device and/or location has been received from the backend system110. If no such information has been received from the backend system110, response module180-amay operate at least one of the dispatch module415and user outreach module420to perform an intervening action. For example, dispatch module415may operate to dispatch at least one of service personnel or police, fire, or medical personnel to the location of device105or its associated monitored property. In another example, user outreach module420may operate to attempt communication with someone associated with device105(e.g., a home or business owner, security guards, etc.) via, for example, a text message, a cellular call, an email, or a social media message.

In at least some examples, the information conveyed to central station115from device105through the second network125provides limited information. As a result, the response from the central station115via the user outreach module420may include, for example, a message that the system is receiving a non-descript emergency signal from the location of device105and a request for confirmation of the circumstances and events ongoing at the location of device105or the property being monitored by device105. In other arrangements, additional information may be conveyed via the second network125that provides sufficient guidance for central station115to dispatch specific resources via dispatch module415.

FIG. 5is a flow diagram illustrating one embodiment of a method500for backend failure redundancy. In some configurations, the method500may be implemented by the communication module140of device105shown inFIGS. 1 and/or 2. In other examples, method500may be performed generally by device105shown inFIGS. 1 and/or 2, or even more generally by the environments100,200shown inFIGS. 1 and/or 2, respectively. In some configurations, method500may be implemented in conjunction with response module180and/or operation of central station115generally as described above.

At block505, an alarm advance may be detected. The alarm event may be detected or determined using, for example, communication module140or the alarm module145of device105. At block510, an attempt is made to establish a connection between a device (e.g., control panel) and a backend system. The connection is typically established over a network such as the first network120for connection to a backend system such as backend system110. At block515, when it is determined that no connection is possible between the device (e.g., control panel) in the backend system, a two-cellular call is initiated between the device (e.g., control panel) and a central station, such as central station115.

The inability to create a connection between a control panel and the backend system may be due to problems with the network over which communication is typically provided between the control panel and backend system, or in the backend system itself. Failure of the backend system may initiate a redundant backup procedure in which the two-way cellular call or other type of communication is initiated between the control panel and the central station. The two-way cellular call and/or other communication may be performed over the same or different network as the network typically used for communication between the control panel and backend system.

At block520, a caller ID is delivered from the control panel to the central station via the two-way cellular call. While a caller ID may be used as a specific example of the type of information delivered from the control panel to the central station, other types of information may be conveyed including, for example, an alarm code, location information, etc.

At block525, an intervening action is performed in response to the caller ID delivered to the central station. The intervening action may include, for example, outreach to a user of a control panel via, for example, a two-way cellular call, a text or other communication outside of the two-way cellular call used to deliver the caller ID to the central station, or dispatching service or emergency personnel to the location of the control panel.

FIG. 6is a flow diagram illustrating one embodiment of a method600for backend failure redundancy. In some configurations, the method600may be implemented by the communication module140described above with reference toFIGS. 1 and 2, or generally the device105or environment100,200described above with reference toFIGS. 1 and/or 2.

At block605, an alarm event is detected. The alarm event may be any of a number of different events or conditions detected by any number of sensors or other feedback mechanisms (e.g., sensor130shown inFIG. 2). At block610, an attempt is made to establish a connection between a control panel and a backend system. The control panel may include or be part of the device105described with reference toFIGS. 1 and/or 2. The backend system may be the backend system110described in reference toFIGS. 1 and/or 2. The attempt to establish the connection between the control panel and the backend system may be performed via, for example, the first network120ofFIGS. 1 and/or 2.

At block615, if no connection between the control panel and backend system is made, a direct communication is initiated between the control panel and a central station. The central station may include the central station115ofFIGS. 1 and/or 2. The direct communication may be provided via a separate network such as the second network125ofFIGS. 1 and/or 2. The direct communication may include, for example, a two-way cellular call.

At block620, information is delivered from the control panel to the central station via the direct communication. The information delivered may include, for example, a caller ID, alarm code, location information, or other information relative to the device105or environment100,200, generally. Other steps of method600may relate to responsive communications from the control station such as, for example, an intervening action (e.g., dispatching services or contacting a user associated with the control panel).

FIG. 7is a flow diagram illustrating one embodiment of a method700for backend failure redundancy. In some configurations, the method700may be implemented by the communication module140, device105, or environment100,200, generally, which are described above with reference toFIGS. 1-4.

At block705, an attempt is made to establish a connection between a control panel and a backend system. The control panel may include all or portions of device105described with reference toFIGS. 1 and/or 2. The backend system may be accessible via a network. At block710, confirmation is made that no connection is available between the control panel and backend system. The failure to connect the control panel the backend system may result from problems with the network or with failures at the backend system.

Block715includes initiating a two-cellular call between the control panel and a central station. The two-way cellular call may be made across a different network than the network used to connect the control panel to the backend system. At block720, information is communicated between a control panel and a central station via the two-way cellular call. The information may include, for example, a caller ID or other information that may be conveyed from the control panel to the central station without requiring two-way communication back from the central station to the control panel. As discussed above, the two-way cellular call initiated in block715and used for communicating information in block720may be replaced with other types of communication via other types of networks. A two-way cellular call may have particular relevance in the applications described herein because of the ease and relatively low cost of including a cellular radio in the control panel (e.g., device105) and at the central station. The cellular radio may provide an alternative means of communicating information from the control panel to the central station by bypassing the typical lines of communication between the device and backend system and between the backend system and the central station. The cellular radio may provide an entirely separate network or line of communication to better ensure that the backend failure redundancy does not fail for the same or similar reasons as the communication failure between the device and the backend system.

FIG. 8is a flow diagram illustrating one embodiment of a method800for backend failure redundancy. In some configurations, the method800may be implemented by the communication module140, device105, or environment100,200described above with reference toFIGS. 1-4.

At block805, an alarm event is detected. The alarm event may be any of a number of different events or circumstances associated with an environment (e.g., environment100,200). The alarm event may be detected at least in part by a sensor such as sensor130described with reference toFIGS. 1 and/or 2.

At block810, an attempt is made to connect the control panel to a backend system. If the connection is made, an alarm message is delivered to the backend system at block850. At block855, an alarm message is delivered from the backend system to a central station. Thereafter, the central station may perform an intervening action such as dispatching service for emergency personnel, or contacting a user of the control panel.

If the connection between the control panel and backend system is not made, block815shows that a two-way cellular call is initiated between the control panel and the central station. This separate communication effectively bypasses communications typically routed through the backend system as described with reference to blocks850and855. The two-way cellular call is just one of numerous examples of the type of communication that may be possible between the control panel and the central station, and does not limit which of these communication mediums may be used.

At block820, the cellular connection between the control panel and the central station is confirmed. Once confirmation is complete, a caller ID is delivered from the control panel to central station in block825. Other types of information besides a caller ID may be delivered from the control panel to the central station via the two-way cellular call. Some example types of information include, for example, an alarm code, information about the control panel, and a location of the control panel.

At block830, confirmation of the control panel in the database is made. This confirmation is used to ensure that the control panel from which the caller ID is received, or the associated monitored property, is part of the network or system that is being monitored by the central station. At block835, confirmation is made that no alarm signal has been received from the backend system. If a separate alarm signal is received from the backend system for a particular control panel, a different protocol or operating procedure may be initiated to deal with such a situation of conflicting signals. In the event that no alarm signal has been received from the backend system, a method800may proceed to additional operating steps.

At block840, an attempt is made to contact the user of the control panel, some other authorized person associated with the control panel, and/or the property associated with the control panel. The attempted contact may be made using, for example, a two-cellular call, text, email, or contact via social media. If communication is initiated with the user, an inquiry may be made concerning why or how the caller ID specifically and/or the other information received directly from the control panel occurred.

At block845, assistance may be dispatched in response to the received information from the control panel. The assistance may be in the form of, for example, service personnel or emergency services.

Alternative methods may relate specifically to operating procedures for the control panel. The control panel may have a certain operating procedure in the event that information is received from the backend system related to an alarm event. A separate operating procedure may be used when a signal is received directly from the control panel. Various steps may be taken to confirm that the signal or information received directly from the control panel is accurate. Upon receiving a signal directly from the control panel, further steps may be taken to initiate checks on the backend system and/or the network used to communicate between the control panel and the backend system. Typically, no signal is received directly from the control panel to the central station unless a failure has occurred at the backend system or the network used to communicate between the backend system and the control panel.

FIG. 9depicts a block diagram of a controller900suitable for implementing the present systems and methods. The controller900may be an example of the device105, mobile computing device155, and/or home automation controller160illustrated inFIG. 1. In one configuration, controller900includes a bus905which interconnects major subsystems of controller900, such as a central processor915, a system memory920(typically RAM, but which may also include ROM, flash RAM, or the like), an input/output controller925, an external audio device, such as a speaker system930via an audio output interface935, an external device, such as a display screen935via display adapter940, an input device945(e.g., remote control device interfaced with an input controller950), multiple USB devices965(interfaced with a USB controller970), one or more cellular radios990, and a storage interface980. Also included are at least one sensor955connected to bus905through a sensor controller960and a network interface985(coupled directly to bus905).

Bus905allows data communication between central processor915and system memory920, which may include read-only memory (ROM) or flash memory (neither shown), and random access memory (RAM) (not shown), as previously noted. The RAM is generally the main memory into which the operating system and application programs are loaded. The ROM or flash memory can contain, among other code, the Basic Input-Output system (BIOS) which controls basic hardware operation such as the interaction with peripheral components or devices. For example, a communication module140-bor a response module180-bto implement the present systems and methods may be stored within the system memory920. The communication module140-bmay be an example of the communication module140illustrated inFIGS. 1, 2, and/or3. The response module180-bmay be an example of the response module180illustrated inFIGS. 1, 2, and/or4. Applications (e.g., application150) resident with controller900are generally stored on and accessed via a non-transitory computer readable medium, such as a hard disk drive (e.g., fixed disk975) or other storage medium. Additionally, applications can be in the form of electronic signals modulated in accordance with the application and data communication technology when accessed via interface985.

Storage interface980, as with the other storage interfaces of controller900, can connect to a standard computer readable medium for storage and/or retrieval of information, such as a fixed disk drive975. Fixed disk drive975may be a part of controller900or may be separate and accessed through other interface systems. Network interface985may provide a direct connection to a remote server via a direct network link to the Internet via a POP (point of presence). Network interface985may provide such connection using wireless techniques, including digital cellular telephone connection, Cellular Digital Packet Data (CDPD) connection, digital satellite data connection, or the like. In some embodiments, one or more sensors (e.g., motion sensor, smoke sensor, glass break sensor, door sensor, window sensor, carbon monoxide sensor, and the like) connect to controller900wirelessly via network interface985. In one configuration, the cellular radio990may include a receiver and transmitter to wirelessly receive and transmit communications via, for example, a cellular network. The cellular radio990may be used to transmit information to the central station115via the second network125.

Many other devices or subsystems (not shown) may be connected in a similar manner (e.g., entertainment system, computing device, remote cameras, wireless key fob, wall mounted user interface device, cell radio module, battery, alarm siren, door lock, lighting system, thermostat, home appliance monitor, utility equipment monitor, and so on). Conversely, all of the devices shown inFIG. 9need not be present to practice the present systems and methods. The devices and subsystems can be interconnected in different ways from that shown inFIG. 9. The aspect of some operations of a system such as that shown inFIG. 9are readily known in the art and are not discussed in detail in this application. Code to implement the present disclosure can be stored in a non-transitory computer-readable medium such as one or more of system memory920or fixed disk975. The operating system provided on controller900may be iOS®, ANDROID®, MS-DOS®, MS-WINDOWS®, OS/2®, UNIX®, LINUX®, or another known operating system.

Unless otherwise noted, the terms “a” or “an,” as used in the specification and claims, are to be construed as meaning “at least one of.” In addition, for ease of use, the words “including” and “having,” as used in the specification and claims, are interchangeable with and have the same meaning as the word “comprising.” In addition, the term “based on” as used in the specification and the claims is to be construed as meaning “based at least upon.”