保利威文档中心

幫助中心

配置學員提問客戶回調地址

更新時間: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 以實際為準。)

联系客服,在线咨询