Newer
Older
WebServer restServer(80);
void initializeRoutes() {
restServer.on("/idn", identify);
restServer.onNotFound(notFound);
restServer.begin();
Serial.println("REST Server Started");
}
void identify() {
int seconds = millis() / 1000;
int hours = seconds / 3600;
int minutes = (seconds / 60) % 60;
seconds = seconds % 60;
String message = "{\n";
message += "\"mac\":\"";
message += ETH.macAddress();
message += "\",\n";
message += "\"version\":\"";
message += "0.1"; // TODO: Get from Git
message += "\",\n";
message += "\"uptime\": \"";
message += "\"";
message += "\n}";
restServer.send(200, "text/json", message);
}
void notFound() {
String message = "{\n";
message += "\"uri\":\"";
message += (restServer.method() == HTTP_GET) ? "GET" : "POST";
message += "\",\n\"arguments\":{";
for (uint8_t i = 0; i < restServer.args(); i++) {
message += "\n\"" + restServer.argName(i) + "\":\"" + restServer.arg(i) + "\",";
if (restServer.args() != 0) {
message.remove(message.length()-1); // remove trailing comma for valid json
}
message += "\n}\n}";
restServer.send(404, "text/json", message);
Serial.println(message);
}
void restart() {
restServer.send(200);
ESP.restart();