12 static const char *
const TAG =
"mdns";
17 esp_err_t err = mdns_init();
19 ESP_LOGW(TAG,
"mDNS init failed: %s", esp_err_to_name(err));
24 mdns_hostname_set(this->
hostname_.c_str());
25 mdns_instance_name_set(this->
hostname_.c_str());
27 for (
const auto &service : this->
services_) {
28 std::vector<mdns_txt_item_t> txt_records;
29 for (
const auto &record : service.txt_records) {
32 it.key = strdup(record.key.c_str());
33 it.value = strdup(record.value.c_str());
34 txt_records.push_back(it);
36 err = mdns_service_add(
nullptr, service.service_type.c_str(), service.proto.c_str(), service.port,
37 txt_records.data(), txt_records.size());
40 for (
const auto &it : txt_records) {
46 ESP_LOGW(TAG,
"Failed to register mDNS service %s: %s", service.service_type.c_str(), esp_err_to_name(err));
std::vector< MDNSService > services_
void on_shutdown() override
virtual void mark_failed()
Mark this component as failed.
Implementation of SPI Controller mode.
void IRAM_ATTR HOT delay(uint32_t ms)