[OBSOLETE] Netgear Arlo mode management (AutoArlo)

Hello. First time Groovy/SmartThings programmer here. Wanted to scratch an itch I’ve had ever since I received my Netgear Arlo for Christmas: automatically set the Arlo’s mode based on the SmartThings’ mode.

Due to the nature in which the Arlo API functions I’ve yet to find a means of retrieving the available “modes” for an account. This means that to locate the unique identifier for a mode you wish to use you must monitor your HTTP traffic (browsers usually have a “Network” tab in the developer tools that can easily do this) while selecting different modes on the Arlo website. For me the request looked like this:

action: "set" from: "336-3439005_web" properties: {active: "mode1"} active: "mode1" publishResponse: true resource: "modes" responseUrl: "" to: "SERIAL NUMBER" transId: "web!7f777037!0000000000000"

The identifier here being “mode1”, which correlates to my “Home” mode in Arlo.

Being my first attempt at writing a SmartApp, it may be riddled with bugs/problems, but it seemed to do the trick for me. Hopefully it will work for you until official support is integrated.

6 Likes

Very excited about this if it works. Installing now.

Having a hard time finding the modes through the network tab in my browser (Safari). Any way you could give me some more details on that step?

Sure. So, login to the Arlo site and, after logging in, open the developer tools for your browser and find the network tab. I don’t know Safari but in Chrome you can choose to only see XHR requests, choose that if there is something similar.

Now, go to the “Mode” area on the site. At this time it might be good to have both windows (browser window and network tab) visible. Click a different mode. You should see a request fire at the same moment, maybe two. You need to look at the request details as this will contain a JSON payload with the identifier you want.

That’s about it. If you have troubles feel free to PM or post screenshots or more details.

Also: I guess in a pinch you could just try “mode0”, " mode1", etc. and see what happens.

Thanks, I think I got it figured out. Just finished setting it up. Tested it once, and it seems to be working. I’ll report back with any problems I encounter.

Personally, I installed it three times to account for each Arlo mode I wanted to trigger.

Maybe someone with more Groovy/SmartThings programming chops than I can tweak it so I only have to install it over.

I had to do the same. Seems to be working so far.

Worked fine for a while, then all of a sudden stopped working altogether today.

Did you change your password or edit any of the modes?

I’m is still working today :smile:

Really appreciate the work put in here. Thanks!

Glad you find value in it!

Thank you VERY much, you appear to be a complete genius!

I’m now able to automatically arm my arlo cameras when I leave home, and automatically disarm them when I arrive home.

You’ve done something the smartthings promised and still haven’t managed.

My only question, an i right in thinking I can’t set my Arlo’s to trigger “schedule” routine when I’m home? I can’t see any simple values such as mode1/mode2, there appears to be a whole string of modes for my schedule.

NOT a biggie, just curious. I’m happy already with arm/disarm/outside cameras only.

It’s certainly doable, I took a look the other day and it shouldn’t be too bad to get added in. I’ll try to carve out some time in the next week and get it added.

2 Likes

For those of you who are having issues finding your Arlo mode identifiers, you can try the following. I’ve only tested this in Chrome but should hopefully work everywhere.

  • Login to the Arlo website.

  • Choose “Mode” from the top navigation.

  • Click your hub name.

  • Paste the following code into your URL bar:

      javascript:angular.forEach(document.querySelectorAll('span[ng-click="selectMode(mode)"]'), function(modeElement) { var angularObject = angular.element(modeElement).scope(); var arloMode = angularObject.$parent.mode; alert(arloMode.name + " = " + arloMode.id); });
    

This should open an alert window for each mode you have in the format of “Name = ID” – the ID is what my SmartApp needs.

Hope this helps!

2 Likes

I’m new here and actually looking for some help and came across your topic. I actually have, well had 6 arlo cameras running with no hub (just through Asus router and Swann NVR) with just a few bugs here and there. I will have to post code as soon as my son’s orange juice is completely dried out of laptop…

Now the part I’m looking for help with is where in community to go to get list or guidance on devices/apps that integrate flawlessly or with little effort. Right now I have cast on one hand and nerve damage in index and middle finger of other and am right in middle of transitioning to smart things and writing code. I am doing most of it from my Galaxy S6 and Galaxy Tablet, so a nudge in right direction would be greatly appreciated ( I do know groovy and Java quite well, right now I have 2 of the Samsung nooks acting as wireless touchscreen control pads using 2gig Technologies TS1 Z-Wave Wireless Touchscreen Keypad’s interface just hacked up and molded a little bit). But for now I need to finish off the easier stuff until cast is off

Thanks again

You can find the mode ID in the URL too, just edit the mode and it will show its ID at the end of the URL (for editable modes only). I imagine Mode0 is "Disarmed’ for most? But doesn’t look like the scheduler mode can be set via this method unless someone has worked that one out?

Otherwise this works great (just tested) and Arlo was the missing link in my ST/HA set up!

Would be great as already mentioned if you can add multiple roles and/or modes within the one app, rather than replicate it for each scenario, but I’m happy to have this at least. Good work!

1 Like

All I did was make each arlo a regular ip camera, the only thing hub is used for is a target on pistol range. Anything from netgear is too easy to crack, plus its open source. I control them using my NVR which i created a device handler and app for. Since i just switched to Samsung NVR, after removing swann, it just added cameras automatically by what i named them as and when i clicked on cameras it redirected me to nvr main menu…on lan anyway. I hope it works like that outside of lan especially since proxied and vpn.

Now if I could just get my Schlage Camelot to do what i want Id be happy. Ive tried everyones programs but can never quite finish the setup for arm/disarm etc. So now off to that project

1 Like

Hey,
Do you have any directions or resources on how to not use that damn Arlo hub? I have been dying to get that working and can’t figure it out.

Thanks

Open up your browser console when logged into your account on arlo website, look for your owner id and each of your device id’s ( easiest way to get is to go into recordings of each camera, you can type “deviceId” in filter output box in console if it helps) and write those down, then find AWSAccessKeyId, Signature and save those, xcloudId and Authorization are next, then the rest is either writing code or using ip camera software of your choice. Most of it you can copy and paste into notebook and edit from there if you want to write something yourself, but I’d recommend finding a program or app you like and using that because of the encryption.

1 Like