硬件发起通话,手机端有提示并接听之后显示等待对方连接,但此时硬件端什么UI弹窗都没有,以下是wxml和ts测试代码。请问是缺少了什么东西吗?
<view>
<view>Version: 2024年4月23日15点55分 Finish</view>
<button style="width: 80%; margin-top: 30rpx;" bind:tap="authVoIP">VoIP授权</button>
<button style="width: 80%; margin-top: 30rpx;" bind:tap="startCommunication">发起通话</button>
</view>
const wmpfVoip = requirePlugin('wmpf-voip').default
Page({
data: {
caller: {
nickname: '微信用户',
openid: '省略'
},
listener: {
nickname: '微信用户',
openid: '省略'
}
},
async startCommunication() {
const that = this
try {
// 2.4.0 以下版本 roomId 为 groupId
const { roomId, isSuccess } = await wmpfVoip.initByCaller({
caller: {
id: '省略1' // 设备 SN
// 不支持传 name,显示的是授权时「deviceName」+「modelId 对应设备型号」
},
listener: {
// 参见 https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/login.html 获取
id: '省略',// 接听方 用户 openId
name: '省略' // 接听方名字,仅显示用
},
roomType: 'video', // 房间类型。voice: 音频房间;video: 视频房间
businessType: 1, // 1 为设备呼叫手机微信
// voipToken: 'xxxxxxxxxx', // 使用设备认证 SDK 注册的设备传入 deviceToken,使用 WMPF RegisterMiniProgramDevice 接口注册的设备无需传入(插件 2.3.0 支持)
miniprogramState: 'formal' // 指定接听方使用的小程序版本
})
if (isSuccess) {
// 如果小程序启动直接进入插件页面,则不要调用 wx.redirectTo
// wx.redirectTo({
// // url: wmpfVoip.CALL_PAGE_PATH
// // 插件 2.3.9 开始支持 CALL_PAGE_PATH, 低版本请传入 'plugin-private://wxf830863afde621eb/pages/call-page-plugin/call-page-plugin',
// })
console.warn('呼叫成功')
} else {
wx.showToast({
title: '呼叫失败',
icon: 'error'
})
}
} catch (e) {
// 参数错误的情况会通过异常抛出
console.log(e)
wx.showToast({
title: '呼叫失败',
icon: 'error'
})
}
},
authVoIP() {
wx.requestDeviceVoIP({
groupId: '',
isGroup: false,
sn: '省略', // Todo 向用户发起通话的设备 sn(需要与设备注册时一致),需要提前准备
snTicket: '省略', // 获取的 snTicket
modelId: '省略', // 「设备接入」从微信公众平台获取的 model_id
deviceName: 'NKDR-400门口机', // 设备名称,用于授权时显示给用户
success(res) {
console.log(`requestDeviceVoIP success:`, res)
},
fail(err) {
console.error(`requestDeviceVoIP fail:`, err)
}
})
}
})
请参考示例代码:https://git.weixin.qq.com/wxa_iot/voip-wxapp-demo
wmpfVoip.setUIConfig({ btnText: '开门' })