fix(proxy-engine): improve inbound SIP routing diagnostics and enrich leg media state reporting

This commit is contained in:
2026-04-14 20:19:34 +00:00
parent 0d82a626b5
commit 88768f0586
46 changed files with 555689 additions and 107 deletions
+17
View File
@@ -313,6 +313,23 @@ impl ProviderManager {
if ps.config.outbound_proxy.address == addr.ip().to_string() {
return Some(ps_arc.clone());
}
// Hostname-based providers (e.g. sipgate.de) often deliver inbound
// INVITEs from resolved IPs rather than the literal configured host.
// Resolve the proxy host and accept any matching IP/port variant.
use std::net::ToSocketAddrs;
if let Ok(resolved) = format!(
"{}:{}",
ps.config.outbound_proxy.address, ps.config.outbound_proxy.port
)
.to_socket_addrs()
{
for resolved_addr in resolved {
if resolved_addr == *addr || resolved_addr.ip() == addr.ip() {
return Some(ps_arc.clone());
}
}
}
}
None
}