mirror of
https://github.com/MrUnknownDE/OpenIris-ESPIDF.git
synced 2026-04-19 06:23:44 +02:00
Fix compilation issues, change ProjectConfig into a shared_ptr with updated definitions
// todo implement the API and missing features
This commit is contained in:
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
const char *CAMERA_MANAGER_TAG = "[CAMERA_MANAGER]";
|
const char *CAMERA_MANAGER_TAG = "[CAMERA_MANAGER]";
|
||||||
|
|
||||||
CameraManager::CameraManager(ProjectConfig &projectConfig)
|
CameraManager::CameraManager(std::shared_ptr<ProjectConfig> projectConfig)
|
||||||
: projectConfig(projectConfig) {}
|
: projectConfig(projectConfig) {}
|
||||||
|
|
||||||
void CameraManager::setupCameraPinout()
|
void CameraManager::setupCameraPinout()
|
||||||
@@ -225,7 +225,7 @@ bool CameraManager::setupCamera()
|
|||||||
void CameraManager::loadConfigData()
|
void CameraManager::loadConfigData()
|
||||||
{
|
{
|
||||||
ESP_LOGD(CAMERA_MANAGER_TAG, "Loading camera config data");
|
ESP_LOGD(CAMERA_MANAGER_TAG, "Loading camera config data");
|
||||||
ProjectConfig::CameraConfig_t cameraConfig = projectConfig.getCameraConfig();
|
ProjectConfig::CameraConfig_t cameraConfig = projectConfig->getCameraConfig();
|
||||||
this->setHFlip(cameraConfig.href);
|
this->setHFlip(cameraConfig.href);
|
||||||
this->setVFlip(cameraConfig.vflip);
|
this->setVFlip(cameraConfig.vflip);
|
||||||
this->setCameraResolution((framesize_t)cameraConfig.framesize);
|
this->setCameraResolution((framesize_t)cameraConfig.framesize);
|
||||||
|
|||||||
@@ -20,11 +20,11 @@ class CameraManager
|
|||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
sensor_t *camera_sensor;
|
sensor_t *camera_sensor;
|
||||||
ProjectConfig &projectConfig;
|
std::shared_ptr<ProjectConfig> projectConfig;
|
||||||
camera_config_t config;
|
camera_config_t config;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
CameraManager(ProjectConfig &projectConfigl);
|
CameraManager(std::shared_ptr<ProjectConfig> projectConfigl);
|
||||||
int setCameraResolution(framesize_t frameSize);
|
int setCameraResolution(framesize_t frameSize);
|
||||||
bool setupCamera(); // todo, once we have observers, make it private
|
bool setupCamera(); // todo, once we have observers, make it private
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,13 @@
|
|||||||
#include "CommandManager.hpp"
|
#include "CommandManager.hpp"
|
||||||
|
|
||||||
|
std::unordered_map<std::string, CommandType> commandTypeMap = {
|
||||||
|
{"ping", CommandType::PING},
|
||||||
|
{"set_wifi", CommandType::SET_WIFI},
|
||||||
|
{"update_wifi", CommandType::UPDATE_WIFI},
|
||||||
|
{"delete_network", CommandType::DELETE_NETWORK},
|
||||||
|
{"save_config", CommandType::SAVE_CONFIG},
|
||||||
|
};
|
||||||
|
|
||||||
std::unique_ptr<Command> CommandManager::createCommand(CommandType type)
|
std::unique_ptr<Command> CommandManager::createCommand(CommandType type)
|
||||||
{
|
{
|
||||||
switch (type)
|
switch (type)
|
||||||
|
|||||||
@@ -27,20 +27,13 @@ enum CommandType
|
|||||||
RESTART_DEVICE,
|
RESTART_DEVICE,
|
||||||
};
|
};
|
||||||
|
|
||||||
std::unordered_map<std::string, CommandType> commandTypeMap = {
|
|
||||||
{"ping", CommandType::PING},
|
|
||||||
{"set_wifi", CommandType::SET_WIFI},
|
|
||||||
{"update_wifi", CommandType::UPDATE_WIFI},
|
|
||||||
{"delete_network", CommandType::DELETE_NETWORK},
|
|
||||||
{"save_config", CommandType::SAVE_CONFIG},
|
|
||||||
};
|
|
||||||
|
|
||||||
class CommandManager
|
class CommandManager
|
||||||
{
|
{
|
||||||
ProjectConfig &projectConfig;
|
private:
|
||||||
|
std::shared_ptr<ProjectConfig> projectConfig;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
CommandManager(ProjectConfig &projectConfig) : projectConfig(projectConfig) {};
|
CommandManager(std::shared_ptr<ProjectConfig> projectConfig) : projectConfig(projectConfig) {};
|
||||||
std::unique_ptr<Command> createCommand(CommandType type);
|
std::unique_ptr<Command> createCommand(CommandType type);
|
||||||
|
|
||||||
CommandResult executeFromJson(std::string *json);
|
CommandResult executeFromJson(std::string *json);
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ CommandResult setWiFiCommand::execute(std::string &jsonPayload)
|
|||||||
return CommandResult::getErrorResult("Invalid payload");
|
return CommandResult::getErrorResult("Invalid payload");
|
||||||
}
|
}
|
||||||
auto wifiConfig = payload.value();
|
auto wifiConfig = payload.value();
|
||||||
projectConfig.setWifiConfig(
|
projectConfig->setWifiConfig(
|
||||||
wifiConfig.networkName,
|
wifiConfig.networkName,
|
||||||
wifiConfig.ssid,
|
wifiConfig.ssid,
|
||||||
wifiConfig.password,
|
wifiConfig.password,
|
||||||
@@ -98,7 +98,7 @@ CommandResult deleteWifiCommand::execute(std::string &jsonPayload)
|
|||||||
if (!payload.has_value())
|
if (!payload.has_value())
|
||||||
return CommandResult::getErrorResult("Invalid payload");
|
return CommandResult::getErrorResult("Invalid payload");
|
||||||
|
|
||||||
projectConfig.deleteWifiConfig(payload.value().networkName, false);
|
projectConfig->deleteWifiConfig(payload.value().networkName, false);
|
||||||
return CommandResult::getSuccessResult("Config updated");
|
return CommandResult::getSuccessResult("Config updated");
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -153,7 +153,7 @@ CommandResult updateWifiCommand::execute(std::string &jsonPayload)
|
|||||||
}
|
}
|
||||||
|
|
||||||
auto updatedConfig = payload.value();
|
auto updatedConfig = payload.value();
|
||||||
auto storedNetworks = projectConfig.getWifiConfigs();
|
auto storedNetworks = projectConfig->getWifiConfigs();
|
||||||
if (auto networkToUpdate = std::find_if(
|
if (auto networkToUpdate = std::find_if(
|
||||||
storedNetworks.begin(),
|
storedNetworks.begin(),
|
||||||
storedNetworks.end(),
|
storedNetworks.end(),
|
||||||
@@ -161,7 +161,7 @@ CommandResult updateWifiCommand::execute(std::string &jsonPayload)
|
|||||||
{ return network.name == updatedConfig.networkName; });
|
{ return network.name == updatedConfig.networkName; });
|
||||||
networkToUpdate != storedNetworks.end())
|
networkToUpdate != storedNetworks.end())
|
||||||
{
|
{
|
||||||
projectConfig.setWifiConfig(
|
projectConfig->setWifiConfig(
|
||||||
updatedConfig.networkName,
|
updatedConfig.networkName,
|
||||||
updatedConfig.ssid.has_value() ? updatedConfig.ssid.value() : networkToUpdate->ssid,
|
updatedConfig.ssid.has_value() ? updatedConfig.ssid.value() : networkToUpdate->ssid,
|
||||||
updatedConfig.password.has_value() ? updatedConfig.password.value() : networkToUpdate->password,
|
updatedConfig.password.has_value() ? updatedConfig.password.value() : networkToUpdate->password,
|
||||||
@@ -217,7 +217,7 @@ CommandResult setMDNSCommand::execute(std::string &jsonPayload)
|
|||||||
if (!payload.has_value())
|
if (!payload.has_value())
|
||||||
return CommandResult::getErrorResult("Invalid payload");
|
return CommandResult::getErrorResult("Invalid payload");
|
||||||
|
|
||||||
projectConfig.setMDNSConfig(payload.value().hostname, false);
|
projectConfig->setMDNSConfig(payload.value().hostname, true);
|
||||||
|
|
||||||
return CommandResult::getSuccessResult("Config updated");
|
return CommandResult::getSuccessResult("Config updated");
|
||||||
}
|
}
|
||||||
@@ -260,8 +260,8 @@ CommandResult updateCameraCommand::execute(std::string &jsonPayload)
|
|||||||
}
|
}
|
||||||
auto updatedConfig = payload.value();
|
auto updatedConfig = payload.value();
|
||||||
|
|
||||||
auto oldConfig = projectConfig.getCameraConfig();
|
auto oldConfig = projectConfig->getCameraConfig();
|
||||||
this->projectConfig.setCameraConfig(
|
this->projectConfig->setCameraConfig(
|
||||||
updatedConfig.vflip.has_value() ? updatedConfig.vflip.value() : oldConfig.vflip,
|
updatedConfig.vflip.has_value() ? updatedConfig.vflip.value() : oldConfig.vflip,
|
||||||
updatedConfig.framesize.has_value() ? updatedConfig.framesize.value() : oldConfig.framesize,
|
updatedConfig.framesize.has_value() ? updatedConfig.framesize.value() : oldConfig.framesize,
|
||||||
updatedConfig.href.has_value() ? updatedConfig.href.value() : oldConfig.href,
|
updatedConfig.href.has_value() ? updatedConfig.href.value() : oldConfig.href,
|
||||||
@@ -274,6 +274,6 @@ CommandResult updateCameraCommand::execute(std::string &jsonPayload)
|
|||||||
|
|
||||||
CommandResult saveConfigCommand::execute(std::string &jsonPayload)
|
CommandResult saveConfigCommand::execute(std::string &jsonPayload)
|
||||||
{
|
{
|
||||||
projectConfig.save();
|
projectConfig->save();
|
||||||
return CommandResult::getSuccessResult("Config saved");
|
return CommandResult::getSuccessResult("Config saved");
|
||||||
}
|
}
|
||||||
@@ -24,60 +24,60 @@ public:
|
|||||||
|
|
||||||
class setWiFiCommand : public Command
|
class setWiFiCommand : public Command
|
||||||
{
|
{
|
||||||
ProjectConfig &projectConfig;
|
std::shared_ptr<ProjectConfig> projectConfig;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
setWiFiCommand(ProjectConfig &projectConfig) : projectConfig(projectConfig) {};
|
setWiFiCommand(std::shared_ptr<ProjectConfig> projectConfig) : projectConfig(projectConfig) {};
|
||||||
CommandResult execute(std::string &jsonPayload) override;
|
CommandResult execute(std::string &jsonPayload) override;
|
||||||
std::optional<WifiPayload> parsePayload(std::string &jsonPayload);
|
std::optional<WifiPayload> parsePayload(std::string &jsonPayload);
|
||||||
};
|
};
|
||||||
|
|
||||||
class deleteWifiCommand : public Command
|
class deleteWifiCommand : public Command
|
||||||
{
|
{
|
||||||
ProjectConfig &projectConfig;
|
std::shared_ptr<ProjectConfig> projectConfig;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
deleteWifiCommand(ProjectConfig &projectConfig) : projectConfig(projectConfig) {};
|
deleteWifiCommand(std::shared_ptr<ProjectConfig> projectConfig) : projectConfig(projectConfig) {};
|
||||||
CommandResult execute(std::string &jsonPayload) override;
|
CommandResult execute(std::string &jsonPayload) override;
|
||||||
std::optional<deleteNetworkPayload> parsePayload(std::string &jsonPayload);
|
std::optional<deleteNetworkPayload> parsePayload(std::string &jsonPayload);
|
||||||
};
|
};
|
||||||
|
|
||||||
class updateWifiCommand : public Command
|
class updateWifiCommand : public Command
|
||||||
{
|
{
|
||||||
ProjectConfig &projectConfig;
|
std::shared_ptr<ProjectConfig> projectConfig;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
updateWifiCommand(ProjectConfig &projectConfig) : projectConfig(projectConfig) {};
|
updateWifiCommand(std::shared_ptr<ProjectConfig> projectConfig) : projectConfig(projectConfig) {};
|
||||||
CommandResult execute(std::string &jsonPayload) override;
|
CommandResult execute(std::string &jsonPayload) override;
|
||||||
std::optional<UpdateWifiPayload> parsePayload(std::string &jsonPayload);
|
std::optional<UpdateWifiPayload> parsePayload(std::string &jsonPayload);
|
||||||
};
|
};
|
||||||
|
|
||||||
class updateAPWiFiCommand : public Command
|
class updateAPWiFiCommand : public Command
|
||||||
{
|
{
|
||||||
ProjectConfig &projectConfig;
|
std::shared_ptr<ProjectConfig> projectConfig;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
updateAPWiFiCommand(ProjectConfig &projectConfig) : projectConfig(projectConfig) {};
|
updateAPWiFiCommand(std::shared_ptr<ProjectConfig> projectConfig) : projectConfig(projectConfig) {};
|
||||||
CommandResult execute(std::string &jsonPayload) override;
|
CommandResult execute(std::string &jsonPayload) override;
|
||||||
std::optional<UpdateAPWiFiPayload> parsePayload(std::string &jsonPayload);
|
std::optional<UpdateAPWiFiPayload> parsePayload(std::string &jsonPayload);
|
||||||
};
|
};
|
||||||
|
|
||||||
class setMDNSCommand : public Command
|
class setMDNSCommand : public Command
|
||||||
{
|
{
|
||||||
ProjectConfig &projectConfig;
|
std::shared_ptr<ProjectConfig> projectConfig;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
setMDNSCommand(ProjectConfig &projectConfig) : projectConfig(projectConfig) {};
|
setMDNSCommand(std::shared_ptr<ProjectConfig> projectConfig) : projectConfig(projectConfig) {};
|
||||||
CommandResult execute(std::string &jsonPayload) override;
|
CommandResult execute(std::string &jsonPayload) override;
|
||||||
std::optional<MDNSPayload> parsePayload(std::string &jsonPayload);
|
std::optional<MDNSPayload> parsePayload(std::string &jsonPayload);
|
||||||
};
|
};
|
||||||
|
|
||||||
class updateCameraCommand : public Command
|
class updateCameraCommand : public Command
|
||||||
{
|
{
|
||||||
ProjectConfig &projectConfig;
|
std::shared_ptr<ProjectConfig> projectConfig;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
updateCameraCommand(ProjectConfig &projectConfig) : projectConfig(projectConfig) {};
|
updateCameraCommand(std::shared_ptr<ProjectConfig> projectConfig) : projectConfig(projectConfig) {};
|
||||||
CommandResult execute(std::string &jsonPayload) override;
|
CommandResult execute(std::string &jsonPayload) override;
|
||||||
std::optional<UpdateCameraConfigPayload> parsePayload(std::string &jsonPayload);
|
std::optional<UpdateCameraConfigPayload> parsePayload(std::string &jsonPayload);
|
||||||
};
|
};
|
||||||
@@ -85,8 +85,8 @@ public:
|
|||||||
class saveConfigCommand : public Command
|
class saveConfigCommand : public Command
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
ProjectConfig &projectConfig;
|
std::shared_ptr<ProjectConfig> projectConfig;
|
||||||
saveConfigCommand(ProjectConfig &projectConfig) : projectConfig(projectConfig) {};
|
saveConfigCommand(std::shared_ptr<ProjectConfig> projectConfig) : projectConfig(projectConfig) {};
|
||||||
CommandResult execute(std::string &jsonPayload) override;
|
CommandResult execute(std::string &jsonPayload) override;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
static const char *MDNS_MANAGER_TAG = "[MDNS MANAGER]";
|
static const char *MDNS_MANAGER_TAG = "[MDNS MANAGER]";
|
||||||
|
|
||||||
MDNSManager::MDNSManager(ProjectConfig &projectConfig) : projectConfig(projectConfig) {}
|
MDNSManager::MDNSManager(std::shared_ptr<ProjectConfig> projectConfig) : projectConfig(projectConfig) {}
|
||||||
|
|
||||||
esp_err_t MDNSManager::start()
|
esp_err_t MDNSManager::start()
|
||||||
{
|
{
|
||||||
@@ -17,7 +17,7 @@ esp_err_t MDNSManager::start()
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
auto mdnsConfig = projectConfig.getMDNSConfig();
|
auto mdnsConfig = projectConfig->getMDNSConfig();
|
||||||
result = mdns_hostname_set(mdnsConfig.hostname.c_str());
|
result = mdns_hostname_set(mdnsConfig.hostname.c_str());
|
||||||
if (result != ESP_OK)
|
if (result != ESP_OK)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -11,10 +11,10 @@
|
|||||||
class MDNSManager
|
class MDNSManager
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
ProjectConfig &projectConfig;
|
std::shared_ptr<ProjectConfig> projectConfig;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
MDNSManager(ProjectConfig &projectConfig);
|
MDNSManager(std::shared_ptr<ProjectConfig> projectConfig);
|
||||||
esp_err_t start();
|
esp_err_t start();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
#include "RestAPI.hpp"
|
#include "RestAPI.hpp"
|
||||||
|
|
||||||
RestAPI::RestAPI(std::string url)
|
RestAPI::RestAPI(std::string url, std::shared_ptr<CommandManager> commandManager) : command_manager(commandManager)
|
||||||
{
|
{
|
||||||
this->url = url;
|
this->url = url;
|
||||||
// updates
|
// updates
|
||||||
|
|||||||
@@ -1,7 +1,11 @@
|
|||||||
|
#pragma once
|
||||||
|
#ifndef RESTAPI_HPP
|
||||||
|
#define RESTAPI_HPP
|
||||||
#include <string>
|
#include <string>
|
||||||
#include <memory>
|
#include <memory>
|
||||||
#include <unordered_map>
|
#include <unordered_map>
|
||||||
#include <mongoose.h>
|
#include <mongoose.h>
|
||||||
|
#include <CommandManager.hpp>
|
||||||
|
|
||||||
#include "esp_log.h"
|
#include "esp_log.h"
|
||||||
|
|
||||||
@@ -22,6 +26,7 @@ class RestAPI
|
|||||||
route_map routes;
|
route_map routes;
|
||||||
|
|
||||||
struct mg_mgr mgr;
|
struct mg_mgr mgr;
|
||||||
|
std::shared_ptr<CommandManager> command_manager;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
// updates
|
// updates
|
||||||
@@ -50,7 +55,7 @@ private:
|
|||||||
|
|
||||||
public:
|
public:
|
||||||
// this will also need command manager
|
// this will also need command manager
|
||||||
RestAPI(std::string url);
|
RestAPI(std::string url, std::shared_ptr<CommandManager> command_manager);
|
||||||
void begin();
|
void begin();
|
||||||
void handle_request(struct mg_connection *connection, int event, void *event_data);
|
void handle_request(struct mg_connection *connection, int event, void *event_data);
|
||||||
void poll();
|
void poll();
|
||||||
@@ -59,4 +64,6 @@ public:
|
|||||||
namespace RestAPIHelpers
|
namespace RestAPIHelpers
|
||||||
{
|
{
|
||||||
void event_handler(struct mg_connection *connection, int event, void *event_data);
|
void event_handler(struct mg_connection *connection, int event, void *event_data);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#endif
|
||||||
@@ -36,7 +36,7 @@ void WiFiManagerHelpers::event_handler(void *arg, esp_event_base_t event_base,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
WiFiManager::WiFiManager(ProjectConfig &deviceConfig) : deviceConfig(deviceConfig) {}
|
WiFiManager::WiFiManager(std::shared_ptr<ProjectConfig> deviceConfig) : deviceConfig(deviceConfig) {}
|
||||||
|
|
||||||
void WiFiManager::SetCredentials(const char *ssid, const char *password)
|
void WiFiManager::SetCredentials(const char *ssid, const char *password)
|
||||||
{
|
{
|
||||||
@@ -84,7 +84,7 @@ void WiFiManager::ConnectWithHardcodedCredentials()
|
|||||||
|
|
||||||
void WiFiManager::ConnectWithStoredCredentials()
|
void WiFiManager::ConnectWithStoredCredentials()
|
||||||
{
|
{
|
||||||
auto networks = this->deviceConfig.getWifiConfigs();
|
auto networks = this->deviceConfig->getWifiConfigs();
|
||||||
for (auto network : networks)
|
for (auto network : networks)
|
||||||
{
|
{
|
||||||
xEventGroupClearBits(s_wifi_event_group, WIFI_FAIL_BIT);
|
xEventGroupClearBits(s_wifi_event_group, WIFI_FAIL_BIT);
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ class WiFiManager
|
|||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
uint8_t channel;
|
uint8_t channel;
|
||||||
ProjectConfig &deviceConfig;
|
std::shared_ptr<ProjectConfig> deviceConfig;
|
||||||
wifi_init_config_t _wifi_init_cfg = WIFI_INIT_CONFIG_DEFAULT();
|
wifi_init_config_t _wifi_init_cfg = WIFI_INIT_CONFIG_DEFAULT();
|
||||||
wifi_config_t _wifi_cfg = {};
|
wifi_config_t _wifi_cfg = {};
|
||||||
|
|
||||||
@@ -45,7 +45,7 @@ private:
|
|||||||
void SetupAccessPoint();
|
void SetupAccessPoint();
|
||||||
|
|
||||||
public:
|
public:
|
||||||
WiFiManager(ProjectConfig &deviceConfig);
|
WiFiManager(std::shared_ptr<ProjectConfig> deviceConfig);
|
||||||
void Begin();
|
void Begin();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -17,6 +17,7 @@
|
|||||||
#include <CameraManager.hpp>
|
#include <CameraManager.hpp>
|
||||||
#include <WebSocketLogger.hpp>
|
#include <WebSocketLogger.hpp>
|
||||||
#include <StreamServer.hpp>
|
#include <StreamServer.hpp>
|
||||||
|
#include <CommandManager.hpp>
|
||||||
#include <RestAPI.hpp>
|
#include <RestAPI.hpp>
|
||||||
|
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
@@ -31,12 +32,14 @@ static const char *TAG = "[MAIN]";
|
|||||||
|
|
||||||
WebSocketLogger webSocketLogger;
|
WebSocketLogger webSocketLogger;
|
||||||
|
|
||||||
ProjectConfig deviceConfig("openiris", CONFIG_MDNS_HOSTNAME);
|
auto deviceConfig = std::make_shared<ProjectConfig>("openiris", CONFIG_MDNS_HOSTNAME);
|
||||||
WiFiManager wifiManager(deviceConfig);
|
WiFiManager wifiManager(deviceConfig);
|
||||||
MDNSManager mdnsManager(deviceConfig);
|
MDNSManager mdnsManager(deviceConfig);
|
||||||
CameraManager cameraHandler(deviceConfig);
|
CameraManager cameraHandler(deviceConfig);
|
||||||
StreamServer streamServer(80);
|
StreamServer streamServer(80);
|
||||||
RestAPI restAPI("http://0.0.0.0:81");
|
|
||||||
|
auto commandManager = std::make_shared<CommandManager>(deviceConfig);
|
||||||
|
RestAPI restAPI("http://0.0.0.0:81", commandManager);
|
||||||
|
|
||||||
#ifdef CONFIG_WIRED_MODE
|
#ifdef CONFIG_WIRED_MODE
|
||||||
UVCStreamManager uvcStream;
|
UVCStreamManager uvcStream;
|
||||||
@@ -96,7 +99,7 @@ extern "C" void app_main(void)
|
|||||||
|
|
||||||
esp_log_set_vprintf(&test_log);
|
esp_log_set_vprintf(&test_log);
|
||||||
ledManager.setup();
|
ledManager.setup();
|
||||||
deviceConfig.load();
|
deviceConfig->load();
|
||||||
wifiManager.Begin();
|
wifiManager.Begin();
|
||||||
mdnsManager.start();
|
mdnsManager.start();
|
||||||
restAPI.begin();
|
restAPI.begin();
|
||||||
|
|||||||
Reference in New Issue
Block a user