diff --git a/src/App.vue b/src/App.vue index b752e81..608debf 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,13 +1,18 @@ + + \ No newline at end of file diff --git a/src/pages/mediation-page/components/VideoRoom.vue b/src/pages/mediation-page/components/VideoRoom.vue index e867564..6266a82 100644 --- a/src/pages/mediation-page/components/VideoRoom.vue +++ b/src/pages/mediation-page/components/VideoRoom.vue @@ -301,6 +301,7 @@ export default { } await this.trtc.stopLocalAudio();// 停止本地麦克风的采集及发布 await this.trtc.stopLocalVideo();// 停止本地摄像头的采集、预览及发布 + this.trtc = null; // await this.trtc.stopScreenShare();// 停止屏幕分享 }, @@ -389,18 +390,25 @@ export default { } }) } - let jsonString = JSON.stringify({behavior: 'offAudio', userId: userId}); - let encoder = new TextEncoder(); - let encoded = encoder.encode(jsonString).buffer; - console.log(encoded, '---关闭远端声音') - let decoder = new TextDecoder(); - let decodedString = decoder.decode(encoded); - let parsedObj = JSON.parse(decodedString); - console.log(parsedObj, '---解析关闭远端声音'); - await this.trtc.sendCustomMessage({ - cmdId: 1, - data: encoded - }); + let json = {behavior: 'offAudio', userId: userId} + let data = { + destination: `/topic/video-room/${this.eventDialog.roomId}`, + body: JSON.stringify(json) + } + this.$stompSocket.publish(data) + + // let jsonString = JSON.stringify({behavior: 'offAudio', userId: userId}); + // let encoder = new TextEncoder(); + // let encoded = encoder.encode(jsonString).buffer; + // console.log(encoded, '---关闭远端声音') + // let decoder = new TextDecoder(); + // let decodedString = decoder.decode(encoded); + // let parsedObj = JSON.parse(decodedString); + // console.log(parsedObj, '---解析关闭远端声音'); + // await this.trtc.sendCustomMessage({ + // cmdId: 1, + // data: encoded + // }); } catch (error) { throw error; } @@ -419,13 +427,20 @@ export default { } }) } - let jsonString = JSON.stringify({behavior: 'onAudio', userId: userId}); - let encoder = new TextEncoder(); - let encoded = encoder.encode(jsonString).buffer; - await this.trtc.sendCustomMessage({ - cmdId: 2, - data: encoded - }); + + let json = {behavior: 'onAudio', userId: userId} + let data = { + destination: `/topic/video-room/${this.eventDialog.roomId}`, + body: JSON.stringify(json) + } + this.$stompSocket.publish(data) + // let jsonString = JSON.stringify({behavior: 'onAudio', userId: userId}); + // let encoder = new TextEncoder(); + // let encoded = encoder.encode(jsonString).buffer; + // await this.trtc.sendCustomMessage({ + // cmdId: 2, + // data: encoded + // }); } catch (error) { throw error; } @@ -434,13 +449,19 @@ export default { async handleKickOut(userId) { console.log(userId, '---踢出远端用户') try { - let jsonString = JSON.stringify({behavior: 'kickOut', userId: userId}); - let encoder = new TextEncoder(); - let encoded = encoder.encode(jsonString).buffer; - await this.trtc.sendCustomMessage({ - cmdId: 3, - data: encoded - }); + let json = {behavior: 'kickOut', userId: userId} + let data = { + destination: `/topic/video-room/${this.eventDialog.roomId}`, + body: JSON.stringify(json) + } + this.$stompSocket.publish(data) + // let jsonString = JSON.stringify({behavior: 'kickOut', userId: userId}); + // let encoder = new TextEncoder(); + // let encoded = encoder.encode(jsonString).buffer; + // await this.trtc.sendCustomMessage({ + // cmdId: 3, + // data: encoded + // }); } catch (error) { throw error; } @@ -502,6 +523,9 @@ export default { if (this.timerId) { clearInterval(this.timerId); } + if (this.trtc){ + this.handleKickedOut(); + } } }; diff --git a/src/services/fetchApi.js b/src/services/fetchApi.js index fb2460a..2b34f71 100644 --- a/src/services/fetchApi.js +++ b/src/services/fetchApi.js @@ -47,9 +47,5 @@ const fetchApi = { viewFullFile: data => { return service.service.post(`${apiAdmin}upload/full`, data,{hideLoading:true}) }, - // ========================start:: 语音通话SDK====================================== - webCalling: data => { - return service.service.get(`${apiAdmin}/api/trace/calling/init-web`, data) - }, } export default fetchApi; diff --git a/src/services/voiceCall.js b/src/services/voiceCall.js new file mode 100644 index 0000000..45a7f43 --- /dev/null +++ b/src/services/voiceCall.js @@ -0,0 +1,17 @@ +import service from "./index"; +const apiAdmin = '/mediate/api/trace/calling/' +const api = { + // 初始化SDK + webCalling: data => { + return service.service.get(`${apiAdmin}init-web`, data) + }, + // 匹配案件列表 + caseMatchList: data => { + return service.service.post(`${apiAdmin}caseMatchList`, data) + }, + // 关联案件 + caseMatch: data => { + return service.service.post(`${apiAdmin}caseMatch`, data) + }, +} +export default api;