Ok So I got the oAuth at least taking me to the neato page for a login. Is that where you got stuck? I dont have any neato devices... so I could post this for some testing which it may just totally blow up after you auth. Or I could see if I can make an account with no devices and maybe it will let me do something further.
I see there is some code in here throwing errors as well, stuff trying to adjust the alarm status but it must need to be different for Hubitat. Its not stopping it from working though, it just wont be able to adjust the alarm until thats fixed.
Here is a quick and dirty way to share it so I dont have to mess around with gitHub just yet
Ok on my dropbox link above I am able to OAuth with neato and get a menu to select a vac but I dont have one so I cannot go any further. If anyone else wants to test? Like I said there will probably be some errors especially with whatever this thing is trying to do with alarms but lets see what works.
Do you want to try to combine efforts. @tomw is trying to get this done as well. Maybe if you teamed, it'd go better? I'm willing to help test, but I'm afraid I'm useless in the development department.
Huge Thanks to @jtp10181, Jeff for getting this start worked out!!!
I have a very basic implementation working if anyone wants to give it a try. I tested this on a D4 model. I removed a lot from the code and left just the basics (the device commands and the vacuum status) no-go lines are working! I also set it up to integrate well with the community maintained google home integration. (start, stop, pause and dock traits).
issues - #1 I don't think this will work for more than one vacuum (I'm pretty sure it will not) #2 on my D4 model the "find me" command does not work. I left it in case it works for other models.
I've implemented some fixes and added some improvements. I do believe this should work for multiple Botvacs now but I'm not able to test that.
Links below-
I can't seem to get this working. I can see the status of the device ok but I don't seem to be able to make it do anything. In the current states I see error : ui_alert_invalid. Maybe this is a clue. Using the phone on my app I am able to control it. My model is a DC02. I have tried rebooting the device as well.. Any ideas?
I think this will only work on the Connected D Series (D3, D4, D5, D6, D7).
Can you enable debug logging in the app and click refresh on the device and send me the log?
Just want to say that, because of this automation from @gassgs, my Neato D7 is now integrated into Hubitat. And more importantly, my ST hub is a paperweight. Thank you @gassgs!
I just came across this, fantastic! I’ve been hoping for this for a while. Thanks to this, I have now added a pause command for my Botvac into my routine that silences all of my media if I get a call when I’m working.
I noticed that the “run” command takes a parameter in the interface, but the code doesn’t use any parameters. I was hoping to be able to call it to clean a specific zone, is this something that might happen in the future?
There should be no difference at all, exactly the same command is called. For the Off command you can choose to either use it as "pause" or "return to dock".
Sorry I just seen this. My model doesn't support that so I wouldn't be able to test it. I will try to look at it one of these days to see how difficult it would be to implement. What model do you have?
I have a D7. I also found drivers for the Neato on Node Red, but I haven’t been able to get them to work there to issue commands. I can get the properties of the vac, but I can’t figure out how to format the commands in Node Red.
I’m not familiar with Groovy, it’s something I have been meaning to look into. I’m better with JavaScript so I’ll try to look through the node files to see if I can figure anything out there. They also have nodes set up to gather map and boundary info,