80 lines
1.6 KiB
Plaintext
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)
|
|
// }
|
|
// }
|