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.

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