Files
SpotMicroESP32-Leika/esp32/include/mdns_service.h
T
Rune Harlyk 780d178e87 Adds event bus
2026-02-01 00:26:02 +01:00

36 lines
861 B
C++

#pragma once
#include <esp_http_server.h>
#include <mdns.h>
#include <event_bus/event_bus.h>
#include <settings/mdns_settings.h>
#include <utils/timing.h>
class MDNSService {
public:
MDNSService();
~MDNSService();
void begin();
esp_err_t getStatus(httpd_req_t *request);
esp_err_t queryServices(httpd_req_t *request, api_Request *protoReq);
esp_err_t getSettings(httpd_req_t *request);
esp_err_t updateSettings(httpd_req_t *request, api_Request *protoReq);
private:
static constexpr const char *TAG = "MDNSService";
void onSettingsChanged(const api_MDNSSettings &newSettings);
MDNSSettings _settings = MDNSSettings_defaults();
EventBus::Handle<api_MDNSSettings> _settingsHandle;
bool _started {false};
void reconfigureMDNS();
void startMDNS();
void stopMDNS();
void addServices();
};