54 lines
No EOL
1.3 KiB
JavaScript
54 lines
No EOL
1.3 KiB
JavaScript
//SENSOR
|
|
const express = require('express');
|
|
const bodyParser = require('body-parser');
|
|
|
|
const Config = require('../config');
|
|
const ChainUtil = require('../chain-util');
|
|
const Sensor = require('./sensor');
|
|
|
|
const {
|
|
DEFAULT_PORT_BROKER_SENSOR_HANDSHAKE,
|
|
DEFAULT_PORT_SENSOR_API,
|
|
} = require('../constants');
|
|
|
|
'use strict';
|
|
|
|
const CONFIGS_STORAGE_LOCATION = "./settings.json";
|
|
|
|
const config = new Config(CONFIGS_STORAGE_LOCATION);
|
|
|
|
const keyPair = config.get({
|
|
key: "sensor-keypair",
|
|
default: ChainUtil.genKeyPair(),
|
|
transform: ChainUtil.deserializeKeyPair
|
|
});
|
|
const apiPort = config.get({
|
|
key: "sensor-api-port",
|
|
default: DEFAULT_PORT_SENSOR_API
|
|
});
|
|
const sensorId = config.get({
|
|
key: "sensor-id",
|
|
default: "Test sensor"
|
|
});
|
|
const brokerLocation = config.get({
|
|
key: "sensor-broker-location",
|
|
default: "ws://127.0.0.1:" + DEFAULT_PORT_BROKER_SENSOR_HANDSHAKE
|
|
});
|
|
const brokerPublicKey = config.get({
|
|
key: "sensor-broker-publickey",
|
|
default: null
|
|
});
|
|
|
|
const sensor = new Sensor(keyPair, sensorId, brokerLocation, brokerPublicKey);
|
|
|
|
const app = express();
|
|
app.use(bodyParser.json());
|
|
|
|
|
|
app.listen(apiPort, () => console.log(`Listening on port ${apiPort}`));
|
|
|
|
app.post('/send', (req, res) => {
|
|
console.log(`sending: ${JSON.stringify(req.body)}`);
|
|
sensor.send(JSON.stringify(req.body));
|
|
res.json("sent");
|
|
}); |