mirror of
https://github.com/airgradienthq/arduino.git
synced 2025-07-13 07:56:32 +02:00
Reintroduce 'ROOTAPI' so domain and protocol can be configured
eg. setter for api root added as comment in examples/BASIC/BASIC.ino
This commit is contained in:
@ -126,6 +126,9 @@ void setup() {
|
|||||||
openMetrics.setAirGradient(&ag);
|
openMetrics.setAirGradient(&ag);
|
||||||
localServer.setAirGraident(&ag);
|
localServer.setAirGraident(&ag);
|
||||||
|
|
||||||
|
/** Example set custom API root URL */
|
||||||
|
// apiClient.setApiRoot("https://example.custom.api");
|
||||||
|
|
||||||
/** Init sensor */
|
/** Init sensor */
|
||||||
boardInit();
|
boardInit();
|
||||||
|
|
||||||
|
@ -22,6 +22,7 @@ AgApiClient::~AgApiClient() {}
|
|||||||
void AgApiClient::begin(void) {
|
void AgApiClient::begin(void) {
|
||||||
getConfigFailed = false;
|
getConfigFailed = false;
|
||||||
postToServerFailed = false;
|
postToServerFailed = false;
|
||||||
|
logInfo("Init apiRoot: " + apiRoot);
|
||||||
logInfo("begin");
|
logInfo("begin");
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -44,9 +45,8 @@ bool AgApiClient::fetchServerConfiguration(void) {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
String uri =
|
String uri = apiRoot + "/sensors/airgradient:" +
|
||||||
"http://hw.airgradient.com/sensors/airgradient:" + ag->deviceId() +
|
ag->deviceId() + "/one/config";
|
||||||
"/one/config";
|
|
||||||
|
|
||||||
/** Init http client */
|
/** Init http client */
|
||||||
#ifdef ESP8266
|
#ifdef ESP8266
|
||||||
@ -109,9 +109,8 @@ bool AgApiClient::postToServer(String data) {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
String uri =
|
String uri = apiRoot + "/sensors/airgradient:" +
|
||||||
"http://hw.airgradient.com/sensors/airgradient:" + ag->deviceId() +
|
ag->deviceId() + "/measures";
|
||||||
"/measures";
|
|
||||||
logInfo("Post uri: " + uri);
|
logInfo("Post uri: " + uri);
|
||||||
logInfo("Post data: " + data);
|
logInfo("Post data: " + data);
|
||||||
|
|
||||||
@ -177,3 +176,7 @@ bool AgApiClient::sendPing(int rssi, int bootCount) {
|
|||||||
root["boot"] = bootCount;
|
root["boot"] = bootCount;
|
||||||
return postToServer(JSON.stringify(root));
|
return postToServer(JSON.stringify(root));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
String AgApiClient::getApiRoot() const { return apiRoot; }
|
||||||
|
|
||||||
|
void AgApiClient::setApiRoot(const String &apiRoot) { this->apiRoot = apiRoot; }
|
||||||
|
@ -20,6 +20,7 @@ class AgApiClient : public PrintLog {
|
|||||||
private:
|
private:
|
||||||
Configuration &config;
|
Configuration &config;
|
||||||
AirGradient *ag;
|
AirGradient *ag;
|
||||||
|
String apiRoot = "http://hw.airgradient.com";
|
||||||
|
|
||||||
bool getConfigFailed;
|
bool getConfigFailed;
|
||||||
bool postToServerFailed;
|
bool postToServerFailed;
|
||||||
@ -37,6 +38,8 @@ public:
|
|||||||
bool isNotAvailableOnDashboard(void);
|
bool isNotAvailableOnDashboard(void);
|
||||||
void setAirGradient(AirGradient *ag);
|
void setAirGradient(AirGradient *ag);
|
||||||
bool sendPing(int rssi, int bootCount);
|
bool sendPing(int rssi, int bootCount);
|
||||||
|
String getApiRoot() const;
|
||||||
|
void setApiRoot(const String &apiRoot);
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif /** _AG_API_CLIENT_H_ */
|
#endif /** _AG_API_CLIENT_H_ */
|
||||||
|
Reference in New Issue
Block a user