mirror of
				https://github.com/esphome/esphome.git
				synced 2025-10-31 15:12:06 +00:00 
			
		
		
		
	Merge branch 'integration' into memory_api
This commit is contained in:
		
							
								
								
									
										2
									
								
								Doxyfile
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								Doxyfile
									
									
									
									
									
								
							| @@ -48,7 +48,7 @@ PROJECT_NAME           = ESPHome | ||||
| # could be handy for archiving the generated documentation or if some version | ||||
| # control system is used. | ||||
|  | ||||
| PROJECT_NUMBER         = 2025.10.0-dev | ||||
| PROJECT_NUMBER         = 2025.11.0-dev | ||||
|  | ||||
| # Using the PROJECT_BRIEF tag one can provide an optional one line description | ||||
| # for a project that appears at the top of each page and should give viewer a | ||||
|   | ||||
| @@ -31,38 +31,10 @@ static const char *const TAG = "mdns"; | ||||
| #endif | ||||
|  | ||||
| // Define all constant strings using the macro | ||||
| MDNS_STATIC_CONST_CHAR(SERVICE_ESPHOMELIB, "_esphomelib"); | ||||
| MDNS_STATIC_CONST_CHAR(SERVICE_TCP, "_tcp"); | ||||
| MDNS_STATIC_CONST_CHAR(SERVICE_PROMETHEUS, "_prometheus-http"); | ||||
| MDNS_STATIC_CONST_CHAR(SERVICE_HTTP, "_http"); | ||||
|  | ||||
| MDNS_STATIC_CONST_CHAR(TXT_FRIENDLY_NAME, "friendly_name"); | ||||
| MDNS_STATIC_CONST_CHAR(TXT_VERSION, "version"); | ||||
| MDNS_STATIC_CONST_CHAR(TXT_MAC, "mac"); | ||||
| MDNS_STATIC_CONST_CHAR(TXT_PLATFORM, "platform"); | ||||
| MDNS_STATIC_CONST_CHAR(TXT_BOARD, "board"); | ||||
| MDNS_STATIC_CONST_CHAR(TXT_NETWORK, "network"); | ||||
| MDNS_STATIC_CONST_CHAR(TXT_API_ENCRYPTION, "api_encryption"); | ||||
| MDNS_STATIC_CONST_CHAR(TXT_API_ENCRYPTION_SUPPORTED, "api_encryption_supported"); | ||||
| MDNS_STATIC_CONST_CHAR(TXT_PROJECT_NAME, "project_name"); | ||||
| MDNS_STATIC_CONST_CHAR(TXT_PROJECT_VERSION, "project_version"); | ||||
| MDNS_STATIC_CONST_CHAR(TXT_PACKAGE_IMPORT_URL, "package_import_url"); | ||||
|  | ||||
| MDNS_STATIC_CONST_CHAR(PLATFORM_ESP8266, "ESP8266"); | ||||
| MDNS_STATIC_CONST_CHAR(PLATFORM_ESP32, "ESP32"); | ||||
| MDNS_STATIC_CONST_CHAR(PLATFORM_RP2040, "RP2040"); | ||||
|  | ||||
| MDNS_STATIC_CONST_CHAR(NETWORK_WIFI, "wifi"); | ||||
| MDNS_STATIC_CONST_CHAR(NETWORK_ETHERNET, "ethernet"); | ||||
| MDNS_STATIC_CONST_CHAR(NETWORK_THREAD, "thread"); | ||||
|  | ||||
| // Wrap build-time defines into flash storage | ||||
| MDNS_STATIC_CONST_CHAR(VALUE_VERSION, ESPHOME_VERSION); | ||||
| MDNS_STATIC_CONST_CHAR(VALUE_BOARD, ESPHOME_BOARD); | ||||
| #ifdef ESPHOME_PROJECT_NAME | ||||
| MDNS_STATIC_CONST_CHAR(VALUE_PROJECT_NAME, ESPHOME_PROJECT_NAME); | ||||
| MDNS_STATIC_CONST_CHAR(VALUE_PROJECT_VERSION, ESPHOME_PROJECT_VERSION); | ||||
| #endif | ||||
|  | ||||
| void MDNSComponent::compile_records_() { | ||||
|   this->hostname_ = App.get_name(); | ||||
| @@ -71,6 +43,15 @@ void MDNSComponent::compile_records_() { | ||||
|   // in mdns/__init__.py. If you add a new service here, update both locations. | ||||
|  | ||||
| #ifdef USE_API | ||||
|   MDNS_STATIC_CONST_CHAR(SERVICE_ESPHOMELIB, "_esphomelib"); | ||||
|   MDNS_STATIC_CONST_CHAR(TXT_FRIENDLY_NAME, "friendly_name"); | ||||
|   MDNS_STATIC_CONST_CHAR(TXT_VERSION, "version"); | ||||
|   MDNS_STATIC_CONST_CHAR(TXT_MAC, "mac"); | ||||
|   MDNS_STATIC_CONST_CHAR(TXT_PLATFORM, "platform"); | ||||
|   MDNS_STATIC_CONST_CHAR(TXT_BOARD, "board"); | ||||
|   MDNS_STATIC_CONST_CHAR(TXT_NETWORK, "network"); | ||||
|   MDNS_STATIC_CONST_CHAR(VALUE_BOARD, ESPHOME_BOARD); | ||||
|  | ||||
|   if (api::global_api_server != nullptr) { | ||||
|     auto &service = this->services_.emplace_next(); | ||||
|     service.service_type = MDNS_STR(SERVICE_ESPHOMELIB); | ||||
| @@ -111,10 +92,13 @@ void MDNSComponent::compile_records_() { | ||||
|     txt_records.push_back({MDNS_STR(TXT_MAC), MDNS_STR(this->add_dynamic_txt_value(get_mac_address()))}); | ||||
|  | ||||
| #ifdef USE_ESP8266 | ||||
|     MDNS_STATIC_CONST_CHAR(PLATFORM_ESP8266, "ESP8266"); | ||||
|     txt_records.push_back({MDNS_STR(TXT_PLATFORM), MDNS_STR(PLATFORM_ESP8266)}); | ||||
| #elif defined(USE_ESP32) | ||||
|     MDNS_STATIC_CONST_CHAR(PLATFORM_ESP32, "ESP32"); | ||||
|     txt_records.push_back({MDNS_STR(TXT_PLATFORM), MDNS_STR(PLATFORM_ESP32)}); | ||||
| #elif defined(USE_RP2040) | ||||
|     MDNS_STATIC_CONST_CHAR(PLATFORM_RP2040, "RP2040"); | ||||
|     txt_records.push_back({MDNS_STR(TXT_PLATFORM), MDNS_STR(PLATFORM_RP2040)}); | ||||
| #elif defined(USE_LIBRETINY) | ||||
|     txt_records.push_back({MDNS_STR(TXT_PLATFORM), MDNS_STR(lt_cpu_get_model_name())}); | ||||
| @@ -123,14 +107,19 @@ void MDNSComponent::compile_records_() { | ||||
|     txt_records.push_back({MDNS_STR(TXT_BOARD), MDNS_STR(VALUE_BOARD)}); | ||||
|  | ||||
| #if defined(USE_WIFI) | ||||
|     MDNS_STATIC_CONST_CHAR(NETWORK_WIFI, "wifi"); | ||||
|     txt_records.push_back({MDNS_STR(TXT_NETWORK), MDNS_STR(NETWORK_WIFI)}); | ||||
| #elif defined(USE_ETHERNET) | ||||
|     MDNS_STATIC_CONST_CHAR(NETWORK_ETHERNET, "ethernet"); | ||||
|     txt_records.push_back({MDNS_STR(TXT_NETWORK), MDNS_STR(NETWORK_ETHERNET)}); | ||||
| #elif defined(USE_OPENTHREAD) | ||||
|     MDNS_STATIC_CONST_CHAR(NETWORK_THREAD, "thread"); | ||||
|     txt_records.push_back({MDNS_STR(TXT_NETWORK), MDNS_STR(NETWORK_THREAD)}); | ||||
| #endif | ||||
|  | ||||
| #ifdef USE_API_NOISE | ||||
|     MDNS_STATIC_CONST_CHAR(TXT_API_ENCRYPTION, "api_encryption"); | ||||
|     MDNS_STATIC_CONST_CHAR(TXT_API_ENCRYPTION_SUPPORTED, "api_encryption_supported"); | ||||
|     MDNS_STATIC_CONST_CHAR(NOISE_ENCRYPTION, "Noise_NNpsk0_25519_ChaChaPoly_SHA256"); | ||||
|     bool has_psk = api::global_api_server->get_noise_ctx()->has_psk(); | ||||
|     const char *encryption_key = has_psk ? TXT_API_ENCRYPTION : TXT_API_ENCRYPTION_SUPPORTED; | ||||
| @@ -138,11 +127,16 @@ void MDNSComponent::compile_records_() { | ||||
| #endif | ||||
|  | ||||
| #ifdef ESPHOME_PROJECT_NAME | ||||
|     MDNS_STATIC_CONST_CHAR(TXT_PROJECT_NAME, "project_name"); | ||||
|     MDNS_STATIC_CONST_CHAR(TXT_PROJECT_VERSION, "project_version"); | ||||
|     MDNS_STATIC_CONST_CHAR(VALUE_PROJECT_NAME, ESPHOME_PROJECT_NAME); | ||||
|     MDNS_STATIC_CONST_CHAR(VALUE_PROJECT_VERSION, ESPHOME_PROJECT_VERSION); | ||||
|     txt_records.push_back({MDNS_STR(TXT_PROJECT_NAME), MDNS_STR(VALUE_PROJECT_NAME)}); | ||||
|     txt_records.push_back({MDNS_STR(TXT_PROJECT_VERSION), MDNS_STR(VALUE_PROJECT_VERSION)}); | ||||
| #endif  // ESPHOME_PROJECT_NAME | ||||
|  | ||||
| #ifdef USE_DASHBOARD_IMPORT | ||||
|     MDNS_STATIC_CONST_CHAR(TXT_PACKAGE_IMPORT_URL, "package_import_url"); | ||||
|     txt_records.push_back( | ||||
|         {MDNS_STR(TXT_PACKAGE_IMPORT_URL), MDNS_STR(dashboard_import::get_package_import_url().c_str())}); | ||||
| #endif | ||||
| @@ -150,6 +144,8 @@ void MDNSComponent::compile_records_() { | ||||
| #endif  // USE_API | ||||
|  | ||||
| #ifdef USE_PROMETHEUS | ||||
|   MDNS_STATIC_CONST_CHAR(SERVICE_PROMETHEUS, "_prometheus-http"); | ||||
|  | ||||
|   auto &prom_service = this->services_.emplace_next(); | ||||
|   prom_service.service_type = MDNS_STR(SERVICE_PROMETHEUS); | ||||
|   prom_service.proto = MDNS_STR(SERVICE_TCP); | ||||
| @@ -157,6 +153,8 @@ void MDNSComponent::compile_records_() { | ||||
| #endif | ||||
|  | ||||
| #ifdef USE_WEBSERVER | ||||
|   MDNS_STATIC_CONST_CHAR(SERVICE_HTTP, "_http"); | ||||
|  | ||||
|   auto &web_service = this->services_.emplace_next(); | ||||
|   web_service.service_type = MDNS_STR(SERVICE_HTTP); | ||||
|   web_service.proto = MDNS_STR(SERVICE_TCP); | ||||
| @@ -164,6 +162,9 @@ void MDNSComponent::compile_records_() { | ||||
| #endif | ||||
|  | ||||
| #if !defined(USE_API) && !defined(USE_PROMETHEUS) && !defined(USE_WEBSERVER) && !defined(USE_MDNS_EXTRA_SERVICES) | ||||
|   MDNS_STATIC_CONST_CHAR(SERVICE_HTTP, "_http"); | ||||
|   MDNS_STATIC_CONST_CHAR(TXT_VERSION, "version"); | ||||
|  | ||||
|   // Publish "http" service if not using native API or any other services | ||||
|   // This is just to have *some* mDNS service so that .local resolution works | ||||
|   auto &fallback_service = this->services_.emplace_next(); | ||||
|   | ||||
| @@ -4,7 +4,7 @@ from enum import Enum | ||||
|  | ||||
| from esphome.enum import StrEnum | ||||
|  | ||||
| __version__ = "2025.10.0-dev" | ||||
| __version__ = "2025.11.0-dev" | ||||
|  | ||||
| ALLOWED_NAME_CHARS = "abcdefghijklmnopqrstuvwxyz0123456789-_" | ||||
| VALID_SUBSTITUTIONS_CHARACTERS = ( | ||||
|   | ||||
		Reference in New Issue
	
	Block a user