IP Library Granted Patent US 11,356,352
Granted Patent B2
US 11,356,352 · App. 17/032,619 · Granted Jun 7, 2022

Identifying reachability of network-connected devices

Inventors: Keith W. Rauenbuehler (San Francisco, CA); Nicholas J. Circosta (Mountain View, CA); Kenneth A. York (San Jose, CA); Christopher Ku (San Jose, CA); Adam J. Moore (San Francisco, CA); Jose A. Lozano Hinojosa (Sunnyvale, CA); Aniket A. Zamwar (Sunnyvale, CA); Patrick L. Coffman (San Francisco, CA)
Assignee: Apple Inc.
H04L43/10H04L12/2854
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,356,352
App. No.
17/032,619
Granted
Jun 7, 2022
Kind
B2
Abstract

Techniques are disclosed for transmitting a message to a user device in accordance with a determination that another device is unreachable over a network. In one example, a server device, at a first location, may identify a controller device resident at a second location, whereby the controller device is configured to communicate with a router at the second location. The server device may also receive a list of user devices. The server device may transmit a ping message to the controller device via the router to determine whether the controller device is unreachable by the server device. The server device may subsequently transmit a message to a user device on the list in accordance with a determination that the controller device is unreachable by the server device, whereby the message includes instructions for the user device to determine whether the controller device is unreachable by the user device.

Claims (44)

1. A method, comprising:

identifying, by a server device at a first location, a controller device resident at a second location, the controller device configured to communicate with a router at the second location;

receiving, by the server device, a list of user devices;

transmitting, by the server device, a ping message to the controller device via the router;

determining, by the server device, whether the controller device is unreachable by the server device based at least in part on the ping message; and

transmitting, by the server device, a message to at least one of the user devices on the list of user devices in accordance with a determination that the controller device is unreachable by the server device, the message comprising instructions for the at least one user device of the user devices to determine whether the controller device is unreachable by the at least one user device.

2. The method of claim 1 , wherein the determination of whether the controller device is unreachable by the at least one user device is based at least in part on the at least one user device attempting to reach the controller device via the router.

3. The method of claim 1 , further comprising receiving, by the server device, reachability information from the at least one user device that indicates whether the controller device was unreachable by the at least one user device.

4. The method of claim 3 , wherein the reachability information identifies that the controller device was unreachable by the at least one user device via the router.

5. The method of claim 1 , wherein the router is reachable by the server device via a wide area network.

6. A first device, comprising:

a memory comprising computer-executable instructions; and

one or more processors in communication with the memory and configured to access the memory and execute the computer-executable instructions to perform, at least:

identifying, at a first location, a controller device resident at a second location, the controller device configured to communicate with a router at the second location;

receiving a list of user devices;

transmitting a ping message to the controller device via the router;

determining whether the controller device is unreachable by the first device based at least in part on the ping message; and

transmitting a message to at least one of the user devices on the list of user devices in accordance with a determination that the controller device is unreachable by the first device, the message comprising instructions for the at least one user device of the user devices to determine whether the controller device is unreachable by the at least one user device.

7. The first device of claim 6 , wherein the at least one user device is configured to, based at least in part on receipt of the message from the first device:

ping the controller device;

determine whether the controller device is reachable by the at least one user device; and

present a notification on a display of the at least one user device in accordance with a determination that the controller device is unreachable by the at least one user device.

8. The first device of claim 7 , wherein the at least one user device is configured to present the notification independent of whether the controller device was reachable by the first device.

9. The first device of claim 6 , further comprising:

transmitting subsequent messages to each of the user devices upon subsequent determinations that the controller device is unreachable by the first device,

wherein the at least one user device is configured to only present a single notification about the controller device being unreachable, the single notification being based at least in part on a determination, by the at least one user device, that the controller device is unreachable by the at least one user device and not based at least in part on any of the message or the subsequent messages.

10. The first device of claim 6 , wherein the at least one user device is configured to reach the controller device via at least one of a Bluetooth connection, a Thread connection, a ZigBee connection, an Infrared connection, or a WiFi connection.

11. The first device of claim 6 , wherein the list of user devices received by the first device is immutable other than by the controller device.

12. The first device of claim 6 , wherein the message is further transmitted to each of the user devices in accordance with a determination that the router is unreachable by the first device.

13. The first device of claim 6 , wherein the list of user devices is received from the controller device via the router.

14. The first device of claim 6 , wherein user devices of the list of user devices are associated with a same account as the controller device.

15. One or more non-transitory computer-readable storage media comprising computer-executable instructions that, when executed by one or more processors of a first device, cause the one or more processors to perform, at least:

identifying, at a first location, a controller device resident at a second location, the controller device configured to communicate with a router at the second location;

receiving a list of user devices;

transmitting a ping message to the controller device via the router;

determining whether the controller device is unreachable by the first device based at least in part on the ping message; and

transmitting a message to at least one of the user devices on the list of user devices in accordance with a determination that the controller device is unreachable by the first device, the message comprising instructions for the at least one user device of the user devices to determine whether the controller device is unreachable by the at least one user device.

16. The one or more non-transitory computer-readable storage media of claim 15 , wherein the user devices on the list comprise a plurality of devices configured to be informed if the controller device becomes unreachable by the first device via the router.

17. The one or more non-transitory computer-readable storage media of claim 15 , wherein the first device determines that the controller device is unreachable via the router in accordance with passage of a threshold amount of time between transmission of the ping message and receipt of a response to the ping message.

18. The one or more non-transitory computer-readable storage media of claim 15 , wherein the determination of whether the controller device is unreachable by the at least one user device is based at least in part on the at least one user device attempting to reach the controller device via the router.

19. The one or more non-transitory computer-readable storage media of claim 15 , wherein the instructions further comprise:

transmitting subsequent messages to each of the user devices upon subsequent determinations that the controller device is unreachable by the first device,

wherein the at least one user device is configured to only present a single notification about the controller device being unreachable, the single notification being based at least in part on a determination, by the at least one user device, that the controller device is unreachable by the at least one user device and not based at least in part on any of the message or the subsequent messages.

20. The one or more non-transitory computer-readable storage media of claim 15 , wherein the message is further transmitted to each of the user devices in accordance with a determination that the router is unreachable by the first device.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE THIRD APPLICATION NUMBER PREVIOUSLY RECORDED AT REEL: 055067 FRAME: 0646. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Feb 2, 2021
From: COFFMAN, PATRICK L.
To: APPLE INC.
Reel/Frame 055206/0267 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 28, 2021
From: COFFMAN, PATRICK L.
To: APPLE INC.
Reel/Frame 055067/0646 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 1, 2020
From: RAUENBUEHLER, KEITH W.; CIRCOSTA, NICHOLAS J.; YORK, KENNETH A.; KU, CHRISTOPHER; MOORE, ADAM J.; LOZANO HINOJOSA, JOSE A.; ZAMWAR, ANIKET A.
To: APPLE INC.
Reel/Frame 053949/0288 →
Continuity (2)
Provisional Application 63034110 · Jun 3, 2020
Related Publication 20210385144A1 · Dec 9, 2021
Cited By (3)
US 12,245,327 US 12,664,666 US 12,711,806