IP Library Granted Patent US 12,342,003
Granted Patent B2
US 12,342,003 · App. 18/626,705 · Granted Jun 24, 2025

Managing remote access to image capture devices

Inventors: Joey Wong (Foster City, CA); Zach Rose (Natick, MA); Bojan Rajkovic (Salem, MA); Kevin Klemm (Waltham, MA)
Assignee: SimpliSafe, Inc.
H04N21/2187
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 12,342,003
App. No.
18/626,705
Granted
Jun 24, 2025
Kind
B2
Abstract

One disclosed method involves receiving a first request to establish a first connection between a computing device and a camera, wherein the first connection is configured to allow streaming of video data from the camera to the computing device and the camera is configured to support connections with multiple remote devices at one time. A determination is made that a second connection is already established between an endpoint device and the camera, wherein the second connection is configured to allow streaming of video data from the camera to the endpoint device. Based at least in part on the first request and the second connection already being established, the second connection is terminated and the first connection is established, thus providing the computing device with access to one or more functionalities of the camera free of interference by the endpoint device.

Claims (56)

1. A method, comprising:

in response to a camera receiving, from a first endpoint device remote from the camera, a request to establish a connection with the camera via which video data can be streamed, the camera:

identifying an existing connection between a second endpoint device and the camera, the second endpoint device being remote from the camera and configured to stream video data from the camera via the existing connection; and

terminating the existing connection between the second endpoint device and the camera and establishing the connection between the first endpoint device and the camera to provide the first endpoint device with access to one or more functionalities of the camera, one of which being streaming video data from the camera.

2. The method of claim 1 , further comprising:

prior to terminating the existing connection, sending, by the camera, a message to the second endpoint device indicating that the existing connection is going to be terminated.

3. The method of claim 1 , wherein the connection between the first endpoint device and the camera is a first peer-to-peer connection, and the existing connection between the second endpoint device and the camera is a second peer-to-peer connection.

4. The method of claim 1 , wherein:

the first endpoint device is further configured to stream audio data from the first endpoint device to the camera via the connection between the first endpoint device and the camera.

5. The method of claim 4 , wherein:

the second endpoint device is further configured to stream audio data from the second endpoint device to the camera via the existing connection.

6. The method of claim 1 , wherein:

the request includes a session description protocol (SDP) offer received from the first endpoint device via a web real-time communication (WebRTC) signaling server; and

establishing the connection between the first endpoint device and the camera includes sending, by the camera, an SDP answer to the first endpoint device via the WebRTC signaling server.

7. The method of claim 1 , wherein:

the request is received from a first application hosted on the first endpoint device;

the existing connection between the second endpoint device and the camera is established between a second application hosted on the second endpoint device and the camera;

the first application is of a first type;

the second application is of a second type different than the first type; and

the camera terminates the existing connection between the second endpoint device and the camera and establishes the connection between the first endpoint device and the camera based at least in part on the first application being of the first type and the second application being of the second type.

8. A method, comprising:

in response to a camera receiving, from a first endpoint device remote from the camera, a request to establish a connection with the camera via which video data can be streamed, identifying, by the camera, an existing connection between a second endpoint device and the camera, the second endpoint device being remote from the camera and configured to stream video data from the camera via the existing connection; and

in response to the camera identifying the existing connection between the second endpoint device and the camera, denying, by the camera, the request so that the second endpoint device continues to have access to one or more functionalities of the camera via the existing connection between the second endpoint device and the camera.

9. The method of claim 8 , further comprising:

sending, by the camera, a message to the first endpoint device that causes the first endpoint device to output an indication that the request has been denied.

10. The method of claim 9 , wherein the message is sent via a data channel between the camera and the first endpoint device, and the method further comprises:

establishing the data channel prior to sending the message; and

de-establishing the data channel after sending the message.

11. The method of claim 8 , wherein the request is to establish a peer-to-peer connection between the first endpoint device and the camera, and the existing connection between the second endpoint device and the camera is a peer-to-peer connection.

12. The method of claim 8 , wherein:

the second endpoint device is further configured to stream audio data from the second endpoint device to the camera via the existing connection between the second endpoint device and the camera.

13. The method of claim 8 , wherein:

the request includes a session description protocol (SDP) offer received from the first endpoint device via a web real-time communication (WebRTC) signaling server.

14. The method of claim 8 , wherein:

the request is received from a first application hosted on the first endpoint device;

the existing connection between the second endpoint device and the camera is established between a second application hosted on the second endpoint device and the camera;

the first application is of a first type;

the second application is of a second type different than the first type; and

the camera denies the request based at least in part on the first application being of the first type and the second application being of the second type the second type.

15. A camera, comprising:

at least one processor; and

at least one computer-readable medium encoded with instructions which, when executed by the at least one processor, cause the camera to:

in response to receiving, from a first endpoint device remote from the camera, a request to establish a connection with the camera via which video data can be streamed, identify an existing connection between a second endpoint device and the camera, the second endpoint device being remote from the camera and configured to stream video data from the camera via the existing connection; and

