mirror of
https://github.com/Lemonochrme/clover.git
synced 2025-06-08 16:50:50 +02:00
Boilerplate server handling
This commit is contained in:
parent
df84f6ba00
commit
0b15719ce5
5 changed files with 73 additions and 4 deletions
5
.vscode/settings.json
vendored
Normal file
5
.vscode/settings.json
vendored
Normal file
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
"files.associations": {
|
||||
"string": "cpp"
|
||||
}
|
||||
}
|
37
lib/ServerHandler/ServerHandler.cpp
Normal file
37
lib/ServerHandler/ServerHandler.cpp
Normal file
|
@ -0,0 +1,37 @@
|
|||
#include "ServerHandler.hpp"
|
||||
|
||||
ServerHandler::ServerHandler() : server(80) {
|
||||
}
|
||||
|
||||
void ServerHandler::setup(const char* ssid, const char* password) { // On utilise les scope resolution operator pour définir les méthodes la classe ServerHandle qui elle est dans hpp
|
||||
Serial.begin(9600);
|
||||
WiFi.begin(ssid, password);
|
||||
|
||||
while (WiFi.status() != WL_CONNECTED) {
|
||||
delay(500);
|
||||
Serial.print(".");
|
||||
}
|
||||
|
||||
Serial.println("");
|
||||
Serial.println("Connected to Wi-Fi. IP address: ");
|
||||
Serial.println(WiFi.localIP());
|
||||
|
||||
server.begin();
|
||||
server.on("/", [this]() { this->sendDataToServer("Hello World!"); }); // fonction lamda pour gérer les requettes get
|
||||
}
|
||||
|
||||
void ServerHandler::loop() {
|
||||
server.handleClient();
|
||||
}
|
||||
|
||||
int ServerHandler::readSensorData() {
|
||||
return 123;
|
||||
}
|
||||
|
||||
void ServerHandler::sendDataToServer(char * data) {
|
||||
server.send(200, "text/plain", data);
|
||||
}
|
||||
|
||||
void ServerHandler::handleRoot() {
|
||||
server.send(200, "text/plain", "Sensor Data: " + String(readSensorData()));
|
||||
}
|
20
lib/ServerHandler/ServerHandler.hpp
Normal file
20
lib/ServerHandler/ServerHandler.hpp
Normal file
|
@ -0,0 +1,20 @@
|
|||
#ifndef SERVERHANDLER_HPP
|
||||
#define SERVERHANDLER_HPP
|
||||
|
||||
#include <ESP8266WiFi.h>
|
||||
#include <ESP8266WebServer.h>
|
||||
|
||||
class ServerHandler {
|
||||
public:
|
||||
ServerHandler();
|
||||
void setup(const char* ssid, const char* password);
|
||||
void loop();
|
||||
|
||||
private:
|
||||
ESP8266WebServer server;
|
||||
int readSensorData();
|
||||
void sendDataToServer(char * data);
|
||||
void handleRoot();
|
||||
};
|
||||
|
||||
#endif
|
|
@ -12,3 +12,5 @@
|
|||
platform = espressif8266
|
||||
board = nodemcuv2
|
||||
framework = arduino
|
||||
lib_deps = tzapu/WiFiManager@^0.16.0
|
||||
bbx10/DNSServer@^1.1.0
|
||||
|
|
11
src/main.cpp
11
src/main.cpp
|
@ -1,10 +1,15 @@
|
|||
#include <Arduino.h>
|
||||
#include <ESP8266WiFi.h>
|
||||
#include <ESP8266WebServer.h>
|
||||
|
||||
#include "ServerHandler.hpp"
|
||||
|
||||
ServerHandler serverHandler;
|
||||
|
||||
void setup() {
|
||||
Serial.begin(9600);
|
||||
serverHandler.setup("Redmi Note 10", "bbooksdd");
|
||||
}
|
||||
|
||||
void loop() {
|
||||
delay(1000);
|
||||
Serial.println("Hello World!");
|
||||
serverHandler.loop();
|
||||
}
|
Loading…
Add table
Reference in a new issue