Skip to content

Commit

Permalink
Merge pull request #66 from Hexagon/experimental
Browse files Browse the repository at this point in the history
Merge experimental, prep for 0.10
  • Loading branch information
Hexagon committed Dec 14, 2015
2 parents 21fd108 + 0b255f1 commit 3255a95
Show file tree
Hide file tree
Showing 6 changed files with 446 additions and 167 deletions.
31 changes: 31 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,37 @@ telldus.getDevices(function(err,devices) {
]
```

getSensors
----------

Signature:

```javascript
telldus.getSensors(function(err,sensors) {
if ( err ) {
console.log('Error: ' + err);
} else {
// The list of sensors and their values is returned
console.log(sensors);
}
});
```


```javascript
{ model: 'temperaturehumidity',
protocol: 'mandolyn',
id: 41,
data: [
{ type: 'TEMPERATURE',
value: '17.6',
timestamp: '2015-12-14 23:33:01' },
{ type: 'HUMIDITY',
value: '26',
timestamp: '2015-12-14 23:33:01' }
]
}
```

turnOn
------
Expand Down
48 changes: 33 additions & 15 deletions examples/tdtool.js
Original file line number Diff line number Diff line change
@@ -1,23 +1,18 @@
var telldus = require('..');
var i;
var devices = telldus.getDevicesSync();

var DEVICE_PARAM=3
var CMD_PARAM=2;


// FixMe: Asyncify
var telldus = require('..'),
util = require('util'),

i,
devices, sensors;

function syntax(){
console.log("--list|-l\t\t\t List devices");
console.log("--on|-n <device id>\t\t Turn device on");
console.log("--off|-n <device id>\t\t Turn device off");
console.log("--off|-f <device id>\t\t Turn device off");
console.log("--remove|-r <device id>\t\t Remove device");
console.log("--learn|-a <device id>\t\t Learn a new device");
process.exit(1);
}



function checkAndSet(method, device){
//check if TURNON is a valid thing
if(device.methods.indexOf(method) > -1){
Expand All @@ -30,11 +25,19 @@ function checkAndSet(method, device){
}
}
else {
console.log("Unsuported method, %s. %s", device.methods);
console.error("Unsuported method, %s. %s", device.methods);
process.exit(1);
}
}

function removeDevice(device) {
telldus.removeDevice(device.id, function (err) {
if (err) {
console.error('Could not remove device, error code: ' + err);
}
console.log('Device %s (%s) removed', device.id, device.name);
});
}

function getDevice(id) {
id = isNaN(parseInt(id, 10)) ? id: parseInt(id, 10);
Expand All @@ -48,7 +51,9 @@ function getDevice(id) {
return d;
}
}
console.log("No such device:%s", id);

console.error("No such device: %s", id);

process.exit(1);
}

Expand All @@ -59,19 +64,32 @@ function parseArgs(args) {
switch (args[i]){
case '--on':
case '-n':
devices = telldus.getDevicesSync();
checkAndSet('TURNON', getDevice(args[++i]));
break;
case '--off':
case '-f':
devices = telldus.getDevicesSync();
checkAndSet('TURNOFF', getDevice(args[++i]));
break;
case '--list':
case '-l':
devices = telldus.getDevicesSync();
console.log(devices);
break;
case '--sensors':
case '-s':
sensors = telldus.getSensors(function(err,sensors){
console.log(util.inspect(sensors,false,null));
});
break;
case '--remove':
case '-r':
devices = telldus.getDevicesSync();
removeDevice(getDevice(args[++i]));
break;
default:
syntax();

break;
}
}
Expand Down
6 changes: 3 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "telldus",
"version": "0.0.9",
"version": "0.1.0",
"description": "node wrapper for telldus-core, based on telldus-core-js",
"keywords": [
"telldus",
Expand All @@ -14,7 +14,7 @@
"url": "git://github.com/Hexagon/node-telldus.git"
},
"engines": {
"node": ">= 0.6.19"
"node": ">= 0.12.0"
},
"license": "MIT",
"main": "./telldus.js",
Expand All @@ -31,4 +31,4 @@
"mocha": "~1.21.4",
"should": "~4.0.4"
}
}
}
Loading

0 comments on commit 3255a95

Please sign in to comment.