DeebotUniverse / Deebot-4-Home-Assistant

Home Assistant integration for deebot vacuums
https://deebot.readthedocs.io/integrations/home-assistant/
GNU General Public License v3.0
179 stars 40 forks source link

No devices shown during install #144

Closed 21Development closed 2 years ago

21Development commented 2 years ago

Checks

The problem

After installing via HACS, I choose add integration, input my username (email) and password, and I am shown a page which says “devices” but no devices are listed. Clicking Submit returns a message saying “please select at least 1 robot”

Note: When I adding the device to Alexa, I did notice that the first device was shown as “-“ and I had to click a box to see my vacuum in a drop down list (it was a bit unusual as if like a list box but without the scroll bars)

On which deebot vacuum you have the issue?

Deebot N79s

Which version of the Deebot component are you using?

1.2.0

Which version of Home Assistant are you using?

2022.3.5

What type of installation are you running?

Home Assistant Supervised

Country

UK

Continent

WW or EU

Instance type

Cloud

Anything in the logs that might be useful for us?

No response

Additional information

No response

21Development commented 2 years ago

If I use the following in configuration.yaml I can view a robot:

ecovacs: username: my@email password: my@pass country: UK continent: WW

edenhaus commented 2 years ago

Configuration via yaml is not supported and strange that you see there a device.

Please enable debug logs and paste it here, but probably this component is not supporting your model. Only devices newer than 950 are supported

21Development commented 2 years ago

Sorry, I added the wrong model above (now corrected to N79S which I thought showed as supported here https://deebot.readthedocs.io/home/models/ but re-reading it seems the home assistant deebot-client doesnt support the N79 but the js version does) (Note: for anyone reading this, the ecovacs: platform does work with the N79S)

edit: here's the debug log


2022-03-28 15:55:50 DEBUG (MainThread) [deebot_client.authentication] Start login to EcovacsAPI
2022-03-28 15:55:50 DEBUG (MainThread) [deebot_client.authentication] calling login api
2022-03-28 15:55:50 DEBUG (MainThread) [deebot_client.authentication] got {'code': '0000', 'msg': '操作成功', 'time': 1648479350656, 'data': {'uid': '[REMOVED]', 'accessToken': '[REMOVED]', 'userName': '[REMOVED]', 'email': '[REMOVED]', 'mobile': '[REMOVED]', 'isNew': None, 'loginName': '[REMOVED]', 'ucUid': '[REMOVED]'}, 'success': True}
2022-03-28 15:55:50 DEBUG (MainThread) [deebot_client.authentication] calling auth api
2022-03-28 15:55:51 DEBUG (MainThread) [deebot_client.authentication] got {'code': '0000', 'msg': '操作成功', 'time': 1648479351032, 'data': {'authCode': '[REMOVED]', 'ecovacsUid': '[REMOVED]'}, 'success': True}
2022-03-28 15:55:51 DEBUG (MainThread) [deebot_client._api_client] calling api users/user.do with {'edition': 'ECOGLOBLE', 'userId': '[REMOVED]', 'token': '[REMOVED]', 'realm': 'ecouser.net', 'resource': 'EDKRNDB9', 'org': 'ECOWW', 'last': '', 'country': 'UK', 'todo': 'loginByItToken'}
2022-03-28 15:55:51 DEBUG (MainThread) [deebot_client._api_client] got {'todo': 'result', 'result': 'ok', 'userId': '[REMOVED]', 'resource': 'EDKRNDB9', 'token': '[REMOVED]', 'last': 604800000}
2022-03-28 15:55:51 DEBUG (MainThread) [deebot_client.authentication] Switching to shorter UID
2022-03-28 15:55:51 DEBUG (MainThread) [deebot_client.authentication] Login to EcovacsAPI successfully
2022-03-28 15:55:51 DEBUG (MainThread) [deebot_client._api_client] calling api appsvr/app.do with {'userid': '[REMOVED]', 'todo': 'GetGlobalDeviceList'}
2022-03-28 15:55:51 DEBUG (MainThread) [deebot_client._api_client] got {'code': 0, 'todo': 'result', 'ret': 'ok', 'devices': [{'did': '[REMOVED]', 'name': '[REMOVED]', 'class': '155', 'resource': 'atom', 'nick': None, 'company': 'eco-legacy', 'deviceName': 'DEEBOT N79S/SE', 'icon': 'https://portal-ww.ecouser.net/api/pim/file/get/[REMOVED]', 'ota': False, 'UILogicId': 'ECO_INTL_155', 'materialNo': '702-0000-0164', 'pid': '[REMOVED]', 'product_category': 'DEEBOT', 'model': 'DN622', 'updateInfo': {'needUpdate': False, 'changeLog': ''}, 'status': 2}]}
2022-03-28 15:55:51 DEBUG (MainThread) [deebot_client.api_client] Skipping device as it is not supported: {'did': '[REMOVED]', 'name': '[REMOVED]', 'class': '155', 'resource': 'atom', 'nick': None, 'company': 'eco-legacy', 'deviceName': 'DEEBOT N79S/SE', 'icon': 'https://portal-ww.ecouser.net/api/pim/file/get/code', 'ota': False, 'UILogicId': 'ECO_INTL_155', 'materialNo': '702-0000-0164', 'pid': '[REMOVED]', 'product_category': 'DEEBOT', 'model': 'DN622', 'updateInfo': {'needUpdate': False, 'changeLog': ''}, 'status': 2}```
edenhaus commented 2 years ago

re-reading it seems the home assistant deebot-client doesnt support the N79 but the js version does) (Note: for anyone reading this, the ecovacs: platform does work with the N79S)

Correct, this component is not supporting it. HA is written in python and uses also the python client. Js library can more, but unfortunately I don't have a bot, which uses the old protocol and therefore I cannot add support for them