2024-04-03 11:40:46 +07:00
|
|
|
#ifndef _AG_WIFI_CONNECTOR_H_
|
|
|
|
#define _AG_WIFI_CONNECTOR_H_
|
|
|
|
|
|
|
|
#include "AgOledDisplay.h"
|
2024-04-03 21:26:04 +07:00
|
|
|
#include "AirGradient.h"
|
|
|
|
#include "AgStateMachine.h"
|
|
|
|
#include "Main/PrintLog.h"
|
2024-04-03 11:40:46 +07:00
|
|
|
|
2024-04-03 21:26:04 +07:00
|
|
|
#include <Arduino.h>
|
|
|
|
|
|
|
|
class AgWiFiConnector : public PrintLog {
|
2024-04-03 11:40:46 +07:00
|
|
|
private:
|
|
|
|
AirGradient &ag;
|
2024-04-03 21:26:04 +07:00
|
|
|
AgOledDisplay &disp;
|
|
|
|
AgStateMachine &sm;
|
|
|
|
String ssid;
|
|
|
|
void *wifi = NULL;
|
|
|
|
|
|
|
|
bool wifiClientConnected(void);
|
2024-04-03 11:40:46 +07:00
|
|
|
public:
|
2024-04-03 21:26:04 +07:00
|
|
|
AgWiFiConnector(AirGradient &ag, AgOledDisplay &disp, String ssid,
|
|
|
|
Stream &log, AgStateMachine &sm);
|
2024-04-03 11:40:46 +07:00
|
|
|
~AgWiFiConnector();
|
|
|
|
|
2024-04-03 21:26:04 +07:00
|
|
|
void setHotspotSSID(String ssid);
|
|
|
|
bool connect(uint32_t timeout);
|
|
|
|
void _wifiApCallback(void);
|
|
|
|
void _wifiSaveConfig(void);
|
|
|
|
void _wifiSaveParamCallback(void);
|
|
|
|
bool _wifiConfigPortalActive(void);
|
|
|
|
void _wifiProcess();
|
|
|
|
};
|
2024-04-03 11:40:46 +07:00
|
|
|
|
|
|
|
#endif /** _AG_WIFI_CONNECTOR_H_ */
|