Hello @Syrius ,
I have an iRobot Roomba j7+ and followed your configuration guide but I can’t manage to have sensor.vacuum working. Below steps, I followed and errors I’m getting:
1 - Installed all required cards
2 - My j7+ doesn’t have a home button, so I used following python script to retrieve credentials:
!/usr/bin/env python3
import random
import requests
import time
apikey = "3_rWtvxmUKwgOzu3AUPTMLnM46lj-LxURGflmu5PcE_sGptTbD-wMeshVbLvYpq01K"
data = {"apiKey": apikey,
"targetenv": "mobile",
"loginID": "<MY_LOGIN>",
"password": "<MY_PASWORD>",
"format": "json",
"targetEnv": "mobile",
}
r = requests.post("https://accounts.us1.gigya.com/accounts.login", data=data)
response = r.json()
data = {"timestamp": int(time.time()),
"nonce": "%d_%d" % (int(time.time()), random.randint(0, 2147483647)),
"oauth_token": response['sessionInfo']['sessionToken'],
"targetEnv": "mobile"}
uid = response['UID']
uidSig = response['UIDSignature']
sigTime = response['signatureTimestamp']
data = {
"app_id": "ANDROID-C7FB240E-DF34-42D7-AE4E-A8C17079A294",
"assume_robot_ownership": "0",
"gigya": {
"signature": uidSig,
"timestamp": sigTime,
"uid": uid,
}
}
r = requests.post("https://unauth2.prod.iot.irobotapi.com/v2/login", json=data)
response = r.json()
for robot in response['robots']:
print("BLID:", robot, "Password:", response['robots'][robot]['password'])
That provided me following output:
BLID: <BLID_VALUE> Password: <PASSWORD_VALUE>
3 - Created Vacuum Map Directory as required
4 - Installed, configured and startted HA Addons.
5 - Query to /api/local/info/state returns
{}
Query to /api/local/action/ gives me following error on logs:
GET /api/local/action/ 404 3.841 ms - 136
Error: Endpoint not found.
at /usr/src/app/app.js:63:13
at Layer.handle [as handle_request] (/usr/src/app/node_modules/express/lib/router/layer.js:95:5)
at trim_prefix (/usr/src/app/node_modules/express/lib/router/index.js:317:13)
at /usr/src/app/node_modules/express/lib/router/index.js:284:7
at Function.process_params (/usr/src/app/node_modules/express/lib/router/index.js:335:12)
at next (/usr/src/app/node_modules/express/lib/router/index.js:275:10)
at /usr/src/app/node_modules/express/lib/router/index.js:635:15
at next (/usr/src/app/node_modules/express/lib/router/index.js:260:14)
at Function.handle (/usr/src/app/node_modules/express/lib/router/index.js:174:3)
at router (/usr/src/app/node_modules/express/lib/router/index.js:47:12)
at Layer.handle [as handle_request] (/usr/src/app/node_modules/express/lib/router/layer.js:95:5)
at trim_prefix (/usr/src/app/node_modules/express/lib/router/index.js:317:13)
at /usr/src/app/node_modules/express/lib/router/index.js:284:7
at Function.process_params (/usr/src/app/node_modules/express/lib/router/index.js:335:12)
at next (/usr/src/app/node_modules/express/lib/router/index.js:275:10)
at /usr/src/app/node_modules/express/lib/router/index.js:635:15
at next (/usr/src/app/node_modules/express/lib/router/index.js:260:14)
at jsonParser (/usr/src/app/node_modules/body-parser/lib/types/json.js:110:7)
at Layer.handle [as handle_request] (/usr/src/app/node_modules/express/lib/router/layer.js:95:5)
at trim_prefix (/usr/src/app/node_modules/express/lib/router/index.js:317:13)
at /usr/src/app/node_modules/express/lib/router/index.js:284:7
at Function.process_params (/usr/src/app/node_modules/express/lib/router/index.js:335:12)
6 - Completed without a problem
7 - Skipped for now
8 - Completed but card shows empty because sensor.vacuum is UNKNOWN.
8 - 10 - Skipped
12 - Completed without a problem.
Now for some reason I can’t get sensor.vacuum to work. I used to have built-in integration but removed and rebooted HA after reading this post but that didn’t fix the issue.
Any assistance would be highly appreciated.
Thanks