  void ManageTime(){
   // restart the date process:
      if (!date.running())  {
      date.begin("date");
      date.addParameter("+%T,%u");
      date.run();
    }
    
  // -----------------------------------------------------------------------------------------------
    // KEEP THE TIME Up To Date
    if ((date.available()>0 && NetworkUpdateTime_ms + 300000 < millis()) || !DateSet) {
      UpdateNetworkTime();
      NetworkUpdateTime_ms = millis();
      CurrentTime_SOD = Network_SOD;
      DateSet = 1;
    }
    else
    {
      CurrentTime_SOD = Network_SOD + (millis() - NetworkUpdateTime_ms)/1000;
      CurrentTime_SOD = CurrentTime_SOD%((unsigned long)3600*24);
    } 
  }


