{"remainingRequest":"D:\\dm\\HHHT-fbky\\hhht_fbky\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\dm\\HHHT-fbky\\hhht_fbky\\src\\components\\HelloWorld.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\dm\\HHHT-fbky\\hhht_fbky\\src\\components\\HelloWorld.vue","mtime":1741074696345},{"path":"D:\\dm\\HHHT-fbky\\hhht_fbky\\node_modules\\babel-loader\\lib\\index.js","mtime":1740991520080},{"path":"D:\\dm\\HHHT-fbky\\hhht_fbky\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1740991511838},{"path":"D:\\dm\\HHHT-fbky\\hhht_fbky\\node_modules\\vue-loader\\lib\\index.js","mtime":1740991518721}],"contextDependencies":[],"result":["//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nimport {\n\trtcHelper\n} from '@/assets/js/tr_webrtc.min.js'\n// import Dayjs from \"dayjs\";\n// import { mapGetters } from \"vuex\";\nexport default {\n\tname: \"Fbky\",\n\t// computed: {\n\t// ...mapGetters([\"rtcHelper\"]),\n\t// },\n\t// props: {\n\t// curFbkyData: {\n\t// //分机登录参数\n\t// type: Object,\n\t// require: true,\n\t// default: () => ({}),\n\t// },\n\t// ringNumber: {\n\t// //号码参数\n\t// type: String,\n\t// require: true,\n\t// default: \"111\",\n\t// },\n\t// callDisable: {\n\t// //呼出或挂断控制\n\t// type: Boolean,\n\t// require: true,\n\t// default: false,\n\t// },\n\t// },\n\tdata() {\n\t\treturn {\n\t\t\tlogin: \"8889\", //分机号\n\t\t\tpassword: \"123456\", //分机密码\n\t\t\tsocketUrl: \"wss://172.10.10.61:1443/webrtc\", //webSocketURL\n\t\t\tlocalIp: \"\",\n\t\t\tautoReg: true,\n\t\t\tautoAnswer: false,\n\t\t\tmic: \"\", //麦克风选择\n\t\t\tcam: \"\", //摄像头选择\n\t\t\tspeak: \"\", //扬声器选择\n\t\t\tcall_in_now_d: null,\n\t\t\tringNumber: '111',\n\t\t\tcallback: {\n\t\t\t\tonRinging: function(d) {\n\t\t\t\t\t// 来电\n\t\t\t\t\tthis.onRinging(d);\n\t\t\t\t},\n\t\t\t\tonCalling: function(d) {\n\t\t\t\t\t// 外呼\n\t\t\t\t\tthis.onCalling(d);\n\t\t\t\t},\n\t\t\t\tonAnswer: function(d) {\n\t\t\t\t\t// 通话中\n\t\t\t\t\tthis.onAnswer(d);\n\t\t\t\t},\n\t\t\t\tonHangup: function(d) {\n\t\t\t\t\t// 挂机\n\t\t\t\t\t// this.onHangup(d);\n\t\t\t\t},\n\t\t\t\tonLogin: function() {\n\t\t\t\t\t//登录回调\n\t\t\t\t\tconsole.log(\"登录状态在线回调\");\n\t\t\t\t\tdocument\n\t\t\t\t\t\t.getElementById(\"off_status\")\n\t\t\t\t\t\t.setAttribute(\"hidden\", \"hidden\");\n\t\t\t\t\tdocument.getElementById(\"on_status\").removeAttribute(\"hidden\");\n\t\t\t\t},\n\t\t\t\tonLogout: function() {\n\t\t\t\t\t//登出回调\n\t\t\t\t\tconsole.log(\"登出状态离线回调\");\n\t\t\t\t\tdocument.getElementById(\"on_status\").setAttribute(\"hidden\", \"hidden\");\n\t\t\t\t\tdocument.getElementById(\"off_status\").removeAttribute(\"hidden\");\n\t\t\t\t},\n\t\t\t},\n\t\t};\n\t},\n\twatch: {\n\t\tcurFbkyData: {\n\t\t\thandler(newValue) {\n\t\t\t\tthis.callHangupAll();\n\t\t\t\tconsole.log(\"数据更新:\", newValue);\n\t\t\t\tif (newValue.url) {\n\t\t\t\t\tthis.login = newValue.admin;\n\t\t\t\t\tthis.password = newValue.password;\n\t\t\t\t\tthis.socketUrl = newValue.url;\n\t\t\t\t\tthis.localIp = newValue.localIp;\n\t\t\t\t}\n\t\t\t\tsetTimeout(() => {\n\t\t\t\t\tthis.initPerimeter();\n\t\t\t\t}, 1500);\n\t\t\t},\n\t\t\tdeep: true,\n\t\t},\n\t\tringNumber: {\n\t\t\thandler(newValue) {\n\t\t\t\tthis.callHangupAll();\n\t\t\t\tif (this.callDisable) {\n\t\t\t\t\tthis.dial(0);\n\t\t\t\t}\n\t\t\t\tconsole.log(\"拨打号码:\", newValue);\n\t\t\t},\n\t\t\tdeep: true,\n\t\t},\n\t\tcallDisable: {\n\t\t\thandler(newValue) {\n\t\t\t\tif (newValue) {\n\t\t\t\t\tthis.dial(0);\n\t\t\t\t\tconsole.log(\"拨号\", this.ringNumber);\n\t\t\t\t} else {\n\t\t\t\t\tthis.callHangupAll();\n\t\t\t\t\tconsole.log(\"挂断\");\n\t\t\t\t}\n\t\t\t},\n\t\t\tdeep: true,\n\t\t},\n\t},\n\tcreated() {\n\t\tthis.initMediaDevices();\n\t\tsetTimeout(() => {\n\t\t\tthis.initPerimeter();\n\t\t}, 500);\n\t},\n\tdestroyed() {\n\t\tthis.callHangupAll();\n\t\tsetTimeout(() => {\n\t\t\tthis.webRtcLogout();\n\t\t}, 500);\n\t},\n\tmounted() {},\n\tmethods: {\n\t\tgetVideoDiv() {\n\t\t\treturn document.getElementById(\"peerTag\").value;\n\t\t},\n\t\tgetValue(id) {\n\t\t\treturn document.getElementById(id).value;\n\t\t},\n\t\tsetValue(id, value) {\n\t\t\tdocument.getElementById(id).value = value;\n\t\t},\n\t\t//载入参数登录\n\t\tinitPerimeter() {\n\t\t\tif (!this.login || !this.password || !this.socketUrl) {\n\t\t\t\talert(\"请填写必填参数\");\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// 缓存配置\n\t\t\tlocalStorage.verto_login = this.login; //分机账号\n\t\t\tlocalStorage.verto_password = this.password; //分机密码\n\t\t\tlocalStorage.verto_socketUrl = this.socketUrl; //webSocketURL\n\t\t\tlocalStorage.verto_localIp = this.localIp;\n\t\t\tlocalStorage.verto_autoReg = this.autoReg; //自动登录开关\n\t\t\tlocalStorage.verto_autoAnswer = this.autoAnswer; //自动接听开关\n\t\t\trtcHelper.bootstrap(\n\t\t\t\tthis.login,\n\t\t\t\tthis.password,\n\t\t\t\tthis.socketUrl,\n\t\t\t\tthis.localIp,\n\t\t\t\tthis.getVideoDiv(),\n\t\t\t\t\"local_video\",\n\t\t\t\tthis.callback,\n\t\t\t\tthis.mic,\n\t\t\t\tthis.speak,\n\t\t\t\tthis.cam\n\t\t\t);\n\t\t\t// console.log(\n\t\t\t// \"配置载入参数\",\n\t\t\t// this.login,\n\t\t\t// this.password,\n\t\t\t// this.socketUrl,\n\t\t\t// this.localIp,\n\t\t\t// this.getVideoDiv(),\n\t\t\t// \"local_video\",\n\t\t\t// this.callback,\n\t\t\t// this.mic,\n\t\t\t// this.speak,\n\t\t\t// this.cam\n\t\t\t// );\n\t\t},\n\t\t//获取音视频设备\n\t\tinitMediaDevices() {\n\t\t\trtcHelper.getMediaDevices().then((result) => {\n\t\t\t\ttry {\n\t\t\t\t\tlet microphone = result.audioInputDevices; //麦克风\n\t\t\t\t\tlet camera = result.videoDevices; //摄像头+\n\t\t\t\t\tlet loudspeaker = result.audioOutputDevices; //扬声器\n\t\t\t\t\tlet microphoneStr = \"\";\n\t\t\t\t\tlet cameraStr = \"\";\n\t\t\t\t\tlet loudspeakerStr = \"\";\n\t\t\t\t\tfor (let i = 0; i < microphone.length; i++) {\n\t\t\t\t\t\tmicrophoneStr +=\n\t\t\t\t\t\t\t'\";\n\t\t\t\t\t}\n\t\t\t\t\tdocument.getElementById(\"audioInputDev\").innerHTML = microphoneStr;\n\t\t\t\t\tfor (let i = 0; i < camera.length; i++) {\n\t\t\t\t\t\tcameraStr +=\n\t\t\t\t\t\t\t'\";\n\t\t\t\t\t}\n\t\t\t\t\tdocument.getElementById(\"videoInputDev\").innerHTML = cameraStr;\n\t\t\t\t\tfor (let i = 0; i < loudspeaker.length; i++) {\n\t\t\t\t\t\tloudspeakerStr +=\n\t\t\t\t\t\t\t'\";\n\t\t\t\t\t}\n\t\t\t\t\tdocument.getElementById(\"audioOutputDev\").innerHTML = loudspeakerStr;\n\t\t\t\t\tif (microphone.length > 0) {\n\t\t\t\t\t\tthis.mic = microphone[0].deviceId;\n\t\t\t\t\t}\n\t\t\t\t\tif (camera.length > 0) {\n\t\t\t\t\t\tthis.cam = camera[0].deviceId;\n\t\t\t\t\t}\n\t\t\t\t\tif (loudspeaker.length > 0) {\n\t\t\t\t\t\tthis.speak = loudspeaker[0].deviceId;\n\t\t\t\t\t}\n\t\t\t\t\tconsole.log(\"音视频设备:\", result, this.mic, this.cam, this.speak);\n\t\t\t\t} catch (e) {\n\t\t\t\t\tconsole.error(e);\n\t\t\t\t}\n\t\t\t\t// 自动登录\n\t\t\t\t// if (\n\t\t\t\t// localStorage.verto_autoReg == \"true\" &&\n\t\t\t\t// localStorage.verto_login &&\n\t\t\t\t// localStorage.verto_password &&\n\t\t\t\t// localStorage.verto_socketUrl\n\t\t\t\t// ) {\n\t\t\t\t// this.initPerimeter();\n\t\t\t\t// }\n\t\t\t});\n\t\t},\n\t\t//登录\n\t\twebRtcLogin() {\n\t\t\ttry {\n\t\t\t\trtcHelper.rtcLogin();\n\t\t\t} catch (e) {\n\t\t\t\tconsole.error(e);\n\t\t\t}\n\t\t},\n\t\t//登出\n\t\twebRtcLogout() {\n\t\t\ttry {\n\t\t\t\trtcHelper.rtcLogout();\n\t\t\t} catch (e) {\n\t\t\t\tconsole.error(e);\n\t\t\t}\n\t\t},\n\t\t// 拨号外呼\n\t\tdial(type) {\n\n\t\t\tdocument.getElementById('hc').addEventListener('click', function() {\n\t\t\t\tnavigator.mediaDevices.getUserMedia({\n\t\t\t\t\t\taudio: true\n\t\t\t\t\t})\n\t\t\t\t\t.then(stream => {\n\t\t\t\t\t\tconst audio = document.createElement('audio');\n\t\t\t\t\t\taudio.srcObject = stream;\n\t\t\t\t\t\taudio.autoplay = true;\n\t\t\t\t\t\tdocument.body.appendChild(audio);\n\t\t\t\t\t})\n\t\t\t\t\t.catch(error => {\n\t\t\t\t\t\tconsole.error('获取麦克风失败:', error);\n\t\t\t\t\t});\n\t\t\t});\n\t\t\tconsole.log(\"拨号号码:\", this.ringNumber);\n\t\t\tlet destinationNumber = this.ringNumber;\n\t\t\tif (!destinationNumber) {\n\t\t\t\talert(\"没有输入被叫号码\");\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (type === 1) {\n\t\t\t\t// 视频呼出\n\t\t\t\trtcHelper.rtcDial(destinationNumber, true);\n\t\t\t} else {\n\t\t\t\t// 语音呼出\n\t\t\t\trtcHelper.rtcDial(destinationNumber, false);\n\t\t\t}\n\t\t},\n\t\t//历史记录\n\t\tlogRecords(callee, type) {\n\t\t\tlet log = \"\";\n\t\t\tswitch (type) {\n\t\t\t\tcase \"ringing\":\n\t\t\t\t\tlog = new Date().Format(\"yyyy-MM-dd HH:mm:ss\") + \" 呼入 \" + callee;\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"calling\":\n\t\t\t\t\tlog = new Date().Format(\"yyyy-MM-dd HH:mm:ss\") + \" 呼出 \" + callee;\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif (localStorage.verto_his_list) {\n\t\t\t\tlocalStorage.verto_his_list += \",\" + log;\n\t\t\t} else {\n\t\t\t\tlocalStorage.verto_his_list = log;\n\t\t\t}\n\t\t},\n\t\t// =================== 通话事件 start ====================\n\t\tonRinging(d) {\n\t\t\tlet callee = d.cidString();\n\t\t\tconsole.log(\"===========来电信息===========\" + callee);\n\t\t\tconsole.log(\"通话呼入事件\", d);\n\t\t\t// 判断是否自动接听\n\t\t\tif (localStorage.verto_autoAnswer) {\n\t\t\t\tconsole.log(\"自动接听\");\n\t\t\t\tif (d.params.wantVideo) {\n\t\t\t\t\t// 选择是否有视频\n\t\t\t\t\tlet videoFlag = true;\n\t\t\t\t\trtcHelper.rtcAnswer(d, videoFlag);\n\t\t\t\t} else {\n\t\t\t\t\trtcHelper.rtcAnswer(d, false);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tdocument.getElementById(\"call_in_now\").innerHTML = callee;\n\t\t\t\tdocument.getElementById(\"call_in_now\").setAttribute(\"callID\", d.callID);\n\t\t\t\tthis.call_in_now_d = d;\n\t\t\t}\n\t\t\tdocument.getElementById(\"call_list\").innerHTML +=\n\t\t\t\t\"