New Video – Ring Doorbell Local Storage (w/ NAS, No Cloud)?!

Hi everyone, I have just published a new video to go alongside the ‘Can You Record Ring Doorbell Footage Locally (No Cloud)?‘ guide I posted yesterday. I look at the different options available to users who want to capture their Ring Doorbell’s video footage and store it locally (such as on a NAS or a local server):

Video Transcript

Hey YouTube, it’s Tristan from Smart Home Point here. I want to speak to you today about the Ring Doorbell series of security doorbells, produced by Ring who are owned by Amazon. They are really useful devices – they have a camera, they detect motion outside your door and then they record this motion to the Ring Cloud Servers. This then allows you – as long as you pay a monthly subscription – this allows you to go onto Ring’s phone app or Ring’s Live View on a computer and actually access and view this recorded video footage. Now, it’s a really good feature but these devices aren’t cheap and some people don’t want to pay a monthly subscription on top as well. So as a result people ask whether you can capture the video footage from here [points at camera lens] and record it locally to a NAS – network attached storage. So I wanted to shoot this video just to look at whether or not that’s possible. Let’s take a look.


Thanks for that… obviously that’s a slightly jokey answer but the short answer is no, you can’t officially take the video footage from here [points at camera lens] and some of live stream it and live record it to a local server or local NAS. It’s just not an advertised feature on the Doorbell Pro or any of the other Ring doorbells and that’s because Ring cynically… well, in my cynical point of view… as Ring wants you to pay a monthly subscription to them instead of capturing the video footage yourself and not then pay a monthly subscription. So that’s the official answer… is no… it’s not possible but unofficially there’s some really smart programmers who have created unofficial API’s that allow you to access the live video footage here [points at Ring Doorbell] so the video footage will be sent to Ring but will also be sent to potentially your local server. Now, you do require technical knowledge and these methods may not work going into the future because Ring might do a software update that stops it from working. But for now there are a few methods that work, so let’s take a look at that these methods. Okay so as I mentioned at the start of this video there’s a few unofficial methods you can use to capture the live video recording of your Ring doorbell.

Now let’s take a look at them.. uh… the first is a JavaScript based API. They do make clear it’s an unofficial API for Ring doorbells and certainly all the methods I’m covering today are technical – you require some level of technical programming knowledge before you can use these methods but as long as you’ve got some technical ability I thought this video would be useful. Okay, so the first is the Ring client API, it’s obviously on NPM so you can download it fairly easily and this is quite a well-known library: it’s got 28,000 downloads and in the guide… it’s running you through how you actually – you know – use the camera. It’s got lots of different information It tells you how you can actually get the camera. You need to get the device first, then you can get the camera and then you can sort of start video on demand and you can capture the SIP session as well. Now that’s important because as a lot of these… all of these guys [the projects] found out… the way that the Ring doorbell works is this starts a video call between itself and the Ring Cloud Servers and it does this using something called SIP – session initiation protocol. Once that SIP session has started, something called RTP is then used to actually transfer the video packet data back and forth – well, not back and forth, just from the Doorbell to the actual Ring servers. So as I mentioned all all these libraries have found out that you need to sort of capture or create the SIP session and then from there you can actually capture the video footage essentially. So this library actually explains how you do that, there’s also in the… if you go up and go to the wiki… in there you’ll actually see that there’s a camera troubleshooting page so if you have any issues with the live streaming then it talks through some of the things you might need to do, such as checking the logs and everything else. There might also be some dependency issues that you might be missing. So it’s worth just going through this and have a look.

