|
|
|
@ -3,7 +3,7 @@ |
|
|
|
#include "FastLED.h" |
|
|
|
#include "FastLED.h" |
|
|
|
#include "GyverButton.h" |
|
|
|
#include "GyverButton.h" |
|
|
|
|
|
|
|
|
|
|
|
#define VER "5.91" |
|
|
|
#define VER "5.93" |
|
|
|
|
|
|
|
|
|
|
|
#include "ESP8266WiFi.h" |
|
|
|
#include "ESP8266WiFi.h" |
|
|
|
#include "PubSubClient.h" |
|
|
|
#include "PubSubClient.h" |
|
|
|
@ -343,15 +343,16 @@ void loop() |
|
|
|
static byte vv1 = 0; |
|
|
|
static byte vv1 = 0; |
|
|
|
static byte vv2 = 0; |
|
|
|
static byte vv2 = 0; |
|
|
|
btn(); |
|
|
|
btn(); |
|
|
|
if ((millis() - dot) >= 999)
|
|
|
|
if ((millis() - dot) >= 1000)
|
|
|
|
{ |
|
|
|
{ |
|
|
|
lt = String(light); |
|
|
|
lt = String(light); |
|
|
|
dt = NTP; |
|
|
|
dt = NTP; |
|
|
|
valTime.hour = dt.hour; |
|
|
|
valTime.hour = dt.hour; |
|
|
|
valTime.minute = dt.minute; |
|
|
|
valTime.minute = dt.minute; |
|
|
|
|
|
|
|
_allow = allow(); |
|
|
|
|
|
|
|
|
|
|
|
#ifdef DEBUG |
|
|
|
#ifdef DEBUG |
|
|
|
Serial.printf("%02d:%02d:%02d %02d:%02d:%02d %d\r\n", valTime_on.hour,valTime_on.minute,valTime_on.second,dt.hour,dt.minute,dt.second,_allow); |
|
|
|
Serial.printf("%02d:%02d:%02d %02d:%02d:%02d %d %d %d %d\r\n", valTime_on.hour,valTime_on.minute,valTime_on.second,dt.hour,dt.minute,dt.second,iswd,rd,vd,_allow); |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
// if (dt.hour == valTime_on.hour && dt.minute == valTime_on.minute && dt.second == valTime_on.second && _allow)
|
|
|
|
// if (dt.hour == valTime_on.hour && dt.minute == valTime_on.minute && dt.second == valTime_on.second && _allow)
|
|
|
|
@ -812,16 +813,32 @@ void GP_MY_BLOCK2() |
|
|
|
{ |
|
|
|
{ |
|
|
|
GP.SEND_P(s); |
|
|
|
GP.SEND_P(s); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
void GP_MY_BLOCK1() |
|
|
|
|
|
|
|
{ |
|
|
|
|
|
|
|
String s; |
|
|
|
|
|
|
|
s += F("<script>\n"); |
|
|
|
|
|
|
|
s += F("document.head || (document.head = document.getElementsByTagName('head')[0]);\n"); |
|
|
|
|
|
|
|
s += F("var link = document.createElement('link');\n"); |
|
|
|
|
|
|
|
s += F("link.id = 'dynamic-favicon';\n"); |
|
|
|
|
|
|
|
s += F("link.rel = 'icon';\n"); |
|
|
|
|
|
|
|
s += F("link.href = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAGmSURBVHgBjVNtTsJAEJ3Z1sREIXgCywnkBtgo+ldPAJxAPYFwAuAEwgnEX0bBgDfgBtYTWEETo2zHt1ts+CiGlyxMpzNvZt5siVIgD5kzGWx7yXMve0lroNKcfDrpkt5qSG/3cEZRkEEu90e+EJtUecxUiDlH7neX/a8ACR7paICINonkSThAOaGI3rk0bq4QxCQ7BVLOLbwhAu+I5QXuNk6Ak7Mnoio5vA/SgI8nHU4bwXaj+BqWR+kYItlPOpD7mWCu6yExtiP8s1zMKi+ji5GeETRyoXANgQc20GggUoiHE1qLiPZsaZEwfQSj+HQKPVQjIVwGc42PxvV1BB796C5UN52FtDyGcN2IiC49Xk3GJjQ2EQtoVthBNayTR7A9aNMhJWVynDz7YbhwkaSfKZNWA1gBgn0oXbW6GGhp4XeE2QNocEXTyN7OhECeslgbVZB4blbEpY/hrF2jQcAnkzaS0Q151iYdGq3cOBl71/KKF/6qWFIEScvaysEV10XrLn02aRNgrLeFD6ufuaFNYa72coLd0BzUvwxKQXWnNe+C8sH88y/T07ahJJUsXgAAAABJRU5ErkJggg==' type='image/x-icon';\n"); |
|
|
|
|
|
|
|
s += F("document.head.appendChild(link);\n"); |
|
|
|
|
|
|
|
s += F("</script>\n"); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
GP.SEND(s); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
void build()
|
|
|
|
void build()
|
|
|
|
{ |
|
|
|
{ |
|
|
|
GP.BUILD_BEGIN(F("<link rel='icon' href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAGmSURBVHgBjVNtTsJAEJ3Z1sREIXgCywnkBtgo+ldPAJxAPYFwAuAEwgnEX0bBgDfgBtYTWEETo2zHt1ts+CiGlyxMpzNvZt5siVIgD5kzGWx7yXMve0lroNKcfDrpkt5qSG/3cEZRkEEu90e+EJtUecxUiDlH7neX/a8ACR7paICINonkSThAOaGI3rk0bq4QxCQ7BVLOLbwhAu+I5QXuNk6Ak7Mnoio5vA/SgI8nHU4bwXaj+BqWR+kYItlPOpD7mWCu6yExtiP8s1zMKi+ji5GeETRyoXANgQc20GggUoiHE1qLiPZsaZEwfQSj+HQKPVQjIVwGc42PxvV1BB796C5UN52FtDyGcN2IiC49Xk3GJjQ2EQtoVthBNayTR7A9aNMhJWVynDz7YbhwkaSfKZNWA1gBgn0oXbW6GGhp4XeE2QNocEXTyN7OhECeslgbVZB4blbEpY/hrF2jQcAnkzaS0Q151iYdGq3cOBl71/KKF/6qWFIEScvaysEV10XrLn02aRNgrLeFD6ufuaFNYa72coLd0BzUvwxKQXWnNe+C8sH88y/T07ahJJUsXgAAAABJRU5ErkJggg==' type='image/x-icon' />\n")); |
|
|
|
// GP.BUILD_BEGIN(F("<link rel='icon' href='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAGmSURBVHgBjVNtTsJAEJ3Z1sREIXgCywnkBtgo+ldPAJxAPYFwAuAEwgnEX0bBgDfgBtYTWEETo2zHt1ts+CiGlyxMpzNvZt5siVIgD5kzGWx7yXMve0lroNKcfDrpkt5qSG/3cEZRkEEu90e+EJtUecxUiDlH7neX/a8ACR7paICINonkSThAOaGI3rk0bq4QxCQ7BVLOLbwhAu+I5QXuNk6Ak7Mnoio5vA/SgI8nHU4bwXaj+BqWR+kYItlPOpD7mWCu6yExtiP8s1zMKi+ji5GeETRyoXANgQc20GggUoiHE1qLiPZsaZEwfQSj+HQKPVQjIVwGc42PxvV1BB796C5UN52FtDyGcN2IiC49Xk3GJjQ2EQtoVthBNayTR7A9aNMhJWVynDz7YbhwkaSfKZNWA1gBgn0oXbW6GGhp4XeE2QNocEXTyN7OhECeslgbVZB4blbEpY/hrF2jQcAnkzaS0Q151iYdGq3cOBl71/KKF/6qWFIEScvaysEV10XrLn02aRNgrLeFD6ufuaFNYa72coLd0BzUvwxKQXWnNe+C8sH88y/T07ahJJUsXgAAAABJRU5ErkJggg==' type='image/x-icon' />\n"));
|
|
|
|
|
|
|
|
GP.BUILD_BEGIN(); |
|
|
|
GP.THEME(GP_LIGHT); |
|
|
|
GP.THEME(GP_LIGHT); |
|
|
|
GP.UPDATE("sw,led,bri,eff,rst,rd,vd,valTime_off,valTime_on,valTime"); |
|
|
|
GP.UPDATE("sw,led,bri,eff,rst,rd,vd,valTime_off,valTime_on,valTime"); |
|
|
|
GP.TITLE("Солнышко"); |
|
|
|
GP.TITLE("Солнышко"); |
|
|
|
GP.PAGE_TITLE("Солнышко"); |
|
|
|
GP.PAGE_TITLE("Солнышко"); |
|
|
|
GP.ONLINE_CHECK(); |
|
|
|
GP.ONLINE_CHECK(); |
|
|
|
GP.HR(); |
|
|
|
GP.HR(); |
|
|
|
|
|
|
|
GP_MY_BLOCK1(); |
|
|
|
GP_MY_BLOCK2(); |
|
|
|
GP_MY_BLOCK2(); |
|
|
|
GP.HR(); |
|
|
|
GP.HR(); |
|
|
|
|
|
|
|
|
|
|
|
|