-
Notifications
You must be signed in to change notification settings - Fork 0
/
windows_cmd_fake_player.js
48 lines (38 loc) · 1.02 KB
/
windows_cmd_fake_player.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
var exec = require('child_process').exec;
var fs = require('fs');
exports.playa = function(station) {
console.log('playing station '+station)
}
exports.play_gg_relay = function(gg_id) {
killByPid();
let url = 'http://gr-relay-1.gaduradio.pl/'+gg_id
console.log('playing station by url '+url)
let command = "loopwin.bat "+ url
let child = exec(command,
function (error, stdout, stderr) {
console.log('stdout: ' + stdout);
console.log('stderr: ' + stderr);
if (error !== null) {
console.log('exec error: ' + error);
}
});
savePid(child.pid);
}
exports.stop = function() {
console.log('stopping - kill')
process.kill(pid);
}
const PID_FILE = 'gaga.pid';
function savePid(pid) {
console.log('saving pid ' + pid);
fs.writeFile(PID_FILE, pid);
}
function killByPid() {
try {
var pid = fs.readFileSync(PID_FILE);
console.log('will kill by pid = '+pid);
process.kill(pid);
} catch(e) {
console.log("error while killing " + e);
}
}