var mysql = require('mysql'); var mqtt = require('mqtt'); //CREDENCIALES MYSQL var con = mysql.createConnection({ host: "mfid.tk", user: "admin", password: "Admin#User$2022", database: "EspIoT_bd" }); //CREDENCIALES MQTT var options = { port: 1883, host: 'mfid.tk', clientId: 'esp_iot_vps' + Math.round(Math.random() * (0 - 10000) * -1), //acces_control_iot_ - clientes di$ username: 'web_iot_cliente', password: 'web1234', keepalive: 60, //envio un ping para que no se caiga la conexion reconnectPeriod: 1000, protocolId: 'MQIsdp', protocolVersion: 3, clean: true, encoding: 'utf8' //data set }; var client = mqtt.connect("mqtt://mfid.tk", options); //SE REALIZA LA CONEXION client.on('connect', function () { console.log("Conexion MQTT Exitosa!"); // client.subscribe('+/#', function(err) { // se suscribe a todos los topicos //client.subscribe('MyCasa/#', function (err) { client.subscribe('CtrRfid/DataOut', function(err) { //codigo funciona console.log("Subscripcion exitosa!") }); }) //CUANDO SE RECIBE MENSAJE client.on('message', function (topic, message) { console.log("Mensaje recibido desde -> " + topic + " Mensaje -> " + message.toString()); //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx if (topic == "CtrRfid/DataOut") { // if (topic == "MyCasa/DataOut") { // client.publish("MyCasa/DataIn", "<<>>"); // console.log("Respuesta Enviada ..."); // 205.25@17.46@349.39 var msg = message.toString(); var sp = msg.split("@"); var vvolt = sp[0]; var vamp = sp[1]; var vpow = sp[2]; console.log("vvolt -> " + vvolt); console.log("vamp -> " + vamp); console.log("vpow -> " + vpow); // var query = "INSERT INTO `EspIoT_bd`.`esp_iot` (`data_volt`,`data_amp`,`data_pow`) VALUES ('"+ vvol$ var query = "INSERT INTO `EspIoT_bd`.`devices` (`data_volt`,`data_amp`,`data_pow`) VALUES ('"+ vvolt $ //var query = "INSERT INTO `EspIoT_bd`.`devices` (`data_volt`,`data_amp`,`data_pow`) VALUES ('" + vvol$ con.query(query, function (err, result, fields) { if (err) throw err; console.log("Fila insertada correctamente"); }); } //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx if (topic == "MyCasa/DataIn") { try { var msgg = message.toString(); var msg = msgg.slice(0, 36); console.log("Tarjeta -> ", msg); var query = `INSERT INTO devices(data_volt,data_amp,data_pow) VALUES('${msg}',' ',' ')` con.query(query, function (err, result, fields) { if (err) throw err; console.log("Fila insertada correctamente"); }); } catch (error) { console.log("Error en MyCasa/DataIn", error) } } }); //nos conectamos con las tablas de datos de Admin#User$2022 //para leer la informacion de estas tablas con.connect(function (err) { if (err) throw err; //una vez conectados, podemos hacer consultas. console.log("Conexion a MYSQL exitosa!!!") }); //nos conectamos con las tablas de datos de Admin#User$2022 //para leer la informacion de estas tablas con.connect(function (err) { if (err) throw err; //una vez conectados, podemos hacer consultas. console.log("Conexion a MYSQL exitosa!!!") }); //para mantener la sesion con mysql abierta //hace una consulta y con eso mysql no desconecta //al cliente setInterval(function () { var query = 'SELECT 1 + 1 as result'; con.query(query, function (err, result, fields) { if (err) throw err; }); }, 5000);