prime and sec broker

This commit is contained in:
Dmitry Borisenko
2020-12-18 21:48:06 +01:00
parent 07b75afb94
commit 19f728e209
6 changed files with 148 additions and 30 deletions

View File

@@ -12,10 +12,15 @@
"mqttPrefix": "/iotTest", "mqttPrefix": "/iotTest",
"mqttUser": "rise", "mqttUser": "rise",
"mqttPass": "23ri22se32", "mqttPass": "23ri22se32",
"mqttServer2": "",
"mqttPort2": 1883,
"mqttPrefix2": "/iotTest",
"mqttUser2": "",
"mqttPass2": "",
"scen": "1", "scen": "1",
"telegramApi": "1416711569:AAEI0j83GmXqwzb_gnK1B0Am0gDwZoJt5xo", "telegramApi": "1416711569:AAEI0j83GmXqwzb_gnK1B0Am0gDwZoJt5xo",
"telegonof": "0", "telegonof": "0",
"teleginput":"0", "teleginput": "0",
"weblogin": "admin", "weblogin": "admin",
"webpass": "admin", "webpass": "admin",
"MqttIn": "0", "MqttIn": "0",
@@ -24,7 +29,7 @@
"oneWirePin": "2", "oneWirePin": "2",
"serverip": "http://206.189.49.244", "serverip": "http://206.189.49.244",
"uart": "0", "uart": "0",
"uartS":"9600", "uartS": "9600",
"uartTX":"12", "uartTX": "12",
"uartRX":"13" "uartRX": "13"
} }

View File

@@ -1,24 +1,24 @@
1;0;button-out;id;toggle;Кнопки;Освещение;order;pin 1;0;button-out;id;toggle;Кнопки;Освещение;order;gpio
2;0;button-out;id;toggle;Кнопки;Освещение;order;pin;inv[1] 2;0;button-out;id;toggle;Кнопки;Освещение;order;gpio;inv[1]
3;0;button-out;id;toggle;Кнопки;Освещение;order 3;0;button-out;id;toggle;Кнопки;Освещение;order
4;0;button-in;id;toggle;Кнопки;Освещение;order;pin;db[20] 4;0;button-in;id;toggle;Кнопки;Освещение;order;gpio;db[20]
5;0;pwm-out;id;range;Ползунки;Яркость;order;pin 5;0;pwm-out;id;range;Ползунки;Яркость;order;gpio
6;0;inoutput;id;inputDigit;Ввод;Введите#цифру;order 6;0;inoutput;id;inputDigit;Ввод;Введите#цифру;order
7;0;inoutput;id;inputTime;Ввод;Введите#время;order 7;0;inoutput;id;inputTime;Ввод;Введите#время;order
8;0;inoutput;id;anydata;Вывод;Сигнализация;order 8;0;inoutput;id;anydata;Вывод;Сигнализация;order
9;0;analog-adc;id;fillgauge;Сенсоры;Аналоговый;order;gol;map[0,1024,0,100];c[1] 9;0;analog-adc;id;fillgauge;Сенсоры;Аналоговый;order;gpio;map[0,1024,0,100];c[1]
10;0;dallas-temp;id;anydataTemp;Сенсоры;Температура;order;sal;index[0];int[10] 10;0;dallas-temp;id;anydataTemp;Сенсоры;Температура;order;pin[2];index[0];int[10]
11;0;ultrasonic-cm;id;anydata;Сенсоры;Расстояние;order;cin;map[0,500,0,100];c[1];int[10] 11;0;ultrasonic-cm;id;anydata;Сенсоры;Расстояние;order;pin[12,13];map[0,500,0,100];c[1];int[10]
12;0;dht-hum;id;anydataHum;Сенсоры;Влажность;order;thd;type[dht11];c[1] 12;0;dht-hum;id;anydataHum;Сенсоры;Влажность;order;pin[2];type[dht11];c[1]
13;0;dht-temp;id;anydataTemp;Сенсоры;Температура;order;thd;type[dht11];c[1] 13;0;dht-temp;id;anydataTemp;Сенсоры;Температура;order;pin[2];type[dht11];c[1]
14;0;dht-hum;id;anydataHum;Сенсоры;Влажность;order;thd;type[dht22];c[1] 14;0;dht-hum;id;anydataHum;Сенсоры;Влажность;order;pin[2];type[dht22];c[1]
15;0;dht-temp;id;anydataTemp;Сенсоры;Температура;order;thd;type[dht22];c[1] 15;0;dht-temp;id;anydataTemp;Сенсоры;Температура;order;pin[2];type[dht22];c[1]
16;0;bme280-temp;id;anydataTemp;Сенсоры;Температура;order;addr[0x76];c[1] 16;0;bme280-temp;id;anydataTemp;Сенсоры;Температура;order;addr[0x76];c[1]
17;0;bme280-hum;id;anydataHum;Сенсоры;Влажность;order;addr[0x76];c[1] 17;0;bme280-hum;id;anydataHum;Сенсоры;Влажность;order;addr[0x76];c[1]
18;0;bme280-press;id;anydataPress;Сенсоры;Давление;order;addr[0x76];c[1] 18;0;bme280-press;id;anydataPress;Сенсоры;Давление;order;addr[0x76];c[1]
19;0;bmp280-press;id;anydataPress;Сенсоры;Давление;order;addr[0x76];c[1] 19;0;bmp280-press;id;anydataPress;Сенсоры;Давление;order;addr[0x76];c[1]
20;0;bmp280-temp;id;anydataTemp;Сенсоры;Температура;order;addr[0x76];c[1] 20;0;bmp280-temp;id;anydataTemp;Сенсоры;Температура;order;addr[0x76];c[1]
21;0;impuls-out;id;na;na;na;order;pin 21;0;impuls-out;id;na;na;na;order;gpio
22;0;count-down;id;anydata;Таймер;Обратный#отчет;order 22;0;count-down;id;anydata;Таймер;Обратный#отчет;order
23;0;inoutput;id;anydata;Вывод;Вывод#uart;order 23;0;inoutput;id;anydata;Вывод;Вывод#uart;order
24;0;logging;id;chart;Графики;История;order;val[any];int[60];cnt[100] 24;0;logging;id;chart;Графики;История;order;val[any];int[60];cnt[100]

