架构与接入模型
一次连接分为“业务授权”和“设备建连”两个阶段。
角色与职责
| 角色 | 职责 |
|---|---|
| 业务服务端 | 校验业务请求;生成 peer_id;向指定设备签发长期委托 Token |
| 探鸽平台 | 实时音视频传输平台 |
| 设备端 | 从业务服务端取得凭证;调用 TiRtcWhipConnect;采集和播放媒体 |
| WHIP Service | 验证 Bearer Token;处理 SDP;维护连接资源;实现业务媒体逻辑 |
服务注册
部署前,请向探鸽智能提供以下信息以注册服务:
- 全局唯一的
service_name。 - 至少一对 Access Key ID 和 Ed25519 公钥。Ed25519 私钥由客户生成并保存在业务服务端。连接过程中,业务服务端使用私钥签发 Token,探鸽平台使用公钥验证 Token。
- 每个目标 Region 的公网 WHIP 地址,按设备能力使用 HTTP 或 HTTPS。
可注册的 Region:
| Region | 区域 |
|---|---|
cn01 | 中国大陆 |
na01 | 美洲 |
ea01 | 亚洲 |
we01 | 欧洲 |
注册完成后,探鸽智能会返回确认后的 service_name、Access Key ID、接入 Region。
设备侧联调还需要 device_id 和 device_secret_key,请联系探鸽技术支持获取。
服务地址需要可被对应 Region 的设备访问。
peer_id
peer_id 标识设备要连接的服务及业务参数:
text
whips://{service_name}?{query}查询参数必须使用标准 URL 编码,总长度不得超过 2048 字节。TiRTC 将查询参数透传到 WHIP Service;不要在其中放置密码、私钥或长期凭证。
连接 Token
业务服务端校验设备的访问权限后,使用 Ed25519 私钥签发连接 Token,并与 peer_id 一起下发给指定设备。Token 绑定设备 ID、服务名和完整 Query;设备只能用于对应的连接,并可在有效期内用于断线重连。
WHIP Service 使用已注册的公钥验证 Token。签发私钥只保存在业务服务端,不得下发到设备或 WHIP Service。签发方法见业务服务端签发连接参数。
服务端 SDK 分层
认证策略与 WHIP 接受流程相互独立。应用验证创建资源的 POST 后,再调用 WhipAcceptor。普通业务会话的 HTTP 资源由应用管理;Echo 会话可交给 whipecho 管理。