保利威文档中心

帮助中心

配置学员提问客户回调地址

更新时间:2026-05-12 09:49:50

接口描述

按账号维度保存或更新「学员提问」成功后,服务端异步 POST 通知的客户地址(Webhook URL)。 学员在聊天室通过 WebSocket 发送 S_QUESTION 且服务端完成入库与广播后,会向该 URL 推送一条 JSON(含签名);客户可在收到后自行调用讲师 HTTP 回复等能力。 接口支持 HTTPS 协议。

接口URL

https://api.polyv.net/live/v5/chat/redirect/channel/student-question-webhook/post

请求方式

POST

接口约束

1、接口同时支持 HTTP、HTTPS,建议使用 HTTPS。
3、**callbackUrl** 须为合法 http / https 完整地址(校验规则与站内 url 类型一致),且需能被聊天服务所在网络访问;保存成功后,同账号下会失效 Redis 缓存,下一次读取走数据库再回写缓存。
4、同一账号仅保留一条配置;重复调用本接口为覆盖更新

请求参数描述

参数名 必选 类型 说明
appId true String 账号appId【详见获取密钥
timestamp true Long 当前13位毫秒级时间戳,3分钟内有效
sign true String 签名,为32位大写的MD5值,生成签名的appSecret密钥作为通信数据安全的关键信息,严禁保存在客户端直接使用,所有API都必须通过客户自己服务器中转调用POLYV服务器获取响应数据【详见签名生成规则
roomId true String 频道号,用于校验该频道是否属于当前账号
callbackUrl true String 客户接收学员提问通知的完整 URL(http 或 https)

示例

请求体 JSON:

{
  "roomId": "412738",
  "callbackUrl": "https://your-server.example.com/api/polyv/student-question"
}

响应体 JSON(成功):

{
  "code": 200,
  "status": "success",
  "message": "保存成功",
  "data": ""
}

响应参数描述

参数名 类型 说明
code Integer 200 成功;400 参数校验失败;500 业务或服务异常
status String success / fail / error
message String 如「保存成功」或错误说明
data String 成功时多为空字符串

配置生效后:服务端对客户的 POST 说明(非本接口,供联调)

当学员 S_QUESTION 成功后,服务端会向已保存的 callbackUrl 发起 POST,**Content-Type: application/json**,主要字段包括:

字段名 说明
accountId 频道所属账号 ID
roomId 频道号
questionId 提问记录 ID
sessionId 场次 ID
viewerUserId 提问观众 userId
content 提问正文(与站内编码规则一致)
msgType 消息类型,文本可为空字符串等
askUser 对象,含 userIdnickpic 等展示字段
timestamp 毫秒时间戳,参与签名
sign 签名:规则与站内 polyvChatSign 一致(首尾拼接密钥,中间为按 key 字典序的 key+value,对象 JSON.stringify),密钥为 **polyvlog**,算法 MD5 大写(与 createApiSign('polyvlog', data) 一致)

客户接口须在响应 JSON 中返回 **code: 200**(number),否则服务端记为通知失败并打错误日志,不重试。

异常示例

参数校验失败(如 callbackUrl 非法):

{
  "code": 400,
  "status": "fail",
  "message": "…(与 checkDataType 返回一致)"
}

roomId 与账号不匹配:

{
  "code": 400,
  "status": "fail",
  "message": "roomId非法"
}

未传 x-auth-user-id

{
  "code": 400,
  "status": "fail",
  "message": "accountId is required"
}

服务端异常:

{
  "code": 500,
  "status": "error",
  "message": "unknown error"
}

(具体 message 以实际为准。)

联系客服,在线咨询