use resolvematrix::server::MatrixResolver;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let resolver = MatrixResolver::new()?;
let servers = vec![
"matrix.org", "127.0.0.1", "timedout.uk:69", "maunium.net", ];
for server_name in servers {
println!("Server: {server_name}");
match resolver.resolve_server(server_name).await {
Ok(resolution) => {
println!("Base URL: {}", resolution.base_url());
println!("Host SNI: {}", resolution.host);
println!("Destination: {:?}", resolution.destination);
}
Err(e) => {
println!("Failed: {e:?}");
}
}
println!();
}
Ok(())
}