BitzOrcas 为实时通信定义了 IChatRealtimeAdapter 端口,但使用 NullChatRealtimeAdapter(空操作)作为默认。实时功能尚未实现。
当前状态
public interface IChatRealtimeAdapter{ Task MessageCreatedAsync(ChatMessage message, CancellationToken ct); Task MessageEditedAsync(ChatMessage message, CancellationToken ct); Task MemberJoinedAsync(ChatMember member, CancellationToken ct);}
// 默认:空操作public class NullChatRealtimeAdapter : IChatRealtimeAdapter{ public Task MessageCreatedAsync(...) => Task.CompletedTask; public Task MessageEditedAsync(...) => Task.CompletedTask; public Task MemberJoinedAsync(...) => Task.CompletedTask;}消息已持久化并通过 API 可查询——只是不实时推送。
计划实现
| 技术 | 用途 |
|---|---|
| SignalR | 实时聊天消息推送、输入指示器 |
| Server-Sent Events | 通知收件箱更新 |
| WebSocket | 自定义实时功能 |
架构(计划)
ChatService │ ▼IChatRealtimeAdapter │ ├── SignalR ChatHub (计划中) ├── SSE NotificationStream (计划中) └── WebSocket CustomChannel (计划中)集成考量
- 实时适配器需要连接管理和租户隔离
- WebSocket/SSE 连接必须验证认证令牌
- 高频频道需要背压处理
- 不支持 WebSocket 的环境回退到轮询