Binary file not shown.

View File

@@ -19,6 +19,14 @@
{ {
"type": "hr" "type": "hr"
}, },
{
"type": "h3",
"title": "Основной брокер",
"style": "width:100%;float:left;"
},
{
"type": "hr"
},
{ {
"type": "h4", "type": "h4",
"title": "{{SetMQTTServerName}}", "title": "{{SetMQTTServerName}}",
@@ -79,6 +87,77 @@
"state": "{{mqttPass}}", "state": "{{mqttPass}}",
"style": "width:40%;float:right" "style": "width:40%;float:right"
}, },
{
"type": "hr"
},
{
"type": "h3",
"title": "Резервный брокер",
"style": "width:100%;float:left;"
},
{
"type": "hr"
},
{
"type": "h4",
"title": "{{SetMQTTServerName}}",
"style": "width:60%;float:left;"
},
{
"type": "input",
"title": "",
"name": "mqttServer2-arg",
"state": "{{mqttServer2}}",
"style": "width:40%;float:right"
},
{
"type": "h4",
"title": "{{SetMQTTPort}}",
"style": "width:60%;float:left;"
},
{
"type": "input",
"title": "",
"name": "mqttPort2-arg",
"state": "{{mqttPort2}}",
"style": "width:40%;float:right"
},
{
"type": "h4",
"title": "{{SetMQTTPrefix}}",
"style": "width:60%;float:left;"
},
{
"type": "input",
"title": "",
"name": "mqttPrefix2-arg",
"state": "{{mqttPrefix2}}",
"style": "width:40%;float:right"
},
{
"type": "h4",
"title": "{{SetMQTTUserName}}",
"style": "width:60%;float:left;"
},
{
"type": "input",
"title": "",
"name": "mqttUser2-arg",
"state": "{{mqttUser2}}",
"style": "width:40%;float:right"
},
{
"type": "h4",
"title": "{{SetMQTTPassword}}",
"style": "width:60%;float:left;"
},
{
"type": "input",
"title": "",
"name": "mqttPass2-arg",
"state": "{{mqttPass2}}",
"style": "width:40%;float:right"
},
{ {
"type": "h3", "type": "h3",
"name": "my-block", "name": "my-block",
@@ -89,9 +168,10 @@
"type": "button", "type": "button",
"title": "{{ButSave}}", "title": "{{ButSave}}",
"style": "width:100%;float:left;", "style": "width:100%;float:left;",
"action": "set?mqttServer=[[mqttServer-arg]]&mqttPort=[[mqttPort-arg]]&mqttPrefix=[[mqttPrefix-arg]]&mqttUser=[[mqttUser-arg]]&mqttPass=[[mqttPass-arg]]", "action": "set?mqttServer=[[mqttServer-arg]]&mqttPort=[[mqttPort-arg]]&mqttPrefix=[[mqttPrefix-arg]]&mqttUser=[[mqttUser-arg]]&mqttPass=[[mqttPass-arg]]&mqttServer2=[[mqttServer2-arg]]&mqttPort2=[[mqttPort2-arg]]&mqttPrefix2=[[mqttPrefix2-arg]]&mqttUser2=[[mqttUser2-arg]]&mqttPass2=[[mqttPass2-arg]]",
"class": "btn btn-block btn-default" "class": "btn btn-block btn-default"
}, },
{ {
"type": "button", "type": "button",
"style": "width:100%;float:left;", "style": "width:100%;float:left;",

View File

@@ -48,8 +48,8 @@ void addItem2(String param) {
seachingLine.replace("id", name + String(rnd)); seachingLine.replace("id", name + String(rnd));
seachingLine.replace("order", String(getNewElementNumber("order.txt"))); seachingLine.replace("order", String(getNewElementNumber("order.txt")));
if (seachingLine.indexOf("pin") != -1) { if (seachingLine.indexOf("gpio") != -1) {
seachingLine.replace("pin", "pin[" + String(getFreePinAll()) + "]"); seachingLine.replace("gpio", "pin[" + String(getFreePinAll()) + "]");
} }
seachingLine = deleteBeforeDelimiter(seachingLine, ";"); seachingLine = deleteBeforeDelimiter(seachingLine, ";");

View File

@@ -171,33 +171,66 @@ void web_init() {
} }
//==============================mqtt settings============================================= //==============================mqtt settings=============================================
if (request->hasArg("mqttServer")) { //primary
jsonWriteStr(configSetupJson, "mqttServer", request->getParam("mqttServer")->value()); if (request->hasArg(F("mqttServer"))) {
jsonWriteStr(configSetupJson, F("mqttServer"), request->getParam(F("mqttServer"))->value());
saveConfig(); saveConfig();
myNotAsyncActions->make(do_MQTTPARAMSCHANGED); myNotAsyncActions->make(do_MQTTPARAMSCHANGED);
request->send(200); request->send(200);
} }
if (request->hasArg("mqttPort")) { if (request->hasArg(F("mqttPort"))) {
int port = (request->getParam("mqttPort")->value()).toInt(); int port = (request->getParam(F("mqttPort"))->value()).toInt();
jsonWriteInt(configSetupJson, "mqttPort", port); jsonWriteInt(configSetupJson, F("mqttPort"), port);
saveConfig(); saveConfig();
myNotAsyncActions->make(do_MQTTPARAMSCHANGED); myNotAsyncActions->make(do_MQTTPARAMSCHANGED);
request->send(200); request->send(200);
} }
if (request->hasArg("mqttPrefix")) { if (request->hasArg(F("mqttPrefix"))) {
jsonWriteStr(configSetupJson, "mqttPrefix", request->getParam("mqttPrefix")->value()); jsonWriteStr(configSetupJson, F("mqttPrefix"), request->getParam(F("mqttPrefix"))->value());
saveConfig(); saveConfig();
myNotAsyncActions->make(do_MQTTPARAMSCHANGED); myNotAsyncActions->make(do_MQTTPARAMSCHANGED);
request->send(200); request->send(200);
} }
if (request->hasArg("mqttUser")) { if (request->hasArg(F("mqttUser"))) {
jsonWriteStr(configSetupJson, "mqttUser", request->getParam("mqttUser")->value()); jsonWriteStr(configSetupJson, F("mqttUser"), request->getParam(F("mqttUser"))->value());
saveConfig(); saveConfig();
myNotAsyncActions->make(do_MQTTPARAMSCHANGED); myNotAsyncActions->make(do_MQTTPARAMSCHANGED);
request->send(200); request->send(200);
} }
if (request->hasArg("mqttPass")) { if (request->hasArg(F("mqttPass"))) {
jsonWriteStr(configSetupJson, "mqttPass", request->getParam("mqttPass")->value()); jsonWriteStr(configSetupJson, F("mqttPass"), request->getParam(F("mqttPass"))->value());
saveConfig();
myNotAsyncActions->make(do_MQTTPARAMSCHANGED);
request->send(200);
}
//secondary
if (request->hasArg(F("mqttServer2"))) {
jsonWriteStr(configSetupJson, F("mqttServer2"), request->getParam(F("mqttServer2"))->value());
saveConfig();
myNotAsyncActions->make(do_MQTTPARAMSCHANGED);
request->send(200);
}
if (request->hasArg(F("mqttPort2"))) {
int port = (request->getParam(F("mqttPort2"))->value()).toInt();
jsonWriteInt(configSetupJson, F("mqttPort2"), port);
saveConfig();
myNotAsyncActions->make(do_MQTTPARAMSCHANGED);
request->send(200);
}
if (request->hasArg(F("mqttPrefix2"))) {
jsonWriteStr(configSetupJson, F("mqttPrefix2"), request->getParam(F("mqttPrefix2"))->value());
saveConfig();
myNotAsyncActions->make(do_MQTTPARAMSCHANGED);
request->send(200);
}
if (request->hasArg(F("mqttUser2"))) {
jsonWriteStr(configSetupJson, F("mqttUser2"), request->getParam(F("mqttUser2"))->value());
saveConfig();
myNotAsyncActions->make(do_MQTTPARAMSCHANGED);
request->send(200);
}
if (request->hasArg(F("mqttPass2"))) {
jsonWriteStr(configSetupJson, F("mqttPass2"), request->getParam(F("mqttPass2"))->value());
saveConfig(); saveConfig();
myNotAsyncActions->make(do_MQTTPARAMSCHANGED); myNotAsyncActions->make(do_MQTTPARAMSCHANGED);
request->send(200); request->send(200);