refactring & config object
This commit is contained in:
@@ -1,11 +1,21 @@
|
|||||||
{
|
{
|
||||||
"development": {
|
"development": {
|
||||||
"username": "root",
|
"username": "root",
|
||||||
"password": "Zelen0ku4e",
|
|
||||||
"database": "iot",
|
"database": "iot",
|
||||||
"host": "127.0.0.1",
|
"host": "127.0.0.1",
|
||||||
"port":"3305",
|
"port":"3306",
|
||||||
"dialect": "mysql",
|
"dialect": "mysql",
|
||||||
"operatorsAliases": false
|
"operatorsAliases": false,
|
||||||
|
"logFile":"/dht.log"
|
||||||
|
},
|
||||||
|
"production": {
|
||||||
|
"username": "iot",
|
||||||
|
"password": "!iot_popovi",
|
||||||
|
"database": "iot",
|
||||||
|
"host": "localhost",
|
||||||
|
"port":"3306",
|
||||||
|
"dialect": "mysql",
|
||||||
|
"operatorsAliases": false,
|
||||||
|
"logFile":"/var/www/dht.log"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
84
dht.js
84
dht.js
@@ -61,45 +61,48 @@ app.get('/accontrol', auth.ensureLoggedIn_Orig,
|
|||||||
|
|
||||||
|
|
||||||
app.post('/accontrol',
|
app.post('/accontrol',
|
||||||
//ensureLoggedIn,
|
//ensureLoggedIn,
|
||||||
function(req, res){
|
function(req, res){
|
||||||
console.log("POST accontrol");
|
console.log("POST accontrol");
|
||||||
var sess=req.session;
|
var sess=req.session;
|
||||||
var model = { model: {user: req.user, data: req.body} };
|
var model = { model: {user: req.user, data: req.body} };
|
||||||
console.log("power:" + req.body.power); console.log("heat:" + req.body.heat); console.log("temp:" + req.body.temp);
|
console.log("power:" + req.body.power); console.log("heat:" + req.body.heat); console.log("temp:" + req.body.temp);
|
||||||
if(!req.body.temp){req.body.temp = 23;}
|
if(!req.body.temp){req.body.temp = 23;}
|
||||||
console.log("temp:" + req.body.temp); console.log("econo:" + req.body.econo); console.log("swing:" + req.body.swing);
|
console.log("temp:" + req.body.temp); console.log("econo:" + req.body.econo); console.log("swing:" + req.body.swing);
|
||||||
ac.Tlc112.Init();
|
ac.Tlc112.Init();
|
||||||
ac.Tlc112.SetPower(req.body.power);
|
ac.Tlc112.SetPower(req.body.power);
|
||||||
ac.Tlc112.SetMode(req.body.heat? ac.Mode.Heat:ac.Mode.Cool);
|
ac.Tlc112.SetMode(req.body.heat? ac.Mode.Heat:ac.Mode.Cool);
|
||||||
ac.Tlc112.SetTemp(req.body.temp);
|
ac.Tlc112.SetTemp(req.body.temp);
|
||||||
ac.Tlc112.SetSwingVertical( req.body.swing);
|
ac.Tlc112.SetSwingVertical( req.body.swing);
|
||||||
ac.Tlc112.SetFan(ac.FanSpeed.Med);
|
ac.Tlc112.SetFan(ac.FanSpeed.Med);
|
||||||
|
|
||||||
var code = ac.Tlc112.GetCommand();
|
var code = ac.Tlc112.GetCommand();
|
||||||
|
|
||||||
mqtt_client.publish('cmnd/', 'controller')
|
mqtt_client.publish('cmnd/', 'controller')
|
||||||
//break it
|
//break it
|
||||||
//code = code.substring(150);
|
//code = code.substring(150);
|
||||||
//console.log("RAW: " + code);
|
//console.log("RAW: " + code);
|
||||||
if(ir.SendCmd("http://"+AcIP, code))
|
if(ir.SendCmd("http://"+AcIP, code))
|
||||||
{
|
{
|
||||||
console.log("OK. Temp: " + req.body.temp);
|
console.log("OK. Temp: " + req.body.temp);
|
||||||
BroadcastWS(ac.Tlc112.GetState());
|
BroadcastWS(ac.Tlc112.GetState());
|
||||||
} else {
|
} else {
|
||||||
model.info = "Error executing command. Server resturned:" + req.statusCode;
|
model.info = "Error executing command. Server resturned:" + req.statusCode;
|
||||||
BroadcastWS("Error sending IR command");
|
BroadcastWS("Error sending IR command");
|
||||||
}
|
}
|
||||||
//console.log("req.user:" + util.inspect( req.user));
|
//console.log("req.user:" + util.inspect( req.user));
|
||||||
res.render('accontrol', model);
|
res.render('accontrol', model);
|
||||||
// res.render('accontrol',{model: {data: req.body, user: req.user, command: "", info: model.info}});
|
// res.render('accontrol',{model: {data: req.body, user: req.user, command: "", info: model.info}});
|
||||||
});
|
});
|
||||||
|
|
||||||
app.get('/chart', auth.ensureLoggedIn_Orig,
|
app.get('/chart', auth.ensureLoggedIn_Orig,
|
||||||
function(req, res){
|
function(req, res){
|
||||||
res.render('chart', { user: req.user });
|
res.render('chart', { user: req.user });
|
||||||
});
|
});
|
||||||
app.get('/garden/:days?', function(req, res){ res.render('chartGarden', {model:req.params}); });
|
|
||||||
|
app.get('/garden/:days?', function(req, res){
|
||||||
|
res.render('chartGarden', {model:req.params});
|
||||||
|
});
|
||||||
|
|
||||||
//Authentication --
|
//Authentication --
|
||||||
|
|
||||||
@@ -119,13 +122,13 @@ app.use('/waterTest',function(req, res){
|
|||||||
app.use('/water',function(req, res){
|
app.use('/water',function(req, res){
|
||||||
var time = req.query.t;
|
var time = req.query.t;
|
||||||
console.log("Watering cmd for: " + time);
|
console.log("Watering cmd for: " + time);
|
||||||
request('http://'+config.GardenIP+'/control?cmd=event,manualwatering='+ time, { json: true }, (err, res, body) => {
|
request('http://'+config.GardenIP+'/tools?cmd=event,manualwatering='+ time, { json: true }, (err, res, body) => {
|
||||||
if (err) { return console.log("Problem watering: " + err); }
|
if (err) { return console.log("Problem watering: " + err); }
|
||||||
console.log("Watering cmd successfully sent!");
|
console.log("Watering cmd successfully sent!");
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
app.use('/waterStop',function(req, res){
|
app.use('/waterStop',function(req, res){
|
||||||
request('http://'+config.GardenIP+'/control?cmd=event,stopwatering', { json: true }, (err, res, body) => {
|
request('http://'+config.GardenIP+'/tools?cmd=event,stopwatering', { json: true }, (err, res, body) => {
|
||||||
if (err) { return console.log("Problem watering: " + err); }
|
if (err) { return console.log("Problem watering: " + err); }
|
||||||
console.log("STOP watering cmd sent!");
|
console.log("STOP watering cmd sent!");
|
||||||
});
|
});
|
||||||
@@ -201,8 +204,11 @@ wss.on('connection', ws => {
|
|||||||
|
|
||||||
var mosca = require('mosca');
|
var mosca = require('mosca');
|
||||||
var mqtt_settings = {
|
var mqtt_settings = {
|
||||||
port:1883,
|
port:1883
|
||||||
secure : {
|
}
|
||||||
|
if(credentials)
|
||||||
|
{
|
||||||
|
mqtt_settings.secure = {
|
||||||
port: 8444,
|
port: 8444,
|
||||||
keyPath: SECURE_KEY,
|
keyPath: SECURE_KEY,
|
||||||
certPath: SECURE_CERT,
|
certPath: SECURE_CERT,
|
||||||
@@ -366,12 +372,14 @@ function SaveDhtIf(){
|
|||||||
console.log("Missing all data to write to DB !");
|
console.log("Missing all data to write to DB !");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
const env = process.env.NODE_ENV || 'development';
|
||||||
|
const cfg = require(__dirname + '/config/config.json')[env];
|
||||||
|
|
||||||
(function() {
|
(function() {
|
||||||
var exLog = console.log;
|
var exLog = console.log;
|
||||||
console.log = function(msg) {
|
console.log = function(msg) {
|
||||||
exLog.apply(this, arguments);
|
exLog.apply(this, arguments);
|
||||||
fs.appendFileSync('/var/www/dht.log', msg +"\r\n");
|
fs.appendFileSync(cfg.logFile, msg +"\r\n");
|
||||||
}
|
}
|
||||||
})();
|
})();
|
||||||
|
|
||||||
|
|||||||
3333
package-lock.json
generated
3333
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
0
sqltools_20210716130107_17192.log
Normal file
0
sqltools_20210716130107_17192.log
Normal file
@@ -1,3 +1,6 @@
|
|||||||
|
const env = process.env.NODE_ENV || 'development';
|
||||||
|
const config = require(__dirname + '/../../config/config.json')[env];
|
||||||
|
|
||||||
|
|
||||||
const Sequelize = require("sequelize");
|
const Sequelize = require("sequelize");
|
||||||
const mongoose = require('mongoose');
|
const mongoose = require('mongoose');
|
||||||
@@ -14,7 +17,7 @@ let DevicesSchema = new Schema({
|
|||||||
});
|
});
|
||||||
|
|
||||||
|
|
||||||
var sqlz = new Sequelize('iot', 'iot', '!iot_popovi',{dialect: 'mysql', logging: false});
|
var sqlz = new Sequelize(config.database, config.username, config.password,{dialect: config.dialect, logging: false});
|
||||||
var Device = sqlz.define('device', {
|
var Device = sqlz.define('device', {
|
||||||
id: { type: Sequelize.INTEGER, autoIncrement: true, primaryKey: true },
|
id: { type: Sequelize.INTEGER, autoIncrement: true, primaryKey: true },
|
||||||
name: Sequelize.STRING,
|
name: Sequelize.STRING,
|
||||||
|
|||||||
@@ -1,11 +1,21 @@
|
|||||||
//devicemessages
|
//devicemessages
|
||||||
var mysql = require('mysql');
|
var mysql = require('mysql');
|
||||||
|
|
||||||
|
|
||||||
|
// const fs = require('fs');
|
||||||
|
// const path = require('path');
|
||||||
|
// const Sequelize = require('sequelize');
|
||||||
|
// const basename = path.basename(__filename);
|
||||||
|
const env = process.env.NODE_ENV || 'development';
|
||||||
|
const config = require(__dirname + '/../../config/config.json')[env];
|
||||||
|
|
||||||
|
|
||||||
var pool = mysql.createPool({
|
var pool = mysql.createPool({
|
||||||
connectionLimit : 20,
|
connectionLimit : 20,
|
||||||
host : 'localhost',
|
host : config.host,
|
||||||
user : 'iot',
|
user : config.username,
|
||||||
password : '!iot_popovi',
|
password : config.password,
|
||||||
database : 'iot'
|
database : config.database
|
||||||
});
|
});
|
||||||
// var con = mysql.createConnection({
|
// var con = mysql.createConnection({
|
||||||
// host : 'localhost',
|
// host : 'localhost',
|
||||||
@@ -40,8 +50,8 @@ exports.findByName = function(fieldName, days, cb) {
|
|||||||
|
|
||||||
exports.insert = function(device_id, field_name, value, cb){
|
exports.insert = function(device_id, field_name, value, cb){
|
||||||
var params = [device_id, field_name,value];
|
var params = [device_id, field_name,value];
|
||||||
let sql = `INSERT INTO devicemessages(device_id,field_name,field_value,timestamp,createdAt,updatedAt )
|
let sql = `INSERT INTO devicemessages(device_id,field_name,field_value,timestamp)
|
||||||
VALUES (?,?,?,NOW(),NOW(),NOW());`;
|
VALUES (?,?,?,NOW());`;
|
||||||
pool.getConnection(function(err, con) {
|
pool.getConnection(function(err, con) {
|
||||||
if (err) throw err; // not connected!
|
if (err) throw err; // not connected!
|
||||||
con.query(sql,params,(err, r) => {
|
con.query(sql,params,(err, r) => {
|
||||||
|
|||||||
@@ -11,6 +11,7 @@ function GetDht() {
|
|||||||
var result;
|
var result;
|
||||||
(async () => {
|
(async () => {
|
||||||
try {
|
try {
|
||||||
|
//http://192.168.0.58/json?view=sensorupdate
|
||||||
var url='http://'+'192.168.1.143'+'/cm?cmnd=status%2010&user=admin&password=vlado555';
|
var url='http://'+'192.168.1.143'+'/cm?cmnd=status%2010&user=admin&password=vlado555';
|
||||||
request(url, { json: true }, (err, res, body) => {
|
request(url, { json: true }, (err, res, body) => {
|
||||||
if (err) { return console.log("Problem getting current conditions: " + err); }
|
if (err) { return console.log("Problem getting current conditions: " + err); }
|
||||||
|
|||||||
@@ -1,15 +1,9 @@
|
|||||||
var GardenIP = '192.168.0.18';
|
|
||||||
var AcIP = '192.168.1.143';
|
|
||||||
var HouseDhtIP = '192.168.1.126';
|
|
||||||
var HomeControllerMQTT = '192.168.0.10'; //GW02
|
|
||||||
var localPath = "/n";
|
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
GardenIP: '192.168.0.18',
|
GardenIP: '192.168.0.58',
|
||||||
AcIP : '192.168.1.143',
|
AcIP : '192.168.1.143',
|
||||||
HouseDhtIP : '192.168.1.126',
|
HouseDhtIP : '192.168.1.126',
|
||||||
HomeControllerMQTT : '192.168.0.10',
|
HomeControllerMQTT : '192.168.0.10',//GW02
|
||||||
localPath : "/n",
|
localPath : "",
|
||||||
foo: function () {
|
foo: function () {
|
||||||
// whatever
|
// whatever
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user