Closed SingingFrog7 closed 4 years ago
We may move this issue to my fork of sucks, but can you try the following with my fork:
sucks --debug charge
The "issues" feature is disabled on your fork of sucks, so I don't know if we can move it there? Using debug, I figured out that Hassio (Home Assistant) which manages the Docker container as an addon, was not using the network DNS, but google's DNS so my custom redirect was not used.
Once that was fixed, I was able to use your fork of sucks (the original code returning an SSL error, which I believe is normal), but the only command the robot respond to is "charge" (But the command never finish once the robot is charging)
When I try to run "clean 10", the script seems to work, waiting for 10min for the robot to finish cleaning, but the robot does nothing.
Bumper output when receiving commands (clean 10, charge, etc) from your fork of sucks:
[2020-01-01 23:08:22,813] :: INFO :: confserver :: client with devid 1703b245b1523e6a00dbaa3d60874a56 attempting login
[2020-01-01 23:08:25,349] :: INFO :: xmppserver :: client authenticated fuid_tmpuser
Bumper output when receiving commands (auto, charge, etc) from the official app:
2020-01-01 23:21:28,644] :: INFO :: xmppserver :: client authenticated dg1rs5f944e6f28e
[2020-01-01 23:21:33,988] :: ERROR :: boterror :: Received Error from (192.168.8.104:11426 | E0000691418601590748@125.ecorobot.net/atom) - <root><iq to='dg1rs5f944e6f28e@ecouser.net/GLBe563fc4d' type='set' id='971'><query xmlns='com:ctl'><ctl id='40702592' ret='ok' errs='100'/></query></iq></root>
[2020-01-01 23:21:33,996] :: ERROR :: boterror :: Received Error from (192.168.8.104:11426 | E0000691418601590748@125.ecorobot.net/atom) - <root><iq to='dg1rs5f944e6f28e@ecouser.net/GLBe563fc4d' type='set' id='972'><query xmlns='com:ctl'><ctl id='63841692' ret='ok' errs='100'/></query></iq></root>
[2020-01-01 23:21:34,006] :: ERROR :: boterror :: Received Error from (192.168.8.104:11426 | E0000691418601590748@125.ecorobot.net/atom) - <root><iq to='dg1rs5f944e6f28e@ecouser.net/GLBe563fc4d' type='set' id='973'><query xmlns='com:ctl'><ctl id='59108773' ret='ok' errs='100'/></query></iq></root>
Debug output of your fork of sucks for "clean 10"
__main__ DEBUG will run [<__main__.CliAction object at 0xffff921ed240>, <__main__.CliAction object at 0xffff921ed2e8>]
sucks DEBUG Setting up EcoVacsAPI
sucks DEBUG calling main api user/login with (('account', 'op9CRXHVxsYeDUdvQ6lssWLChySWZbu3xTTEWIJys7o6OSXDQo1KKC/vlhn/RIBknWGcneS9H9WqUYQaXhuppVilGqKO52+DcX1h+5190uQyelZenBRcSEAuUgHIwAewenjKLO6g4MsOUlh322IymIBN+KRlTV58v8imjBThOx8='), ('password', 'Nrx6kGctWbbY4vp6kPSEut2Es7fAeOFIsmm9P6crd2uM72z/q0B6spw9aiApIF+GUj9Xm/a271X49qHu10B0bbjWUZZzDuydzvjBSs+RCuNUdc+I/9W0vJ52kj62vgZrpubxs2sTfTfNiqryfQOyxs9CDSswvhPLkblE8oyAGhE='))
urllib3.connectionpool DEBUG Starting new HTTPS connection (1): eco-ca-api.ecovacs.com:443
/usr/local/lib/python3.6/site-packages/urllib3/connectionpool.py:1004: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
InsecureRequestWarning,
urllib3.connectionpool DEBUG https://eco-ca-api.ecovacs.com:443 "GET /v1/private/ca/en/1703b245b1523e6a00dbaa3d60874a56/i_eco_e/1.3.5/c_googleplay/1/user/login?account=op9CRXHVxsYeDUdvQ6lssWLChySWZbu3xTTEWIJys7o6OSXDQo1KKC%2Fvlhn%2FRIBknWGcneS9H9WqUYQaXhuppVilGqKO52%2BDcX1h%2B5190uQyelZenBRcSEAuUgHIwAewenjKLO6g4MsOUlh322IymIBN%2BKRlTV58v8imjBThOx8%3D&password=Nrx6kGctWbbY4vp6kPSEut2Es7fAeOFIsmm9P6crd2uM72z%2Fq0B6spw9aiApIF%2BGUj9Xm%2Fa271X49qHu10B0bbjWUZZzDuydzvjBSs%2BRCuNUdc%2BI%2F9W0vJ52kj62vgZrpubxs2sTfTfNiqryfQOyxs9CDSswvhPLkblE8oyAGhE%3D&requestId=e54996034bd5b85b2901165fadfa6920&authTimespan=1577920401675&authTimeZone=GMT-8&authAppkey=eJUWrzRv34qFSaYk&authSign=1c9b43c15ba8239fc61d381024c2099a HTTP/1.1" 200 234
sucks DEBUG got {'code': '0000', 'data': {'accessToken': '02fe98212f894918bbcf536b060d55d3', 'uid': 'fuid_tmpuser', 'username': 'fusername_tmpuser', 'country': 'ca', 'email': 'null@null.com'}, 'msg': '操作成功', 'time': 1577920401862}
sucks DEBUG calling main api user/getAuthCode with (('uid', 'fuid_tmpuser'), ('accessToken', '02fe98212f894918bbcf536b060d55d3'))
urllib3.connectionpool DEBUG Starting new HTTPS connection (1): eco-ca-api.ecovacs.com:443
/usr/local/lib/python3.6/site-packages/urllib3/connectionpool.py:1004: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
InsecureRequestWarning,
urllib3.connectionpool DEBUG https://eco-ca-api.ecovacs.com:443 "GET /v1/private/ca/en/1703b245b1523e6a00dbaa3d60874a56/i_eco_e/1.3.5/c_googleplay/1/user/getAuthCode?uid=fuid_tmpuser&accessToken=02fe98212f894918bbcf536b060d55d3&requestId=6997ff90251c35e73c13d780dea69a56&authTimespan=1577920401878&authTimeZone=GMT-8&authAppkey=eJUWrzRv34qFSaYk&authSign=7e4066d6cf44f678580ff065481e3b61 HTTP/1.1" 200 165
sucks DEBUG got {'code': '0000', 'data': {'authCode': 'ca_5fd578dc9ff0496da799d090835a8d81', 'ecovacsUid': 'fuid_tmpuser'}, 'msg': '操作成功', 'time': 1577920401988}
sucks DEBUG calling portal api users/user.do function loginByItToken with {'todo': 'loginByItToken', 'country': 'CA', 'resource': '1703b245', 'realm': 'ecouser.net', 'userId': 'fuid_tmpuser', 'token': 'ca_5fd578dc9ff0496da799d090835a8d81'}
urllib3.connectionpool DEBUG Starting new HTTPS connection (1): portal-na.ecouser.net:443
/usr/local/lib/python3.6/site-packages/urllib3/connectionpool.py:1004: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
InsecureRequestWarning,
urllib3.connectionpool DEBUG https://portal-na.ecouser.net:443 "POST /api/users/user.do HTTP/1.1" 200 132
sucks DEBUG got {'resource': '1703b245', 'result': 'ok', 'todo': 'result', 'token': 'ca_5fd578dc9ff0496da799d090835a8d81', 'userId': 'fuid_tmpuser'}
root DEBUG EcoVacsAPI connection complete
sucks DEBUG calling portal api users/user.do function GetDeviceList with {'todo': 'GetDeviceList', 'userid': 'fuid_tmpuser', 'auth': {'with': 'users', 'userid': 'fuid_tmpuser', 'realm': 'ecouser.net', 'token': 'ca_5fd578dc9ff0496da799d090835a8d81', 'resource': '1703b245'}}
urllib3.connectionpool DEBUG Starting new HTTPS connection (1): portal-na.ecouser.net:443
/usr/local/lib/python3.6/site-packages/urllib3/connectionpool.py:1004: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
InsecureRequestWarning,
urllib3.connectionpool DEBUG https://portal-na.ecouser.net:443 "POST /api/users/user.do HTTP/1.1" 200 236
sucks DEBUG got {'devices': [{'class': '125', 'company': 'eco-legacy', 'did': 'E0000691418601590748', 'name': 'E0000691418601590748', 'nick': '', 'resource': 'atom', 'mqtt_connection': False, 'xmpp_connection': True}], 'result': 'ok', 'todo': 'result'}
sleekxmppfs.plugins.base DEBUG Loaded Plugin: RFC 6120: Stream Feature: STARTTLS
sleekxmppfs.plugins.base DEBUG Loaded Plugin: RFC 6120: Stream Feature: Resource Binding
sleekxmppfs.plugins.base DEBUG Loaded Plugin: RFC 3920: Stream Feature: Start Session
sleekxmppfs.plugins.base DEBUG Loaded Plugin: RFC 6121: Stream Feature: Roster Versioning
sleekxmppfs.plugins.base DEBUG Loaded Plugin: RFC 6121: Stream Feature: Subscription Pre-Approval
sleekxmppfs.plugins.base DEBUG Loaded Plugin: RFC 6120: Stream Feature: SASL
sleekxmppfs.basexmpp WARNING fulljid property deprecated. Use boundjid.resource
sleekxmppfs.xmlstream.xmlstream DEBUG Waiting 2.262017250448273 seconds before connecting.
sleekxmppfs.xmlstream.resolver DEBUG DNS: Querying msg-na.ecouser.net for AAAA records.
sleekxmppfs.xmlstream.resolver DEBUG DNS: No AAAA records for msg-na.ecouser.net
sleekxmppfs.xmlstream.resolver DEBUG DNS: Querying msg-na.ecouser.net for A records.
sleekxmppfs.xmlstream.xmlstream DEBUG Connecting to 192.168.0.198:5223
sleekxmppfs.xmlstream.xmlstream DEBUG Event triggered: connected
sleekxmppfs.thirdparty.statemachine DEBUG ==== TRANSITION disconnected -> connected
sleekxmppfs.xmlstream.xmlstream DEBUG Starting HANDLER THREAD
sleekxmppfs.xmlstream.xmlstream DEBUG Loading event runner
sleekxmppfs.xmlstream.xmlstream DEBUG SEND (IMMED): <stream:stream to='ecouser.net' xmlns:stream='http://etherx.jabber.org/streams' xmlns='jabber:client' xml:lang='en' version='1.0'>
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <stream:stream version="1.0" id="1" from="ecouser.net">
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <stream:features xmlns="http://etherx.jabber.org/streams"><starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"><required /></starttls><mechanisms xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><mechanism>PLAIN</mechanism></mechanisms></stream:features>
sleekxmppfs.xmlstream.xmlstream DEBUG SEND (IMMED): <starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"><required /></starttls>
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <proceed xmlns="urn:ietf:params:xml:ns:xmpp-tls" />
sleekxmppfs.features.feature_starttls.starttls DEBUG Starting TLS
sleekxmppfs.xmlstream.xmlstream INFO Negotiating TLS
sleekxmppfs.xmlstream.xmlstream INFO Using SSL version: TLSv1
sleekxmppfs.xmlstream.xmlstream DEBUG CERT: -----BEGIN CERTIFICATE-----
MIID6zCCAtOgAwIBAgICBnowDQYJKoZIhvcNAQELBQAwJTEPMA0GA1UEChMGQnVt
cGVyMRIwEAYDVQQDEwlCdW1wZXIgQ0EwHhcNMjAwMTAxMDgxMjQzWhcNMjIwMTAx
MDgxMjQzWjApMQ8wDQYDVQQKEwZCdW1wZXIxFjAUBgNVBAMTDUJ1bXBlciBTZXJ2
ZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCwVePwVwlEDBiHbQFS
YZ/oDUJzF3+htGL0Ufj7FvuAArjYmukmPR1AFV1abh6cDKFtVU1PN71jxQio7v6l
E38kNkJp8DvvPECT506L/p5QxnnXmEyvYM7WruRwvSTt30nXP3actjDdf1UjIJgz
4Tlcz1yPMnHRuIA1JwSy78GXTnX+RRbhg/qwl+AFikaWlIH+3DcxEum+7NuDt197
Kr758QdQzOWxBH285hyLVsW4qHGEQFUawNJTNFg8xCReCYta+Xs1c5Hb8AATYEU4
/5L2fk6TQXVqThj/tMEmFv7WUqKH9QrX9zk7P2th/FwLSGgIhkiqRlYKBV/lNTpd
/sXpAgMBAAGjggEfMIIBGzAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYB
BQUHAwIGCCsGAQUFBwMBMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFPyIU6wXPITo
wso34b9ohnQ6xTPMMB8GA1UdIwQYMBaAFMJSmSc+gl5/RRghkuO8r70L5eoaMIGb
BgNVHREEgZMwgZCCHWxvY2FsLWJ1bXBlci11Yi5sb2NhbC5oYXNzLmlvgglsb2Nh
bGhvc3SCC2Vjb3ZhY3MuY29tgg0qLmVjb3ZhY3MuY29tggtlY291c2VyLm5ldIIN
Ki5lY291c2VyLm5ldIILZWNvdmFjcy5uZXSCDSouZWNvdmFjcy5uZXSHBH8AAAGH
BKweIQaHBH8AAAEwDQYJKoZIhvcNAQELBQADggEBAJYP5D4mqMzyRFCWjuvsIqcJ
vEHnQdEkUIUkj3Yx6grWsVQBMWjWChpx5w6ony++Q2jhHJFsfiFQaC/P05jOLjZz
JJ+xE76IgCTHFxTZ/zIkYFM2xoQuJi+45+vbLkagaNSFW5RfnOHxqW+GjfctOFT5
9Z1LF5p4+0kPU82lmaW4udMwLYR8blszgScjL3q3xYv0+kIlOGeNe7b9unGx9tcn
YIH430/GOfMYwlAn68NygYZxJ0qJDJSohOUA9gBVuQNQjAFLylS3Ks85liUDvQJo
XaK053Ijr8LzVi6f8lwkoFuEg+XHaC5nCIf6Pl2jkVOfYufL9shDjZBQBmHBHr0=
-----END CERTIFICATE-----
sleekxmppfs.xmlstream.xmlstream DEBUG Event triggered: ssl_cert
sleekxmppfs.xmlstream.xmlstream DEBUG SEND (IMMED): <stream:stream to='ecouser.net' xmlns:stream='http://etherx.jabber.org/streams' xmlns='jabber:client' xml:lang='en' version='1.0'>
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <stream:stream version="1.0" id="1" from="ecouser.net">
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <stream:features xmlns="http://etherx.jabber.org/streams"><mechanisms xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><mechanism>PLAIN</mechanism></mechanisms></stream:features>
sleekxmppfs.xmlstream.xmlstream DEBUG SEND (IMMED): <auth xmlns="urn:ietf:params:xml:ns:xmpp-sasl" mechanism="PLAIN">ZnVpZF90bXB1c2VyAGZ1aWRfdG1wdXNlcgAwLzE3MDNiMjQ1L2NhXzVmZDU3OGRjOWZmMDQ5NmRhNzk5ZDA5MDgzNWE4ZDgx</auth>
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <success xmlns="urn:ietf:params:xml:ns:xmpp-sasl" />
sleekxmppfs.xmlstream.xmlstream DEBUG Event triggered: auth_success
sleekxmppfs.xmlstream.xmlstream DEBUG SEND (IMMED): <stream:stream to='ecouser.net' xmlns:stream='http://etherx.jabber.org/streams' xmlns='jabber:client' xml:lang='en' version='1.0'>
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <stream:stream version="1.0" id="1" from="ecouser.net">
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <stream:features xmlns="http://etherx.jabber.org/streams"><bind xmlns="urn:ietf:params:xml:ns:xmpp-bind" /><session xmlns="urn:ietf:params:xml:ns:xmpp-session" /></stream:features>
sleekxmppfs.features.feature_bind.bind DEBUG Requesting resource: 1703b245
sleekxmppfs.xmlstream.xmlstream DEBUG SEND (IMMED): <iq id="8d0966b8-4246-4697-b253-e72ae4b9380a-1" type="set"><bind xmlns="urn:ietf:params:xml:ns:xmpp-bind"><resource>1703b245</resource></bind></iq>
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <iq type="result" id="8d0966b8-4246-4697-b253-e72ae4b9380a-1"><bind xmlns="urn:ietf:params:xml:ns:xmpp-bind"><jid>fuid_tmpuser@ecouser.net/1703b245</jid></bind></iq>
sleekxmppfs.xmlstream.xmlstream DEBUG Event triggered: session_bind
sleekxmppfs.features.feature_bind.bind INFO JID set to: fuid_tmpuser@ecouser.net/1703b245
sleekxmppfs.xmlstream.xmlstream DEBUG SEND (IMMED): <iq id="8d0966b8-4246-4697-b253-e72ae4b9380a-2" type="set"><session xmlns="urn:ietf:params:xml:ns:xmpp-session" /></iq>
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <iq type="result" id="8d0966b8-4246-4697-b253-e72ae4b9380a-2" />
sleekxmppfs.features.feature_session.session DEBUG Established Session
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <iq from="ecouser.net" to="fuid_tmpuser@ecouser.net/1703b245" id="s2c1" type="get"><ping xmlns="urn:xmpp:ping" /></iq>
sleekxmppfs.xmlstream.xmlstream DEBUG Event triggered: session_start
sleekxmppfs.xmlstream.xmlstream DEBUG SEND: <iq to="ecouser.net" id="s2c1" type="error"><error type="cancel"><feature-not-implemented xmlns="urn:ietf:params:xml:ns:xmpp-stanzas" /><text xmlns="urn:ietf:params:xml:ns:xmpp-stanzas">No handlers registered for this request.</text></error></iq>
sleekxmppfs.clientxmpp DEBUG Finished processing stream features.
sleekxmppfs.xmlstream.xmlstream DEBUG Event triggered: stream_negotiated
sucks DEBUG ----------------- starting session ----------------
sucks DEBUG event = {}
performing clean command
sucks DEBUG Sending command <iq id="8d0966b8-4246-4697-b253-e72ae4b9380a-3" to="E0000691418601590748@125.ecorobot.net/atom" from="fuid_tmpuser@ecouser.net/1703b245" type="set"><query xmlns="com:ctl"><ctl td="Clean" id="2154181941"><clean type="auto" speed="standard" act="s" /></ctl></query></iq>
sleekxmppfs.xmlstream.xmlstream DEBUG SEND: <iq id="8d0966b8-4246-4697-b253-e72ae4b9380a-3" to="E0000691418601590748@125.ecorobot.net/atom" from="fuid_tmpuser@ecouser.net/1703b245" type="set"><query xmlns="com:ctl"><ctl td="Clean" id="2154181941"><clean type="auto" speed="standard" act="s" /></ctl></query></iq>
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <iq from="E0000691418601590748@125.ecorobot.net/atom" id="8d0966b8-4246-4697-b253-e72ae4b9380a-3" to="fuid_tmpuser@ecouser.net/1703b245" type="result" />
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <iq from="E0000691418601590748@125.ecorobot.net/atom" id="953" to="fuid_tmpuser@ecouser.net/1703b245" type="set"><query xmlns="com:ctl"><ctl admin="dg1rs5f944e6f28e@ecouser.net" errno="103" id="2154181941" ret="fail" /></query></iq>
waiting for 600.0s
Debug output of your fork of sucks for "charge" (which is executed, but the script wait even after the robot is on charge):
__main__ DEBUG will run [<__main__.CliAction object at 0xffff916fc1d0>]
sucks DEBUG Setting up EcoVacsAPI
sucks DEBUG calling main api user/login with (('account', 'kgoWgY29l1jwE4jM3L2gHBhxdpbLOlgPBCqVNK2zsWepbRFEQ5xa5YaLdDxYC18VwYvn9VA0zetwj7rSCLC9jqYWpbWlwof7bQ64n1B8RpqfDxZbsS0FwwZm4OP3cdaTd/RoqsEUHMyxDHiV82le/rtKJfdN4yVZrdDfQ9mwgc8='), ('password', 's/o4/0NF0NXChu0TWXWNcHa5vCT0Iw68jb5qmTPpG7Px+pFMwTR3gWLGYBQ1x4ypXn5RTx8EdC4aFoR7mKIMN7ogbNibBcC9a4hVFY4S2UDkQWv3pEfSFudWVn1hjQUWACnbDulVYWlbDjYb1aLU3lnH1Yx/L4Or5NeJkRbGAqA='))
urllib3.connectionpool DEBUG Starting new HTTPS connection (1): eco-ca-api.ecovacs.com:443
/usr/local/lib/python3.6/site-packages/urllib3/connectionpool.py:1004: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
InsecureRequestWarning,
urllib3.connectionpool DEBUG https://eco-ca-api.ecovacs.com:443 "GET /v1/private/ca/en/1703b245b1523e6a00dbaa3d60874a56/i_eco_e/1.3.5/c_googleplay/1/user/login?account=kgoWgY29l1jwE4jM3L2gHBhxdpbLOlgPBCqVNK2zsWepbRFEQ5xa5YaLdDxYC18VwYvn9VA0zetwj7rSCLC9jqYWpbWlwof7bQ64n1B8RpqfDxZbsS0FwwZm4OP3cdaTd%2FRoqsEUHMyxDHiV82le%2FrtKJfdN4yVZrdDfQ9mwgc8%3D&password=s%2Fo4%2F0NF0NXChu0TWXWNcHa5vCT0Iw68jb5qmTPpG7Px%2BpFMwTR3gWLGYBQ1x4ypXn5RTx8EdC4aFoR7mKIMN7ogbNibBcC9a4hVFY4S2UDkQWv3pEfSFudWVn1hjQUWACnbDulVYWlbDjYb1aLU3lnH1Yx%2FL4Or5NeJkRbGAqA%3D&requestId=acb77f35452627a20060dfd14545fb23&authTimespan=1577920601904&authTimeZone=GMT-8&authAppkey=eJUWrzRv34qFSaYk&authSign=2a41de0557e8ab814a8ded51a89d71a6 HTTP/1.1" 200 234
sucks DEBUG got {'code': '0000', 'data': {'accessToken': '34cf687933664e0aaca507a92d5aac47', 'uid': 'fuid_tmpuser', 'username': 'fusername_tmpuser', 'country': 'ca', 'email': 'null@null.com'}, 'msg': '操作成功', 'time': 1577920602088}
sucks DEBUG calling main api user/getAuthCode with (('uid', 'fuid_tmpuser'), ('accessToken', '34cf687933664e0aaca507a92d5aac47'))
urllib3.connectionpool DEBUG Starting new HTTPS connection (1): eco-ca-api.ecovacs.com:443
/usr/local/lib/python3.6/site-packages/urllib3/connectionpool.py:1004: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
InsecureRequestWarning,
urllib3.connectionpool DEBUG https://eco-ca-api.ecovacs.com:443 "GET /v1/private/ca/en/1703b245b1523e6a00dbaa3d60874a56/i_eco_e/1.3.5/c_googleplay/1/user/getAuthCode?uid=fuid_tmpuser&accessToken=34cf687933664e0aaca507a92d5aac47&requestId=e91a0523f7a572d631687a9c7cb882d8&authTimespan=1577920602105&authTimeZone=GMT-8&authAppkey=eJUWrzRv34qFSaYk&authSign=61c865e85085dbec4e991d002eba2460 HTTP/1.1" 200 165
sucks DEBUG got {'code': '0000', 'data': {'authCode': 'ca_93ffcda8db65474ea84473b64c4a8717', 'ecovacsUid': 'fuid_tmpuser'}, 'msg': '操作成功', 'time': 1577920602217}
sucks DEBUG calling portal api users/user.do function loginByItToken with {'todo': 'loginByItToken', 'country': 'CA', 'resource': '1703b245', 'realm': 'ecouser.net', 'userId': 'fuid_tmpuser', 'token': 'ca_93ffcda8db65474ea84473b64c4a8717'}
urllib3.connectionpool DEBUG Starting new HTTPS connection (1): portal-na.ecouser.net:443
/usr/local/lib/python3.6/site-packages/urllib3/connectionpool.py:1004: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
InsecureRequestWarning,
urllib3.connectionpool DEBUG https://portal-na.ecouser.net:443 "POST /api/users/user.do HTTP/1.1" 200 132
sucks DEBUG got {'resource': '1703b245', 'result': 'ok', 'todo': 'result', 'token': 'ca_93ffcda8db65474ea84473b64c4a8717', 'userId': 'fuid_tmpuser'}
root DEBUG EcoVacsAPI connection complete
sucks DEBUG calling portal api users/user.do function GetDeviceList with {'todo': 'GetDeviceList', 'userid': 'fuid_tmpuser', 'auth': {'with': 'users', 'userid': 'fuid_tmpuser', 'realm': 'ecouser.net', 'token': 'ca_93ffcda8db65474ea84473b64c4a8717', 'resource': '1703b245'}}
urllib3.connectionpool DEBUG Starting new HTTPS connection (1): portal-na.ecouser.net:443
/usr/local/lib/python3.6/site-packages/urllib3/connectionpool.py:1004: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
InsecureRequestWarning,
urllib3.connectionpool DEBUG https://portal-na.ecouser.net:443 "POST /api/users/user.do HTTP/1.1" 200 236
sucks DEBUG got {'devices': [{'class': '125', 'company': 'eco-legacy', 'did': 'E0000691418601590748', 'name': 'E0000691418601590748', 'nick': '', 'resource': 'atom', 'mqtt_connection': False, 'xmpp_connection': True}], 'result': 'ok', 'todo': 'result'}
sleekxmppfs.plugins.base DEBUG Loaded Plugin: RFC 6120: Stream Feature: STARTTLS
sleekxmppfs.plugins.base DEBUG Loaded Plugin: RFC 6120: Stream Feature: Resource Binding
sleekxmppfs.plugins.base DEBUG Loaded Plugin: RFC 3920: Stream Feature: Start Session
sleekxmppfs.plugins.base DEBUG Loaded Plugin: RFC 6121: Stream Feature: Roster Versioning
sleekxmppfs.plugins.base DEBUG Loaded Plugin: RFC 6121: Stream Feature: Subscription Pre-Approval
sleekxmppfs.plugins.base DEBUG Loaded Plugin: RFC 6120: Stream Feature: SASL
sleekxmppfs.basexmpp WARNING fulljid property deprecated. Use boundjid.resource
sleekxmppfs.xmlstream.xmlstream DEBUG Waiting 2.099893605723135 seconds before connecting.
sleekxmppfs.xmlstream.resolver DEBUG DNS: Querying msg-na.ecouser.net for AAAA records.
sleekxmppfs.xmlstream.resolver DEBUG DNS: No AAAA records for msg-na.ecouser.net
sleekxmppfs.xmlstream.resolver DEBUG DNS: Querying msg-na.ecouser.net for A records.
sleekxmppfs.xmlstream.xmlstream DEBUG Connecting to 192.168.0.198:5223
sleekxmppfs.xmlstream.xmlstream DEBUG Event triggered: connected
sleekxmppfs.thirdparty.statemachine DEBUG ==== TRANSITION disconnected -> connected
sleekxmppfs.xmlstream.xmlstream DEBUG Starting HANDLER THREAD
sleekxmppfs.xmlstream.xmlstream DEBUG Loading event runner
sleekxmppfs.xmlstream.xmlstream DEBUG SEND (IMMED): <stream:stream to='ecouser.net' xmlns:stream='http://etherx.jabber.org/streams' xmlns='jabber:client' xml:lang='en' version='1.0'>
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <stream:stream version="1.0" id="1" from="ecouser.net">
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <stream:features xmlns="http://etherx.jabber.org/streams"><starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"><required /></starttls><mechanisms xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><mechanism>PLAIN</mechanism></mechanisms></stream:features>
sleekxmppfs.xmlstream.xmlstream DEBUG SEND (IMMED): <starttls xmlns="urn:ietf:params:xml:ns:xmpp-tls"><required /></starttls>
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <proceed xmlns="urn:ietf:params:xml:ns:xmpp-tls" />
sleekxmppfs.features.feature_starttls.starttls DEBUG Starting TLS
sleekxmppfs.xmlstream.xmlstream INFO Negotiating TLS
sleekxmppfs.xmlstream.xmlstream INFO Using SSL version: TLSv1
sleekxmppfs.xmlstream.xmlstream DEBUG CERT: -----BEGIN CERTIFICATE-----
MIID6zCCAtOgAwIBAgICBnowDQYJKoZIhvcNAQELBQAwJTEPMA0GA1UEChMGQnVt
cGVyMRIwEAYDVQQDEwlCdW1wZXIgQ0EwHhcNMjAwMTAxMDgxMjQzWhcNMjIwMTAx
MDgxMjQzWjApMQ8wDQYDVQQKEwZCdW1wZXIxFjAUBgNVBAMTDUJ1bXBlciBTZXJ2
ZXIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCwVePwVwlEDBiHbQFS
YZ/oDUJzF3+htGL0Ufj7FvuAArjYmukmPR1AFV1abh6cDKFtVU1PN71jxQio7v6l
E38kNkJp8DvvPECT506L/p5QxnnXmEyvYM7WruRwvSTt30nXP3actjDdf1UjIJgz
4Tlcz1yPMnHRuIA1JwSy78GXTnX+RRbhg/qwl+AFikaWlIH+3DcxEum+7NuDt197
Kr758QdQzOWxBH285hyLVsW4qHGEQFUawNJTNFg8xCReCYta+Xs1c5Hb8AATYEU4
/5L2fk6TQXVqThj/tMEmFv7WUqKH9QrX9zk7P2th/FwLSGgIhkiqRlYKBV/lNTpd
/sXpAgMBAAGjggEfMIIBGzAOBgNVHQ8BAf8EBAMCBaAwHQYDVR0lBBYwFAYIKwYB
BQUHAwIGCCsGAQUFBwMBMAwGA1UdEwEB/wQCMAAwHQYDVR0OBBYEFPyIU6wXPITo
wso34b9ohnQ6xTPMMB8GA1UdIwQYMBaAFMJSmSc+gl5/RRghkuO8r70L5eoaMIGb
BgNVHREEgZMwgZCCHWxvY2FsLWJ1bXBlci11Yi5sb2NhbC5oYXNzLmlvgglsb2Nh
bGhvc3SCC2Vjb3ZhY3MuY29tgg0qLmVjb3ZhY3MuY29tggtlY291c2VyLm5ldIIN
Ki5lY291c2VyLm5ldIILZWNvdmFjcy5uZXSCDSouZWNvdmFjcy5uZXSHBH8AAAGH
BKweIQaHBH8AAAEwDQYJKoZIhvcNAQELBQADggEBAJYP5D4mqMzyRFCWjuvsIqcJ
vEHnQdEkUIUkj3Yx6grWsVQBMWjWChpx5w6ony++Q2jhHJFsfiFQaC/P05jOLjZz
JJ+xE76IgCTHFxTZ/zIkYFM2xoQuJi+45+vbLkagaNSFW5RfnOHxqW+GjfctOFT5
9Z1LF5p4+0kPU82lmaW4udMwLYR8blszgScjL3q3xYv0+kIlOGeNe7b9unGx9tcn
YIH430/GOfMYwlAn68NygYZxJ0qJDJSohOUA9gBVuQNQjAFLylS3Ks85liUDvQJo
XaK053Ijr8LzVi6f8lwkoFuEg+XHaC5nCIf6Pl2jkVOfYufL9shDjZBQBmHBHr0=
-----END CERTIFICATE-----
sleekxmppfs.xmlstream.xmlstream DEBUG Event triggered: ssl_cert
sleekxmppfs.xmlstream.xmlstream DEBUG SEND (IMMED): <stream:stream to='ecouser.net' xmlns:stream='http://etherx.jabber.org/streams' xmlns='jabber:client' xml:lang='en' version='1.0'>
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <stream:stream version="1.0" id="1" from="ecouser.net">
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <stream:features xmlns="http://etherx.jabber.org/streams"><mechanisms xmlns="urn:ietf:params:xml:ns:xmpp-sasl"><mechanism>PLAIN</mechanism></mechanisms></stream:features>
sleekxmppfs.xmlstream.xmlstream DEBUG SEND (IMMED): <auth xmlns="urn:ietf:params:xml:ns:xmpp-sasl" mechanism="PLAIN">ZnVpZF90bXB1c2VyAGZ1aWRfdG1wdXNlcgAwLzE3MDNiMjQ1L2NhXzkzZmZjZGE4ZGI2NTQ3NGVhODQ0NzNiNjRjNGE4NzE3</auth>
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <success xmlns="urn:ietf:params:xml:ns:xmpp-sasl" />
sleekxmppfs.xmlstream.xmlstream DEBUG Event triggered: auth_success
sleekxmppfs.xmlstream.xmlstream DEBUG SEND (IMMED): <stream:stream to='ecouser.net' xmlns:stream='http://etherx.jabber.org/streams' xmlns='jabber:client' xml:lang='en' version='1.0'>
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <stream:stream version="1.0" id="1" from="ecouser.net">
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <stream:features xmlns="http://etherx.jabber.org/streams"><bind xmlns="urn:ietf:params:xml:ns:xmpp-bind" /><session xmlns="urn:ietf:params:xml:ns:xmpp-session" /></stream:features>
sleekxmppfs.features.feature_bind.bind DEBUG Requesting resource: 1703b245
sleekxmppfs.xmlstream.xmlstream DEBUG SEND (IMMED): <iq id="8221be1e-847b-45ad-a70a-cdd7a9af1245-1" type="set"><bind xmlns="urn:ietf:params:xml:ns:xmpp-bind"><resource>1703b245</resource></bind></iq>
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <iq type="result" id="8221be1e-847b-45ad-a70a-cdd7a9af1245-1"><bind xmlns="urn:ietf:params:xml:ns:xmpp-bind"><jid>fuid_tmpuser@ecouser.net/1703b245</jid></bind></iq>
sleekxmppfs.xmlstream.xmlstream DEBUG Event triggered: session_bind
sleekxmppfs.features.feature_bind.bind INFO JID set to: fuid_tmpuser@ecouser.net/1703b245
sleekxmppfs.xmlstream.xmlstream DEBUG SEND (IMMED): <iq id="8221be1e-847b-45ad-a70a-cdd7a9af1245-2" type="set"><session xmlns="urn:ietf:params:xml:ns:xmpp-session" /></iq>
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <iq type="result" id="8221be1e-847b-45ad-a70a-cdd7a9af1245-2" />
sleekxmppfs.features.feature_session.session DEBUG Established Session
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <iq from="ecouser.net" to="fuid_tmpuser@ecouser.net/1703b245" id="s2c1" type="get"><ping xmlns="urn:xmpp:ping" /></iq>
sleekxmppfs.xmlstream.xmlstream DEBUG Event triggered: session_start
sleekxmppfs.xmlstream.xmlstream DEBUG SEND: <iq to="ecouser.net" id="s2c1" type="error"><error type="cancel"><feature-not-implemented xmlns="urn:ietf:params:xml:ns:xmpp-stanzas" /><text xmlns="urn:ietf:params:xml:ns:xmpp-stanzas">No handlers registered for this request.</text></error></iq>
sleekxmppfs.clientxmpp DEBUG Finished processing stream features.
sleekxmppfs.xmlstream.xmlstream DEBUG Event triggered: stream_negotiated
sucks DEBUG ----------------- starting session ----------------
sucks DEBUG event = {}
performing charge command
sucks DEBUG Sending command <iq id="8221be1e-847b-45ad-a70a-cdd7a9af1245-3" to="E0000691418601590748@125.ecorobot.net/atom" from="fuid_tmpuser@ecouser.net/1703b245" type="set"><query xmlns="com:ctl"><ctl td="Charge" id="320149927"><charge type="go" /></ctl></query></iq>
sleekxmppfs.xmlstream.xmlstream DEBUG SEND: <iq id="8221be1e-847b-45ad-a70a-cdd7a9af1245-3" to="E0000691418601590748@125.ecorobot.net/atom" from="fuid_tmpuser@ecouser.net/1703b245" type="set"><query xmlns="com:ctl"><ctl td="Charge" id="320149927"><charge type="go" /></ctl></query></iq>
sleekxmppfs.xmlstream.xmlstream DEBUG RECV: <iq from="E0000691418601590748@125.ecorobot.net/atom" id="8221be1e-847b-45ad-a70a-cdd7a9af1245-3" to="fuid_tmpuser@ecouser.net/1703b245" type="result" />
__main__ DEBUG waiting on charge_status for value charging
Thanks for your time and fast reply :)
@joe540 - I have a guess that your bot may be complaining of permission issues, but the fuid_ user provided by Bumper wasn't being added properly. Funny enough I just ran into this on my Ozmo601 (#85), which uses XMPP and in theory should be similar to your M80.
I just fixed this with PR #86 - Can you pull the latest Bumper and try again?
Hi,
it works now! I still see errors from the robot in bumper's log but all commands works from both sucks (your fork) and the android app! (Also, the charge command exit correctly at the right time)
Thanks again for your fast and effective support and for your nice work!
Describe the bug I'm able to control my M80 Pro using the Ecovacs Home app but not using sucks (0.9.4). I tried with multiple sucks version, verified DNS redirect, etc. As everything is working from the Android app, I'm expecting sucks to be able to control it too
P.S.: I also tried with your fork of sucks with the same result
P.P.S.: There's no output from bumper when receiving the commands. When commands are sent from the Ecovacs Android App, this message appear (but command is executed by the deebot) [2020-01-01 08:44:24,447] :: ERROR :: boterror :: Received Error from (192.168.8.104:11426 | E0000691418601590748@125.ecorobot.net/atom) -
Thanks for your precious time
To Reproduce
sucks output
Expected behavior Deebot should execute the command
Screenshots If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):
Smartphone (please complete the following information):
Vacuum (please complete the following information):
Additional context Add any other context about the problem here.