直播功能

This commit is contained in:
chc
2026-07-01 18:07:51 +08:00
parent 6654c1de51
commit 3a44b7243d
14 changed files with 3125 additions and 24 deletions

75
api/live.js Normal file
View File

@@ -0,0 +1,75 @@
/**
* 直播流相关 API
*/
import { http, Method } from "@/utils/request.js";
/**
* 通过 id 获取直播间详情
* @param {string} id 直播流 ID
*/
export function getLiveRoomById(id) {
return http.request({
url: `live/room/${id}`,
method: Method.GET,
});
}
/**
* 观看的同时注册直播用户
* @param {string} liveRoomId 直播流 ID
*/
export function registerLiveViewUser(liveRoomId) {
return http.request({
url: `live/user/view`,
method: Method.POST,
params: { liveRoomId },
});
}
/**
* 发送直播消息
* @param {object} data LiveMessage
*/
export function sendLiveMessage(data) {
return http.request({
url: `live/message`,
method: Method.POST,
data,
});
}
/**
* 获取直播轮询聚合数据
* @param {string} id 直播流 ID
*/
export function getLivePollingData(id) {
return http.request({
url: `live/room/polling/${id}`,
method: Method.GET,
loading: false,
});
}
/**
* 领取直播间优惠券
* @param {string} liveRoomId 直播流 ID
* @param {string} couponId 优惠券 ID
*/
export function receiveLiveCoupon(liveRoomId, couponId) {
return http.request({
url: `promotion/coupon/receive/live/${liveRoomId}/${couponId}`,
method: Method.GET,
needToken: true,
});
}
/**
* 获取直播系统配置LIVE_SETTING含 imSdkAppid
*/
export function getLiveSetting() {
return http.request({
url: "system/setting/get/LIVE_SETTING",
method: Method.GET,
loading: false,
});
}