mirror of
https://github.com/IoTManagerProject/IoTManager.git
synced 2026-03-26 14:12:16 +03:00
iot manager 2.0 support
This commit is contained in:
89
Cmd.ino
89
Cmd.ino
@@ -18,9 +18,8 @@ void CMD_init() {
|
||||
|
||||
sCmd.addCommand("logging", logging);
|
||||
|
||||
sCmd.addCommand("input", input);
|
||||
sCmd.addCommand("valueUpSet", valueUpSet);
|
||||
sCmd.addCommand("valueDownSet", valueDownSet);
|
||||
sCmd.addCommand("inputDigit", inputDigit);
|
||||
sCmd.addCommand("digitSet", digitSet);
|
||||
|
||||
|
||||
|
||||
@@ -42,8 +41,7 @@ void CMD_init() {
|
||||
|
||||
//======новые виджеты ver2.0=======//
|
||||
|
||||
sCmd.addCommand("inputNumber", inputNumber);
|
||||
sCmd.addCommand("inputNumberSet", inputNumberSet);
|
||||
|
||||
|
||||
sCmd.addCommand("inputText", inputText);
|
||||
sCmd.addCommand("inputTextSet", inputTextSet);
|
||||
@@ -62,23 +60,7 @@ void CMD_init() {
|
||||
//=================================//
|
||||
}
|
||||
|
||||
void inputNumber() {
|
||||
String number = sCmd.next();
|
||||
String viget_name = sCmd.next();
|
||||
viget_name.replace("#", " ");
|
||||
String page_name = sCmd.next();
|
||||
page_name.replace("#", " ");
|
||||
String start_state = sCmd.next();
|
||||
String page_number = sCmd.next();
|
||||
jsonWrite(configJson, "inputNumberSet" + number, start_state);
|
||||
createViget (viget_name, page_name, page_number, "vigets/viget.inputNumber.json", "inputNumberSet" + number);
|
||||
}
|
||||
void inputNumberSet() {
|
||||
String number = sCmd.next();
|
||||
String value = sCmd.next();
|
||||
jsonWrite(configJson, "inputNumberSet" + number, value);
|
||||
sendSTATUS("inputNumberSet" + number, value);
|
||||
}
|
||||
|
||||
|
||||
void inputText() {
|
||||
String number = sCmd.next();
|
||||
@@ -301,63 +283,24 @@ void handleButton() {
|
||||
|
||||
//=====================================================================================================================================
|
||||
//=========================================Добавление окна ввода переменной============================================================
|
||||
void input() {
|
||||
|
||||
String name_ = sCmd.next();
|
||||
String number = name_.substring(5);
|
||||
String start_value = sCmd.next();
|
||||
String step_ = sCmd.next();
|
||||
void inputDigit() {
|
||||
String value_name = sCmd.next();
|
||||
String number = value_name.substring(5);
|
||||
String viget_name = sCmd.next();
|
||||
viget_name.replace("#", " ");
|
||||
String page_name = sCmd.next();
|
||||
page_name.replace("#", " ");
|
||||
String start_state = sCmd.next();
|
||||
String page_number = sCmd.next();
|
||||
|
||||
int psn1 = start_value.indexOf("."); //ищем позицию запятой
|
||||
int digits = 0;
|
||||
if (psn1 != -1) { //если она есть
|
||||
String last_part = deleteBeforeDelimiter(start_value, ".");
|
||||
digits = last_part.length() + 1;
|
||||
}
|
||||
|
||||
createViget ("", page_name, page_number, "vigets/viget.button.json", "valueDownSet" + number, "title", "-");
|
||||
createViget (value_name, page_name, String(page_number.toInt() + 1), "vigets/viget.alertbg.json", name_);
|
||||
createViget ("", page_name, String(page_number.toInt() + 2), "vigets/viget.button.json", "valueUpSet" + number , "title", "+");
|
||||
|
||||
//jsonWrite(valuesJson, name_, start_value);
|
||||
//saveValues ();
|
||||
sendSTATUS(name_, start_value);
|
||||
|
||||
jsonWrite(configJson, name_ + "step", step_);
|
||||
jsonWrite(configJson, name_ + "digits", digits);
|
||||
jsonWrite(configJson, "digitSet" + number, start_state);
|
||||
createViget (viget_name, page_name, page_number, "vigets/viget.inputNum.json", "digitSet" + number);
|
||||
}
|
||||
|
||||
void valueUpSet() {
|
||||
void digitSet() {
|
||||
String number = sCmd.next();
|
||||
float val = jsonRead(configJson, "value" + number).toFloat();
|
||||
float step_ = jsonRead(configJson, "value" + number + "step").toFloat();
|
||||
int digits = jsonRead(configJson, "value" + number + "digits").toInt();
|
||||
val = val + step_;
|
||||
String val_str = String(val);
|
||||
val_str = selectToMarkerPlus (val_str, ".", digits);
|
||||
jsonWrite(configJson, "value" + number, val_str);
|
||||
//jsonWrite(valuesJson, "value" + number, val_str);
|
||||
//saveValues ();
|
||||
sendSTATUS("value" + number, val_str);
|
||||
String value = sCmd.next();
|
||||
jsonWrite(configJson, "digitSet" + number, value);
|
||||
sendSTATUS("digitSet" + number, value);
|
||||
}
|
||||
|
||||
void valueDownSet() {
|
||||
String number = sCmd.next();
|
||||
float val = jsonRead(configJson, "value" + number).toFloat();
|
||||
float step_ = jsonRead(configJson, "value" + number + "step").toFloat();
|
||||
int digits = jsonRead(configJson, "value" + number + "digits").toInt();
|
||||
val = val - step_;
|
||||
String val_str = String(val);
|
||||
val_str = selectToMarkerPlus (val_str, ".", digits);
|
||||
jsonWrite(configJson, "value" + number, val_str);
|
||||
//jsonWrite(valuesJson, "value" + number, val_str);
|
||||
//saveValues ();
|
||||
sendSTATUS("value" + number, val_str);
|
||||
}
|
||||
|
||||
//=====================================================================================================================================
|
||||
//=========================================Добавление текстового виджета============================================================
|
||||
void text() {
|
||||
|
||||
41
Scenario.ino
41
Scenario.ino
@@ -13,26 +13,20 @@ void handleScenario() {
|
||||
if (tmp == "") return;
|
||||
i++;
|
||||
|
||||
if (scenario_line_status[i] == 1) {
|
||||
if (scenario_line_status[i] == 1) {
|
||||
//Serial.println(i);
|
||||
String condition = selectToMarker (tmp, "\n"); //выделяем первую строку самого сценария button1 = 1 (условие)
|
||||
String param_name = selectFromMarkerToMarker(condition, " " , 0); //из первой страки берем имя параметра button1 и вставляем в него Set и получаем buttonSet1
|
||||
String num1 = param_name.substring(param_name.length() - 1);
|
||||
String num2 = param_name.substring(param_name.length() - 2, param_name.length() - 1);
|
||||
if (isDigitStr(num1) && isDigitStr(num2)) {
|
||||
param_name = param_name.substring(0, param_name.length() - 2) + "Set" + num2 + num1;
|
||||
} else {
|
||||
if (isDigitStr(num1)) {
|
||||
param_name = param_name.substring(0, param_name.length() - 1) + "Set" + num1;
|
||||
}
|
||||
} //преобразуем из button1 в вид buttonSet1 ,param_name = buttonSet1
|
||||
String param_name = selectFromMarkerToMarker(condition, " " , 0);
|
||||
|
||||
param_name = add_set(param_name); //из первой страки берем имя параметра button1 и вставляем в него Set и получаем buttonSet1
|
||||
|
||||
String order = jsonRead(optionJson, "scenario_status"); //читаем весь файл событий
|
||||
String param = selectToMarker (order, ","); //читаем первое событие из файла событий
|
||||
if (param_name == param) { //если поступившее событие равно событию заданному buttonSet1 в файле начинаем его обработку
|
||||
|
||||
String sign = selectFromMarkerToMarker(condition, " " , 1); //читаем знак (=)
|
||||
String value = selectFromMarkerToMarker(condition, " " , 2); //читаем значение (1)
|
||||
if (value.indexOf("value") != -1) {
|
||||
if (value.indexOf("digit") != -1) {
|
||||
value = add_set(value);
|
||||
value = jsonRead(configJson, value);
|
||||
}
|
||||
boolean flag = false; //если одно из значений совпало то только тогда начинаем выполнять комнады
|
||||
@@ -43,16 +37,16 @@ void handleScenario() {
|
||||
if (jsonRead(configJson, param_name) != value) flag = true;
|
||||
}
|
||||
if (sign == "<") {
|
||||
if (jsonRead(configJson, param_name).toFloat() < value.toFloat()) flag = true;
|
||||
if (jsonRead(configJson, param_name).toInt() < value.toInt()) flag = true;
|
||||
}
|
||||
if (sign == ">") {
|
||||
if (jsonRead(configJson, param_name).toFloat() > value.toFloat()) flag = true;
|
||||
if (jsonRead(configJson, param_name).toInt() > value.toInt()) flag = true;
|
||||
}
|
||||
if (sign == ">=") {
|
||||
if (jsonRead(configJson, param_name).toFloat() >= value.toFloat()) flag = true;
|
||||
if (jsonRead(configJson, param_name).toInt() >= value.toInt()) flag = true;
|
||||
}
|
||||
if (sign == "<=") {
|
||||
if (jsonRead(configJson, param_name).toFloat() <= value.toFloat()) flag = true;
|
||||
if (jsonRead(configJson, param_name).toInt() <= value.toInt()) flag = true;
|
||||
}
|
||||
|
||||
if (flag) {
|
||||
@@ -83,3 +77,16 @@ void eventGen (String event_name, String number) { //событие выгля
|
||||
jsonWrite(optionJson, "scenario_status", tmp + event_name + number + ",");
|
||||
}
|
||||
}
|
||||
|
||||
String add_set(String param_name) {
|
||||
String num1 = param_name.substring(param_name.length() - 1);
|
||||
String num2 = param_name.substring(param_name.length() - 2, param_name.length() - 1);
|
||||
if (isDigitStr(num1) && isDigitStr(num2)) {
|
||||
param_name = param_name.substring(0, param_name.length() - 2) + "Set" + num2 + num1;
|
||||
} else {
|
||||
if (isDigitStr(num1)) {
|
||||
param_name = param_name.substring(0, param_name.length() - 1) + "Set" + num1;
|
||||
}
|
||||
}
|
||||
return param_name;
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
//=========================================Модуль аналогового сенсора============================================================
|
||||
void analog() {
|
||||
static boolean flag = true;
|
||||
String pin = sCmd.next();
|
||||
String viget_name = sCmd.next();
|
||||
String page_name = sCmd.next();
|
||||
String type = sCmd.next();
|
||||
@@ -22,7 +23,7 @@ void analog() {
|
||||
|
||||
static int analog_old;
|
||||
|
||||
int analog_in = analogRead(A0);
|
||||
int analog_in = analogRead(pin.toInt());
|
||||
jsonWrite(configJson, "analog_in", analog_in);
|
||||
|
||||
int analog = map(analog_in,
|
||||
|
||||
@@ -48,7 +48,8 @@ void timerStart() {
|
||||
String period_of_time = sCmd.next();
|
||||
String type = sCmd.next();
|
||||
|
||||
if (period_of_time.indexOf("value") != -1) {
|
||||
if (period_of_time.indexOf("digit") != -1) {
|
||||
period_of_time = add_set(period_of_time);
|
||||
period_of_time = jsonRead(configJson, period_of_time);
|
||||
}
|
||||
|
||||
|
||||
@@ -219,4 +219,3 @@ void onWsEvent(AsyncWebSocket * server, AsyncWebSocketClient * client, AwsEventT
|
||||
}
|
||||
}
|
||||
#endif
|
||||
//===================================================================================================================================
|
||||
|
||||
77
WiFi.ino
77
WiFi.ino
@@ -73,19 +73,6 @@ void WIFI_init() {
|
||||
}
|
||||
|
||||
bool StartAPMode() {
|
||||
/*
|
||||
Serial.println("WiFi up AP");
|
||||
IPAddress apIP(192, 168, 4, 1);
|
||||
IPAddress staticGateway(192, 168, 4, 1);
|
||||
IPAddress staticSubnet(255, 255, 255, 0);
|
||||
WiFi.disconnect();
|
||||
WiFi.mode(WIFI_AP);
|
||||
WiFi.softAPConfig(apIP, staticGateway, staticSubnet);
|
||||
String _ssidAP = jsonRead(configSetup, "ssidAP");
|
||||
String _passwordAP = jsonRead(configSetup, "passwordAP");
|
||||
WiFi.softAP(_ssidAP.c_str(), _passwordAP.c_str());
|
||||
jsonWrite(configJson, "ip", apIP.toString());
|
||||
*/
|
||||
Serial.println("WiFi up AP");
|
||||
WiFi.disconnect();
|
||||
|
||||
@@ -114,11 +101,19 @@ bool StartAPMode() {
|
||||
|
||||
boolean RouterFind(String ssid) {
|
||||
int n = WiFi.scanComplete ();
|
||||
Serial.println("n = " + String(n));
|
||||
if (n == -2) { //Сканирование не было запущено, запускаем
|
||||
Serial.println("[WIFI][i] scanning has not been triggered, starting scanning");
|
||||
WiFi.scanNetworks (true, false); //async, show_hidden
|
||||
return false;
|
||||
}
|
||||
if (n == -1) { //Сканирование все еще выполняется
|
||||
Serial.println("[WIFI][i] scanning still in progress");
|
||||
return false;
|
||||
}
|
||||
if (n == 0) { //Сканирование все еще выполняется
|
||||
Serial.println("[WIFI][i] no any wifi sations, starting scanning");
|
||||
WiFi.scanNetworks (true, false);
|
||||
return false;
|
||||
}
|
||||
if (n > 0) {
|
||||
@@ -131,58 +126,16 @@ boolean RouterFind(String ssid) {
|
||||
Serial.print(")");
|
||||
Serial.print(ssid);
|
||||
Serial.print("<=>");
|
||||
Serial.println(WiFi.SSID(i));
|
||||
if (i == n) {
|
||||
Serial.print(WiFi.SSID(i));
|
||||
Serial.println("; ");
|
||||
} else {
|
||||
Serial.print(WiFi.SSID(i));
|
||||
Serial.print("; ");
|
||||
}
|
||||
}
|
||||
}
|
||||
WiFi.scanDelete();
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
boolean RouterFind(String ssid) {
|
||||
|
||||
int n = WiFi.scanComplete();
|
||||
|
||||
Serial.print("status=");
|
||||
Serial.println(n);
|
||||
|
||||
if (n == -2) { //Сканирование не было запущено, запускаем
|
||||
Serial.println("->enter to scanning function");
|
||||
WiFi.mode(WIFI_AP);
|
||||
WiFi.scanNetworks (true, false, false, 5000); //async, show_hidden
|
||||
Serial.println("->out of scanning function");
|
||||
return false;
|
||||
|
||||
}
|
||||
if (n == -1) { //Сканирование все еще выполняется
|
||||
Serial.println("->scanning in progress");
|
||||
return false;
|
||||
|
||||
}
|
||||
if (n > 0) { //Найдено несколько сетей
|
||||
for (int i = 0; i <= n; i++) {
|
||||
if (WiFi.SSID(i) == ssid) {
|
||||
Serial.println("router found");
|
||||
WiFi.scanDelete();
|
||||
return true;
|
||||
} else {
|
||||
Serial.print(i);
|
||||
Serial.print(")");
|
||||
Serial.print(ssid);
|
||||
Serial.print("<=>");
|
||||
Serial.println(WiFi.SSID(i));
|
||||
}
|
||||
}
|
||||
WiFi.scanDelete();
|
||||
Serial.println("->scanning deleted");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
void wifi_reset() {
|
||||
WiFi.mode(WIFI_STA);
|
||||
WiFi.disconnect(true, true);
|
||||
}
|
||||
*/
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
inputNumber 1 Температура#максимальная moscow 60 1
|
||||
inputNumber 2 Температура#минимальная moscow 30 2
|
||||
inputText 1 Введите#текст moscow привет 3
|
||||
inputTime 1 Введите#время moscow 12.00 4
|
||||
inputDate 1 Введите#дату novorossiysk 10-01-2020 5
|
||||
button 1 na Включить#все Освещение 0 6
|
||||
analog Аналоговый#вход,#% Датчики progress-line 1 1024 1 1024 6
|
||||
button 1 na Включить#все Освещение 0 1
|
||||
button 2 13 Прихожая Освещение 0 2
|
||||
button 3 14 Кухня Освещение 0 3
|
||||
pwm 1 3 Яркость#коредор: Освещение 1023 4
|
||||
pwm 2 4 Яркость#ванная: Освещение 510 5
|
||||
analog 0 Аналоговый#вход,#% Датчики progress-round 1 1024 1 1024 6
|
||||
button 4 na вкл:#>10,##выкл:#<10 Датчики 0 7
|
||||
inputDigit digit1 введите#число Датчики 10 8
|
||||
@@ -1,7 +1,16 @@
|
||||
inputNumber 1 Температура#максимальная moscow 60 1
|
||||
inputNumber 2 Температура#минимальная moscow 30 2
|
||||
inputText 1 Введите#текст moscow привет 3
|
||||
inputTime 1 Введите#время moscow 12.00 4
|
||||
inputDate 1 Введите#дату novorossiysk 10-01-2020 5
|
||||
button 1 na Включить#все Освещение 0 6
|
||||
analog Аналоговый#вход,#% Датчики progress-line 1 1024 1 1024 7
|
||||
button1 = 1
|
||||
buttonSet 2 1
|
||||
buttonSet 3 1
|
||||
pwmSet 2 1024
|
||||
end
|
||||
button1 = 0
|
||||
buttonSet 2 0
|
||||
buttonSet 3 0
|
||||
pwmSet 2 0
|
||||
end
|
||||
analog > digit1
|
||||
buttonSet 4 1
|
||||
end
|
||||
analog < digit1
|
||||
buttonSet 4 0
|
||||
end
|
||||
@@ -1,12 +0,0 @@
|
||||
{
|
||||
"id" : "",
|
||||
"page" : "",
|
||||
"widget" : "anydata",
|
||||
"class1": "col-xs-4 text-center",
|
||||
"class2": "stable",
|
||||
"style2": "font-size:12px;float:center;",
|
||||
"class3":"stable",
|
||||
"style3": "font-size:25px;float:center;font-weight:bold;",
|
||||
"descr" : "",
|
||||
"topic" : ""
|
||||
}
|
||||
@@ -1,12 +0,0 @@
|
||||
{
|
||||
"id" : "",
|
||||
"page" : "",
|
||||
"widget" : "anydata",
|
||||
"class1" : "item col-xs-12 text-center",
|
||||
"class2": "ballanced",
|
||||
"style2": "font-size:20px;float:left;font-weight:bold;",
|
||||
"class3":"ballanced",
|
||||
"style3": "font-size:17px;float:right;",
|
||||
"descr" : "",
|
||||
"topic" : ""
|
||||
}
|
||||
@@ -1,18 +0,0 @@
|
||||
{
|
||||
"id": "",
|
||||
"pageId":"",
|
||||
"page": "",
|
||||
"widget": "simple-btn",
|
||||
"class1": "col-xs-4 text-center",
|
||||
"class2": "ballanced",
|
||||
"style2": "font-size:15px;float:left;font-weight:bold;",
|
||||
"topic": "",
|
||||
"class3": "button button-block",
|
||||
"style3": "float:right;",
|
||||
"widgetConfig": {
|
||||
"fill": "#F5F5F5",
|
||||
"fillPressed": "#4169E1",
|
||||
"title": "-",
|
||||
"delay":500
|
||||
}
|
||||
}
|
||||
@@ -1,13 +0,0 @@
|
||||
{
|
||||
"id" : "",
|
||||
"pageId": "",
|
||||
"widget" : "chart",
|
||||
"topic" : "",
|
||||
"widgetConfig": {
|
||||
|
||||
"maxCount": 200,
|
||||
"type": "line",
|
||||
"height": 200
|
||||
|
||||
}
|
||||
}
|
||||
@@ -1,23 +0,0 @@
|
||||
{
|
||||
"id": "",
|
||||
"page": "",
|
||||
"pageId": "",
|
||||
"widget": "fillgauge",
|
||||
"descr": "",
|
||||
"class2": "text-center ballanced",
|
||||
"style2": "font-size:25px;font-weight:bold;padding-top:10px;padding-bottom:10px;",
|
||||
"class3" : "text-center",
|
||||
"style3": "padding-top:10px;padding-bottom:10px;",
|
||||
"topic": "",
|
||||
"width": "250px",
|
||||
"height": "250px",
|
||||
"widgetConfig": {
|
||||
"circleColor": "#228B22",
|
||||
"textColor": "#FFFFFF",
|
||||
"waveTextColor": "#050000",
|
||||
"waveColor": "#40E0D0",
|
||||
"circleThickness": 0.05,
|
||||
"textVertPosition": 0.5,
|
||||
"waveAnimateTime": 500
|
||||
}
|
||||
}
|
||||
@@ -1,18 +0,0 @@
|
||||
{
|
||||
"id" : "",
|
||||
"pageId": "",
|
||||
"widget" : "gauge",
|
||||
"topic" : "",
|
||||
"class1" : "item no-border no-padding text-center",
|
||||
"descr" : "",
|
||||
"widgetConfig" : {
|
||||
"type" : "full",
|
||||
"cap" : "round",
|
||||
"append" : "",
|
||||
"size" : 300,
|
||||
"thick" : 20,
|
||||
"maximum": 1024,
|
||||
"color" : "#11c1f3",
|
||||
"backgroundColor": "rgba(0,0,0, 0.2)"
|
||||
}
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"id" : "5",
|
||||
"widget" : "input",
|
||||
"topic" : "",
|
||||
descr : "",
|
||||
size : "small",
|
||||
color : "orange",
|
||||
type : "number",
|
||||
status : 321
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
{
|
||||
"id": "",
|
||||
"pageId": "",
|
||||
"descr": "",
|
||||
"class1": "col-xs-3 text-center",
|
||||
"page": "",
|
||||
"widget": "steel",
|
||||
"topic": "",
|
||||
"widgetConfig": {
|
||||
"width": 60,
|
||||
"height": 60,
|
||||
"type": "Led",
|
||||
"blink": false,
|
||||
"LedColor": "RED_LED"
|
||||
}
|
||||
}
|
||||
@@ -1,13 +0,0 @@
|
||||
{
|
||||
"id": "",
|
||||
"page": "",
|
||||
"descr": "",
|
||||
"widget": "range",
|
||||
"class3": "ballanced",
|
||||
"style3": "font-size:25px;float:left;font-weight:bold;",
|
||||
"topic": "",
|
||||
"widgetConfig": {
|
||||
"maxValue": 1023,
|
||||
"minValue": 0
|
||||
}
|
||||
}
|
||||
@@ -1,13 +0,0 @@
|
||||
{
|
||||
"id" : "1",
|
||||
"page" : "",
|
||||
"pageId":"",
|
||||
"widget" : "anydata",
|
||||
"class1" : "item rounded text-center no-padding",
|
||||
"class2": "ballanced",
|
||||
"style2": "",
|
||||
"class3":"ballanced",
|
||||
"style3": "font-size:10px;float:right;",
|
||||
"descr" : "",
|
||||
"topic" : ""
|
||||
}
|
||||
@@ -1,15 +0,0 @@
|
||||
{
|
||||
"id": "",
|
||||
"page": "",
|
||||
"pageId": "",
|
||||
"widget": "steel",
|
||||
"topic": "/DS",
|
||||
"widgetConfig": {
|
||||
"width": "auto",
|
||||
"height": 150,
|
||||
"type": "Linear",
|
||||
"titleString": "Спальня",
|
||||
"unitString": "°C",
|
||||
"threshold": 30
|
||||
}
|
||||
}
|
||||
@@ -1,11 +0,0 @@
|
||||
{
|
||||
"id": "",
|
||||
"page": "",
|
||||
"pageId": "",
|
||||
"widget": "toggle",
|
||||
"descrStyle": "font-size:20px;float:left;font-weight:bold;",
|
||||
"descrStyleOff": "font-size:20px;float:left;",
|
||||
"color": "#8997ff",
|
||||
"descr": "",
|
||||
"topic": ""
|
||||
}
|
||||
@@ -7,5 +7,6 @@
|
||||
"color" : "#45ccce",
|
||||
"background": "#777",
|
||||
"before" : "",
|
||||
"semicircle" : "1",
|
||||
"after" : ""
|
||||
}
|
||||
@@ -3,7 +3,7 @@
|
||||
"descrColor": "red",
|
||||
"after" : "%",
|
||||
"k" : 0.0977,
|
||||
"min" : 10,
|
||||
"max" : 90,
|
||||
"min" : 0,
|
||||
"max" : 100,
|
||||
"debounce": 500
|
||||
}
|
||||
@@ -1,6 +1,5 @@
|
||||
{
|
||||
"widget" : "toggle",
|
||||
"icon" : "sunny",
|
||||
"iconOff" : "moon",
|
||||
|
||||
"iconOff" : "moon"
|
||||
}
|
||||
@@ -23,6 +23,7 @@ void setup() {
|
||||
#ifdef ESP8266
|
||||
chipID = String( ESP.getChipId() ) + "-" + String( ESP.getFlashChipId());
|
||||
jsonWrite(configSetup, "chipID", chipID);
|
||||
Serial.setDebugOutput(0);
|
||||
#endif
|
||||
|
||||
prex = prefix + "/" + chipID;
|
||||
|
||||
3
mqtt.ino
3
mqtt.ino
@@ -222,11 +222,12 @@ void sendAllWigets() {
|
||||
|
||||
psn_2 = all_vigets.indexOf("\r\n", psn_1);
|
||||
line = all_vigets.substring(psn_1, psn_2);
|
||||
line.replace("\n", "");
|
||||
line.replace("\r\n", "");
|
||||
//jsonWrite(line, "id", String(counter));
|
||||
//jsonWrite(line, "pageId", String(counter));
|
||||
counter++;
|
||||
sendMQTT("config", line);
|
||||
sendMQTT("config",line);
|
||||
Serial.println("[V] " + line);
|
||||
psn_1 = psn_2 + 1;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user