-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.js
76 lines (61 loc) · 2.03 KB
/
index.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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
var http = require('http');
var net = require('net');
//var fs = require('fs');
var request = require("request")
//var curl = require('node-curl');
var actip;
var dataip;
//var md5 = require('md5');
//var math = require('math');
//var salt = 225237;//math.random(0,1000000);
//var key = 'DFG12Q8A'; // the token specified in management_token parameter
//var str2hash = salt + '/' + key;
//var md5raw = md5(str2hash, true);
//var base64hash = new Buffer(md5raw).toString('base64');//md5raw.toString('base64');
//var requiest_url = 'salt=' + salt + '&hash=' + base64hash;
var ips = require('./ip.json');
var server = new http.Server(
function(req, res){
if (req.url == '/getip'){
console.log(actip);
res.end(actip);
}
}
).listen(3000);
//dataip = ips[0].ip;
console.log(ips.length);
//fs.readFile('ip.json', function (err,data) {
// data = JSON.parse(data);
// dataip = data;
//});
var timer = setInterval(function(){
// dataip = ips[0].ip.toString();
var ipconn = -1;
var i;
for(i = 0; i < ips.length; i++) {
//console.log(data[i].ip);
//console.log(data[i].port);
requiest_url = '/manage/server_status?salt=225237&hash=HDf4PQa58LiUz6N+vD6DWg==';
var ip = ips[i].ip;
//console.log(ip);
var port = ips[i].port;
var url = 'http://'+ ips[i].ip +':'+port+ requiest_url;
request({
url: url,
json: true
}, function (error, response, body) {
if (!error && response.statusCode === 200) {
console.log(response.request.uri.hostname);
console.log(body.Connections) // Print the json response
if (ipconn == -1 ) {
ipconn = body.Connections;
actip = response.request.uri.hostname;
} else
if (ipconn>body.Connections) {
ipconn = body.Connections;
actip = response.request.uri.hostname;
}
}
});
};
}, 6000);