事件机制
概述
事件 是 TTHSD 内核在各种下载状态变化时向外部应用程序发送的结构化消息通知机制。这些事件采用 键值对 的形式,通过预定义的回调机制实时传递给调用方进行处理。
Event 键值对的格式请去 Event 键值对 格式
Msg 键值对的格式请根据具体事件类型进行处理。
事件触发场景
TTHSD内核会在以下关键场景下触发事件通知:
- 下载任务初始化完成
- 单个文件开始下载
- 下载进度更新
- 单个文件下载完成
- 全部下载任务结束
- 异常错误发生
事件传递方式
事件消息可通过以下两种标准方式传递给调用程序:
1. 本地回调函数( CAPI 方式)
通过 C 语言 API 直接注册的回调函数进行处理
2. 远程回调URL
通过网络协议进行消息传递:
- Socket通信:基于TCP协议的可靠传输
- WebSocket通信:基于WebSocket协议的双向通信
注意事项
- 事件处理应当具备异常容错能力
- 事件分为两个 键值对 :
- event:包含事件类型、唯一标识符等基本信息
- msg:包含事件相关的详细数据,如下载进度、文件路径、错误信息等