You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
7 lines
233 KiB
7 lines
233 KiB
/** |
|
* hirtc-web v1.0.4.2024042434 |
|
* build date: 2024/04/24 |
|
* @JuHaoKan Hisense |
|
*/ |
|
|
|
function e(t,r){const o=P();return(e=function(e,t){return o[e-=172]})(t,r)}const t=e;!function(t,r){const o=e,n=P();for(;;)try{if(642255===parseInt(o(910))/1*(parseInt(o(273))/2)+-parseInt(o(779))/3*(parseInt(o(1364))/4)+parseInt(o(1428))/5+parseInt(o(196))/6+-parseInt(o(402))/7*(-parseInt(o(1733))/8)+-parseInt(o(1285))/9+-parseInt(o(1683))/10*(parseInt(o(1434))/11))break;n.push(n.shift())}catch(e){n.push(n.shift())}}();const r=t(1309);function o({url:r="",method:o=t(1287),headers:n,params:i,data:s,timeout:a=5e3,withCredentials:c=!1,responseType:u=t(802),contentType:d,widthRequest:l}){return new Promise(((t,p)=>{const f=e,m={"Content-Type":f(1454),Accept:f(1375)};let b=s;const v={...m,...n||{}};d&&(v[f(1839)]=d),o=o.toUpperCase();let y=new XMLHttpRequest;function h(){const e=f;if(!y)return;const r=e(1416)in y?y.getAllResponseHeaders():{},o=u&&u!==e(1831)&&u!==e(802)?y.response:y[e(1315)];if(y[e(313)]>=200&&y[e(313)]<300||304===y[e(313)]){let r=u===e(802)&&o?JSON.parse(o):o;t(l?{request:y,data:r}:r)}else y.responseHeaders=r,y[e(649)]=o,p(y);y=null}if(i&&i instanceof Object&&(r=r+"?"+Object.keys(i)[f(893)]((e=>e+"="+i[e]))[f(656)]("&")),y.open(o,r,!0),y[f(972)]=a,f(237)in y?y[f(237)]=h:y[f(1405)]=function(){const e=f;y&&4===y[e(1168)]&&(0!==y[e(313)]||y[e(905)]&&0===y[e(905)][e(199)](e(1121)))&&setTimeout(h)},y[f(1187)]=function(){y&&(p(new Error("Request aborted",config)),y=null)},y.onerror=function(e){p(new Error(f(1606))),y=null},y[f(1156)]=function(){const e=f;let t=a?e(1821)+a+"ms exceeded":e(1798);p(new Error(t)),y=null},f(1005)in y&&Object[f(703)](v)[f(1505)]((e=>{y[f(1005)](e,v[e])})),c&&(y.withCredentials=!!c),u&&u!==f(802)&&(y[f(1635)]=u),!b&&!1!==b&&0!==b&&""!==b&&(b=null),[f(1261)].includes(o)&&v["Content-Type"]===m[f(1839)]&&"object"==typeof b){let e="";Object[f(703)](b)[f(1505)]((t=>{e+="&"+t+"="+b[t]})),b=e[f(1515)](1)}y.send(b)}))}const n={DOT:t(1680),COMMON:t(1302),ERR:"error"},i=t(1780);let s=!0,a=!1,c=[],u=null;const d=(m=t(1644),{setItem(t,r){const o=e;typeof r===o(1102)&&(r=JSON[o(1014)](r)),window[m][o(1263)](t,r)},getItem(t,r=!1){const o=e;let n=window[m][o(1247)](t);if(r)try{n=JSON.parse(n)}catch(e){console[o(605)](e),n=null}return n},removeItem(t){const r=e;window[m][r(965)](t)}}),l=(e,r,o=n[t(445)])=>{const i=t;return u&&u[i(781)]?e({url:f(o,u),method:i(1481),sign:!1,data:{json:JSON.stringify(r)},timeout:1e3}):Promise.reject(new Error("No log strategy"))},p=(e,r)=>{const o=t;e?a=!0:(a=!1,c.length>0&&(c[o(1505)]((e=>{e(r)})),c=[]))},f=(e,r)=>{const o=t;switch(e){case n.DOT:return r[o(1086)];case n.ERR:return r[o(423)];default:return r[o(781)]}};var m,b={init:e=>{const{publicCloud:t}=e;!u&&(u=d.getItem("HIRTC_WEB_STRATEGY",!0)||null),u&&u[i]!==t&&(d.removeItem("HIRTC_WEB_STRATEGY"),u=null),s=t},report:(r,o,n)=>new Promise((f=>{a?c.push((t=>{const i=e;t?f():l(r,o,n)[i(515)](f)[i(432)](f)})):u?l(r,o,n).then(f).catch(f):(p(!0),((e,r)=>{const o=t;e({url:s?"https://api-gps.hismarttv.com/log/get_js_strategy":"https://api-gps-julinker.hisense.com/log/get_js_strategy",method:"get",timeout:1e3,sign:!1,params:{policySeq:Math[o(1221)](Date[o(931)]()/1e3),appKey:1192554437,version:"1.0",reportTag:0,receiveTag:2}})[o(515)]((e=>{const t=o;e[t(781)]&&(u=e,u[i]=s,d[t(1263)]("HIRTC_WEB_STRATEGY",u)),p(!1),r()}))[o(432)]((e=>{p(!1,e),r(e)}))})(r,(t=>{const i=e;t?f():l(r,o,n)[i(515)](f).catch(f)})))})),LOG_TYPE:n};const v=function(){const e=t;let r=new Date;return r[e(1815)]()+"/"+(r[e(1200)]()+1)+"/"+r[e(258)]()+" "+r[e(1493)]()+":"+r.getMinutes()+":"+r[e(729)]()+"."+r[e(401)]()},y=function(e,r){const o=t;return Math[o(1221)](Math[o(1403)]()*(r-e+1))+e},h=function(e=10){const t=["a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"];let r="";for(let o=0;o<e;o++)r+=t[y(0,61)];return r},g=function(e=0,r=0,o=0,n=1){return 0===o?0:Math[t(1221)](n*(e-r)/o)||0},w=function(e=""){const r=t;return e?e[0].toUpperCase()+e[r(759)](1):e},S=function(){},I=function(e,r,o){const n=t,i=Date.now()+(r[n(980)]||0),s=Math.floor(i/1e3),a=e[n(1668)],c=r[n(1487)],u=r[n(1133)];try{return n(1322)+n(951)+a+",mauth_role=presenter,mauth_serviceid="+c+",mauth_cnonce="+i+n(268)+s+n(1777)+Base64.encode(CryptoJS.HmacSHA1([s,i,a,n(1047)].join(","),u)[n(339)]())}catch(e){o[n(485)](n(1058)+e)}},E=e=>{const r=t;let o=URL[r(1029)](e),n=document[r(214)]("a");n.href=o,n.download=""+e.name,n[r(1355)]=r(1193),setTimeout((function(){const e=r;URL.revokeObjectURL(n[e(269)])}),3e4),setTimeout((function(){n[r(1053)]()}),0)};class k{[t(1827)]=[];[t(1559)]=-1;[t(1622)]={Info:"info",Warn:t(678),Error:"error"};[t(525)]=null;constructor({globalOptions:e}){this[t(525)]=e}[t(1450)](e,...r){const o=t;let n=o(253)+v()+" "+e,i="";if(r[o(1505)]((e=>{i=e instanceof Object?i+" "+JSON.stringify(e):i+" "+e})),i&&(i=n+" -"+i+"\n",console[e](i),this[o(1827)].push(i),this.logContainer[o(1524)]>this[o(525)][o(560)]))for(let e=0,t=this[o(525)][o(560)]/10;e<t;e++)this.logContainer[o(1226)](),this[o(1559)]--}[t(1055)](...e){const r=t;this[r(1450)](this[r(1622)][r(1252)],...e)}[t(1023)](...e){const r=t;this[r(1450)](this[r(1622)][r(1251)],...e)}[t(485)](...e){const r=t;this.log(this[r(1622)][r(811)],...e)}[t(981)](e,r){const o=t;let n=window[o(1489)]||E,i=JSON.stringify(e),s=JSON[o(1014)](this[o(525)])[o(1260)](this.globalOptions.serviceKey,o(976)),a=v()[o(1540)](" ",2);this[o(1827)][o(801)](o(845)+i+o(1704)+s+"\n");let c=o(606)+a[0]+"@"+a[1][o(1540)](".",1)[0]+o(598),u=new File(this.logContainer,c,{type:"text/plain;charset=utf-8"});return r&&n(u),u}[t(1548)](){const e=t;this[e(1827)]=[],this[e(1559)]=-1}}class D{listeners={};[t(629)]={joined:"joined",reconnected:t(782),disconnected:"disconnected",kick:t(1237),someoneJoined:t(1547),someoneLeft:t(532),published:t(320),publishedEx:t(1529),publishedScreenEx:"publishedScreenEx",publishedCustom:t(1672),subscribed:t(608),streamAdded:t(1451),streamRemoved:t(973),streamUpdated:t(1828),nameUpdated:t(318),infoUpdated:t(460),message:t(1449),mixerTask:"mixerTask",webpageTask:t(1113),videoOption:"videoOption",deviceList:t(715),deviceChanged:t(1313),audioReport:t(500),videoReport:t(1169),audioTest:t(851),networkReport:t(726),qosReport:"qosReport",netWeakChange:t(315),permission:"permission",camera:t(1054),cameraEx:t(752),screen:"screen",screenEx:t(1310),custom:t(1580),needUserPlay:t(665),audioTrackStopped:"audioTrackStopped",subscribeRecover:t(1638),videoFreezeWarn:t(375),error:"error"};[t(1009)]=10;constructor(e){const r=t,{maxListener:o,localLog:n}=e;this[r(847)]=n,o&&this[r(1441)](o)}addListener(e,r){const o=t;!r instanceof Function?this[o(847)][o(485)](o(638)+e+" should be a function"):this[o(326)][e]&&this.listeners[e][o(1524)]>=this.maxListener?this.localLog[o(485)]("too many listeners, add listeners "+e+o(1157)):(this[o(847)][o(1055)](o(706)+e+")"),this[o(326)][e]instanceof Array?-1===this.listeners[e][o(199)](r)&&this.listeners[e][o(801)](r):this[o(326)][e]=[][o(1539)](r))}[t(1473)](e,r){const o=t;if(!this[o(326)][e]||0===this[o(326)][e][o(1524)])return void this[o(847)][o(1023)](o(1369)+e+o(1437));let n=this[o(326)][e][o(199)](r);n>=0&&(this[o(326)][e][o(488)](n,1),this[o(847)][o(1055)](o(1369)+e+o(1163)))}[t(742)](e){const r=t;this.localLog[r(1055)](r(654)+e+")"),this[r(326)][e]=[]}[t(1441)](e=10){this[t(1009)]=e}emit(e){const r=t;if(!e)return;let o=Array[r(225)][r(1515)][r(228)](arguments);if(o[r(1226)](),[r(1127),r(726),r(1169),"audioReport",r(605)].indexOf(e)<0&&(e===r(1449)?this[r(847)].logInfo("event ["+e+r(917)):this[r(847)][r(1055)]("event ["+e+"]",o)),this.listeners[e]&&this[r(326)][e][r(1524)]>0){const t=[];this.listeners[e][r(1505)]((e=>{t[r(801)](e)})),t.forEach((e=>{e[r(962)](null,o)}))}}[t(1022)](){this[t(326)]={}}}const T=navigator[t(1141)][t(1399)](),R=!!T[t(1751)](/\(i[^;]+;( U;)? CPU.+Mac OS X/i),C=(()=>{const e=t,r=T[e(1751)](/cpu iphone os (.*?) like mac os/);return r&&typeof r[1]===e(645)?r[1][e(1190)]?r[1].replaceAll("_","."):(r[1]=r[1][e(1260)]("_","."),r[1].replace("_",".")):null})(),L=/safari/[t(189)](T)&&!/chrome/[t(189)](T);function P(){const e=["joinRoomEx","values","reuse","audioProcessor"," WHERE key = ? LIMIT 1","encodetime","wsUpdateName",",enabled:","ondevicechange","Record","videoFramesDecoded","audioContext","onIceStateChange","update name sucess: ","broadcast","PENDING","users","denoiser start: ","description","muted","resolve","wsHandleStartLive","getQosData","sdk version: ","otherCallRejected","Encoded","blob","video/rtx","4152dJkNxl","currentScript","_initReady","FacingMode","outBandWidth","fpscap normal, trigger unmute","deserialize","oncomplete","isDownloaded","rejected","previewing, try later","AudioOutput","all","audioElem","VideoError","onError","lastMuteAudio","packetsReceived","match","[setRole]: ","routineAudioReport","downloadTime","info","room response error, no token","videoFPSReceived","autoplayHack","setPublishLayer type no support","Capturer","Failed to get type for BinaryArray","forages","stunURL","sdpFmtpLine","startNormalBitrate_time","rtt",", audioInputID:","updateUser","getDeviceInfo","getLayerBw","turnUser","assign","data","cameraPreview","update stream info error","debug",",mauth_signature=","sampleRate","objectStore","_public_cloud_","config","on error, join request deprecated, reqId: ","bad","facingMode","selectLayer: no stream","streamType","getCapabilities","Decoded","QUOTA_ERR","Response","wsHandleNotifyMixer","getSenders","role not in same group",", LastModified: ","script","ispCode","current role can not publish","timeout exceeded","noiseSuppression","_dbInfo","catch an error when apply for stream, ","subscribe stream error",", enable:","uic8","wsHandleUnsubscribe","unpublishEx(tag:","answerRtcPeerConn","muteRemoteStream","E009","askForPermission","[object Blob]","detail","Invalid arguments","updateName","getFullYear","[wsHandleNetStatChanged] msgtype:","readwrite","delUnableAutoPlayElem","destinationNode","setElementSinkId","timeout of ","muteAudio","userActionData","start","media-source","netlevel","logContainer","streamUpdated","autoLayout","need audio track","text","publish error, cannot handle seq id ","wsHandleStreamUpdated","videoRtt","si32","publishedScreenEx","setAttribute","tag","Content-Type","E011","close peer conn error, ","wsHandlePublish() code:","getSerializer","ms and retry:","print before ready, ","publish respond error, requestID: ","stuckData","targetLayerIndex","Invalid serviceID:","set audio output error","connectionState","trackInfo,onended:","deleteObjectStore",", add ice candidate error, ","videoBitrate","trackInfo:","camera had been opened already","publish response code not zero","reviseStreamData","createTextNode","lcoalMuteVideo","supports","SELECT name FROM sqlite_master WHERE type='table' AND name = ?","#audio","[stopMixer]","wsHandleUnPublish","bitrateList","videoNoRcvdTimes","RequestIpInfoErr","videoHeight","localMuteAudio","streamNetworkReport",",url:","index","leaveRoom","mixer","sendonly","isChange","test","firCount","firstDataUploaded",", errdesc: "," msid:(.*)\r?\n","screenLayers","state","6354234Sedccj","netWeakMuteVideo","track","indexOf","pause","localMuteVideo","INSERT OR REPLACE INTO ","captureStream not exit","totalFreezesDuration","set device error","must be an array","not started recording, ","openCursor","crossOrigin","audioRemoteIn","stamp","reject","replacePCTrack","createElement","OPEN","request ip info success, resp:","not found","LogErrorType",")})","diff=",", msg:","setCodecPreferences error:","AES","const","prototype","onunmute","Unsubscribed","call","storeNames",", muteAllStreamAudio: ","), enableInspire: ","replaceCustomTrack","captureStream","qosReport(enable:","videoCodec","wsHandlePing","onloadend","Join","user play fail: ","PrintError","onmute","currentTarget","request ip info error, retry exceed max count:",", uid:","joined","failCheck","addEventListener","framesEncoded","emitNetWeakReport","wsUpdate","unknown","MessageChannel","[websdk] ","addModule","autoFocusScreen","stopMediaStream","failed","getDate","pauseAllStreamAudio","streamVideoReport","context","视频流解码无输出帧","abs","stopMediaTrack","connect","MODULE_NOT_FOUND","[stopWebPage]",",mauth_timestamp=","href","outbound-rtp","video/webm;codecs=h264,opus","add bitrate control error, no minBitrate","2273174EfxUfQ","averageBitrate","视频无发送数据","connection error","WEBSQL","method","[printLocal]","isSubscribeFailed","[object Int32Array]","continueSpeakTime","executeSql","AudioInput","stop denoiser fail: ","编码异常","Constraints","FULFILLED","unsubscribe-","recordLocal","customPreview","Track","userPlay",'The database "',"reason","kick: ","undefined","Decoder","JoinError","autoDownload","preview: plugin not correct","PreviewError","level","previewEx(vodeo.id:","adaptVideoConstraints","framesSent","setSinkId","videoPktsSent","open screen previewEx error, ","pluginEtag","cleanVideoEvent","unpublish","status","self aes decrypt error, ","netWeakChange","remote-inbound-rtp","sdpAddSimulcast","nameUpdated","_localforage_support_test","published","getPluginEtag","setPluginEtag","If-Modified-Since","totalStuckCount","startMixer","listeners",", local publish error,code:","subscribe","wrapStuckData"," WHERE id = ? LIMIT 1","unpublish(streamType:","eventBus","enumerateDevices","record error, stream","encodings","checkQosUplinkError","encode","wsHandleUpdateRoom","toString","wsHandleUserJoined","audio"," meta data received ","previewScreenEx","wsSender","commonweb","LogErrorCode","join room error","negotiate error, type: error, streamID: ","publish error, requestID: ","audioLevel","RTCPeerConnection","Environment","unlogTrackInfo","remote-candidate","storage fail","countryCode","checkVideoPlay","availableIncomingBitrate","ipInfoMaxRetryCount","interruptionCount","203013","`reqest ip info:","includes","playsInline",", tag:","enc","documentElement","[object Uint8Array]","jsCode","websocket connected,","remote pubid:","systemMuteVideo","optimizeDeviceList","init","videoFreezeWarn","uid","result","publish before preview"," (id INTEGER PRIMARY KEY, key unique, value)","applyConstraints fail","updateInfo(streams:","frameRateInterval","detail:","initCore","msg","resetDefaultDevice","openKeyCursor","onClose","muteVideo","trackInfo,onmute:","SetDeviceError","recorder","playDuration","initTime","applyConstraints","getDisplayMedia","getDeviceUsingPermission before await navigator.mediaDevices.getUserMedia(constrains:","markVideoEnded","wsInitialize","updateName(name:","getMilliseconds","1106UFFnvb","[recordRemote]","decodeDelay","beginStuckTime","qosHistroyData","x-google-min-bitrate=",", interval:","previewCustom(videoElement:","setPublishLayer, type:","historyReport","wsHandleNotifyWebPage","readAsBinaryString","open media preview error","response","send","streamInfo","Audio","addVideoEvent","application/json","startMuteTime",'" has been upgraded from version ',"excAddress","bytes","[object Float64Array]","cameraEnableVideo","getNetworkMinBw","value","mediaType","本地无采集输出","drawImage","catch","can not add module to audio worklet,","SetRoleError","open camera preview error, ","wsHandleWebPage","inspired stream: ","candidate-pair","setDevicePreference","inbound-rtp","requestIpInfo","bindWindowEvent","probator","can not stop recording, stream","COMMON","[getDevices]: enableDetail: ","Play","192.","[recordScreen], open screen error","publish error, bad response","wsHandleRole","userDNS","your browser can not support audio context","create","unpublish-","request ip info error, no cityInfo, response:","callback","onConnectionStateChange","name invalid","infoUpdated","_wrapLibraryMethodsWithReady","statusText","Sent","removeEventListener","videoElem","publishEx before join","audioinput","Role","lastIndexOf",', but the storage "',"1.8","onupgradeneeded","wsWebPage","setOption","getElementsByTagName"," failed","videoFps","userArea","checkDeviceList","videoReport(enable:","mute local too often","param error","publish stream error","ipAddr","logError","mediatype","deviceId","splice","auidoTest, levelList:","peeruserid","subscribe recover:",", role:","wasm Etag: ","ask for permission but devices were not readable","controls","VideoInput","succeeded","m=audio","StreamTrack","audioReport","videoPacketsSent","updateTime","getVideoTracks","\" can't be downgraded from version ","wsHandleRoomUpdated","videoEnded","userRole",", detail:","app","levelList","replaceTrack","[streamUpdated] uid:","function","videoTrack","then","screenPreviewEx","codec","Live","Layers","active","unsubscribe","request","getVideoConstraints","streams","globalOptions","audioSource","frameHeight","recordLocalEx","E003","customCanPlay","unpublishScreenEx(tag:","someoneLeft","UplinkWeak","recordRemote","update name error","cleanTimer","ios","audioWorklet","onMessage","cannot set simulcast layers encoding, getParameters or setParameters is not available","MediaType","autoRecovery","webpage","wsHandleUpdate","content","routineQosLog","videoPktsRcvd","created","publisher not found","Custom","Camera","[setPublishRatio]","token","lastIntervalTime","streamAudioTest","parameter(s) error,check it please","url","type","url needed","logSize","_driver","sdpNormalizer","subscribe error,","getBlob","Video","turnURL","Cannot find module '","packetization-mode=1","checkStreamFirstUpload",", open:","framesDropped","audio/opus","Services","Sender","screen","localStorageWrapper","layerindex","reportInfo","guardian","ConstraintError","sdpAddProbator","[join]: role invalid","restartIce","UserRole","inBandWidth","vbad","stuckCount","getStreamByPubIDorTag","createRtcPeerConn","addTrack","[recordLocalEx]"," input","MixerErr","default","open camera before select device","desc","connection state: failed",".txt","averageVideoFps","hirtc-denoiser","REJECTED","playTime","E006","onended","error","hirtc-web@","oncapturehandlechange","subscribed"," mslabel:","record remote before ready","sdpAddSIM","_support","ui08","completed","begin recover","max","onIceNegotiationNeeded",", muteLocal","joinRoom with force areaCode:","errtype","secure","releaseAudioProcessor","setVideoElementStream","wsHandleNetStatChanged","isStarted","group","joinRoom","createInstance","Event","contentHint","label","音频流无接收数据","retry exceed max count:","code","lastvideoinput","getCore","CREATE TABLE IF NOT EXISTS ","bad listener, listener ",", options: ","media preview videotrack is not available","fulfilled","webkit-playsinline","wsHandleNameUpdated","E000","string","framesReceived","getDeviceInfo(deviceID:",", deviceID:","resopnse","inputBuffer",", area:","screenPreview",", levelList:","removeAllListener(","si08","join","audio test audioElement error","enableDomAutoPlay","[object Object]","filter","UserAction","QosEvent","Rtc","INDEXEDDB","needUserPlay","E007","muteStream","last","wsJoin","input","_defaultConfig",", muteLocalCustom","videoinput","_initStorage","PlatformType","getBrowserSupported","destination","warn","resumeAllStreamAudio","getUplinkNetworkReport","wsHandleLeave","ErrorDetail","m=video","decode","[object Int8Array]","not MediaStream","set video element source error, ",", videoInputID:","No available storage method found.","devUrl","preventDefault","screen sharing, can not publish","subscribeBegin","activeDuration","preview(","jitterBufferDelay","setPublishRatio, layer info error","WebAssembly","count","ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/","load","request fail","keys","enableDenoiser: ","publishID","addListener(","wsRole","bad response, decryption failure",", muteAudio:","[printRemote]","dType","HiWebrtcsdk","substr","append","deviceList","targetBw","callFulfilled","pair","exports","E005","exT:","item","width","cameraEnableAudio","get permission error","networkReport","muteLocal(streamType:","wsHandleStreamRemoved","getSeconds","setParameters","preview","isArray","forceAreaCode","storeName","onDeviceChange","web page respon error: ","TypeError","onerror","_hiRtcSDK.getDeviceUsingPermission end","reconnectingStreams","quality","removeAllListener","getContext","videoOutList","fps","onOpen","[recordLocalScreenEx]","totalStuckDuration","emitError","peerErrorEvent","symbol","cameraEx","muteLocalStreamCamera","nack","domain","groupId","_getSupportedDrivers","audioOut","substring","denoiser","Couldn't convert value into a JSON string: "," not support yet","Method ",'dropInstance blocked for database "',"not support audio process","wsUpdateInfo","publish","offer","request room error,status: ","setCustomProfile(videoEle:","preview video error, ","bwsend","muteRemote(subscribeID:","video/h264","streamServer","task","getTrackFunc","E008","234438QNJoSj","SecurityError","serAddress","reconnected","data:text/javascript;base64,LyoqCiAqIGhpcnRjLWRlbm9pc2VyLXdhc20gdjEuMC4wLjIwMjMxMTIzMQogKiBidWlsZCBkYXRlOiAyMDIzLzExLzIzCiAqIEBKdUhhb0thbiBIaXNlbnNlCiAqLwoKY29uc3QgdD1GbG9hdDMyQXJyYXkuQllURVNfUEVSX0VMRU1FTlQsZT1VaW50MTZBcnJheS5CWVRFU19QRVJfRUxFTUVOVDtjbGFzcyBue2NvbnN0cnVjdG9yKHQsZSxuLHMpe3RoaXMuX2lzSW5pdGlhbGl6ZWQ9ITEsdGhpcy5fbW9kdWxlPXQsdGhpcy5fbGVuZ3RoPWUsdGhpcy5fbWF4Q2hhbm5lbENvdW50PXM/TWF0aC5taW4ocywzMik6bix0aGlzLl9jaGFubmVsQ291bnQ9bix0aGlzLl9hbGxvY2F0ZUhlYXAoKSx0aGlzLl9pc0luaXRpYWxpemVkPSEwfV9hbGxvY2F0ZUhlYXAoKXtjb25zdCBuPXRoaXMuX2xlbmd0aCp0LHM9dGhpcy5fY2hhbm5lbENvdW50Km47dGhpcy5fZGF0YVB0cj10aGlzLl9tb2R1bGUuX21hbGxvYyhzKSx0aGlzLl9jaGFubmVsRGF0YT1bXTtmb3IobGV0IHQ9MDt0PHRoaXMuX2NoYW5uZWxDb3VudDsrK3Qpe2NvbnN0IHM9dGhpcy5fZGF0YVB0cit0Km4sYT1zK247dGhpcy5fY2hhbm5lbERhdGFbdF09dGhpcy5fbW9kdWxlLkhFQVBGMzIuc3ViYXJyYXkocz4+ZSxhPj5lKX19YWRhcHRDaGFubmVsKHQpe3Q8dGhpcy5fbWF4Q2hhbm5lbENvdW50JiYodGhpcy5fY2hhbm5lbENvdW50PXQpfWdldCBsZW5ndGgoKXtyZXR1cm4gdGhpcy5faXNJbml0aWFsaXplZD90aGlzLl9sZW5ndGg6bnVsbH1nZXQgbnVtYmVyT2ZDaGFubmVscygpe3JldHVybiB0aGlzLl9pc0luaXRpYWxpemVkP3RoaXMuX2NoYW5uZWxDb3VudDpudWxsfWdldCBtYXhDaGFubmVsQ291bnQoKXtyZXR1cm4gdGhpcy5faXNJbml0aWFsaXplZD90aGlzLl9tYXhDaGFubmVsQ291bnQ6bnVsbH1nZXRDaGFubmVsRGF0YSh0KXtyZXR1cm4gdD49dGhpcy5fY2hhbm5lbENvdW50P251bGw6dm9pZCAwPT09dD90aGlzLl9jaGFubmVsRGF0YTp0aGlzLl9jaGFubmVsRGF0YVt0XX1nZXRIZWFwQWRkcmVzcygpe3JldHVybiB0aGlzLl9kYXRhUHRyfWdldFBvaW50ZXIoKXtyZXR1cm4gdGhpcy5fZGF0YVB0cn1mcmVlKCl7dGhpcy5faXNJbml0aWFsaXplZD0hMSx0aGlzLl9tb2R1bGUuX2ZyZWUodGhpcy5fZGF0YVB0ciksdGhpcy5fbW9kdWxlLl9mcmVlKHRoaXMuX3BvaW50ZXJBcnJheVB0ciksdGhpcy5fY2hhbm5lbERhdGE9bnVsbH19ZnVuY3Rpb24gcyh0KXtjb25zdCBlPWBbd2Vic2RrXSAke2Z1bmN0aW9uKCl7bGV0IHQ9bmV3IERhdGU7cmV0dXJuYCR7dC5nZXRGdWxsWWVhcigpfS8ke3QuZ2V0TW9udGgoKSsxfS8ke3QuZ2V0RGF0ZSgpfSAke3QuZ2V0SG91cnMoKX06JHt0LmdldE1pbnV0ZXMoKX06JHt0LmdldFNlY29uZHMoKX0uJHt0LmdldE1pbGxpc2Vjb25kcygpfWB9KCl9IHBsdWdpbiAtICR7dH1gO2NvbnNvbGUubG9nKGUpfWxldCBhPW51bGw7Y2xhc3MgaSBleHRlbmRzIEF1ZGlvV29ya2xldFByb2Nlc3Nvcntjb25zdHJ1Y3Rvcih0KXtzdXBlcigpLHQucHJvY2Vzc29yT3B0aW9ucyYmdC5wcm9jZXNzb3JPcHRpb25zLmpzQ29kZSYmKG5ldyBGdW5jdGlvbih0LnByb2Nlc3Nvck9wdGlvbnMuanNDb2RlKSgpLGE9Z2xvYmFsVGhpcy5Nb2R1bGUsdGhpcy5faGVhcElucHV0QnVmZmVyPW5ldyBuKGEsMTI4LDIsMzIpLHRoaXMuX2hlYXBPdXRwdXRCdWZmZXI9bmV3IG4oYSwxMjgsMiwzMikpLHRoaXMucG9ydC5vbm1lc3NhZ2U9dD0+e2NvbnN0e2RhdGE6ZX09dDtpZihlJiYiZGVzdHJveSI9PT1lLmFjdGlvbilzKCJwcm9jZXNzb3IgZGVzdHJveSIpLGEmJmEuY2NhbGwoImhpX2Rlbm9pc2VyX2ZyZWUiLCJ2b2lkIixbXSl9fXByb2Nlc3ModCxlLG4pe2lmKCF0fHwhYSlyZXR1cm47Y29uc3Qgcz10WzBdLGk9ZVswXSxyPXMubGVuZ3RoO3RoaXMuX2hlYXBJbnB1dEJ1ZmZlci5hZGFwdENoYW5uZWwociksdGhpcy5faGVhcE91dHB1dEJ1ZmZlci5hZGFwdENoYW5uZWwocik7Zm9yKGxldCB0PTA7dDxyOysrdCl0aGlzLl9oZWFwSW5wdXRCdWZmZXIuZ2V0Q2hhbm5lbERhdGEodCkuc2V0KHNbdF0pO2EuY2NhbGwoImhpX2Rlbm9pc2VyX3Byb2Nlc3MiLCJ2b2lkIixbIm51bWJlciIsIm51bWJlciIsIm51bWJlciIsIm51bWJlciJdLFt0aGlzLl9oZWFwSW5wdXRCdWZmZXIuZ2V0SGVhcEFkZHJlc3MoKSx0aGlzLl9oZWFwT3V0cHV0QnVmZmVyLmdldEhlYXBBZGRyZXNzKCkscixzYW1wbGVSYXRlXSk7Zm9yKGxldCB0PTA7dDxyO3QrKylpW3RdLnNldCh0aGlzLl9oZWFwT3V0cHV0QnVmZmVyLmdldENoYW5uZWxEYXRhKHQpKTtyZXR1cm4hMH19cmVnaXN0ZXJQcm9jZXNzb3IoImhpcnRjLWRlbm9pc2VyIixpKTsK"," cname:","pluginLastModified","screenEnableVideo","Cannot call a class as a function","audio/g722","setCustomProfile: url error","getReceivers","denoiser load success, sampleRate: ","checkStreamFirstDownload","Encoder","live","toDataURL","mediaDevices","print picture error","on success, ip request deprecated, msgId: ","-weak:","[object ArrayBuffer]","push","json","gapList","restartRtcPeerConn","play","publish(streamType:","streamID","leaveBeforeUnload","sdp add probator error"," used as a key, but it is not a string.","Error","maxBitrate","layerIndex","handleMessage_","setReceiverCodecPreferences","webPage","resume audio fail, session: ","mimeType","Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver","curVideoQuality","readAsArrayBuffer","_driverSet","reviseStreamDataNormal","setLocalDescription","sysAnchor","subType","mixer task error","IpInfoService","websocket open:","errcode","SubStreamType","version",", requestID: ","denoiser start fail","getUserMedia","isWeak","sampleRate not support: ","netWeakStats","stream","NotReadableError","initAudioContext","stuckDuration","print","params","@@@@ write log to file @@@@\ncore=","wsHandler","localLog","probatorSsrc","pktssent","delete","audioTest","getChannelData","wasm no cache","ready","downlinkStats","sdpAddLayer",", video:","duration"," cname:(.*)\r?\n","wsHandleStopLive","postMessage","user","set audio element source error, ","printLocalScreenEx","FpsList","updateSubLayer",", info:","unpublishCustom","PublishIce"," before preview","subscriber error, cannot handle seq id, params: ","AudioContext","tempMuteVideo","uplinkStats","processNode","outcome","checkedStreamFirstUpload","wrapUserActionData","defineDriver","uplink weak","WebSocket","hdQualityPriority","denoiser suspend","recoverTimeout","requestId: ","recorders","a=x-google-flag:conference\r\n","publishScreenEx before preview","Published","retry","custom sharing, can not publish","user rejected the permission application","map","cameraPreviewEx","triggerSubscribeLogUpload","no file url","oldVersion","onplay","getDeviceUsingPermission","getStreamInfoByRequestID","wsHandleNegotiate Notify: params:","video/H264","pktslost","wsHandleKick","responseURL","emitPeerError","receiver","wsHandleNegotiate() params.type:","iceServers","1fVDvCm","replace stream track, bad track type","routineAudioTestReport",", streamId:","unsubscribeEnd","wsHandleUpdateName","音频无发送数据","] got a msg","MsgType","publishScreenEx, info should be string","setCodecPreferences","queue","qosLogTimer","BeiJing","SubscribeIce","DeviceType","webSQLStorage","time","muteLocalStreamScreen","wsSubscribe","document","now","request ip info error:","wrapBaseData","android","record remote not found","setSimulcastLayerConfig","stack error, "," msid:"," is not implemented by the current driver","duplicate inspire stream: ","not start yet","sinkId","getPluginLastModified","subscribeID","checkRequirement","[WS-SEND]","setSimulcastLayerBitrate","setStreamReport","setPublishLayer","permission",",mauth_userid=","audioJitter","host","onIceStateChange ext:","replace peer connection audio track error,","resetSreenFramerate","wsHandleInfoUpdated","[object Float32Array]","join to session, rejoin mode","started","onConnectionStateChange ext:","apply","isPublishFailed","wsHandleUpdateLayer","removeItem","setPluginLastModified","SELECT * FROM ","sdpAddBitrateControl","networkReportInterval","Token","wsHandleUpdateInfo","timeout","streamRemoved","addTransceiver","localDescription","***","png","join(room:","mixerTask","deltaTime","logToFile","_ready","selected","totalBitrate","subscribe error, bad response, params: ","AbortError","ceil","transaction","get wasm time: ","negotiate error, remote","bps","cameraLayers","203003","unsubscribe, stream not found","setPublishRatio, layer shoud be object","updateNetWeakStats","record error","startSpeakTime","target","createScriptProcessor"," label:(.*)\r?\n","hirtcwebsdk","setOption(options:","open","setRequestHeader","uploadTime","Received","getAudioTracks","maxListener","recordLocalScreenEx","frameWidth","open screen preview error, ","userName","stringify","wsHandleUserLeft","share","wsHandleMessage","onload","end waitStreamTimer","requestID","autoplayFix","destroy","logWarn","cityCode","E010","routineNetworkReport","publishBegin","SELECT key FROM ","createObjectURL","number","publishers","prepare websocket","audioReport(aduioid: ","ssrc","fetchRangePercentL","MixerType","muteLocalScreenEx(tag:","muteLocalCustom(status:","web page task error","isMuting","Can't call config() after localforage has been used.","otherCallFulfilled","wss://","WebPageErr","subscribeEnd",".webm","presenter","start before load","recvonly","websocket disconnected, retry","Pause","communications","click","camera","logInfo","layers","notify","sign error, ","markPermission","negotiate error, local","selectLayer","getQosUplinkData","onblocked","[startMixer]","boolean","negotiate error","advance","aoni webcam A30","negotiate error, bad msg type","close","unpublishEx","initBrowserSupported","Publish","onsuccess","turnPwd","suspended","no cache","E002","LOCALSTORAGE","pause audio fail, session: ","negotiate notify error, params:","publishScreenEx(tag:","stack","negotiate error, bad msg type, params: ","pop","dotAddress","appendChild","jitterBufferEmittedCount","put","wsPing","tokenInfo","wsUpdateNetStat","audioTrackStopped","mediaStuck","reset local description error,",", forceCache: ","first init ws, retry:","Start","PublishError","setCore","websocket closed: ","object","reqId","customLog",", status:","fromCharCode","sdp","reload audioTrack","toggleMute","Receiver","audioPacketsSent","443","webpageTask","selectLayer: layerIndex out of range","X-Sign-For","load denoiser fail ","~~local_forage_type~","minFrameRate","auidoInterval","ondataavailable","file:","elementPlay","setDNS(rules:","cmd","set same role","publish, info should be string","qosReport","web socket disconnected","publishScreenEx","audience","trackInfo,oncapturehandlechange:","[printLocalScreenEx]","serviceKey","Update","videoJitter","negotiate error, streamID: ","negotiate","onDeviceChangeCallback","regionCode",", code not zero","userAgent","stream updated, but stream not found, stream=","publish-","si16","decrypt","browser supported constraints:","decoderImplementation","audioTrack","set autoplay error,invalid dom","answer","wsPrepare","TaskCmd","local pubid:","createOffer","StreamType","ontimeout"," out of limit",", err:","localforage","setSingleLayerConfig","publish before join","create stream fail:",") success!","__PLUGIN_VERSION__","role","backCamera","emit","readyState","videoReport","stopPropagation","NS_ERROR_DOM_QUOTA_REACHED",", has audioElement: ","jitter","join to session, normal mode","already in room","wsHandleNegotiate","videoWidth","publishEx, info should be string","printLocal","report","[WS-GET]","renego","totalVideoFps","network","dns","frames","onabort","Date","loading","replaceAll","wsNegotiate",", uName:","noopener","pliCount","not found stream","websocketPingInterval","continue","audioprocess","options","getMonth","userToken","publishEx","join error,","record","subStreams","driver","wsHandleStreamAdded","ParamsError","mfsip","reconnectStream","setDevice","onicecandidate","reconnectTimeout","forceCache","ErrorCode","_initDriver","onconnectionstatechange","getDriver","logTrackInfo","webkitAudioContext","floor","getQosDownlinkData","videoFPSSent","codecs","muteLocalReturnData","shift","local",", streamType:","Publisher","constructor","LOG_TYPE","getTargetBw","change ","setRole","videoBytesReceived","muteLocalEx(tag:","kick"," WHERE key = ?",",muted:","stuckData:","setDriver","emitNetworkReport","timestamp","InvalidStateError","sett simulcast layer bitrate error, ","unpublish error, bad response","getItem","getResponseHeader","wsHandleUpdateNetStat","srcObject","Warn","Info","unsupport plugin","open screen error","Leave","applyConstraints success","nackCount","msgId",", muteVideo:","replace","POST","Stop","setItem","audioPktsLost","lastLocalMuteAudio","core","screenEnableAudio","getDeviceUsingPermission after await navigator.mediaDevices.getUserMedia(constrains)","websocket error,","port1",", time: ","roomName","publishCustom, info should be string","audiolevel","promise","P000","[native code","no audio track, cant set framerate",", local: ","publishScreenEx before join","request ip info error","ice conn change to","serializer","routineCheckStreamFirstUpload","3719880xTeVEa",", ready:","get","canvas",", code: ","[pauseWebPage]","room service response error, token info error,","_config","clearRect","print ","publishEx(tag:","audioPktsRcvd","replace screen track error","on error, ip request deprecated, msgId: ","currentRoundTripTime","allSettled","getDeviceList","common","clockRate","startLowBitrateTime","videoFreezeLog",", layerIndex:","layout","stopped","1.0.4.2024042434","screenEx","setCustomProfile","customLayers","deviceChanged","unsubscribe(publishIDorTag:","responseText","negotiate error, drop not found stream, params: ","videoNoSentTimes","onFulfilled"," label:","prepare ice reconnection","MutationObserver","MAuth realm=http://marte3.dit.upm.es,mauth_signature_method=HMAC_SHA1","Subscriber","https://brs-hirtc.hismarttv.com/v1/auth/token","requestTimeout","targetBitrate","offer:","previewScreenEx(vodeo.id:","Subscribe","serialize","updateInfo","you browser does not support output device selection","Driver not found.","availableOutgoingBitrate","hidden","Database version must be a number.","room service response error, no token info","replaceStreamTrack","closeRtcPeerConn","dbReady","E004","publicCloud","port2","selectLayer(subscriberID:","userAgent: ","ask for permission error, no valid device,","displaySurface","videoPktsLost","deferredOperations","ipInfoRetryCount","videoOut","NotSelectDevice","setDenoiserConstraints","WebKitMutationObserver","rel","bind","videoDelay",'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.',"a=ssrc:","errdesc","unsubscribeBegin","wsMessage","video","4FSqMdz","frameRate","mute","DROP TABLE IF EXISTS ","videoRemoteIn","removeListener(","key","weak",", params:","audioCodec","a=fmtp:[a-z0-9 -=]*packetization-mode=1;","application/json, text/javascript, */*","negotiate error, drop not found stream ","streamAudioReport","getAudioConstraints","getAttribute","no audio device","audioLevelLog","peerError","selfAESDecrypt","getDownlinkNetworkReport","ui32","wsHandleJoin","packetsSent","sender","releaseAudioTestProcessor",",document:","clearnStreamNetData","enabled","preview audio error, ","negotiate error, stream id not found, params: ","wsPublish","record stream","you were in room already","203005","toLowerCase"," (key, value) VALUES (?, ?)","deviceID needed, should be string","streamInfo.ready:","random","spanDuration","onreadystatechange","subscriber error, code not zero, params: ","If-None-Match","mozCaptureStream","unpublishScreenEx","resetStreamData","getStreamNetLevel","publicIP"," in subscribing process or subscribed already","Joined","getTransceivers","getAllResponseHeaders",", sdp:","setCustomProfile: videoElement error","video-","findCorrectBackCamera","sourceAudioTrack","wsMixer","packetsLost","trackInfo,onunmute:","startFrameRateCheck","muteLocalStream","bytesSent","1055905oAGatF","enableInspire","getWasm fail: response no data","find","echoCancellation","triggerLogUpload","310541ySmCcm","a=ssrc-group:SIM","callRejected",") failed, not function found!","iterator","cityInfo","getParameters","setMaxListeners","previewEx","canvasInterval","candidate","buffer","both audio and video have been disabled","videoInputID","statement","message","log","streamAdded","getStreamInfo","wsHandlePublish(","application/x-www-form-urlencoded; charset=utf-8","sdpMid","Media","[setVideoOption]","ipReqId","logReport","capabilities","getPluginStatus","createMediaStreamSource","checkQosDownlinkError","connectionState failed ext:","sort","iceConnectionState","stuckDuration: ","stopFrameRateCheck","printLocalEx","ConnectionError","publishEnd","min","removeListener","contains","AllDisabled","layerscount",", type: ","SELECT COUNT(key) as c FROM ","wsUnPublish","getWasm","post","joinBegin","rows","firstDataDownloaded","tempVideoElem","denoiser resume","serviceID","setSenderCodecPreferences","saveAs","isInspired","wsHandlePublish","cameraChangePreview","getHours","ip request: ","cannot set simulcast layers bitrate, getParameters or setParameters is not available","charCodeAt","Redefining LocalForage driver: ","onstop","Promise","interval","setSimulcastLayerEncoding","resume","isWsOpen","oniceconnectionstatechange","forEach","parse","monitor","stop","create session description error, ",",readyState:","negotiate notify failed, streamInfo.id:","setAudioElementStream","emitPreviewError","wsUpdateLayer","slice","handle preview error","x5-playsinline","restart ice ok, prepare ice negotiation","videoRemoteInList","enableProbator","lastRequestID","startNormalBitrateTime","framesDecoded","length","NotAllowedError","useCache","audioInputID","session","publishedEx",", subscribeID:","[object Uint16Array]","clone","devices","freezeCount","h264DecodeSupported","response no data","LogType","update","concat","split","disconnect","sourceNode","ice connection state: failed","audioContext add module success","fetchRangePercentH","wasm has cache","someoneJoined","clear","setCustomProfile: custom not preview yet","StreamRole","reconnect stream ","audioDelay","leave()","unableAutoPlay","bytesReceived","sysAudience","audiooutput","chunks","logIndex","muteAllStreamAudio","waitStreamTimer","signature","Notify","isBindWindowEvent","createObjectStore","wsHandleSubscribe","subscribe-","reconnect","src","unshift","denoiser create: ","getConfig","bytessent","joinEnd","disconnected","routineStuckLog","web page notify error: ","keyPrefix","framesPerSecond","custom","qosError, errtype: ","Area","loadedmetadata","setImmediate","unpublishEnd","remoteCandidate","addListener","tryPreview","qosUploadInterval","SYNTAX_ERR","Unpublished","downloadPlugin: ","screenshot remote before subscribe","sdpAddGroup","PreviewAlready","unload","NotFoundError","FULL HD webcam","totalInterruptionDuration","canvasTimer"," play success","canplay","remote","httpRequest","joinReqId","Network Error","wsLeave","replace peer connection video track error,","room response error","keyvaluepairs","tempMuteAudio","154","[object Array]","streamid","getStats","RecordError","change simulcast layer active, ","SUCCESS","DELETE FROM ","audioPktsSent",", id: ","LogLevel","request ip info error, ","connected","E001","multicast","wrapErrorData","videoFrameHeight","denoiser already loaded","sampleNum",".*\r?\n","autoInsertScreen","audioRtt","no need subscribe recover","responseType","getStreamReport","reviseStreamDataRejoining","subscribeRecover","wsUnsubscribe","cameraExLayers","weakDuration","setRole:","stuckLogTimer","sessionStorage","name","dropInstance","enableDenoiser","getNetLevel","objectStoreNames","SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'","hasOwnProperty",'" already exists.',"begin audio test, sampling: ","selectLayer: no subscriberID","act","getPubIdBySubId","init websocket error","anonymous","triggerPublishLogUpload","cleanStreamData","[message] sent a msg to"," , area:","Screen",'" until all open connections are closed',"audioNoRcvdTimes","headers","payloadType","userID","height","wsBaseEvent","videoBytesSent","publishedCustom","onRejected","negotiate error, type: failed, streamID: ","set session description error, err:","loaded","wsHandleLayerReqChanged","camera had been preview already","getLayersByStreamInfo","dot","Unknown","ping","480PYyMpY","Subscribed","203001","Utf8","kind","negotiate error, stream id not found","recordScreen","unsubscribe error, bad response","getTracks","request room error","audioNoSentTimes","roundTripTime","E012","[updateMixer]","unpublishBegin","before subscribe","wsUpdateRoom","closed","supported","receive user stream added but user not found","port","\noptions="];return(P=function(){return e})()}var x={ios:R,iosVer:C,android:T[t(199)](t(934))>-1||T.indexOf("adr")>-1,androidVer:T.match(/android (.*?);/),isSafari:L},O="undefined"!=typeof globalThis?globalThis:typeof window!==t(297)?window:"undefined"!=typeof global?global:typeof self!==t(297)?self:{};function A(e){throw new Error('Could not dynamically require "'+e+t(1358))}var N={exports:{}};N[e(719)]=function t(r,o,n){const i=e;function s(i,c){const u=e;if(!o[i]){if(!r[i]){var d="function"==u(513)&&A;if(!c&&d)return d(i,!0);if(a)return a(i,!0);var l=new Error(u(567)+i+"'");throw l.code=u(266),l}var p=o[i]={exports:{}};r[i][0][u(228)](p[u(719)],(function(e){return s(r[i][1][e]||e)}),p,p[u(719)],t,r,o,n)}return o[i][u(719)]}for(var a="function"==i(513)&&A,c=0;c<n[i(1524)];c++)s(n[c]);return s}({1:[function(t,r,o){const n=e;(function(t){const o=e;function n(){const t=e;p=!0;for(var r,o,n=f[t(1524)];n;){for(o=f,f=[],r=-1;++r<n;)o[r]();n=f[t(1524)]}p=!1}function i(t){1!==f[e(801)](t)||p||s()}var s,a=t[o(1321)]||t[o(1354)];if(a){var c=0,u=new a(n),d=t[o(930)][o(1860)]("");u.observe(d,{characterData:!0}),s=function(){d.data=c=++c%2}}else if(t[o(1584)]||void 0===t.MessageChannel)s="document"in t&&o(1405)in t[o(930)].createElement(o(1795))?function(){const e=o;var r=t[e(930)][e(214)](e(1795));r[e(1405)]=function(){const t=e;n(),r[t(1405)]=null,r.parentNode.removeChild(r),r=null},t[e(930)][e(367)][e(1087)](r)}:function(){setTimeout(n,0)};else{var l=new(t[o(252)]);l[o(1270)].onmessage=n,s=function(){const e=o;l[e(1343)][e(861)](0)}}var p,f=[];r[o(719)]=i})[n(228)](this,void 0!==O?O:n(297)!=typeof self?self:n(297)!=typeof window?window:{})},{}],2:[function(t,r,o){const n=e;function i(){}function s(t){const r=e;if(r(513)!=typeof t)throw new TypeError("resolver must be a function");this[r(195)]=w,this[r(921)]=[],this.outcome=void 0,t!==i&&d(this,t)}function a(t,r,o){const n=e;this[n(1275)]=t,n(513)==typeof r&&(this[n(1318)]=r,this[n(717)]=this[n(1042)]),n(513)==typeof o&&(this[n(1673)]=o,this[n(1436)]=this.otherCallRejected)}function c(t,r,o){v((function(){const n=e;var i;try{i=r(o)}catch(e){return y[n(212)](t,e)}i===t?y[n(212)](t,new TypeError("Cannot resolve promise with itself")):y[n(1725)](t,i)}))}function u(t){const r=e;var o=t&&t[r(515)];if(t&&("object"==typeof t||r(513)==typeof t)&&r(513)==typeof o)return function(){o[r(962)](t,arguments)}}function d(t,r){const o=e;function n(r){a||(a=!0,y[e(212)](t,r))}function i(r){a||(a=!0,y[e(1725)](t,r))}function s(){r(i,n)}var a=!1,c=l(s);o(605)===c.status&&n(c.value)}function l(t,r){const o=e;var n={};try{n.value=t(r),n[o(313)]="success"}catch(e){n[o(313)]=o(605),n[o(428)]=e}return n}function p(t){return t instanceof this?t:y[e(1725)](new this(i),t)}function f(t){const r=e;var o=new this(i);return y[r(212)](o,t)}function m(t){const r=e;function o(t,r){const o=e;function i(t){const o=e;c[r]=t,++u!==s||a||(a=!0,y[o(1725)](l,c))}n.resolve(t)[o(515)](i,(function(e){a||(a=!0,y.reject(l,e))}))}var n=this;if(r(1613)!==Object.prototype[r(339)][r(228)](t))return this[r(212)](new TypeError(r(206)));var s=t[r(1524)],a=!1;if(!s)return this[r(1725)]([]);for(var c=new Array(s),u=0,d=-1,l=new this(i);++d<s;)o(t[d],d);return l}function b(t){const r=e;function o(t){const r=e;n[r(1725)](t)[r(515)]((function(e){a||(a=!0,y[r(1725)](u,e))}),(function(e){a||(a=!0,y.reject(u,e))}))}var n=this;if(r(1613)!==Object.prototype[r(339)][r(228)](t))return this.reject(new TypeError("must be an array"));var s=t[r(1524)],a=!1;if(!s)return this[r(1725)]([]);for(var c=-1,u=new this(i);++c<s;)o(t[c]);return u}var v=t(1),y={},h=[n(601)],g=[n(288)],w=[n(1720)];r[n(719)]=s,s[n(225)].catch=function(e){return this[n(515)](null,e)},s[n(225)][n(515)]=function(e,t){const r=n;if(r(513)!=typeof e&&this[r(195)]===g||r(513)!=typeof t&&this.state===h)return this;var o=new(this[r(1230)])(i);return this[r(195)]!==w?c(o,this.state===g?e:t,this[r(876)]):this[r(921)][r(801)](new a(o,e,t)),o},a[n(225)][n(717)]=function(e){const t=n;y[t(1725)](this[t(1275)],e)},a[n(225)][n(1042)]=function(e){const t=n;c(this[t(1275)],this[t(1318)],e)},a[n(225)][n(1436)]=function(e){const t=n;y.reject(this[t(1275)],e)},a.prototype[n(1729)]=function(e){const t=n;c(this.promise,this[t(1673)],e)},y[n(1725)]=function(e,t){const r=n;var o=l(u,t);if(r(605)===o[r(313)])return y[r(212)](e,o[r(428)]);var i=o[r(428)];if(i)d(e,i);else{e[r(195)]=g,e[r(876)]=t;for(var s=-1,a=e[r(921)].length;++s<a;)e[r(921)][s][r(717)](t)}return e},y[n(212)]=function(e,t){const r=n;e.state=h,e.outcome=t;for(var o=-1,i=e[r(921)][r(1524)];++o<i;)e[r(921)][o][r(1436)](t);return e},s[n(1725)]=p,s[n(212)]=f,s.all=m,s.race=b},{1:1}],3:[function(t,r,o){const n=e;(function(r){const o=e;o(513)!=typeof r.Promise&&(r[o(1499)]=t(2))})[n(228)](this,void 0!==O?O:"undefined"!=typeof self?self:n(297)!=typeof window?window:{})},{2:2}],4:[function(t,r,o){const n=e;function i(t,r){if(!(t instanceof r))throw new TypeError(e(787))}function s(){const t=e;try{if(t(297)!=typeof indexedDB)return indexedDB;if("undefined"!=typeof webkitIndexedDB)return webkitIndexedDB;if(t(297)!=typeof mozIndexedDB)return mozIndexedDB;if(t(297)!=typeof OIndexedDB)return OIndexedDB;if(t(297)!=typeof msIndexedDB)return msIndexedDB}catch(e){return}}function a(){const t=e;try{if(!Ie||!Ie[t(1004)])return!1;var r=t(297)!=typeof openDatabase&&/(Safari|iPhone|iPad|iPod)/[t(189)](navigator[t(1141)])&&!/Chrome/[t(189)](navigator[t(1141)])&&!/BlackBerry/[t(189)](navigator.platform),o="function"==typeof fetch&&-1!==fetch.toString().indexOf(t(1277));return(!r||o)&&t(297)!=typeof indexedDB&&t(297)!=typeof IDBKeyRange}catch(e){return!1}}function c(t,r){const o=e;t=t||[],r=r||{};try{return new Blob(t,r)}catch(e){if("TypeError"!==e.name)throw e;for(var n=new(o(297)!=typeof BlobBuilder?BlobBuilder:o(297)!=typeof MSBlobBuilder?MSBlobBuilder:o(297)!=typeof MozBlobBuilder?MozBlobBuilder:WebKitBlobBuilder),i=0;i<t.length;i+=1)n[o(714)](t[i]);return n[o(564)](r.type)}}function u(t,r){r&&t[e(515)]((function(e){r(null,e)}),(function(e){r(e)}))}function d(t,r,o){const n=e;n(513)==typeof r&&t.then(r),n(513)==typeof o&&t[n(432)](o)}function l(t){const r=e;return"string"!=typeof t&&(console[r(678)](t+r(810)),t=String(t)),t}function p(){const t=e;if(arguments[t(1524)]&&t(513)==typeof arguments[arguments.length-1])return arguments[arguments.length-1]}function f(t){const r=e;for(var o=t.length,n=new ArrayBuffer(o),i=new Uint8Array(n),s=0;s<o;s++)i[s]=t[r(1496)](s);return n}function m(t){const r=e;return new Ee((function(r){const o=e;var n=t[o(988)](ke,Le),i=c([""]);n[o(1779)](ke)[o(1089)](i,"key"),n[o(1187)]=function(e){const t=o;e[t(691)](),e[t(1170)](),r(!1)},n[o(1740)]=function(){const e=o;var t=navigator[e(1141)][e(1751)](/Chrome\/(\d+)/),n=navigator[e(1141)].match(/Edge\//);r(n||!t||parseInt(t[1],10)>=43)}}))[r(432)]((function(){return!1}))}function b(e){return"boolean"==typeof De?Ee.resolve(De):m(e).then((function(e){return De=e}))}function v(t){const r=e;var o=Te[t[r(1645)]],n={};n[r(1275)]=new Ee((function(e,t){n[r(1725)]=e,n.reject=t})),o[r(1349)][r(801)](n),o[r(1340)]?o[r(1340)]=o.dbReady[r(515)]((function(){return n[r(1275)]})):o[r(1340)]=n.promise}function y(t){const r=e;var o=Te[t[r(1645)]].deferredOperations[r(1085)]();if(o)return o[r(1725)](),o[r(1275)]}function h(t,r){const o=e;var n=Te[t[o(1645)]][o(1349)][o(1085)]();if(n)return n.reject(r),n[o(1275)]}function g(t,r){return new Ee((function(o,n){const i=e;if(Te[t[i(1645)]]=Te[t.name]||L(),t.db){if(!r)return o(t.db);v(t),t.db[i(1070)]()}var s=[t[i(1645)]];r&&s[i(801)](t[i(832)]);var a=Ie[i(1004)][i(962)](Ie,s);r&&(a.onupgradeneeded=function(e){const r=i;var o=a[r(377)];try{o[r(1565)](t.storeName),e[r(897)]<=1&&o.createObjectStore(ke)}catch(o){if(r(580)!==o.name)throw o;console.warn(r(294)+t[r(1645)]+r(422)+e[r(897)]+" to version "+e.newVersion+r(470)+t[r(734)]+r(1652))}}),a[i(738)]=function(e){e[i(691)](),n(a.error)},a[i(1074)]=function(){var r=a.result;r.onversionchange=function(t){const r=e;t.target[r(1070)]()},o(r),y(t)}}))}function w(e){return g(e,!1)}function S(e){return g(e,!0)}function I(t,r){const o=e;if(!t.db)return!0;var n=!t.db[o(1649)][o(1474)](t[o(734)]),i=t[o(832)]<t.db[o(832)],s=t[o(832)]>t.db[o(832)];if(i&&(t.version!==r&&console[o(678)](o(294)+t[o(1645)]+o(504)+t.db.version+" to version "+t[o(832)]+"."),t[o(832)]=t.db[o(832)]),s||n){if(n){var a=t.db.version+1;a>t.version&&(t[o(832)]=a)}return!0}return!1}function E(t){return new Ee((function(r,o){const n=e;var i=new FileReader;i.onerror=o,i[n(237)]=function(e){const o=n;var i=btoa(e[o(999)].result||"");r({__local_forage_encoded_blob:!0,data:i,type:t[o(558)]})},i[n(413)](t)}))}function k(t){const r=e;return c([f(atob(t.data))],{type:t[r(558)]})}function D(e){return e&&e.__local_forage_encoded_blob}function T(t){const r=e;var o=this,n=o[r(1735)]()[r(515)]((function(){const e=r;var t=Te[o._dbInfo[e(1645)]];if(t&&t[e(1340)])return t[e(1340)]}));return d(n,t,t),n}function R(t){const r=e;v(t);for(var o=Te[t[r(1645)]],n=o[r(1762)],i=0;i<n[r(1524)];i++){var s=n[i];s[r(1800)].db&&(s._dbInfo.db[r(1070)](),s[r(1800)].db=null)}return t.db=null,w(t)[r(515)]((function(e){return t.db=e,I(t)?S(t):e}))[r(515)]((function(e){const i=r;t.db=o.db=e;for(var s=0;s<n[i(1524)];s++)n[s][i(1800)].db=e}))[r(432)]((function(e){throw h(t,e),e}))}function C(t,r,o,n){const i=e;void 0===n&&(n=1);try{var s=t.db[i(988)](t[i(734)],r);o(null,s)}catch(e){if(n>0&&(!t.db||i(1244)===e[i(1645)]||i(1597)===e.name))return Ee[i(1725)]().then((function(){const r=i;if(!t.db||r(1597)===e.name&&!t.db[r(1649)].contains(t[r(734)])&&t[r(832)]<=t.db.version)return t.db&&(t.version=t.db.version+1),S(t)}))[i(515)]((function(){return R(t).then((function(){C(t,r,o,n-1)}))}))[i(432)](o);o(e)}}function L(){return{forages:[],db:null,dbReady:null,deferredOperations:[]}}function P(t){const r=e;function o(){return Ee.resolve()}var n=this,i={db:null};if(t)for(var s in t)i[s]=t[s];var a=Te[i[r(1645)]];a||(a=L(),Te[i[r(1645)]]=a),a.forages[r(801)](n),n[r(1735)]||(n[r(1735)]=n[r(854)],n[r(854)]=T);for(var c=[],u=0;u<a.forages.length;u++){var d=a[r(1762)][u];d!==n&&c[r(801)](d[r(1735)]()[r(432)](o))}var l=a[r(1762)][r(1515)](0);return Ee.all(c)[r(515)]((function(){return i.db=a.db,w(i)})).then((function(e){return i.db=e,I(i,n._defaultConfig.version)?S(i):e}))[r(515)]((function(e){const t=r;i.db=a.db=e,n[t(1800)]=i;for(var o=0;o<l[t(1524)];o++){var s=l[o];s!==n&&(s[t(1800)].db=i.db,s._dbInfo[t(832)]=i[t(832)])}}))}function x(t,r){var o=this;t=l(t);var n=new Ee((function(r,n){const i=e;o[i(854)]()[i(515)]((function(){C(o._dbInfo,Ce,(function(i,s){const a=e;if(i)return n(i);try{var c=s[a(1779)](o._dbInfo[a(734)]).get(t);c[a(1074)]=function(){var e=c.result;void 0===e&&(e=null),D(e)&&(e=k(e)),r(e)},c[a(738)]=function(){n(c[a(605)])}}catch(e){n(e)}}))}))[i(432)](n)}));return u(n,r),n}function O(t,r){var o=this,n=new Ee((function(r,n){const i=e;o.ready()[i(515)]((function(){const e=i;C(o[e(1800)],Ce,(function(i,s){const a=e;if(i)return n(i);try{var c=s[a(1779)](o[a(1800)].storeName)[a(208)](),u=1;c.onsuccess=function(){const e=a;var o=c.result;if(o){var n=o[e(428)];D(n)&&(n=k(n));var i=t(n,o[e(1370)],u++);void 0!==i?r(i):o.continue()}else r()},c[a(738)]=function(){n(c[a(605)])}}catch(e){n(e)}}))}))[i(432)](n)}));return u(n,r),n}function A(t,r,o){var n=this;t=l(t);var i=new Ee((function(o,i){const s=e;var a;n.ready()[s(515)]((function(){const e=s;return a=n._dbInfo,e(1811)===Re[e(228)](r)?b(a.db).then((function(e){return e?r:E(r)})):r}))[s(515)]((function(r){C(n._dbInfo,Le,(function(s,a){const c=e;if(s)return i(s);try{var u=a[c(1779)](n[c(1800)][c(734)]);null===r&&(r=void 0);var d=u.put(r,t);a[c(1740)]=function(){void 0===r&&(r=null),o(r)},a[c(1187)]=a.onerror=function(){const e=c;var t=d[e(605)]?d[e(605)]:d[e(988)][e(605)];i(t)}}catch(e){i(e)}}))}))[s(432)](i)}));return u(i,o),i}function N(t,r){var o=this;t=l(t);var n=new Ee((function(r,n){const i=e;o[i(854)]()[i(515)]((function(){const e=i;C(o[e(1800)],Le,(function(i,s){const a=e;if(i)return n(i);try{var c=s[a(1779)](o[a(1800)].storeName)[a(850)](t);s[a(1740)]=function(){r()},s.onerror=function(){n(c.error)},s[a(1187)]=function(){const e=a;var t=c.error?c[e(605)]:c[e(988)][e(605)];n(t)}}catch(e){n(e)}}))}))[i(432)](n)}));return u(n,r),n}function M(t){var r=this,o=new Ee((function(t,o){const n=e;r[n(854)]()[n(515)]((function(){const e=n;C(r[e(1800)],Le,(function(n,i){const s=e;if(n)return o(n);try{var a=i[s(1779)](r._dbInfo[s(734)])[s(1548)]();i[s(1740)]=function(){t()},i[s(1187)]=i[s(738)]=function(){const e=s;var t=a[e(605)]?a[e(605)]:a[e(988)][e(605)];o(t)}}catch(e){o(e)}}))})).catch(o)}));return u(o,t),o}function V(t){var r=this,o=new Ee((function(t,o){const n=e;r[n(854)]()[n(515)]((function(){C(r._dbInfo,Ce,(function(n,i){const s=e;if(n)return o(n);try{var a=i.objectStore(r._dbInfo.storeName)[s(699)]();a[s(1074)]=function(){t(a[s(377)])},a.onerror=function(){o(a[s(605)])}}catch(e){o(e)}}))}))[n(432)](o)}));return u(o,t),o}function j(t,r){var o=this,n=new Ee((function(r,n){const i=e;t<0?r(null):o.ready()[i(515)]((function(){C(o._dbInfo,Ce,(function(i,s){const a=e;if(i)return n(i);try{var c=s[a(1779)](o[a(1800)][a(734)]),u=!1,d=c[a(387)]();d[a(1074)]=function(){const e=a;var o=d.result;o?0===t||u?r(o[e(1370)]):(u=!0,o[e(1067)](t)):r(null)},d[a(738)]=function(){n(d[a(605)])}}catch(e){n(e)}}))}))[i(432)](n)}));return u(n,r),n}function W(t){var r=this,o=new Ee((function(t,o){const n=e;r[n(854)]()[n(515)]((function(){C(r._dbInfo,Ce,(function(n,i){const s=e;if(n)return o(n);try{var a=i[s(1779)](r._dbInfo[s(734)]).openKeyCursor(),c=[];a[s(1074)]=function(){const e=s;var r=a.result;r?(c[e(801)](r[e(1370)]),r[e(1197)]()):t(c)},a[s(738)]=function(){o(a.error)}}catch(e){o(e)}}))}))[n(432)](o)}));return u(o,t),o}function B(t,r){const o=e;r=p[o(962)](this,arguments);var n=this[o(1781)]();(t=o(513)!=typeof t&&t||{}).name||(t.name=t[o(1645)]||n.name,t.storeName=t.storeName||n.storeName);var i,s=this;if(t[o(1645)]){var a=t.name===n[o(1645)]&&s[o(1800)].db?Ee[o(1725)](s[o(1800)].db):w(t)[o(515)]((function(e){const r=o;var n=Te[t[r(1645)]],i=n[r(1762)];n.db=e;for(var s=0;s<i.length;s++)i[s][r(1800)].db=e;return e}));i=t[o(734)]?a[o(515)]((function(e){const r=o;if(e.objectStoreNames.contains(t[r(734)])){var n=e[r(832)]+1;v(t);var i=Te[t[r(1645)]],s=i.forages;e[r(1070)]();for(var a=0;a<s[r(1524)];a++){var c=s[a];c[r(1800)].db=null,c[r(1800)][r(832)]=n}return new Ee((function(e,o){const i=r;var s=Ie[i(1004)](t[i(1645)],n);s[i(738)]=function(e){const t=i;s[t(377)][t(1070)](),o(e)},s[i(472)]=function(){const e=i;s.result[e(1853)](t[e(734)])},s[i(1074)]=function(){const t=i;var r=s.result;r[t(1070)](),e(r)}}))[r(515)]((function(e){const t=r;i.db=e;for(var o=0;o<s[t(1524)];o++){var n=s[o];n._dbInfo.db=e,y(n[t(1800)])}}))[r(432)]((function(e){const o=r;throw(h(t,e)||Ee[o(1725)]())[o(432)]((function(){})),e}))}})):a[o(515)]((function(e){const r=o;v(t);var n=Te[t[r(1645)]],i=n[r(1762)];e[r(1070)]();for(var s=0;s<i[r(1524)];s++)i[s][r(1800)].db=null;return new Ee((function(e,o){const n=r;var i=Ie.deleteDatabase(t[n(1645)]);i[n(738)]=function(){const e=n;var t=i[e(377)];t&&t[e(1070)](),o(i[e(605)])},i[n(1063)]=function(){const e=n;console[e(678)](e(764)+t[e(1645)]+e(1664))},i.onsuccess=function(){const t=n;var r=i.result;r&&r[t(1070)](),e(r)}}))[r(515)]((function(e){const t=r;n.db=e;for(var o=0;o<i[t(1524)];o++)y(i[o][t(1800)])}))[r(432)]((function(e){const o=r;throw(h(t,e)||Ee[o(1725)]())[o(432)]((function(){})),e}))}))}else i=Ee[o(212)](o(1813));return u(i,r),i}function U(){return e(513)==typeof openDatabase}function F(t){const r=e;var o,n,i,s,a,c=.75*t[r(1524)],u=t.length,d=0;"="===t[t.length-1]&&(c--,"="===t[t[r(1524)]-2]&&c--);var l=new ArrayBuffer(c),p=new Uint8Array(l);for(o=0;o<u;o+=4)n=xe[r(199)](t[o]),i=xe[r(199)](t[o+1]),s=xe[r(199)](t[o+2]),a=xe[r(199)](t[o+3]),p[d++]=n<<2|i>>4,p[d++]=(15&i)<<4|s>>2,p[d++]=(3&s)<<6|63&a;return l}function J(t){const r=e;var o,n=new Uint8Array(t),i="";for(o=0;o<n[r(1524)];o+=3)i+=xe[n[o]>>2],i+=xe[(3&n[o])<<4|n[o+1]>>4],i+=xe[(15&n[o+1])<<2|n[o+2]>>6],i+=xe[63&n[o+2]];return n[r(1524)]%3==2?i=i.substring(0,i[r(1524)]-1)+"=":n.length%3==1&&(i=i[r(759)](0,i[r(1524)]-2)+"=="),i}function H(t,r){const o=e;var n="";if(t&&(n=Ze[o(228)](t)),t&&(o(800)===n||t[o(1445)]&&"[object ArrayBuffer]"===Ze[o(228)](t.buffer))){var i,s=Ne;t instanceof ArrayBuffer?(i=t,s+=Ve):(i=t.buffer,o(685)===n?s+=We:o(368)===n?s+=Be:"[object Uint8ClampedArray]"===n?s+=Ue:"[object Int16Array]"===n?s+=Fe:o(1531)===n?s+=He:o(281)===n?s+=Je:"[object Uint32Array]"===n?s+=Ge:o(958)===n?s+=qe:o(425)===n?s+=Xe:r(new Error(o(1761)))),r(s+J(i))}else if(o(1811)===n){var a=new FileReader;a[o(1018)]=function(){var e=Oe+t[o(558)]+"~"+J(this.result);r(Ne+je+e)},a[o(821)](t)}else try{r(JSON[o(1014)](t))}catch(e){console.error(o(761),t),r(null,e)}}function G(t){const r=e;if(t[r(759)](0,Me)!==Ne)return JSON[r(1506)](t);var o,n=t[r(759)](_e),i=t[r(759)](Me,_e);if(i===je&&Ae[r(189)](n)){var s=n[r(1751)](Ae);o=s[1],n=n[r(759)](s[0].length)}var a=F(n);switch(i){case Ve:return a;case je:return c([a],{type:o});case We:return new Int8Array(a);case Be:return new Uint8Array(a);case Ue:return new Uint8ClampedArray(a);case Fe:return new Int16Array(a);case He:return new Uint16Array(a);case Je:return new Int32Array(a);case Ge:return new Uint32Array(a);case qe:return new Float32Array(a);case Xe:return new Float64Array(a);default:throw new Error("Unkown type: "+i)}}function q(t,r,o,n){const i=e;t[i(283)](i(637)+r[i(734)]+i(379),[],o,n)}function X(t){const r=e;var o=this,n={db:null};if(t)for(var i in t)n[i]=r(645)!=typeof t[i]?t[i][r(339)]():t[i];var s=new Ee((function(t,i){const s=r;try{n.db=openDatabase(n[s(1645)],String(n[s(832)]),n[s(1723)],n.size)}catch(e){return i(e)}n.db[s(988)]((function(r){q(r,n,(function(){o[e(1800)]=n,t()}),(function(e,t){i(t)}))}),i)}));return n.serializer=ze,s}function _(t,r,o,n,i,s){const a=e;t[a(283)](o,n,i,(function(e,t){const c=a;t[c(634)]===t[c(1590)]?e[c(283)](c(173),[r[c(734)]],(function(e,a){const u=c;a[u(1483)].length?s(e,t):q(e,r,(function(){e[u(283)](o,n,i,s)}),s)}),s):s(e,t)}),s)}function Z(t,r){var o=this;t=l(t);var n=new Ee((function(r,n){const i=e;o[i(854)]()[i(515)]((function(){const e=i;var s=o[e(1800)];s.db[e(988)]((function(o){const i=e;_(o,s,i(967)+s[i(734)]+i(1709),[t],(function(e,t){const o=i;var n=t.rows[o(1524)]?t[o(1483)][o(722)](0)[o(428)]:null;n&&(n=s[o(1283)][o(1739)](n)),r(n)}),(function(e,t){n(t)}))}))}))[i(432)](n)}));return u(n,r),n}function z(t,r){var o=this,n=new Ee((function(r,n){const i=e;o.ready()[i(515)]((function(){const e=i;var s=o[e(1800)];s.db[e(988)]((function(o){const i=e;_(o,s,i(967)+s[i(734)],[],(function(e,o){const n=i;for(var a=o[n(1483)],c=a[n(1524)],u=0;u<c;u++){var d=a.item(u),l=d[n(428)];if(l&&(l=s[n(1283)][n(1739)](l)),void 0!==(l=t(l,d[n(1370)],u+1)))return void r(l)}r()}),(function(e,t){n(t)}))}))}))[i(432)](n)}));return u(n,r),n}function Y(t,r,o,n){var i=this;t=l(t);var s=new Ee((function(s,a){const c=e;i[c(854)]()[c(515)]((function(){const e=c;void 0===r&&(r=null);var u=r,d=i._dbInfo;d[e(1283)].serialize(r,(function(r,c){const l=e;c?a(c):d.db[l(988)]((function(e){const o=l;_(e,d,o(202)+d[o(734)]+o(1400),[t,r],(function(){s(u)}),(function(e,t){a(t)}))}),(function(e){const r=l;if(e.code===e[r(1789)]){if(n>0)return void s(Y.apply(i,[t,u,o,n-1]));a(e)}}))}))}))[c(432)](a)}));return u(s,o),s}function Q(e,t,r){return Y.apply(this,[e,t,r,1])}function K(t,r){var o=this;t=l(t);var n=new Ee((function(r,n){const i=e;o.ready()[i(515)]((function(){const e=i;var s=o[e(1800)];s.db[e(988)]((function(o){const i=e;_(o,s,i(1619)+s[i(734)]+i(1238),[t],(function(){r()}),(function(e,t){n(t)}))}))}))[i(432)](n)}));return u(n,r),n}function $(t){var r=this,o=new Ee((function(t,o){const n=e;r[n(854)]()[n(515)]((function(){var n=r._dbInfo;n.db.transaction((function(r){_(r,n,"DELETE FROM "+n[e(734)],[],(function(){t()}),(function(e,t){o(t)}))}))}))[n(432)](o)}));return u(o,t),o}function ee(t){var r=this,o=new Ee((function(t,o){const n=e;r.ready().then((function(){const n=e;var i=r[n(1800)];i.db[n(988)]((function(e){const r=n;_(e,i,r(1478)+i[r(734)],[],(function(e,o){const n=r;var i=o[n(1483)][n(722)](0).c;t(i)}),(function(e,t){o(t)}))}))}))[n(432)](o)}));return u(o,t),o}function te(t,r){var o=this,n=new Ee((function(r,n){const i=e;o[i(854)]()[i(515)]((function(){const e=i;var s=o[e(1800)];s.db[e(988)]((function(o){const i=e;_(o,s,i(1028)+s.storeName+i(330),[t+1],(function(e,t){const o=i;var n=t.rows[o(1524)]?t[o(1483)].item(0)[o(1370)]:null;r(n)}),(function(e,t){n(t)}))}))})).catch(n)}));return u(n,r),n}function re(t){var r=this,o=new Ee((function(t,o){const n=e;r[n(854)]()[n(515)]((function(){const e=n;var i=r[e(1800)];i.db[e(988)]((function(r){const n=e;_(r,i,n(1028)+i[n(734)],[],(function(e,r){const o=n;for(var i=[],s=0;s<r.rows[o(1524)];s++)i[o(801)](r[o(1483)][o(722)](s)[o(1370)]);t(i)}),(function(e,t){o(t)}))}))})).catch(o)}));return u(o,t),o}function oe(t){return new Ee((function(r,o){const n=e;t[n(988)]((function(e){const i=n;e[i(283)](i(1650),[],(function(e,o){const n=i;for(var s=[],a=0;a<o[n(1483)][n(1524)];a++)s[n(801)](o[n(1483)].item(a)[n(1645)]);r({db:t,storeNames:s})}),(function(e,t){o(t)}))}),(function(e){o(e)}))}))}function ne(t,r){const o=e;r=p[o(962)](this,arguments);var n=this[o(1781)]();(t="function"!=typeof t&&t||{})[o(1645)]||(t[o(1645)]=t[o(1645)]||n[o(1645)],t[o(734)]=t.storeName||n[o(734)]);var i,s=this;return u(i=t[o(1645)]?new Ee((function(e){const r=o;var i;i=t[r(1645)]===n.name?s[r(1800)].db:openDatabase(t[r(1645)],"","",0),e(t.storeName?{db:i,storeNames:[t.storeName]}:oe(i))}))[o(515)]((function(t){return new Ee((function(r,o){t.db.transaction((function(n){const i=e;function s(t){return new Ee((function(r,o){const i=e;n[i(283)](i(1367)+t,[],(function(){r()}),(function(e,t){o(t)}))}))}for(var a=[],c=0,u=t[i(229)][i(1524)];c<u;c++)a.push(s(t.storeNames[c]));Ee[i(1745)](a)[i(515)]((function(){r()})).catch((function(e){o(e)}))}),(function(e){o(e)}))}))})):Ee.reject("Invalid arguments"),r),i}function ie(){const t=e;try{return t(297)!=typeof localStorage&&t(1263)in localStorage&&!!localStorage[t(1263)]}catch(e){return!1}}function se(t,r){const o=e;var n=t[o(1645)]+"/";return t[o(734)]!==r[o(734)]&&(n+=t[o(734)]+"/"),n}function ae(){const t=e;var r=t(319);try{return localStorage[t(1263)](r,!0),localStorage[t(965)](r),!1}catch(e){return!0}}function ce(){const t=e;return!ae()||localStorage[t(1524)]>0}function ue(t){const r=e;var o=this,n={};if(t)for(var i in t)n[i]=t[i];return n[r(1578)]=se(t,o[r(671)]),ce()?(o[r(1800)]=n,n[r(1283)]=ze,Ee.resolve()):Ee[r(212)]()}function de(t){const r=e;var o=this,n=o[r(854)]()[r(515)]((function(){const e=r;for(var t=o[e(1800)][e(1578)],n=localStorage[e(1524)]-1;n>=0;n--){var i=localStorage[e(1370)](n);0===i.indexOf(t)&&localStorage[e(965)](i)}}));return u(n,t),n}function le(t,r){const o=e;var n=this;t=l(t);var i=n[o(854)]()[o(515)]((function(){const e=o;var r=n[e(1800)],i=localStorage.getItem(r[e(1578)]+t);return i&&(i=r.serializer[e(1739)](i)),i}));return u(i,r),i}function pe(t,r){const o=e;var n=this,i=n[o(854)]()[o(515)]((function(){const e=o;for(var r=n[e(1800)],i=r[e(1578)],s=i.length,a=localStorage.length,c=1,u=0;u<a;u++){var d=localStorage[e(1370)](u);if(0===d[e(199)](i)){var l=localStorage[e(1247)](d);if(l&&(l=r[e(1283)][e(1739)](l)),void 0!==(l=t(l,d.substring(s),c++)))return l}}}));return u(i,r),i}function fe(t,r){const o=e;var n=this,i=n[o(854)]()[o(515)]((function(){const e=o;var r,i=n._dbInfo;try{r=localStorage[e(1370)](t)}catch(e){r=null}return r&&(r=r[e(759)](i[e(1578)][e(1524)])),r}));return u(i,r),i}function me(t){const r=e;var o=this,n=o[r(854)]()[r(515)]((function(){const e=r;for(var t=o._dbInfo,n=localStorage[e(1524)],i=[],s=0;s<n;s++){var a=localStorage[e(1370)](s);0===a[e(199)](t[e(1578)])&&i[e(801)](a[e(759)](t[e(1578)][e(1524)]))}return i}));return u(n,t),n}function be(t){const r=e;var o=this[r(703)]()[r(515)]((function(e){return e[r(1524)]}));return u(o,t),o}function ve(t,r){const o=e;var n=this;t=l(t);var i=n.ready()[o(515)]((function(){const e=o;var r=n._dbInfo;localStorage[e(965)](r[e(1578)]+t)}));return u(i,r),i}function ye(t,r,o){const n=e;var i=this;t=l(t);var s=i[n(854)]()[n(515)]((function(){void 0===r&&(r=null);var o=r;return new Ee((function(n,s){const a=e;var c=i[a(1800)];c[a(1283)][a(1330)](r,(function(e,r){const i=a;if(r)s(r);else try{localStorage[i(1263)](c[i(1578)]+t,e),n(o)}catch(e){"QuotaExceededError"!==e[i(1645)]&&i(1171)!==e[i(1645)]||s(e),s(e)}}))}))}));return u(s,o),s}function he(t,r){const o=e;if(r=p[o(962)](this,arguments),!(t=o(513)!=typeof t&&t||{}).name){var n=this.config();t[o(1645)]=t[o(1645)]||n[o(1645)],t.storeName=t[o(734)]||n.storeName}var i,s=this;return u(i=t[o(1645)]?new Ee((function(e){const r=o;e(t[r(734)]?se(t,s._defaultConfig):t[r(1645)]+"/")}))[o(515)]((function(e){const t=o;for(var r=localStorage[t(1524)]-1;r>=0;r--){var n=localStorage[t(1370)](r);0===n[t(199)](e)&&localStorage[t(965)](n)}})):Ee[o(212)](o(1813)),r),i}function ge(t,r){t[r]=function(){const o=e;var n=arguments;return t[o(854)]()[o(515)]((function(){const e=o;return t[r][e(962)](t,n)}))}}function we(){const t=e;for(var r=1;r<arguments[t(1524)];r++){var o=arguments[r];if(o)for(var n in o)o[t(1651)](n)&&(et(o[n])?arguments[0][n]=o[n][t(1515)]():arguments[0][n]=o[n])}return arguments[0]}var Se=n(513)==typeof Symbol&&"symbol"==typeof Symbol[n(1438)]?function(e){return typeof e}:function(e){const t=n;return e&&t(513)==typeof Symbol&&e[t(1230)]===Symbol&&e!==Symbol[t(225)]?t(751):typeof e},Ie=s();n(297)==typeof Promise&&t(3);var Ee=Promise,ke="local-forage-detect-blob-support",De=void 0,Te={},Re=Object[n(225)][n(339)],Ce="readonly",Le=n(1817),Pe={_driver:"asyncStorage",_initStorage:P,_support:a(),iterate:O,getItem:x,setItem:A,removeItem:N,clear:M,length:V,key:j,keys:W,dropInstance:B},xe=n(700),Oe=n(1117),Ae=/^~~local_forage_type~([^~]+)~/,Ne="__lfsc__:",Me=Ne[n(1524)],Ve="arbf",je=n(1731),We=n(655),Be=n(613),Ue=n(1804),Fe=n(1144),Je=n(1835),He="ur16",Ge=n(1385),qe="fl32",Xe="fl64",_e=Me+Ve[n(1524)],Ze=Object.prototype[n(339)],ze={serialize:H,deserialize:G,stringToBuffer:F,bufferToString:J},Ye={_driver:n(926),_initStorage:X,_support:U(),iterate:z,getItem:Z,setItem:Q,removeItem:K,clear:$,length:ee,key:te,keys:re,dropInstance:ne},Qe={_driver:n(576),_initStorage:ue,_support:ie(),iterate:pe,getItem:le,setItem:ye,removeItem:ve,clear:de,length:be,key:fe,keys:me,dropInstance:he},Ke=function(e,t){const r=n;return e===t||r(1030)==typeof e&&r(1030)==typeof t&&isNaN(e)&&isNaN(t)},$e=function(e,t){for(var r=e[n(1524)],o=0;o<r;){if(Ke(e[o],t))return!0;o++}return!1},et=Array[n(732)]||function(e){const t=n;return"[object Array]"===Object[t(225)][t(339)][t(228)](e)},tt={},rt={},ot={INDEXEDDB:Pe,WEBSQL:Ye,LOCALSTORAGE:Qe},nt=[ot[n(664)]._driver,ot[n(277)]._driver,ot[n(1079)]._driver],it=[n(1646)],st=[n(1548),"getItem","iterate",n(1370),n(703),n(1524),n(965),"setItem"][n(1539)](it),at={description:"",driver:nt[n(1515)](),name:n(1159),size:4980736,storeName:n(1610),version:1},ct=function(){const t=n;function r(t){const o=e;for(var n in i(this,r),ot)if(ot[o(1651)](n)){var s=ot[n],a=s._driver;this[n]=a,tt[a]||this[o(879)](s)}this[o(671)]=we({},at),this._config=we({},this[o(671)],t),this[o(822)]=null,this[o(1216)]=null,this[o(982)]=!1,this[o(1800)]=null,this[o(461)](),this[o(1241)](this._config[o(1206)])[o(432)]((function(){}))}return r[t(225)][t(1781)]=function(e){const r=t;if(r(1102)===(void 0===e?r(297):Se(e))){if(this._ready)return new Error(r(1041));for(var o in e){if("storeName"===o&&(e[o]=e[o].replace(/\W/g,"_")),r(832)===o&&"number"!=typeof e[o])return new Error(r(1336));this._config[o]=e[o]}return!(r(1206)in e&&e[r(1206)])||this[r(1241)](this[r(1292)].driver)}return r(645)==typeof e?this[r(1292)][e]:this[r(1292)]},r.prototype[t(879)]=function(t,r,o){var n=new Ee((function(r,o){const n=e;try{var i=t[n(561)],s=new Error(n(819));if(!t[n(561)])return void o(s);for(var a=st[n(1539)](n(674)),c=0,d=a.length;c<d;c++){var l=a[c];if((!$e(it,l)||t[l])&&"function"!=typeof t[l])return void o(s)}!function(){for(var r=function(t){return function(){const r=e;var o=new Error(r(763)+t+r(939)),n=Ee[r(212)](o);return u(n,arguments[arguments.length-1]),n}},o=0,n=it.length;o<n;o++){var i=it[o];t[i]||(t[i]=r(i))}}();var p=function(e){const o=n;tt[i]&&console.info(o(1497)+i),tt[i]=t,rt[i]=e,r()};n(612)in t?t[n(612)]&&"function"==typeof t[n(612)]?t[n(612)]()[n(515)](p,o):p(!!t[n(612)]):p(!0)}catch(e){o(e)}}));return d(n,r,o),n},r.prototype[t(1206)]=function(){return this[t(561)]||null},r[t(225)].getDriver=function(e,r,o){const n=t;var i=tt[e]?Ee[n(1725)](tt[e]):Ee[n(212)](new Error(n(1333)));return d(i,r,o),i},r.prototype[t(1843)]=function(e){var t=Ee.resolve(ze);return d(t,e),t},r[t(225)][t(854)]=function(e){const r=t;var o=this,n=o[r(822)].then((function(){const e=r;return null===o[e(982)]&&(o[e(982)]=o._initDriver()),o._ready}));return d(n,e,e),n},r[t(225)].setDriver=function(r,o,n){const i=t;function s(){const t=e;u._config[t(1206)]=u[t(1206)]()}function a(t){const r=e;return u._extend(t),s(),u._ready=u[r(674)](u[r(1292)]),u[r(982)]}function c(t){return function(){function r(){const n=e;for(;o<t[n(1524)];){var i=t[o];return o++,u[n(1800)]=null,u[n(982)]=null,u[n(1218)](i)[n(515)](a)[n(432)](r)}s();var c=new Error(n(689));return u[n(822)]=Ee[n(212)](c),u[n(822)]}var o=0;return r()}}var u=this;et(r)||(r=[r]);var l=this[i(757)](r),p=null!==this[i(822)]?this[i(822)][i(432)]((function(){return Ee[i(1725)]()})):Ee[i(1725)]();return this._driverSet=p[i(515)]((function(){const e=i;var t=l[0];return u[e(1800)]=null,u[e(982)]=null,u[e(1218)](t).then((function(t){const r=e;u[r(561)]=t._driver,s(),u[r(461)](),u[r(1216)]=c(l)}))}))[i(432)]((function(){const e=i;s();var t=new Error(e(689));return u[e(822)]=Ee[e(212)](t),u[e(822)]})),d(this._driverSet,o,n),this[i(822)]},r[t(225)][t(172)]=function(e){return!!rt[e]},r[t(225)]._extend=function(e){we(this,e)},r[t(225)][t(757)]=function(e){const r=t;for(var o=[],n=0,i=e[r(1524)];n<i;n++){var s=e[n];this.supports(s)&&o[r(801)](s)}return o},r.prototype[t(461)]=function(){for(var e=0,r=st[t(1524)];e<r;e++)ge(this,st[e])},r[t(225)][t(628)]=function(e){return new r(e)},r}(),ut=new ct;r[n(719)]=ut},{3:3}]},{},[4])(4);var M=N[t(719)];const V=t(712),j=t(1266);let W={};var B=M[t(628)]({name:V});async function U(e,r){const o=t;e&&"string"==typeof e&&(W[e]=r,await B[o(1263)](j,JSON[o(1014)](W)))}function F(e){return W[e]}B[t(1247)](j)[t(515)]((e=>{e&&(W=JSON[t(1506)](e))}));var J={get:F,set:U,getPluginEtag:function(){return F(t(310))||""},setPluginEtag:async function(e){U(t(310),e)},getPluginLastModified:function(){return F(t(785))||""},setPluginLastModified:async function(e){U(t(785),e)},getWasm:async function(){return await B.getItem("wasm")||""},setWasm:async function(e){e&&typeof e===t(645)&&await B.setItem("wasm",e)}};const H={created:"created",loading:t(1189),loaded:"loaded",started:t(960),suspended:t(1076),stopped:t(1308)};var G={create:function(e={}){const r=t,n=r(1164),i=r(783);let s={log:!0,useCache:!1},a=e[r(847)],c=null,u={setConfig:function(e){const t=r;e&&Object[t(1772)](s,e)},getConfig:function(){return s},isStarted:b,isDownloaded:function(){const e=r;return!(!c||!c[e(369)])},getWasm:l,load:async function(){const e=r;a[e(1055)]("denoiser load: "+s[e(557)]+", use cache: "+s[e(1526)]);let t="";if(!window[e(698)])return t="not support WebAssembly",a[e(1023)](t),Promise[e(212)](new Error(t));if(!window[e(872)]||!window.AudioWorkletNode)return t=e(765),a[e(1023)](t),Promise[e(212)](new Error(t));if(!s[e(557)])return t=e(559),a[e(1023)](t),Promise[e(212)](new Error(t));try{if(m())a[e(1055)](e(1629));else{const o=[16e3,32e3,48e3],n=new AudioContext({sampleRate:48e3});if(-1===o[e(199)](n.sampleRate))return t=e(837)+n.sampleRate,a[e(1023)](t),n[e(1070)](),Promise[e(212)](new Error(t));if(u[e(195)]=u[e(1189)],await l(s[e(557)],s[e(1214)]),function(){const e=r;return u[e(195)]===H[e(1308)]}())return Promise[e(212)]("denoiser has stopped");d({context:n});let p=s[e(690)]||i;await c.context[e(538)].addModule(p)}return u[e(195)]===H[e(1189)]&&(u[e(195)]=H[e(1676)]),a[e(1055)](e(791)+c[e(261)][e(1778)]),!0}catch(t){return a[e(1023)]("denoiser load fail",t[e(339)]()),Promise.reject(t)}},start:async function(e){const t=r;a.logInfo(t(1722)+!!e);let o="";if(!f(e))return Promise.reject(new Error(t(686)));if(!m())return o=t(1048),a[t(1023)](o),Promise.reject(new Error(o));try{b()&&(c.sourceNode.disconnect(),c[t(875)][t(1541)](),p(c[t(1819)][t(839)]));const r=new MediaStream([e[t(1008)]()[0]]),o=c[t(261)][t(1462)](r),n=c[t(875)]||new AudioWorkletNode(c[t(261)],t(600),{processorOptions:{jsCode:c[t(369)]}}),i=c[t(261)].createMediaStreamDestination();return o.connect(n),n[t(265)](i),c.sourceNode=o,c[t(875)]=n,c.destinationNode=i,c[t(369)]="",c.context[t(195)]===t(1076)&&await c[t(261)].resume(),u[t(195)]=H[t(960)],a[t(1055)]("denoiser start success"),i[t(839)]}catch(e){return v(),a[t(1023)](t(834),e[t(339)]()),Promise[t(212)](e)}},replace:function(e){const t=r;if(a[t(1055)]("denoiser replace: "+!!e),!f(e))return!1;if(!b()){let e="not start yet";return a[t(1023)](e),!1}const o=e[t(1008)]()[0],n=new MediaStream([o]),{context:i,sourceNode:s,processNode:u,destinationNode:d}=c,l=i[t(1462)](n);return s.disconnect(),l[t(265)](u),c[t(1542)]=l,d[t(839)]},suspend:async function(){const e=r;if(a.logInfo(e(883)),!b()){let t=e(941);return a.logWarn(t),Promise[e(212)](new Error(t))}let t=await c[e(261)].suspend();return u[e(195)]=H[e(1076)],t},resume:async function(){const e=r;if(a[e(1055)](e(1486)),!b()){let t=e(941);return a.logWarn(t),Promise[e(212)](new Error(t))}let t=await c[e(261)][e(1502)]();return u.state=H[e(960)],t},stop:v,state:H[r(548)]};function d(e){const t=r;e?(!c&&(c={}),Object[t(703)](e)[t(1505)]((t=>{c[t]=e[t]}))):c=null}async function l(e,t=!1){const n=r;let i={},s=null,u=J[n(321)](),l=J[n(943)](),p=Date.now();a[n(1055)](n(493)+u+n(1794)+l+n(1096)+t),u&&(i[n(1407)]=u),l&&(i[n(323)]=l);try{s=c&&c.jsCode?c[n(369)]:await J.getWasm()}catch(e){a[n(1023)](e.toString())}if(!s&&(i={},a[n(1055)](n(853))),t)return s?(d({jsCode:s}),a[n(1055)](n(989)+(Date[n(931)]()-p)),s):Promise[n(212)](new Error(n(1077)));let f=null;try{f=await o({url:e,method:n(1287),responseType:"text",timeout:3e4,headers:i,widthRequest:!0})}catch(e){a[n(1023)](n(702),e.toString()),f={request:{status:999}}}let m=f.request[n(313)];if(a[n(1055)]("status: "+m+n(1271)+(Date[n(931)]()-p)),200===m){try{J.setWasm(f[n(1773)]);let e=f[n(522)][n(1248)]("ETag"),t=f.request[n(1248)]("Last-Modified");e&&J[n(322)](e),t&&J[n(966)](t)}catch(e){a[n(1023)](n(355),e[n(339)]())}return d({jsCode:f[n(1773)]}),f.data}return s?(a[n(1055)]("use wasm cache"),d({jsCode:s}),s):(a[n(1023)](n(1430)),Promise[n(212)](new Error(n(1536))))}function p(e){const t=r;e[t(1008)]().forEach((e=>e[t(1508)]()))}function f(e){const t=r;if(!(e instanceof MediaStream))return a[t(1023)]("not MediaStream"),!1;return 0!==e[t(1008)]()[t(1524)]||(a[t(1023)](t(1830)),!1)}function m(){return c&&c[r(261)]}function b(){const e=r;return m()&&c[e(875)]}async function v(){const e=r;if(a[e(1055)]("denoiser stop"),u[e(195)]=H[e(1308)],m()){const t=c;d(null);try{await t.context[e(1070)](),t[e(875)]&&(t[e(875)][e(1703)][e(861)]({action:e(1022)}),t[e(875)][e(1541)]()),t[e(1542)]&&t[e(1542)].disconnect(),t.destinationNode&&p(t[e(1819)][e(839)])}catch(t){a[e(1023)](e(285)+t[e(339)]())}}}return e[r(339)]()===r(659)&&Object[r(1772)](s,e),!s[r(1450)]&&(a={logInfo:()=>{},logWarn:()=>{},logError:()=>{}}),a.logInfo(r(1571)+n),l("",!0)[r(515)]((()=>{const e=r;a[e(1055)](e(1546))}))[r(432)]((()=>{})),u},STATE:{...H}};function q(){const n=t;let i={publicCloud:!0,debug:!1,logSize:2e3,deltaTime:0,serviceID:"",serviceKey:"",forceArea:!1,autoPublishCamera:!1,cameraEnableVideo:!0,cameraEnableAudio:!0,muteCameraVideo:!1,muteCameraAudio:!1,autoPublishScreen:!1,screenEnableVideo:!0,screenEnableAudio:!1,muteScreenVideo:!1,muteScreenAudio:!1,autoSubscribe:!1,autoRecovery:!0,enableQosReport:!1,enableLogUpload:!0,enableDenoiser:!1,Services:{BasicRoomServiceToken:t(1324),IpInfoService:"https://bas-web.hismarttv.com/1.0/bas/ip/info"},requestTimeout:5e3,websocketPingInterval:1e3,qosUploadInterval:5e3,stuckLogInterval:600,networkReportInterval:5e3,cameraLayers:[{width:320,height:180,frameRate:20,targetBw:16e4,layerIndex:0},{width:640,height:360,frameRate:20,targetBw:5e5,layerIndex:1},{width:1280,height:720,frameRate:20,targetBw:11e5,layerIndex:2}],cameraExLayers:[{width:320,height:180,frameRate:20,targetBw:16e4,layerIndex:0},{width:1280,height:720,frameRate:20,targetBw:11e5,layerIndex:1}],screenLayers:[{width:1920,height:1080,frameRate:15,targetBw:15e5,layerIndex:0}],customLayers:[{width:1920,height:1080,frameRate:15,targetBw:15e5,layerIndex:0}],maxListener:10,supported:{},publicIP:"",ispCode:"",countryCode:"",regionCode:"",cityCode:"",hdQualityPriority:!1,enableProbator:!1,leaveBeforeUnload:!0,audioLevelLog:!0,peerErrorEvent:!1,subscribeAutoRecover:!1,autoGainControl:!0,echoCancellation:!0,noiseSuppression:!0,videoFreezeLog:!1,autoplayFix:!1},s=new k({globalOptions:i}),a=new D({localLog:s}),c=window.saveAs,u=window.AudioContext||window[n(1220)]||null,d=window.MediaRecorder||null,l=window.AudioWorkletNode||null,p={};p[n(332)]=a,p[n(847)]=s,p[n(1199)]=i,p.core={retry:0,status:0,roomName:"",userID:"",userName:"",userArea:"",userToken:0,session:"",stunURL:"",turnURL:"",turnUser:"",turnPwd:"",publicIP:"",ispCode:"",countryCode:"",regionCode:"",cityCode:"",ipReqId:"",joinReqId:"",userRole:0,ipInfoMaxRetryCount:3,ipInfoRetryCount:0,permission:{audio:!1,video:!1},camera:{local:!0,type:n(1054),preview:!1,muteAudio:!0,muteVideo:!0,ready:!1,id:null,pc:null,candidate:[],stream:new MediaStream,audioTrack:null,videoTrack:null,lastRequestID:"",info:{app:"",rtc:"",act:0}},cameraEx:{},screen:{local:!0,type:n(575),preview:!1,muteAudio:!1,muteVideo:!1,ready:!1,id:null,pc:null,candidate:[],stream:new MediaStream,audioTrack:null,videoTrack:null,lastRequestID:"",info:{app:"",rtc:"",act:0},subType:"screen"},custom:{local:!0,type:n(575),preview:!1,muteAudio:!1,muteVideo:!1,ready:!1,id:null,pc:null,candidate:[],stream:null,audioTrack:null,videoTrack:null,lastRequestID:"",info:{app:"",rtc:"",act:0},subType:"custom",label:"media playback"},audioTest:{local:!0,type:"aduioTest",sampling:200,stream:null,audioLevel:0,levelList:[]},users:{},publishers:{},devices:{audioinput:"",audiooutput:"",videoinput:"",detail:{audioinput:[],audiooutput:[],videoinput:[]},lastvideoinput:""},unableAutoPlay:[],reconnectingStreams:{},network:{const:{rttMin:50,rttMax:200,fractionLostMin:5,fractionLostMax:10,delayMin:80,delayMax:300,jitterMin:80,jitterMax:400,kMinVideoBitrate:6e4,kMinVideoBitrate2:3e5,kMinVideoFrameRate:2,kMaxExpiredNetLevelStatInMs:1e4,kScreencastStreamBWJitterRatio:.4,kNetUpWeakBitrate:6e4,kNetDownWeakLevel:1,kNetDownWeakFps:5,networkQuality:{unknown:0,vbad:1,bad:2,poor:3,good:4,excellent:5}},uplinkStats:{},downlinkStats:{},netWeakStats:{}},wsBaseEvent:{onOpen:null,onClose:null,onMessage:null,onError:null},dType:10,curVideoQuality:2,userActionData:{},stuckData:{},probatorSsrc:1234,isBindWindowEvent:!1,muteAllStreamAudio:!1,peerErrorEvent:{}},p[n(1185)]={},p[n(760)]=G.create({localLog:s,globalOptions:i}),p[n(384)]=function(){const e=n;p[e(1266)].status=0,p[e(1266)][e(1201)]=0,p.core.session="",p[e(1266)][e(820)]=2,Object[e(1706)](p[e(1155)])[e(1505)]((t=>{const r=e;p[r(1266)][t].id="",p[r(1266)][t].pc=null,p.core[t][r(1444)]=[],p[r(1266)][t].ready=!1,p[r(1266)][t][r(1521)]="",p.core[t][r(1822)]=!1,p.core[t].muteVideo=!1,p.core[t][r(813)]=-1})),p[e(1266)][e(752)]={},p[e(1266)].unableAutoPlay=[],p[e(1266)].users={},p[e(1266)][e(1031)]={},p[e(1266)][e(1823)]={},p[e(1266)][e(1184)].uplinkStats={},p[e(1266)][e(1184)][e(855)]={},p[e(1266)][e(1184)][e(838)]={}},p.setCore=function(e={}){const t=n;!e instanceof Object||Object[t(703)](e)[t(1505)]((r=>{const o=t;p[o(1266)][o(1651)](r)&&(p[o(1266)][r]=e[r])}))},p[n(636)]=function(e=""){const t=n;if(e&&p[t(1266)][t(1651)](e))return p[t(1266)][e]},p[n(1072)]=function(){const e=n;if(navigator[e(796)]&&(!p[e(1199)][e(1701)]||0===Object[e(703)](p[e(1199)].supported)[e(1524)])){let t=navigator[e(796)].getSupportedConstraints();t&&Object.keys(t)[e(1524)]>0&&(s.logInfo(e(1146),t),p[e(1199)][e(1701)]=t)}},p.getBrowserSupported=function(e=""){const t=n;return e&&p[t(1199)].supported&&p[t(1199)][t(1701)][e]||!1},p.bindWindowEvent=function(){const e=n;i[e(808)]&&!p[e(1266)][e(1564)]&&(window.addEventListener(e(1596),(()=>{const t=e;i[t(808)]&&p.leaveRoom(),p.denoiser[t(1508)]()})),p.core.isBindWindowEvent=!0)},p[n(474)]=function(e={}){const t=n;e.serviceID&&(s[t(1055)](t(1728)+r),s[t(1055)](t(1345)+navigator[t(1141)])),p.initBrowserSupported(),!e instanceof Object||(null!=typeof e[t(1776)]&&e.debug&&s[t(1055)](t(1003)+JSON.stringify(e)+")"),Object[t(703)](e)[t(1505)]((r=>{const o=t;o(1487)!==r&&o(1133)!=r&&(typeof e[r]===o(1102)?s[o(1055)](r+":"+JSON[o(1014)](e[r])):s[o(1055)](r+":"+e[r])),p[o(1199)][o(1651)](r)&&(r==o(573)?Object.keys(e[r]).forEach((t=>{const n=o;p.options[r][n(1651)](t)&&(p[n(1199)][r][t]=e[r][t])})):p[o(1199)][r]=e[r])})),(""==p[t(1199)][t(1487)]||""==p.options[t(1133)])&&s[t(485)](t(1849)+p[t(1199)][t(1487)]+" or serviceKey:"+p[t(1199)][t(1133)]),b[t(374)]({publicCloud:p[t(1199)][t(1342)]},o),p[t(442)]())},p[n(452)]=function(e=""){const t=n;if(!e)return"";let r=Object[t(703)](p[t(1185)])||[];for(let o=0,n=r[t(1524)];o<n;o++){let n=r[o];if(e[t(199)](n)>=0){let r=p[t(1185)][n];e[t(1190)]?e=e[t(1190)](n,r):e=(e=e[t(1260)](n,r)).replace(n,r);break}}return e},p[n(1604)]=function(e=n(1481),t="",r={},i={},a=S,c=S){const u=n,d={method:e,url:p[u(452)](t),timeout:p.options[u(1325)],contentType:u(420)};i instanceof Object&&Object.keys(i)[u(1524)]>0&&(d[u(1666)]=i),e===u(1287)?d[u(844)]=r:d[u(1773)]=JSON[u(1014)](r),o(d).then((e=>{a(e)}))[u(432)]((e=>{c(e)})),s.logInfo(e+" http request:"+JSON[u(1014)](d))},p[n(1582)]={Unknown:"0",BeiJing:"1",ShangHai:"2",GuangZhou:"3"},p[n(1155)]={Camera:n(1054),Screen:"screen"},p.SubStreamType={Camera:n(1054),Screen:n(575),Custom:n(1580)},p[n(1550)]={Publisher:"publisher",Subscriber:"subscriber"},p[n(918)]={Request:"request",Response:"response",Notify:n(1057)},p[n(499)]={Audio:n(341),Video:"video"},p[n(925)]={AudioInput:"audioinput",VideoInput:n(673),AudioOutput:n(1557)},p.MediaType={Audio:n(341),Video:"video",Screen:n(575)},p[n(1036)]={Live:1,Record:2},p[n(1152)]={Start:"start",Stop:n(1508),Pause:n(200),Play:n(805),Update:n(1538)},p[n(1215)]={PermissionError:n(1276),ParamsError:n(644),JoinError:n(1625),PreviewError:n(1078),PublishError:n(529),SubscribeError:n(1341),ConnectionError:n(720),SetDeviceError:n(603),RecordError:n(666),PrintError:n(778),UpdateInfoErr:n(1809),MixerErr:n(1025),WebPageErr:n(1840),RequestIpInfoErr:n(1695),SetRoleError:"E013"},p[n(682)]={P000:n(725),E000:n(556),E001:n(347),E002:n(1516),E003:n(483),E004:n(1802),E005:n(276),E006:n(205),E007:n(997),E008:n(797),E009:n(1775),E010:n(827),E011:n(1039),E012:n(1281),E013:n(1793)},p[n(584)]={anchor:0,audience:1,sysAnchor:2,sysAudience:3},p[n(675)]={AndroidTv:1,AndroidPhone:2,WinPc:3,Iphone:4,Mac:5,Ipad:6,AndroidPad:7,WinTv:8,TinyApp:9,Web:10},p[n(1736)]={User:n(862),Environment:"environment"},p[n(749)]=function(e="",t=""){const r=n;if(e){let o={desc:""};p.ErrorDetail[e]&&(o[r(596)]=p[r(682)][e]),"string"==typeof t?t&&(o[r(596)]=o.desc+", "+t):(t[r(596)]&&(t[r(596)]=o[r(596)]+", "+t[r(596)]),o={...t}),s[r(485)]("event [error]",e,JSON[r(1014)](o)),a.emit(a[r(629)][r(605)],e,o)}},p.emitPreviewError=function(e){const t=n,{type:r,desc:o,subType:i,error:s}=e;let a=0;switch(s[t(1645)]){case t(986):a=2001;break;case t(1525):a=2002;break;case t(1597):a=2003;break;case t(840):a=2004;break;case"OverconstrainedError":a=2005;break;case t(780):a=2006;break;case t(737):a=2007;break;case"PreviewAlready":a=2008;break;case t(1475):a=2009;break;case t(1352):a=2010;break;case t(1747):a=2011}p[t(749)](p[t(1215)][t(302)],{type:r,desc:o,subType:i,code:a})},p.triggerPublishLogUpload=function(e,t={}){const r=n;if(e){if(e[r(963)])return;e[r(963)]=!0}p[r(1433)](p[r(1537)][r(811)],t)},p[n(895)]=function(e,t){const r=n;if(e){if(e.isSubscribeFailed)return;e[r(280)]=!0}p[r(1433)](p[r(1537)][r(811)],t)},p[n(1537)]={Error:"203011",QosEvent:n(1685),UserAction:n(361),mediaStuck:n(1398),CustomLog:n(1104)},p[n(661)]={Joined:1,Leave:2,Published:3,Unpublished:4,Subscribed:5,Unsubscribed:6,firstDataUploaded:7,firstDataDownloaded:8,toggleMute:9},p[n(406)]={},p.LogErrorType={Audio:1,Video:2,Rtc:3},p[n(346)]={Media:{Capturer:1,Encoder:2,Sender:3,Receiver:4,Rtpdemux:5,Decoder:6,Render:7},Rtc:{Token:1,Join:2,Publish:3,Subscribe:4,PublishIce:5,SubscribeIce:6,UplinkWeak:7}},p[n(1433)]=function(e,t={}){const r=n;if(p.options.enableLogUpload)switch(e){case p[r(1537)].QosEvent:p[r(1727)]()[r(515)]((e=>{const t=r;e[t(1450)][t(1524)]>0&&p.logReport(e[t(1450)],b[t(1231)].COMMON),p.options.enableQosReport&&e[t(1180)][t(1524)]>0&&a[t(1167)](a[t(629)][t(1127)],e[t(1180)])}));break;case p[r(1537)][r(661)]:const o=p[r(878)](e,t);p[r(1459)](o,b[r(1231)][r(445)]);break;case p.LogType[r(1094)]:const n=p[r(329)](t);p[r(1459)](n,b[r(1231)][r(445)]);break;case p.LogType[r(811)]:const i=p[r(1627)](e,t);p[r(1459)](i,b[r(1231)].COMMON)}},p.getQosDownlinkData=function({streamInfo:e,pair:t,video:r,audio:o,videoCodec:i,audioCodec:s,remoteCandidate:a}){const c=n,u={log:[],report:[]},d=o&&!(e[c(1822)]||e[c(181)]),l=r&&!(e.muteVideo||e[c(1861)]);if(!t)return u;const f={...p[c(933)]({eventCode:c(993),streamInfo:e}),userid:p[c(1266)].userID,roomid:p.core[c(1272)],serviceid:p[c(1199)][c(1487)],username:p[c(1266)][c(1013)],streamid:e.id,layerindex:e[c(813)],peeruserid:e[c(376)],mediatype:-1,codec:-1,ssrc:-1,mute:-1,jitter:-1,pktslost:-1,width:-1,height:-1,fps:-1,pli:-1,fir:-1,cpu:-1,memory:-1,netmode:-1,bwtransmit:-1,bwretransmit:-1,nack:-1,audiolevel:-1,bwrecv:-1,bytesrcvd:-1,pktsrcvd:-1,fpsout:-1,remb:-1,delay:-1,framesdropped:-1,netlevel:-1,weak:-1,codecname:-1};if(a&&(e[c(1209)]=a.ip+":"+a.port),d){const r=p[c(406)][o[c(1034)]]?p[c(406)][o[c(1034)]][c(341)]:{packetsLost:0},n={...f,mediatype:p[c(541)][c(418)],ssrc:o[c(1034)],bwrecv:t[c(358)],codec:s?""+s[c(818)][c(1540)]("/")[1]:-1,bytesrcvd:o[c(1555)]-r[c(1555)],pktsrcvd:o[c(1750)]-r[c(1750)],pktslost:o.packetsLost-r[c(1423)],delay:1e3*t[c(1299)]+(o[c(1088)]?o.jitterBufferDelay/o[c(1088)]*1e3:0),jitter:1e3*o[c(1173)],audiolevel:o[c(350)],mute:e[c(1822)]||e[c(181)]?1:0,weak:0,netlevel:5};u[c(1450)].push(n)}if(l){const o=p.qosHistroyData[r[c(1034)]]?p[c(406)][r[c(1034)]][c(1363)]:{packetsLost:0,firCount:0,pliCount:0,nackCount:0,framesDropped:0},n={...f,mediatype:p[c(541)][c(565)],ssrc:r[c(1034)],bwrecv:t[c(358)],codec:i?""+i[c(818)][c(1540)]("/")[1]:-1,bytesrcvd:r[c(1555)]-o[c(1555)],pktsrcvd:r[c(1750)]-o[c(1750)],pktslost:r[c(1423)]-o[c(1423)],width:r.frameWidth,height:r[c(527)],fps:r[c(1579)],fir:r.firCount-o[c(190)],pli:r[c(1194)]-o[c(1194)],nack:r[c(1257)]-o[c(1257)],delay:1e3*t.currentRoundTripTime+(r[c(1088)]?r.jitterBufferDelay/r[c(1088)]*1e3:0),jitter:1e3*r[c(1173)],mute:e[c(389)]||e.localMuteVideo?1:0,framesdropped:r.framesDropped-o[c(571)],weak:0,netlevel:5},s=p[c(1266)][c(1184)][c(855)][e.id],a=p[c(1266)].network[c(838)][e.id];s&&(n.netlevel=p[c(1411)](e.id,!1),n[c(1371)]=a&&a.isWeak?1:0),u.log.push(n)}const m={publishID:e[c(705)],subscribeID:e.id,audio:null,video:null};if(d){const e=p[c(406)][o[c(1034)]];m[c(341)]={bps:e&&e.audio?Math[c(1221)]((o[c(1555)]-e[c(341)][c(1555)])/(o[c(1243)]-e[c(341)][c(1243)])*1e3):0,audiolevel:Math[c(1221)](100*o[c(350)]),codec:s?s[c(818)][c(1540)]("/")[1]+"/"+s.clockRate+" ("+s[c(1667)]+", "+s[c(1764)]+")":"",pktslost:o[c(1423)]},p[c(406)][o[c(1034)]]={audio:o}}if(l){const o=p.qosHistroyData[r[c(1034)]];m[c(1363)]={width:r.frameWidth,height:r[c(527)],bps:o&&o[c(1363)]?Math[c(1221)]((r[c(1555)]-o[c(1363)][c(1555)])/(r[c(1243)]-o[c(1363)][c(1243)])*1e3):0,fps:r[c(1579)],codec:i?i[c(818)].split("/")[1]+"/"+i[c(1303)]+" ("+i[c(1667)]+", "+i[c(1764)]+")":-1,layerindex:e[c(813)],ssrc:r[c(1034)],delay:o&&o[c(1363)]?Math[c(1221)]((r[c(696)]-o[c(1363)][c(696)])/(r[c(1088)]-o[c(1363)][c(1088)])*1e3):0,jitter:r.jitter,pktslost:r[c(1423)],nack:r[c(1257)],mfsip:a?a.ip+":"+a.port:"",pli:r[c(1194)],fir:r[c(190)],bwrecv:t.availableIncomingBitrate},p[c(406)][r[c(1034)]]={video:r}}return(m.audio||m[c(1363)])&&u[c(1180)][c(801)](m),p[c(1463)]({streamInfo:e,pair:t,audioEnable:d,videoEnable:l,audio:o,video:r}),u},p[n(1062)]=function({streamInfo:e,pair:t,videoOutList:r,audioOut:o,videoRemoteInList:i,audioRemoteIn:s,audioSource:a,videoSource:c,videoCodec:u,audioCodec:d,remoteCandidate:l}){const f=n,m={log:[],report:[]},b=(s||o||a)&&!(e[f(1822)]||e.systemMuteAudio),v=r.length>0&&!(e.muteVideo||e[f(372)]);if(!t)return m;const y={...p[f(933)]({eventCode:"203001",streamInfo:e}),userid:p[f(1266)].userID,roomid:p[f(1266)].roomName,username:p[f(1266)][f(1013)],serviceid:p[f(1199)][f(1487)],streamid:e.id,layerindex:e[f(813)],mediatype:-1,codec:-1,ssrc:-1,mute:-1,rtt:-1,pktslost:-1,width:-1,height:-1,fps:-1,pli:-1,fir:-1,cpu:-1,memory:-1,netmode:-1,bwsend:-1,bwtransmit:-1,bwretransmit:-1,bwtarget:-1,bwactual:-1,bytessent:-1,pktssent:-1,fpscap:-1,nack:-1,encodetime:-1,audiolevel:-1,remb:-1,restecho:-1,restechomax:-1,innoise:-1,outnoise:-1,reqlayerindex:-1,netlevel:-1,weak:-1,codecname:-1};if(l&&(e[f(1209)]=l.ip+":"+l[f(1703)]),b){const t=p[f(406)][o.ssrc],r=t?t.audioOut:{nackCount:0,bytesSent:0,packetsSent:0},n=t&&t[f(210)]?t[f(210)]:{packetsLost:0},i={...y,mediatype:p[f(541)][f(418)],mute:e[f(1822)]?1:0,reqlayerindex:e[f(813)],netlevel:5,weak:0};a&&(i[f(1274)]=a[f(350)]),o&&(i.ssrc=o[f(1034)],i[f(1573)]=o.bytesSent-r.bytesSent,i[f(849)]=o.packetsSent-r[f(1387)],i.bwtarget=o[f(1326)],i[f(754)]=o[f(1257)]-r[f(1257)]),s&&(i[f(1034)]=s[f(1034)],i[f(772)]=s.availableOutgoingBitrate,i[f(903)]=s[f(1423)]-n[f(1423)],s[f(1694)]&&(i[f(1766)]=1e3*s[f(1694)])),d&&(i[f(517)]=""+d[f(818)][f(1540)]("/")[1]),m[f(1450)].push(i)}v&&r.forEach(((r,o)=>{const n=f,s=i[n(1431)]((e=>e[n(1034)]===r[n(1034)]));if(s&&e[n(813)]>=o){const i=p[n(406)][r[n(1034)]],a=i?i[n(1351)]:{firCount:0,pliCount:0,nackCount:0},d=i?i[n(1368)]:{packetsLost:0},l={...y,layerindex:o,mediatype:p[n(541)].Video,mute:e.muteVideo?1:0,bwtarget:t[n(1334)],bwsend:t[n(1334)],fpscap:c[n(1579)],ssrc:r[n(1034)],width:r[n(1011)],height:r.frameHeight,bytessent:r.bytesSent-a[n(1427)],pktssent:r[n(1387)]-a[n(1387)],fps:r.framesPerSecond,fir:r[n(190)]-a[n(190)],pli:r.pliCount-a.pliCount,nack:r[n(1257)]-a.nackCount,pktslost:s.packetsLost-d[n(1423)],rtt:1e3*s.roundTripTime,reqlayerindex:e[n(813)]};i&&(l[n(1710)]=(r[n(248)]-i.videoOut[n(248)])/(r[n(1243)]-i.videoOut[n(1243)]));const f=p[n(1266)][n(1184)].uplinkStats[e.id],b=p[n(1266)][n(1184)].netWeakStats[e.id];f&&(l[n(1826)]=p[n(1411)](e.id,!0),l[n(1371)]=b&&b[n(836)]?1:0),u&&(l.codec=""+u[n(818)][n(1540)]("/")[1]),p.qosHistroyData[l[n(1034)]]={videoOut:r,videoRemoteIn:s,videoSource:c},m[n(1450)][n(801)](l)}}));const h={publishID:e.id,audio:null,video:null};if(b){const e={bps:void 0,audiolevel:void 0,codec:void 0,pktslost:void 0};if(a&&(e[f(1274)]=Math.floor(100*a[f(350)])),o){const t=p[f(406)][o.ssrc];!t&&(p[f(406)][o[f(1034)]]={}),e[f(991)]=t&&t[f(758)]?Math.floor((o[f(1427)]-t[f(758)][f(1427)])/(o[f(1243)]-t[f(758)].timestamp)*1e3):0,p[f(406)][o[f(1034)]][f(758)]=o}s&&(e.pktslost=s[f(1423)],p[f(406)][o[f(1034)]].audioRemoteIn=s),d&&(e[f(517)]=d[f(818)][f(1540)]("/")[1]+"/"+d[f(1303)]+" ("+d[f(1667)]+", "+d[f(1764)]+")"),h[f(341)]=e}if(v){if(i[e[f(813)]]){const o=r[e.layerIndex],n=i[f(1431)]((e=>e[f(1034)]===o[f(1034)])),s=p[f(406)][f(1180)+o.ssrc],a={width:o.frameWidth,height:o[f(527)],bps:void 0,fps:o.framesPerSecond,fpscap:c[f(1579)],codec:u?u[f(818)].split("/")[1]+"/"+u[f(1303)]+" ("+u[f(1667)]+", "+u.sdpFmtpLine+")":void 0,layerindex:e[f(813)],ssrc:o.ssrc,rtt:1e3*n[f(1694)],pktslost:n[f(1423)],nack:o[f(1257)],mfsip:l?l.ip+":"+l[f(1703)]:void 0,pli:o[f(1194)],fir:o[f(190)],bwsend:t[f(1334)]};s&&(a[f(991)]=s&&s[f(1351)]?Math.floor((o[f(1427)]-s.videoOut[f(1427)])/(o[f(1243)]-s[f(1351)][f(1243)])*1e3):0),p[f(406)][f(1180)+o[f(1034)]]={videoOut:o,videoRemoteIn:n},h[f(1363)]=a}}return(h[f(341)]||h.video)&&m[f(1180)].push(h),p.checkQosUplinkError({streamInfo:e,videoOutList:r,audioOut:o,videoRemoteInList:i,videoSource:c,audioEnable:b,videoEnable:v}),m},p[n(1727)]=function(){return new Promise(((t,r)=>{const o=e;let n={log:[],report:[]},i=[];Object[o(1706)](p[o(1266)].publishers).forEach((t=>{i.push(new Promise((r=>{const o=e;if(!t.pc||t.pc.connectionState!==o(1624))return r();t.pc[o(1615)]()[o(515)]((e=>{const i=o,s={streamInfo:t,video:null,audio:null,pair:null,audioCodec:null,videoCodec:null,remoteCandidate:null};e[i(1505)]((e=>{const t=i;e[t(558)]===t(438)&&e[t(195)]===t(497)?s[t(718)]=e:e[t(558)]===t(440)?e[t(1034)]!==p[t(1266)][t(848)]&&("video"===e[t(1687)]?e[t(1147)]!==t(251)&&(s[t(1363)]=e):s[t(341)]=e):e[t(558)]===t(517)?"audio/opus"===e.mimeType?s.audioCodec=e:e[t(818)]===t(902)&&(s[t(235)]=e):e[t(558)]===t(354)&&e.ip&&-1===e.ip[t(199)](t(448))&&(s[t(1586)]=e)}));const a=p[i(1222)](s);return a&&(n.log=n.log[i(1539)](a.log),n[i(1180)]=n[i(1180)][i(1539)](a[i(1180)])),r()}))})))})),[p[o(1266)][o(1054)],p.core.screen].concat(Object[o(1706)](p[o(1266)][o(752)]))[o(1505)]((t=>{const r=o;t[r(1838)],t[r(558)],t.preview&&t.pc&&t.pc[r(1851)]===r(1624)&&i[r(801)](new Promise((r=>{t.pc.getStats().then((o=>{const i=e,s={streamInfo:t,pair:null,videoOutList:[],audioOut:null,videoRemoteInList:[],audioRemoteIn:null,videoSource:null,audioSource:null,videoCodec:null,audioCodec:null,remoteCandidate:null};o.forEach((t=>{const r=e;t[r(558)]===r(438)&&"succeeded"===t[r(195)]?s.pair=t:t[r(558)]===r(316)?"video"===t.kind?s[r(1519)].push(t):s[r(210)]=t:t.type===r(270)?t[r(1687)]===r(1363)?s[r(744)].push(t):s.audioOut=t:t[r(558)]===r(1825)?t[r(1687)]===r(1363)?s.videoSource=t:s.audioSource=t:t[r(558)]===r(517)?"audio/opus"===t[r(818)]?s[r(1373)]=t:t[r(818)]===r(902)&&(s[r(235)]=t):t[r(558)]===r(354)&&t.ip&&-1===t.ip[r(199)](r(448))&&(s[r(1586)]=t)}));const a=p.getQosUplinkData(s);return a&&(n[i(1450)]=n[i(1450)][i(1539)](a[i(1450)]),n.report=n[i(1180)][i(1539)](a[i(1180)])),r()}))})))})),Promise.all(i)[o(515)]((()=>{t(n)}))}))},p[n(336)]=function({streamInfo:e,videoOutList:t,audioOut:r,videoRemoteInList:o,videoSource:i,audioEnable:s,videoEnable:a}){const c=n;if(-1===e[c(813)])return;const u=p[c(406)][e.id]||(p[c(406)][e.id]={}),d=u.layerIndex!==e[c(813)];let l=null,f=null,m=null;if(u[c(813)]=e[c(813)],r&&s&&(u.hasOwnProperty(c(1111))&&!e[c(1822)]&&(u[c(1111)]>=r[c(1387)]?u[c(1693)]?u[c(1693)]++:u.audioNoSentTimes=1:u[c(1693)]=0,u.audioNoSentTimes>=2&&(f={errorType:p.LogErrorType[c(418)],errorCode:p[c(346)][c(1456)][c(574)],errorDesc:c(916)})),u[c(1111)]=r.packetsSent),e.type===p.StreamType[c(1663)]){const t=-1===e[c(813)]?0:e.layerIndex;l=p.options[c(194)][t]}else{const t=-1===e.layerIndex?0:e[c(813)];l=p.options[e[c(1838)]?c(1640):c(992)][t]}if(i&&a&&i.framesPerSecond<l[c(1365)]/2&&e.type!==p[c(1155)][c(1663)]&&(m={errorType:p.LogErrorType[c(565)],errorCode:p[c(346)][c(1456)][c(1760)],errorDesc:c(430)}),!m&&a&&o.length>0){let r=0;t.forEach(((t,o)=>{const n=c;if(0===o){const r="videoEncode"+t[n(1034)];if(u.hasOwnProperty(r)&&!d){Math.floor((t[n(248)]-u[r].framesEncoded)/(Date[n(931)]()-u[r][n(1243)])*1e3)<l.frameRate/2&&e.type!==p[n(1155)][n(1663)]&&(m={errorType:p[n(218)][n(565)],errorCode:p[n(346)][n(1456)][n(793)],errorDesc:n(286)})}else u[r]={};u[r][n(1243)]=Date.now(),u[r][n(248)]=t[n(248)]}r+=t[n(1387)]})),!m&&(u.hasOwnProperty(c(501))&&(u.videoPacketsSent>=r?u[c(1317)]?u[c(1317)]++:u[c(1317)]=1:u[c(1317)]=0,u[c(1317)]>=2&&(f={errorType:p[c(218)][c(565)],errorCode:p[c(346)].Media[c(574)],errorDesc:c(275)})),u[c(501)]=r)}f?(p[c(1433)](p[c(1537)][c(811)],f),p[c(906)](e,p[c(499)][c(418)],!0,f)):p.emitPeerError(e,p[c(499)].Audio,!1),m?(p[c(1433)](p[c(1537)][c(811)],m),p[c(906)](e,p[c(499)][c(565)],!0,m)):p.emitPeerError(e,p[c(499)].Video,!1)},p[n(1463)]=function({streamInfo:e,pair:t,video:r,audio:o,audioEnable:i,videoEnable:s}){const a=n,c=p.qosHistroyData[e.id]||(p.qosHistroyData[e.id]={});let u=null,d=null;o&&i&&(c[a(1651)](a(1296))&&!e[a(1822)]&&!e[a(181)]&&(c[a(1296)]>=o[a(1750)]?c[a(1665)]?c[a(1665)]++:c[a(1665)]=1:c[a(1665)]=0,c[a(1665)]>=2&&(u={errorType:p[a(218)][a(418)],errorCode:p[a(346)][a(1456)].Receiver,errorDesc:a(632)})),c.audioPktsRcvd=o[a(1750)]),r&&s&&(c[a(1651)]("videoPktsRcvd")&&!e[a(389)]&&!e.localMuteVideo&&(c.videoPktsRcvd>=r[a(1750)]?c[a(178)]?c[a(178)]++:c.videoNoRcvdTimes=1:c.videoNoRcvdTimes=0,c.videoNoRcvdTimes>=2&&(d={errorType:p[a(218)][a(565)],errorCode:p.LogErrorCode[a(1456)][a(1110)],errorDesc:"视频流无接收数据"})),c[a(547)]=r[a(1750)],c[a(1651)](a(1715))&&!e[a(389)]&&!e[a(201)]&&!d&&c[a(1715)]>=r[a(1523)]&&(d={errorType:p[a(218)].Video,errorCode:p.LogErrorCode[a(1456)][a(298)],errorDesc:a(262)}),c[a(1715)]=r[a(1523)]),u?(p[a(1433)](p[a(1537)].Error,u),p[a(906)](e,p.StreamTrack[a(418)],!0,u)):p[a(906)](e,p[a(499)][a(418)],!1),d?(p.triggerLogUpload(p.LogType.Error,d),p[a(906)](e,p[a(499)][a(565)],!0,d)):p.emitPeerError(e,p[a(499)].Video,!1)},p[n(1425)]=function(t){const r=n;p[r(1468)](t);let o=0,i=0;t[r(382)]=setInterval((()=>{const n=r;t.pc&&t.pc.connectionState===n(1624)&&t.pc[n(1615)](t[n(514)])[n(515)]((r=>{r.forEach((r=>{const n=e;if(r[n(558)]===n(1825)&&r[n(1687)]===n(1363)){if(!r[n(1186)])return;o===r[n(1186)]?(i++,i>=3&&(i=0,!t[n(389)]&&!t[n(372)]&&(s[n(1023)]("fpscap zero, trigger mute"),t[n(372)]=!0,p[n(250)](t.id,t[n(372)],t[n(1822)])))):(i=0,!t[n(389)]&&t[n(372)]&&(s.logWarn(n(1738)),t[n(372)]=!1,p[n(250)](t.id,t[n(372)],t.muteAudio))),o=r[n(1186)]}}))}))}),2e3)},p[n(1468)]=function(e){clearInterval(e[n(382)])},p[n(906)]=function(e,t,r,o){const i=n;if(!p[i(1199)][i(750)])return;let s=p[i(1266)][i(750)][e.id],c={streamID:e.id,isAudio:t===p.StreamTrack[i(418)],isVideo:t===p[i(499)][i(565)],isError:r};!s&&(s={},p[i(1266)][i(750)][e.id]=s),r?(s[t]=!0,a[i(1167)](a.Event[i(1382)],{...c,...o})):s[t]&&(s[t]=!1,a[i(1167)](a.Event.peerError,{...c}))},p[n(933)]=function({eventCode:e,streamInfo:t}){const o=n;return{logstamp:o(1612),version:o(471),eventcode:e,eventtime:Date.now(),devicetype:p[o(1266)][o(711)],versionrtc:r,sessionid:p[o(1266)][o(1528)],eventtype:e[o(759)](0,3),eventpos:e[o(759)](e[o(1524)]-3,e[o(1524)]),peerdevicetype:t&&!t[o(1227)]?t.dType:-1,streamtype:t?t[o(558)]===p[o(1155)].Camera?1:2:-1}},p[n(878)]=function(e,t){const r=n,{action:o,streamInfo:i}=t,s={...p[r(933)]({eventCode:e,streamInfo:i}),userid:p[r(1266)][r(1668)],roomid:p[r(1266)][r(1272)],serviceid:p[r(1199)][r(1487)],userevent:o,mediatype:-1,mute:-1,streamid:-1,layerscount:-1,layerindex:-1,netmode:-1,peeruserid:-1,duration:-1,bmcsip:-1};switch(o){case p[r(661)][r(1414)]:const e=p.core[r(1823)][r(656)];s[r(858)]=e[r(1574)]-e[r(1482)],delete p.core[r(1823)][r(656)];break;case p[r(661)][r(1255)]:break;case p.UserAction[r(889)]:s[r(1614)]=i.id,s[r(1476)]=p[r(1679)](i)[r(1524)],s.layerindex=i[r(813)]||0;const o=p[r(1266)][r(1823)]["publish-"+i.id];s[r(858)]=o[r(1471)]-o[r(1027)],i[r(1822)]&&i[r(389)]?delete p[r(1266)][r(1823)]["publish-"+i.id]:p[r(569)](i);break;case p.UserAction[r(1591)]:s[r(1614)]=i.id,s[r(1476)]=p[r(1679)](i).length,s[r(577)]=i[r(813)]||0;const n=p[r(1266)][r(1823)]["unpublish-"+i.id];s[r(858)]=n[r(1585)]-n[r(1697)],delete p[r(1266)][r(1823)][r(455)+i.id];break;case p[r(661)][r(1684)]:s[r(1614)]=i.id,s[r(1476)]=i[r(1056)][r(1524)],s[r(577)]=i[r(813)],s[r(490)]=i[r(376)];const a=p[r(1266)][r(1823)][r(1567)+i[r(705)]];s.duration=a[r(1045)]-a[r(693)],i[r(1822)]&&i.muteVideo?delete p[r(1266)].userActionData[r(1567)+i.publishID]:p.checkStreamFirstDownload(i);break;case p[r(661)][r(227)]:s[r(1614)]=i.id,s[r(1476)]=i.layers[r(1524)],s.layerindex=i.layerIndex;const c=p[r(1266)][r(1823)][r(289)+i.id];s[r(858)]=c[r(914)]-c[r(1361)],s[r(490)]=i[r(376)],delete p[r(1266)][r(1823)][r(289)+i.id];break;case p[r(661)].firstDataUploaded:s[r(1614)]=i.id,s[r(1476)]=p[r(1679)](i)[r(1524)],s[r(577)]=i.layerIndex||0;const u=p[r(1266)].userActionData[r(1143)+i.id];s[r(858)]=u[r(1006)]-u[r(1027)],delete p.core.userActionData[r(1143)+i.id];break;case p[r(661)][r(1484)]:s[r(1614)]=i.id,s[r(1476)]=i[r(1056)][r(1524)],s[r(577)]=i[r(813)],s[r(490)]=i[r(376)];const d=p.core[r(1823)]["subscribe-"+i[r(705)]];s[r(858)]=d.downloadTime-d[r(693)],delete p[r(1266)][r(1823)]["publish-"+i.publishID];break;case p.UserAction[r(1109)]:s[r(486)]=t[r(429)],s.streamid=i.id,s[r(1476)]=p.getLayersByStreamInfo(i)[r(1524)],s[r(577)]=i.layerIndex||0,s.mute=(s[r(486)]===p[r(541)][r(418)]?i[r(1822)]||i[r(181)]:i.muteVideo||i[r(201)])?1:0,i[r(376)]&&(s[r(490)]=i[r(376)])}return s},p[n(329)]=function(t){const r=[];return t.forEach((t=>{const o=e,{streamInfo:n}=t,i={...p.wrapBaseData({eventCode:t[o(429)]==p[o(541)].Audio?o(1398):"203007",streamInfo:n}),userid:p[o(1266)][o(1668)],roomid:p[o(1266)].roomName,serviceid:p[o(1199)][o(1487)],username:p.core[o(1013)],streamid:n.id,mediatype:t[o(429)],mute:t[o(1366)],peeruserid:n[o(376)],stuckcount:t[o(587)],stuckduration:t[o(842)],spanduration:t[o(1404)],playduration:t[o(393)],weakduration:t[o(1641)],cpu:-1,memory:-1,netmode:-1};t[o(429)]!==p[o(541)][o(418)]&&(i[o(577)]=n[o(813)]),r[o(801)](i)})),r},p[n(1627)]=function(e,t){const r=n,{errorType:o,errorCode:i,errorDesc:a,streamInfo:c}=t,u={...p[r(933)]({eventCode:e,streamInfo:c}),userid:p.core.userID,roomid:p[r(1266)].roomName,serviceid:p.options.serviceID,streamid:c?c.id||c[r(944)]:-1,peeruserid:c?c.local?-1:c[r(376)]:-1,errtype:o,errcode:i,errdesc:a,mfsip:c&&c[r(1209)]?c.mfsip:-1,netmode:-1};return p.options[r(1776)]&&s[r(485)](r(1581)+u[r(620)]+", errcode: "+u[r(830)]+r(192)+u[r(1360)]),u},p.routineCheckStreamFirstUpload=function(e){const t=n;!e[t(877)]&&e.pc&&(!p[t(1266)].userActionData[t(1143)+e.id]&&(p[t(1266)][t(1823)]["publish-"+e.id]={}),p[t(1266)][t(1823)][t(1143)+e.id][t(1027)]=Date.now(),p.checkStreamFirstUpload(e))},p[n(569)]=function(e){const t=n;if(!e.pc||e[t(877)]||e[t(1822)]&&e[t(389)])return;const r=e.pc[t(1792)]();if(!r||0===r.length)return;e[t(877)]=!0;let o=r[0];r[t(1524)]>1&&r[t(1505)]((r=>{const n=t;r.track&&(e[n(826)]===p[n(831)][n(550)]?r[n(198)].kind===n(1363)&&(o=r):r[n(198)][n(1687)]===(e[n(389)]||!e[n(1822)]&&-1===e.layerIndex?n(341):n(1363))&&(o=r))}));let i=0;const s=setInterval((()=>{const r=t;e[r(1822)]&&-1===e[r(813)]?(i++,i>4&&(clearInterval(s),delete p.core[r(1823)][r(1143)+e.id],e[r(877)]=!1)):i<40?(i++,o[r(1615)]()[r(515)]((t=>{const n=r;if(!p[n(1266)][n(1823)][n(1143)+e.id])return void clearInterval(s);const i=[];let a=0;t[n(1505)]((e=>{const t=n;e[t(558)]===t(270)&&i.push(e)})),i[n(1505)]((e=>{const t=n;a+=o[t(198)][t(1687)]===t(1363)?e[t(306)]:e[t(1387)]})),a>0&&(clearInterval(s),p[n(1266)][n(1823)][n(1143)+e.id][n(1006)]=Date.now(),p.triggerLogUpload(p[n(1537)][n(661)],{action:p[n(661)][n(191)],streamInfo:e}))}))):(clearInterval(s),p.core[r(1823)][r(1143)+e.id].uploadTime=Date.now(),p[r(1433)](p[r(1537)][r(661)],{action:p[r(661)][r(191)],streamInfo:e}))}),50)},p[n(792)]=function(t){const r=n;if(!t.pc)return;const o=t.pc[r(790)]();if(!o||0===o[r(1524)])return;let i=o[0];o.length>1&&o[r(1505)]((e=>{const o=r;e[o(198)][o(1687)]===(t[o(389)]?o(341):o(1363))&&(i=e)}));let s=0;const a=setInterval((()=>{const o=r;s<10?(s++,i[o(1615)]().then((r=>{const n=o,s=[];let c=0;r.forEach((t=>{const r=e;t[r(558)]===r(440)&&t.ssrc!==p.core[r(848)]&&s[r(801)](t)})),s[n(1505)]((e=>{const t=n;c+=i[t(198)].kind===t(1363)?e.keyFramesDecoded:e[t(1750)]})),c>0&&(clearInterval(a),p.core[n(1823)][n(1567)+t[n(705)]].downloadTime=Date[n(931)](),p.triggerLogUpload(p[n(1537)].UserAction,{action:p[n(661)][n(1484)],streamInfo:t}))}))):(clearInterval(a),p.core[o(1823)]["subscribe-"+t[o(705)]][o(1754)]=Date.now(),p.triggerLogUpload(p[o(1537)][o(661)],{action:p[o(661)][o(1484)],streamInfo:t}))}),50)},p[n(627)]=function(e,t,r,o,i,a=!1){const c=n;if(a){if(!p[c(1266)][c(1528)]||p.ws&&p.ws.readyState===WebSocket.OPEN)return void s[c(485)]("invalid recovery: "+p[c(1266)][c(1528)]+", "+(p.ws?c(829)+(p.ws[c(1168)]===WebSocket.OPEN):"no websocket"))}else{if(p[c(1266)][c(1272)]&&p[c(1266)][c(1272)]!==e||p[c(1266)][c(1668)]&&p[c(1266)][c(1668)]!==t)return p[c(185)](),p[c(627)](e,t,r,i,o);if(1===p[c(1266)][c(313)])return s[c(485)](c(1397)),p.emitError(p[c(1215)].JoinError,c(1175));p[c(384)](),p[c(1100)]({roomName:e,userID:t,userName:r,userArea:o,userRole:i})}!p.core[c(1823)].join&&(p[c(1266)].userActionData.join={}),p[c(1266)][c(1823)][c(656)][c(1482)]=Date.now();let u={reqId:h(),roomName:p[c(1266)][c(1272)]};p.options.forceArea?u[c(733)]=p[c(1266)][c(478)]:(u.publicIP=p.core.publicIP,u[c(1796)]=p[c(1266)][c(1796)],u[c(356)]=p[c(1266)][c(356)],u[c(1139)]=p[c(1266)][c(1139)],u[c(1024)]=p.core[c(1024)],s.logInfo(c(362),p[c(1266)][c(1412)],p[c(1266)][c(1796)],p[c(1266)].countryCode,p.core.regionCode,p[c(1266)][c(1024)]));let d={Authorization:I(p[c(1266)],p.options,p[c(847)])};p[c(1266)][c(1605)]=u[c(1103)],p[c(1604)](c(1481),p.options.Services.BasicRoomServiceToken,u,d,(function(e){const t=c;if(u[t(1103)]===p[t(1266)][t(1605)])return e&&e[t(313)]!==t(1618)?(s.logError("room service response error, "+e[t(385)]),p[t(749)](p[t(1215)][t(299)],t(1609)),void p[t(1433)](p[t(1537)][t(811)],{errorType:p.LogErrorType[t(663)],errorCode:p.LogErrorCode.Rtc[t(970)],errorDesc:t(1609)})):e[t(1651)](t(1091))&&e[t(1091)].hasOwnProperty(t(553))?void p[t(1151)](e.tokenInfo.token,a):(s[t(485)](t(1337)),p.emitError(p[t(1215)][t(299)],"room response error, no token"),void p[t(1433)](p[t(1537)][t(811)],{errorType:p[t(218)].Rtc,errorCode:p[t(346)][t(663)][t(970)],errorDesc:t(1756)}));s[t(1023)]("on success, join request deprecated, reqId: "+u[t(1103)])}),(function(n,d,l){const f=c;if(u[f(1103)]===p[f(1266)].joinReqId){if(n instanceof Object&&401===n[f(313)]){const c=Date.parse(n.getResponseHeader(f(1188)))||0;if(c>0){const n=Date[f(931)]();if(Math[f(263)](c-n-p[f(1199)][f(980)])>6e4)return p[f(1199)][f(980)]=c-n,s[f(1023)]("local timestamp="+n+",","server timestamp="+c+",",f(220)+p.options[f(980)]),p[f(627)](e,t,r,o,i,a)}}return s.logError("request room service error, "+(n[f(462)]||n)+", requestBody: "+JSON.stringify(u)),a?p[f(1568)]():(p[f(1433)](p[f(1537)][f(811)],{errorType:p[f(218)][f(663)],errorCode:p[f(346)][f(663)][f(970)],errorCode:f(769)+n[f(313)]}),p.emitError(p.ErrorCode[f(299)],f(1692)))}s.logWarn(f(1782)+u[f(1103)])}))},p[n(1705)]=function(e,t,r,o,i,a){const c=n;if(p[c(1266)].ipInfoRetryCount=0,p[c(1199)].forceArea)return s[c(1055)](c(619)+o),this[c(627)](e,t,r,o,i,a);p[c(441)](e,t,r,i,a)},p[n(441)]=function(t,r,i,a,c){const u=n;let d={msgId:h()};jhkSign(d,{appKey:u(345),postAndJSON:!0});const l={method:u(1481),url:p[u(452)](p[u(1199)][u(573)][u(828)]),timeout:p[u(1199)][u(1325)],contentType:"application/json"};let f={};f.appKey=u(345),f[u(1115)]=jhkSign(d,{appKey:u(345),postAndJSON:!0}),f instanceof Object&&Object[u(703)](f)[u(1524)]>0&&(l[u(1666)]=f),l.data=JSON[u(1014)](d),p[u(1266)].ipReqId=d[u(1258)],o(l)[u(515)]((o=>{!function(o){const n=e;if(d[n(1258)]!==p[n(1266)][n(1458)])return void s[n(1023)](n(798)+d[n(1258)]);if(o[n(313)]!==n(1618)){if(s[n(485)](n(1623)+JSON[n(1014)](o)),p.core[n(1350)]<p.core[n(359)]){let e=1e3;return 0<p[n(1266)][n(1350)]&&(e=3e3*p[n(1266)][n(1350)]),setTimeout((function(){const e=n;p[e(1266)][e(1350)]=p.core[e(1350)]+1,p[e(441)](t,r,i,a,c)}),e),p[n(749)](p[n(1215)][n(179)],"sleep "+e+n(1844)+p.core.ipInfoRetryCount+n(221)+o[n(385)])}return p[n(749)](p.ErrorCode[n(179)],n(243)+p[n(1266)].ipInfoMaxRetryCount+n(221)+o[n(385)])}if(!o.hasOwnProperty(n(1439)))return p[n(749)](p[n(1215)][n(1470)],"request ip info error, no cityInfo, response:"+JSON[n(1014)](o));if(!(o[n(1439)].hasOwnProperty(n(484))&&o.cityInfo[n(1651)](n(1796))&&o[n(1439)][n(1651)](n(356))&&o[n(1439)].hasOwnProperty("regionCode")&&o[n(1439)][n(1651)](n(1024))))return p[n(749)](p.ErrorCode[n(1470)],n(456)+JSON[n(1014)](o)),p[n(441)](t,r,i,a,c);p[n(1266)][n(1412)]=o[n(1439)].ipAddr;let u=parseInt(o[n(1439)][n(1796)]);p[n(1266)][n(1796)]=u[n(339)]();let l=parseInt(o[n(1439)][n(356)]);p[n(1266)].countryCode=l.toString();let f=o[n(1439)].regionCode,m=o[n(1439)][n(1024)];f.length>=2&&(p[n(1266)][n(1139)]=parseInt(f[n(759)](0,2))[n(339)]()),m[n(1524)]>=4&&(p[n(1266)][n(1024)]=parseInt(m.substring(2,4))[n(339)]()),s[n(1055)](n(216)+JSON.stringify(o)),p[n(627)](t,r,i,p.Area[n(1681)],a,c)}(o)})).catch((o=>{!function(o,n,u){const l=e;if(d[l(1258)]===p[l(1266)][l(1458)]){if(s[l(485)](l(932),o,n,u),p[l(1266)][l(1350)]<p[l(1266)][l(359)]){let e=1e3;return 0<p[l(1266)][l(1350)]&&(e=3e3*p[l(1266)][l(1350)]),setTimeout((function(){const e=l;p[e(1266)][e(1350)]=p.core[e(1350)]+1,p[e(441)](t,r,i,a,c)}),e),p[l(749)](p.ErrorCode[l(179)],"sleep "+e+l(1844)+p[l(1266)][l(1350)]+l(1158)+JSON[l(1014)](o))}return p[l(749)](p.ErrorCode[l(179)],l(633)+p.core.ipInfoMaxRetryCount+l(1158)+JSON.stringify(o))}s[l(1023)](l(1298)+d[l(1258)])}(o)})),s[u(1055)](u(1494)+JSON[u(1014)](l))},p[n(185)]=function(e=!0){const t=n;p.ping&&(clearInterval(p.ping),delete p[t(1682)]),p[t(1213)]&&clearTimeout(p[t(1213)]),p.ws&&(p.ws[t(1168)]===WebSocket[t(215)]?p[t(1607)]():p.ws[t(1070)](),p[t(1266)].session&&p.triggerLogUpload(p[t(1537)][t(661)],{action:p.UserAction[t(1255)]})),p[t(1266)][t(313)]=0,e&&(p[t(1266)][t(1528)]="",p[t(1266)].userID="",p.core[t(1013)]="",p.core[t(1272)]="",p.core[t(1605)]="",p.core[t(1458)]=""),p.cleanStreamData(),p[t(1266)][t(1560)]=!1,p.core[t(1721)]=[],p[t(1266)][t(1823)]={},p.core[t(750)]={},p[t(536)]()},p.getCurrentScriptURL=function(){const e=n;if(document[e(1734)])return document[e(1734)].src;try{throw new Error}catch(t){try{let r=t[e(1083)][e(1751)](/([^ \n])*([a-z]*:\/\/\/?)*?[a-z0-9\/\\]*\.js/gi)[0];if(r)return["(",")","@"][e(1505)]((t=>{r=r[e(1190)](t,"")})),r}catch(t){s.logWarn(e(937)+t)}}let t=document[e(475)]("script");return t.length>0?t[t.length-1][e(1569)]:void 0},p[n(841)]=function(){return new Promise((t=>{const r=e;if(p[r(1716)])t();else if(u)if(p[r(1716)]=new u,s[r(1055)]("init audio context ok"),l){let e="data:text/javascript;base64,Y2xhc3MgQXVkaW9MZXZlbFByb2Nlc3NvciBleHRlbmRzIEF1ZGlvV29ya2xldFByb2Nlc3NvciB7Y29uc3RydWN0b3IoKSB7c3VwZXIoKTt0aGlzLl9sYXN0VXBkYXRlID0gY3VycmVudFRpbWU7fXByb2Nlc3MoaW5wdXRzLCBvdXRwdXRzLCBwYXJhbWV0ZXJzKSB7aWYgKCFpbnB1dHMpIHtyZXR1cm47fWlmIChjdXJyZW50VGltZSAtIHRoaXMuX2xhc3RVcGRhdGUgPj0gMC4xKSB7aWYgKCFpbnB1dHNbMF0gfHwgIWlucHV0c1swXVswXSkge3JldHVybjt9Y29uc3QgYnVmZmVyID0gaW5wdXRzWzBdWzBdO2xldCBtYXggPSBNYXRoLmZsb29yKE1hdGgubWF4LmFwcGx5KE1hdGgsIGJ1ZmZlcikgKiAxMDApO2lmIChtYXggPCAwKSB7bWF4ID0gLW1heDt9dGhpcy5wb3J0LnBvc3RNZXNzYWdlKHthdWRpb0xldmVsOiBtYXh9KTt0aGlzLl9sYXN0VXBkYXRlID0gY3VycmVudFRpbWU7fXJldHVybiB0cnVlO319cmVnaXN0ZXJQcm9jZXNzb3IoJ2F1ZGlvTGV2ZWwnLCBBdWRpb0xldmVsUHJvY2Vzc29yKTs=",o=null;o=setTimeout((()=>{s[r(1023)]("audioContext timeout"),t()}),200);try{p.audioContext[r(538)][r(254)](e)[r(515)]((()=>{const e=r;s.logInfo(e(1544)),clearTimeout(o),t()}))[r(432)]((e=>{const n=r;l=null,s[n(1023)]("can not add module to audio worklet,",e[n(339)]()),clearTimeout(o),t()}))}catch(e){l=null,s[r(1023)](r(433),e[r(339)]()),clearTimeout(o),t()}}else t();else s[r(485)](r(453)),t()}))},p[n(523)]=function(e="",t=""){const r=n;if(!p[r(1199)][r(426)])return{video:!1};let o={},i=t?"cameraExLayers":r(992),s=p[r(1199)][i][r(1515)](-1)[0][r(723)]||1280,a=p[r(1199)][i].slice(-1)[0][r(1669)]||720,c=p[r(1199)][i][r(1515)](-1)[0][r(1365)]||30,u={width:s,height:a,aspectRatio:1.7777777777777777,frameRate:{min:c>>1,ideal:c},facingMode:p[r(1266)][r(1054)][r(1784)]};return x.isSafari&&delete u[r(1365)][r(1472)],Object[r(703)](u)[r(1505)]((e=>{p.getBrowserSupported(e)&&(o[e]=u[e])})),e&&(o[r(487)]=e),0===Object[r(703)](o)[r(1524)]?{video:!0}:(o[r(487)]&&p[r(305)](o),{video:o})},p[n(1378)]=function(e=""){const t=n;if(!p[t(1199)][t(724)])return{audio:!1};let r={},o={autoGainControl:!0,echoCancellation:!0,noiseSuppression:!0};return Object[t(703)](o)[t(1505)]((e=>{p[t(676)](e)&&(r[e]=o[e])})),e&&(r[t(487)]=e),0===Object[t(703)](r)[t(1524)]?{audio:!0}:(r.autoGainControl=p[t(1199)].autoGainControl,r[t(1432)]=p[t(1199)][t(1432)],r[t(1799)]=p[t(1199)][t(1799)],{audio:r})},p[n(305)]=function(e){const t=n,r=[{name:t(1068),width:1920,height:1080,frameRate:30,minFrameRate:10},{name:t(1598),frameRate:30,minFrameRate:10}],o=p[t(1266)].devices[t(1812)].videoinput;if(!o||0===o[t(1524)])return;const i=p.core[t(1533)][t(1812)].videoinput.find((t=>t.id==e.deviceId));i&&r[t(1505)]((r=>{const o=t;-1!==i[o(1645)][o(199)](r[o(1645)])&&(r[o(723)]&&(e[o(723)]=r.width),r[o(1669)]&&(e[o(1669)]=r[o(1669)]),e[o(1365)]&&(e[o(1365)]={min:r[o(1118)],ideal:r[o(1365)]}))}))},p[n(1353)]=function(e){e.autoGainControl=!1,e.echoCancellation=!0,e.noiseSuppression=!1},p.logTrackInfo=function(e,t,r){const o=n;e?(s[o(1055)](o(1856)+t+",kind:"+e.kind+",contentHint:"+e[o(630)]+",enabled:"+e[o(1392)]+o(1239)+e.muted+",readyState:"+e[o(1168)]),e[o(607)]=t=>{const r=o;s[r(1023)](r(1131)+e[r(1687)]+",enabled:"+e[r(1392)],t)},e[o(604)]=t=>{const r=o;s.logWarn(r(1852)+e[r(1687)]+r(1712)+e.enabled+r(1510)+e[r(1168)],t)},e[o(241)]=t=>{const n=o;s.logWarn(n(390)+e[n(1687)]+n(1712)+e[n(1392)]+n(1510)+e[n(1168)],t),e[n(1687)]===p.StreamTrack[n(565)]&&r[n(854)]&&!r[n(389)]&&(r[n(372)]=!0,p[n(250)](r.id,r.systemMuteVideo,r[n(1822)]))},e[o(226)]=t=>{const n=o;s[n(1023)](n(1424)+e[n(1687)]+n(1712)+e[n(1392)],t),e[n(1687)]===p[n(499)].Video&&r[n(854)]&&!r[n(389)]&&r.systemMuteVideo&&(r.systemMuteVideo=!1,p[n(250)](r.id,r[n(372)],r[n(1822)]))}):s[o(1023)]("trackInfo: track is null")},p[n(353)]=function(e){const t=n;e&&(e[t(607)]=null,e[t(604)]=null,e[t(241)]=null,e[t(226)]=null)},p[n(899)]=async function(e,t){const r=n;s[r(1055)]("_hiRtcSDK.getDeviceUsingPermission(audio:"+e+r(857)+t+")"),p[r(1072)]();let o={};e&&(o=Object[r(1772)](o,p[r(1378)]())),t&&(o=Object.assign(o,p.getVideoConstraints()));let i=null;try{s[r(1055)](r(397)+JSON.stringify(o)+")"),i=await navigator[r(796)].getUserMedia(o),s[r(1055)](r(1268))}catch(n){return p[r(1059)](!e&&void 0,!t&&void 0),n instanceof Object&&n[r(1645)]===r(1525)?(s[r(1023)](r(892),e,t),a.emit(a[r(629)][r(950)],e,t,!0,!1)):n instanceof Object&&"NotFoundError"===n[r(1645)]?(s[r(1023)](r(1346),e,t,o),a[r(1167)](a[r(629)][r(950)],e,t,!1,!1)):n instanceof Object&&"NotReadableError"===n[r(1645)]?(e&&await p[r(841)](),p[r(1059)](!!e||void 0,!t&&void 0),s[r(1055)](r(494),e,t,o),a[r(1167)](a[r(629)][r(950)],e,t,!0,!0)):(s[r(485)](r(1801)+n[r(339)](),o),a[r(1167)](a[r(629)][r(950)],e,t,!1,!1))}e&&await p[r(841)](),a[r(1167)](a[r(629)][r(950)],e,t,!0,!0),p.stopMediaStream(i),p[r(1059)](!!e||void 0,!!t||void 0),s[r(1055)](r(739))},p[n(1059)]=function(e,t){const r=n;typeof e===r(1065)&&(p[r(1266)][r(950)].audio=e),"boolean"==typeof t&&(p.core[r(950)][r(1363)]=t)},p[n(264)]=function(e){const t=n;e&&(p.unlogTrackInfo(e),e.stop(),e.kind===p[t(499)].Audio&&a[t(1167)](a[t(629)][t(1093)]))},p.stopMediaStream=function(e){const t=n;e&&e[t(1691)]()[t(1505)]((e=>p.stopMediaTrack(e)))},p.replaceCustomTrack=function(){const e=n,t=p[e(1266)].custom,r=t.canvas,o=p[e(1199)].customLayers[0];(o[e(723)]!==r[e(723)]||o[e(1669)]!==r.height)&&(r[e(1837)](e(723),o.width),r[e(1837)](e(1669),o[e(1669)]));try{t[e(1148)]&&(p[e(264)](t[e(1148)]),t[e(839)].removeTrack(t.audioTrack));const r=t[e(465)];let o=null;if(o=null==r[e(1408)]?r[e(233)]():r[e(1408)](),t[e(1148)]=o.getAudioTracks()[0],t[e(1148)]&&(t[e(839)].addTrack(t[e(1148)]),t.pc)){t.pc[e(1792)]()[e(1431)]((t=>(t.track&&t[e(198)][e(1687)])===e(341)||!t[e(198)])).replaceTrack(t[e(1148)])}}catch(t){s[e(485)](e(1297),t[e(339)]())}},p[n(398)]=function(){const e=n;p.core.custom[e(506)]=!0},p[n(357)]=function(){const t=n,r=()=>{const t=e;p[t(232)](),p[t(1266)].custom[t(465)][t(464)]("canplay",r)};p[t(1266)][t(1580)][t(465)]&&p[t(1266)][t(1580)][t(506)]&&p[t(1266)][t(1580)].videoElem[t(247)]("canplay",r),p[t(1266)].custom[t(506)]=!1},p[n(419)]=function(e){const t=n;e&&(e.addEventListener("ended",p[t(398)]),e[t(247)](t(805),p.checkVideoPlay))},p[n(311)]=function(e){const t=n;e&&(e.removeEventListener("ended",p[t(398)]),e[t(464)](t(805),p[t(357)]))},p.replaceStreamTrack=function(e,t,r=!1){const o=n,i={audio:{trackName:o(1148),getTrackFunc:"getAudioTracks"},video:{trackName:o(514),getTrackFunc:o(503)}};if(!e||Object[o(703)](i)[o(199)](e)<0)return s.logWarn(o(911));let a=i[e].trackName,c=i[e][o(777)],u=t[o(839)][c](),d=u[o(1524)]>0;if(t[a])t.stream[o(590)](t[a]),u[o(1505)]((e=>{const n=o;t[n(839)].removeTrack(e),!r&&p[n(264)](e)}));else for(let e=0,r=u[o(1524)];e<r;e++){let r=u[e];e>0&&t[o(839)].removeTrack(r),p.stopMediaTrack(r)}return d},p.replacePCTrack=async function(e="",t){const r=n;if(!(Object[r(1706)](p[r(499)])[r(199)](e)<0)&&t.pc)if(e===p[r(499)][r(418)]){if(t[r(1148)]){let e=t.pc.getSenders()[r(1431)]((e=>e[r(198)]&&e[r(198)].kind===r(341)));if(e)try{await e.replaceTrack(t[r(1148)])}catch(e){s[r(485)](r(955),e[r(339)]())}else p.wsUnPublish(p.StreamType[r(551)],t.id,t.tag),p[r(1395)](p.StreamType[r(551)],t[r(1838)],t.info?t[r(1755)].app:"")}}else if(t.videoTrack){let e=t.pc.getSenders()[r(1431)]((e=>e[r(198)]&&e.track[r(1687)]===r(1363)));if(e)try{await e[r(511)](t[r(514)])}catch(e){s[r(485)](r(1608),e[r(339)]())}else p[r(1479)](p[r(1155)][r(551)],t.id,t.tag),p[r(1395)](p[r(1155)].Camera,t[r(1838)],t[r(1755)]?t.info[r(509)]:"")}},p[n(1311)]=function(e,t,r){const o=n,i=p[o(1266)][o(1580)],s=()=>{const t=o;p[t(232)](),e.removeEventListener(t(1602),s)};r&&p.setOption({customLayers:[...r]}),i[o(465)]===e?(e[o(200)](),e[o(1569)]=t,e[o(247)](o(1602),s)):(i[o(465)].pause(),p[o(311)](i[o(465)]),i[o(1148)]&&p.stopMediaTrack(i[o(1148)]),i[o(465)]=e,p.addVideoEvent(i[o(465)]),e[o(247)](o(1602),s),e[o(1569)]=t,p[o(658)](e),e[o(1724)]=!1)},p[n(1492)]=async function(e){const t=n;if(Object[t(1706)](p[t(499)])[t(199)](e)<0)return;const r=e+t(292),o=e+t(670),i="get"+w(e)+t(287),a=t(1287)+w(e)+"Tracks",c=e===p.StreamTrack[t(565)];let u=!1;const d=p[t(1266)].devices[o];if(!d)return;const l=p[i](d);c&&x.android&&(u=p.core[t(1054)][r]&&p[t(1266)].camera[r][t(1168)]===t(794),u&&p[t(264)](p[t(1266)][t(1054)][r])),c&&d===p[t(1736)].Environment&&(!p[t(1266)][t(1533)][t(1166)]&&await p[t(1301)](!0),p[t(1266)][t(1533)].backCamera&&(l[t(1363)].deviceId=p[t(1266)][t(1533)][t(1166)].id));try{let e=await navigator[t(796)].getUserMedia(l);!c&&p[t(760)][t(195)]===t(960)&&(p[t(264)](p[t(1266)].camera[t(1421)]),p[t(1266)][t(1054)][t(1421)]=e[t(1008)]()[0],e=await p[t(760)][t(1824)](e)),p[t(264)](p[t(1266)].camera[r]),p[t(1266)][t(1054)][r]=e[a]()[0],p[t(1219)](p.core[t(1054)][r],t(1492),p[t(1266)][t(1054)])}catch(r){if(p[t(1266)].devices[o]="",s[t(485)](r&&r[t(1645)]?r[t(1645)]:r),c&&x[t(934)]&&u){const e=p[t(523)](p[t(1266)][t(1533)][t(635)]),r=await navigator[t(796)][t(835)](e);p.core[t(1054)][t(514)]=r[t(503)]()[0],p[t(1338)](p[t(499)][t(565)],p[t(1266)][t(1054)]),p[t(623)](p[t(1266)][t(1054)].videoElem,p[t(1266)][t(1054)].stream),p[t(1266)][t(1054)].pc&&await p.replacePCTrack(p[t(499)].Video,p.core[t(1054)])}return p[t(749)](p[t(1215)][t(391)],{deviceType:e===p[t(499)][t(418)]?p[t(925)].AudioInput:p[t(925)][t(496)],deviceID:d,desc:t(1233)+e+t(592)})}e===p[t(499)][t(418)]?(await p.initAudioContext(),p.replaceStreamTrack(e,p[t(1266)].camera),p[t(622)](p[t(1155)][t(551)])):(p[t(1338)](e,p.core[t(1054)]),p.setVideoElementStream(p[t(1266)].camera[t(465)],p.core[t(1054)].stream),p.options.autoplayFix&&p[t(1122)](p[t(1266)][t(1054)].videoElem,!0)),p[t(1266)][t(1054)].pc&&await p[t(213)](e,p[t(1266)][t(1054)])},p[n(658)]=function(e=null,t=!0,r=!1){const o=n;if(!(e&&e instanceof HTMLElement))return void s[o(1023)](o(1149));t&&(e[o(1724)]=!0),e[o(495)]=!1,e[o(364)]=!0,e.autoplay=!0,e[o(1837)](o(642),""),e[o(1837)](o(1517),"");const i=()=>{const n=o;s[n(1055)](n(t?1363:341)+n(342)+(e.id||"")),!r&&p[n(1122)](e,t),!t&&p[n(1820)](e,p[n(1266)][n(1533)][p[n(925)][n(1744)]]),e[n(464)](n(1583),i)};e.addEventListener("loadedmetadata",i)},p.elementPlay=function(e,t){const r=n;e[r(805)]().then()[r(432)]((o=>{const n=r;p[n(1266)][n(950)][n(839)]||(s.logError("can't autoplay "+(t?n(1363):"audio")+" "+(e.id||"")+", "+o),p.core.unableAutoPlay[n(801)](e),a[n(1167)](a[n(629)][n(665)]))}))},p[n(1758)]=async function(e,t){const r=n;if(!p[r(1199)][r(1021)]||!e)return void(e&&p[r(1122)](e,t));if(x.ios){const o=p[r(1266)].camera;if(o.preview&&o[r(1148)]&&o[r(1148)][r(1168)]===r(794))return void p.elementPlay(e,t)}const o=p[r(1266)].permission;let i=null;try{o[r(839)]?(i=o[r(839)],clearTimeout(o.timeout)):o.audio&&(i=await navigator[r(796)][r(835)]({audio:!0}),o[r(839)]=i),p[r(1122)](e,t),i&&(o[r(972)]=setTimeout((()=>{const e=r;o[e(839)]=null,p[e(256)](i)}),3e4))}catch(o){p[r(1122)](e,t)}},p[n(1774)]=async function(e=null,t,r=!1,o=!1,i=[]){const c=n;if(r||o)r&&p[c(1492)](p.StreamTrack[c(418)])[c(515)](),o&&p[c(1492)](p[c(499)][c(565)])[c(515)]();else if(t){if(p.core[c(1054)][c(731)]&&p.core[c(1054)].stream&&(!e||p[c(1266)].camera.videoElem===e)||p[c(1266)][c(1054)][c(1588)])return s[c(1023)](c(1857)),p.emitPreviewError({type:p[c(1155)][c(551)],desc:c(1678),error:{name:c(1595)}});if(!p.options[c(724)]&&!p[c(1199)].cameraEnableVideo)return p[c(1513)]({type:p[c(1155)][c(551)],desc:c(1446),error:{name:c(1475)}});if(!p[c(1266)].devices.audioinput&&!p.core[c(1533)].videoinput)return p[c(1513)]({type:p.StreamType[c(551)],desc:c(595),error:{name:c(1352)}});e instanceof HTMLElement&&e!==p[c(1266)][c(1054)][c(465)]&&(p[c(658)](e),p.core.camera[c(465)]=e);let t=p.core[c(1533)][c(673)]?p[c(523)](p[c(1266)][c(1533)][c(673)]):{video:!1},r=p.core.devices[c(467)]?p[c(1378)](p[c(1266)][c(1533)][c(467)]):{audio:!1},o=!1,n=!1,u=!1,d=!1,l=null,f=null,m=[],b=async e=>{const t=c;p[t(1266)][t(1054)][t(1148)]=e,n=!0,p[t(1219)](p[t(1266)][t(1054)][t(1148)],t(1774),p[t(1266)].camera),p[t(1338)](p[t(499)][t(418)],p[t(1266)][t(1054)]),await p[t(841)](),p.releaseAudioProcessor(p[t(1155)][t(551)])};p[c(1266)][c(1054)].tryPreview=!0,t[c(1363)]&&(t[c(1363)][c(487)]===p[c(1736)].Environment&&(!p[c(1266)][c(1533)][c(1166)]&&await p.getDeviceList(!0),p[c(1266)][c(1533)][c(1166)]&&(t[c(1363)][c(487)]=p[c(1266)][c(1533)].backCamera.id)),m.push((async()=>{const e=c;let r;try{r=await navigator[e(796)][e(835)](t),p[e(1266)][e(1054)][e(514)]=r.getVideoTracks()[0],o=!0}catch(t){return s[e(1023)](e(771)+t.toString()),void(f=t)}return p[e(1219)](p[e(1266)][e(1054)][e(514)],e(1774),p[e(1266)][e(1054)]),p[e(1338)](p[e(499)].Video,p.core.camera),p[e(623)](p[e(1266)].camera[e(465)],p.core[e(1054)].stream),p[e(1199)][e(1021)]&&p.elementPlay(p[e(1266)][e(1054)][e(465)],!0),r})())),r[c(341)]&&(i[c(1524)]>0&&r[c(341)]instanceof Object&&p[c(1353)](r[c(341)]),m.push((async()=>{const e=c;let t;try{t=await navigator[e(796)][e(835)](r)}catch(t){return s[e(1023)](e(1393)+t[e(339)]()),void(l=t)}return b(t[e(1008)]()[0]),t})())),r.audio&&i[c(1524)]>0&&(p.denoiser.setConfig(i[0]),p.options[c(1647)]?(u=!0,m[c(801)]((async()=>{const e=c;try{await p[e(760)][e(701)]()}catch(e){d=!0}})())):u=!1);let v=await Promise[c(1745)](m);if(!p[c(1266)].camera[c(1588)])return void v[c(1505)]((e=>{e instanceof MediaStream&&p[c(256)](e)}));if(n&&u){if(!d)try{let e=await p.denoiser.start(p[c(1266)][c(1054)][c(839)]);p[c(1266)].camera.sourceAudioTrack=p[c(1266)][c(1054)][c(1148)],p.core[c(1054)].audioTrack=e[c(1008)]()[0],p[c(1338)](p[c(499)][c(418)],p[c(1266)][c(1054)],!0),p[c(622)](p[c(1155)][c(551)])}catch(e){s[c(1055)](e[c(339)]()),d=!0}if(d){s[c(1055)](c(1108));let e=p[c(1378)](p[c(1266)][c(1533)].audioinput),t=await navigator[c(796)][c(835)](e);b(t[c(1008)]()[0])}}if(p[c(1266)][c(1054)].tryPreview=!1,!n&&!o){let e=l||f,t=e[c(339)]();return s[c(485)]("preview error: "+e),p[c(1513)]({type:p[c(1155)].Camera,desc:t,error:e})}p.core[c(1054)].preview=!0,n&&(p[c(1266)][c(1054)][c(1822)]=!1),o&&(p[c(1266)][c(1054)][c(389)]=!1),a[c(1167)](a.Event[c(1054)],!0,n,o,p[c(1266)][c(1054)][c(839)])}else"started"===p[c(760)].state?(p[c(264)](p.core[c(1054)].sourceAudioTrack),p[c(264)](p[c(1266)][c(1054)][c(514)]),p[c(760)][c(1508)]()):p[c(256)](p[c(1266)].camera[c(839)]),p.wsUnPublish(p[c(1155)][c(551)],p[c(1266)][c(1054)].id),p[c(1266)][c(1054)][c(1588)]=!1,p[c(1266)][c(1054)][c(731)]=!1,a[c(1167)](a[c(629)][c(1054)],!1)},p[n(894)]=async function(e=null,t,r,o,i){const c=n;let u=p[c(1266)][c(752)][t];if(i){if(u&&u.preview&&u[c(839)])return a.emit(a.Event[c(752)],i,u[c(839)]);!p[c(1266)][c(752)][t]&&(p[c(1266)][c(752)][t]={local:!0,tag:t,type:p[c(1155)][c(551)],candidate:[],layerIndex:-1,muteAudio:!1,muteVideo:!1,info:{app:"",rtc:"",act:0},stream:new MediaStream},u=p[c(1266)].cameraEx[t]),e instanceof HTMLElement&&e!==u[c(465)]&&(p[c(658)](e),u[c(465)]=e);try{if(r){const e=p[c(1378)](r,t),o=await navigator[c(796)][c(835)](e);u[c(1148)]=o[c(1008)]()[0],p.replaceStreamTrack(p[c(499)].Audio,u),u[c(1527)]=r,u.audio=!0,p[c(1219)](u.audioTrack,c(894),u)}else u[c(341)]=!1,delete u[c(1527)];if(o){const e=p[c(523)](o,t),r=await navigator[c(796)][c(835)](e);u.videoTrack=r[c(503)]()[0],p[c(1338)](p[c(499)][c(565)],u),u[c(1447)]=o,u[c(1363)]=!0,p[c(1219)](u[c(514)],c(894),u)}else u[c(1363)]=!1,delete u.audioInputID;return await p[c(841)](),p[c(623)](u[c(465)],u.stream),u[c(731)]=!0,a[c(1167)](a[c(629)][c(752)],!0,t)}catch(e){return s[c(485)](c(435)+e),void p.emitPreviewError({type:t,desc:"open camera error",error:e})}}else u&&(u.stream&&(u.stream[c(1691)]()[c(1505)]((e=>{e[c(604)]=null,p.stopMediaTrack(e)})),u[c(854)]&&(p[c(1339)](u),p[c(1479)](p[c(1155)][c(551)],u.id,t))),u[c(1148)]&&p[c(264)](u.audioTrack),u[c(514)]&&p[c(264)](u.videoTrack),u[c(731)]=!1),p[c(622)](p[c(1155)][c(551)]+"-"+t),a[c(1167)](a[c(629)][c(752)],!1,t)},p.screenPreview=async function(e=null,t){const r=n;if(t){e instanceof HTMLElement&&e!==p[r(1266)].screen[r(465)]&&(p[r(658)](e),p[r(1266)][r(575)][r(465)]=e);let t={audio:p[r(1199)][r(1267)],video:p[r(1199)][r(786)]};t.video&&(t.video={frameRate:{ideal:p.options[r(194)][0][r(1365)]}});try{p[r(1266)][r(575)][r(839)]=await navigator.mediaDevices[r(396)](t)}catch(e){return s.logError(r(1012)+e),e[r(339)]().indexOf("NotAllowedError")>=0?a[r(1167)](a[r(629)][r(575)],!1):p[r(1513)]({type:p[r(1155)][r(1663)],desc:r(1254),error:e})}const o=p[r(1266)][r(575)][r(839)][r(1008)]()[0],n=p.core[r(575)].stream[r(503)]()[0];n[r(604)]=function(){const e=r;p[e(1479)](p[e(1155)][e(1663)],p.core[e(575)].id),p[e(1266)][e(575)][e(731)]=!1,a[e(1167)](a[e(629)][e(575)],!1,p[e(1266)][e(575)][e(631)]||"share")},p[r(1266)].screen.label=n.getSettings().displaySurface||r(1507),p[r(1266)][r(575)].audioTrack=o,p[r(1266)][r(575)][r(514)]=n,p[r(623)](p[r(1266)][r(575)].videoElem,p[r(1266)][r(575)][r(839)]),p[r(1266)][r(575)][r(731)]=!0,a[r(1167)](a.Event[r(575)],!0,p[r(1266)][r(575)][r(631)]||r(1016))}else p.core[r(575)].stream&&(p.stopMediaStream(p[r(1266)][r(575)][r(839)]),p[r(1479)](p[r(1155)][r(1663)],p[r(1266)].screen.id)),p[r(1266)][r(575)].preview=!1,a[r(1167)](a[r(629)][r(575)],!1,p.core[r(575)][r(631)]||r(1016))},p[n(516)]=async function(e=null,t,r){const o=n;if(r){if(p[o(1266)].cameraEx[t]&&p[o(1266)].cameraEx[t][o(731)]&&p.core[o(752)][t][o(839)])return a[o(1167)](a.Event.screenEx,r,t);!p.core[o(752)][t]&&(p[o(1266)][o(752)][t]={local:!0,audio:p[o(1199)][o(1267)],video:p[o(1199)][o(786)],muteVideo:!1,muteAudio:!1,tag:t,type:p[o(1155)][o(1663)],candidate:[],layerIndex:-1,info:{app:"",rtc:"",act:0}});const n=p[o(1266)][o(752)][t];e instanceof HTMLElement&&e!==n[o(465)]&&(p.enableDomAutoPlay(e),n[o(465)]=e);let i={audio:p[o(1199)][o(1267)],video:p.options.screenEnableVideo};i.video&&(i[o(1363)]={frameRate:{ideal:p[o(1199)][o(194)][0][o(1365)]}});try{n[o(839)]=await navigator[o(796)].getDisplayMedia(i)}catch(e){if(s[o(485)](o(309)+e),e.toString()[o(199)](o(1525))>=0)return a[o(1167)](a.Event.screenEx,!1,t);p[o(1513)]({type:t,desc:"open screen error",error:e})}n[o(839)][o(503)]()[0][o(604)]=function(){const e=o;p.wsUnPublish(p.StreamType[e(1663)],n.id,n[e(1838)]),n[e(731)]=!1,a.emit(a.Event[e(1310)],!1,t,n[e(631)]||"share")},n[o(631)]=n.stream[o(503)]()[0].getSettings()[o(1347)]||o(1507),p[o(623)](n[o(465)],n.stream),n.preview=!0,a[o(1167)](a[o(629)][o(1310)],!0,t,n[o(631)]||o(1016))}else{const e=p[o(1266)].cameraEx[t];e&&(e[o(839)]&&(p.stopMediaStream(e[o(839)]),p.wsUnPublish(p[o(1155)].Screen,e.id,e[o(1838)])),e[o(731)]=!1),p.releaseAudioProcessor(p[o(1155)][o(1663)]+"-"+t),a[o(1167)](a[o(629)][o(1310)],!1,t)}},p[n(291)]=function(e,t,r,o,i){const c=n;let u=p[c(1266)][c(1580)];if(r){if(u[c(731)])return a.emit(a[c(629)][c(1363)],r,u.stream);e[c(1379)](c(209))!=c(1658)&&e[c(1837)](c(209),"anonymous"),e[c(1569)]=t,u[c(1485)]=e,u[c(873)]=o,u.tempMuteAudio=i,p.addVideoEvent(e),p[c(658)](e),e[c(1724)]=i,s[c(1055)]("begin waitStreamTimer"),clearInterval(u.waitStreamTimer),e[c(247)](c(1602),p.customCanPlay),e[c(805)](),u[c(1561)]=setTimeout((()=>{const t=c;u[t(465)][t(464)](t(1602),p[t(530)]),p.cleanVideoEvent(e),p[t(1513)]({type:p.StreamType.Screen,subType:p[t(831)][t(550)],desc:"capture media stream error, timeout",error:{name:t(1747)}})}),5e3)}else{if(!u)return;u[c(465)]&&(u[c(465)][c(200)](),p[c(311)](u[c(465)])),clearInterval(u[c(1600)]),clearInterval(u[c(1561)]),u[c(839)]&&(p[c(256)](u[c(839)]),p[c(1479)](p.StreamType.Screen,u.id,"",p[c(831)][c(550)])),p[c(264)](u[c(1148)]),p[c(264)](u[c(514)]),u[c(1148)]=null,u[c(514)]=null,u[c(731)]=!1,a[c(1167)](a[c(629)][c(1580)],!1,u.label)}},p[n(530)]=function(){const e=n;let t=p[e(1266)][e(1580)];t[e(1485)]!==t[e(465)]&&(p[e(311)](t[e(465)]),t.videoElem=t[e(1485)]),t[e(465)][e(464)](e(1602),p[e(530)]),clearInterval(t.waitStreamTimer),s[e(1055)](e(1019));let r=t[e(1288)]?t[e(1288)]:document.createElement(e(1288)),o=p[e(1199)].customLayers[0];t[e(1288)]=r,r.setAttribute(e(723),o[e(723)]),r[e(1837)](e(1669),o[e(1669)]);let i=r[e(743)]("2d");clearInterval(t[e(1600)]),t[e(1600)]=setInterval((function(){const o=e;i[o(431)](t[o(465)],0,0,r[o(723)],r[o(1669)])}),40);try{p[e(264)](t.audioTrack),p[e(264)](t.videoTrack),t[e(1148)]=null,t[e(514)]=null;let o=null;if(t[e(839)]=new MediaStream,o=typeof t.videoElem[e(1408)]===e(297)?t[e(465)].captureStream():t.videoElem.mozCaptureStream(),!t[e(1611)]&&(t[e(1148)]=o[e(1008)]()[0]),!t[e(873)]){let o=r[e(233)](30);t.videoTrack=o[e(503)]()[0]}}catch(t){return s[e(485)]("open video preview error, "+t),p[e(1513)]({type:p[e(1155)].Screen,subType:p[e(831)][e(550)],desc:e(414),error:{name:e(1747)}})}t.videoTrack?t[e(839)][e(590)](t.videoTrack):s[e(1023)](e(640)),t[e(1148)]?t.stream[e(590)](t[e(1148)]):s[e(1023)]("media preview audioTrack is not available"),t[e(389)]=t.tempMuteVideo,t[e(1822)]=t[e(1611)],t[e(731)]=!0,a[e(1167)](a.Event.custom,!0,t[e(631)],t[e(839)])},p[n(956)]=function(t,r){return new Promise((o=>{const n=e,i=t[n(465)],a=document[n(214)](n(1288));let c=null;if(!a.captureStream)return s.logWarn(n(203)),o();if(p[n(1199)][n(1267)])return o();if(!p.core[n(1054)].audioTrack)return s[n(1023)](n(1278)),o();c=p[n(1266)][n(1054)][n(1148)][n(1532)](),i[n(247)]("loadedmetadata",(function e(s){const u=n;i[u(464)](u(1583),e);const d=document[u(214)](u(1363)),l=a.getContext("2d"),p=s[u(242)]||s[u(999)],f=p[u(1177)],m=p[u(180)],b=new MediaStream;a[u(1837)](u(723),f),a.setAttribute(u(1669),m),t[u(1443)]=setInterval((function(){const e=u;l[e(1293)](0,0,a[e(723)],a.height),l[e(431)](i,0,0,a[e(723)],a[e(1669)])}),40),b[u(590)](c),b[u(590)](a[u(233)](r)[u(503)]()[0]),d[u(1724)]=!0,d[u(1250)]=b,d[u(805)](),t[u(839)]=b,t.offSceenVideo=d,o()}))}))},p[n(667)]=function(e,t,r){const o=n;if(!e[o(839)])return;e[o(839)][o(1691)]()[o(1505)]((e=>{e[o(1687)]===t&&(e.enabled=!r)}))},p[n(1426)]=function(e="",t={},r=!1,o=""){const i=n;let a=null,c="",u={};return t.hasOwnProperty(i(1822))&&(u[i(1822)]=!!t.muteAudio),t[i(1651)](i(389))&&(u[i(389)]=!!t.muteVideo),a=o?o===p[i(831)][i(550)]?p[i(1266)][i(1580)]:p[i(1266)][i(752)][o]:p[i(1266)][e],a?a.preview?a[i(558)]==p.StreamType[i(1663)]?p[i(928)](a,u,r):p[i(753)](a,u,r):(c="mute local before preview",s[i(1023)](c),Promise[i(212)](p[i(1225)](a,{desc:c}))):(c=i(1195),s[i(1023)](c),Promise[i(212)](p[i(1225)](null,{desc:c})))},p[n(1225)]=function(e,t={}){const r=n;return e?{type:e[r(558)],tag:e.tag,subType:e[r(826)],muteAudio:e[r(1822)],muteVideo:e[r(389)],...t}:{...t}},p[n(753)]=async function(e,t,r){const o=n;if(e.isMuting)return Promise.reject(p[o(1225)](e,{desc:o(481)}));let i=r,a=!1,c=p[o(760)];try{if(e[o(1040)]=!0,t[o(1651)]("muteAudio"))if(r)e[o(1822)]=t[o(1822)],!e.muteAudio&&(a=!0);else if(t[o(1822)]!==e[o(1822)]){if(t[o(1822)])!e[o(1838)]&&c&&c[o(195)]===o(960)?p[o(264)](e[o(1421)]):p[o(264)](e.audioTrack);else{const t=e[o(1527)]||p[o(1266)].devices[o(467)],r=p[o(1378)](t);let n=await navigator.mediaDevices.getUserMedia(r),i=n[o(1008)]()[0];if(!e.tag&&c&&"started"===c[o(195)]){p.stopMediaTrack(e[o(1421)]),e[o(1421)]=i,i=(await p.denoiser[o(1824)](n))[o(1008)]()[0]}e.audioTrack=i,p[o(1338)](p.StreamTrack[o(418)],e),e.pc&&await p[o(213)](p[o(499)][o(418)],e)}e[o(1822)]=t[o(1822)],i=!0}if(t[o(1651)]("muteVideo"))if(r)e[o(389)]=t[o(389)],!e[o(389)]&&(a=!0);else if(t[o(389)]!==e.muteVideo){if(t[o(389)])p[o(264)](e[o(514)]);else{const t=e[o(1447)]||p[o(1266)][o(1533)][o(673)],r=p[o(523)](t,e.tag),n=await navigator[o(796)][o(835)](r);e[o(514)]=n[o(503)]()[0],p[o(1338)](p[o(499)].Video,e),e.pc&&await p[o(213)](p.StreamTrack[o(565)],e)}e.muteVideo=t[o(389)],i=!0}return i&&e.pc&&p[o(250)](e.id,e[o(389)],e[o(1822)]),a&&p[o(1284)](e),e[o(1040)]=!1,{type:e[o(558)],tag:e.tag,muteAudio:e[o(1822)],muteVideo:e[o(389)]}}catch(t){return e[o(1040)]=!1,s.logWarn(o(1162),t),Promise[o(212)]({type:e[o(558)],tag:e[o(1838)],muteAudio:e[o(1822)],muteVideo:e.muteVideo,desc:t[o(1645)]})}},p.muteLocalStreamScreen=function(t,r,o){let n=o,i=!1;return new Promise((s=>{const a=e;r[a(1651)](a(1822))&&(r[a(1822)]!==t.muteAudio||o)&&(n=!0,t[a(1822)]=r[a(1822)],p[a(667)](t,p[a(499)][a(418)],r.muteAudio),!o&&!r[a(1822)]&&(i=!0),p[a(1433)](p[a(1537)].UserAction,{action:p[a(661)][a(1109)],mediaType:p[a(541)].Audio,streamInfo:t})),r.hasOwnProperty(a(389))&&(r[a(389)]!==t.muteVideo||o)&&(n=!0,t[a(389)]=r[a(389)],p[a(667)](t,p.StreamTrack.Video,r[a(389)]),!o&&!r.muteVideo&&(i=!0),t.muteVideo&&(t.systemMuteVideo=!1),p.triggerLogUpload(p[a(1537)][a(661)],{action:p.UserAction.toggleMute,mediaType:t.type===p[a(1155)][a(551)]?p[a(541)][a(565)]:p.MediaType[a(1663)],streamInfo:t})),n&&t[a(854)]&&p.wsUpdate(t.id,t[a(389)],t[a(1822)]),i&&p[a(1284)](t),s({type:t[a(558)],tag:t[a(1838)],subType:t[a(826)],muteAudio:t[a(1822)],muteVideo:t.muteVideo})}))},p[n(1808)]=function(e,t={}){const r=n;let o=p[r(1452)](e);if(o){let e=!1;t[r(1651)](r(1822))&&t[r(1822)]!==o[r(181)]&&(e=!0,o[r(181)]=t.muteAudio,p[r(667)](o,p[r(499)][r(418)],t[r(1822)]),p[r(1433)](p[r(1537)][r(661)],{action:p.UserAction.toggleMute,mediaType:p[r(541)][r(418)],streamInfo:o})),t.hasOwnProperty(r(389))&&t[r(389)]!==o[r(201)]&&(e=!0,o[r(201)]=t.muteVideo,p[r(667)](o,p.StreamTrack.Video,t[r(389)]),p[r(1433)](p.LogType[r(661)],{action:p[r(661)][r(1109)],mediaType:o[r(558)]===p.StreamType.Camera?p.MediaType[r(565)]:p[r(541)][r(1663)],streamInfo:o})),e&&o[r(854)]&&p.wsUpdate(o.id,o.localMuteVideo,o[r(181)])}},p[n(1638)]=function(t,r,o=!1){const i=n,c=()=>{const r=e;return p.ws[r(1168)]===WebSocket[r(215)]&&t[r(1521)]&&p.core[r(1528)]};if(typeof t[i(890)]===i(297)&&(t[i(890)]=0),!c())return t[i(890)]=0,void s[i(1055)](i(1634));if(!p.options.subscribeAutoRecover||t[i(890)]>2||o){const e={...t};return t[i(890)]=0,t.id&&p[i(1639)](t.id),void p[i(749)](p[i(1215)].SubscribeError,{publishID:e[i(705)],subscribeID:e.id,desc:r})}let u=1e3*t[i(890)];t[i(884)]=setTimeout((()=>{const e=i;if(c()){const r=t.id;s[e(1055)](e(491)+t[e(890)]),p[e(1639)](t.id),p[e(929)](p[e(1266)][e(1668)],t[e(705)]),a.emit(a[e(629)][e(1638)],{publishID:t.publishID,subscribeID:r,desc:e(615)})}}),u),t[i(890)]++},p[n(1768)]=function(e,t){const r=n,o=p[r(1266)].users[e];o&&Object[r(1772)](o,t)},p.wsPrepare=function(e="",t=!1){const r=n;let o,i;try{let t=JSON[r(1506)](Base64[r(684)](e)),n=t[r(953)][r(1540)](":"),s=n[0],a=n[1],c=t.domain;o=t.path,a&&"80"!==a&&a!==r(1112)&&(o=":"+a+o),o=p[r(452)](r(1043)+(c||s)+o),i={name:r(656),type:"request",stamp:Date[r(931)](),requestID:h(),content:{id:t.tokenId,host:t[r(953)],secure:t[r(621)],signature:t[r(1562)],privateID:p[r(1266)][r(1201)],dType:p[r(1266)].dType,quality:p[r(1199)][r(882)]?1:2,role:p[r(1266)][r(507)],name:p.core[r(1013)]}}}catch(e){if(s[r(485)](r(1291),e.toString(),t),t)return p[r(1568)]();a[r(1167)](a[r(629)][r(605)],p.ErrorCode[r(299)],r(1032)),p[r(1433)](p[r(1537)][r(811)],{errorType:p[r(218)][r(663)],errorCode:p[r(346)][r(663)][r(970)],errorDesc:"token info error: "+e[r(339)]()})}p[r(399)](o,i,t)},p[n(399)]=function(e="",t={},r=!1){const o=n;p.ws&&(r&&p.ws[o(464)](o(1070),p[o(1266)][o(1670)][o(388)]),p.ws.close()),0===p[o(1266)][o(313)]&&(p.core.retry=0,p.core[o(313)]=2);const i=p[o(1266)][o(1670)];p.ws=new WebSocket(e),p.ws[o(247)]("open",i[o(746)]=function(){const r=o;s[r(1055)](r(370),e),p.core[r(890)]=0,p.wsJoin(t)}),p.ws.addEventListener("message",i.onMessage=function(e){const t=o;p[t(846)](e[t(1773)])}),p.ws[o(247)]("close",i.onClose=function(n){const i=o;s.logWarn(i(1101)+(n?n[i(634)]:""));const a=p[i(1266)][i(1670)];if(p.ws[i(464)]("open",a.onOpen),p.ws[i(464)]("message",a[i(539)]),p.ws.removeEventListener(i(1070),a.onClose),p.ws[i(464)]("error",a[i(1748)]),0!==p.core[i(313)])return 2===p[i(1266)][i(313)]?(p[i(1266)][i(890)]++,void(p[i(1266)][i(890)]<=3?(s[i(1055)](i(1097)+p.core[i(890)]),setTimeout((()=>{p.wsInitialize(e,t,r)}),1e3)):(p[i(1266)][i(313)]=0,p[i(1266)][i(890)]=0,p[i(749)](p[i(1215)][i(299)],i(1657))))):void(p[i(1199)][i(542)]&&p.ws?p[i(1568)]():(!p.options[i(542)]&&(s[i(485)](i(1128)),p[i(749)](p[i(1215)][i(1470)])),p[i(185)]()))}),p.ws[o(247)]("error",i[o(1748)]=function(e){const t=o;s[t(485)](t(1269),e),p.ws[t(1070)]()})},p[n(1503)]=function(){const e=n;return p.ws&&p.ws.readyState===WebSocket[e(215)]},p[n(344)]=function(e={},r=null){const o=n;if(p.ws&&p.ws[o(1168)]===WebSocket.OPEN){let r=e;e instanceof Object&&(r=JSON[o(1014)](e),p[o(1199)].debug&&e[o(1645)]!==o(1682)&&s.logInfo(o(946),r),r=function(e){const r=t;if(!e)return;let o=Base64[r(337)](e),n=o[r(199)]("=")<0?0:o[r(1524)]-o[r(199)]("=");o=o[r(1260)](/=/g,"");let i=y(1,25),s="";for(let e=0,t=o[r(1524)];e<t;e++){let t=o[r(1496)](e);s+=43===t||t>=47&&t<=57?String[r(1106)](t):t>=65&&t<=90?String[r(1106)](t+i>90?t+i-26:t+i):String.fromCharCode(t+i>122?t+i-26:t+i)}let a=Math[r(1221)](Date[r(931)]()/1e3);return a=1e3*a+100*n+i,JSON.stringify({name:r(579),type:r(522),stamp:a,content:s})}(r)),p.ws[o(416)](r)}if(r)return r()},p.wsHandler=function(e=""){const r=n,o={join:p[r(1386)],leave:p[r(681)],publish:p.wsHandlePublish,unpublish:p.wsHandleUnPublish,subscribe:p[r(1566)],unsubscribe:p[r(1805)],negotiate:p.wsHandleNegotiate,update:p[r(544)],updateSubLayer:p[r(964)],message:p[r(1017)],ping:p[r(236)],startLiveBroadcast:p[r(1726)],stopLiveBroadcast:p[r(860)],updateInfo:p[r(971)],updateRoom:p.wsHandleUpdateRoom,updateName:p.wsHandleUpdateName,userJoined:p.wsHandleUserJoined,userLeft:p[r(1015)],streamAdded:p[r(1207)],streamRemoved:p[r(728)],streamUpdated:p[r(1833)],layerReqChanged:p.wsHandleLayerReqChanged,nameUpdated:p[r(643)],mixer:p.wsHandleMixer,webpage:p[r(436)],infoUpdated:p[r(957)],roomUpdated:p[r(505)],netStatChanged:p[r(624)],updateNetStat:p[r(1249)],kick:p.wsHandleKick,role:p[r(451)]};let i;try{i=JSON[r(1506)](e)}catch(t){return s.logError("can not parse data, "+e+", "+t)}return i&&i.hasOwnProperty(r(1645))&&i[r(545)]?"guardian"===i[r(1645)]?p[r(846)](function(e=0,r="",o){const n=t;if(!e||!r)return;let i,s=Math.floor(e%1e3),a=Math[n(1221)](s/100),c=Math[n(1221)](s%100),u="";for(let e=0,t=r[n(1524)];e<t;e++){let t=r[n(1496)](e);u+=43===t||t>=47&&t<=57?String[n(1106)](t):t>=65&&t<=90?String[n(1106)](t-c<65?t-c+26:t-c):String[n(1106)](t-c<97?t-c+26:t-c)}for(let e=0;e<a;e++)u+="=";try{i=Base64[n(684)](u)}catch(e){return o[n(485)](n(708))}return i}(i[r(211)],i[r(545)],p.localLog)):o[r(1651)](i[r(1645)])?(p[r(1199)][r(1776)]&&"ping"!==i.name&&s.logInfo(r(1181),e),o[i[r(1645)]](i)):s[r(485)]("no handler for "+i[r(1645)]):s[r(485)]("can not handle data, "+e)},p[n(669)]=function(e){p[n(344)](e)},p[n(1386)]=function(e={}){const t=n;if(!e[t(545)][t(377)])return p[t(1266)].status=0,p.ws[t(1070)](),p.emitError(p[t(1215)].JoinError),void p[t(1433)](p[t(1537)][t(811)],{errorType:p[t(218)][t(663)],errorCode:p.LogErrorCode.Rtc[t(238)],errorDesc:"join response error, requestID: "+e[t(1020)]});if(0!==e[t(545)][t(377)][t(634)])return s.logError(t(1203),e[t(545)].result[t(634)],e.content[t(377)][t(1812)]),p.core.status=0,p.ws.close(),p[t(749)](p[t(1215)][t(299)]),void p[t(1433)](p[t(1537)][t(811)],{errorType:p.LogErrorType[t(663)],errorCode:p[t(346)].Rtc.Join,errorDesc:"join response error, requestID: "+e[t(1020)]+", code: "+e[t(545)][t(377)][t(634)]});let r=1===p.core[t(313)];p[t(1266)][t(313)]=1,p[t(1100)]({session:e.session,stunURL:e[t(545)][t(1763)],turnURL:e[t(545)][t(566)],turnUser:e[t(545)][t(1771)],turnPwd:e[t(545)][t(1075)],userToken:e.content.privateID,curVideoQuality:e[t(545)][t(741)]}),p[t(1859)](e[t(545)][t(1721)]||[],e.content[t(1707)]),p[t(1090)]();let o=JSON[t(1506)](JSON.stringify(e[t(545)].users||[]));r&&(o=o.filter((e=>e[t(1668)]!==p[t(1266)][t(1668)]))),a[t(1167)](r?a[t(629)][t(782)]:a.Event[t(245)],o,{mixer:e.content[t(186)]||[],webpage:e[t(545)][t(543)]||[]}),p[t(1266)][t(1823)].join[t(1574)]=Date[t(931)](),p.triggerLogUpload(p[t(1537)][t(661)],{action:p.UserAction[t(1414)],reconnected:r}),p[t(1199)].enableLogUpload&&(p[t(546)](),p[t(1576)]()),p.streamNetworkReport(!0,p[t(1199)].networkReportInterval)},p[n(1090)]=function(){const e=n;if(p[e(1682)])try{clearInterval(p.ping),delete p[e(1682)]}catch(e){s.logWarn(e)}p[e(1682)]=setInterval((()=>{const t=e;p.ws&&p.ws[t(1168)]===WebSocket[t(215)]&&p[t(344)]({name:t(1682),type:"request",requestID:h(),stamp:Date[t(931)]()})}),p[e(1199)][e(1196)])},p.wsHandlePing=function(e={}){const t=n;let r=e.content[t(1500)];p[t(1682)]&&r!==p.options[t(1196)]&&(p[t(1199)][t(1196)]=r,p[t(1090)]()),p[t(344)]({name:t(1682),type:t(1057),requestID:e[t(1020)],stamp:Date.now()})},p[n(1607)]=function(){const e=n;p[e(344)]({name:"leave",type:"request",stamp:Date.now(),session:p[e(1266)][e(1528)],requestID:h(),content:{userID:p[e(1266)][e(1668)],meetingID:p[e(1266)][e(1272)]}},(()=>{const t=e;p.ws[t(1070)]()}))},p[n(681)]=function(){},p[n(340)]=function(e={}){const t=n;if(!e.content)return;let r=e[t(545)][t(1668)],o=e[t(545)][t(711)];r!==p[t(1266)][t(1668)]&&(p[t(1266)].users[r]={uid:r,dType:o,streams:[]},a[t(1167)](a[t(629)][t(1547)],e[t(545)].userID))},p[n(1015)]=function(e={}){const t=n;if(!e[t(545)])return;let r=e[t(545)].userID;r!==p[t(1266)][t(1668)]&&(p[t(1266)][t(1721)][r]&&(p[t(1266)][t(1721)][r][t(524)].forEach((e=>{const r=t;p.core[r(1031)][e]&&(p[r(1266)][r(1031)][e].id&&p[r(1266)][r(1031)][e][r(854)]?p.resetStreamData(p[r(1266)][r(1031)][e],!0):delete p[r(1266)][r(1031)][e])})),delete p.core.users[r]),a[t(1167)](a[t(629)][t(532)],e.content[t(1668)]))},p[n(1395)]=function(e="",t="",r="",o=""){const i=n;let s=null;s=t?p.core.cameraEx[t]:o===p[i(831)].Custom?p.core.custom:p[i(1266)][e],""!==r&&(s[i(1755)].act=1|s.info[i(1655)],s[i(1755)].app=r||"");let a=0,c=p[i(1679)](s);c[i(1505)]((e=>a+=e[i(716)]||0)),s[i(813)]=s[i(558)]===p[i(1155)].Screen?0:-1;const u=h();if(p.core[i(1823)][i(1143)+u]={publishBegin:Date[i(931)]()},t){if(!s)return;s.lastRequestID=u;let r={userID:p.core[i(1668)],minVideoBw:0,maxVideoBw:a,label:s.stream.id,type:e,tag:t||"",video:s[i(1363)],audio:s[i(341)],muteVideo:!!s[i(389)],muteAudio:!!s[i(1822)],layers:c};s[i(1755)][i(1655)]>0&&(r[i(1755)]=s[i(1755)][i(509)]),p[i(344)]({name:i(767),type:i(522),stamp:Date[i(931)](),session:p[i(1266)][i(1528)],requestID:s[i(1521)],content:r}),s[i(1755)].act=0}else{s.lastRequestID=u;let t={userID:p[i(1266)].userID,minVideoBw:0,maxVideoBw:a,label:s.stream.id,type:e,video:!!s.videoTrack,audio:!!s[i(1148)],muteVideo:s[i(389)],muteAudio:s[i(1822)],layers:c};p[i(1266)][e][i(1755)][i(1655)]>0&&(t[i(1755)]=s[i(1755)][i(509)]),p[i(344)]({name:"publish",type:i(522),stamp:Date.now(),session:p[i(1266)].session,requestID:s[i(1521)],content:t}),s[i(1755)][i(1655)]=0}s[i(558)]===p[i(1155)][i(1663)]&&p[i(1425)](s)},p[n(1491)]=function(e={}){const t=n;if(!e.content[t(377)]||!e[t(1020)])return s[t(485)](t(450)),void p.triggerPublishLogUpload(null,{errorType:p[t(218)][t(663)],errorCode:p.LogErrorCode[t(663)][t(1073)],errorDesc:t(1846)+e[t(1020)]});let r=p.getStreamInfoByRequestID(e.requestID,p[t(1550)][t(1229)]);if(!r)return s[t(1023)](t(1832)+e.seq),void p[t(1659)](null,{errorType:p[t(218)].Rtc,errorCode:p[t(346)][t(663)][t(1073)],errorDesc:t(349)+e[t(1020)]+", no localStream data"});let o=r[t(558)],i=r.subType,a=r[t(1838)];if(s[t(1055)](t(1453)+JSON[t(1014)](e)+")"),0!==e.content.result[t(634)])return s[t(1055)](t(1842)+e[t(545)][t(377)][t(634)]+", tag:"+a),s[t(1055)](t(383)+(e[t(545)][t(377)].code,e[t(545)][t(377)].detail)),s[t(1023)]("publish error,",e[t(545)][t(377)][t(634)],e[t(545)][t(377)][t(1812)],t(885)+e.requestID),p.emitError(p[t(1215)][t(1099)],{type:o,subType:i,tag:a,desc:t(1858)}),void p.triggerPublishLogUpload(r,{streamInfo:r,errorType:p.LogErrorType[t(663)],errorCode:p[t(346)][t(663)][t(1073)],errorDesc:"publish error, requestID: "+e[t(1020)]+t(1140)});r.id&&p.clearnStreamNetData(r),r.id=e[t(545)][t(705)];let c=p[t(1679)](r);clearInterval(r[t(246)]),p[t(589)](p[t(1550)][t(1229)],r,c)[t(515)]((e=>{p[t(1191)](r.id,"offer",e,0)}))},p[n(1479)]=function(e="",t="",r="",o=""){const i=n;t&&(!p.core[i(1823)][i(455)+t]&&(p[i(1266)][i(1823)]["unpublish-"+t]={}),p[i(1266)][i(1823)]["unpublish-"+t][i(1697)]=Date.now());let s=()=>{const n=i;let s=null;r?(s=p[n(1266)][n(752)][r],p[n(1266)][n(752)][r]&&p[n(1266)][n(752)][r].id&&p.core[n(752)][r].id===t&&(p[n(1266)][n(1823)]["unpublish-"+t][n(417)]={...p[n(1266)].cameraEx[r]},p[n(1410)](p[n(1266)][n(752)][r]))):o===p[n(831)][n(550)]?(s=p[n(1266)].custom,p.core[n(1580)].id&&p[n(1266)].custom.id===t&&(p.core.userActionData[n(455)+t][n(417)]={...p[n(1266)][n(1580)]},p[n(1410)](p[n(1266)][n(1580)]))):(s=p[n(1266)][e],p[n(1266)][e].id&&p.core[e].id===t&&(p[n(1266)][n(1823)]["unpublish-"+t][n(417)]={...p[n(1266)][e]},p[n(1410)](p.core[e]))),s[n(558)]===p[n(1155)][n(1663)]&&p[n(1468)](s)};t||r?p[i(344)]({name:"unpublish",type:i(522),stamp:Date[i(931)](),session:p[i(1266)].session,requestID:h(),content:{userID:p[i(1266)].userID,publishID:t||(o===p.SubStreamType[i(550)]?p.core.custom.id:p[i(1266)][e].id)}},s):s()},p[n(176)]=function(e){const t=n;if(!e[t(545)][t(377)]||!e[t(1020)])return s[t(485)](t(1246));p[t(1266)].userActionData[t(455)+e[t(545)][t(705)]][t(1585)]=Date[t(931)](),p[t(1266)][t(1823)]["unpublish-"+e.content[t(705)]][t(417)]&&p[t(1433)](p[t(1537)][t(661)],{action:p[t(661)].Unpublished,streamInfo:p.core[t(1823)][t(455)+e[t(545)].publishID][t(417)]})},p[n(929)]=function(e,t){const r=n;p[r(1266)][r(1031)][t].layerIndex<0&&(p[r(1266)][r(1031)][t].layerIndex=0),!p.core[r(1823)][r(1567)+t]&&(p[r(1266)][r(1823)]["subscribe-"+t]={}),p[r(1266)].userActionData["subscribe-"+t].subscribeBegin=Date[r(931)](),p[r(1266)].publishers[t].lastRequestID=h();let o=p[r(1266)][r(1031)][t][r(1056)][r(1515)](-1)[0][r(716)]||3e6,i=!1,s=!1,a=0;try{i=p.core[r(1031)][t][r(201)],s=p[r(1266)].publishers[t].localMuteAudio,a=p[r(1266)][r(1031)][t][r(813)]}catch(e){}let c={name:r(328),type:r(522),stamp:Date[r(931)](),session:p.core[r(1528)],requestID:p[r(1266)][r(1031)][t][r(1521)],content:{userID:p[r(1266)].userID,publishID:t,maxVideoBw:o,video:p.core[r(1031)][t].video,audio:p.core.publishers[t][r(341)],muteVideo:i,muteAudio:s,layerIndex:a}};p[r(344)](c)},p[n(1566)]=function(e){const t=n;if(!e[t(545)][t(377)]||!e[t(1020)])return s[t(485)]("subscribe error, bad response"),void p[t(895)](null,{errorType:p[t(218)].Rtc,errorCode:p[t(346)][t(663)][t(1329)],errorDesc:t(985)+JSON[t(1014)](e)});let r=p[t(900)](e[t(1020)]);if(!r)return s[t(1023)]("subscriber error, cannot handle seq id "+e.requestID),void p[t(895)](null,{errorType:p[t(218)][t(663)],errorCode:p.LogErrorCode[t(663)][t(1329)],errorDesc:t(871)+JSON[t(1014)](e)});if(0!==e[t(545)][t(377)].code)return s[t(1023)](t(563),e[t(545)][t(377)].code,e[t(545)][t(377)][t(1812)],t(885)+e.requestID),p.subscribeRecover(r,"response code not zero"),void p[t(895)](r,{streamInfo:r,errorType:p.LogErrorType.Rtc,errorCode:p[t(346)][t(663)][t(1329)],errorDesc:t(1406)+JSON[t(1014)](e)});let o=e.content[t(705)],i=e.content[t(944)];p[t(1266)].publishers[o].id=i,p.createRtcPeerConn(p[t(1550)][t(1323)],p[t(1266)].publishers[o])[t(515)]((e=>{const r=t;e&&p[r(1191)](i,r(768),e)}))},p[n(1639)]=function(e="",t=null){const r=n,o=p[r(1656)](e),i=p[r(1266)].publishers[o];i&&(p[r(1266)][r(1823)]["unsubscribe-"+e]={unsubscribeBegin:Date[r(931)](),streamInfo:{...i}}),p.wsSender({name:r(521),type:r(522),stamp:Date[r(931)](),session:p[r(1266)][r(1528)],requestID:h(),content:{userID:p[r(1266)][r(1668)],subscribeID:e}},(()=>{i&&i.id===e&&p.resetStreamData(i),t instanceof Function&&t()}))},p[n(1805)]=function(e){const t=n;if(!e[t(545)].result||!e[t(1020)])return s.logError(t(1690));p.core[t(1823)][t(289)+e[t(545)][t(944)]]&&(p[t(1266)][t(1823)][t(289)+e.content.subscribeID][t(914)]=Date[t(931)](),p[t(1433)](p.LogType[t(661)],{action:p[t(661)][t(227)],streamInfo:p[t(1266)][t(1823)][t(289)+e[t(545)].subscribeID][t(417)]}))},p.wsNegotiate=function(e,t,r,o=3e6,i=null){const s=n;if(!r)return;let a={name:s(1137),type:"request",stamp:Date[s(931)](),session:p[s(1266)][s(1528)],requestID:h(),content:Object.assign({userID:p.core[s(1668)],streamID:e,type:t,sdp:r,maxVideoBw:o},i)};"renego"===t&&(p[s(1266)].reconnectingStreams[a[s(1020)]]=e),p.wsSender(a)},p[n(1176)]=function(e={}){const t=n;s.logInfo(t(908)+e[t(558)]+t(1372)+JSON[t(1014)](e));let r=e[t(558)];if([p[t(918)][t(1790)],p.MsgType[t(1563)]].indexOf(r)<0)return s[t(485)](t(1069)),void p[t(1433)](p.LogType[t(811)],{errorType:p[t(218)][t(663)],errorCode:p.LogErrorCode[t(663)][t(1329)],errorDesc:t(1084)+JSON[t(1014)](e)});let o=e.content[t(807)],i=e[t(1020)];if(!o)return o=p[t(1266)].reconnectingStreams[i],o?p.reconnectStream(o):(s[t(1023)](t(1688)),void p[t(1433)](p[t(1537)][t(811)],{errorType:p.LogErrorType[t(663)],errorCode:p.LogErrorCode[t(663)][t(1329)],errorDesc:t(1394)+JSON[t(1014)](e)}));i&&delete p[t(1266)][t(740)][i];let c=p[t(1452)](o);if(!c)return p[t(1433)](p[t(1537)][t(811)],{errorType:p[t(218)][t(663)],errorCode:p[t(346)][t(663)][t(1329)],errorDesc:t(1316)+JSON[t(1014)](e)}),s[t(1023)](t(1376)+o);if(r===p[t(918)][t(1563)]){if(s[t(1055)](t(901)+JSON.stringify(e)),"ready"===e[t(545)][t(558)]){let e=!!c.ready;if(c[t(854)]=!0,e)s.logInfo(o,"ice connection had been recovered");else if(c[t(1227)])c.tag?c[t(558)]===p.StreamType[t(551)]?a[t(1167)](a.Event[t(1529)],o,c[t(1838)]):a[t(1167)](a.Event[t(1836)],o,c.tag):c[t(826)]===p[t(831)].Custom?a[t(1167)](a[t(629)][t(1672)],o,c[t(558)],c[t(631)]):a[t(1167)](a[t(629)][t(320)],o,c[t(558)],c[t(631)]),p[t(1426)](c[t(1838)]||c[t(558)],{muteAudio:c.muteAudio,muteVideo:c[t(389)]},!0,c[t(826)]),p[t(1266)][t(1560)]&&(c[t(1749)]=c[t(1822)],c.tag?p[t(1426)](c[t(1838)],{muteAudio:!0}):p.muteLocalStream(c.type,{muteAudio:!0},!1,c.subType)),p[t(1266)][t(1823)][t(1143)+c[t(1521)]]&&(p[t(1266)][t(1823)][t(1143)+c.id]={publishBegin:p[t(1266)].userActionData["publish-"+c[t(1521)]][t(1027)],publishEnd:Date.now()},delete p[t(1266)][t(1823)][t(1143)+c[t(1521)]]),c[t(963)]=!1,p[t(1433)](p[t(1537)][t(661)],{action:p[t(661)][t(889)],streamInfo:c});else{let e=p[t(1656)](o);if(!c.pc)return void p.subscribeRecover(c,"onIceStateChange ext:"+e+t(1286)+c[t(854)]);c.retry=0,a[t(1167)](a[t(629)][t(608)],o,e,c.tag),c.weak&&p.wsHandleNetStatChanged({content:{streamID:o,weak:!0}}),p[t(1266)][t(1560)]&&(c[t(1265)]=c.localMuteAudio,p.muteRemoteStream(o,{muteAudio:!0})),c[t(280)]=!1,p.core.userActionData["subscribe-"+e][t(1045)]=Date[t(931)](),p[t(1433)](p.LogType[t(661)],{action:p[t(661)][t(1684)],streamInfo:c}),p[t(1433)](p[t(1537)][t(661)],{action:p[t(661)].toggleMute,mediaType:p[t(541)][t(418)],streamInfo:c}),p[t(1433)](p[t(1537)][t(661)],{action:p.UserAction.toggleMute,mediaType:c[t(558)]===p[t(1155)].Camera?p[t(541)][t(565)]:p[t(541)][t(1663)],streamInfo:c})}return}if("failed"===e[t(545)][t(558)])return s[t(1023)](t(1511)+c.id+", params:"+JSON[t(1014)](e)),p[t(804)](c),void p.triggerLogUpload(p.LogType[t(811)],{streamInfo:c,errorType:p[t(218)][t(663)],errorCode:c.local?p[t(346)].Rtc[t(1073)]:p[t(346)][t(663)][t(1329)],errorDesc:t(1674)+o+", requestID: "+i});if(e[t(545)][t(558)]===t(605))return s[t(1023)](t(1081)+JSON[t(1014)](e)),p[t(1210)](o),void p[t(1433)](p[t(1537)][t(811)],{streamInfo:c,errorType:p[t(218)].Rtc,errorCode:c.local?p.LogErrorCode[t(663)][t(1073)]:p[t(346)][t(663)][t(1329)],errorDesc:t(348)+o+t(833)+i})}if(r===p[t(918)][t(1790)]&&0!==e[t(545)][t(377)][t(634)]){let r=e.content.result[t(634)],n=e.content[t(377)][t(1812)],a=c[t(558)],u=c[t(826)],d=c.tag,l=d?a+"-"+d:a,f=c[t(705)],m=c.id;return c[t(1227)]?(p[t(1479)](a,m,d,u),s[t(1023)](t(1060),l,r+" "+n),s[t(1055)](t(1402)+c.ready),p[t(749)](p.ErrorCode[t(1099)],{type:a,subType:u,tag:d,publishID:m,desc:t(721)+l+t(327)+r+t(508)+n})):(s[t(1023)](t(990),f,r+" "+n),p[t(1638)](c,t(1066),!0)),c.id="",void p[t(1433)](p.LogType[t(811)],{streamInfo:c,errorType:p[t(218)][t(663)],errorCode:c[t(1227)]?p.LogErrorCode.Rtc[t(1073)]:p[t(346)].Rtc[t(1329)],errorDesc:t(1136)+o+t(833)+i+t(1289)+r+", detail: "+n})}let u=c.pc,d=e[t(545)].sdp,l=c[t(1444)];if(r===p[t(918)][t(1563)]&&e[t(545)][t(558)]===t(1150)&&d){if(!c.pc)return void p[t(1638)](c,t(954)+c[t(705)]+t(1286)+c[t(854)]);p[t(1807)](u,d).then((e=>{const r=t;e&&p.triggerLogUpload(p[r(1537)].Error,{streamInfo:c,errorType:p.LogErrorType[r(663)],errorCode:c.local?p[r(346)][r(663)].Publish:p.LogErrorCode[r(663)][r(1329)],errorDesc:r(1675)+e.toString()+", sdp:"+d})}))}if(l&&l[t(1524)]>0){let e=l[t(1226)]();p[t(1191)](o,t(1444),"a="+e[t(1107)],0,{sdpMLineIndex:e.sdpMLineIndex,sdpMid:e[t(1455)]})}},p.wsHandleStreamAdded=function(e){const t=n;let r=e[t(545)][t(1668)],o=e[t(545)][t(839)];!p.core[t(1721)][r]&&(s.logWarn(t(1702)),p.core.users[r]={uid:r,streams:{}}),p[t(1266)][t(1721)][r][t(524)].push(o[t(705)]),p.core.publishers[o[t(705)]]=Object.assign({uid:r,dType:p[t(1266)][t(1721)][r][t(711)],local:!1,ready:!1,localMuteAudio:!1,localMuteVideo:!1,candidate:[]},o),a[t(1167)](a[t(629)][t(1451)],r,o)},p[n(728)]=function(e={}){const t=n;let r=e[t(545)].userID,o=e[t(545)][t(705)];if(r===p[t(1266)][t(1668)])Object[t(1706)](p.StreamType)[t(1505)]((e=>{const r=t;p.core[e].id===o&&(p[r(1339)](p[r(1266)][e]),p.core[e].id="",p[r(1266)][e][r(1444)]=[],p[r(1266)][e][r(854)]=!1,p[r(1395)](e,"",p.core[e][r(1755)]?p[r(1266)][e][r(1755)].app:"",p.core[e][r(826)]))}));else{if(!p[t(1266)][t(1721)][r]||p[t(1266)][t(1721)][r][t(524)][t(199)](o)<0)return;p.core[t(1031)][o]&&p[t(1266)].publishers[o].id&&p[t(1639)](p[t(1266)][t(1031)][o].id),p[t(1410)](p[t(1266)][t(1031)][o],!0),a[t(1167)](a.Event[t(973)],r,o)}},p[n(250)]=function(e="",t=!1,r=!1){const o=n;p.wsSender({name:"update",type:o(522),stamp:Date[o(931)](),session:p[o(1266)].session,requestID:h(),content:{userID:p[o(1266)][o(1668)],streamID:e,muteVideo:t,muteAudio:r}})},p[n(544)]=function(e){},p.wsUpdateLayer=function(e="",t=0){const r=n;p[r(344)]({name:r(866),type:r(522),stamp:Date[r(931)](),session:p[r(1266)].session,requestID:h(),content:{userID:p[r(1266)][r(1668)],streamID:e,layerIndex:t}})},p[n(964)]=function(e={}){},p[n(1677)]=function(e={}){const t=n;let r=e[t(545)][t(807)];if(p[t(1266)][t(1054)].id===r)p[t(1266)].camera[t(813)]=e.content.layerIndex,p[t(1501)](p.core[t(1054)],p[t(1199)][t(992)],e.content[t(813)]),p.routineCheckStreamFirstUpload(p[t(1266)][t(1054)]);else if(p[t(1266)].screen.id===r)p.core[t(575)][t(813)]=e.content[t(813)],p.routineCheckStreamFirstUpload(p[t(1266)][t(575)]);else if(p[t(1266)][t(1580)].id===r)p[t(1266)][t(1580)][t(813)]=e[t(545)][t(813)],p[t(1284)](p[t(1266)][t(1580)]);else{let o=Object[t(1706)](p[t(1266)][t(752)])[t(1431)]((e=>e.id===r));if(!o)return;o[t(813)]=e[t(545)][t(813)],o[t(558)]===p.StreamType[t(551)]&&p[t(1501)](o,p[t(1199)].cameraExLayers,e[t(545)][t(813)]),p[t(1284)](o)}},p[n(643)]=function(e={}){const t=n;let{userID:r,name:o}=e.content;p[t(1768)](r,{name:o}),a.emit(a.Event[t(318)],{uid:r,name:o})},p.wsHandleStreamUpdated=function(e){const t=n;let r=e.content[t(705)],o=e[t(545)][t(389)],i=e[t(545)][t(1822)];p[t(1266)][t(1031)][r]?(p[t(1266)][t(1031)][r][t(1822)]!==i&&(p[t(1266)][t(1031)][r][t(1822)]=i,s.logInfo(t(512)+p[t(1266)].publishers[r][t(376)]+", streamId:"+r+t(709)+i),a[t(1167)](a.Event[t(1828)],p.core[t(1031)][r].uid,r,p[t(499)][t(418)],i)),p[t(1266)].publishers[r].muteVideo!==o&&(p[t(1266)][t(1031)][r][t(389)]=o,s[t(1055)](t(512)+p[t(1266)].publishers[r][t(376)]+t(913)+r+t(1259)+o),a[t(1167)](a.Event.streamUpdated,p.core[t(1031)][r].uid,r,p[t(499)].Video,o))):s[t(1023)](t(1142)+r+t(1372)+JSON[t(1014)](e))},p[n(1711)]=function(e){const t=n;p[t(344)]({name:t(1814),type:t(522),stamp:Date.now(),session:p[t(1266)][t(1528)],requestID:h(),content:{name:e}}),p[t(1100)]({userName:e})},p[n(915)]=function(e){const t=n;let r=e.content[t(377)];r&&0===r[t(634)]?s.logInfo(t(1718)+e[t(545)][t(1645)]):s[t(1023)](t(535),r[t(1812)])},p[n(766)]=function(e){const t=n;p[t(344)]({name:t(1331),type:t(522),stamp:Date[t(931)](),session:p[t(1266)][t(1528)],requestID:h(),content:{streams:e}})},p[n(971)]=function(e){const t=n;let r=e[t(545)][t(377)];(!r||0!==r[t(634)])&&s[t(1023)]("update info error",r.detail)},p.wsHandleInfoUpdated=function(e){const t=n;if(e[t(545)][t(524)]&&e[t(545)][t(524)][t(1524)]>0){let r=JSON.parse(JSON.stringify(e[t(545)][t(524)]));a.emit(a[t(629)].infoUpdated,r)}},p.wsMessage=function(e="",t=null){const r=n;p[r(344)]({name:r(1449),type:"request",stamp:Date.now(),session:p[r(1266)].session,requestID:h(),content:{userID:p[r(1266)].userID,userList:t,msgType:r(t?1626:1719),dataType:r(645),data:e}})},p[n(1017)]=function(e={}){const t=n;if(e[t(558)]===t(1057)){let r=e[t(545)][t(1668)],o=e[t(545)][t(1773)];a.emit(a[t(629)].message,r,o)}},p[n(1422)]=function(e,t,r,o,i,s,a,c,u,d){const l=n;let f={name:l(186),type:l(522),stamp:Date[l(931)](),session:p.core.session,requestID:h(),content:{cmd:t,task:e}};r&&(f[l(545)].type=r),o&&(f.content.layout=o),i&&(f.content[l(1721)]=i),s&&(f[l(545)][l(775)]=s),a&&(f[l(545)][l(457)]=a),(c||u||d)&&(f[l(545)][l(1632)]=c||!1,f[l(545)][l(255)]=u||!1,f[l(545)][l(1829)]=d||!1),p[l(344)](f)},p.wsHandleMixer=function(e){const t=n;if(e.type===t(1057))return p[t(1791)](e);let r=e.content[t(377)]&&0===e.content[t(377)][t(634)],o=e.content[t(776)]||"",i=e.content[t(1124)]||"";return r?o?a[t(1167)](a[t(629)][t(979)],p[t(1266)][t(1668)],o,i):void 0:p[t(749)](p[t(1215)][t(593)],{taskID:o,cmd:i})},p[n(1791)]=function(e){const t=n;let r=e[t(545)];if(!r)return;let o=r[t(376)],i=r.task,s=r[t(1124)],c=r[t(775)],u=r.users,d=r[t(1307)],l=r.callback,f=r[t(1632)],m=r[t(255)],b=r.autoLayout;i&&(s===p[t(1152)][t(1098)]?a.emit(a[t(629)][t(979)],o,i,s,u,d,c,l,f,m,b):s===p[t(1152)].Update?a[t(1167)](a[t(629)][t(979)],o,i,s,u,d):a[t(1167)](a[t(629)].mixerTask,o,i,s))},p[n(473)]=function(e,t,r,o,i,s,a,c,u,d){const l=n;let f={name:l(543),type:l(522),stamp:Date[l(931)](),session:p.core[l(1528)],requestID:h(),content:{task:e,cmd:t}};r&&(f[l(545)][l(558)]=r,f[l(545)].bps=o,f.content[l(745)]=i,f[l(545)][l(723)]=s,f[l(545)][l(1669)]=a,f.content[l(557)]=c,f[l(545)].streamServer=u,f[l(545)][l(457)]=d),p[l(344)](f)},p[n(436)]=function(e){const t=n;if(e[t(558)]===t(1057))return p[t(412)](e);let r=e[t(545)][t(377)]&&0===e[t(545)][t(377)][t(634)],o=e[t(545)][t(776)]||"",i=e.content.cmd||"";return r?o?a[t(1167)](a[t(629)][t(1113)],p[t(1266)][t(1668)],o,i):void 0:(s[t(485)](t(736)+JSON[t(1014)](e)),p[t(749)](p[t(1215)][t(1044)],{taskID:o,cmd:i}))},p[n(412)]=function(e){const t=n;let r=e[t(545)].task||"",o=e.content.cmd||"",i=e[t(545)][t(634)],a=e.content[t(1812)];return s[t(485)](t(1577)+JSON[t(1014)](e)),p.emitError(p[t(1215)][t(1044)],{taskID:r,cmd:o,code:i,desc:a})},p[n(1699)]=function(){const e=n;let t={name:"updateRoom",type:e(522),stamp:Date[e(931)](),session:p[e(1266)][e(1528)],requestID:h(),content:{quality:p.options.hdQualityPriority?1:2}};p.wsSender(t)},p[n(338)]=function(e){const t=n;!(e[t(545)]&&e[t(545)][t(377)]&&0===e[t(545)][t(377)][t(634)])&&(p[t(1199)].hdQualityPriority=!p[t(1199)].hdQualityPriority),a.emit(a[t(629)].videoOption,{hdQualityPriority:p[t(1199)][t(882)]})},p[n(505)]=function(e){const t=n;if(e[t(545)]&&e.content.quality){const r=e.content[t(741)];p[t(1266)][t(820)]!==r&&(p.core[t(820)]=e.content[t(741)],p[t(1266)][t(1054)].pc&&p.setSimulcastLayerEncoding(p[t(1266)][t(1054)],p[t(1199)].cameraLayers,p[t(1266)][t(1054)][t(813)]||0),Object.values(p.core[t(752)])[t(1505)]((e=>{const r=t;e.pc&&p.setSimulcastLayerEncoding(e,p[r(1199)][r(1640)],e[r(813)]||0)})))}},p[n(1092)]=function(e,t,r){const o=n;s[o(1055)]("ws send updateNetstat, userID:"+e+"-streamID-"+t+o(799)+r);const i={name:"updateNetStat",type:o(522),stamp:Date[o(931)](),session:p[o(1266)][o(1528)],requestID:h(),content:{userID:e,streamID:t,weak:r}};p[o(344)](i)},p[n(1249)]=function(){},p[n(624)]=function(e){const t=n,{streamID:r,weak:o}=e.content,i=p[t(1452)](r);if(s.logInfo(t(1816)+e[t(558)]+t(1372)+JSON[t(1014)](e)),i&&!i[t(389)]){i[t(558)]!==p[t(1155)][t(1663)]&&(i.netWeakMuteVideo=o),i[t(1371)]=o;let e=p[t(1266)][t(1184)][t(838)][r];!e&&(e={id:r,level:1e-9},p[t(1266)][t(1184)].netWeakStats[r]=e),e[t(188)]=!0,p[t(1242)]()}},p[n(904)]=function(e){const t=n,{by:r,uid:o,ip:i,code:c,detail:u}=e.content;s[t(1055)](t(296)+JSON[t(1014)](e[t(545)])),p[t(344)]({name:t(1237),type:t(415),stamp:Date[t(931)](),session:p.core[t(1528)],requestID:h()}),p[t(185)](),a[t(1167)](a.Event[t(1237)],r,o,c,u)},p[n(707)]=function(e){const t=n;p[t(344)]({name:t(1165),type:"request",stamp:Date.now(),session:p.core[t(1528)],requestID:h(),content:{role:e}})},p[n(451)]=function(e){},p[n(589)]=async function(e="",t={},r=[]){const o=n;let i={iceServers:[{urls:[p.core[o(1763)]]}],iceTransportPolicy:o(1745),iceCandidatePoolSize:0};p[o(1266)][o(566)]&&i[o(909)][o(801)]({urls:[p[o(1266)][o(566)]],username:p.core[o(1771)],credential:p[o(1266)][o(1075)]}),t.pc=new RTCPeerConnection(i),t.pc[o(1212)]=e=>p.onIceCandidate(t,e),t.pc[o(1504)]=e=>p[o(1717)](t,e),t.pc[o(1217)]=e=>p[o(458)](t,e),e===p[o(1550)][o(1229)]?t[o(558)]!==p[o(1155)].Camera||t.tag?t[o(839)]&&(t.subType===p[o(831)][o(550)]&&!t[o(1148)]&&t.pc[o(974)](o(341),{direction:o(187),streams:[t[o(839)]]}),t[o(839)][o(1691)]().forEach((e=>{const r=o;t.pc[r(590)](e,t.stream)}))):(t[o(1148)]&&t.pc[o(590)](t[o(1148)],t[o(839)]),t[o(514)]&&t.pc[o(590)](t[o(514)],t[o(839)]),p.setSenderCodecPreferences(t.pc)):t.pc.ontrack=async function(e){const r=o;if(e.track&&(t[r(839)]=e[r(524)][0],e[r(198)][r(1687)]===p[r(499)][r(565)]&&t[r(1363)]&&(p.setVideoElementStream(t[r(465)],t.stream),p[r(1758)](t.videoElem,!0)),e[r(198)][r(1687)]===p[r(499)].Audio&&t[r(341)])){if(t[r(839)]=e[r(524)][0],!t[r(1651)]("audioElem")){let e=document[r(214)]("audio");e.id=t[r(705)]+r(174),t[r(1746)]=e}p[r(1512)](t[r(1746)],new MediaStream([e.track])),p[r(658)](t.audioElem,!1,p.options[r(1021)]),p[r(1758)](t[r(1746)],!1)}};try{let n={};if(e===p[o(1550)][o(1229)])n=await t.pc[o(1154)](),n[o(1107)]=p[o(968)](n[o(1107)],r),n[o(1107)]=p.sdpAddSimulcast(n[o(1107)],r);else{if(t.pc.addTransceiver&&p[o(1199)][o(1520)])t.pc.addTransceiver(o(341),{direction:o(1049)}),t.pc[o(974)]("video",{direction:o(1049)}),t.pc[o(974)](o(1363),{direction:"recvonly"}),p[o(815)](t.pc),n=await t.pc[o(1154)](),n.sdp=p[o(581)](n[o(1107)]);else{let e={offerToReceiveAudio:t[o(341)],offerToReceiveVideo:t[o(1363)]};p[o(815)](t.pc),n=await t.pc[o(1154)](e)}s.logInfo(o(1327)+JSON.stringify(n))}return await t.pc[o(824)](n),e===p.StreamRole.Publisher&&(p[o(936)](t.pc,r),r&&1==r[o(1524)]&&p[o(1160)](t.pc,r[0])),n.sdp}catch(e){return s.logError(o(1509)+e),p[o(1433)](p.LogType[o(811)],{streamInfo:t,errorType:p[o(218)].Rtc,errorCode:t[o(1227)]?p[o(346)].Rtc.Publish:p[o(346)][o(663)].Subscribe,errorDesc:"create session description error: "+e+o(1621)+(t.id||t.subscribeID)}),null}},p.closeRtcPeerConn=function(e){const t=n,r=e.pc;try{r&&r.signalingState!==t(1700)&&(r[t(1212)]=null,r.oniceconnectionstatechange=null,r[t(1217)]=null,r[t(1070)]()),e.pc=null}catch(e){s[t(485)](t(1841)+e)}},p.restartRtcPeerConn=function(e){const t=n;if(e.pc){let r=e.id||e[t(705)];if(s.logInfo(r,t(1320)),e.pc[t(583)]instanceof Function)try{e.pc.restartIce(),s[t(1055)](r,t(1518)),e[t(1444)]=[],p[t(617)](e)}catch(e){s[t(1023)]("restart ice error,",e[t(339)]())}else e.id&&p[t(1639)](e.id,(()=>{const r=t;p[r(929)](e[r(1668)],e.publishID)}))}},p.answerRtcPeerConn=async function(e,t){const r=n;try{t=p[r(562)](e,t);let o=new RTCSessionDescription({sdp:t,type:r(1150)});await e.setRemoteDescription(o)}catch(e){return s[r(485)](r(1675)+e+r(1417)+t),e}},p[n(1488)]=function(e=null){const t=n;e&&e[t(1415)]()[t(1505)]((e=>{const r=t;if("setCodecPreferences"in e&&e[r(1388)]&&e[r(1388)].track){let t=e.sender[r(198)].kind;let o=RTCRtpSender.getCapabilities(t).codecs.filter((e=>{const t=r;let o=e[t(818)][t(1399)](),n=e[t(1764)];return o===t(774)&&n&&n.indexOf("42e01f")>=0&&n[t(199)](t(568))>=0||o===t(1732)||o===t(572)}));if(o&&o[r(1524)]>0)try{e[r(920)](o)}catch(e){s[r(1023)](r(222),e[r(339)]())}}}))},p[n(815)]=function(e=null){const t=n;e&&e[t(1415)]().forEach((e=>{const r=t;if("setCodecPreferences"in e&&e[r(907)]&&e[r(907)][r(198)]){let t=e[r(907)][r(198)][r(1687)];let o=RTCRtpSender.getCapabilities(t)[r(1224)][r(660)]((e=>{const t=r;let o=e.mimeType.toLowerCase();return"video/h264"===o||o===t(572)||o===t(788)}));o&&o[r(1524)]>0&&e.setCodecPreferences(o)}}))},p.sdpNormalizer=function(e,t){const r=n;let o=!0;e&&e.localDescription&&e[r(975)][r(558)]===r(768)&&(o=e[r(975)][r(1107)][r(199)](r(498))<e[r(975)][r(1107)][r(199)](r(683)));let i=t,s=i[r(199)](r(498)),a=i[r(199)](r(683)),c=i.length,u=i[r(759)](0,s<a?s:a),d=i[r(759)](s,s<a?a:c),l=i[r(759)](a,s<a?c:s);return i=u+(o?d+l:l+d),i},p[n(968)]=function(e="",t=[]){const r=n;let o=e;try{const n=Math[r(1221)](t[0][r(716)]/1e3*.5);return n?(e[r(1751)](new RegExp(r(1374),"g"))[r(1505)]((t=>{const o=r;e=e.replace(t,t+o(407)+n+";")})),e):(s[r(1023)](r(272)),o)}catch(e){return s[r(1023)]("add bitrate control error,",e[r(339)]()),o}},p[n(317)]=function(e="",t=[]){const r=n;let o=t[r(1524)];if(o<=1)return e;if(null!==e[r(1751)](new RegExp("a=ssrc-group:SIM","g")))return e;let i=e.match(/a=ssrc-group:FID ([0-9]*) ([0-9]*)\r?\n/);if(!i||i.length<=0)return e;let a=e;try{const t=parseInt(i[1],10),n=parseInt(i[2],10),s=e[r(1751)](new RegExp(r(1359)+i[1]+r(859)))[1],a=e.match(new RegExp(r(1359)+i[1]+r(193)))[1],c=e[r(1751)](new RegExp(r(1359)+i[1]+" mslabel:(.*)\r?\n")),u=c&&c[1]?c[1]:"",d=e[r(1751)](new RegExp("a=ssrc:"+i[1]+r(1001))),l=d&&d[1]?d[1]:"";e[r(1751)](new RegExp(r(1359)+i[1]+r(1631),"g"))[r(1505)]((t=>{e=e[r(1260)](t,"")})),e.match(new RegExp(r(1359)+i[2]+r(1631),"g"))[r(1505)]((t=>{e=e[r(1260)](t,"")}));const f=[t],m=[n];for(let e=1;e<o;e+=1)f[r(801)](t+1e3*e),m[r(801)](n+1e3*e);let b,v,y=p[r(611)](f);for(let e=0;e<f.length;e+=1)b=f[e],v=m[e],y+=p[r(1594)](b,v);for(let e=0;e<f[r(1524)];e+=1)b=f[e],v=m[e],y+=p[r(856)](s,a,u,l,b,v);return y+=r(887),e[r(1260)](i[0],y)}catch(e){return s.logWarn("add simulcast info to original sdp error,",e[r(339)]()),a}},p[n(581)]=function(e=""){const t=n,r=e;try{const r=t(443),o=e[t(1751)](/a=group:BUNDLE ([0-9\ ]*)\r?\n/),n=o[0].split(" "),i=(e=e.replace(o[0],o[0].replace(" "+n[n.length-1]," "+r+"\r\n")))[t(469)]("m=video");let s=e[t(759)](i,e.length);return e=e[t(759)](0,i),s=s[t(1260)](s[t(1751)](/a=mid:[0-9]*\r?\n/)[0],"a=mid:"+r+"\r\n"),e+s}catch(e){return s[t(1023)](t(809),e[t(339)]()),r}},p.sdpAddSIM=function(e){let t=n(1435);return e.forEach((e=>{t+=" "+e})),t+"\r\n"},p.sdpAddGroup=function(e,t){return"a=ssrc-group:FID "+e+" "+t+"\r\n"},p[n(856)]=function(e,t,r,o,i,s){const a=n;return a(1359)+i+a(784)+e+"\r\na=ssrc:"+i+a(938)+t+"\r\n"+(r?a(1359)+i+a(609)+r+"\r\n":"")+(o?a(1359)+i+a(1319)+o+"\r\n":"")+(a(1359)+s)+" cname:"+e+"\r\n"+(a(1359)+s+a(938)+t)+"\r\n"+(r?a(1359)+s+a(609)+r+"\r\n":"")+(o?a(1359)+s+a(1319)+o+"\r\n":"")},p.setSimulcastLayerConfig=function(e,t=[]){const r=n;if(!e||!t||t[r(1524)]<=1)return;let o=[];for(let e=0;e<t.length;e+=1)o[e]=t[e][r(716)];e[r(1792)]().forEach((e=>{const t=r;e[t(198)]&&e[t(198)].kind===t(1363)&&p[t(947)](e,o)}))},p[n(1160)]=function(e,t){const r=n;e.getSenders()[r(1505)]((e=>{const o=r;if(e[o(198)]&&e[o(198)][o(1687)]===o(1363)){const r=e[o(1440)]();let n=t[o(716)]||15e5,i=t.frameRate||15;r[o(335)][0][o(812)]=n,r[o(335)][0].maxFramerate=i,e[o(730)](r)[o(515)]()[o(432)]((e=>{s[o(485)]("set one layer bitrate error, "+e)}))}}))},p[n(947)]=function(e,t=[]){const r=n;if(!(e[r(1440)]instanceof Function&&e[r(730)]instanceof Function))return void s.logError(r(1495));if(!t||t.length<=1)return;const o=e[r(1440)]();for(let e=0;e<t.length;e++)o[r(335)][e]&&(o[r(335)][e][r(812)]=t[e],o[r(335)][e][r(520)]=!1);e[r(730)](o)[r(515)]()[r(432)]((e=>{const t=r;s[t(485)](t(1245)+e)}))},p.setSimulcastLayerEncoding=function(e,t=[],r=-1){const o=n,i=e.pc;if(!i)return;if(!t||t.length<=1)return;let a=i.getSenders();if(0===a[o(1524)])return;const c=1===p[o(1266)][o(820)];let u=0,d=r;if(c&&(u=t.findIndex((e=>e.width*e.height>=230400)),-1===u?(u=t[o(1524)]-1,d=u):u>r&&(d=u)),-1===r){const t=p[o(1266)][o(1184)][o(838)][e.id];t&&t.isWeak&&(t[o(188)]=!0,t.isWeak=!1,p.emitNetWeakReport()),u=r,d=r}e[o(813)]=d;for(let e=0;e<a.length;e++)if(a[e].track&&a[e][o(198)][o(1687)]===o(1363)){let r=a[e];if(!(r[o(1440)]instanceof Function&&r[o(730)]instanceof Function)){s.logWarn(o(540));break}let n=r[o(1440)](),i=t[o(1524)]-1;d>i&&(d=i),t[o(1505)]((e=>{const t=o;n[t(335)][e[t(813)]]&&(n.encodings[e[t(813)]].active=e.layerIndex>=u&&e[t(813)]<=d)})),r[o(730)](n).then()[o(432)]((e=>{const t=o;s[t(485)](t(1617)+e)}));break}},p.onIceCandidate=async function(e,t){const r=n;try{if(t[r(1444)]){let o={sdpMid:"0"===t[r(1444)].sdpMid?r(341):"video",sdpMLineIndex:t[r(1444)].sdpMLineIndex,sdp:t[r(1444)][r(1444)]};e[r(1444)][r(801)](o)}}catch(t){s[r(485)]("stream "+e.id+r(1854)+t)}},p[n(1717)]=function(e){const t=n;let r=e.pc;if(r)if(typeof e[t(890)]===t(297)&&(e[t(890)]=0),r[t(1466)]===t(257)||"disconnected"===r[t(1466)]||r[t(1466)]===t(1700)){let o=e[t(705)]||e.id;if(s.logWarn(o,t(1282),r[t(1466)]),e.ready&&e[t(890)],p.ws&&p.ws.readyState===WebSocket[t(215)]){if(s[t(1055)]("streamInfo.ready:"+e[t(854)]),e[t(1227)]){const r={...e};p[t(1410)](e),p[t(749)](p.ErrorCode[t(1099)],{type:r.type,subType:r[t(826)],tag:r[t(1838)],publishID:r.id,desc:"onIceStateChange ext:"+(r[t(1838)]?r.tag:r[t(558)])+t(1286)+r[t(854)]}),e[t(890)]=0}else e.ready?p[t(1638)](e,t(954)+e[t(705)]+", ready:"+e.ready):p[t(1339)](e);r.iceConnectionState===t(257)&&p[t(1433)](p[t(1537)].Error,{streamInfo:e,errorType:p[t(218)][t(663)],errorCode:e[t(1227)]?p[t(346)][t(663)][t(869)]:p[t(346)][t(663)][t(924)],errorDesc:t(1543)})}}else r[t(1466)]===t(614)&&(e[t(890)]=0)},p[n(458)]=function(e){const t=n,r=e.pc;if(r&&"failed"===r.connectionState){const o=e.publishID||e.id;if(s.logWarn(o,"rtc connection change to",r[t(1851)]),p.ws&&p.ws.readyState===WebSocket.OPEN){if(s[t(1055)](t(1402)+e[t(854)]),e.local){const r={...e};p[t(1410)](e),p[t(749)](p[t(1215)][t(1099)],{type:r[t(558)],subType:r[t(826)],tag:r[t(1838)],publishID:r.id,desc:t(961)+r[t(558)]+t(1286)+r[t(854)]}),e[t(890)]=0}else p[t(1638)](e,t(961)+e.publishID+t(1286)+e.ready);p[t(1433)](p[t(1537)][t(811)],{streamInfo:e,errorType:p[t(218)][t(663)],errorCode:e[t(1227)]?p[t(346)][t(663)].PublishIce:p[t(346)][t(663)][t(924)],errorDesc:t(597)})}}},p.onIceNegotiationNeeded=function(e){const t=n;let r=!0,o=e[t(705)],i=e.id;if(!e[t(1227)]&&!p[t(1266)][t(1031)].hasOwnProperty(o)&&(r=!1),r){let r=[],o="";e.pc[t(1154)]({offerToReceiveAudio:1,offerToReceiveVideo:1})[t(515)]((n=>{const i=t;if(e[i(1227)]){let t=e[i(558)],o=e[i(1838)];r=o?p[i(1199)][i(1640)]:p[i(1199)][t+i(519)],n.sdp=p[i(317)](n[i(1107)],r)}return o=n[i(1107)],s[i(1055)]("offer:"+JSON[i(1014)](n)),e.pc[i(824)](n)})).then((()=>{const n=t;e[n(1227)]&&(p[n(936)](e.pc,r),p.setSimulcastLayerEncoding(e,r,e[n(813)]||0)),p.wsNegotiate(i,n(1182),o)}))[t(432)]((e=>{const r=t;s[r(1023)](r(1095),e[r(339)]())}))}},p.failCheck=function(e){const t=n;e[t(246)]=setInterval((()=>{const r=t;if(e.pc)if(e.pc[r(1851)]===r(257)){if(clearInterval(e[r(246)]),p.ws&&p.ws[r(1168)]===WebSocket.OPEN){const t={...e};p.resetStreamData(e),t.local?p.emitError(p[r(1215)].PublishError,{type:t[r(558)],subType:t[r(826)],tag:t[r(1838)],publishID:t.id,desc:r(1464)+t[r(558)]+", ready:"+t[r(854)]}):p[r(749)](p[r(1215)].SubscribeError,{publishID:t[r(705)],subscribeID:t.id,desc:r(1464)+t.publishID+r(1286)+t[r(854)]}),e[r(890)]=0}}else-1!==[r(1624),"completed","closed"][r(199)](e.pc[r(1466)])&&clearInterval(e.failCheck);else clearInterval(e[r(246)])}),2e3)},p.onDeviceChangeCallback=void 0,p[n(735)]=function(){const e=n;console[e(605)](e(735)),!p[e(1138)]&&(p[e(1138)]=setTimeout((()=>{const t=e;a[t(1167)](a[t(629)][t(1313)]),p.onDeviceChangeCallback=void 0}),500))},p[n(479)]=async function(t,r){const o=n,i=[];return r[o(1505)]((r=>{const n=o;i[n(801)]((()=>new Promise((o=>{const i=n;if(t==p[i(499)][i(565)]){const t=p.core.devices.detail.videoinput[i(1431)]((e=>e.id===r.id));if(t&&t[i(1460)])r[i(1460)]=t.capabilities,o();else{const t={video:{deviceId:{exact:r.id}}};navigator[i(796)][i(835)](t)[i(515)]((t=>{t.getTracks().forEach((t=>{const o=e;t[o(1687)]===p.StreamTrack[o(565)]&&(r[o(1460)]=t[o(1787)]()),t.stop&&t[o(1508)]()})),o()}))[i(432)]((()=>{o()}))}}}))))})),((t,r=10,o)=>new Promise(((n,i)=>{const s=e,a=[...t],c=a[s(1524)]<r?a[s(1524)]:r,u=a[s(488)](0,c),d=new Array(t[s(1524)]);let l=!1,p=c,f=0;const m=()=>{const e=s;if(o){const r=((t.length-(p+a[e(1524)]))/t[e(1524)]).toFixed(2);o({loaded:r})}},b=(e,t)=>{const r=s;e()[r(515)]((e=>{const o=r;l||(d[t]=e,a[o(1524)]>0?(b(a[o(1226)](),++f),m()):(p--,m(),0===p&&n(d)))}))[r(432)]((e=>{l||(l=!0,i({index:t,error:e}))}))};u[s(1505)](((e,t)=>{f=t,b(e,t)}))})))(i,x.android?1:10)},p[n(1420)]=function(e){const t=n;let r=null;for(let o=0;o<e[t(1524)];o++)if(e[o][t(1460)]&&e[o].capabilities.facingMode[0]===p[t(1736)][t(352)]){if(x.ios||!x[t(537)]&&!e[o][t(1460)].iso){r=e[o];break}(!r||e[o].capabilities.iso[t(616)]>=r.capabilities.iso.max)&&(r=e[o])}r&&(p[t(1266)][t(1533)][t(1166)]=r)},p.resetDefaultDevice=function(e={}){const t=n;let r=0,o=!1,i=!1;if(p.core[t(1533)].audioinput&&(r++,o=!0),p[t(1266)].devices[t(673)]&&(r++,i=!0),1===r){if(o&&void 0===e[t(467)].find((e=>e.id===p.core[t(1533)][t(467)])))return p[t(439)](p[t(925)][t(284)],"");if(i&&void 0===e[t(673)][t(1431)]((e=>e.id===p[t(1266)].devices[t(673)])))return p[t(439)](p[t(925)][t(496)],"")}else if(2===r){let r=void 0===e.audioinput[t(1431)]((e=>e.id===p[t(1266)][t(1533)].audioinput)),o=void 0===e.videoinput[t(1431)]((e=>e.id===p.core[t(1533)].videoinput));if(r&&o)return p[t(1266)][t(1533)].audioinput="",p.setDevicePreference(p.DeviceType[t(496)],"");if(r)return p[t(439)](p[t(925)][t(284)],"");if(o)return p[t(439)](p.DeviceType.VideoInput,"")}},p[n(373)]=async function(e,t){const r=n;let o=p.core[r(1533)][r(1812)],i=o[r(467)].filter((t=>{const o=r;return void 0===e[o(467)][o(1431)]((e=>e.id===t.id))})),s=o[r(673)][r(660)]((t=>{const o=r;return void 0===e[o(673)][o(1431)]((e=>e.id===t.id))}));if(i[r(1524)]>0){let t=o[r(673)][r(660)]((e=>{const t=r;return e[t(626)]&&void 0!==i[t(1431)]((r=>r[t(626)]===e[t(626)]))}));e[r(673)]=e[r(673)][r(660)]((e=>{const o=r;return void 0===t[o(1431)]((t=>t[o(1645)]===e.name))}))}if(s.length>0){let t=o[r(467)][r(660)]((e=>e.group&&void 0!==s.find((t=>t.group===e.group))));e[r(467)]=e[r(467)][r(660)]((e=>void 0===t[r(1431)]((t=>t.name===e.name))))}t&&(await p.checkDeviceList(p[r(499)].Video,e[r(673)]),p[r(1420)](e[r(673)])),p[r(386)](e),p.core[r(1533)][r(1812)]=e,a[r(1167)](a[r(629)].deviceList,e)},p[n(1301)]=async function(e){const t=n,r=Object[t(1706)](p[t(925)]),o={},i={};r[t(1505)]((e=>{i[e]=[],o[e]={}})),navigator[t(796)][t(1713)]!==p.onDeviceChange&&(navigator[t(796)][t(1713)]=p[t(735)]);let a=[];try{a=await navigator[t(796)][t(333)]()}catch(e){return s[t(485)]("get device list error, "+e)}a[t(1505)]((function(e){const r=t;if(e[r(487)]&&i[e.kind])if(e[r(487)]===r(594))o[e[r(1687)]]={id:e.deviceId,name:e[r(631)]||e.kind+":"+e[r(487)].substr(0,8),group:e[r(756)],selected:!1};else if(e.deviceId!==r(1052)){const t={id:e[r(487)],name:e.label||e[r(1687)]+":"+e[r(487)][r(713)](0,8),group:e.groupId};""!==o[e[r(1687)]][r(626)]&&e[r(756)]===o[e.kind][r(626)]?(o[e[r(1687)]][r(983)]=!0,i[e[r(1687)]][r(1570)](t)):i[e[r(1687)]][r(801)](t)}})),r.forEach((e=>{const r=t;!o[e][r(983)]&&o[e].id&&(delete o[e][r(983)],i[e][r(1570)](o[e]))})),await p[t(373)](i,e)},p.getDeviceInfo=function(t){return new Promise(((r,o)=>{const n=e,i=p[n(1266)].devices[n(1812)][n(467)],s=p.core.devices[n(1812)][n(1557)],a=p[n(1266)][n(1533)][n(1812)][n(673)];let c=null;if(c=a[n(1431)]((e=>e.id===t)),c)if(c[n(1460)])r(JSON.parse(JSON[n(1014)](c)));else{const e={video:{deviceId:{exact:c.id}}};navigator[n(796)].getUserMedia(e)[n(515)]((e=>{const t=n;e[t(1691)]().forEach((e=>{const r=t;e[r(1687)]===p.StreamTrack[r(565)]&&(c[r(1460)]=e.getCapabilities()),p[r(264)](e)})),r(JSON[t(1506)](JSON[t(1014)](c)))}))[n(432)]((()=>{const e=n;r(JSON.parse(JSON[e(1014)](c)))}))}else c=i.find((e=>e.id===t)),c?r(JSON[n(1506)](JSON[n(1014)](c))):(c=s.find((e=>e.id===t)),c?r(JSON.parse(JSON.stringify(c))):o("can not find device"))}))},p[n(439)]=function(e="",t=""){const r=n;if(p[r(1266)].devices[r(1651)](e)&&p.core.devices[e]!==t)if(e===p[r(925)].VideoInput&&(p[r(1266)].devices[r(668)+e]=p[r(1266)].devices[e]),p[r(1266)][r(1533)][e]=t,e===p[r(925)][r(1744)])Object[r(1706)](p[r(1266)][r(1031)]).forEach((e=>{const o=r;e[o(1746)]&&p[o(1820)](e[o(1746)],t)}));else if(p[r(1266)][r(1054)][r(731)]){let t=e===p[r(925)][r(284)],o=!t;p[r(1774)](null,!0,t,o)}},p[n(949)]=function(e,t){const r=n;let o=null;if(e===p.StreamType.Camera)o=p[r(1266)][r(1054)],p[r(1199)][r(992)]=[t];else{if(!p.core[r(752)][e])return void s[r(1023)](r(1759));o=p[r(1266)].cameraEx[e],p[r(1199)][r(1640)]=[t]}o[r(1056)]=[t],o.pc&&o[r(514)]&&(o[r(514)][r(395)]({width:{ideal:t.width},height:{ideal:t[r(1669)]}})[r(515)]((()=>{const e=r;s[e(1055)](e(1256))}))[r(432)]((e=>{const t=r;s[t(485)](t(380),e)})),p[r(1160)](o.pc,t))},p[n(623)]=function(e,t){const r=n;if(!(e&&e instanceof HTMLElement))return!1;try{return e[r(1250)]=t,e.controls=!1,e.muted=!0,e.onplay=()=>{const t=r;e.onplay=null,s.logInfo(e.id+t(1601))},!0}catch(e){return s[r(485)](r(687)+e),!1}},p[n(1512)]=function(e,t){const r=n;if(e&&e instanceof HTMLElement)try{e.srcObject=t,e[r(495)]=!1,e.onplay=()=>{const t=r;e[t(898)]=null,s[t(1055)](e.id+t(1601))}}catch(e){s[r(485)](r(863)+e)}},p[n(1820)]=function(e,t){const r=n;e&&t&&(e instanceof HTMLElement&&typeof e[r(942)]!==r(297)?e[r(307)](t)[r(515)]().catch((e=>{const o=r;let n=e;e?(n=e[o(1645)]===o(780)?"you need to use HTTPS for selecting audio output device: "+e:e[o(1449)],s.logError(n)):(s[o(485)](e),n=o(1850)),p[o(749)](p[o(1215)].SetDeviceError,{deviceType:p[o(925)].AudioOutput,deviceID:t,desc:n})})):(s[r(485)](r(1332)),p[r(749)](p[r(1215)][r(391)],{deviceType:p[r(925)][r(1744)],deviceID:t,desc:"browser does not support output device selection"})))},p.getPubIdBySubId=function(e=""){const t=n;if(!e)return e;let r=e.split("-");return r.splice(0,r[t(1524)]-1)[t(656)]("-")},p.getStreamInfo=function(e=""){const t=n;if(e===p[t(1266)][t(1054)].id)return p[t(1266)][t(1054)];if(e===p[t(1266)][t(575)].id)return p[t(1266)][t(575)];if(e===p[t(1266)][t(1580)].id)return p.core[t(1580)];if(p[t(1266)][t(1031)][t(1651)](e))return p.core[t(1031)][e];{let r=p.getPubIdBySubId(e);return p[t(1266)][t(1031)][r]?p[t(1266)].publishers[r]:Object[t(1706)](p[t(1266)].cameraEx).find((t=>t.id===e))||null}},p[n(900)]=function(e="",t=p[n(1550)][n(1323)]){const r=n;if(e){if(t===p[r(1550)].Subscriber){let t=Object.values(p[r(1266)][r(1031)]);for(let o=0,n=t[r(1524)];o<n;o++)if(t[o][r(1521)]===e)return t[o];return null}return p.core.camera[r(1521)]===e?p[r(1266)].camera:p[r(1266)].screen.lastRequestID===e?p[r(1266)][r(575)]:p[r(1266)].custom[r(1521)]===e?p[r(1266)][r(1580)]:Object[r(1706)](p[r(1266)].cameraEx).find((t=>t.lastRequestID===e))}},p.getStreamByPubIDorTag=function(e){const t=n;let r=p[t(1266)].publishers[e];return!r&&Object[t(1706)](p.core.publishers)[t(1505)]((o=>{o[t(1838)]===e&&(r=o)})),r},p[n(1679)]=function(e){const t=n,{tag:r,type:o,subType:i,local:s}=e;if(!s)return e[t(1056)];let a=[];return a=r?o===p[t(1155)][t(551)]?p[t(1199)][t(1640)]:p[t(1199)][t(194)]:o===p.StreamType[t(551)]?p[t(1199)][t(992)]:i===p[t(831)][t(550)]?p[t(1199)][t(1312)]:p[t(1199)][t(194)],a},p[n(823)]=function(e){const t=n;s.logInfo(t(1174)),Object[t(1706)](p.StreamType)[t(1505)]((e=>{const r=t;p.core[e].id&&p[r(1266)][e][r(854)]&&(p[r(1410)](p[r(1266)][e]),p.wsPublish(e,"",p[r(1266)][e][r(1755)]?p[r(1266)][e][r(1755)].app:"",p[r(1266)][e][r(826)]))})),e[t(1505)]((e=>{const r=t;p[r(1266)][r(1721)][e[r(1668)]]?(e.streams[r(1505)]((t=>{const o=r;p[o(1266)][o(1721)][e[o(1668)]][o(524)].indexOf(t[o(705)])<0?(p[o(1266)][o(1721)][e[o(1668)]][o(524)][o(801)](t[o(705)]),p[o(1266)][o(1031)][t[o(705)]]=Object.assign({uid:e[o(1668)],dType:e[o(711)],local:!1,ready:!1,localMuteAudio:!1,localMuteVideo:!1,candidate:[]},t)):(p.core[o(1031)][t.publishID][o(389)]!==t[o(389)]&&(p.core[o(1031)][t[o(705)]][o(389)]=t.muteVideo),p[o(1266)][o(1031)][t[o(705)]][o(1822)]!==t.muteAudio&&(p[o(1266)].publishers[t[o(705)]].muteAudio=t.muteAudio),p[o(1266)][o(1031)][t[o(705)]][o(854)]&&(p.resetStreamData(p[o(1266)][o(1031)][t[o(705)]]),p[o(929)](e[o(1668)],t[o(705)])))})),p[r(1266)][r(1721)][e.userID][r(524)][r(1505)]((t=>{const o=r;!e[o(524)][o(1431)]((e=>e.publishID===t))&&p[o(1410)](p[o(1266)][o(1031)][t],!0)}))):(p[r(1266)].users[e[r(1668)]]={uid:e[r(1668)],dType:e[r(711)],streams:[]},e[r(524)][r(1505)]((t=>{const o=r;p[o(1266)][o(1721)][e[o(1668)]].streams[o(801)](t[o(705)]),p.core[o(1031)][t[o(705)]]=Object[o(1772)]({uid:e[o(1668)],dType:e[o(711)],local:!1,ready:!1,localMuteAudio:!1,localMuteVideo:!1,candidate:[]},t)})))}))},p[n(1637)]=function(e){const t=n;s[t(1055)](t(959));let r=[];e.forEach((e=>{const o=t;e[o(1668)]===p[o(1266)][o(1668)]?(Object[o(1706)](p[o(1155)]).forEach((t=>{const r=o;if(p[r(1266)][t].id&&p[r(1266)][t].ready){let o=e[r(524)][r(1431)]((e=>e[r(705)]===p[r(1266)][t].id));o?([r(1624),r(614)][r(199)](p[r(1266)][t].pc[r(1466)])<0?p[r(804)](p.core[t]):(p[r(1266)][t][r(1822)]!==o[r(1822)]||p.core[t][r(389)]!==o[r(389)])&&p.wsUpdate(o[r(705)],p[r(1266)][t][r(389)],p[r(1266)][t][r(1822)]),e[r(524)]=e[r(524)][r(660)]((e=>e.publishID!==p[r(1266)][t].id))):(p[r(1410)](p[r(1266)][t]),p[r(1395)](t,"",p[r(1266)][t][r(1755)]?p[r(1266)][t][r(1755)][r(509)]:"",p.core[t].subType))}})),e.streams[o(1505)]((e=>{const t=o;p[t(1479)](e[t(558)],e[t(705)])})),r=e[o(1205)]||[]):p[o(1266)][o(1721)][e[o(1668)]]?(e.streams[o(1505)]((t=>{const r=o;p[r(1266)][r(1721)][e[r(1668)]][r(524)][r(199)](t[r(705)])<0?(p[r(1266)][r(1721)][e[r(1668)]][r(524)][r(801)](t.publishID),p[r(1266)][r(1031)][t[r(705)]]=Object[r(1772)]({uid:e.userID,dType:e[r(711)],local:!1,ready:!1,localMuteAudio:!1,localMuteVideo:!1,candidate:[]},t)):(p[r(1266)][r(1031)][t[r(705)]][r(389)]!==t[r(389)]&&(p[r(1266)].publishers[t[r(705)]][r(389)]=t[r(389)]),p[r(1266)][r(1031)][t.publishID][r(1822)]!==t[r(1822)]&&(p[r(1266)][r(1031)][t[r(705)]][r(1822)]=t[r(1822)]))})),p.core[o(1721)][e.userID][o(524)].forEach((t=>{const r=o;!e.streams[r(1431)]((e=>e.publishID===t))&&p.resetStreamData(p[r(1266)][r(1031)][t],!0)}))):(p.core.users[e[o(1668)]]={uid:e[o(1668)],dType:e[o(711)],streams:[]},e[o(524)][o(1505)]((t=>{const r=o;p[r(1266)][r(1721)][e[r(1668)]][r(524)].push(t[r(705)]),p[r(1266)].publishers[t[r(705)]]=Object[r(1772)]({uid:e[r(1668)],local:!1,ready:!1,localMuteAudio:!1,localMuteVideo:!1,candidate:[]},t)})))})),r.forEach((e=>{const r=t;p[r(1266)].publishers[e[r(705)]]?p[r(1266)][r(1031)][e[r(705)]].id&&p[r(1266)][r(1031)][e[r(705)]][r(854)]&&p[r(1266)][r(1031)][e.publishID].id===e[r(944)]&&(["connected","completed"][r(199)](p[r(1266)][r(1031)][e[r(705)]].pc[r(1466)])<0?p[r(804)](p[r(1266)][r(1031)][e.publishID]):((e.muteAudio!==p[r(1266)][r(1031)][e[r(705)]].localMuteAudio||e[r(389)]!==p[r(1266)].publishers[e.publishID][r(201)])&&p[r(250)](e[r(944)],p[r(1266)][r(1031)][e[r(705)]][r(201)],p.core[r(1031)][e[r(705)]][r(181)]),e[r(813)]!==p[r(1266)][r(1031)][e[r(705)]][r(813)]&&p[r(1514)](e[r(944)],p.core.publishers[e[r(705)]][r(813)]))):p[r(1639)](e[r(944)])})),Object[t(703)](p[t(1266)][t(1721)])[t(1505)]((r=>{const o=t;!e[o(1431)]((e=>e[o(1668)]===r))&&(p[o(1266)].users[r][o(524)][o(1505)]((e=>{const t=o;p[t(1266)].publishers[e]&&p.core[t(1031)][e].id&&p[t(1410)](p.core[t(1031)][e],!0)})),delete p[o(1266)].users[r])}))},p[n(1859)]=function(e=[],t=!1){const r=n;if(!(e&&e instanceof Array&&0!==e[r(1524)])){if(t)return;e=[]}let o=JSON[r(1506)](JSON[r(1014)](e));return t?p[r(1637)](o):p[r(823)](o)},p[n(1210)]=function(e){const t=n;e&&delete p[t(1266)][t(740)][e];let r=p[t(1452)](e);if(r)if(r.local){s[t(1055)](t(1551)+e+", re-publish");let o=r[t(558)],n=r[t(1838)]||"",i=r[t(1755)]?r[t(1755)][t(509)]:"";p[t(1479)](o,r.id,r[t(1838)],r.subType),p[t(1395)](o,n,i,r[t(826)])}else s.logInfo("reconnect stream "+e+", re-subscribe"),p[t(1639)](r.id,(()=>{const e=t;p[e(929)](r[e(1668)],r.publishID)}));else s[t(485)]("reconnect stream "+e+t(476))},p[n(1660)]=function(e=!1){const t=n;p[t(1410)](p[t(1266)][t(1054)]),p[t(1266)].camera[t(963)]=!1,p[t(1266)][t(1054)][t(389)]=!1,p[t(1266)][t(1054)][t(1822)]=!1,p[t(1410)](p[t(1266)].screen),p[t(1266)][t(575)][t(963)]=!1,p[t(1266)][t(575)][t(389)]=!1,p[t(1266)][t(575)].muteAudio=!1,p[t(1266)].cameraEx={},!e&&(Object[t(1706)](p[t(1266)].publishers)[t(1505)]((e=>p[t(1410)](e))),p[t(1266)][t(1031)]=[],p.historyReport={video:{},audio:{},enableInspire:!1,options:{activeDuration:1800,inactiveDuration:1500}},p.qosHistroyData={},p.core.network[t(874)]={},p[t(1266)][t(1184)][t(855)]={},p[t(1266)][t(1184)][t(838)]={})},p.resetStreamData=function(e,t=!1){const r=n;if(!e)return;clearInterval(p[r(246)]),p[r(1339)](e),t&&(p[r(1266)][r(1721)][e[r(376)]]&&(p[r(1266)][r(1721)][e[r(376)]][r(524)]=p[r(1266)][r(1721)][e[r(376)]][r(524)][r(660)]((t=>t!==e[r(705)]))),p[r(1266)][r(1031)][e[r(705)]]&&delete p.core.publishers[e[r(705)]]),p[r(1391)](e);let o=e[r(1227)]?e[r(1838)]?e[r(558)]+"-"+e[r(1838)]:e[r(558)]:e[r(705)];p[r(622)](o),e.id="",e[r(854)]=!1,e[r(1444)]=[],e[r(1755)]={app:"",rtc:"",act:0},e.retry=0,e.checkedStreamFirstUpload=!1,e[r(1521)]="",e.recoverTimeout&&clearTimeout(e[r(884)]),e[r(1746)]&&(e.audioElem[r(898)]=null,p[r(1818)](e[r(1746)])),e.videoElem&&(e[r(465)][r(898)]=null,p[r(1818)](e[r(465)]))},p.clearnStreamNetData=function(e){const t=n,r=p[t(1266)].network,o=p[t(411)];if(r[t(874)][e.id]&&delete r[t(874)][e.id],r.downlinkStats[e.id]&&delete r[t(855)][e.id],r[t(838)][e.id]){const o=r.netWeakStats[e.id];o&&(o[t(836)]||e[t(1371)])&&(o[t(188)]=!0,o[t(836)]=!1,e[t(1371)]=!1,Promise[t(1725)]().then((()=>{p[t(249)]()}))),delete r.netWeakStats[e.id]}o[t(341)][e.id]&&delete o[t(341)][e.id],o[t(1363)][e.id]&&delete o[t(1363)][e.id],delete p[t(406)][e.id]},p.cleanTimer=function(){const e=n;clearInterval(p.audioReport),clearInterval(p[e(1169)]),clearInterval(p[e(726)]),clearInterval(p[e(922)]),clearInterval(p[e(1643)]),clearInterval(p[e(1266)][e(851)][e(1119)])},p[n(1818)]=function(e){const t=n;for(let r=0;r<p[t(1266)][t(1554)][t(1524)];r++)if(p[t(1266)][t(1554)][r]===e){p[t(1266)][t(1554)][t(488)](r,1);break}},p[n(1568)]=function(){const e=n;if(0===p[e(1266)][e(313)])return;let t=p[e(1266)][e(890)],r=1e4;0===t?r=0:t<5&&(r=1e3<<t-1),s[e(1055)](e(1050),++p[e(1266)][e(890)],r),a[e(1167)](a[e(629)][e(1575)],p[e(1266)][e(890)]),p[e(1213)]=setTimeout((()=>{const t=e;p[t(627)](p[t(1266)][t(1272)],p[t(1266)][t(1668)],p.core.userName,p[t(1266)][t(478)],p[t(1266)].userRole,!0)}),r)},p.historyReport={video:{},audio:{},enableInspire:!1,options:{activeDuration:1500,inactiveDuration:1500}},p[n(1389)]=function(){const e=n;let t=p[e(1266)][e(851)];t[e(1708)]&&(!l&&t.audioProcessor[e(1541)](p.audioContext[e(677)]),t[e(526)][e(1541)](t[e(1708)]),delete t.audioProcessor,delete t[e(526)]),t[e(839)]=null},p[n(622)]=function(e=""){const t=n;Object[t(703)](p[t(411)][t(341)])[t(1505)]((r=>{const o=t;if(""===e||e===r){let e=p[o(411)][o(341)][r];e&&e.audioProcessor&&(!l&&e[o(1708)][o(1541)](p.audioContext[o(677)]),e.audioSource.disconnect(e.audioProcessor),delete e[o(1708)]),delete p.historyReport.audio[r]}}))};class f extends l{constructor(e,t){const r=n;super(e,"audioLevel"),this.streamID=t,this[r(1703)].onmessage=this[r(814)][r(1356)](this),this[r(184)]=0}[n(814)](e){const t=n;try{e[t(1773)][t(350)]?(p[t(411)][t(341)][this.streamID]?p[t(411)][t(341)][this[t(807)]][t(350)]=e[t(1773)][t(350)]||0:this.streamID===p.core[t(851)][t(558)]&&(p[t(1266)][t(851)][t(350)]=e.data[t(350)]),this[t(184)]=0):0===e[t(1773)][t(350)]&&(this[t(184)]>=5?(p[t(411)][t(341)][this[t(807)]]?p[t(411)].audio[this.streamID][t(350)]=0:this[t(807)]===p[t(1266)][t(851)][t(558)]&&(p.core[t(851)][t(350)]=0),this[t(184)]=0):this[t(184)]++)}catch(e){s[t(1055)](this[t(807)],e[t(339)]())}}}return p[n(1753)]=function(){const t=n,r=[0,1,2,3,4,4,5,5,5,5,6,6,6,6,6,7,7,7,7,8,8,8,9,9,9,9,9,9,9,9,9,9,9],o=(t,r,o)=>{const n=e,i=Date[n(931)]();t[n(350)]>8&&!t.muteAudio&&o?(0===t[n(998)]&&(t.startSpeakTime=i),t[n(282)]=i,t[n(421)]=0):(0===t[n(421)]&&(t[n(421)]=i),i-t[n(421)]>r?(t.isInspired&&(s.logInfo("uninspire stream: "+t[n(705)]+n(1477)+t.type+", local: "+t[n(1227)]),t.isInspired=!1),t[n(998)]=0,t[n(282)]=0,t[n(421)]=0):t[n(998)]>0&&(t[n(282)]=i))},i=e=>{e=e>=100?99:e;return 10*r[Math.floor(33*e/100)]};Object[t(1706)](p[t(1266)][t(1031)])[t(1505)]((e=>{const r=t;if(!e.pc||e.pc.connectionState!==r(1624))return;let n=e[r(705)],a=e[r(558)];!p[r(411)][r(341)][n]&&(p.historyReport[r(341)][n]={audioLevel:0,levelList:[],isInspired:!1,local:!1,muteAudio:e[r(1822)],publishID:n,type:a,startSpeakTime:0,startMuteTime:0,continueSpeakTime:0,startVoiceMax:0,continueVoiceMax:0});const c=p[r(411)].audio[n];if(p[r(1716)]&&e.stream&&e[r(839)][r(1008)]()[r(1524)]>0&&!c[r(1708)]){let t,o=p[r(1716)][r(1462)](e.stream);l?(t=new f(p.audioContext,n),o.connect(t)):(t=p[r(1716)][r(1e3)](4096,1,1),o[r(265)](t),t[r(265)](p[r(1716)][r(677)]),t.addEventListener(r(1198),(e=>{const t=r;let o=e[t(650)][t(852)](0);try{c[t(350)]=Math[t(1221)](100*Math[t(616)][t(962)](Math,o))}catch(e){s.logInfo(n,e[t(339)]())}}))),c[r(526)]=o,c[r(1708)]=t,c[r(839)]=e.stream}e.muteAudio?c[r(350)]=0:p.historyReport[r(1429)]&&(c.audioLevel=i(c[r(350)])),c[r(510)][r(801)](c[r(350)]),c[r(510)][r(1524)]>=20&&(p.options[r(1381)]&&s[r(1055)](r(371)+n+r(653),c[r(510)]),c[r(510)]=[]),p[r(411)].enableInspire&&o(c,p.historyReport[r(1199)].inactiveDuration,!!e.pc)})),[p[t(1266)][t(1054)],p.core[t(575)],p.core[t(1580)]][t(1539)](Object[t(1706)](p[t(1266)][t(752)]))[t(1505)]((e=>{const r=t;if(!e[r(731)])return;let n=e.type,a=e[r(1838)],c=a?n+"-"+a:n;!p[r(411)].audio[c]&&(p[r(411)][r(341)][c]={audioLevel:0,levelList:[],isInspired:!1,local:!0,muteAudio:e[r(1822)],publishID:e.id,type:c,startSpeakTime:0,startMuteTime:0,continueSpeakTime:0});const u=p[r(411)].audio[c];if(!u[r(1708)]&&p.audioContext&&e.stream&&e[r(839)][r(1008)]().length>0){let t,o=p[r(1716)][r(1462)](e[r(839)]);l?(t=new f(p[r(1716)],c),o[r(265)](t)):(t=p[r(1716)][r(1e3)](4096,1,1),o[r(265)](t),t[r(265)](p[r(1716)][r(677)]),t[r(247)](r(1198),(e=>{const t=r;let o=e.inputBuffer[t(852)](0);if(o)try{u.audioLevel=Math.floor(100*Math[t(616)].apply(Math,o))}catch(e){s[t(1055)](c,e[t(339)]())}}))),u[r(526)]=o,u.audioProcessor=t}p[r(411)][r(1429)]&&(u[r(350)]=i(u[r(350)])),u[r(510)][r(801)](u[r(350)]),u[r(510)].length>=20&&(p.options[r(1381)]&&s.logInfo(r(1153)+c+", levelList:",u.levelList),u[r(510)]=[]),p[r(411)].enableInspire&&o(u,p.historyReport[r(1199)].inactiveDuration,!!e.pc)}));const c=p[t(411)][t(341)],u={remote:[],local:[]};if(p[t(411)][t(1429)]){const e=p[t(411)][t(1199)][t(694)];let r=0,o=null,n=null;u.inspiredStream=null,Object.keys(c)[t(1524)]>0&&(Object[t(703)](c)[t(1505)]((i=>{const a=t,u=c[i];!n&&u[a(1490)]?n=u:n&&u.isInspired&&s[a(1023)](a(940)+u.publishID);let d=0;u[a(998)]>0&&(d=u[a(282)]-u[a(998)]),(0===r&&d>e||r>u[a(998)]&&d>e)&&(r=u[a(998)],o=u)})),!n&&o&&(n=o,n.isInspired=!0,n[t(421)]=0,s.logInfo(t(437)+n.publishID+t(1477)+n.type+t(1279)+n.local+t(1271)+(n[t(282)]-n[t(998)]))),Object.keys(c)[t(1505)]((e=>{const r=t,o=c[e],n={publishID:o[r(705)],type:o.type,audioLevel:o[r(350)],isInspired:o[r(1490)]};o[r(1490)]&&(u.inspiredStream=n),o[r(1227)]?u[r(1227)][r(801)](n):u[r(1603)].push(n)})),a.emit(a.Event[t(500)],u))}else Object[t(703)](c)[t(1524)]>0&&(Object[t(703)](c).forEach((e=>{const r=t,o=c[e],n={publishID:o[r(705)],type:o[r(558)],audioLevel:o[r(350)]};o[r(1227)]?u[r(1227)].push(n):u.remote[r(801)](n)})),a[t(1167)](a[t(629)][t(500)],u))},p[n(1377)]=function(e,t,r,o,i){const a=n;if(!p[a(1716)]&&s[a(1023)]("get audio report before preview, no permission"),!t)return p[a(622)](),clearInterval(p.audioReport),void delete p.audioReport;p[a(500)]||(p[a(411)].enableInspire=o,i&&(p[a(411)][a(1199)]=i),p[a(500)]=setInterval(p[a(1753)],r))},p[n(555)]=function(e,t,r){const o=n,i=p.core[o(851)];if(!e)return clearInterval(i[o(1119)]),i.audioLevel=0,i[o(510)]=[],void(i[o(839)]&&p[o(1389)]());i.stream=t,p.initAudioContext(),s.logInfo(o(1653)+r),i.auidoInterval=setInterval(p[o(912)],r)},p[n(912)]=function(){const t=n,r=[0,1,2,3,4,4,5,5,5,5,6,6,6,6,6,7,7,7,7,8,8,8,9,9,9,9,9,9,9,9,9,9,9],o=p[t(1266)][t(851)];if(!o.audioProcessor&&p[t(1716)]&&o[t(839)]&&o[t(839)].getAudioTracks()[t(1524)]>0){let e,r=p[t(1716)][t(1462)](o[t(839)]);l?(e=new f(p[t(1716)],o.type),r[t(265)](e)):(e=p[t(1716)][t(1e3)](4096,1,1),r[t(265)](e),e[t(265)](p[t(1716)][t(677)]),e.addEventListener("audioprocess",(e=>{const r=t;let n=e[r(650)][r(852)](0);if(n)try{o[r(350)]=Math[r(1221)](100*Math.max[r(962)](Math,n))}catch(e){s[r(1055)](sid,e[r(339)]())}}))),o.audioSource=r,o.audioProcessor=e}o[t(350)]=(t=>{t=t>=100?99:t;return 10*r[Math[e(1221)](33*t/100)]})(o[t(350)]),o[t(510)][t(801)](o[t(350)]),o[t(510)][t(1524)]>=20&&(s[t(1055)](t(489),o[t(510)]),o[t(510)]=[]),a[t(1167)](a.Event.audioTest,{audioLevel:o[t(350)],type:o[t(558)]})},p.getStreamReport=function(e=!0,t="",r,o={}){const i=n;let s=p[i(411)][i(1363)][t];!s&&(s={timestamp:r.timestamp,bytesSent:0,framesSent:0,framesEncoded:0});let a=r[i(1243)]-s[i(1243)];o.videoFrameWidth=r.frameWidth||0,o[i(1628)]=r[i(527)]||0;let c=i(424)+(e?i(463):"Received");o[i(1855)]=g(r[c],s[c],a,8);let u="videoFPS"+i(e?463:1007),d="frames"+i(e?463:1007);o[u]=g(r[d],s[d],a,1e3);let l="videoFPS"+i(e?1730:1788),f=i(1186)+i(e?1730:1788);o[l]=g(r[f],s[f],a,1e3)},p[n(948)]=function(e=!0,t="",r){const o=n;!p[o(411)].video[t]&&(p[o(411)].video[t]={}),p.historyReport.video[t].timestamp=r[o(1243)];let i="bytes"+(e?o(463):"Received");p[o(411)][o(1363)][t][i]=r[i];let s=o(1186)+o(e?463:1007);p.historyReport[o(1363)][t][s]=r[s];let a=o(1186)+o(e?1730:1788);p[o(411)][o(1363)][t][a]=r[a]},p.routineVideoReport=function(){const t=n;let r={remote:[],local:[]},o=[];Object.values(p[t(1266)].publishers).forEach((t=>{o.push(new Promise((o=>{const n=e;if(!t.pc||"connected"!==t.pc[n(1851)])return o();t.pc[n(1615)]()[n(515)]((e=>{const i=n;let s=t[i(705)],a={publishID:t.publishID,type:t[i(558)]};return e[i(1505)]((e=>{const r=i;e[r(558)]===r(440)&&e.kind===r(1363)&&e.ssrc!==p[r(1266)][r(848)]&&(p.getStreamReport(!1,t.publishID,e,a),p[r(948)](!1,t[r(705)],e))})),r.remote[i(801)](a),!p[i(411)][i(1363)][s]&&(p[i(411)][i(1363)][s]={}),!p[i(411)][i(1363)][s][i(578)]&&(p[i(411)][i(1363)][s][i(578)]={bitrateList:[],FpsList:[]}),p[i(411)][i(1363)][s][i(578)].bitrateList.push(a[i(1855)]),p[i(411)].video[s][i(578)][i(865)].push(a[i(1757)]),p[i(411)][i(1363)][s][i(578)][i(177)][i(1524)]>=20&&(p[i(411)][i(1363)][s][i(578)][i(177)]=[],p[i(411)][i(1363)][s][i(578)][i(865)]=[]),o()}))})))})),[p[t(1266)][t(1054)],p[t(1266)][t(575)],p[t(1266)].custom][t(1539)](Object.values(p.core[t(752)]))[t(1505)]((e=>{const n=t;let i=e.tag,s=e[n(558)],a=i?s+"-"+i:s;e[n(731)]&&e.pc&&e.pc[n(1851)]===n(1624)&&o[n(801)](new Promise((t=>{const o=n;e.pc[o(1615)]()[o(515)]((n=>{const i=o;let s=e.id,c={publishID:e.id,type:a,videoFrameWidth:0,videoFrameHeight:0,videoBitrate:0,videoFPSSent:0,videoFPSEncoded:0},u=[];n[i(1505)]((e=>{const t=i;"outbound-rtp"===e[t(558)]&&"video"===e[t(1687)]&&u.push(e)})),u[i(1465)](((e,t)=>e[i(527)]-t[i(527)]));for(let t=e[i(813)];t>=0;t--){let e=u[t];if(e&&e[i(1427)]){p[i(1636)](!0,a,e,c),p[i(948)](!0,a,e);break}}return r[i(1227)][i(801)](c),!p[i(411)][i(1363)][s]&&(p[i(411)][i(1363)][s]={}),!p[i(411)][i(1363)][s].reportInfo&&(p[i(411)][i(1363)][s].reportInfo={bitrateList:[],FpsList:[]}),p[i(411)][i(1363)][s][i(578)][i(177)][i(801)](c.videoBitrate),p[i(411)].video[s][i(578)][i(865)][i(801)](c[i(1223)]),p[i(411)][i(1363)][s].reportInfo[i(177)].length>=20&&(p[i(411)][i(1363)][s].reportInfo[i(177)]=[],p.historyReport[i(1363)][s].reportInfo.FpsList=[]),t()}))})))})),Promise[t(1745)](o)[t(515)]((()=>{const e=t;Object[e(703)](r)[e(1524)]>0&&a[e(1167)](a[e(629)].videoReport,r)}))},p.streamVideoReport=function(e,t){const r=n;e?p[r(1169)]||(p[r(1169)]=setInterval(p.routineVideoReport,t)):p.videoReport&&(clearInterval(p.videoReport),delete p[r(1169)])},p.emitNetworkReport=function(){const e=n,t=p[e(1266)][e(1184)],r=t[e(874)],o=t[e(855)];t[e(224)];const i={local:[],remote:[],level:0};p.emitNetWeakReport(),Object[e(703)](r)[e(1505)]((t=>{const r=e,o=p[r(1452)](t);o&&i[r(1227)][r(801)]({level:p[r(1411)](t,!0),publishID:o.id})})),Object.keys(o).forEach((t=>{const r=e,o=p[r(1452)](t);o&&i[r(1603)][r(801)]({level:p.getStreamNetLevel(t,!1),subscribeID:o.id,publishID:o[r(705)]})})),i[e(303)]=p[e(1648)](),a[e(1167)](a[e(629)][e(726)],i)},p[n(249)]=function(){const e=n,t=p[e(1266)][e(1184)][e(838)],r={local:[],remote:[]};Object[e(703)](t).forEach((o=>{const n=e,i=t[o],s=p[n(1452)](o);i&&s&&i.isChange&&(i[n(188)]=!1,s.local?(r[n(1227)][n(801)]({weak:!!i.isWeak,publishID:s.id}),i.isWeak&&p.triggerLogUpload(p[n(1537)][n(811)],{errorType:p[n(218)][n(663)],errorCode:p[n(346)][n(663)][n(533)],errorDesc:n(880)})):r.remote[n(801)]({weak:!!i[n(836)],remoteWeak:!!s.weak,subscribeID:s.id,publishID:s[n(705)]}),p[n(1092)](p[n(1266)][n(1668)],s.id,!!i[n(836)]))})),(r[e(1227)][e(1524)]>0||r.remote[e(1524)]>0)&&a[e(1167)](a.Event.netWeakChange,r)},p.routineQosLog=function(){const e=n;clearInterval(p.qosLogTimer),p[e(922)]=setInterval((()=>{const t=e;p.triggerLogUpload(p[t(1537)][t(662)])}),p[e(1199)][e(1589)])},p[n(1576)]=function(){const e=n,t=100;let r=0,o=0,i=0;function c(t){const r=e;p.options[r(1305)]&&t[r(1505)]((e=>{const t=r;if(e[t(429)]===p[t(541)][t(565)]||e[t(1786)]===p.MediaType.Screen){const{streamInfo:r}=e;s[t(1055)](t(1240)+e[t(429)]+"-"+e[t(1404)]+"-"+e[t(393)]+"-"+e.weakDuration+"-"+e[t(1366)]+"-"+e.stuckDuration+t(1390)+!document.hidden+","+r[t(1523)]+"-"+r[t(204)]+"-"+r[t(1534)]),e.stuckDuration&&s.logWarn(t(1467)+e[t(842)]),e[t(842)]/e[t(393)]>.19&&!e[t(417)][t(375)]&&(e[t(417)][t(375)]=!0,a[t(1167)](a.Event[t(375)]))}}))}function u(t,r,o){const n=e,i=typeof t[n(360)]===n(1030)?t[n(360)]:r.stuckCount,s="number"==typeof t[n(1599)]?t[n(1599)]:r[n(842)],a=Date[n(931)](),c={streamInfo:o,mediaType:r[n(558)],stuckCount:i-r.stuckCount,stuckDuration:s-r.stuckDuration,spanDuration:a-r[n(927)],playDuration:r.playDuration,weakDuration:r[n(1641)],mute:r[n(393)]?0:1};return r[n(587)]=i,r[n(842)]=s,r[n(927)]=a,r[n(393)]=0,r.weakDuration=0,c}clearInterval(p[e(1643)]),p.stuckLogTimer=setInterval((()=>{const n=e;if(document[n(1335)]){r=0,o=0;const e=[];Object[n(1706)](p[n(1266)][n(1031)])[n(1505)]((t=>{const r=n;if(p.core[r(1847)][t.id]){const o=p[r(1266)][r(1847)][t.id],n=Date[r(931)](),i=15e3;n-o[r(341)].time>=i&&e.push(u({interruptionCount:0,totalInterruptionDuration:0},o[r(341)],t)),n-o[r(1363)][r(927)]>=i&&e[r(801)](u({interruptionCount:o[r(1363)][r(324)],totalInterruptionDuration:o.video.totalStuckDuration},o[r(1363)],t)),delete p[r(1266)][r(1847)][t.id]}})),e.length>0&&(p.triggerLogUpload(p.LogType[n(1094)],e),c(e))}else{let e=!1,s=!1;r++,r>=6&&(e=!0,r=0),o++,o>=300&&(s=!0,o=0),i++;const a=[],d=[];Object[n(1706)](p[n(1266)][n(1031)])[n(1505)]((r=>{const c=n;!p[c(1266)].stuckData[r.id]&&(p[c(1266)][c(1847)][r.id]={audio:{stuckCount:0,stuckDuration:0,weakDuration:0,time:Date[c(931)](),type:p.MediaType[c(418)],playDuration:0,playTime:Date[c(931)]()},video:{initTime:Date[c(931)](),stuckCount:0,stuckDuration:0,weakDuration:0,time:Date.now(),type:r.type===p.StreamType[c(551)]?p[c(541)][c(565)]:p[c(541)][c(1663)],gapList:[],framesDecoded:0,beginStuckTime:0,lastIntervalTime:Date[c(931)](),totalStuckCount:0,totalStuckDuration:0,playDuration:0,playTime:Date[c(931)]()}});const l=p[c(1266)][c(1847)][r.id];r[c(711)]===p[c(675)].Web&&r[c(558)]===p[c(1155)].Screen&&(i>=12?(i=0,e=!0):e=!1),d[c(801)](new Promise((n=>{const i=c;if(!r.pc||r.pc[i(1851)]!==i(1624)||!r[i(854)]||!p.isWsOpen())return n();r.pc.getStats()[i(515)]((c=>{const d=i;c[d(1505)]((n=>{const i=d;if(n[i(558)]===i(440)&&n[i(1687)]===i(341)){const e=Date.now();!(r[i(1822)]||r[i(181)])&&(l.audio[i(393)]+=e-l[i(341)][i(602)]),l.audio[i(602)]=e,s&&a[i(801)](u(n,l[i(341)],r))}else if(n[i(558)]===i(440)&&"video"===n[i(1687)]){const c=l[i(1363)],d=r[i(389)]||r[i(201)];if(typeof n[i(1523)]===i(1030)&&n.framesDecoded>0){c.gapList[i(801)]({mute:d,framesDecoded:n[i(1523)]});const s=p[i(1266)][i(1184)][i(838)][r.id],a=s&&s[i(836)]||r[i(1371)],u=Date[i(931)]();if(!d){const e=u-c[i(602)];c.playDuration+=e,a&&(c[i(1641)]+=e)}if(c[i(602)]=u,e){if(d||a)c[i(405)]&&c[i(554)]&&(c.totalStuckDuration+=c.lastIntervalTime-c[i(405)]),c[i(405)]=0;else{if(n.framesDecoded<=c[i(1523)]){if(!c[i(405)]){c[i(405)]=c[i(554)],c[i(324)]++;const e=c.gapList[i(488)](0,c[i(803)].length-6);e&&e[i(1505)]((e=>{const r=i;!e.mute&&c.framesDecoded===e[r(1523)]&&(c[r(405)]-=t)}))}}else if(c.beginStuckTime){c[i(748)]+=c.lastIntervalTime-c[i(405)];c[i(803)][i(488)](c[i(803)].length-6,c[i(803)][i(1524)]-1)&&c[i(803)].forEach((e=>{const r=i;!e[r(1366)]&&c[r(1523)]===e[r(1523)]&&(c[r(748)]+=t)})),c[i(405)]=0}r[i(1534)]=n[i(1534)],r[i(204)]=n.totalFreezesDuration,r[i(1523)]=n[i(1523)]}c[i(394)]&&(c[i(324)]=0,c[i(748)]=0,Date[i(931)]()-c[i(394)]>400&&(c[i(394)]=null)),n.interruptionCount=c[i(324)],n[i(1599)]=c[i(748)],c[i(1523)]=n[i(1523)],c[i(554)]=Date.now()}o>12&&c.gapList[i(1524)]>0&&c[i(803)].shift()}s&&(c[i(405)]&&(c.totalStuckDuration+=c.lastIntervalTime-c.beginStuckTime,c[i(405)]=0,n[i(1599)]=c[i(748)]),a[i(801)](u(n,c,r)),c.gapList=[])}})),n()})).catch((e=>{n()}))})))})),d[n(1524)]>0&&Promise[n(1745)](d).then((()=>{const e=n;s&&a[e(1524)]>0&&(p[e(1433)](p[e(1537)][e(1094)],a),c(a))}))}}),t)},p[n(1035)]=function(e,t,r){let o=0;return o=e<=t?1:e>=r?0:1-(e-t)/(r-t),o},p[n(1545)]=function(e,t,r){let o=0;return o=e<=t?0:e>=r?1:(e-t)/(r-t),o},p[n(1232)]=function(e){const t=n;let r,o=0;return r=e.tag?JSON.parse(JSON[t(1014)](p[t(1199)].cameraExLayers)):JSON[t(1506)](JSON.stringify(p[t(1199)][e[t(558)]+t(519)])),r[t(488)](e[t(813)]+1,r.length-e[t(813)]-1),r[t(1505)]((e=>{o+=e[t(716)]})),o},p[n(1770)]=function(e,t){const r=n;let o;return o=e[r(1838)]?JSON[r(1506)](JSON[r(1014)](p.options[r(1640)])):JSON.parse(JSON[r(1014)](p[r(1199)][e[r(558)]+r(519)])),o[t][r(716)]},p.getNetworkMinBw=function(e,t){const r=n,{kMinVideoBitrate:o,kMinVideoBitrate2:i}=p.core[r(1184)].const;let s=Math[r(1221)](e===p[r(1155)].Screen?t/4:t/3);return s>i?s=i:s<o&&(s=o),s},p[n(1648)]=function(){const e=n,t=p[e(1266)][e(1184)],r=Object[e(703)](t.uplinkStats),o=Object.keys(t[e(855)]);if(0===r.length&&0==o[e(1524)]||!p.ws||p.ws[e(1168)]!==WebSocket[e(215)])return 0;let i=1,s=0,a=!1;r.length>0&&(i=0,r[e(1505)]((r=>{const o=e,n=t[o(874)][r],c=t[o(838)][r];n.muteAudio&&n[o(389)]||(s++,(!c||!c.isWeak)&&(i+=n[o(303)]),!n.muteVideo&&(a=!0))})));let c=1,u=0,d=!1;o.length>0&&(c=0,o[e(1505)]((r=>{const o=e,n=t.downlinkStats[r],i=t.netWeakStats[r];n[o(1822)]&&n.muteVideo||(u++,(!i||!i[o(836)])&&(c+=n[o(303)]),!n.muteVideo&&(d=!0))})));let l=1;0==s&&0==u?l=0:s>0&&u>0?a&&d?l=(i+c)/(s+u):d?!a&&(l=c/u):l=i/s:s>0?l=i/s:u>0&&(l=c/u);let f=0;return(s>0||u>0)&&(f=Math[e(1221)](4*l+1.5)),f},p[n(1411)]=function(e,t,r=!1){const o=n,i=p[o(1266)].network,s=p[o(1452)](e),a=t?i[o(874)][e]:i[o(855)][e],c=i[o(838)][e];let u=0;return!r&&(c&&c[o(836)]||s&&s[o(1371)])?u=1:a&&a[o(303)]&&(u=Math[o(1221)](4*a[o(303)]+1.5)),u},p[n(680)]=function({streamInfo:e,pair:t,videoOutList:r,audioOut:o,videoRemoteInList:i,audioRemoteIn:s}){const a=n,c=p.core.network.uplinkStats[e.id],{rttMin:u,rttMax:d,kMinVideoBitrate:l,kMinVideoBitrate2:f,fractionLostMin:m,fractionLostMax:b}=p.core[a(1184)][a(224)],v=p[a(1232)](e),y={id:e.id,type:e.type,muteAudio:e[a(1822)],muteVideo:e.muteVideo,timestamp:t?t[a(1243)]:Date[a(931)](),level:0,outBandWidth:v};if(-1===e[a(813)])return y.level=1,y;if(!t)return c;let h=p[a(427)](e[a(558)],p[a(1770)](e,0));if(y[a(1737)]=t[a(1334)],r[a(488)](e.layerIndex+1,r.length-e.layerIndex-1),i[a(488)](e[a(813)]+1,i.length-e.layerIndex-1),s&&(y[a(1633)]=s.roundTripTime,y[a(1264)]=s[a(1423)]),o&&(y[a(1620)]=o[a(1387)]),i&&i[a(1524)]>0){const e=i[i[a(1524)]-1];y.videoRtt=e[a(1694)],y[a(1348)]=0,i[a(1505)]((e=>y[a(1348)]+=e[a(1423)]))}if(r&&r[a(1524)]>0){const e=r[r.length-1];y[a(308)]=0,y[a(1671)]=0,r.forEach((e=>{const t=a;y[t(308)]+=e.packetsSent,y[t(1671)]+=e[t(1427)]})),y[a(306)]=e[a(306)],c&&(y[a(477)]=y[a(306)]<c[a(306)]||y[a(306)]-c.framesSent>100?15:Math.floor((y[a(306)]-c[a(306)])/(y[a(1243)]-c[a(1243)])*1e3),y[a(1737)]=Math.floor(8*(y.videoBytesSent-c.videoBytesSent)/(y.timestamp-c[a(1243)])*1e3),y[a(1348)]&&c[a(1348)]<y.videoPktsLost&&(y[a(1737)]-=Math[a(1221)](1200*(y.videoPktsLost-c[a(1348)])*8/(y[a(1243)]-c[a(1243)])*1e3)))}if(!c)return y[a(303)]=0,y;let g=1,w=1,S=1,I=1,E=1;if(s&&!y[a(1822)]){y[a(1633)]&&(w=p[a(1035)](y[a(1633)],u,d));const e=y[a(1620)]-c.audioPktsSent,t=y.audioPktsLost-c[a(1264)];if(e>0&&t>0){const r=t/e*100;I=p.fetchRangePercentL(r,m,b)}}if(i&&i[a(1524)]>0&&!y[a(389)]){y[a(1834)]&&(S=p[a(1035)](y.videoRtt,u,d));const e=y.videoPktsSent-c.videoPktsSent,t=y.videoPktsLost-c[a(1348)];if(e>0&&t>0){const r=t/e*100;E=p[a(1035)](r,m,b)}}return!y.muteVideo&&v>0&&y.outBandWidth&&i&&i.length>0&&r&&r[a(1524)]>0&&(g=p[a(1545)](y[a(1737)],h,v)),y[a(1822)]&&y[a(389)]?y.level=0:y[a(1822)]||y.muteVideo?y[a(1822)]?y[a(303)]=.1*S+.2*E+.7*g:y[a(389)]&&(y.level=.5*w+.5*I):y[a(303)]=.1*(w+S)+.1*(I+E)+.6*g,y},p[n(1384)]=function({streamInfo:e,pair:t,video:r,audio:o}){const i=n,s=p[i(1266)].network[i(855)][e.id],{delayMin:a,delayMax:c,jitterMin:u,jitterMax:d,kMinVideoFrameRate:l}=p[i(1266)][i(1184)][i(224)],f=e.layers[e[i(813)]],m=p[i(427)](e[i(558)],e.layers[0].targetBw),b={};if(b.id=e.id,b[i(558)]=e.type,b[i(1822)]=e[i(1822)]||e[i(181)],b[i(389)]=e[i(389)]||e.localMuteVideo||e[i(197)],b[i(1243)]=t?t[i(1243)]:Date[i(931)](),b[i(303)]=0,b[i(585)]=f[i(716)],!t)return s;if(o&&(b[i(1552)]=1e3*t[i(1299)]+(o[i(1088)]?o.jitterBufferDelay/o[i(1088)]*1e3:0),b[i(952)]=1e3*o.jitter,b[i(1296)]=o[i(1750)],b.audioPktsLost=o[i(1423)]),r&&(b[i(1357)]=1e3*t[i(1299)]+(r[i(1088)]?r[i(696)]/r[i(1088)]*1e3:0),b[i(404)]=(r[i(646)]-r.framesDecoded-r[i(571)])/r[i(1579)]*1e3,b[i(1135)]=1e3*r[i(1173)],b[i(547)]=r.packetsReceived,b[i(1348)]=r[i(1423)],b.framesReceived=r[i(646)],b.videoBytesReceived=r.bytesReceived,s&&s.videoBytesReceived&&(b[i(585)]=Math[i(1221)](8*(b[i(1235)]-s[i(1235)])/(b[i(1243)]-s[i(1243)])*1e3))),!s)return b[i(303)]=0,b;r&&(b[i(477)]=Math.floor((b.framesReceived-s[i(646)])/(b[i(1243)]-s[i(1243)])*1e3));let v=1,y=1,h=1,g=1;return o&&!b.muteAudio&&(y=p[i(1035)](b[i(1552)],a,c),h=p.fetchRangePercentL(b[i(952)],u,d)),r&&!b[i(389)]&&(p.fetchRangePercentL(b[i(1357)],a,c),p[i(1035)](b[i(1135)],u,d),f.targetBw>0&&b[i(585)]&&(v=p[i(1545)](b[i(585)],m,f[i(716)])),r.framesPerSecond>0&&(g=p.fetchRangePercentH(b[i(477)],l,f.frameRate))),b.muteAudio&&b[i(389)]?b[i(303)]=0:b.muteAudio||b[i(389)]?b.muteAudio?b.level=.8*v+.2*g:b.muteVideo&&(b[i(303)]=.5*y+.5*h):b[i(303)]=.1*y+.1*h+.1*g+.7*v,b},p.updateNetWeakStats=function(e,t){const r=n,o=p[r(1266)][r(1184)][r(838)],{kNetUpWeakBitrate:i,networkQuality:s,kNetDownWeakFps:a}=p[r(1266)][r(1184)][r(224)],c=Date[r(931)](),u=p[r(1411)](e.id,e[r(1227)],!0),d=t[r(477)],l=e[r(1227)]?t[r(1737)]:t.inBandWidth,f=15e3,m=p.options[r(969)]+500;let b=null;function v(e){const t=r;e[t(599)]=0,e[t(274)]=0,e[t(984)]=0,e[t(1183)]=0,e[t(1630)]=0}0!==u&&(o[e.id]?b=o[e.id]:(b={id:e.id,averageBitrate:0,totalBitrate:0,sampleNum:0,updateTime:0,startLowBitrateTime:0,startNormalBitrateTime:0,isWeak:!1},o[e.id]=b),b[r(502)]=c,e[r(389)]||e.localMuteVideo?(b.startLowBitrateTime=0,b.startNormalBitrate_time=0,v(b)):(e[r(1227)]?u<=s[r(1783)]&&!b[r(836)]?0===b[r(1304)]&&(b[r(1304)]=c,v(b)):u>s[r(1783)]&&b.isWeak&&0===b[r(1522)]&&(b[r(1522)]=c,v(b)):(u<=s[r(586)]||d<=a)&&!b.isWeak?0===b[r(1304)]&&(b[r(1304)]=c,v(b)):u>s[r(586)]&&d>a&&b.isWeak&&0===b.startNormalBitrateTime&&(b.startNormalBitrateTime=c,v(b)),b[r(1304)]>0&&(b[r(1630)]++,b[r(984)]+=l,b[r(1183)]+=d,b[r(274)]=b[r(984)]/b.sampleNum,b[r(599)]=b[r(1183)]/b[r(1630)],e[r(1227)]?u>s[r(1783)]?(b[r(1304)]=0,v(b)):c-b[r(1304)]+m>f&&(b[r(1304)]=0,v(b),!b[r(836)]&&(b[r(836)]=!0,b[r(188)]=!0)):u>s[r(586)]&&d>a?(b[r(1304)]=0,v(b)):c-b[r(1304)]+m>f&&(b[r(1304)]=0,v(b),!b[r(836)]&&(b[r(836)]=!0,b.isChange=!0))),b[r(1522)]>0&&(b[r(1630)]++,b[r(984)]+=l,b[r(1183)]+=d,b[r(274)]=b[r(984)]/b[r(1630)],b.averageVideoFps=b.totalVideoFps/b[r(1630)],e[r(1227)]?u<=s.bad?(b.startNormalBitrateTime=0,v(b)):c-b[r(1522)]+m>f&&(b[r(1522)]=0,v(b),b[r(836)]&&(b[r(836)]=!1,b[r(188)]=!0)):u<=s[r(586)]||d<=a?(b[r(1522)]=0,v(b)):c-b[r(1522)]+m>f&&(b[r(1765)]=0,v(b),b.isWeak&&(b[r(836)]=!1,b[r(188)]=!0)))))},p[n(1026)]=function(){const t=n,r=[];Object[t(1706)](p[t(1266)][t(1031)])[t(1505)]((e=>{const o=t;r[o(801)](new Promise((t=>{const r=o;if(!e.pc||e.pc.connectionState!==r(1624))return t();e.pc[r(1615)]().then((o=>{const n=r,i={streamInfo:e,video:null,audio:null,pair:null};o[n(1505)]((e=>{const t=n;"candidate-pair"===e[t(558)]&&"succeeded"===e[t(195)]?i[t(718)]=e:"inbound-rtp"===e.type&&e.ssrc!==p[t(1266)].probatorSsrc&&(e[t(1687)]===t(1363)?e[t(1147)]!==t(251)&&(i[t(1363)]=e):i.audio=e)}));const s=p[n(1384)](i);return s&&(p[n(1266)].network[n(855)][e.id]=s,i[n(1363)]&&p[n(996)](e,p[n(1266)][n(1184)].downlinkStats[e.id])),t()}))})))}));[p[t(1266)][t(1054)],p[t(1266)][t(575)],p[t(1266)][t(1580)]][t(1539)](Object[t(1706)](p.core[t(752)]))[t(1505)]((o=>{const n=t;o[n(731)]&&o.pc&&o.pc[n(1851)]===n(1624)&&r.push(new Promise((t=>{const r=n;o.pc[r(1615)]().then((n=>{const i=r,s={streamInfo:o,pair:null,videoOutList:[],audioOut:null,videoRemoteInList:[],audioRemoteIn:null};n.forEach((t=>{const r=e;t[r(558)]===r(438)&&t.state===r(497)?s[r(718)]=t:t[r(558)]===r(316)?t[r(1687)]===r(1363)?s[r(1519)][r(801)](t):s.audioRemoteIn=t:"outbound-rtp"===t[r(558)]&&(t.kind===r(1363)?s[r(744)][r(801)](t):s[r(758)]=t)}));const a=p[i(680)](s);return a&&(p.core[i(1184)][i(874)][o.id]=a,p[i(996)](o,a)),t()}))})))})),Promise[t(1745)](r)[t(515)]((()=>{p.emitNetworkReport()}))},p[n(182)]=function(e,t){const r=n;clearInterval(p[r(726)]),delete p[r(726)],e&&(p[r(726)]=setInterval(p.routineNetworkReport,t))},p[n(886)]={},p[n(1204)]=function(e=!0,t="",r=!0,o="",i){const a=n;let u;if(e){if(u=o?p.core[a(752)][o]:p[a(1266)][t],!u[a(731)]||!u[a(839)])return s[a(1023)](a(1396),t,"before preview"),p[a(749)](p[a(1215)][a(1616)],"record local before preview")}else{if(u=p.getStreamInfo(t),!u)return s[a(1023)](a(334),t,"not found"),p[a(749)](p[a(1215)][a(1616)],a(935));if(!u[a(854)])return s[a(1023)](a(1396),t,a(1698)),p[a(749)](p[a(1215)].RecordError,a(610))}let l=o?t+"-"+o:t;if(!r)return p[a(886)][l]?(p.recorders[l][a(392)][a(1508)](),p[a(886)][l][a(300)]=i,p.recorders[l][a(1275)]):(s[a(485)]("can not stop recording, stream",l,"not found"),p[a(749)](p[a(1215)][a(1616)],a(207)+l));{if(p[a(886)][l])return;if(!d)return;let e={chunks:[],recorder:new d(u[a(839)])};e[a(1275)]=new Promise((t=>{e[a(1725)]=t})),e[a(392)][a(1120)]=t=>{const r=a;e[r(1558)][r(801)](t[r(1773)])},e[a(392)][a(1498)]=function(){const t=a;let r=new File([new Blob(e.chunks,{type:e[t(392)][t(818)]})],t(1419)+Date[t(931)]()+t(1046),{type:e[t(392)][t(818)]});e[t(1558)]=[],delete p[t(886)][l],e[t(300)]&&c&&c(r),e[t(1725)](r)},e[a(392)].start(),p.recorders[l]=e}},p.recordTest=function(e=!0,t="",r=!0,o=""){const i=n;let a,u=1;if(a=p[i(1452)](t),!a[i(854)])return;let l=o?t+"-"+o:t;if(r){if(p[i(886)][l])return;if(!d)return;let e={chunks:[],type:a[i(558)],index:u++};e.recorder=new d(a.stream,{}),e[i(392)].ondataavailable=t=>{const r=i;e.chunks[r(801)](t[r(1773)])},e[i(392)][i(1498)]=function(){const t=i;if(c){let r=new File([new Blob(e.chunks,{type:e[t(392)][t(818)]})],t(1419)+e[t(558)]+"-"+Date[t(931)]()+"-"+e[t(184)]+".webm",{type:e.recorder[t(818)]});c(r)}e[t(1558)]=[]},e[i(392)][i(738)]=function(e){console[i(605)]("recordTest",e)},e[i(392)][i(1824)](),p.recorders[l]=e}else{if(!p[i(886)][l])return s[i(485)]("can not stop recording, stream",l,i(217)),p.emitError(p[i(1215)][i(1616)],i(207)+l);p[i(886)][l][i(392)].stop(),delete p[i(886)][l]}},p[n(843)]=function(e=!0,t="",r=""){const o=n;let i;if(e)if(p[o(1266)][o(752)][r]&&p[o(1266)][o(752)][r][o(731)]&&p[o(1266)][o(752)][r].videoElem)i=p.core[o(752)][r][o(465)];else{if(!(p[o(1266)][t]&&p[o(1266)][t][o(731)]&&p.core[t][o(465)]))return s[o(485)]("screenshot local before preview"),p[o(749)](p[o(1215)][o(240)],o(1294)+(r?t+"-"+r:t)+o(870));i=p[o(1266)][t].videoElem}else{let e=p[o(1452)](t);if(!e||!e.ready||!e.videoElem)return s[o(485)](o(1593)),p.emitError(p[o(1215)][o(240)],o(1845)+t);i=e[o(465)]}let a=document.createElement(o(1288));return a[o(723)]=i[o(1177)]||640,a[o(1669)]=i.videoHeight||360,a[o(743)]("2d")[o(431)](i,0,0,a[o(723)],a[o(1669)]),a[o(795)](o(977))},p[n(186)]=function(e="",t="",r,o,i,s,a,c,u,d){p[n(1422)](e,t,i,r,o,u,d,a,s,c)},p[n(816)]=function(e,t,r,o,i,s,a,c,u,d){p[n(473)](e,t,r,o,i,s,a,c,u,d)},p.userPlay=async function(){const e=n;s[e(1055)]("[userPlay]: "+p[e(1266)].unableAutoPlay[e(1524)]);const r=p[e(1266)][e(1554)],o=[];p[e(1266)][e(1554)]=[],r.forEach((t=>{const r=e;t&&t[r(1250)]&&t[r(1250)].active?o.push(new Promise(((e,o)=>{const n=r;t.play()[n(515)]((()=>{e(t)}))[n(432)]((()=>{s[n(485)]("elem play fail:"+t.id),o(t)}))}))):p[r(1266)].unableAutoPlay.push(t)})),(e=>{const r=t;return Promise&&Promise[r(1300)]?Promise[r(1300)](e):new Promise((t=>{const o=r;if(0===e[o(1524)])return t([]);const n=new Array(e[o(1524)]);let i=e[o(1524)];const s=()=>{i--,0===i&&t(n)};e[o(1505)](((e,t)=>{const r=o;e[r(515)]((e=>{const o=r;n[t]={status:o(641),value:e},s()}))[r(432)]((e=>{const o=r;n[t]={status:o(1742),reason:e},s()}))}))}))})(o)[e(515)]((t=>{const r=e;let o=!1;t[r(1505)]((e=>{const t=r;e[t(313)]===t(1742)&&(o=!0,p[t(1266)][t(1554)][t(801)](e[t(295)]))})),o&&(s.logError(r(239)+p[r(1266)][r(1554)][r(1524)]),setTimeout((()=>{a[r(1167)]("needUserPlay")}),1e3))}))},p[n(1689)]=async function(e){const t=n;let r=t(1689),o=null;if(e){if(p[t(886)][r])return void s.logError("recordScreen has already start, sid:"+r);if(!d)return void s[t(485)]("browser is not support MediaRecorder");try{let e={audio:p[t(1199)][t(1267)],video:p[t(1199)][t(786)]};e[t(1363)]&&(e[t(1363)]={frameRate:{ideal:p[t(1199)][t(194)][0][t(1365)]}}),o=await navigator[t(796)].getDisplayMedia(e)}catch(e){if(s.logError(t(1012)+e),e.toString()[t(199)]("NotAllowedError")>=0)return a[t(1167)](a.Event[t(575)],!1);p[t(1513)]({type:p[t(1155)][t(1663)],desc:t(449),error:e})}var i={audioBitsPerSecond:128e3,videoBitsPerSecond:25e5,mimeType:t(271)};let e={chunks:[],recorder:new d(o,i),stream:o};e[t(392)][t(1120)]=r=>{const o=t;e[o(1558)][o(801)](r[o(1773)])},e[t(392)][t(1498)]=function(){const o=t;c&&c(new File([new Blob(e[o(1558)],{type:e.recorder[o(818)]})],o(1419)+Date[o(931)]()+".webm",{type:e.recorder[o(818)]})),e[o(1558)]=[],delete e[o(839)],delete p[o(886)][r]},e.recorder[t(1824)](),p[t(886)][r]=e}else{if(!p[t(886)][r])return s[t(485)](t(444),r,t(217)),p[t(749)](p[t(1215)].RecordError,t(207)+r);p[t(886)][r][t(392)][t(1508)](),p[t(256)](p[t(886)][r][t(839)])}},p[n(1459)]=async(t={},r)=>{const i=n;if(null===t)return;t instanceof Array?t[i(1505)]((e=>{const t=i;Object[t(703)](e)[t(1505)]((t=>{(void 0===e[t]||null===e[t]||""===e[t])&&(e[t]=-1)}))})):t instanceof Object&&Object.keys(t)[i(1505)]((e=>{(void 0===t[e]||null===t[e]||""===t[e])&&(t[e]=-1)}));const s=t=>new Promise(((r,n)=>{const i=e,s={url:t[i(557)],timeout:t[i(972)],method:t.method};t[i(278)]===i(1287)?s[i(844)]=t[i(844)]:s[i(1773)]=t[i(1773)],o(s).then((e=>{r(e)})).catch((e=>{200===e[i(313)]?r():n(e)}))}));if(t instanceof Array&&t[i(1524)]>4){const e=Math[i(987)](t[i(1524)]/4);for(let o=0;o<e;o++){let n=t[i(1515)](4*o,o!==e-1?4*o+4:t[i(1524)]);b[i(1180)](s,n,r)}}else b[i(1180)](s,t,r)},p[n(945)]=function(){const e=n,t={webSocketSupported:!(!window[e(881)]||typeof window[e(881)]!==e(513)),webRTCSupported:!(!window[e(351)]||typeof window[e(351)]!==e(513)),mediaDevicesSupported:!!navigator.mediaDevices,h264DecodeSupported:!1};if(t.webRTCSupported){const r=RTCRtpReceiver.getCapabilities("video"),o=t=>{const r=e;return t[r(1224)][r(660)]((e=>{const t=r;return e.mimeType[t(1399)]()===t(774)}))||[]};t[e(1535)]=o(r)[e(1524)]>0}return t},p[n(1234)]=function(e){const t=n;if(p[t(1266)][t(507)]!==e)if(p[t(1266)][t(1528)]){const r=[p[t(584)].anchor,p[t(584)][t(1130)]],o=[p[t(584)][t(825)],p.UserRole[t(1556)]];r[t(363)](p.core.userRole)&&r[t(363)](e)||o[t(363)](p[t(1266)][t(507)])&&o[t(363)](e)?(p[t(707)](e),p[t(1660)](!0),p[t(1100)]({userRole:e})):p.emitError(p.ErrorCode[t(434)])}else p[t(1100)]({userRole:e});else s[t(1023)](t(1125))},p[n(259)]=function(){const e=n;p[e(1266)][e(1528)]&&!p[e(1266)][e(1560)]?(p.core[e(1560)]=!0,p[e(1266)].camera[e(1749)]=p[e(1266)][e(1054)][e(1822)],p[e(1266)][e(1054)].pc&&p[e(1426)](p[e(1155)][e(551)],{muteAudio:!0}),p[e(1266)][e(575)][e(1749)]=p[e(1266)][e(575)].muteAudio,p.core[e(575)].pc&&p[e(1426)](p[e(1155)][e(1663)],{muteAudio:!0}),p[e(1266)].custom[e(1749)]=p.core[e(1580)][e(1822)],p[e(1266)][e(1580)].pc&&p.muteLocalStream(p[e(1155)][e(1663)],{muteAudio:!!p[e(1266)][e(1580)][e(1749)]},!1,p[e(831)][e(550)]),Object[e(703)](p[e(1266)][e(752)])[e(1505)]((t=>{const r=e;p[r(1266)][r(752)][t][r(1749)]=p[r(1266)][r(752)][t][r(1822)],p[r(1266)].cameraEx[t].pc&&p[r(1426)](t,{muteAudio:!0})})),Object[e(703)](p.core[e(1031)]).forEach((t=>{const r=e;p[r(1266)][r(1031)][t][r(1265)]=p[r(1266)][r(1031)][t].localMuteAudio,p.muteRemoteStream(t,{muteAudio:!0})}))):s[e(1023)](e(1080)+!!p.core.session+e(230)+p[e(1266)][e(1560)])},p[n(679)]=function(){const e=n;p[e(1266)][e(1528)]&&p.core.muteAllStreamAudio?(p.core[e(1560)]=!1,p[e(1426)](p[e(1155)][e(551)],{muteAudio:!!p[e(1266)].camera[e(1749)]}),p[e(1426)](p[e(1155)].Screen,{muteAudio:!!p[e(1266)][e(575)][e(1749)]}),p.muteLocalStream(p[e(1155)][e(1663)],{muteAudio:!!p.core.custom[e(1749)]},!1,p[e(831)].Custom),Object[e(703)](p[e(1266)][e(752)])[e(1505)]((t=>{const r=e;p.muteLocalStream(t,{muteAudio:!!p[r(1266)][r(752)][t][r(1749)]})})),Object[e(703)](p[e(1266)][e(1031)])[e(1505)]((t=>{const r=e;if(p[r(1808)](t,{muteAudio:!!p[r(1266)][r(1031)][t][r(1265)]}),x.android){const e=p.core[r(1031)][t][r(1746)];e&&(e.pause(),setTimeout((()=>{e[r(805)]()}),50))}}))):s[e(1023)](e(817)+!!p[e(1266)].session+e(230)+p[e(1266)][e(1560)])},p[n(1461)]=function([e]){const t=n;return e===t(760)?[{type:e,enable:p[t(1199)][t(1647)],cache:p[t(760)][t(1741)]()}]:null},p[n(1647)]=function(t){return new Promise(((r,o)=>{const n=e;let i={desc:""};if(p[n(1199)][n(1647)]===t)return r(!0);if(p[n(1266)][n(1054)][n(1588)])return i[n(596)]=n(1743),o(i);if(p[n(1199)][n(1647)]=t,!(p[n(1266)][n(1054)].preview&&p.core[n(1533)].audioinput&&p[n(1266)].camera[n(1148)]))return r(!0);if(t){p[n(760)][n(1572)]()[n(557)]?p.denoiser[n(701)]()[n(515)]((async()=>{const e=n;if(!p[e(1266)][e(1533)].audioinput)throw new Error(e(1380));const t=p.getAudioConstraints(p[e(1266)][e(1533)][e(467)]);p[e(1353)](t[e(341)]);const o=await navigator.mediaDevices[e(835)](t);p[e(1266)][e(1054)].audioTrack=o[e(1008)]()[0],p[e(1338)](p[e(499)][e(418)],p[e(1266)][e(1054)]);let i=await p[e(760)].start(o);return p[e(1266)][e(1054)][e(1421)]=p[e(1266)][e(1054)].audioTrack,p[e(1266)].camera[e(1148)]=i[e(1008)]()[0],p[e(1219)](p[e(1266)][e(1054)].audioTrack,e(1647),p[e(1266)][e(1054)]),p[e(1338)](p.StreamTrack.Audio,p.core[e(1054)],!0),await p[e(841)](),p[e(622)](p[e(1155)].Camera),p[e(1266)].camera.pc&&await p[e(213)](p[e(499)][e(418)],p[e(1266)][e(1054)]),r(!0)})).catch((e=>{const t=n;i[t(596)]=t(1116)+e[t(339)](),o(i)})):(i[n(596)]=n(896),o(i))}else{if(!p[n(760)][n(625)]())return r(!0);p[n(760)][n(1508)](),p[n(1492)](p[n(499)][n(418)]).then((()=>{r(!0)}))[n(432)]((e=>{const t=n;i.desc=e[t(339)](),o(i)}))}}))},p[n(1022)]=function(){const e=n;a.destroy(),p[e(1774)](null,!1),p[e(652)](null,!1),Object.values(p[e(1266)][e(752)])[e(1505)]((t=>{const r=e;t[r(558)]===p[r(1155)][r(551)]?p[r(894)](null,t[r(1838)],"","",!1):p[r(516)](null,t[r(1838)],!1)})),p[e(291)](null,"",!1),p[e(185)](!0)},p[n(1383)]=function(e=""){const t=n;if(e&&"string"==typeof e&&!(e.length<45))try{let r=CryptoJS.enc[t(1686)][t(1506)](Base64.decode(e[t(713)](0,22))),o=CryptoJS[t(366)][t(1686)].parse(Base64[t(684)](e[t(713)](22,22))),n=e[t(713)](44);for(let e=0,r=(4-n[t(1524)]%4)%4;e<r;e++)n+="=";return CryptoJS[t(223)][t(1145)](n,r,{iv:o}).toString(CryptoJS[t(366)][t(1686)])}catch(e){s[t(485)](t(314)+e)}},p}function X(){const e=t;let o=q(),n=o[e(847)],i=o[e(332)];return{version:r,logs:function(t=!1){const r=e;return n.logToFile(o[r(1266)],t)},setDNS:function(t=[]){const r=e;n[r(1055)](r(1123)+JSON[r(1014)](t||[])+")"),0!==t.length&&t[r(1505)]((e=>{const t=r;e.domain&&e.ip&&(o[t(1185)][e[t(755)]]=e.ip)}))},init:function(t={}){o[e(474)](t)},addListener:i[e(1587)][e(1356)](i),on:i[e(1587)].bind(i),removeListener:i[e(1473)][e(1356)](i),removeAllListener:i[e(742)][e(1356)](i),askForPermission:function(t=!1,r=!1){const i=e;if(n.logInfo("askForPermission(audio:"+t+", video:"+r+")"),!t&&!r)return o[i(749)](o.ErrorCode[i(1208)],i(1810));o[i(899)](t,r)[i(515)]()},join:function(t,r,i="",s=o.Area[e(923)],a){const c=e;return n[c(1055)](c(978)+t+", uid:"+r+c(1192)+i+c(651)+s+c(492)+a+")"),t&&r&&typeof t===c(645)&&typeof r===c(645)?(typeof a===c(297)&&(a=o.core[c(507)]),typeof a!==c(1030)||void 0===Object[c(1706)](o[c(584)])[c(1431)]((e=>e===a))?o[c(749)](o[c(1215)][c(1208)],c(582)):((!i||typeof i!==c(645))&&(n[c(1023)]("join widthout uName"),i=""),void o[c(1705)](t,r,i,s,a))):o[c(749)](o[c(1215)][c(1208)],"join(room:"+t+c(244)+r+c(1192)+i+c(1662)+s+")")},leave:function(){const t=e;n[t(1055)](t(1553)),o[t(185)]()},preview:function(t=null,r=o[e(1155)][e(551)],i=!0,s=[]){const a=e;return n[a(1055)](a(695)+(t?t.id:"")+a(1228)+r+", open:"+i+")"),Object[a(1706)](o[a(1155)])[a(199)](r)<0?o[a(749)](o[a(1215)].ParamsError,a(731)):s&&s[a(1524)]>0&&("denoiser"!==s[0].type||!s[0].url)?o.emitError(o.ErrorCode.ParamsError,a(301)):void(r===o[a(1155)].Camera?o[a(1774)](t,i,!1,!1,s):o[a(652)](t,i))},previewEx:function(t=null,r,i,s,a){const c=e;return n[c(1055)](c(304)+(t?t.id:"")+c(365)+r+c(1767)+i+c(688)+s+c(570)+a+")"),r?!a||i||s?void o[c(894)](t,r,i,s,a):o[c(749)](o.ErrorCode[c(1208)],"previewEx"):o[c(749)](o.ErrorCode[c(1208)],c(1442))},previewScreenEx:function(t=null,r,i){const s=e;if(n[s(1055)](s(1328)+(t?t.id:"")+s(365)+r+s(570)+i+")"),!r)return o[s(749)](o.ErrorCode[s(1208)],s(343));o[s(516)](t,r,i)},previewCustom:function(t=null,r="",i=!0,s=!1,a=!1){const c=e;if(n[c(1055)](c(409)+!!t+", url:"+r+", open:"+i+c(1259)+s+c(709)+a),i){if(!(t&&t instanceof HTMLElement))return o[c(749)](o[c(1215)][c(1208)],"[previewCustom] videoElement need, and shoud be HTMLElement");if(!r||typeof r!==c(645))return o[c(749)](o[c(1215)][c(1208)],"[previewCustom] url error")}o[c(291)](t,r,i,s,a)},setCustomProfile:function(t,r,i){const s=e;return n.logInfo(s(770)+!!t+s(183)+r+",layers:"+(i?JSON[s(1014)](i):"")),t instanceof HTMLElement?r&&"string"==typeof r?o[s(1266)][s(1580)][s(731)]?void o[s(1311)](t,r,i):o.emitError(o[s(1215)].ParamsError,s(1549)):o[s(749)](o[s(1215)][s(1208)],s(789)):o[s(749)](o[s(1215)][s(1208)],s(1418))},publish:function(t=o[e(1155)][e(551)],r=""){const i=e;return n[i(1055)](i(806)+t+i(867)+JSON[i(1014)](r)+")"),Object.values(o[i(1155)]).indexOf(t)<0?o.emitError(o[i(1215)][i(1208)],i(767)):typeof r!==i(645)?o[i(749)](o[i(1215)][i(1208)],i(1126)):o[i(1266)][i(1528)]?o[i(1266)][i(507)]===o[i(584)][i(1130)]||o[i(1266)][i(507)]===o[i(584)][i(1556)]?(n[i(485)](i(1797)),o.emitError(o[i(1215)][i(1099)],i(1797))):o[i(1266)][t].preview?t===o[i(1155)][i(1663)]&&o.core[i(1580)].id?(n[i(485)](i(891)),o[i(749)](o.ErrorCode.PublishError,"custom sharing, can not publish")):void o[i(1395)](t,"",r):(n[i(485)](i(378)),o[i(749)](o.ErrorCode[i(1099)],"publish before preview")):(n.logError(i(1161)),o[i(749)](o[i(1215)][i(1099)],i(1161)))},publishEx:function(t,r=""){const i=e;return n.logInfo(i(1295)+t+", info:"+JSON.stringify(r)+")"),t?"string"!=typeof r?o[i(749)](o.ErrorCode.ParamsError,i(1178)):o[i(1266)][i(1528)]?o[i(1266)].userRole===o[i(584)][i(1130)]||o[i(1266)][i(507)]===o[i(584)].sysAudience?(n.logError(i(1797)),o[i(749)](o[i(1215)][i(1099)],i(1797))):o[i(1266)][i(752)][t]&&o[i(1266)][i(752)][t][i(731)]?void o[i(1395)](o[i(1155)][i(551)],t,r):(n[i(485)]("publishEx before preview"),o.emitError(o[i(1215)][i(1099)],i(378))):(n[i(485)](i(466)),o[i(749)](o[i(1215)][i(1099)],i(1161))):o[i(749)](o[i(1215)][i(1208)],i(1202))},publishScreenEx:function(t,r=""){const i=e;return n[i(1055)](i(1082)+t+i(867)+JSON[i(1014)](r)+")"),t?"string"!=typeof r?o[i(749)](o[i(1215)].ParamsError,i(919)):o.core[i(1528)]?o[i(1266)][i(507)]===o[i(584)].audience||o.core[i(507)]===o[i(584)][i(1556)]?(n.logError(i(1797)),o[i(749)](o[i(1215)][i(1099)],i(1797))):o[i(1266)][i(752)][t]&&o[i(1266)][i(752)][t][i(731)]?void o.wsPublish(o.StreamType[i(1663)],t,r):(n[i(485)](i(888)),o[i(749)](o[i(1215)][i(1099)],i(378))):(n[i(485)](i(1280)),o[i(749)](o[i(1215)].PublishError,i(1161))):o[i(749)](o[i(1215)][i(1208)],i(1129))},publishCustom:function(t=""){const r=e;return n[r(1055)]("publishCustom(info:"+JSON[r(1014)](t)+")"),typeof t!==r(645)?o.emitError(o[r(1215)][r(1208)],r(1273)):o[r(1266)][r(1528)]?o.core[r(507)]===o[r(584)][r(1130)]||o[r(1266)][r(507)]===o[r(584)][r(1556)]?(n.logError("current role can not publish"),o[r(749)](o.ErrorCode[r(1099)],r(1797))):o.core[r(1580)][r(731)]?o[r(1266)][r(575)].id?(n[r(485)](r(692)),o[r(749)](o[r(1215)][r(1099)],"screen sharing, can not publish")):void o[r(1395)](o[r(1155)][r(1663)],"",t,o.SubStreamType[r(550)]):(n[r(485)](r(378)),o[r(749)](o.ErrorCode[r(1099)],"publish before preview")):(n[r(485)](r(1161)),o[r(749)](o[r(1215)][r(1099)],r(1161)))},unpublish:function(t=o.StreamType[e(551)]){const r=e;if(n[r(1055)](r(331)+t+")"),Object[r(1706)](o.StreamType).indexOf(t)<0)return o.emitError(o[r(1215)].ParamsError,r(312));o.wsUnPublish(t,o[r(1266)][t].id)},unpublishEx:function(t=""){const r=e;if(n[r(1055)](r(1806)+t+")"),!t)return o.emitError(o[r(1215)][r(1208)],r(1071));o.core[r(752)][t]&&o[r(1479)](o[r(1155)].Camera,o[r(1266)][r(752)][t].id,t)},unpublishScreenEx:function(t){const r=e;if(n[r(1055)](r(531)+t+")"),!t)return o[r(749)](o[r(1215)][r(1208)],r(1409));o[r(1266)][r(752)][t]&&o[r(1479)](o[r(1155)][r(1663)],o.core[r(752)][t].id,t)},unpublishCustom:function(){const t=e;n[t(1055)](t(868)),o.wsUnPublish(o[t(1155)][t(1663)],o[t(1266)][t(1580)].id,"",o[t(831)][t(550)])},subscribe:function(t=null,r="",i="",s,a,c){const u=e;if(n[u(1055)]("subscribe("+(t?t.id:"")+", UserID:"+r+", StreamIDorTag:"+i+u(1306)+s+u(709)+a+", muteVideo:"+c+")"),!r||!i)return o[u(749)](o[u(1215)][u(1208)],u(328));const d=o[u(588)](i);if(!d||d[u(376)]!==r)return n[u(485)]("publisher not found",r,i),o[u(749)](o[u(1215)].SubscribeError,u(549));i=d[u(705)],t instanceof HTMLElement&&t!==o[u(1266)][u(1031)][i].videoElem&&(o.enableDomAutoPlay(t),o.core[u(1031)][i][u(465)]=t),o[u(1266)].publishers[i].id?n.logWarn(i+u(1413)):(typeof s===u(1030)&&s>=0?o[u(1266)].publishers[i][u(813)]!==s&&(o[u(1266)][u(1031)][i].layerIndex=s):(s=0,o[u(1266)][u(1031)][i][u(813)]=s),void 0!==a&&o[u(1266)][u(1031)][i][u(181)]!==a&&(o[u(1266)].publishers[i][u(181)]=a),typeof c!==u(297)&&o[u(1266)][u(1031)][i][u(201)]!==c&&(o[u(1266)].publishers[i][u(201)]=c),0===s&&o.options.hdQualityPriority&&o[u(1266)].publishers[i][u(1056)][u(1524)]>1&&(o[u(1266)][u(1031)][i][u(1848)]=s,o[u(1266)].publishers[i].layerIndex=1,s=1),o[u(929)](r,i))},unsubscribe:function(t="",r=""){const i=e;n[i(1055)](i(1314)+t+i(1530)+r+")");const s=o[i(588)](t);r&&t&&s&&!(r[i(199)](s[i(705)])<0)?o.wsUnsubscribe(r):n[i(1023)](i(994))},muteLocal:function(t="",r={}){const i=e;return n[i(1055)](i(727)+t+i(1105)+JSON[i(1014)](r)+")"),r.hasOwnProperty(i(1822))||r.hasOwnProperty("muteVideo")?Object.values(o[i(1155)])[i(199)](t)<0?Promise[i(212)](o[i(1225)](null,{desc:o.ErrorCode[i(1208)]+i(618)})):o[i(1426)](t,r):Promise.reject(o[i(1225)](null,{desc:o[i(1215)][i(1208)]+i(618)}))},muteLocalEx:function(t="",r={}){const i=e;return n[i(1055)](i(1236)+t+i(1105)+JSON[i(1014)](r)+")"),(r[i(1651)](i(1822))||r[i(1651)]("muteVideo"))&&t?o[i(1426)]("",r,!1,t):Promise[i(212)](o.muteLocalReturnData(null,{desc:o[i(1215)].ParamsError+", muteLocalEx"}))},muteLocalScreenEx:function(t="",r={}){const i=e;return n[i(1055)](i(1037)+t+i(1105)+JSON[i(1014)](r)+")"),r[i(1651)]("muteAudio")||r[i(1651)](i(389))?t?o[i(1426)]("",r,!1,t):Promise[i(212)](o[i(1225)](null,{desc:o[i(1215)][i(1208)]+", muteLocalScreenEx"})):Promise.reject(o[i(1225)](null,{desc:o[i(1215)][i(1208)]+", muteLocalScreenEx"}))},muteLocalCustom(t={}){const r=e;return n.logInfo(r(1038)+JSON.stringify(t)+")"),t[r(1651)](r(1822))||t[r(1651)]("muteVideo")?o[r(1426)](o[r(1155)][r(1663)],t,!1,o[r(831)][r(550)]):Promise[r(212)](o[r(1225)](null,{desc:o[r(1215)][r(1208)]+r(672)}))},muteRemote:function(t="",r={}){const i=e;return n[i(1055)](i(773)+t+", status:"+JSON[i(1014)](r)+")"),r[i(1651)](i(1822))||r.hasOwnProperty(i(389))?t?void o[i(1808)](t,r):o.emitError(o[i(1215)][i(1208)],"muteRemote"):o[i(749)](o[i(1215)][i(1208)],"muteRemote")},selectLayer:function(t="",r=0){const i=e;if(n[i(1055)](i(1344)+t+i(1306)+r+")"),!t)return o[i(749)](o.ErrorCode[i(1208)],i(1654));if(r<0)return o[i(749)](o[i(1215)].ParamsError,i(1114));let s=o[i(1656)](t),a=o[i(1266)][i(1031)][s];if(!a)return o[i(749)](o.ErrorCode[i(1208)],i(1785));r>a[i(1056)][i(1524)]-1&&(r=a[i(1056)].length-1),a[i(813)]!==r&&(a[i(813)]=r),0===r&&o[i(1199)][i(882)]&&a.layers[i(1524)]>1&&(r=1),a[i(1848)]=r,a[i(813)]=r,o[i(1514)](t,r)},updateName:function(t){const r=e;n[r(1055)](r(400)+t+r(219)),"string"==typeof t&&t?o[r(1711)](t):n[r(1023)](r(459))},updateInfo:function(t=[]){const r=e;if(n.logInfo(r(381)+JSON.stringify(t)+")"),!t||0===t.length)return o.emitError(o[r(1215)][r(1208)],r(1331));t[r(1505)]((e=>{const t=r;let n=e[t(705)]?o[t(1452)](e[t(705)]):null;if(n){typeof n[t(1755)]===t(1102)?info=n[t(1755)]:info=JSON[t(1506)](n[t(1755)]),e[t(1755)]!=={}&&(info[t(509)]=e[t(1755)],info.act=1);let r=[{userID:o[t(1266)][t(1668)],publishID:e[t(705)],info:JSON[t(1014)](info)}];o[t(766)](r),n[t(1755)][t(1655)]=0}}))},getAppInfo:function(t){const r=e;n.logInfo("getAppInfo(streamId:"+t+")");let i=o[r(1452)](t);return i?i[r(1755)]:{}},message:function(t="",r=null){const i=e;if(n[i(1055)](i(1661),r||i(1745)),!t)return o[i(749)](o.ErrorCode[i(1208)],i(1449));(!r||r instanceof Array&&0===r[i(1524)])&&(r=null),o[i(1362)](t,r)},getDevices:function(t=!1){const r=e;n[r(1055)](r(446)+!!t),o[r(1301)](!!t)[r(515)]()},setDevice:function(t="",r=""){const i=e;if(n.logInfo("setDevice(deviceType:"+t+i(648)+r+")"),Object[i(1706)](o[i(925)])[i(199)](t)<0)return o[i(749)](o[i(1215)][i(1208)],i(1211));o[i(439)](t,r)},getDeviceInfo:function(t){const r=e;return n.logInfo(r(647)+t+")"),typeof t!==r(645)?Promise[r(212)](r(1401)):o[r(1769)](t)},audioReport:function(t=!0,r=250,i=null,s=!1,a){const c=e;if(n[c(1055)](c(1033)+(i?i.id:"")+c(1803)+t+c(408)+r+c(231)+s+c(639)+(typeof a===c(1102)?JSON.stringify(a):"")),isNaN(r))return o.emitError(o[c(1215)][c(1208)],c(1448));let u=r>200&&!s?r:200;o[c(1377)](i?i.captureStream():null,t,u,s,a)},audioTest:function(t,r,i=200){const s=e;if(n[s(1055)]("audioTest(enable:"+t+s(1172)+!!r+s(408)+i+")"),t){if(!(r instanceof HTMLElement&&r))return o[s(749)](o[s(1215)][s(1208)],s(657));if(typeof i!==s(1030))return o[s(749)](o.ErrorCode[s(1208)],"audio test interval error");let e=null;try{e=r[s(233)]()}catch(e){return o[s(749)](o[s(1215)][s(1208)],"audio test audioElement get stream error, "+e)}let n=i>200?i:200;o[s(555)](t,e,n)}else o[s(555)](!1)},videoReport:function(t=!0,r=1e3){const i=e;if(n[i(1055)](i(480)+t+i(408)+r+")"),isNaN(r))return o[i(749)](o[i(1215)].ParamsError,"statement");let s=r>500?r:500;o[i(260)](t,s)},qosReport:function(t=!0){const r=e;n[r(1055)](r(234)+!!t+")"),o[r(1199)].enableQosReport=!!t},recordLocal:function(t=o[e(1155)][e(551)],r=!0,i=!0){const s=e;return n[s(1055)]("[recordLocal]",t,r),Object[s(1706)](o[s(1155)]).indexOf(t)<0?o[s(749)](o.ErrorCode[s(1208)],s(290)):o[s(1204)](!0,t,r,"",i)},recordLocalEx:function(t,r=!0,i=!0){const s=e;return n[s(1055)](s(591),t,r),t?o[s(1204)](!0,o.StreamType[s(551)],r,t,i):o.emitError(o.ErrorCode[s(1208)],s(528))},recordLocalScreenEx:function(t,r=!0,i=!0){const s=e;return n[s(1055)](s(747),t,r),t?o[s(1204)](!0,o[s(1155)][s(1663)],r,t,i):o[s(749)](o[s(1215)].ParamsError,s(1010))},recordRemote:function(t="",r=!0,i=!0){const s=e;return n.logInfo(s(403),t,r),t?o.record(!1,t,r,"",i):o.emitError(o[s(1215)][s(1208)],s(534))},printLocal:function(t=o[e(1155)].Camera){const r=e;return n[r(1055)](r(279),t),Object.values(o[r(1155)])[r(199)](t)<0?o[r(749)](o.ErrorCode[r(1208)],r(1179)):o[r(843)](!0,t)},printLocalEx:function(t){const r=e;return n[r(1055)]("[printLocalEx]",t),t?o[r(843)](!0,o[r(1155)][r(551)],t):o[r(749)](o.ErrorCode[r(1208)],r(1469))},printLocalScreenEx:function(t){const r=e;return n[r(1055)](r(1132),t),t?o[r(843)](!0,o[r(1155)][r(1663)],t):o[r(749)](o[r(1215)][r(1208)],r(864))},printRemote:function(t=""){const r=e;return n.logInfo(r(710),t),t?o.print(!1,t):o.emitError(o[r(1215)].ParamsError,r(1179))},startMixer:function(t=0,r=null,i=0,s=!1,a=!1,c=!1,u="",d=""){const l=e;return n.logInfo(l(1064),t,r,i,s,a,c,u,d),0===t||0==(t&o[l(1036)][l(518)])&&0==(t&o[l(1036)][l(1714)])||0===i?o[l(749)](o.ErrorCode[l(1208)],l(325)):t&o[l(1036)][l(518)]>0&&!u?o.emitError(o[l(1215)][l(1208)],"startMixer"):void o.mixer("",o[l(1152)][l(1098)],i,r,t,a,s,c,u,d)},pauseMixer:function(t,r){const i=e;n.logInfo("[pauseMixer]",t,r),o[i(186)](t,r?o.TaskCmd[i(1051)]:o[i(1152)][i(447)])},stopMixer:function(t){const r=e;n[r(1055)](r(175),t),o[r(186)](t,o.TaskCmd[r(1262)])},updateMixer:function(t,r,i){const s=e;n.logInfo(s(1696),t,r,i),o[s(186)](t,o[s(1152)][s(1134)],i,r)},startWebPage:function(t,r,i,s,a,c,u,d,l){const p=e;n.logInfo("[startWebPage]",t,r,i,s,a,c,u,d,l),o[p(816)](t,o[p(1152)][p(1098)],r,i,s,a,c,u,d,l)},stopWebPage:function(t){const r=e;n[r(1055)](r(267),t),o[r(816)](t,o[r(1152)][r(1262)])},pauseWebPage:function(t,r){const i=e;n.logInfo(i(1290),t,r),o[i(816)](t,r?o.TaskCmd[i(1051)]:o.TaskCmd.Play)},userPlay:function(){const t=e;n.logInfo(t(293)),o.userPlay()[t(515)]()},recordScreen:function(t=!0){const r=e;n[r(1055)](r(1689)),o[r(1689)](t)},checkRequirement:function(){const t=e;return n.logInfo(t(945)),o[t(945)]()},setVideoOption:function(t){const r=e;if(typeof t!==r(1102))return o[r(749)](o[r(1215)].ParamsError,"setVideoOption");if(n[r(1055)](r(1457),t),t[r(1651)](r(882))){const e=!!t.hdQualityPriority;o[r(1199)][r(882)]!==e&&(o[r(1199)][r(882)]=e,1===o[r(1266)][r(313)]&&(o[r(1699)](),Object[r(703)](o[r(1266)][r(1031)])[r(1505)]((t=>{const n=r,i=o.core.publishers[t];i.pc&&0===i[e?n(813):"targetLayerIndex"]&&this[n(1061)](i.id,0)}))))}},setPublishLayer(t,r={}){const i=e;if(n[i(1055)](i(552),t,r),typeof r!==i(1102))return o.emitError(o[i(1215)][i(1208)],i(995));if(!(r[i(716)]&&r[i(1365)]&&r[i(723)]&&r[i(1669)]))return o.emitError(o[i(1215)][i(1208)],i(697));if(t===o[i(1155)][i(551)]){if(1!==o.options[i(992)][i(1524)])return o[i(749)](o[i(1215)][i(1208)],"setPublishLayer, publish should be single layer");o[i(949)](t,r)}else{if(!o[i(1266)][i(752)][t])return o[i(749)](o[i(1215)][i(1208)],i(410)+t+i(762));if(1!==o[i(1199)][i(1640)][i(1524)])return o.emitError(o.ErrorCode[i(1208)],"setPublishLayer, publish should be single layer");o[i(949)](t,r)}},getRole:function(){const t=e;return o[t(1266)][t(507)]},setRole:function(t){const r=e;if(n[r(1055)](r(1642)+t),"number"!=typeof t||typeof Object[r(1706)](o.UserRole).find((e=>e===t))===r(297))return o[r(749)](o[r(1215)][r(1208)],r(1234));n[r(1055)](r(1752)+t),o[r(1234)](t)},pauseAllStreamAudio(){const t=e;n[t(1055)](t(259)),o[t(259)]()},resumeAllStreamAudio(){const t=e;n[t(1055)]("resumeAllStreamAudio"),o[t(679)]()},getPluginStatus(t){const r=e;if(!(t instanceof Array))return n[r(1023)]("param error"),null;const[i]=t;return i&&i===r(760)?o[r(1461)]([i]):(n.logWarn(r(1253)),null)},downloadPlugin(t){const r=e;n[r(1055)](r(1592)+(t?JSON[r(1014)](t):t));let i=null;if(!(t instanceof Array))return i={msg:r(482)},Promise[r(212)](i);const[s]=t;return s&&s[r(558)]===r(760)&&s[r(557)]?new Promise(((e,t)=>{const n=r;o.denoiser[n(1480)](s.url,!1,!0)[n(515)]((()=>{e(!0)}))[n(432)]((()=>{t(!1)}))})):(i={msg:r(482)},Promise[r(212)](i))},enableDenoiser(t=!1){const r=e;return n[r(1055)](r(704)+t),o[r(1647)](!!t)},destroy(){const t=e;n[t(1055)]("destroy"),o.destroy(),o=null,n=null,i=null,Object[t(703)](this)[t(1505)]((e=>{e!==t(454)&&delete this[e]}))},create:X,Area:o[e(1582)],StreamType:o[e(1155)],StreamTrack:o[e(499)],DeviceType:o[e(925)],ErrorCode:o.ErrorCode,Role:o[e(468)],exAPI:{selfAESDecrypt:function(e=""){return o.selfAESDecrypt(e)}}}}!function(e){const r=t;!e.hirtcwebsdk&&(e[r(1002)]=X())}(window);
|
|
|