2025-06-16 16:07:14 +08:00

80 lines
1.6 KiB
Plaintext

import { UTSAndroid } from 'io.dcloud.uts'
import { XP2PAppConfig, XP2P } from 'com.tencent.xnet'
import { Result, InitParams, IdParams } from '../interface.uts'
export const startService = async function (params: InitParams): Promise<Result> {
try {
const context = UTSAndroid.getAppContext()
let xp2pConfig: XP2PAppConfig = new XP2PAppConfig()
xp2pConfig.appKey = params.appKey
xp2pConfig.appSecret = params.appSecret
await XP2P.startService(
context,
params.productId,
params.deviceName,
params.xp2pInfo,
xp2pConfig
)
return {
code: 0,
data: {},
message: '成功'
}
} catch (error) {
return {
code: -1,
data: {},
message: error.toString()
}
}
}
export const getLiveUrl = async function (params: IdParams): Promise<Result> {
try {
const liveUrl = await XP2P.delegateHttpFlv(params.id)
return {
code: 0,
data: {
url: liveUrl
},
message: '成功'
}
} catch (error) {
return {
code: -1,
data: {},
message: error.toString()
}
}
}
export const stopService = async function (params: IdParams): Promise<Result> {
try {
await XP2P.stopService(params.id)
return {
code: 0,
data: {},
message: '成功'
}
} catch (error) {
return {
code: -1,
data: {},
message: error.toString()
}
}
}
// export const setCallback = function (callback: XP2PCallback) {
// try {
// XP2P.setCallback(callback)
// } catch (error) {
// console.log(2, error)
// }
// }