in response to identifying the existing connection between the second endpoint device and the camera, deny the request so that the second endpoint device continues to have access to one or more functionalities of the camera via the existing connection between the second endpoint device and the camera.

16. The camera of claim 15 , wherein the at least one computer-readable medium is further encoded with additional instructions which, when executed by the at least one processor, further cause the camera to:

send a message to the first endpoint device that causes the first endpoint device to output an indication that the request has been denied.

17. The camera of claim 16 , wherein the at least one computer-readable medium is further encoded with additional instructions which, when executed by the at least one processor, further cause the camera to:

establish a data channel between the camera and the first endpoint device;

send the message via the data channel; and

de-establish the data channel after sending the message.

18. The camera of claim 15 , wherein:

the request is to establish a peer-to-peer connection between the first endpoint device and the camera, and the existing connection between the second endpoint device and the camera is a peer-to-peer connection.

19. The camera of claim 15 , wherein:

the second endpoint device is further configured to stream audio data from the second endpoint device to the camera via the existing connection between the second endpoint device and the camera.

20. The camera of claim 15 , wherein:

the request includes a session description protocol (SDP) offer received from the first endpoint device via a web real-time communication (WebRTC) signaling server.

Assignments (2)
SECURITY INTEREST Recorded Nov 12, 2025
From: SIMPLISAFE, INC.
To: CAPITAL ONE, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 073579/0854 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 4, 2024
From: WONG, JOEY; ROSE, ZACH; RAJKOVIC, BOJAN; KLEMM, KEVIN
To: SIMPLISAFE, INC.
Reel/Frame 067008/0403 →
Continuity (3)
Continuation 18201830 · May 25, 2023
Provisional Application 63441593 · Jan 27, 2023
Related Publication 20240267571A1 · Aug 8, 2024
References Cited (35)
US 5974389A · Clark · 1999 [cited by examiner]
US 10887552B1 · Abbas · 2021 [cited by examiner]
US 20030202101A1 · Monroe et al. · 2003 [cited by applicant]
US 20060072014A1 · Geng et al. · 2006 [cited by applicant]
US 20070182540A1 · Marman · 2007 [cited by applicant]
US 20140253740A1 · Barnwal · 2014 [cited by applicant]
US 20150022666A1 · Kay et al. · 2015 [cited by applicant]
US 20150109112A1 · Fadell et al. · 2015 [cited by applicant]
US 20150304364A1 · Wang et al. · 2015 [cited by applicant]
US 20160132099A1 · Grabau et al. · 2016 [cited by applicant]
US 20170272625A1 · Gravis · 2017 [cited by examiner]
US 20170280112A1 · Siminoff · 2017 [cited by applicant]
US 20180019889A1 · Burns et al. · 2018 [cited by applicant]
US 20190082115A1 · Takahashi et al. · 2019 [cited by applicant]
US 20200068376A1 · Dames · 2020 [cited by examiner]
US 20200226416A1 · Bapat et al. · 2020 [cited by applicant]
US 20200320838A1 · Trundle et al. · 2020 [cited by applicant]
US 20200413006A1 · Cheng · 2020 [cited by applicant]
US 20210274130A1 · Nodder · 2021 [cited by applicant]
US 20210360446A1 · Laurans et al. · 2021 [cited by applicant]
US 20220207972A1 · Madden et al. · 2022 [cited by applicant]
CN 114996667A · 2022 [cited by applicant]
EP 2407944A1 · 2012 [cited by applicant]
EP 2992692B1 · 2016 [cited by applicant]
WO 2015164074A2 · 2015 [cited by applicant]
International Search Report and Written Opinion issued Apr. 26, 2024, for International Patent Application No. PCT/US2024/011143. [cited by applicant]
U.S. Appl. No. 18/113,888, filed Feb. 24, 2023. [cited by applicant]
U.S. Appl. No. 63/441,960, filed Jan. 30, 2023. [cited by applicant]
U.S. Appl. No. 63/441,593, filed Jan. 27, 2023. [cited by applicant]
U.S. Appl. No. 17/529,332, filed Nov. 18, 2021. [cited by applicant]
“Kinesis Video Streams: Amazon Kinesis Video Streams WebRTC Developer Guide”, Amazon Web Services, Inc., 2023, p. 1-61. [cited by applicant]
J. Rosenberg, “Interactive Connectivity Establishment (ICE): A Protocol for Network Address Translator (NAT) Traversal for Offer/Answer Protocols”, Internet Engineering Task Force (IETF), Apr. 2010, p. 1-117. [cited by applicant]
“Firebase + WebRTC Codelab”, WebRTC, Google Developers, https://webrtc.org/getting-started/firebase-rtc-codelab, retrieved from the Internet on Mar. 9, 2023. [cited by applicant]
Written Opinion of the International Preliminary Examining Authority mailed Mar. 30, 2023, for International Patent Application No. PCT/US2021/059844. [cited by applicant]
Office Action issued Mar. 15, 2025 for Chinese Patent Application No. 202480002127.9. [cited by applicant]