Skip to content

服务端接口

业务服务端对接 TiRTC 云端 tirtc-server-apiTGV1-HMAC-SHA256 鉴权), 为设备侧 TiRtcWhipConnect 签发 WHIP peer_idservice_desc)与 Bearer token

tirtc-server-api 地址:https://api-tirtc.tange365.com

TGV1-HMAC-SHA256 签名

与探鸽云端 OpenAPI 服务端签名一致,详见 服务端API接口签名算法Demo

签发微信VoIP通话凭证:POST /v1/token/wxvoip

用途:根据当前微信VoIP通话会话与设备媒体能力,向探鸽平台申请 peer_idtoken,由业务服务端在 wxa_join_voip_room 中一并下发给设备。

请求

Headers

Header说明
Content-Typeapplication/json
AuthorizationTGV1 鉴权行
X-Tg-Algorithm算法名
X-Tg-Date请求时间(UTC)
X-Tg-App-Id应用 ID,须与凭证 app_id 一致
X-Tg-Content-Sha256请求体 SHA-256(十六进制小写)
X-Tg-Signed-Headers参与签名的头名列表

以上与 TGV1 相关的头:格式与计算见 TGV1-HMAC-SHA256 签名

Body(JSON)

字段类型说明
wx_session_keystring必填。微信 join_voip_room 通知中的 session_key
wx_room_idstring必填。微信通知中的 room_id
wx_session_tokenstring必填。微信通知中的 server_token
wx_app_idstring必填。小程序 appId
device_idstring必填。设备标识,须与下发推送中的设备身份一致
wx_model_idstring必填(示例要求配置)。微信硬件设备的微信VoIP通话模型 ID
wx_payloadstring可选。主叫透传 payload;不传或省略时视为空字符串
calling_timeout_secnumber可选。振铃超时(秒),默认 30
no_videoboolean可选。纯音频时为 true
video_mtstring可选兼容字段;同时设置上下行视频格式:h264 / mjpeg / none。若同时传 up_video_mt/down_video_mt 且不一致,则请求失败
up_video_mtstring设备到微信小程序方向的视频格式:h264 / h265 / mjpeg / none;不要与 video_mt 同时使用
down_video_mtstring微信小程序到设备方向的视频格式:h264 / mjpeg / none;不要与 video_mt 同时使用
screen_width / screen_heightnumber非纯音频时的屏幕宽高
down_audio_mtstring微信小程序到设备方向的音频编码:alaw / amr / opus;不传默认 alaw
audio_ratenumber必填。仅支持 800016000
audio_channelsnumber必填。仅支持 12

业务服务端通常在收到微信 join_voip_room 后,结合微信通知字段与设备事先上报的媒体能力组装上述 JSON。

响应

HTTP 200 且业务成功时,正文为统一包装,示例形态:

json
{
  "code": 0,
  "msg": "ok",
  "data": {
    "peer_id": "whips://wxvoip?x_wx_session_key=...&x_device_id=...",
    "token": "<Bearer token 字符串>"
  }
}
  • code !== 0:表示失败,msg 含说明;勿将无效 peer_id / token 下发给设备。
  • data.peer_id:即 TiRtcWhipConnect(service_desc, ...) 的第一个参数(完整 whips://wxvoip?... URL)。
  • data.token:即 TiRtcWhipConnect(..., token, ...) 的第二个参数。

微信VoIP通话