diff --git a/kitchenradio/app/radio.js b/kitchenradio/app/radio.js index 5c3d57a..26d2e91 100644 --- a/kitchenradio/app/radio.js +++ b/kitchenradio/app/radio.js @@ -8,6 +8,9 @@ // load the things we need var spawn = require('child_process').spawn; +var fs = require("fs"); +var http = require('http'); +var wget = require('wget'); var App = null; @@ -54,6 +57,10 @@ exports.play = function(idx) { if(channel !== undefined) { var stream2play = channel.stream; + var m3u = '/tmp/kitchenradio.m3u'; + fs.unlinkSync(m3u); + wget.download(channel.stream, m3u); + if(Helper.isDefinedAndNotNull(Child)) { try { Child.kill(); @@ -66,8 +73,7 @@ exports.play = function(idx) { var parsers = require('playlist-parser'); var M3U = parsers.M3U; - var fs = require("fs"); - var playlist = M3U.parse(fs.readFileSync(channel.stream, { encoding: 'utf8' })); + var playlist = M3U.parse(fs.readFileSync(m3u, { encoding: 'utf8' })); Log.inspect('Radio: playlist', playlist); if(Helper.isDefinedAndNotNull(playlist[0])) { @@ -77,7 +83,6 @@ exports.play = function(idx) { Log.error(e); } - var Child = spawn( 'mplayer', [ diff --git a/kitchenradio/package.json b/kitchenradio/package.json index 9ac57be..334c636 100644 --- a/kitchenradio/package.json +++ b/kitchenradio/package.json @@ -17,6 +17,7 @@ "dateformat": "*", "eyespect": "*", "interface-addresses": "*", - "playlist-parser": "*" + "playlist-parser": "*", + "wget": "*" } } \ No newline at end of file