aboutsummaryrefslogtreecommitdiff
path: root/services/device-manager.js
diff options
context:
space:
mode:
authorJames Barnett <james.barnett@fivium.co.uk>2018-04-08 17:25:47 +0100
committerGitHub <noreply@github.com>2018-04-08 17:25:47 +0100
commiteb0185c03f8d5b68949798e8040b42a203b040a2 (patch)
tree86da8449b0c92ec29a15baffe3e7bd8ebd34488e /services/device-manager.js
parent954aff49707738e660e92e0418c31b1ec78a85a8 (diff)
parent4ec37af74fc77f7381d7c5c3b2560c8726f75ffa (diff)
downloadtplink-energy-monitor-0.2.tar.xz
tplink-energy-monitor-0.2.zip
Merge pull request #1 from jamesbarnett91/websocketsv0.2
Switch from http polling to websockets
Diffstat (limited to 'services/device-manager.js')
-rw-r--r--services/device-manager.js12
1 files changed, 8 insertions, 4 deletions
diff --git a/services/device-manager.js b/services/device-manager.js
index 3ed4a26..e4d18f3 100644
--- a/services/device-manager.js
+++ b/services/device-manager.js
@@ -3,14 +3,18 @@ const { Client } = require('tplink-smarthome-api');
const client = new Client();
var devices = [];
-client.startDiscovery({deviceTypes: ['plug']}).on('plug-new', plug => {
+client.startDiscovery({
+ deviceTypes: ['plug'],
+ discoveryTimeout: 20000
+ }).on('plug-new', plug => {
console.log('Found device: ' + plug.alias + ' [' + plug.deviceId + ']');
devices.push(plug);
-})
+});
module.exports.getDevice = function(deviceId) {
- // TODO - get by id
- return devices[0];
+
+ return devices.find(d => d.deviceId == deviceId);
+
}
module.exports.getAllDevices = function() {