29 lines
1.2 KiB
Rust
29 lines
1.2 KiB
Rust
//! # df-tunnel
|
|
//!
|
|
//! 本地 DevFlow 桌面端出站 WS 隧道客户端(设计文档 Layer1)。
|
|
//!
|
|
//! ## 职责
|
|
//! - 主动连接云后端 df-relay(出站穿 NAT,无需端口映射)
|
|
//! - 事件桥接:桌面端 ai-chat-event 透传至云后端 → 小程序
|
|
//! - 指令路由:接收小程序远程操作 → 调对应 Tauri command
|
|
//!
|
|
//! ## 边界
|
|
//! - 不依赖 src-tauri(TunnelEvent/TunnelCommand 独立定义,避免跨 crate path 引用二进制)
|
|
//! - 不含业务逻辑(Phase2 填充 WS 握手/鉴权/收发循环;断线**自动重连由调用方 supervisor
|
|
//! 负责**,src-tauri 已实现指数退避重连,本 crate 提供 connect/disconnect/is_connected
|
|
//! 原语 + `backoff_delay` 退避工具)
|
|
//!
|
|
//! ## 模块
|
|
//! - [`events`]:隧道透传事件/指令/消息包装类型
|
|
//! - [`tunnel`]:TunnelClient trait + WsTunnelClient 骨架
|
|
//! - [`error`]:TunnelError 错误类型
|
|
|
|
pub mod error;
|
|
pub mod events;
|
|
pub mod tunnel;
|
|
|
|
// 顶层再导出常用项,简化调用方 use
|
|
pub use error::{Result, TunnelError};
|
|
pub use events::{Hello, HelloKind, RelayControlError, TunnelCommand, TunnelEvent, TunnelMessage};
|
|
pub use tunnel::{TunnelClient, WsTunnelClient};
|