diff options
author | jakobs1n <jakob.stendahl@outlook.com> | 2018-04-24 18:03:52 +0000 |
---|---|---|
committer | jakobs1n <jakob.stendahl@outlook.com> | 2018-04-24 18:03:52 +0000 |
commit | 1518b753353a8a57d02cef8ecb62f6a3fe90e109 (patch) | |
tree | 1b7b960b7efae73ded1da4907eeac8b658494877 | |
download | RemoteWOL-1518b753353a8a57d02cef8ecb62f6a3fe90e109.tar.gz RemoteWOL-1518b753353a8a57d02cef8ecb62f6a3fe90e109.zip |
Initial commit
-rw-r--r-- | .gitignore | 2 | ||||
-rw-r--r-- | app.js | 46 | ||||
-rw-r--r-- | config/devices.json.exmaple | 3 | ||||
-rw-r--r-- | package-lock.json | 13 | ||||
-rw-r--r-- | package.json | 13 |
5 files changed, 77 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7094af6 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +config/devices.json +node_modules/ @@ -0,0 +1,46 @@ +let http = require("http"); +let fs = require("fs"); +let wol = require("node-wol"); + +// Get list of devices to be woken... +let devices = JSON.parse( + fs.readFileSync("config/devices.json", "utf8") +); + +// The requestHandler +let requestHandler = (req, res) => { + + switch (req.url) { + + case "/wakeAll": + var responseText = "<html><body><p>Waking things:</p><hr />"; + for (var i = 0; i < devices.length; i++) { + responseText += "Waking \"" + devices[i] + '"'; + wol.wake(devices[0], (error) => { + if (error) { + console.log("WAKE ERROR"); + } + }); + } + res.end(responseText + "<hr /><p>No more devices to wake :)</body></html></p>"); + break; + + case "/": + res.end("<h1>heim.jakobstendahl.tk WOL</h1><a href=\"wakeAll\">Wake all devices</a>"); + break; + + + default: + res.end("<h1>404 file not found</h1><hr /><p>Please check your URL!</p>"); + } + +} + +// Start the server +let server = http.createServer(requestHandler); +server.listen(10000, (err) => { + if (err) { + return console.log("Couldn't start server..."); + } + console.log("Server is listening on *:10000"); +}) diff --git a/config/devices.json.exmaple b/config/devices.json.exmaple new file mode 100644 index 0000000..591c404 --- /dev/null +++ b/config/devices.json.exmaple @@ -0,0 +1,3 @@ +[ + "40:61:86:64:27:87" +] diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..ca734a3 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,13 @@ +{ + "name": "remotewol", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "node-wol": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/node-wol/-/node-wol-0.1.1.tgz", + "integrity": "sha1-m+F/6LeZxeAKaq1ciTb0NoTl6D0=" + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..930e543 --- /dev/null +++ b/package.json @@ -0,0 +1,13 @@ +{ + "name": "remotewol", + "version": "1.0.0", + "description": "", + "scripts": { + "test": "node app.js" + }, + "author": "", + "license": "MIT", + "dependencies": { + "node-wol": "^0.1.1" + } +} |