basic webserver
This commit is contained in:
parent
eb3dbcaffc
commit
f94639c1a0
3 changed files with 48 additions and 7 deletions
39
SourceCode/arduino/include/theServer.h
Normal file
39
SourceCode/arduino/include/theServer.h
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
#ifndef THESERVER_H
|
||||||
|
#define THESERVER_H
|
||||||
|
|
||||||
|
#include "WebServer.h"
|
||||||
|
#include "cJSON.h"
|
||||||
|
|
||||||
|
static WebServer server(8080);
|
||||||
|
|
||||||
|
void custom_message_response(const char *message, int response_code)
|
||||||
|
{
|
||||||
|
cJSON *json_response = cJSON_CreateObject();
|
||||||
|
cJSON_AddBoolToObject(json_response, "ok", true);
|
||||||
|
cJSON_AddStringToObject(json_response, "message", message);
|
||||||
|
server.send(response_code, "application/json", cJSON_Print(json_response));
|
||||||
|
cJSON_Delete(json_response);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void getFirewallRules()
|
||||||
|
{
|
||||||
|
custom_message_response("firewall rules..", 200);
|
||||||
|
}
|
||||||
|
|
||||||
|
static void setup_routing()
|
||||||
|
{
|
||||||
|
server.on("/api/v1/firewall", HTTP_GET, getFirewallRules);
|
||||||
|
}
|
||||||
|
|
||||||
|
void setup_server()
|
||||||
|
{
|
||||||
|
setup_routing();
|
||||||
|
server.begin();
|
||||||
|
}
|
||||||
|
|
||||||
|
void handle_server_clients()
|
||||||
|
{
|
||||||
|
server.handleClient();
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif
|
|
@ -5,9 +5,9 @@
|
||||||
#include "WiFi.h"
|
#include "WiFi.h"
|
||||||
#include "theSecrets.h"
|
#include "theSecrets.h"
|
||||||
|
|
||||||
const char *serverIp;
|
const char *esp_ip_address;
|
||||||
|
|
||||||
void connectWifi()
|
void setup_wifi()
|
||||||
{
|
{
|
||||||
log_i("Attempting to connect to WPA SSID: %s", ssid);
|
log_i("Attempting to connect to WPA SSID: %s", ssid);
|
||||||
WiFi.mode(WIFI_STA);
|
WiFi.mode(WIFI_STA);
|
||||||
|
@ -16,8 +16,8 @@ void connectWifi()
|
||||||
{
|
{
|
||||||
delay(1000);
|
delay(1000);
|
||||||
}
|
}
|
||||||
serverIp = WiFi.localIP().toString().c_str();
|
esp_ip_address = WiFi.localIP().toString().c_str();
|
||||||
log_i("Connected, IP Address: %s", serverIp);
|
log_i("Connected, IP Address: %s", esp_ip_address);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -1,12 +1,14 @@
|
||||||
#include <Arduino.h>
|
#include <Arduino.h>
|
||||||
#include "theWifi.h"
|
#include "theWifi.h"
|
||||||
|
#include "theServer.h"
|
||||||
|
|
||||||
void setup()
|
void setup()
|
||||||
{
|
{
|
||||||
connectWifi();
|
setup_wifi();
|
||||||
|
setup_server();
|
||||||
}
|
}
|
||||||
|
|
||||||
void loop()
|
void loop()
|
||||||
{
|
{
|
||||||
// put your main code here, to run repeatedly:
|
handle_server_clients();
|
||||||
}
|
}
|
Reference in a new issue