微信小程序直播異常狀態(tài)獲取方式
微信小程序直播異常狀態(tài)獲取方式,【獲取直播狀態(tài)】接口(注:若要使用該接口,需在主包/分包先引入直播組件)
接口說明:首次獲取立馬返回直播狀態(tài),往后間隔1分鐘或更慢的頻率去輪詢獲取直播狀態(tài)
直播狀態(tài)說明:
101 直播中:表示主播正常開播,直播正常的狀態(tài)
102 未開始:表示主播還未開播
103 已結(jié)束:表示在直播端點擊【結(jié)束】按鈕正常關(guān)閉的直播,或直播異常 15 分鐘后系統(tǒng)強制結(jié)束的直播
104 禁播:表示因違規(guī)受到運營處罰被禁播
105 暫停中:表示在 MP 小程序后臺-控制臺內(nèi)操作暫停了直播
106 異常:表示主播離開、切后臺、斷網(wǎng)等情況,該直播被判定為異常狀態(tài),15 分鐘內(nèi)恢復(fù)即可回到正常直播中的狀態(tài);如果 15 分鐘后還未恢復(fù),直播間會被系統(tǒng)強制結(jié)束直播
107 已過期:表示直播間一直未開播,且已達到在 MP 小程序后臺創(chuàng)建直播間時填寫的直播計劃結(jié)束時間,則該直播被判定為過期不能再開播
調(diào)用方法:若要調(diào)用【獲取直播狀態(tài)】接口 getLiveStatus,需在小程序頁面頂部引用【直播組件】 live-player-plugin。
示例代碼如下:
let livePlayer = requirePlugin('live-player-plugin')
// 首次獲取立馬返回直播狀態(tài)
const roomId = xxx // 房間 id
livePlayer.getLiveStatus({ room_id: roomId })
.then(res => {
// 101: 直播中, 102: 未開始, 103: 已結(jié)束, 104: 禁播, 105: 暫停中, 106: 異常,107:已過期
const liveStatus = res.liveStatus
console.log('get live status', liveStatus)
})
.catch(err => {
console.log('get live status', err)
})
// 往后間隔1分鐘或更慢的頻率去輪詢獲取直播狀態(tài)
setInterval(() => {
livePlayer.getLiveStatus({ room_id: roomId })
.then(res => {
// 101: 直播中, 102: 未開始, 103: 已結(jié)束, 104: 禁播, 105: 暫停中, 106: 異常,107:已過期
const liveStatus = res.liveStatus
console.log('get live status', liveStatus)
})
.catch(err => {
console.log('get live status', err)
})
}, 60000)