-
Notifications
You must be signed in to change notification settings - Fork 0
/
master_discovery.js
38 lines (30 loc) · 1.15 KB
/
master_discovery.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
// this file has the master - esp32 streamer discovery logic
const http = require("http");
const events = require('events');
const eventEmitter = new events.EventEmitter();
exports.isMaster = (_req, res, sensorRegistrationJson) => {
console.log("received request");
res.setHeader('Master', 'Yes');
res.status(200).send('Master server\r');
var ipAddress = _req.headers['x-forwarded-for'] || _req.connection.remoteAddress;
if (ipAddress.substr(0, 7) == "::ffff:") {
ipAddress = ipAddress.substr(7)
}
console.log("ESP32 making the request IP address is: " + ipAddress);
const clientIp = process.env.CLIENT_SERVER_IP;
let json = JSON.stringify({clientIp: clientIp});
const post_options = {
hostname: ipAddress,
port: sensorRegistrationJson.port,
method: "POST",
path: "/iAmMaster",
headers: {
"Content-Type": "application/json"
}
}
const post_request = http.request(post_options);
post_request.write(json)
post_request.end();
// eventEmitter.emit('sensorIsRequestingToConnect', sensorRegistrationJson);
};
exports.eventEmitter = eventEmitter;