//! df-relay binary 入口 — 启动跨端 AI Chat 云中继 axum WS Server。 //! //! 监听 `0.0.0.0:8080`(`DF_RELAY_ADDR` env 覆盖),提供两个 WS 端点: //! - `/ws/device`:桌面端 df-tunnel 连入(Hello device 鉴权) //! - `/ws/miniapp`:小程序连入(按 device_id 配对路由) //! //! 纯转发中继,无业务逻辑。token 校验对齐 `DEFAULT_TOKEN`(relay.rs,可 `DF_RELAY_TOKEN` env 覆盖)。 //! //! 联调启动:`cargo run -p df-relay`(或 `DF_RELAY_ADDR=0.0.0.0:8080 cargo run -p df-relay`)。 use df_relay::{DefaultRelayServer, RelayServer}; #[tokio::main] async fn main() -> df_relay::Result<()> { tracing_subscriber::fmt::init(); // 监听地址:env 覆盖,默认 0.0.0.0:8080(对齐 df-miniapp config.ts relayHost + df-tunnel src-tauri 集成)。 let addr = std::env::var("DF_RELAY_ADDR").unwrap_or_else(|_| "0.0.0.0:8080".to_string()); tracing::info!(%addr, "[df-relay] 启动跨端中继 axum WS Server(/ws/device + /ws/miniapp)"); let server = DefaultRelayServer::new(); server.start(&addr).await }