putCommand api

This commit is contained in:
2019-08-01 21:35:55 +03:00
parent 25ad9e46cb
commit c0836e005f
4 changed files with 25 additions and 11 deletions

View File

@@ -25,7 +25,7 @@ class QueueManager {
QueueManager();
void init();
void loopRoutine();
uint8_t execQueueNum();
uint8_t execQueueSize();
void putCommand(std::string cmd);
void putCommand(char *cmd);
};

View File

@@ -7,6 +7,7 @@
class WebAPI {
private:
void handleNotFound();
void handlePutCommand();
public:
WebAPI();

View File

@@ -44,4 +44,10 @@ void QueueManager::putCommand(std::string cmd) {
}
}
uint8_t QueueManager::execQueueSize() {
return commandQueue.size();
}
void QueueManager::putCommand(char *cmd) { putCommand(std::string(cmd)); }
QueueManager queueManager;

View File

@@ -1,4 +1,5 @@
#include "WebAPI.h"
#include "QueueManager.h"
ESP8266WebServer server(80);
@@ -8,7 +9,13 @@ void WebAPI::handleNotFound() {
server.send(404, "text/plain", "File Not Found\n\n");
}
void WebAPI::handlePutCommand() {
queueManager.putCommand(server.arg("plain").c_str());
server.send(200, "text/plain", String(queueManager.execQueueSize()));
}
void WebAPI::init() {
server.on("/putCommand", HTTP_POST, std::bind(&WebAPI::handlePutCommand, this));
server.onNotFound(std::bind(&WebAPI::handleNotFound, this));
server.begin();
}