The second method is a similar one. Again, it’s an unofficial API because they all are. This is written in Python, unlike the first one that was written in Node.js. So this is a Python-based library, it works with Python version 3.6 upwards and it makes clear Ring doesn’t write an official API and this is just from reverse engineering how the Ring Doorbell itself… how it works. That caveat’s there because obviously – you know – in theory, in using any of these methods Ring could potentially cut off your access or close down your account – your Ring account. I haven’t heard of that ever happening but just be conscious that that could potentially happen. Anywhoo, this guide also shows you how you can get started. The… this particular package – Python package – is available on pip so it talks through how you can install that and then you need to get set up. It authenticates just with standard username and password. It then looks for devices from your account and then it can actually stream things from there. It also does a lot more, just like the other library. It does a lot more than just record Ring live footage: you can also capture doorbell events as well which is handy and you can download the last video as well, assuming you’ve actually paid for the Ring Protect plan. And this library… the actual live streaming was committed not that long ago in September 2019. They do make clear it’s a bit of a hacky solution, and it’s actually based on the first library that we looked at the first library we looked at, the Node.js one. But certainly from what we can see, it does work. You can see in all the footage that… sorry, you can in all the comment logs that this method does work. So if you’re… if you know Python, it could be worth checking out this really cool library called the Python Ring Doorbell package and again all of these listed on our website as well.

The next method to look at – or the next library to look at – is called Ring-hassio, let’s take a look at that. So this is actually a Home Assistant I add-on. So I’ve covered Home Assistant elsewhere in my blog. It’s just a really cool open-source home automation program that, basically, you install it on a Raspberry Pi. It then scans for new devices and sets up a really nice dashboard and also allows you to see the video footage. And this Ring-hassio project is basically a Home Assistant add-on. It also uses the first library we’ve seen to actually expose the live stream from your Ring Doorbell. Now the way this actual project works is that it’s designed obviously to show the camera in your Home Assistant dashboard, but due to how this works the actual video stream is exposed in a URL so there’s no reason why you can’t then use VLC to capture that video footage and save it locally or you can write your own programming script to actually get this video stream and save it locally. I won’t go into doing that here, but there’s quite a lot of guides online that show you how to do that.

Okay, and then the final method is also from the Home Assistant forums. So Brian… around a year ago in February 2019… he looked at a way of storing files locally. What he does say later on… so he used a program called Node-RED flow (and that’s explained somewhere else actually)… now Brian did get this up and running but if you see later on he actually – let’s have a look – yes so what Brian actually says later on in December 2019 is he’s actually recommend against the method that he used. And what he was saying is that after he started using it then – his particular script – he started losing access to all of his Ring video feeds. He then disabled the script and the video feed then came back, so that’s a bit concerning. But obviously the fact he lost his Ring video feed and he was locked out to that – you know – scared him and you know, that does suggest that Ring do have some – you know – anti-tampering measures in place. So it goes back to what I said at the start of this which is that any of these methods you know they were all unofficial, none of them are supported by Ring and they could take action against you if you use them. So there definitely is a downside really and certainly I’ve seen that as well when I was sort of investigating for this video. There’s quite a few methods over the years that previously did allow you to record life video footage from your Doorbell and save it locally, but then they stopped working. Sometimes they were stopped – they stopped working – even a couple of months later because Ring pushed out a software update that stopped that from working. So what I’d probably say is just be careful with what methods you use and if you really want to record locally it might be worth buying a camera – you know – a doorbell camera that actually supports this out the box, but your mileage may vary really.

So that’s it really. These are the four methods that I’m aware of. I mentioned them all on my blog and I’ll put this – I’ll put the link to this blog post in this video as well. Okay thanks for watching this video, I hope you found it useful. The short answer is – you probably guessed – is that you can’t easily access the video footage from you Ring doorbell and save it locally. There are some unofficial methods, but whether or not they’ll work in a few months time is anyone’s guess. I hope you found this this video useful. If you did, please click the thumbs up button and don’t forget to subscribe. Thank you!

About Tristan Perry

Tristan Perry is a software developer who is passionate about tech gadgets, DIY and housing. He has therefore loved seeing smart homes hit the mainstream. Tristan also has an academic background (in Math & Computer Science), and so he enjoys digging into the technical ways that smart home devices work.

Tristan owns close to a dozen Amazon Echo devices, way too many Philips Hue bulbs and lightstrips, a boat-load of Ring Cameras and Doorbells... and a bunch of other smart home devices too (from Reolink, Google Nest, GLEDOPTO and others).

If you have any questions, feedback or suggestions about this article, please leave a comment below. Please note that all comments go into a moderation queue (to prevent blog spam). Your comment will be manually reviewed and approved by Tristan in less than a week. Thanks!

Leave a Comment