Fork of the excellent esp8266-react - https://github.com/rjwats/esp8266-react
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

99 lines
2.2 KiB

  1. #ifndef ESP8266React_h
  2. #define ESP8266React_h
  3. #include <Arduino.h>
  4. #ifdef ESP32
  5. #include <AsyncTCP.h>
  6. #include <SPIFFS.h>
  7. #include <WiFi.h>
  8. #elif defined(ESP8266)
  9. #include <ESP8266WiFi.h>
  10. #include <ESPAsyncTCP.h>
  11. #include <FS.h>
  12. #endif
  13. #include <APSettingsService.h>
  14. #include <APStatus.h>
  15. #include <AuthenticationService.h>
  16. #include <FactoryResetService.h>
  17. #include <MqttSettingsService.h>
  18. #include <MqttStatus.h>
  19. #include <NTPSettingsService.h>
  20. #include <NTPStatus.h>
  21. #include <OTASettingsService.h>
  22. #include <RestartService.h>
  23. #include <SecuritySettingsService.h>
  24. #include <SystemStatus.h>
  25. #include <WiFiScanner.h>
  26. #include <WiFiSettingsService.h>
  27. #include <WiFiStatus.h>
  28. #ifdef PROGMEM_WWW
  29. #include <WWWData.h>
  30. #endif
  31. class ESP8266React {
  32. public:
  33. ESP8266React(AsyncWebServer* server, FS* fs);
  34. void begin();
  35. void loop();
  36. SecurityManager* getSecurityManager() {
  37. return &_securitySettingsService;
  38. }
  39. StatefulService<SecuritySettings>* getSecuritySettingsService() {
  40. return &_securitySettingsService;
  41. }
  42. StatefulService<WiFiSettings>* getWiFiSettingsService() {
  43. return &_wifiSettingsService;
  44. }
  45. StatefulService<APSettings>* getAPSettingsService() {
  46. return &_apSettingsService;
  47. }
  48. StatefulService<NTPSettings>* getNTPSettingsService() {
  49. return &_ntpSettingsService;
  50. }
  51. StatefulService<OTASettings>* getOTASettingsService() {
  52. return &_otaSettingsService;
  53. }
  54. StatefulService<MqttSettings>* getMqttSettingsService() {
  55. return &_mqttSettingsService;
  56. }
  57. AsyncMqttClient* getMqttClient() {
  58. return _mqttSettingsService.getMqttClient();
  59. }
  60. void factoryReset() {
  61. _factoryResetService.factoryReset();
  62. }
  63. private:
  64. SecuritySettingsService _securitySettingsService;
  65. WiFiSettingsService _wifiSettingsService;
  66. APSettingsService _apSettingsService;
  67. NTPSettingsService _ntpSettingsService;
  68. OTASettingsService _otaSettingsService;
  69. MqttSettingsService _mqttSettingsService;
  70. RestartService _restartService;
  71. FactoryResetService _factoryResetService;
  72. AuthenticationService _authenticationService;
  73. WiFiScanner _wifiScanner;
  74. WiFiStatus _wifiStatus;
  75. NTPStatus _ntpStatus;
  76. APStatus _apStatus;
  77. MqttStatus _mqttStatus;
  78. SystemStatus _systemStatus;
  79. };
  80. #endif