eufy-security-client 1.6.2 → 1.6.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -21
- package/README.md +7 -1
- package/build/mqtt/mqtt-eufy.crt +79 -79
- package/build/mqtt/proto/lock.proto +32 -32
- package/build/mqtt/service.d.ts +4 -0
- package/build/mqtt/service.js +12 -6
- package/build/mqtt/service.js.map +1 -1
- package/build/push/proto/checkin.proto +266 -266
- package/build/push/proto/mcs.proto +328 -328
- package/package.json +1 -1
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) 2022 bropat <patrick.broetto@gmail.com>
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
-
SOFTWARE.
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2022 bropat <patrick.broetto@gmail.com>
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# eufy-security-client
|
|
2
2
|
|
|
3
|
-

|
|
3
|
+

|
|
4
4
|
|
|
5
5
|
[](https://www.npmjs.com/package/eufy-security-client)
|
|
6
6
|
[](https://www.npmjs.com/package/eufy-security-client)
|
|
@@ -23,6 +23,8 @@ If you appreciate my work and progress and want to support me, you can do it her
|
|
|
23
23
|
[](https://ko-fi.com/E1E332Q6Z)
|
|
24
24
|
[](https://www.paypal.me/pbroetto)
|
|
25
25
|
|
|
26
|
+
**This project is not affiliated with Anker and Eufy (Eufy Security). It is a personal project that is maintained in spare time.**
|
|
27
|
+
|
|
26
28
|
## Description
|
|
27
29
|
|
|
28
30
|
This shared library allows to control [Eufy security devices](https://us.eufylife.com/collections/security) by connecting to the Eufy cloud servers and local/remote stations over p2p.
|
|
@@ -77,6 +79,10 @@ Please use GitHub issues for this.
|
|
|
77
79
|
|
|
78
80
|
## Changelog
|
|
79
81
|
|
|
82
|
+
### 1.6.3 (2022-02-06)
|
|
83
|
+
|
|
84
|
+
* (bropat) Initialize MQTT connection only if supported devices are found
|
|
85
|
+
|
|
80
86
|
### 1.6.2 (2022-02-05)
|
|
81
87
|
|
|
82
88
|
* (bropat) Fixed MQTT connection issue (error: 5)
|
package/build/mqtt/mqtt-eufy.crt
CHANGED
|
@@ -1,79 +1,79 @@
|
|
|
1
|
-
-----BEGIN CERTIFICATE-----
|
|
2
|
-
MIIE0DCCA7igAwIBAgIBBzANBgkqhkiG9w0BAQsFADCBgzELMAkGA1UEBhMCVVMx
|
|
3
|
-
EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxGjAYBgNVBAoT
|
|
4
|
-
EUdvRGFkZHkuY29tLCBJbmMuMTEwLwYDVQQDEyhHbyBEYWRkeSBSb290IENlcnRp
|
|
5
|
-
ZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTExMDUwMzA3MDAwMFoXDTMxMDUwMzA3
|
|
6
|
-
MDAwMFowgbQxCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6b25hMRMwEQYDVQQH
|
|
7
|
-
EwpTY290dHNkYWxlMRowGAYDVQQKExFHb0RhZGR5LmNvbSwgSW5jLjEtMCsGA1UE
|
|
8
|
-
CxMkaHR0cDovL2NlcnRzLmdvZGFkZHkuY29tL3JlcG9zaXRvcnkvMTMwMQYDVQQD
|
|
9
|
-
EypHbyBEYWRkeSBTZWN1cmUgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IC0gRzIwggEi
|
|
10
|
-
MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC54MsQ1K92vdSTYuswZLiBCGzD
|
|
11
|
-
BNliF44v/z5lz4/OYuY8UhzaFkVLVat4a2ODYpDOD2lsmcgaFItMzEUz6ojcnqOv
|
|
12
|
-
K/6AYZ15V8TPLvQ/MDxdR/yaFrzDN5ZBUY4RS1T4KL7QjL7wMDge87Am+GZHY23e
|
|
13
|
-
cSZHjzhHU9FGHbTj3ADqRay9vHHZqm8A29vNMDp5T19MR/gd71vCxJ1gO7GyQ5HY
|
|
14
|
-
pDNO6rPWJ0+tJYqlxvTV0KaudAVkV4i1RFXULSo6Pvi4vekyCgKUZMQWOlDxSq7n
|
|
15
|
-
eTOvDCAHf+jfBDnCaQJsY1L6d8EbyHSHyLmTGFBUNUtpTrw700kuH9zB0lL7AgMB
|
|
16
|
-
AAGjggEaMIIBFjAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNV
|
|
17
|
-
HQ4EFgQUQMK9J47MNIMwojPX+2yz8LQsgM4wHwYDVR0jBBgwFoAUOpqFBxBnKLbv
|
|
18
|
-
9r0FQW4gwZTaD94wNAYIKwYBBQUHAQEEKDAmMCQGCCsGAQUFBzABhhhodHRwOi8v
|
|
19
|
-
b2NzcC5nb2RhZGR5LmNvbS8wNQYDVR0fBC4wLDAqoCigJoYkaHR0cDovL2NybC5n
|
|
20
|
-
b2RhZGR5LmNvbS9nZHJvb3QtZzIuY3JsMEYGA1UdIAQ/MD0wOwYEVR0gADAzMDEG
|
|
21
|
-
CCsGAQUFBwIBFiVodHRwczovL2NlcnRzLmdvZGFkZHkuY29tL3JlcG9zaXRvcnkv
|
|
22
|
-
MA0GCSqGSIb3DQEBCwUAA4IBAQAIfmyTEMg4uJapkEv/oV9PBO9sPpyIBslQj6Zz
|
|
23
|
-
91cxG7685C/b+LrTW+C05+Z5Yg4MotdqY3MxtfWoSKQ7CC2iXZDXtHwlTxFWMMS2
|
|
24
|
-
RJ17LJ3lXubvDGGqv+QqG+6EnriDfcFDzkSnE3ANkR/0yBOtg2DZ2HKocyQetawi
|
|
25
|
-
DsoXiWJYRBuriSUBAA/NxBti21G00w9RKpv0vHP8ds42pM3Z2Czqrpv1KrKQ0U11
|
|
26
|
-
GIo/ikGQI31bS/6kA1ibRrLDYGCD+H1QQc7CoZDDu+8CL9IVVO5EFdkKrqeKM+2x
|
|
27
|
-
LXY2JtwE65/3YR8V3Idv7kaWKK2hJn0KCacuBKONvPi8BDAB
|
|
28
|
-
-----END CERTIFICATE-----
|
|
29
|
-
-----BEGIN CERTIFICATE-----
|
|
30
|
-
MIIEfTCCA2WgAwIBAgIDG+cVMA0GCSqGSIb3DQEBCwUAMGMxCzAJBgNVBAYTAlVT
|
|
31
|
-
MSEwHwYDVQQKExhUaGUgR28gRGFkZHkgR3JvdXAsIEluYy4xMTAvBgNVBAsTKEdv
|
|
32
|
-
IERhZGR5IENsYXNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTQwMTAx
|
|
33
|
-
MDcwMDAwWhcNMzEwNTMwMDcwMDAwWjCBgzELMAkGA1UEBhMCVVMxEDAOBgNVBAgT
|
|
34
|
-
B0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxGjAYBgNVBAoTEUdvRGFkZHku
|
|
35
|
-
Y29tLCBJbmMuMTEwLwYDVQQDEyhHbyBEYWRkeSBSb290IENlcnRpZmljYXRlIEF1
|
|
36
|
-
dGhvcml0eSAtIEcyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAv3Fi
|
|
37
|
-
CPH6WTT3G8kYo/eASVjpIoMTpsUgQwE7hPHmhUmfJ+r2hBtOoLTbcJjHMgGxBT4H
|
|
38
|
-
Tu70+k8vWTAi56sZVmvigAf88xZ1gDlRe+X5NbZ0TqmNghPktj+pA4P6or6KFWp/
|
|
39
|
-
3gvDthkUBcrqw6gElDtGfDIN8wBmIsiNaW02jBEYt9OyHGC0OPoCjM7T3UYH3go+
|
|
40
|
-
6118yHz7sCtTpJJiaVElBWEaRIGMLKlDliPfrDqBmg4pxRyp6V0etp6eMAo5zvGI
|
|
41
|
-
gPtLXcwy7IViQyU0AlYnAZG0O3AqP26x6JyIAX2f1PnbU21gnb8s51iruF9G/M7E
|
|
42
|
-
GwM8CetJMVxpRrPgRwIDAQABo4IBFzCCARMwDwYDVR0TAQH/BAUwAwEB/zAOBgNV
|
|
43
|
-
HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFDqahQcQZyi27/a9BUFuIMGU2g/eMB8GA1Ud
|
|
44
|
-
IwQYMBaAFNLEsNKR1EwRcbNhyz2h/t2oatTjMDQGCCsGAQUFBwEBBCgwJjAkBggr
|
|
45
|
-
BgEFBQcwAYYYaHR0cDovL29jc3AuZ29kYWRkeS5jb20vMDIGA1UdHwQrMCkwJ6Al
|
|
46
|
-
oCOGIWh0dHA6Ly9jcmwuZ29kYWRkeS5jb20vZ2Ryb290LmNybDBGBgNVHSAEPzA9
|
|
47
|
-
MDsGBFUdIAAwMzAxBggrBgEFBQcCARYlaHR0cHM6Ly9jZXJ0cy5nb2RhZGR5LmNv
|
|
48
|
-
bS9yZXBvc2l0b3J5LzANBgkqhkiG9w0BAQsFAAOCAQEAWQtTvZKGEacke+1bMc8d
|
|
49
|
-
H2xwxbhuvk679r6XUOEwf7ooXGKUwuN+M/f7QnaF25UcjCJYdQkMiGVnOQoWCcWg
|
|
50
|
-
OJekxSOTP7QYpgEGRJHjp2kntFolfzq3Ms3dhP8qOCkzpN1nsoX+oYggHFCJyNwq
|
|
51
|
-
9kIDN0zmiN/VryTyscPfzLXs4Jlet0lUIDyUGAzHHFIYSaRt4bNYC8nY7NmuHDKO
|
|
52
|
-
KHAN4v6mF56ED71XcLNa6R+ghlO773z/aQvgSMO3kwvIClTErF0UZzdsyqUvMQg3
|
|
53
|
-
qm5vjLyb4lddJIGvl5echK1srDdMZvNhkREg5L4wn3qkKQmw4TRfZHcYQFHfjDCm
|
|
54
|
-
rw==
|
|
55
|
-
-----END CERTIFICATE-----
|
|
56
|
-
-----BEGIN CERTIFICATE-----
|
|
57
|
-
MIIEADCCAuigAwIBAgIBADANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEh
|
|
58
|
-
MB8GA1UEChMYVGhlIEdvIERhZGR5IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBE
|
|
59
|
-
YWRkeSBDbGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA0MDYyOTE3
|
|
60
|
-
MDYyMFoXDTM0MDYyOTE3MDYyMFowYzELMAkGA1UEBhMCVVMxITAfBgNVBAoTGFRo
|
|
61
|
-
ZSBHbyBEYWRkeSBHcm91cCwgSW5jLjExMC8GA1UECxMoR28gRGFkZHkgQ2xhc3Mg
|
|
62
|
-
MiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASAwDQYJKoZIhvcNAQEBBQADggEN
|
|
63
|
-
ADCCAQgCggEBAN6d1+pXGEmhW+vXX0iG6r7d/+TvZxz0ZWizV3GgXne77ZtJ6XCA
|
|
64
|
-
PVYYYwhv2vLM0D9/AlQiVBDYsoHUwHU9S3/Hd8M+eKsaA7Ugay9qK7HFiH7Eux6w
|
|
65
|
-
wdhFJ2+qN1j3hybX2C32qRe3H3I2TqYXP2WYktsqbl2i/ojgC95/5Y0V4evLOtXi
|
|
66
|
-
EqITLdiOr18SPaAIBQi2XKVlOARFmR6jYGB0xUGlcmIbYsUfb18aQr4CUWWoriMY
|
|
67
|
-
avx4A6lNf4DD+qta/KFApMoZFv6yyO9ecw3ud72a9nmYvLEHZ6IVDd2gWMZEewo+
|
|
68
|
-
YihfukEHU1jPEX44dMX4/7VpkI+EdOqXG68CAQOjgcAwgb0wHQYDVR0OBBYEFNLE
|
|
69
|
-
sNKR1EwRcbNhyz2h/t2oatTjMIGNBgNVHSMEgYUwgYKAFNLEsNKR1EwRcbNhyz2h
|
|
70
|
-
/t2oatTjoWekZTBjMQswCQYDVQQGEwJVUzEhMB8GA1UEChMYVGhlIEdvIERhZGR5
|
|
71
|
-
IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBEYWRkeSBDbGFzcyAyIENlcnRpZmlj
|
|
72
|
-
YXRpb24gQXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQAD
|
|
73
|
-
ggEBADJL87LKPpH8EsahB4yOd6AzBhRckB4Y9wimPQoZ+YeAEW5p5JYXMP80kWNy
|
|
74
|
-
OO7MHAGjHZQopDH2esRU1/blMVgDoszOYtuURXO1v0XJJLXVggKtI3lpjbi2Tc7P
|
|
75
|
-
TMozI+gciKqdi0FuFskg5YmezTvacPd+mSYgFFQlq25zheabIZ0KbIIOqPjCDPoQ
|
|
76
|
-
HmyW74cNxA9hi63ugyuV+I6ShHI56yDqg+2DzZduCLzrTia2cyvk0/ZM/iZx4mER
|
|
77
|
-
dEr/VxqHD3VILs9RaRegAhJhldXRQLIQTO7ErBBDpqWeCtWVYpoNz4iCxTIM5Cuf
|
|
78
|
-
ReYNnyicsbkqWletNw+vHX/bvZ8=
|
|
79
|
-
-----END CERTIFICATE-----
|
|
1
|
+
-----BEGIN CERTIFICATE-----
|
|
2
|
+
MIIE0DCCA7igAwIBAgIBBzANBgkqhkiG9w0BAQsFADCBgzELMAkGA1UEBhMCVVMx
|
|
3
|
+
EDAOBgNVBAgTB0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxGjAYBgNVBAoT
|
|
4
|
+
EUdvRGFkZHkuY29tLCBJbmMuMTEwLwYDVQQDEyhHbyBEYWRkeSBSb290IENlcnRp
|
|
5
|
+
ZmljYXRlIEF1dGhvcml0eSAtIEcyMB4XDTExMDUwMzA3MDAwMFoXDTMxMDUwMzA3
|
|
6
|
+
MDAwMFowgbQxCzAJBgNVBAYTAlVTMRAwDgYDVQQIEwdBcml6b25hMRMwEQYDVQQH
|
|
7
|
+
EwpTY290dHNkYWxlMRowGAYDVQQKExFHb0RhZGR5LmNvbSwgSW5jLjEtMCsGA1UE
|
|
8
|
+
CxMkaHR0cDovL2NlcnRzLmdvZGFkZHkuY29tL3JlcG9zaXRvcnkvMTMwMQYDVQQD
|
|
9
|
+
EypHbyBEYWRkeSBTZWN1cmUgQ2VydGlmaWNhdGUgQXV0aG9yaXR5IC0gRzIwggEi
|
|
10
|
+
MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC54MsQ1K92vdSTYuswZLiBCGzD
|
|
11
|
+
BNliF44v/z5lz4/OYuY8UhzaFkVLVat4a2ODYpDOD2lsmcgaFItMzEUz6ojcnqOv
|
|
12
|
+
K/6AYZ15V8TPLvQ/MDxdR/yaFrzDN5ZBUY4RS1T4KL7QjL7wMDge87Am+GZHY23e
|
|
13
|
+
cSZHjzhHU9FGHbTj3ADqRay9vHHZqm8A29vNMDp5T19MR/gd71vCxJ1gO7GyQ5HY
|
|
14
|
+
pDNO6rPWJ0+tJYqlxvTV0KaudAVkV4i1RFXULSo6Pvi4vekyCgKUZMQWOlDxSq7n
|
|
15
|
+
eTOvDCAHf+jfBDnCaQJsY1L6d8EbyHSHyLmTGFBUNUtpTrw700kuH9zB0lL7AgMB
|
|
16
|
+
AAGjggEaMIIBFjAPBgNVHRMBAf8EBTADAQH/MA4GA1UdDwEB/wQEAwIBBjAdBgNV
|
|
17
|
+
HQ4EFgQUQMK9J47MNIMwojPX+2yz8LQsgM4wHwYDVR0jBBgwFoAUOpqFBxBnKLbv
|
|
18
|
+
9r0FQW4gwZTaD94wNAYIKwYBBQUHAQEEKDAmMCQGCCsGAQUFBzABhhhodHRwOi8v
|
|
19
|
+
b2NzcC5nb2RhZGR5LmNvbS8wNQYDVR0fBC4wLDAqoCigJoYkaHR0cDovL2NybC5n
|
|
20
|
+
b2RhZGR5LmNvbS9nZHJvb3QtZzIuY3JsMEYGA1UdIAQ/MD0wOwYEVR0gADAzMDEG
|
|
21
|
+
CCsGAQUFBwIBFiVodHRwczovL2NlcnRzLmdvZGFkZHkuY29tL3JlcG9zaXRvcnkv
|
|
22
|
+
MA0GCSqGSIb3DQEBCwUAA4IBAQAIfmyTEMg4uJapkEv/oV9PBO9sPpyIBslQj6Zz
|
|
23
|
+
91cxG7685C/b+LrTW+C05+Z5Yg4MotdqY3MxtfWoSKQ7CC2iXZDXtHwlTxFWMMS2
|
|
24
|
+
RJ17LJ3lXubvDGGqv+QqG+6EnriDfcFDzkSnE3ANkR/0yBOtg2DZ2HKocyQetawi
|
|
25
|
+
DsoXiWJYRBuriSUBAA/NxBti21G00w9RKpv0vHP8ds42pM3Z2Czqrpv1KrKQ0U11
|
|
26
|
+
GIo/ikGQI31bS/6kA1ibRrLDYGCD+H1QQc7CoZDDu+8CL9IVVO5EFdkKrqeKM+2x
|
|
27
|
+
LXY2JtwE65/3YR8V3Idv7kaWKK2hJn0KCacuBKONvPi8BDAB
|
|
28
|
+
-----END CERTIFICATE-----
|
|
29
|
+
-----BEGIN CERTIFICATE-----
|
|
30
|
+
MIIEfTCCA2WgAwIBAgIDG+cVMA0GCSqGSIb3DQEBCwUAMGMxCzAJBgNVBAYTAlVT
|
|
31
|
+
MSEwHwYDVQQKExhUaGUgR28gRGFkZHkgR3JvdXAsIEluYy4xMTAvBgNVBAsTKEdv
|
|
32
|
+
IERhZGR5IENsYXNzIDIgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTQwMTAx
|
|
33
|
+
MDcwMDAwWhcNMzEwNTMwMDcwMDAwWjCBgzELMAkGA1UEBhMCVVMxEDAOBgNVBAgT
|
|
34
|
+
B0FyaXpvbmExEzARBgNVBAcTClNjb3R0c2RhbGUxGjAYBgNVBAoTEUdvRGFkZHku
|
|
35
|
+
Y29tLCBJbmMuMTEwLwYDVQQDEyhHbyBEYWRkeSBSb290IENlcnRpZmljYXRlIEF1
|
|
36
|
+
dGhvcml0eSAtIEcyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAv3Fi
|
|
37
|
+
CPH6WTT3G8kYo/eASVjpIoMTpsUgQwE7hPHmhUmfJ+r2hBtOoLTbcJjHMgGxBT4H
|
|
38
|
+
Tu70+k8vWTAi56sZVmvigAf88xZ1gDlRe+X5NbZ0TqmNghPktj+pA4P6or6KFWp/
|
|
39
|
+
3gvDthkUBcrqw6gElDtGfDIN8wBmIsiNaW02jBEYt9OyHGC0OPoCjM7T3UYH3go+
|
|
40
|
+
6118yHz7sCtTpJJiaVElBWEaRIGMLKlDliPfrDqBmg4pxRyp6V0etp6eMAo5zvGI
|
|
41
|
+
gPtLXcwy7IViQyU0AlYnAZG0O3AqP26x6JyIAX2f1PnbU21gnb8s51iruF9G/M7E
|
|
42
|
+
GwM8CetJMVxpRrPgRwIDAQABo4IBFzCCARMwDwYDVR0TAQH/BAUwAwEB/zAOBgNV
|
|
43
|
+
HQ8BAf8EBAMCAQYwHQYDVR0OBBYEFDqahQcQZyi27/a9BUFuIMGU2g/eMB8GA1Ud
|
|
44
|
+
IwQYMBaAFNLEsNKR1EwRcbNhyz2h/t2oatTjMDQGCCsGAQUFBwEBBCgwJjAkBggr
|
|
45
|
+
BgEFBQcwAYYYaHR0cDovL29jc3AuZ29kYWRkeS5jb20vMDIGA1UdHwQrMCkwJ6Al
|
|
46
|
+
oCOGIWh0dHA6Ly9jcmwuZ29kYWRkeS5jb20vZ2Ryb290LmNybDBGBgNVHSAEPzA9
|
|
47
|
+
MDsGBFUdIAAwMzAxBggrBgEFBQcCARYlaHR0cHM6Ly9jZXJ0cy5nb2RhZGR5LmNv
|
|
48
|
+
bS9yZXBvc2l0b3J5LzANBgkqhkiG9w0BAQsFAAOCAQEAWQtTvZKGEacke+1bMc8d
|
|
49
|
+
H2xwxbhuvk679r6XUOEwf7ooXGKUwuN+M/f7QnaF25UcjCJYdQkMiGVnOQoWCcWg
|
|
50
|
+
OJekxSOTP7QYpgEGRJHjp2kntFolfzq3Ms3dhP8qOCkzpN1nsoX+oYggHFCJyNwq
|
|
51
|
+
9kIDN0zmiN/VryTyscPfzLXs4Jlet0lUIDyUGAzHHFIYSaRt4bNYC8nY7NmuHDKO
|
|
52
|
+
KHAN4v6mF56ED71XcLNa6R+ghlO773z/aQvgSMO3kwvIClTErF0UZzdsyqUvMQg3
|
|
53
|
+
qm5vjLyb4lddJIGvl5echK1srDdMZvNhkREg5L4wn3qkKQmw4TRfZHcYQFHfjDCm
|
|
54
|
+
rw==
|
|
55
|
+
-----END CERTIFICATE-----
|
|
56
|
+
-----BEGIN CERTIFICATE-----
|
|
57
|
+
MIIEADCCAuigAwIBAgIBADANBgkqhkiG9w0BAQUFADBjMQswCQYDVQQGEwJVUzEh
|
|
58
|
+
MB8GA1UEChMYVGhlIEdvIERhZGR5IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBE
|
|
59
|
+
YWRkeSBDbGFzcyAyIENlcnRpZmljYXRpb24gQXV0aG9yaXR5MB4XDTA0MDYyOTE3
|
|
60
|
+
MDYyMFoXDTM0MDYyOTE3MDYyMFowYzELMAkGA1UEBhMCVVMxITAfBgNVBAoTGFRo
|
|
61
|
+
ZSBHbyBEYWRkeSBHcm91cCwgSW5jLjExMC8GA1UECxMoR28gRGFkZHkgQ2xhc3Mg
|
|
62
|
+
MiBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTCCASAwDQYJKoZIhvcNAQEBBQADggEN
|
|
63
|
+
ADCCAQgCggEBAN6d1+pXGEmhW+vXX0iG6r7d/+TvZxz0ZWizV3GgXne77ZtJ6XCA
|
|
64
|
+
PVYYYwhv2vLM0D9/AlQiVBDYsoHUwHU9S3/Hd8M+eKsaA7Ugay9qK7HFiH7Eux6w
|
|
65
|
+
wdhFJ2+qN1j3hybX2C32qRe3H3I2TqYXP2WYktsqbl2i/ojgC95/5Y0V4evLOtXi
|
|
66
|
+
EqITLdiOr18SPaAIBQi2XKVlOARFmR6jYGB0xUGlcmIbYsUfb18aQr4CUWWoriMY
|
|
67
|
+
avx4A6lNf4DD+qta/KFApMoZFv6yyO9ecw3ud72a9nmYvLEHZ6IVDd2gWMZEewo+
|
|
68
|
+
YihfukEHU1jPEX44dMX4/7VpkI+EdOqXG68CAQOjgcAwgb0wHQYDVR0OBBYEFNLE
|
|
69
|
+
sNKR1EwRcbNhyz2h/t2oatTjMIGNBgNVHSMEgYUwgYKAFNLEsNKR1EwRcbNhyz2h
|
|
70
|
+
/t2oatTjoWekZTBjMQswCQYDVQQGEwJVUzEhMB8GA1UEChMYVGhlIEdvIERhZGR5
|
|
71
|
+
IEdyb3VwLCBJbmMuMTEwLwYDVQQLEyhHbyBEYWRkeSBDbGFzcyAyIENlcnRpZmlj
|
|
72
|
+
YXRpb24gQXV0aG9yaXR5ggEAMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQAD
|
|
73
|
+
ggEBADJL87LKPpH8EsahB4yOd6AzBhRckB4Y9wimPQoZ+YeAEW5p5JYXMP80kWNy
|
|
74
|
+
OO7MHAGjHZQopDH2esRU1/blMVgDoszOYtuURXO1v0XJJLXVggKtI3lpjbi2Tc7P
|
|
75
|
+
TMozI+gciKqdi0FuFskg5YmezTvacPd+mSYgFFQlq25zheabIZ0KbIIOqPjCDPoQ
|
|
76
|
+
HmyW74cNxA9hi63ugyuV+I6ShHI56yDqg+2DzZduCLzrTia2cyvk0/ZM/iZx4mER
|
|
77
|
+
dEr/VxqHD3VILs9RaRegAhJhldXRQLIQTO7ErBBDpqWeCtWVYpoNz4iCxTIM5Cuf
|
|
78
|
+
ReYNnyicsbkqWletNw+vHX/bvZ8=
|
|
79
|
+
-----END CERTIFICATE-----
|
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
// Copyright: (c) 2022, Patrick Broetto <patrick.broetto@gmail.com>
|
|
2
|
-
// MIT License
|
|
3
|
-
|
|
4
|
-
syntax = "proto3";
|
|
5
|
-
|
|
6
|
-
package eufy_security_client.lock;
|
|
7
|
-
|
|
8
|
-
message DeviceSmartLockMessage {
|
|
9
|
-
optional uint32 event_type = 1;
|
|
10
|
-
optional string user_id = 2;
|
|
11
|
-
optional DeviceSmartLockNotify data = 3;
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
message DeviceSmartLockNotify {
|
|
15
|
-
optional uint64 timestamp = 1;
|
|
16
|
-
optional string uuid = 2;
|
|
17
|
-
optional DeviceSmartLockNotifyData data = 3;
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
message DeviceSmartLockNotifyData {
|
|
21
|
-
optional string station_sn = 1;
|
|
22
|
-
optional string device_sn = 2;
|
|
23
|
-
optional uint32 event_type = 3;
|
|
24
|
-
optional uint64 event_time = 4;
|
|
25
|
-
optional string short_user_id = 5;
|
|
26
|
-
optional string unknown1 = 6;
|
|
27
|
-
optional string nick_name = 7;
|
|
28
|
-
optional string user_id = 8;
|
|
29
|
-
optional string unknown2 = 9;
|
|
30
|
-
optional string device_name = 10;
|
|
31
|
-
optional string unknown3 = 11;
|
|
32
|
-
optional string lock_state = 12;
|
|
1
|
+
// Copyright: (c) 2022, Patrick Broetto <patrick.broetto@gmail.com>
|
|
2
|
+
// MIT License
|
|
3
|
+
|
|
4
|
+
syntax = "proto3";
|
|
5
|
+
|
|
6
|
+
package eufy_security_client.lock;
|
|
7
|
+
|
|
8
|
+
message DeviceSmartLockMessage {
|
|
9
|
+
optional uint32 event_type = 1;
|
|
10
|
+
optional string user_id = 2;
|
|
11
|
+
optional DeviceSmartLockNotify data = 3;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
message DeviceSmartLockNotify {
|
|
15
|
+
optional uint64 timestamp = 1;
|
|
16
|
+
optional string uuid = 2;
|
|
17
|
+
optional DeviceSmartLockNotifyData data = 3;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
message DeviceSmartLockNotifyData {
|
|
21
|
+
optional string station_sn = 1;
|
|
22
|
+
optional string device_sn = 2;
|
|
23
|
+
optional uint32 event_type = 3;
|
|
24
|
+
optional uint64 event_time = 4;
|
|
25
|
+
optional string short_user_id = 5;
|
|
26
|
+
optional string unknown1 = 6;
|
|
27
|
+
optional string nick_name = 7;
|
|
28
|
+
optional string user_id = 8;
|
|
29
|
+
optional string unknown2 = 9;
|
|
30
|
+
optional string device_name = 10;
|
|
31
|
+
optional string unknown3 = 11;
|
|
32
|
+
optional string lock_state = 12;
|
|
33
33
|
}
|
package/build/mqtt/service.d.ts
CHANGED
|
@@ -12,6 +12,10 @@ export declare class MQTTService extends TypedEmitter<MQTTServiceEvents> {
|
|
|
12
12
|
private connected;
|
|
13
13
|
private client;
|
|
14
14
|
private connecting;
|
|
15
|
+
private clientID?;
|
|
16
|
+
private androidID?;
|
|
17
|
+
private apiBase?;
|
|
18
|
+
private email?;
|
|
15
19
|
private subscribeLocks;
|
|
16
20
|
private deviceSmartLockMessageModel;
|
|
17
21
|
private constructor();
|
package/build/mqtt/service.js
CHANGED
|
@@ -75,7 +75,11 @@ class MQTTService extends tiny_typed_emitter_1.TypedEmitter {
|
|
|
75
75
|
}
|
|
76
76
|
}
|
|
77
77
|
connect(clientID, androidID, apiBase, email) {
|
|
78
|
-
|
|
78
|
+
this.clientID = clientID;
|
|
79
|
+
this.androidID = androidID;
|
|
80
|
+
this.apiBase = apiBase;
|
|
81
|
+
this.email = email;
|
|
82
|
+
if (!this.connected && !this.connecting && this.clientID && this.androidID && this.apiBase && this.email && this.subscribeLocks.length > 0) {
|
|
79
83
|
this.connecting = true;
|
|
80
84
|
this.client = mqtt.connect(this.getMQTTBrokerUrl(apiBase), {
|
|
81
85
|
keepalive: 60,
|
|
@@ -108,7 +112,7 @@ class MQTTService extends tiny_typed_emitter_1.TypedEmitter {
|
|
|
108
112
|
var _a;
|
|
109
113
|
this.connecting = false;
|
|
110
114
|
this.log.error("MQTT Error", error);
|
|
111
|
-
if (error.code === 5)
|
|
115
|
+
if (error.code === 1 || error.code === 2 || error.code === 4 || error.code === 5)
|
|
112
116
|
(_a = this.client) === null || _a === void 0 ? void 0 : _a.end();
|
|
113
117
|
});
|
|
114
118
|
this.client.on("message", (topic, message, _packet) => {
|
|
@@ -135,13 +139,15 @@ class MQTTService extends tiny_typed_emitter_1.TypedEmitter {
|
|
|
135
139
|
});
|
|
136
140
|
}
|
|
137
141
|
subscribeLock(deviceSN) {
|
|
138
|
-
if (
|
|
142
|
+
if (this.connected) {
|
|
143
|
+
this._subscribeLock(deviceSN);
|
|
144
|
+
}
|
|
145
|
+
else {
|
|
139
146
|
if (!this.subscribeLocks.includes(deviceSN)) {
|
|
140
147
|
this.subscribeLocks.push(deviceSN);
|
|
141
148
|
}
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
this._subscribeLock(deviceSN);
|
|
149
|
+
if (this.clientID && this.androidID && this.apiBase && this.email)
|
|
150
|
+
this.connect(this.clientID, this.androidID, this.apiBase, this.email);
|
|
145
151
|
}
|
|
146
152
|
}
|
|
147
153
|
isConnected() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/mqtt/service.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA4B;AAC5B,2DAAkD;AAClD,mCAA6C;AAC7C,wDAA2B;AAC3B,gDAAwB;AACxB,6DAAiD;AAKjD,MAAa,WAAY,SAAQ,iCAA+B;
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../../src/mqtt/service.ts"],"names":[],"mappings":"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"}
|