diff --git a/.github/workflows/esphome.yml b/.github/workflows/esphome.yml index 4902be0b..850e98a9 100644 --- a/.github/workflows/esphome.yml +++ b/.github/workflows/esphome.yml @@ -103,7 +103,7 @@ jobs: - name: Set up Python uses: actions/setup-python@v6 with: - python-version: '3.11' + python-version: '3.14' - name: Install ESPHome run: | @@ -128,7 +128,7 @@ jobs: - name: Set up Python uses: actions/setup-python@v6 with: - python-version: '3.11' + python-version: '3.14' - name: Install ESPHome run: | diff --git a/components/sip_client/sip_client.cpp b/components/sip_client/sip_client.cpp index 5f9b4ffb..71e1624e 100644 --- a/components/sip_client/sip_client.cpp +++ b/components/sip_client/sip_client.cpp @@ -101,8 +101,13 @@ bool SipClient::open_socket_() { this->socket_->getsockname(reinterpret_cast(&local), &ll); this->local_ip_ = sockaddr_ip(local, &this->local_port_); if (this->local_ip_.empty() || this->local_ip_ == "0.0.0.0") { - char use_address_buf[network::USE_ADDRESS_BUFFER_SIZE]; - this->local_ip_ = network::get_use_address_to(use_address_buf); + for (auto &addr : network::get_ip_addresses()) { + if (addr.is_set() && addr.is_ip4()) { + char ip_buf[network::IP_ADDRESS_BUFFER_SIZE]; + this->local_ip_ = addr.str_to(ip_buf); + break; + } + } } ESP_LOGI(TAG, "SIP socket bound, local %s:%u", this->local_ip_.c_str(), this->local_port_); return true;