{"ast":null,"code":"import \"core-js/modules/es.array.push.js\";\nimport { getUsersig, reserveConferenceList } from '@/api/home';\nimport { getWidth, getHeight, getWidthPhone, getModile } from \"@/utils/utils\";\nimport roomFooter from './components/roomFooter.vue';\nimport roomFooterPhone from \"./components/footerPhone.vue\";\nimport ASR from '../utils/asr.esm.js';\nimport TRTC from 'trtc-sdk-v5';\nlet trtc = null;\nimport 'quill/dist/quill.core.css';\nimport 'quill/dist/quill.snow.css';\nimport 'quill/dist/quill.bubble.css';\nimport { quillEditor } from 'vue-quill-editor';\nexport default {\n name: 'App',\n components: {\n roomFooter,\n roomFooterPhone,\n quillEditor\n },\n data() {\n return {\n userClass: \"userVideo5\",\n userClassPhone: \"userVideoPhone\",\n userList: [],\n userHeight: '100%',\n userPhoneHeight: '92%',\n userSign: \"\",\n roomId: \"\",\n userId: null,\n showFlag: false,\n modileFlag: false,\n localStreamAsr: null,\n contentValue: '',\n textVisible: false,\n editorOption: {\n // Some Quill options...\n }\n };\n },\n methods: {\n onEditorBlur(quill) {\n console.log('editor blur!', this.content, quill);\n },\n onEditorFocus(quill) {\n console.log('editor focus!', quill);\n },\n onEditorReady(quill) {\n console.log('editor ready!', quill);\n },\n onEditorChange({\n quill,\n html,\n text\n }) {\n console.log('editor change!', quill, html, text);\n this.content = html;\n },\n // 点击显示修改的文本框\n txtContent() {\n this.textVisible = true;\n },\n // 鼠标滑过显示操作栏\n mouseHover() {\n this.showFlag = true;\n setTimeout(() => {\n this.showFlag = false;\n }, 4000);\n },\n async exitRoom() {\n // 关闭识别\n this.localStreamAsr.stop();\n await trtc.exitRoom();\n await trtc.updateLocalVideo({\n publish: false\n });\n await trtc.updateLocalAudio({\n publish: false\n });\n await trtc.destroy();\n this.$router.push({\n name: \"Home\"\n });\n },\n // 获取拉流信息\n getPushVideo() {\n trtc.on(TRTC.EVENT.REMOTE_VIDEO_AVAILABLE, event => {\n const userId = event.userId;\n const streamType = event.streamType;\n this.userList.push(userId);\n let asrList = {};\n this.userList.forEach((item, index) => {\n asrList[this.userList[index]] = new ASR({\n secretKey: 'INDrIXcT8YmomZBcsy0oNirnU0LTN4X7',\n secretId: 'AKID3xfHgroY4MQHvLXUXMwIQL1UjmbBX1Tv',\n appId: 1304001529,\n engine_model_type: '16k_zh',\n voice_format: 1,\n needvad: 1,\n audioTrack: trtc.getAudioTrack(item)\n });\n });\n console.log(asrList, \"PPppppppppppppppppppp\");\n if (this.modileFlag) {\n this.userClass = getWidth(this.userList);\n this.userHeight = getHeight(this.userList);\n } else {\n this.userClassPhone = getWidthPhone(this.userList);\n }\n setTimeout(() => {\n trtc.startRemoteVideo({\n userId,\n streamType,\n view: `${userId}`\n });\n });\n });\n },\n // 删除退出会议人员列表\n deletePushVideo() {\n trtc.on(TRTC.EVENT.REMOTE_VIDEO_UNAVAILABLE, event => {\n const userId = event.userId;\n if (this.hostId == userId) {\n alert('主持人已经解散会议');\n this.$router.push({\n name: 'Home'\n });\n this.userList = [];\n return;\n }\n let deleteIndex = this.userList.indexOf(userId);\n this.userList = this.userList.filter(item => item !== userId);\n if (deleteIndex !== -1) {\n this.userList.splice(deleteIndex, 1);\n }\n if (this.modileFlag) {\n this.userClass = getWidth(this.userList);\n this.userHeight = getHeight(this.userList);\n } else {\n this.userClassPhone = getWidthPhone(this.userList);\n }\n });\n },\n // 根据caseId查询房间相关信息\n reserveConferenceListFn(data) {\n reserveConferenceList(data).then(res => {\n this.hostId = res.data[0].userName;\n });\n }\n },\n computed: {\n editor() {\n return this.$refs.myQuillEditor.quill;\n }\n },\n async mounted() {\n // 判断设备类型\n this.modileFlag = getModile();\n let roomId = this.$route.query.roomId;\n this.roomId = this.$route.query.roomId;\n let userId = this.$route.query.userId;\n this.userId = this.$route.query.userId;\n this.caseId = this.$route.query.caseId;\n // 获取主持人的userId\n this.reserveConferenceListFn(this.caseId);\n const sdkAppId = 1600011167;\n // 获取usersign\n await getUsersig(userId).then(res => {\n this.userSign = res.msg;\n });\n this.getPushVideo();\n this.deletePushVideo();\n try {\n await trtc.enterRoom({\n roomId: Number(roomId),\n scene: 'rtc',\n sdkAppId,\n userId,\n userSig: this.userSign\n });\n await trtc.startLocalVideo({\n view: document.getElementById('localStream') // 在 DOM 中的 elementId 为 localStream 的标签上预览视频。\n });\n\n await trtc.startLocalAudio();\n console.log('进房成功');\n this.$message({\n message: \"进房成功\",\n type: 'success'\n });\n } catch (error) {\n console.error('进房失败 ' + error);\n this.$message({\n message: \"进房失败\",\n type: 'error'\n });\n this.$router.push({\n name: 'Home'\n });\n }\n this.localStreamAsr = new ASR({\n secretKey: 'INDrIXcT8YmomZBcsy0oNirnU0LTN4X7',\n secretId: 'AKID3xfHgroY4MQHvLXUXMwIQL1UjmbBX1Tv',\n appId: 1304001529,\n engine_model_type: '16k_zh',\n voice_format: 1,\n needvad: 1,\n audioTrack: trtc.getAudioTrack()\n });\n this.localStreamAsr.start();\n // 开始识别\n this.localStreamAsr.OnRecognitionStart = res => {\n console.log('本地流:开始识别', res);\n };\n this.localStreamAsr.OnError = res => {\n console.log('本地流:识别失败', res);\n };\n // 一句话结束\n this.localStreamAsr.OnSentenceEnd = res => {\n console.log('本地流:一句话结束', res);\n // this.contentValue = `

${this.userId}

` + `${res.result.voice_text_str}`;\n this.contentValue = this.contentValue + `

${this.userId}

` + `${res.result.voice_text_str}`;\n };\n },\n created() {\n trtc = TRTC.create();\n }\n};","map":{"version":3,"names":["getUsersig","reserveConferenceList","getWidth","getHeight","getWidthPhone","getModile","roomFooter","roomFooterPhone","ASR","TRTC","trtc","quillEditor","name","components","data","userClass","userClassPhone","userList","userHeight","userPhoneHeight","userSign","roomId","userId","showFlag","modileFlag","localStreamAsr","contentValue","textVisible","editorOption","methods","onEditorBlur","quill","console","log","content","onEditorFocus","onEditorReady","onEditorChange","html","text","txtContent","mouseHover","setTimeout","exitRoom","stop","updateLocalVideo","publish","updateLocalAudio","destroy","$router","push","getPushVideo","on","EVENT","REMOTE_VIDEO_AVAILABLE","event","streamType","asrList","forEach","item","index","secretKey","secretId","appId","engine_model_type","voice_format","needvad","audioTrack","getAudioTrack","startRemoteVideo","view","deletePushVideo","REMOTE_VIDEO_UNAVAILABLE","hostId","alert","deleteIndex","indexOf","filter","splice","reserveConferenceListFn","then","res","userName","computed","editor","$refs","myQuillEditor","mounted","$route","query","caseId","sdkAppId","msg","enterRoom","Number","scene","userSig","startLocalVideo","document","getElementById","startLocalAudio","$message","message","type","error","start","OnRecognitionStart","OnError","OnSentenceEnd","result","voice_text_str","created","create"],"sources":["src/views/room.vue"],"sourcesContent":["\n \n\n \n\n \n \n "],"mappings":"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"},"metadata":{},"sourceType":"module","externalDependencies":[]}