Remove oneopenair deps from AgApiClient

This commit is contained in:
samuelbles07
2025-03-26 17:43:39 +07:00
parent 859abbe177
commit 4e651afc8c
3 changed files with 16 additions and 17 deletions

View File

@ -27,7 +27,6 @@ CC BY-SA 4.0 Attribution-ShareAlike 4.0 International License
*/ */
#include "AgApiClient.h"
#include "AgConfigure.h" #include "AgConfigure.h"
#include "AgSchedule.h" #include "AgSchedule.h"
#include "AgStateMachine.h" #include "AgStateMachine.h"
@ -91,7 +90,6 @@ CC BY-SA 4.0 Attribution-ShareAlike 4.0 International License
static MqttClient mqttClient(Serial); static MqttClient mqttClient(Serial);
static TaskHandle_t mqttTask = NULL; static TaskHandle_t mqttTask = NULL;
static Configuration configuration(Serial); static Configuration configuration(Serial);
static AgApiClient apiClient(Serial, configuration);
static Measurements measurements(configuration); static Measurements measurements(configuration);
static AirGradient *ag; static AirGradient *ag;
static OledDisplay oledDisplay(configuration, measurements, Serial); static OledDisplay oledDisplay(configuration, measurements, Serial);
@ -99,8 +97,7 @@ static StateMachine stateMachine(oledDisplay, Serial, measurements,
configuration); configuration);
static WifiConnector wifiConnector(oledDisplay, Serial, stateMachine, static WifiConnector wifiConnector(oledDisplay, Serial, stateMachine,
configuration); configuration);
static OpenMetrics openMetrics(measurements, configuration, wifiConnector, static OpenMetrics openMetrics(measurements, configuration, wifiConnector);
apiClient);
static LocalServer localServer(Serial, openMetrics, measurements, configuration, static LocalServer localServer(Serial, openMetrics, measurements, configuration,
wifiConnector); wifiConnector);
static AgSerial *agSerial; static AgSerial *agSerial;
@ -200,7 +197,7 @@ void setup() {
oledDisplay.setAirGradient(ag); oledDisplay.setAirGradient(ag);
stateMachine.setAirGradient(ag); stateMachine.setAirGradient(ag);
wifiConnector.setAirGradient(ag); wifiConnector.setAirGradient(ag);
openMetrics.setAirGradient(ag); openMetrics.setAirGradient(ag, agClient);
localServer.setAirGraident(ag); localServer.setAirGraident(ag);
measurements.setAirGradient(ag); measurements.setAirGradient(ag);
@ -577,7 +574,7 @@ void otaHandlerCallback(AirgradientOTA::OtaResult result, const char *msg) {
displayExecuteOta(result, fwNewVersion, 0); displayExecuteOta(result, fwNewVersion, 0);
break; break;
case AirgradientOTA::InProgress: case AirgradientOTA::InProgress:
Serial.printf("OTA progress: %s", msg); Serial.printf("OTA progress: %s\n", msg);
displayExecuteOta(result, "", std::stoi(msg)); displayExecuteOta(result, "", std::stoi(msg));
break; break;
case AirgradientOTA::Failed: case AirgradientOTA::Failed:

View File

@ -1,13 +1,15 @@
#include "OpenMetrics.h" #include "OpenMetrics.h"
OpenMetrics::OpenMetrics(Measurements &measure, Configuration &config, OpenMetrics::OpenMetrics(Measurements &measure, Configuration &config,
WifiConnector &wifiConnector, AgApiClient &apiClient) WifiConnector &wifiConnector)
: measure(measure), config(config), wifiConnector(wifiConnector), : measure(measure), config(config), wifiConnector(wifiConnector) {}
apiClient(apiClient) {}
OpenMetrics::~OpenMetrics() {} OpenMetrics::~OpenMetrics() {}
void OpenMetrics::setAirGradient(AirGradient *ag) { this->ag = ag; } void OpenMetrics::setAirGradient(AirGradient *ag, AirgradientClient *client) {
this->ag = ag;
this->agClient = client;
}
const char *OpenMetrics::getApiContentType(void) { const char *OpenMetrics::getApiContentType(void) {
return "application/openmetrics-text; version=1.0.0; charset=utf-8"; return "application/openmetrics-text; version=1.0.0; charset=utf-8";
@ -43,13 +45,13 @@ String OpenMetrics::getPayload(void) {
"1 if the AirGradient device was able to successfully fetch its " "1 if the AirGradient device was able to successfully fetch its "
"configuration from the server", "configuration from the server",
"gauge"); "gauge");
add_metric_point("", apiClient.isFetchConfigurationFailed() ? "0" : "1"); add_metric_point("", agClient->isLastFetchConfigSucceed() ? "1" : "0");
add_metric( add_metric(
"post_ok", "post_ok",
"1 if the AirGradient device was able to successfully send to the server", "1 if the AirGradient device was able to successfully send to the server",
"gauge"); "gauge");
add_metric_point("", apiClient.isPostToServerFailed() ? "0" : "1"); add_metric_point("", agClient->isLastPostMeasureSucceed() ? "1" : "0");
add_metric( add_metric(
"wifi_rssi", "wifi_rssi",

View File

@ -5,21 +5,21 @@
#include "AgValue.h" #include "AgValue.h"
#include "AgWiFiConnector.h" #include "AgWiFiConnector.h"
#include "AirGradient.h" #include "AirGradient.h"
#include "AgApiClient.h" #include "Libraries/airgradient-client/src/airgradientClient.h"
class OpenMetrics { class OpenMetrics {
private: private:
AirGradient *ag; AirGradient *ag;
AirgradientClient *agClient;
Measurements &measure; Measurements &measure;
Configuration &config; Configuration &config;
WifiConnector &wifiConnector; WifiConnector &wifiConnector;
AgApiClient &apiClient;
public: public:
OpenMetrics(Measurements &measure, Configuration &conig, OpenMetrics(Measurements &measure, Configuration &config,
WifiConnector &wifiConnector, AgApiClient& apiClient); WifiConnector &wifiConnector);
~OpenMetrics(); ~OpenMetrics();
void setAirGradient(AirGradient *ag); void setAirGradient(AirGradient *ag, AirgradientClient *client);
const char *getApiContentType(void); const char *getApiContentType(void);
const char* getApi(void); const char* getApi(void);
String getPayload(void); String getPayload(void);