LoRa Access Point 1.5.2018

Dependencies:   mbed ds3231 SX1276Lib_LoRa_Access_Point

Revision:
11:376bfcdda0d4
Parent:
10:e62222c46ee9
--- a/ESP8266.cpp	Thu Mar 28 09:55:48 2019 +0000
+++ b/ESP8266.cpp	Sat May 08 16:23:46 2021 +0000
@@ -22,6 +22,15 @@
     receiveResponse = false;
     setServerIp = false;
     setWifiSettings = false;
+    
+    actualizeTime = false;
+    hour = 0;
+    minute = 0;
+    second = 0;
+    dayOfWeek = 0;
+    date = 0;
+    month = 0;
+    year = 0;  
 };
 
 
@@ -34,6 +43,15 @@
     receiveResponse = false;
     setServerIp = false;
     setWifiSettings = false;
+    
+    actualizeTime = false;
+    hour = 0;
+    minute = 0;
+    second = 0;
+    dayOfWeek = 0;
+    date = 0;
+    month = 0;
+    year = 0;  
 };
 
 
@@ -67,6 +85,11 @@
 
             if (strstr(buffer, "0|") != NULL)
                 rfm.SendMessage(buffer);
+/*                
+            if (strstr(buffer, "~TIME~") != NULL)
+                convert_time();
+*/
+
 
             /*
                        if( strncmp( ( const char* )_responseBuf, "+IPD,", 5 ) == 0 )
@@ -133,9 +156,10 @@
 void ESP8266::SendMessage(char message[])
 {
 //    pc.printf("%.19s  ", ctime(&epoch_time));
-    pc.printf("%s",actual_time);
-    pc.printf("%s",message);
-    wifiUart.printf("%s",message);
+//    pc.printf("%s",actual_time);
+//    pc.printf("%s",rtcClock.GetTime());
+    pc.printf("%s\r\n",message);
+    wifiUart.printf("%s\r\n",message);
 };
 
 void ESP8266::CheckSettings()
@@ -191,3 +215,90 @@
     printf("ATTTTTTTTTTT");
     wait(0.2);
 };
+
+void ESP8266::convert_time()
+{
+    pc.printf("%s\r\n", buffer);
+    char * pch;
+    uint8_t state=0;
+    pch = strtok (buffer,DELIMITER);
+    while (pch != NULL) {
+        switch(state) {
+            case 0 :
+                wifi.dayOfWeek=atoi(pch);
+                wifi.dayOfWeek++;
+                state=1;
+//                pc.printf("converted day of week : %d  \r\n",dayOfWeek);
+                break;
+                
+            case 1 :
+                wifi.date=atoi(pch);
+                state=2;
+//                pc.printf("converted date : %d  \r\n",date);
+                break;
+
+            case 2 :
+                wifi.month=atoi(pch);
+                state=3;
+                break;
+
+            case 3 :
+                wifi.year=atoi(pch);
+                state=4;
+                break;
+
+            case 4 :
+                wifi.hour=atoi(pch);
+                state=5;
+                break;
+
+            case 5 :
+                wifi.minute=atoi(pch);
+                state=6;
+                break;
+
+            case 6 :
+                wifi.second=atoi(pch);
+                state=7;
+                break;
+
+            default:
+                state=7;
+                break;
+        }
+        pch = strtok (NULL, DELIMITER);
+    }
+    actualizeTime = true ;
+    
+};
+
+void ESP8266::getServerDateTime(int *w, int *d, int *mo, int *y, int *h, int *m, int *s)
+{
+/*
+    *w = wifi.dayOfWeek;
+    *d = wifi.date;
+    *mo = month;
+    *y = year;
+    *h = hour;
+    *m = minute;
+    *s = second;
+*/
+    *w = wifi.dayOfWeek;
+    *d = wifi.date;
+    *mo = wifi.month;
+    *y = wifi.year;
+    *h = wifi.hour;
+    *m = wifi.minute;
+    *s = wifi.second;
+
+};
+
+bool ESP8266::actualizeActualTime()
+{
+    if(actualizeTime)
+    {
+        actualizeTime = false;
+        return true;
+    }
+    return false;
+};