Commit Graph

77 Commits

Author SHA1 Message Date
Martín M
82f152d624 openWebSocket: use v2 API 2020-10-26 21:10:51 -03:00
Martín M
08e84b5fea updated dependencies 2020-10-26 20:48:41 -03:00
Martín M
979664dc34 getDeviceIP: refactor 2020-10-22 02:59:00 -03:00
Martín M
f81fd771a6 saveDevicesCache: use v2 API 2020-10-22 02:53:40 -03:00
Martín M
f2a39c34b4 checkDeviceUpdate: refactor 2020-10-22 02:50:54 -03:00
Martín M
646dfed03c checkDevicesUpdates: use v2 API 2020-10-22 02:44:07 -03:00
Martín M
4038c8c7bd checkDeviceUpdate: use v2 API 2020-10-22 02:18:53 -03:00
Martín M
9e7bef86ff getFirmwareVersion: use v2 API 2020-10-21 21:26:34 -03:00
Martín M
894aa6f5ca getDeviceChannelCount: use v2 API 2020-10-21 21:24:17 -03:00
Martín M
ad2d72f4ce setDevicePowerState: improved error handling 2020-10-21 21:19:01 -03:00
Martín M
e5242589f8 getDeviceCurrentTH: improved error handling 2020-10-21 21:18:21 -03:00
Martín M
bf6ab11590 toggleDevicePowerState: renamed to toggleDevicePowerState 2020-10-21 21:11:39 -03:00
Martín M
ac80e06b0f setDevicePowerState: use v2 API 2020-10-21 21:00:23 -03:00
Martín M
2a64768822 getDevicePowerState: use v2 API 2020-10-21 20:23:01 -03:00
Martín M
930cf2878c getDevices: improved error message 2020-10-21 20:12:50 -03:00
Martín M
996c678204 getDevices: use v2 API 2020-10-21 20:12:13 -03:00
Martín M
45b1c4363a DEV: update eslint + prettier + jest 2020-10-21 20:03:11 -03:00
Martín M
47fd13f105 getDevice: improved error message 2020-10-21 19:59:08 -03:00
Martín M
94b3bc084a makeRequest: improved error message 2020-10-21 19:58:51 -03:00
Martín M
9c00d8280a getDevice: use v2 API 2020-10-21 19:53:18 -03:00
Martín M
16772a5c54 makeRequest: improved error message 2020-10-21 19:53:18 -03:00
Martín M
03307994ea makeRequest: use v2 API 2020-10-21 19:53:18 -03:00
Martín M
d274a8d560 getCredentials: improved error message 2020-10-21 19:53:18 -03:00
Martín M
2f4716f379 getCredentials: fix getting api key and access token 2020-10-21 19:53:17 -03:00
Martín M
012d0ee092 getCredentials: use v2 API 2020-10-21 19:53:17 -03:00
Martín M
1109e70019 use v2 API URL 2020-10-21 19:53:17 -03:00
Martin M
5a07f6b615 Release v3.1.1 (#112)
* fix JSON parse error when device is offline (#111)

* add 503 error and fix makeRequest mixin when device is Offline or Service is unavailable

* add 503 error and fix makeRequest mixin when device is Offline or Service is unavailable

* version bump

Co-authored-by: Luigui Delyer <git@s1x.com.br>
3.1.1
2020-10-18 19:17:16 -03:00
Martín M
381c344725 version bump 3.1.0 2020-10-12 19:14:50 -03:00
Martín M
92b60f21a1 npm audit 2020-10-12 19:03:57 -03:00
Martin M
b87d092a71 Release v3.1.0 (#93)
* set APP_ID and APP_SECRET from main class

* add APP_ID and APP_SECRET as class constructor parameters

* updated test case

* updated test case

* added new test case

* docs updated

* Release v3.1.0 - "setWSDevicePowerState" (#96)

* new mixing to control devices using websocket

* switch status on single channel devices

* working on deviceControl mixin

* better error handling

* working on fix for shared devices

* refactor/cleanup

* added helper function

* added docs for new method

* return device new status

* added test cases

* properly close websocket connection and clean used properties

* added test cases

* error detection enhancements

* added test cases

* error detection enhancements

* added new test file to jest setup

* method renamed

* fix for closing websocket connection

* new getWSDevicePowerState method

* added test cases

* re-arrange tests

* added new test cases

* extract helpers methods

* added test case

* close WebSocket connection on auth error

* updated docs

* updated dependencies

* fix for "forbidden" error

* updated dependencies
2020-10-12 19:01:57 -03:00
Martin M
c11b3a8ab7 Release v3.0.0 (#85)
* updated dependencies

* code linting

* added new app id & app secret

* cleanup requests payloads

* remove unused function

* update test cases

* enabled firmware tests

* refactor getDevice to use right api endpoint

* error messages improvements

* error messages improvements

* error messages improvements

* error messages improvements

* error messages improvements

* payload cleanup

* refactor setDevicePowerState to use right api endpoint

* update test exepectation

* removed deprecated class

* updated tests to reflect new error codes

* error messages improvements

* refactoring project structure: devices methods

refactoring project sturcture

* refactoring project structure: firmware methods

* refactoring project structure: temperature/humidity

* refactoring project structure: credentials methods

* refactoring project structure: power usage methods

* refactoring project structure: power state methods

* refactoring project structure: websocket methods

* removed deprecated login method from docs

* refactoring project structure: power usage methods

* refactoring project structure: zeroconf classes

* refactoring project structure: websocket classes

* refactoring project structure: zeroconf classes

* refactor and cleanup

* refactoring project structure: firmware methods

* moved parsers to own directory

* update tests with methods renames

* export missing temperature/humidity methods

* removed unused package

* refactor and cleanup

* fix test expectation

* refactoring project structure: moved data files

* refactoring project structure: moved data files

* refactoring project structure: moved helpers files

* refactoring project structure: moved helpers files

* refactoring project structure: moved payload files

* refactor and cleanup

* refactor getDevicePowerState

* setDevicePowerState returns channel

* convert error 400 to 404 for clarity

* updated test cases

* remove console.log

* cache path for zeroconf cache files

* installed nock

* using nock to simulate server requests during testing

* moved credentials file to config folder

* update request url when using nock

* refactor nock helper file

* move cooldown delay to setupTests file

* updating testing instructions

* restored delete code block

* fix wrong error code

* accept phone number to login to ewelink

* added test cases for initialize main class

* improvements on class initialization parameters

* allow login using phone number

* rename test file

* updated test case

* fixed regression bug

* Release v3.0.0 - use node-fetch (#87)

* replaced deprecated request library with node-fetch

* refactor: moved makeRequest to own mixin file

* refactor to use node-fetch

* fixes

* update config

* created helper method

* constant rename

* ignore files from final package

* version bump
3.0.0
2020-05-23 03:07:52 -03:00
Martín M
04ba4a1bb3 using new app id & app secret 2.0.1 2020-05-19 09:50:05 -03:00
Martín M
851d6e7a79 fixed docs url 2020-05-15 18:37:45 -03:00
Steve
3439f60465 fix broken link to getRegion documentation (#73) 2020-02-25 09:04:52 -03:00
Martin M
098011b285 Release v2.0.0 (#44)
* Added arpTableSolver (#18)

* Added arpTableSolver

* fix package import

* linting class

* changed arp library

* refactor arp class

* using arpping fork

* refactor arpTableSolver class

* Added Zero Conf functionality (LAN mode) (#46)

* added crypto-js

* zeroconf helper functions

* zeroconf update payload

* new method to save devices cache file

* class renamed

* refactor Zeroconf class

* return cached device if exists

* moved method to get local ip address

* fix mac addresses without leading zeroes

* refactor Zeroconf class

* using new zeroconf functionality

* zeroconf working with single and multichannel devices

* save device mixin enhancement

* working on zeroconf test cases

* catch errors on filesystem methods

* zeroconf: added extra test cases

* better error handling

* zeroconf: 100% code coverage

* removed deprecated login method

* updates on credentials file

* version bump

* Docs for v2.0 (#52)

* added v1 docs

* added zeroconf docs

* updated readme

* docs updated

* removed zeroconf article warning

* updated vscode config

Co-authored-by: Luis Llamas <luisllamas@hotmail.com>
2.0.0
2020-01-11 01:39:29 -03:00
Martin M
6e240c181f Release v1.10.0 (#38)
* 100% coverage for mixins/user/regionMixin.js

* check if websocket connection is valid json

* removed unnecessary delays

* added more test cases

* move constants to json files

* renamed login method to getCredentials

* mixin renamed

* don’t export internal methods

* mixin renamed

* keep socket connection opened

* using new getCredentials method

* reanmed login to credentials

* version bump
2019-11-29 02:25:38 -03:00
Martin M
303d7d4cc4 Release v1.9.0 (#26)
* trying to fix #21

* using getDeviceAlt method

* replace getDevice method

* handle error messages on new method

* using new getDevice method

* disable firmware tests (for now)

* return devices list using new method

* tests files renamed

* updated tests assertions based on recent changes

* tests files renamed

* code cleanup

* fix after method refactor

* version bump
2019-11-16 03:38:36 -03:00
Martin M
c0f9fd584c Release v1.8.3 (#37)
* improved code quality

* version bump
2019-11-16 03:12:00 -03:00
Martin M
e8d2405050 improved code quality (#36) 2019-11-16 03:05:53 -03:00
Martin M
ae15bb9e84 Release v1.8.2 (#30)
* updated getDevices method

* temporarily disable test

* version bump
2019-11-12 10:13:44 -03:00
Martin M
98b8d8a97c Release v1.8.1 (#28)
* new method to get user region

* added new test

* version bump
2019-11-11 00:22:08 -03:00
Martin M
e6f60724f1 Release v1.8.0 (#23)
* new method to check for device firmware updates

* moved mixin

* generate firmware update payload

* new method to check for devices firmware updates

* removed unused function

* moved firmware tests to own file

* added firmware test cases

* return device id on response

* updated credentials list

* version bump
2019-11-02 22:42:55 -03:00
Martín M
f883be49a6 version bump 2019-10-18 20:51:42 -03:00
Martin M
2da94b6971 Release v1.7.0 (#20)
* Add typescript typings for main.js (#19)

* improved error message on temp/humidity devices

* Update index.d.ts

Co-Authored-By: ducpmm <49466191+ducpmm@users.noreply.github.com>
2019-10-18 20:49:18 -03:00
Martin M
bff733adc5 Release v1.6.1 (#16)
* refactor temperature/humidity methods

* updating temperature/humidity tests

* version bump

* updated jest config

* fix: when logged user is not device owner, can’t change power state

* fix: when logged user is not device owner, can’t get power usage

* reverted extra code changes

* updated tests
2019-09-29 11:13:43 -03:00
Martin M
4a21470978 Release v1.6.0 (#15)
* added new method to listen for websocket messages

* version bump

* updated README
2019-09-15 01:48:13 -03:00
Martin M
1cd87a8d90 Release v1.5.1 (#14)
* updated dependencies

* disabled temp/humidity test

* refactor big main class into smaller mixins

* updated jest config

* version bump
2019-09-14 22:12:56 -03:00
NickDub
5b4361a23d Added current temperature, humidity and firmware (#10)
* Added current temperature, humidity and firmware

* fixed wrong parameter

* linting

* fixed test cases

* fixed serverless test cases

* fixed test cases

* variable renamed

* version bump
2019-09-13 23:15:29 -03:00
Martin M
024aaa8a2c Release v1.4.1 (#13)
* specific error when requested channel is bigger than total

* fix for multi-channel devices

* updated test expectations

* fixes with uiid api changes

* fix wrong error message

* added new test cases

* return expected error on wrong channel number

* added more devices

* version bump
2019-09-11 23:46:17 -03:00
Martin M
171faa617b Release v1.4.0 (#11)
* refactor websocket / power usage

* cooldown between api requests during testing

* refactor power state methods

* remove unused code

* cooldown between api requests during testing

* version bump
2019-08-19 23:05:52 -03:00