diff --git a/LICENSE b/LICENSE index 9941274..fe9ab40 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2017 Arne Blumentritt +Copyright (c) 2020 Luis Riegger Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index b46a0b5..d02ccd7 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # homebridge-kobold -This is a plugin for [homebridge](https://github.com/nfarina/homebridge) to control your [Vorwerk Kobold](https://www.vorwerk.de/) vacuum robot. You can download it via [npm](https://www.npmjs.com/package/homebridge-kobold). +This is a plugin for [homebridge](https://github.com/nfarina/homebridge) to control your [Vorwerk Kobold](https://kobold.vorwerk.de/saugroboter/) VR300 vacuum robot. You can download it via [npm](https://www.npmjs.com/package/homebridge-kobold). It is based on naofireblade's `homebridge-neato` and nicoh88's `homebridge-vorwerk`. @@ -10,10 +10,10 @@ It is based on naofireblade's `homebridge-neato` and nicoh88's `homebridge-vorwe - Eco mode - Extra care navigation - Nogo lines -- Zone cleaning [1](#d7), [2](#change-room) +- Zone cleaning [1](#change-room) - Spot cleaning - - Individual spot size [1](#d7), [3](#eve) - - Clean twice [3](#eve) + - Individual spot size [2](#eve) + - Clean twice [2](#eve) - Return to dock - Find the robot - Schedule (de)activation @@ -25,8 +25,6 @@ It is based on naofireblade's `homebridge-neato` and nicoh88's `homebridge-vorwe - Automatic or periodic refresh of robot state - Multiple robots -> 1 Only available on the Neato D7. - > 2 You can send the robot from one room to another as well. He will return to the base, wait there some seconds and then starts cleaning the next room. > 3 You need a third party app like eve to access these features. @@ -37,25 +35,61 @@ It is based on naofireblade's `homebridge-neato` and nicoh88's `homebridge-vorwe 1. Install homebridge using: `npm install -g homebridge` 2. Install this plugin using: `npm install -g homebridge-kobold` -3. If you don't have a Neato account yet, create one [here](https://www.neatorobotics.com/create-account/). -4. Update your configuration file. See the sample below. +3. Update your configuration file. See the sample below. ## Configuration Add the following information to your config file. Change the values for email and password. -### Simple +### Simple ```json "platforms": [ { - "platform": "NeatoVacuumRobot", - "email": "YourEmail", - "password": "YourPassword" + "platform": "VorwerkVacuumRobot", + "token": "YourToken" } ] ``` +You can get a token using the following two curl commands: + +```bash +# This will trigger the email sending +curl -X "POST" "https://mykobold.eu.auth0.com/passwordless/start" \ + -H 'Content-Type: application/json' \ + -d $'{ + "send": "code", + "email": "ENTER_YOUR_EMAIL_HERE", + "client_id": "KY4YbVAvtgB7lp8vIbWQ7zLk3hssZlhR", + "connection": "email" +}' +``` +==== wait for the email to be received ==== + +```bash +# this will generate a token using the numbers you received via email +# replace the value of otp 123456 with the value you received from the email +curl -X "POST" "https://mykobold.eu.auth0.com/oauth/token" \ + -H 'Content-Type: application/json' \ + -d $'{ + "prompt": "login", + "grant_type": "http://auth0.com/oauth/grant-type/passwordless/otp", + "scope": "openid email profile read:current_user", + "locale": "en", + "otp": "123456", + "source": "vorwerk_auth0", + "platform": "ios", + "audience": "https://mykobold.eu.auth0.com/userinfo", + "username": "ENTER_YOUR_EMAIL_HERE", + "client_id": "KY4YbVAvtgB7lp8vIbWQ7zLk3hssZlhR", + "realm": "email", + "country_code": "DE" +}' +``` + +From the output, you want to copy the `id_token` value. + ### Advanced Below are explanations for advanced parameters to adjust the plugin to your needs. All parameters are *optional*. @@ -72,9 +106,8 @@ List of plugin features that you don't want to use in homekit (e.g. `dock`, `doc ```json "platforms": [ { - "platform": "NeatoVacuumRobot", - "email": "YourEmail", - "password": "YourPassword", + "platform": "KoboldVacuumRobot", + "token": "YourToken", "refresh": "120", "hidden": ["dock", "dockstate", "eco", "nogolines", "extracare", "schedule", "find", "spot"] } @@ -83,11 +116,4 @@ List of plugin features that you don't want to use in homekit (e.g. `dock`, `doc ## Tested robots -- Vorwerk Kobold V300 - -## Contributors -Many thanks go to -- [ghulands](https://github.com/ghulands) for finding and fixing a bug when no robot is associated with the neato account -- [Berkay](https://github.com/btutal) for adding the schema file to use the plugin with homebridge-config-ui-x -- [Antoine de Maleprade](https://github.com/az0uz) for adding the zone cleaning feature -- [DJay](https://github.com/DJay-X) for testing out tons of new beta versions +- Vorwerk Kobold VR300 diff --git a/package.json b/package.json index 3fd5b1b..d5c24e7 100644 --- a/package.json +++ b/package.json @@ -1,38 +1,24 @@ { - "name": "homebridge-neato", + "name": "homebridge-kobold", "version": "0.7.2", - "description": "A Neato vacuum robot plugin for homebridge.", + "description": "A Vorwerk Kobold vacuum robot plugin for homebridge.", "license": "MIT", "keywords": [ "homebridge-plugin", - "neato", - "botvac" + "vorwerk", + "kobold" ], "engines": { "node": ">=0.12.0", "homebridge": ">=0.2.0" }, "author": { - "name": "Arne Blumentritt", - "url2": "https://github.com/naofireblade" + "name": "Luis R.", + "url2": "https://github.com/himbeles" }, - "contributors": [ - { - "name": "ghulands", - "url": "https://github.com/ghulands" - }, - { - "name": "Berkay", - "url": "https://github.com/btutal" - }, - { - "name": "Antoine de Maleprade", - "url": "https://github.com/az0uz" - } - ], "repository": { "type": "git", - "url": "git://github.com/naofireblade/homebridge-neato.git" + "url": "git://github.com/himbeles/homebridge-kobold.git" }, "dependencies": { "colors": "^1.4.0",