Phase3 联调链补 relay 启动入口:src/main.rs 调 DefaultRelayServer::start(listen 0.0.0.0:8080,DF_RELAY_ADDR env 覆盖)+ tracing-subscriber 日志。cargo run -p df-relay 启动,提供 /ws/device + /ws/miniapp 端点。cargo check EXIT=0。
22 lines
1.0 KiB
Rust
22 lines
1.0 KiB
Rust
//! 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
|
|
}
|