59 lines
No EOL
1.5 KiB
JavaScript
59 lines
No EOL
1.5 KiB
JavaScript
/**
|
|
* Author: Samir MEDJIAH medjiah@laas.fr
|
|
* File : device.js
|
|
* Version : 0.1.0
|
|
*/
|
|
|
|
var express = require('express')
|
|
var app = express()
|
|
var request = require('request');
|
|
|
|
var argv = require('yargs').argv;
|
|
// --local_ip
|
|
// --local_port
|
|
// --local_name
|
|
// --remote_ip
|
|
// --remote_port
|
|
// --remote_name
|
|
// --send_period
|
|
|
|
var LOCAL_ENDPOINT = {IP : argv.local_ip, PORT : argv.local_port, NAME : argv.local_name};
|
|
var REMOTE_ENDPOINT = {IP : argv.remote_ip, PORT : argv.remote_port, NAME : argv.remote_name};
|
|
|
|
var DATA_PERIOD = argv.send_period;
|
|
|
|
function doPOST(uri, body, onResponse) {
|
|
request({method: 'POST', uri: uri, json : body}, onResponse);
|
|
}
|
|
|
|
function register() {
|
|
doPOST(
|
|
'http://' + REMOTE_ENDPOINT.IP + ':' + REMOTE_ENDPOINT.PORT + '/devices/register',
|
|
{
|
|
Name : LOCAL_ENDPOINT.NAME,
|
|
PoC : 'http://' + LOCAL_ENDPOINT.IP + ':' + LOCAL_ENDPOINT.PORT,
|
|
},
|
|
function(error, response, respBody) {
|
|
console.log(respBody);
|
|
}
|
|
);
|
|
}
|
|
|
|
var dataItem = 0;
|
|
function sendData() {
|
|
doPOST(
|
|
'http://' + REMOTE_ENDPOINT.IP + ':' + REMOTE_ENDPOINT.PORT + '/device/'+ LOCAL_ENDPOINT.NAME + '/data',
|
|
{
|
|
Name : LOCAL_ENDPOINT.NAME,
|
|
Data : dataItem++,
|
|
Time : Date.now(),
|
|
},
|
|
function(error, response, respBody) {
|
|
console.log(respBody);
|
|
}
|
|
);
|
|
}
|
|
|
|
register();
|
|
|
|
setInterval(sendData, DATA_PERIOD); |