- voip-room 组件渲染不出来?
问题描述: 第二个手机进入后可以看到自己和第一个手机的画面, 第一个手机只能看到自己和黑屏, 大概10次有7,8次会这样 创建room的手机: [图片] 加入room的手机: [图片] [图片] 第一台手机通过 `onVoIPChatMembersChanged` 拿到了第二台的openid, 渲染也渲染了, 但渲染得到黑屏 --- 我尝试用三个手机(结果也很迷惑) 1能看到1,22能看到2,33能看到1,3--- wxml <view class="room-list" > <voip-room wx:for="{{openid_list}}" wx:key="index" openid="{{item}}" binderror="voipErr" class="room" mode="{{item == my_openid ? 'camera': 'video'}}"></voip-room> </view> js data: { openid_list: [], my_openid: "" }, join(){ console.log('taped join'); console.log('now ip is: ', this.data.root); wx.login({ success: (login_res) => { console.log('login ok:', login_res); wx.request({ url: `http://${this.data.root}:3000/voip/getVeryfiCation`, method: 'post', data: { code: login_res.code }, success: (res) => { console.log('res', res); this.setData({ my_openid: res.data.openid }) wx.joinVoIPChat({ roomType: "video", signature: res.data.signature, nonceStr: res.data.nonceStr, timeStamp: res.data.timeStamp, groupId: res.data.groupId, success: (res) => { console.log('openIdList', res.openIdList); console.log("my open id", this.data.my_openid); // 当成员>2时订阅成员 wx.subscribeVoIPVideoMembers({ openIdList: res.openIdList }) this.setData({ openid_list: res.openIdList }) // 处理成员进出 wx.onVoIPChatMembersChanged( (member_res) => { // 当成员>2时订阅成员 wx.subscribeVoIPVideoMembers({ openIdList: res.openIdList }) this.setData({ openid_list: member_res.openIdList }) }); }, fail: (err) => { console.log('err', err); } }) }, fail: (err) => { console.log('fail to auth', err); } }) // console.log('veryfication_res', veryfication_res); } }) }
2020-11-17 - 微信小程序调用wx.joinVoIPChat api一直显示签名错误问题?
//index.js 验证文档上默认的参数返回签名一致,点击调用的时候一直出现 签名错误问题 //获取应用实例 const app = getApp() Page({ data: { motto: 'Hello World', userInfo: {}, hasUserInfo: false, canIUse: wx.canIUse('button.open-type.getUserInfo'), data:{} }, onLoad:function(){ var t = this wx.login({ complete: (res) => { if(res.code){ wx.request({ data:{code:res.code}, url: 'https://www.lefakeji.com/api/user/getwxuserinfo', success:(re)=>{ var data = re.data wx.checkSession({ complete: (res) => { console.log(res) }, }) console.log(re) t.setData({ data:data }) } }) } }, }) }, joinVoIPChat:function(){ var t = this wx.getSetting({ success:function(r){ if(r.authSetting['scope.record']){ var data = t.data.data console.log(data.sign) console.log(data.nonceStr) console.log(data.timeStamp) console.log(data.groupId) wx.joinVoIPChat({ signature:data.sign, nonceStr:data.nonceStr, timeStamp:parseInt(data.timeStamp), groupId:data.groupId, complete:(re)=>{ console.log(re) wx.showModal({ title: '提示', content: re.errMsg, success (res) { if (res.confirm) { console.log('用户点击确定') } else if (res.cancel) { console.log('用户点击取消') } } }) } }) }else{ wx.startRecord({ complete: (res) => { wx.stopRecord({ complete: (res) => {}, }) }, }) } } }) return wx.startRecord({ success: (res) => { }, fail:(re)=>{ console.log(re) } }) } })
2020-07-02 - 多人音视频通话接口 wx.joinVoIPChat签名问题?
多人音视频对话 用的是这两个接口wx.joinVoIPChat 和组件 voip-room。 1、在调用过程中一直提示这个错误 joinVoIPChat:fail: -10088, -10, join room failed. errType: 4, errCode: -12020, errMsg: invalid signature, -1 2、这个接口是免费试用的吗 服务端签名(php) $data[] = "自己的appid"; $data[] = 'grop_ooo00_tests';//测试房间 这个groupId 需要生成唯一的 使用这个id 签名的人员进入都会进入一个实时语音房间 $data[] = getNonceStr(); $data[] = time(); sort($data,5); // $st = implode('',$data); //拼接成一个字符串 $hash = hash_hmac('sha256', $st,$session_key); //通过 sha256 接口权限已经开通了 [图片]
2020-11-17