Files
ewelink-api/lib/payloads/zeroConfUpdatePayload.js
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>
2020-01-11 01:39:29 -03:00

18 lines
512 B
JavaScript

const { encryptationData } = require('../ewelink-helper');
const zeroConfUpdatePayload = (selfApikey, deviceId, deviceKey, params) => {
const encryptedData = encryptationData(JSON.stringify(params), deviceKey);
const timeStamp = new Date() / 1000;
const sequence = Math.floor(timeStamp * 1000);
return {
sequence: sequence.toString(),
deviceid: deviceId,
selfApikey,
iv: encryptedData.iv,
encrypt: true,
data: encryptedData.data,
};
};
module.exports = zeroConfUpdatePayload;