-1;)X2!==l&&ma.call(X2,d3,1),ma.call(l,d3,1);return l}function wc(l,c){for(var v=l?c.length:0,R=v-1;v--;){var Q=c[v];if(v==R||Q!==w2){var w2=Q;M6(Q)?ma.call(l,Q,1):_o(l,Q)}}return l}function To(l,c){return l+ya(ec()*(c-l+1))}function Nv(l,c,v,R){for(var Q=-1,w2=Be(ga((c-l)/(v||1)),0),O2=P2(w2);w2--;)O2[R?w2:++Q]=l,l+=v;return O2}function Co(l,c){var v="";if(!l||c<1||c>N1)return v;do c%2&&(v+=l),c=ya(c/2),c&&(l+=l);while(c);return v}function b0(l,c){return Oo(Jc(l,c,Dt),l+"")}function Rv(l){return ac(I9(l))}function Lv(l,c){var v=I9(l);return Ia(v,U5(c,0,v.length))}function v4(l,c,v,R){if(!fe(l))return l;c=a5(c,l);for(var Q=-1,w2=c.length,O2=w2-1,X2=l;X2!=null&&++QQ?0:Q+c),v=v>Q?Q:v,v<0&&(v+=Q),Q=c>v?0:v-c>>>0,c>>>=0;for(var w2=P2(Q);++R >>1,O2=l[w2];O2!==null&&!on(O2)&&(v?O2<=c:O2=y){var K3=c?null:Hv(l);if(K3)return I5(K3);O2=!1,Q=L5,d3=new G5}else d3=c?[]:X2;e:for(;++R =R?l:vn(l,c,v)}var Mc=Ay||function(l){return Ie.clearTimeout(l)};function Pc(l,c){if(c)return l.slice();var v=l.length,R=qu?qu(v):new l.constructor(v);return l.copy(R),R}function ko(l){var c=new l.constructor(l.byteLength);return new fa(c).set(new fa(l)),c}function Gv(l,c){var v=c?ko(l.buffer):l.buffer;return new l.constructor(v,l.byteOffset,l.byteLength)}function Uv(l){var c=new l.constructor(l.source,G7.exec(l));return c.lastIndex=l.lastIndex,c}function Ov(l){return h4?O1(h4.call(l)):{}}function kc(l,c){var v=c?ko(l.buffer):l.buffer;return new l.constructor(v,l.byteOffset,l.length)}function Ec(l,c){if(l!==c){var v=l!==d,R=l===null,Q=l===l,w2=on(l),O2=c!==d,X2=c===null,d3=c===c,K3=on(c);if(!X2&&!K3&&!w2&&l>c||w2&&O2&&d3&&!X2&&!K3||R&&O2&&d3||!v&&d3||!Q)return 1;if(!R&&!w2&&!K3&&l =X2)return d3;var K3=v[R];return d3*(K3=="desc"?-1:1)}}return l.index-c.index}function Nc(l,c,v,R){for(var Q=-1,w2=l.length,O2=v.length,X2=-1,d3=c.length,K3=Be(w2-O2,0),Q3=P2(d3+K3),f1=!R;++X2 1?v[Q-1]:d,O2=Q>2?v[2]:d;for(w2=l.length>3&&typeof w2=="function"?(Q--,w2):d,O2&&bt(v[0],v[1],O2)&&(w2=Q<3?d:w2,Q=1),c=O1(c);++R -1?Q[w2?c[O2]:O2]:d}}function Dc(l){return x6(function(c){var v=c.length,R=v,Q=gn.prototype.thru;for(l&&c.reverse();R--;){var w2=c[R];if(typeof w2!="function")throw new q0(_);if(Q&&!O2&&Ra(w2)=="wrapper")var O2=new gn([],!0)}for(R=O2?R:v;++R1&&L0.reverse(),Q3&&d3 X2))return!1;var K3=w2.get(l),Q3=w2.get(c);if(K3&&Q3)return K3==c&&Q3==l;var f1=-1,I1=!0,H1=v&s2?new G5:d;for(w2.set(l,c),w2.set(c,l);++f1 1?"& ":"")+c[R],c=c.join(v>2?", ":" "),l.replace(q6,`{ + }`)}}gr.elRectification=nl;const _A={name:"SvglineAnimation",props:{width:{type:Number,default:135},height:{type:Number,default:150},path:{type:String,default:"M0 72.5H682L732 0.5H3082"},color:{type:String,default:"#0091FF"},duration:{type:Number,default:3},length:{type:Number,default:100},begin:{type:Number,default:0},dir:{type:Array,default:()=>[0,1]},strokeWidth:{type:Number,default:4}},data(){let t=1;return{maskId:"svgline-"+t,radialGradientId:"radialGradient-"+t}},mounted(){let t=this._.uid;this.maskId="svgline-"+t,this.radialGradientId="radialGradient-"+t}},xA={class:"svg-line-animation"},MA=["viewBox"],PA=["id"],kA=["stop-opacity"],EA=["stop-opacity"],NA=["id"],RA=["r","fill"],LA=["begin","dur","path","keyPoints"],IA=["d","stroke","stroke-width","mask"];function FA(t,e,n,a,i,r){return G(),z("div",xA,[(G(),z("svg",{width:"100%",height:"100%",viewBox:`0 0 ${n.width} ${n.height}`,fill:"none",xmlns:"http://www.w3.org/2000/svg"},[w("defs",null,[w("radialGradient",{id:i.radialGradientId,cx:"50%",cy:"50%",fx:"100%",fy:"50%",r:"50%"},[w("stop",{offset:"0%","stop-color":"#fff","stop-opacity":n.dir[1]},null,8,kA),w("stop",{offset:"100%","stop-color":"#fff","stop-opacity":n.dir[0]},null,8,EA)],8,PA),w("mask",{id:i.maskId},[w("circle",{r:n.length,cx:"0",cy:"0",fill:`url(#${i.radialGradientId})`},[w("animateMotion",{begin:`${n.begin}s`,dur:`${n.duration}s`,path:n.path,rotate:"auto",keyPoints:`${n.dir[0]};${n.dir[1]}`,keyTimes:"0;1",repeatCount:"indefinite"},null,8,LA)],8,RA)],8,NA)]),w("path",{class:"path-line",d:n.path,stroke:n.color,"stroke-width":n.strokeWidth,mask:`url(#${i.maskId})`},null,8,IA)],8,MA))])}const Di=S7(_A,[["render",FA]]);const BA={class:"m-header"},DA={class:"m-header-wrap"},GA={class:"m-header-title"},UA={class:"m-header-subtext"},OA={class:"m-header-left",style:{color:"#fff"}},jA={class:"m-header-right"},zA={class:"m-header-line"},YA={__name:"index",props:{title:{type:String,default:"红原县数字畜牧业监管平台"},subText:{type:String,default:"Hongyuan Digital Animal Husbandry Supervision Platform"}},setup(t){return(e,n)=>(G(),z("div",BA,[w("div",DA,[w("div",GA,i2(t.title),1),w("div",UA,i2(t.subText),1)]),w("div",OA,[Ri(e.$slots,"left")]),w("div",jA,[Ri(e.$slots,"right")]),w("div",zA,[l1(Di,{class:"m-header-line-left",width:961,height:79,color:"#30DCFF",strokeWidth:2,dir:[0,1],length:100,path:"M1 1.52783L535 25.6808C552.73 26.5835 571.454 31.3851 588.834 39.2194C593.758 41.4385 598.692 43.7289 603.643 46.0273C633.567 59.9182 664.121 74.1016 696.754 74.6262C696.765 74.6264 696.775 74.6265 696.786 74.6267C821.602 76.5993 879.336 78 961 78"}),l1(Di,{class:"m-header-line-right",width:961,height:79,color:"#30DCFF",strokeWidth:2,dir:[0,1],length:100,path:"M1 1.52783L535 25.6808C552.73 26.5835 571.454 31.3851 588.834 39.2194C593.758 41.4385 598.692 43.7289 603.643 46.0273C633.567 59.9182 664.121 74.1016 696.754 74.6262C696.765 74.6264 696.775 74.6265 696.786 74.6267C821.602 76.5993 879.336 78 961 78"})])]))}};const $A={class:"m-menu"},WA={__name:"index",props:{defaultActive:{type:[String,Number],default:""}},emits:["select"],setup(t,{emit:e}){const n=e,a=t,i=Q2(a.defaultActive);return Od("updateActive",o=>{o!==i.value&&(i.value=o,n("select",o))}),Od("activeIndex",i),N0(()=>a.defaultActive,o=>{o!==i.value&&(i.value=o)}),(o,s)=>(G(),z("div",$A,[Ri(o.$slots,"default")]))}},VA={__name:"index",props:{index:{type:[String,Number],required:!0}},setup(t){const e=t,n=jd("updateActive"),a=jd("activeIndex"),i=()=>{n(e.index)};return(r,o)=>(G(),z("div",{class:r1(["m-menu-item",{"is-active":t.index===k1(a)}]),onClick:i},[Ri(r.$slots,"default")],2))}};let Zd=0;const ef="webkit moz ms o".split(" ");let u6,c6;const HA=typeof window=="undefined";if(HA)u6=function(){},c6=function(){};else{u6=window.requestAnimationFrame,c6=window.cancelAnimationFrame;let t;for(let e=0;e {e(n+a)},a);return Zd=n+a,i},c6=function(e){window.clearTimeout(e)})}const KA={props:{startVal:{type:Number,required:!1,default:0},endVal:{type:Number,required:!1,default:2017},duration:{type:Number,required:!1,default:3e3},autoplay:{type:Boolean,required:!1,default:!0},decimals:{type:Number,required:!1,default:0,validator(t){return t>=0}},decimal:{type:String,required:!1,default:"."},separator:{type:String,required:!1,default:","},prefix:{type:String,required:!1,default:""},suffix:{type:String,required:!1,default:""},useEasing:{type:Boolean,required:!1,default:!0},easingFn:{type:Function,default(t,e,n,a){return n*(-Math.pow(2,-10*t/a)+1)*1024/1023+e}}},data(){return{localStartVal:this.startVal,displayValue:this.formatNumber(this.startVal),printVal:null,paused:!1,localDuration:this.duration,startTime:null,timestamp:null,remaining:null,rAF:null}},computed:{countDown(){return this.startVal>this.endVal}},watch:{startVal(){this.autoplay&&this.start()},endVal(){this.autoplay&&this.start()}},mounted(){this.autoplay&&this.start(),this.$emit("mountedCallback")},methods:{start(){this.localStartVal=this.startVal,this.startTime=null,this.localDuration=this.duration,this.paused=!1,this.rAF=u6(this.count)},pauseResume(){this.paused?(this.resume(),this.paused=!1):(this.pause(),this.paused=!0)},pause(){c6(this.rAF)},resume(){this.startTime=null,this.localDuration=+this.remaining,this.localStartVal=+this.printVal,u6(this.count)},reset(){this.startTime=null,c6(this.rAF),this.displayValue=this.formatNumber(this.startVal)},count(t){this.startTime||(this.startTime=t),this.timestamp=t;const e=t-this.startTime;this.remaining=this.localDuration-e,this.useEasing?this.countDown?this.printVal=this.localStartVal-this.easingFn(e,0,this.localStartVal-this.endVal,this.localDuration):this.printVal=this.easingFn(e,this.localStartVal,this.endVal-this.localStartVal,this.localDuration):this.countDown?this.printVal=this.localStartVal-(this.localStartVal-this.endVal)*(e/this.localDuration):this.printVal=this.localStartVal+(this.endVal-this.localStartVal)*(e/this.localDuration),this.countDown?this.printVal=this.printVal this.endVal?this.endVal:this.printVal,this.displayValue=this.formatNumber(this.printVal),e 1?this.decimal+e[1]:"",i=/(\d+)(\d{3})/;if(this.separator&&!this.isNumber(this.separator))for(;i.test(n);)n=n.replace(i,"$1"+this.separator+"$2");return this.prefix+n+a+this.suffix}},destroyed(){c6(this.rAF)}};function qA(t,e,n,a,i,r){return G(),z("span",null,i2(i.displayValue),1)}const Wm=S7(KA,[["render",qA]]);typeof window!="undefined"&&window.Vue&&window.Vue.component("count-to",Wm);const JA={class:"count-card-left"},QA={class:"count-card-title"},XA={class:"title-zh"},ZA={key:0,class:"title-en"},e_={class:"count-card-right"},t_={class:"unit"},n_={__name:"index",props:{info:{type:Object,default:()=>({icon:"xiaoshoujine",zh:"2023年销售金额",en:"Sales amount in 2023",value:9500,unit:"万元",decimals:0})}},setup(t){const e=t,n=Q2(!0),a=Q2(!1),i=Q2(0);let r=null;const o=s2(()=>e.info.duration||1800);N0(()=>[e.info.value,e.info.zh],()=>{r&&window.clearTimeout(r),n.value=!0,a.value=!1,i.value+=1},{immediate:!0});function s(h){return h.toUpperCase()}function u(){n.value=!0,a.value=!1}function m(){n.value=!1,a.value=!0,r&&window.clearTimeout(r),r=window.setTimeout(()=>{a.value=!1},900)}return hn(()=>{r&&window.clearTimeout(r)}),(h,p)=>(G(),z("div",{class:r1(["count-card",{"is-counting":n.value,"is-settled":a.value}])},[w("div",JA,[w("div",{class:r1(["count-card-icon","icon-"+t.info.icon])},null,2),w("div",QA,[w("div",XA,i2(t.info.zh),1),t.info.en?(G(),z("div",ZA,i2(s(t.info.en)),1)):k3("",!0)])]),w("div",e_,[(G(),z("div",{class:"value",key:i.value},[l1(k1(Wm),{startVal:0,endVal:t.info.value,decimals:t.info.decimals,duration:o.value,separator:"",autoplay:!0,onMountedCallback:u,onCallback:m},null,8,["endVal","decimals","duration"])])),w("div",t_,i2(t.info.unit),1)])],2))}};var $a=typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:{};function a_(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function Wa(t){throw new Error('Could not dynamically require "'+t+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Gi={exports:{}};Gi.exports;(function(t,e){function n(O){"@babel/helpers - typeof";return n=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(N){return typeof N}:function(N){return N&&typeof Symbol=="function"&&N.constructor===Symbol&&N!==Symbol.prototype?"symbol":typeof N},n(O)}function a(O,N){if(!(O instanceof N))throw new TypeError("Cannot call a class as a function")}function i(O,N){for(var d=0;d >>1,f2=[["ary",N2],["bind",d2],["bindKey",F2],["curry",T],["curryRight",D],["flip",W2],["partial",W],["partialRight",x2],["rearg",Y2]],r3="[object Arguments]",N3="[object Array]",K="[object AsyncFunction]",m2="[object Boolean]",R2="[object Date]",q2="[object DOMException]",X3="[object Error]",p1="[object Function]",B="[object GeneratorFunction]",H="[object Map]",S="[object Number]",E="[object Null]",c2="[object Object]",L2="[object Promise]",U2="[object Proxy]",J2="[object RegExp]",M3="[object Set]",u1="[object String]",V="[object Symbol]",w2="[object Undefined]",E2="[object WeakMap]",I2="[object WeakSet]",u2="[object ArrayBuffer]",t3="[object DataView]",z2="[object Float32Array]",c3="[object Float64Array]",C3="[object Int8Array]",J3="[object Int16Array]",_3="[object Int32Array]",i1="[object Uint8Array]",x0="[object Uint8ClampedArray]",Y0="[object Uint16Array]",Z1="[object Uint32Array]",h2=/\b__p \+= '';/g,R3=/\b(__p \+=) '' \+/g,J1=/(__e\(.*?\)|\b__t\)) \+\n'';/g,mt=/&(?:amp|lt|gt|quot|#39);/g,pt=/[&<>"']/g,y0=RegExp(mt.source),X0=RegExp(pt.source),Qn=/<%-([\s\S]+?)%>/g,_5=/<%([\s\S]+?)%>/g,x5=/<%=([\s\S]+?)%>/g,u9=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,c9=/^\w*$/,de=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ee=/[\\^$.*+?()[\]{}|]/g,gt=RegExp(ee.source),en=/^\s+/,pn=/\s/,q6=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,d9=/\{\n\/\* \[wrapped with (.+)\] \*/,f9=/,? & /,h9=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,J6=/[()=,{}\[\]\/\s]/,tn=/\\(\\)?/g,Ir=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,G7=/\w*$/,N8=/^[-+]0x[0-9a-f]+$/i,U7=/^0b[01]+$/i,R8=/^\[object .+?Constructor\]$/,Fr=/^0o[0-7]+$/i,Br=/^(?:0|[1-9]\d*)$/,m9=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,p9=/($^)/,L8=/['\n\r\u2028\u2029\\]/g,w6="\\ud800-\\udfff",Dr="\\u0300-\\u036f",I8="\\ufe20-\\ufe2f",Gr="\\u20d0-\\u20ff",g9=Dr+I8+Gr,yt="\\u2700-\\u27bf",y9="a-z\\xdf-\\xf6\\xf8-\\xff",F8="\\xac\\xb1\\xd7\\xf7",v9="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Rn="\\u2000-\\u206f",O7=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",B8="A-Z\\xc0-\\xd6\\xd8-\\xde",M5="\\ufe0e\\ufe0f",j7=F8+v9+Rn+O7,P5="['’]",Ur="["+w6+"]",S9="["+j7+"]",w9="["+g9+"]",z7="\\d+",D8="["+yt+"]",Y7="["+y9+"]",G8="[^"+w6+j7+z7+yt+y9+B8+"]",Nt="\\ud83c[\\udffb-\\udfff]",$7="(?:"+w9+"|"+Nt+")",W7="[^"+w6+"]",U8="(?:\\ud83c[\\udde6-\\uddff]){2}",O8="[\\ud800-\\udbff][\\udc00-\\udfff]",Q6="["+B8+"]",j8="\\u200d",b9="(?:"+Y7+"|"+G8+")",V7="(?:"+Q6+"|"+G8+")",z8="(?:"+P5+"(?:d|ll|m|re|s|t|ve))?",H7="(?:"+P5+"(?:D|LL|M|RE|S|T|VE))?",k5=$7+"?",We="["+M5+"]?",K7="(?:"+j8+"(?:"+[W7,U8,O8].join("|")+")"+We+k5+")*",Or="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",jr="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",q7=We+k5+K7,zr="(?:"+[D8,U8,O8].join("|")+")"+q7,Yr="(?:"+[W7+w9+"?",w9,U8,O8,Ur].join("|")+")",$r=RegExp(P5,"g"),Wr=RegExp(w9,"g"),E5=RegExp(Nt+"(?="+Nt+")|"+Yr+q7,"g"),J7=RegExp([Q6+"?"+Y7+"+"+z8+"(?="+[S9,Q6,"$"].join("|")+")",V7+"+"+H7+"(?="+[S9,Q6+b9,"$"].join("|")+")",Q6+"?"+b9+"+"+z8,Q6+"+"+H7,jr,Or,z7,zr].join("|"),"g"),Vr=RegExp("["+j8+w6+g9+M5+"]"),Y8=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,F0=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Hr=-1,h0={};h0[z2]=h0[c3]=h0[C3]=h0[J3]=h0[_3]=h0[i1]=h0[x0]=h0[Y0]=h0[Z1]=!0,h0[r3]=h0[N3]=h0[u2]=h0[m2]=h0[t3]=h0[R2]=h0[X3]=h0[p1]=h0[H]=h0[S]=h0[c2]=h0[J2]=h0[M3]=h0[u1]=h0[E2]=!1;var R0={};R0[r3]=R0[N3]=R0[u2]=R0[t3]=R0[m2]=R0[R2]=R0[z2]=R0[c3]=R0[C3]=R0[J3]=R0[_3]=R0[H]=R0[S]=R0[c2]=R0[J2]=R0[M3]=R0[u1]=R0[V]=R0[i1]=R0[x0]=R0[Y0]=R0[Z1]=!0,R0[X3]=R0[p1]=R0[E2]=!1;var Q7={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},Kr={"&":"&","<":"<",">":">",'"':""","'":"'"},qr={"&":"&","<":"<",">":">",""":'"',"'":"'"},Jr={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},X7=parseFloat,Qr=parseInt,$8=typeof V2=="object"&&V2&&V2.Object===Object&&V2,W8=typeof self=="object"&&self&&self.Object===Object&&self,Ie=$8||W8||Function("return this")(),V8=N&&!N.nodeType&&N,Xn=V8&&!0&&O&&!O.nodeType&&O,H8=Xn&&Xn.exports===V8,K8=H8&&$8.process,vt=function(){try{var X=Xn&&Xn.require&&Xn.require("util").types;return X||K8&&K8.binding&&K8.binding("util")}catch(A2){}}(),q8=vt&&vt.isArrayBuffer,Z7=vt&&vt.isDate,J8=vt&&vt.isMap,N5=vt&&vt.isRegExp,Q8=vt&&vt.isSet,X8=vt&&vt.isTypedArray;function nt(X,A2,P2){switch(P2.length){case 0:return X.call(A2);case 1:return X.call(A2,P2[0]);case 2:return X.call(A2,P2[0],P2[1]);case 3:return X.call(A2,P2[0],P2[1],P2[2])}return X.apply(A2,P2)}function ea(X,A2,P2,A3){for(var $3=-1,d1=X==null?0:X.length;++$3 -1}function e4(X,A2,P2){for(var A3=-1,$3=X==null?0:X.length;++A3<$3;)if(P2(A2,X[A3]))return!0;return!1}function te(X,A2){for(var P2=-1,A3=X==null?0:X.length,$3=Array(A3);++P2 -1;);return P2}function oa(X,A2){for(var P2=X.length;P2--&&Zn(A2,X[P2],0)>-1;);return P2}function no(X,A2){for(var P2=X.length,A3=0;P2--;)X[P2]===A2&&++A3;return A3}var m0=i4(Q7),D0=i4(Kr);function _9(X){return"\\"+Jr[X]}function Rt(X,A2){return X==null?d:X[A2]}function Lt(X){return Vr.test(X)}function ao(X){return Y8.test(X)}function sa(X){for(var A2,P2=[];!(A2=X.next()).done;)P2.push(A2.value);return P2}function x9(X){var A2=-1,P2=Array(X.size);return X.forEach(function(A3,$3){P2[++A2]=[$3,A3]}),P2}function la(X,A2){return function(P2){return X(A2(P2))}}function In(X,A2){for(var P2=-1,A3=X.length,$3=0,d1=[];++P2 -1}function Jy(l,c){var v=this.__data__,R=ba(v,l);return R<0?(++this.size,v.push([l,c])):v[R][1]=c,this}T6.prototype.clear=Vy,T6.prototype.delete=Hy,T6.prototype.get=Ky,T6.prototype.has=qy,T6.prototype.set=Jy;function C6(l){var c=-1,v=l==null?0:l.length;for(this.clear();++c =c?l:c)),l}function yn(l,c,v,R,Q,b2){var O2,X2=c&J,d3=c&Y,K3=c&k2;if(v&&(O2=Q?v(l,R,Q,b2):v(l)),O2!==d)return O2;if(!fe(l))return l;var Q3=g0(l);if(Q3){if(O2=eS(l),!X2)return It(l,O2)}else{var f1=rt(l),I1=f1==p1||f1==B;if(r5(l))return Pc(l,X2);if(f1==c2||f1==r3||I1&&!Q){if(O2=d3||I1?{}:Hc(l),!X2)return d3?Yv(l,fv(O2,l)):zv(l,ic(O2,l))}else{if(!R0[f1])return Q?l:{};O2=tS(l,f1,X2)}}b2||(b2=new Fn);var V1=b2.get(l);if(V1)return V1;b2.set(l,O2),Td(l)?l.forEach(function(r0){O2.add(yn(r0,c,v,r0,l,b2))}):wd(l)&&l.forEach(function(r0,M0){O2.set(M0,yn(r0,c,v,M0,l,b2))});var i0=K3?d3?Lo:Ro:d3?Bt:je,w0=Q3?d:i0(l);return St(w0||l,function(r0,M0){w0&&(M0=r0,r0=l[M0]),m4(O2,M0,yn(r0,c,v,M0,l,b2))}),O2}function hv(l){var c=je(l);return function(v){return rc(v,l,c)}}function rc(l,c,v){var R=v.length;if(l==null)return!R;for(l=U1(l);R--;){var Q=v[R],b2=c[Q],O2=l[Q];if(O2===d&&!(Q in l)||!b2(O2))return!1}return!0}function oc(l,c,v){if(typeof l!="function")throw new q0(_);return b4(function(){l.apply(d,v)},c)}function p4(l,c,v,R){var Q=-1,b2=R5,O2=!0,X2=l.length,d3=[],K3=c.length;if(!X2)return d3;v&&(c=te(c,wt(v))),R?(b2=e4,O2=!1):c.length>=y&&(b2=L5,O2=!1,c=new G5(c));e:for(;++Q Q?0:Q+v),R=R===d||R>Q?Q:v0(R),R<0&&(R+=Q),R=v>R?0:Ad(R);v 0&&v(X2)?c>1?Ve(X2,c-1,v,R,Q):nn(Q,X2):R||(Q[Q.length]=X2)}return Q}var mo=Ic(),uc=Ic(!0);function t6(l,c){return l&&mo(l,c,je)}function po(l,c){return l&&uc(l,c,je)}function Ca(l,c){return Ln(c,function(v){return P6(l[v])})}function O5(l,c){c=a5(c,l);for(var v=0,R=c.length;l!=null&&v c}function gv(l,c){return l!=null&&U0.call(l,c)}function yv(l,c){return l!=null&&c in U1(l)}function vv(l,c,v){return l>=it(c,v)&&l =120&&Q3.length>=120)?new G5(O2&&Q3):d}Q3=l[0];var f1=-1,I1=X2[0];e:for(;++f1 -1;)X2!==l&&ma.call(X2,d3,1),ma.call(l,d3,1);return l}function wc(l,c){for(var v=l?c.length:0,R=v-1;v--;){var Q=c[v];if(v==R||Q!==b2){var b2=Q;M6(Q)?ma.call(l,Q,1):_o(l,Q)}}return l}function To(l,c){return l+ya(ec()*(c-l+1))}function Nv(l,c,v,R){for(var Q=-1,b2=Be(ga((c-l)/(v||1)),0),O2=P2(b2);b2--;)O2[R?b2:++Q]=l,l+=v;return O2}function Co(l,c){var v="";if(!l||c<1||c>N1)return v;do c%2&&(v+=l),c=ya(c/2),c&&(l+=l);while(c);return v}function T0(l,c){return Oo(Jc(l,c,Dt),l+"")}function Rv(l){return ac(I9(l))}function Lv(l,c){var v=I9(l);return Ia(v,U5(c,0,v.length))}function v4(l,c,v,R){if(!fe(l))return l;c=a5(c,l);for(var Q=-1,b2=c.length,O2=b2-1,X2=l;X2!=null&&++QQ?0:Q+c),v=v>Q?Q:v,v<0&&(v+=Q),Q=c>v?0:v-c>>>0,c>>>=0;for(var b2=P2(Q);++R >>1,O2=l[b2];O2!==null&&!on(O2)&&(v?O2<=c:O2=y){var K3=c?null:Hv(l);if(K3)return I5(K3);O2=!1,Q=L5,d3=new G5}else d3=c?[]:X2;e:for(;++R =R?l:vn(l,c,v)}var Mc=Ay||function(l){return Ie.clearTimeout(l)};function Pc(l,c){if(c)return l.slice();var v=l.length,R=qu?qu(v):new l.constructor(v);return l.copy(R),R}function ko(l){var c=new l.constructor(l.byteLength);return new fa(c).set(new fa(l)),c}function Gv(l,c){var v=c?ko(l.buffer):l.buffer;return new l.constructor(v,l.byteOffset,l.byteLength)}function Uv(l){var c=new l.constructor(l.source,G7.exec(l));return c.lastIndex=l.lastIndex,c}function Ov(l){return h4?U1(h4.call(l)):{}}function kc(l,c){var v=c?ko(l.buffer):l.buffer;return new l.constructor(v,l.byteOffset,l.length)}function Ec(l,c){if(l!==c){var v=l!==d,R=l===null,Q=l===l,b2=on(l),O2=c!==d,X2=c===null,d3=c===c,K3=on(c);if(!X2&&!K3&&!b2&&l>c||b2&&O2&&d3&&!X2&&!K3||R&&O2&&d3||!v&&d3||!Q)return 1;if(!R&&!b2&&!K3&&l =X2)return d3;var K3=v[R];return d3*(K3=="desc"?-1:1)}}return l.index-c.index}function Nc(l,c,v,R){for(var Q=-1,b2=l.length,O2=v.length,X2=-1,d3=c.length,K3=Be(b2-O2,0),Q3=P2(d3+K3),f1=!R;++X2 1?v[Q-1]:d,O2=Q>2?v[2]:d;for(b2=l.length>3&&typeof b2=="function"?(Q--,b2):d,O2&&Tt(v[0],v[1],O2)&&(b2=Q<3?d:b2,Q=1),c=U1(c);++R -1?Q[b2?c[O2]:O2]:d}}function Dc(l){return x6(function(c){var v=c.length,R=v,Q=gn.prototype.thru;for(l&&c.reverse();R--;){var b2=c[R];if(typeof b2!="function")throw new q0(_);if(Q&&!O2&&Ra(b2)=="wrapper")var O2=new gn([],!0)}for(R=O2?R:v;++R1&&I0.reverse(),Q3&&d3 X2))return!1;var K3=b2.get(l),Q3=b2.get(c);if(K3&&Q3)return K3==c&&Q3==l;var f1=-1,I1=!0,V1=v&o2?new G5:d;for(b2.set(l,c),b2.set(c,l);++f1 1?"& ":"")+c[R],c=c.join(v>2?", ":" "),l.replace(q6,`{ /* [wrapped with `+c+`] */ -`)}function aS(l){return p0(l)||Y5(l)||!!(Xu&&l&&l[Xu])}function M6(l,c){var v=typeof l;return c=c==null?N1:c,!!c&&(v=="number"||v!="symbol"&&Br.test(l))&&l>-1&&l%1==0&&l 0){if(++c>=v3)return arguments[0]}else c=0;return l.apply(d,arguments)}}function Ia(l,c){var v=-1,R=l.length,Q=R-1;for(c=c===d?R:c;++v 1?l[c-1]:d;return v=typeof v=="function"?(l.pop(),v):d,ld(l,v)});function ud(l){var c=g2(l);return c.__chain__=!0,c}function mw(l,c){return c(l),l}function Fa(l,c){return c(l)}var pw=x6(function(l){var c=l.length,v=c?l[0]:0,R=this.__wrapped__,Q=function(w2){return ho(w2,l)};return c>1||this.__actions__.length||!(R instanceof P0)||!M6(v)?this.thru(Q):(R=R.slice(v,+v+(c?1:0)),R.__actions__.push({func:Fa,args:[Q],thisArg:d}),new gn(R,this.__chain__).thru(function(w2){return c&&!w2.length&&w2.push(d),w2}))});function gw(){return ud(this)}function yw(){return new gn(this.value(),this.__chain__)}function vw(){this.__values__===d&&(this.__values__=Cd(this.value()));var l=this.__index__>=this.__values__.length,c=l?d:this.__values__[this.__index__++];return{done:l,value:c}}function Sw(){return this}function ww(l){for(var c,v=this;v instanceof wa;){var R=nd(v);R.__index__=0,R.__values__=d,c?Q.__wrapped__=R:c=R;var Q=R;v=v.__wrapped__}return Q.__wrapped__=l,c}function bw(){var l=this.__wrapped__;if(l instanceof P0){var c=l;return this.__actions__.length&&(c=new P0(this)),c=c.reverse(),c.__actions__.push({func:Fa,args:[jo],thisArg:d}),new gn(c,this.__chain__)}return this.thru(jo)}function Tw(){return _c(this.__wrapped__,this.__actions__)}var Cw=Ma(function(l,c,v){U0.call(l,v)?++l[v]:A6(l,v,1)});function Aw(l,c,v){var R=p0(l)?Z8:mv;return v&&bt(l,c,v)&&(c=d),R(l,n0(c,3))}function _w(l,c){var v=p0(l)?Ln:lc;return v(l,n0(c,3))}var xw=Bc(ad),Mw=Bc(id);function Pw(l,c){return Ve(Ba(l,c),1)}function kw(l,c){return Ve(Ba(l,c),T1)}function Ew(l,c,v){return v=v===d?1:y0(v),Ve(Ba(l,c),v)}function cd(l,c){var v=p0(l)?vt:t5;return v(l,n0(c,3))}function dd(l,c){var v=p0(l)?ta:sc;return v(l,n0(c,3))}var Nw=Ma(function(l,c,v){U0.call(l,v)?l[v].push(c):A6(l,v,[c])});function Rw(l,c,v,R){l=Ft(l)?l:I9(l),v=v&&!R?y0(v):0;var Q=l.length;return v<0&&(v=Be(Q+v,0)),ja(l)?v<=Q&&l.indexOf(c,v)>-1:!!Q&&Zn(l,c,v)>-1}var Lw=b0(function(l,c,v){var R=-1,Q=typeof c=="function",w2=Ft(l)?P2(l.length):[];return t5(l,function(O2){w2[++R]=Q?nt(c,O2,v):g4(O2,c,v)}),w2}),Iw=Ma(function(l,c,v){A6(l,v,c)});function Ba(l,c){var v=p0(l)?te:mc;return v(l,n0(c,3))}function Fw(l,c,v,R){return l==null?[]:(p0(c)||(c=c==null?[]:[c]),v=R?d:v,p0(v)||(v=v==null?[]:[v]),vc(l,c,v))}var Bw=Ma(function(l,c,v){l[v?0:1].push(c)},function(){return[[],[]]});function Dw(l,c,v){var R=p0(l)?T9:ra,Q=arguments.length<3;return R(l,n0(c,4),v,Q,t5)}function Gw(l,c,v){var R=p0(l)?Xr:ra,Q=arguments.length<3;return R(l,n0(c,4),v,Q,sc)}function Uw(l,c){var v=p0(l)?Ln:lc;return v(l,Ua(n0(c,3)))}function Ow(l){var c=p0(l)?ac:Rv;return c(l)}function jw(l,c,v){(v?bt(l,c,v):c===d)?c=1:c=y0(c);var R=p0(l)?uv:Lv;return R(l,c)}function zw(l){var c=p0(l)?cv:Fv;return c(l)}function Yw(l){if(l==null)return 0;if(Ft(l))return ja(l)?X6(l):l.length;var c=rt(l);return c==H||c==M3?l.size:So(l).length}function $w(l,c,v){var R=p0(l)?b6:Bv;return v&&bt(l,c,v)&&(c=d),R(l,n0(c,3))}var Ww=b0(function(l,c){if(l==null)return[];var v=c.length;return v>1&&bt(l,c[0],c[1])?c=[]:v>2&&bt(c[0],c[1],c[2])&&(c=[c[0]]),vc(l,Ve(c,1),[])}),Da=_y||function(){return Ie.Date.now()};function Vw(l,c){if(typeof c!="function")throw new q0(_);return l=y0(l),function(){if(--l<1)return c.apply(this,arguments)}}function fd(l,c,v){return c=v?d:c,c=l&&c==null?l.length:c,_6(l,N2,d,d,d,d,c)}function hd(l,c){var v;if(typeof c!="function")throw new q0(_);return l=y0(l),function(){return--l>0&&(v=c.apply(this,arguments)),l<=1&&(c=d),v}}var Yo=b0(function(l,c,v){var R=f2;if(v.length){var Q=In(v,R9(Yo));R|=W}return _6(l,R,c,v,Q)}),md=b0(function(l,c,v){var R=f2|F2;if(v.length){var Q=In(v,R9(md));R|=W}return _6(c,R,l,v,Q)});function pd(l,c,v){c=v?d:c;var R=_6(l,T,d,d,d,d,d,c);return R.placeholder=pd.placeholder,R}function gd(l,c,v){c=v?d:c;var R=_6(l,D,d,d,d,d,d,c);return R.placeholder=gd.placeholder,R}function yd(l,c,v){var R,Q,w2,O2,X2,d3,K3=0,Q3=!1,f1=!1,I1=!0;if(typeof l!="function")throw new q0(_);c=wn(c)||0,fe(v)&&(Q3=!!v.leading,f1="maxWait"in v,w2=f1?Be(wn(v.maxWait)||0,c):w2,I1="trailing"in v?!!v.trailing:I1);function H1(Te){var Dn=R,E6=Q;return R=Q=d,K3=Te,O2=l.apply(E6,Dn),O2}function a0(Te){return K3=Te,X2=b4(x0,c),Q3?H1(Te):O2}function S0(Te){var Dn=Te-d3,E6=Te-K3,Bd=c-Dn;return f1?it(Bd,w2-E6):Bd}function i0(Te){var Dn=Te-d3,E6=Te-K3;return d3===d||Dn>=c||Dn<0||f1&&E6>=w2}function x0(){var Te=Da();if(i0(Te))return L0(Te);X2=b4(x0,S0(Te))}function L0(Te){return X2=d,I1&&R?H1(Te):(R=Q=d,O2)}function sn(){X2!==d&&Mc(X2),K3=0,R=d3=Q=X2=d}function Tt(){return X2===d?O2:L0(Da())}function ln(){var Te=Da(),Dn=i0(Te);if(R=arguments,Q=this,d3=Te,Dn){if(X2===d)return a0(d3);if(f1)return Mc(X2),X2=b4(x0,c),H1(d3)}return X2===d&&(X2=b4(x0,c)),O2}return ln.cancel=sn,ln.flush=Tt,ln}var Hw=b0(function(l,c){return oc(l,1,c)}),Kw=b0(function(l,c,v){return oc(l,wn(c)||0,v)});function qw(l){return _6(l,W2)}function Ga(l,c){if(typeof l!="function"||c!=null&&typeof c!="function")throw new q0(_);var v=function(){var R=arguments,Q=c?c.apply(this,R):R[0],w2=v.cache;if(w2.has(Q))return w2.get(Q);var O2=l.apply(this,R);return v.cache=w2.set(Q,O2)||w2,O2};return v.cache=new(Ga.Cache||C6),v}Ga.Cache=C6;function Ua(l){if(typeof l!="function")throw new q0(_);return function(){var c=arguments;switch(c.length){case 0:return!l.call(this);case 1:return!l.call(this,c[0]);case 2:return!l.call(this,c[0],c[1]);case 3:return!l.call(this,c[0],c[1],c[2])}return!l.apply(this,c)}}function Jw(l){return hd(2,l)}var Qw=Dv(function(l,c){c=c.length==1&&p0(c[0])?te(c[0],St(n0())):te(Ve(c,1),St(n0()));var v=c.length;return b0(function(R){for(var Q=-1,w2=it(R.length,v);++Q =c}),Y5=dc(function(){return arguments}())?dc:function(l){return ge(l)&&U0.call(l,"callee")&&!Qu.call(l,"callee")},p0=P2.isArray,fb=q8?St(q8):wv;function Ft(l){return l!=null&&Oa(l.length)&&!P6(l)}function be(l){return ge(l)&&Ft(l)}function hb(l){return l===!0||l===!1||ge(l)&&wt(l)==m2}var r5=My||ts,mb=Z7?St(Z7):bv;function pb(l){return ge(l)&&l.nodeType===1&&!T4(l)}function gb(l){if(l==null)return!0;if(Ft(l)&&(p0(l)||typeof l=="string"||typeof l.splice=="function"||r5(l)||L9(l)||Y5(l)))return!l.length;var c=rt(l);if(c==H||c==M3)return!l.size;if(w4(l))return!So(l).length;for(var v in l)if(U0.call(l,v))return!1;return!0}function yb(l,c){return y4(l,c)}function vb(l,c,v){v=typeof v=="function"?v:d;var R=v?v(l,c):d;return R===d?y4(l,c,d,v):!!R}function Wo(l){if(!ge(l))return!1;var c=wt(l);return c==X3||c==q2||typeof l.message=="string"&&typeof l.name=="string"&&!T4(l)}function Sb(l){return typeof l=="number"&&Zu(l)}function P6(l){if(!fe(l))return!1;var c=wt(l);return c==p1||c==B||c==K||c==U2}function Sd(l){return typeof l=="number"&&l==y0(l)}function Oa(l){return typeof l=="number"&&l>-1&&l%1==0&&l<=N1}function fe(l){var c=typeof l;return l!=null&&(c=="object"||c=="function")}function ge(l){return l!=null&&typeof l=="object"}var wd=J8?St(J8):Cv;function wb(l,c){return l===c||vo(l,c,Fo(c))}function bb(l,c,v){return v=typeof v=="function"?v:d,vo(l,c,Fo(c),v)}function Tb(l){return bd(l)&&l!=+l}function Cb(l){if(oS(l))throw new $3(b);return fc(l)}function Ab(l){return l===null}function _b(l){return l==null}function bd(l){return typeof l=="number"||ge(l)&&wt(l)==S}function T4(l){if(!ge(l)||wt(l)!=d2)return!1;var c=ha(l);if(c===null)return!0;var v=U0.call(c,"constructor")&&c.constructor;return typeof v=="function"&&v instanceof v&&e6.call(v)==by}var Vo=N5?St(N5):Av;function xb(l){return Sd(l)&&l>=-N1&&l<=N1}var Td=Q8?St(Q8):_v;function ja(l){return typeof l=="string"||!p0(l)&&ge(l)&&wt(l)==u1}function on(l){return typeof l=="symbol"||ge(l)&&wt(l)==V}var L9=X8?St(X8):xv;function Mb(l){return l===d}function Pb(l){return ge(l)&&rt(l)==E2}function kb(l){return ge(l)&&wt(l)==I2}var Eb=Na(wo),Nb=Na(function(l,c){return l<=c});function Cd(l){if(!l)return[];if(Ft(l))return ja(l)?an(l):It(l);if(u4&&l[u4])return sa(l[u4]());var c=rt(l),v=c==H?x9:c==M3?I5:I9;return v(l)}function k6(l){if(!l)return l===0?l:0;if(l=wn(l),l===T1||l===-T1){var c=l<0?-1:1;return c*L}return l===l?l:0}function y0(l){var c=k6(l),v=c%1;return c===c?v?c-v:c:0}function Ad(l){return l?U5(y0(l),0,F):0}function wn(l){if(typeof l=="number")return l;if(on(l))return q;if(fe(l)){var c=typeof l.valueOf=="function"?l.valueOf():l;l=fe(c)?c+"":c}if(typeof l!="string")return l===0?l:+l;l=A9(l);var v=U7.test(l);return v||Fr.test(l)?Qr(l.slice(2),v?2:8):N8.test(l)?q:+l}function _d(l){return n6(l,Bt(l))}function Rb(l){return l?U5(y0(l),-N1,N1):l===0?l:0}function $0(l){return l==null?"":rn(l)}var Lb=E9(function(l,c){if(w4(c)||Ft(c)){n6(c,je(c),l);return}for(var v in c)U0.call(c,v)&&m4(l,v,c[v])}),xd=E9(function(l,c){n6(c,Bt(c),l)}),za=E9(function(l,c,v,R){n6(c,Bt(c),l,R)}),Ib=E9(function(l,c,v,R){n6(c,je(c),l,R)}),Fb=x6(ho);function Bb(l,c){var v=k9(l);return c==null?v:ic(v,c)}var Db=b0(function(l,c){l=O1(l);var v=-1,R=c.length,Q=R>2?c[2]:d;for(Q&&bt(c[0],c[1],Q)&&(R=1);++v 1),w2}),n6(l,Lo(l),v),R&&(v=yn(v,J|Y|k2,Kv));for(var Q=c.length;Q--;)_o(v,c[Q]);return v});function tT(l,c){return Pd(l,Ua(n0(c)))}var nT=x6(function(l,c){return l==null?{}:kv(l,c)});function Pd(l,c){if(l==null)return{};var v=te(Lo(l),function(R){return[R]});return c=n0(c),Sc(l,v,function(R,Q){return c(R,Q[0])})}function aT(l,c,v){c=a5(c,l);var R=-1,Q=c.length;for(Q||(Q=1,l=d);++R c){var R=l;l=c,c=R}if(v||l%1||c%1){var Q=ec();return it(l+Q*(c-l+X7("1e-"+((Q+"").length-1))),c)}return To(l,c)}var mT=N9(function(l,c,v){return c=c.toLowerCase(),l+(v?Nd(c):c)});function Nd(l){return qo($0(l).toLowerCase())}function Rd(l){return l=$0(l),l&&l.replace(m9,h0).replace(Wr,"")}function pT(l,c,v){l=$0(l),c=rn(c);var R=l.length;v=v===d?R:U5(y0(v),0,R);var Q=v;return v-=c.length,v>=0&&l.slice(v,Q)==c}function gT(l){return l=$0(l),l&&X0.test(l)?l.replace(mt,D0):l}function yT(l){return l=$0(l),l&&pt.test(l)?l.replace(ee,"\\$&"):l}var vT=N9(function(l,c,v){return l+(v?"-":"")+c.toLowerCase()}),ST=N9(function(l,c,v){return l+(v?" ":"")+c.toLowerCase()}),wT=Fc("toLowerCase");function bT(l,c,v){l=$0(l),c=y0(c);var R=c?X6(l):0;if(!c||R>=c)return l;var Q=(c-R)/2;return Ea(ya(Q),v)+l+Ea(ga(Q),v)}function TT(l,c,v){l=$0(l),c=y0(c);var R=c?X6(l):0;return c&&R>>0,v?(l=$0(l),l&&(typeof c=="string"||c!=null&&!Vo(c))&&(c=rn(c),!c&&Lt(l))?i5(an(l),0,v):l.split(c,v)):[]}var kT=N9(function(l,c,v){return l+(v?" ":"")+qo(c)});function ET(l,c,v){return l=$0(l),v=v==null?0:U5(y0(v),0,l.length),c=rn(c),l.slice(v,v+c.length)==c}function NT(l,c,v){var R=g2.templateSettings;v&&bt(l,c,v)&&(c=d),l=$0(l),c=za({},c,R,zc);var Q=za({},c.imports,R.imports,zc),w2=je(Q),O2=s4(Q,w2),X2,d3,K3=0,Q3=c.interpolate||p9,f1="__p += '",I1=X1((c.escape||p9).source+"|"+Q3.source+"|"+(Q3===x5?Ir:p9).source+"|"+(c.evaluate||p9).source+"|$","g"),H1="//# sourceURL="+(U0.call(c,"sourceURL")?(c.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Hr+"]")+` -`;l.replace(I1,function(i0,x0,L0,sn,Tt,ln){return L0||(L0=sn),f1+=l.slice(K3,ln).replace(L8,_9),x0&&(X2=!0,f1+=`' + -__e(`+x0+`) + -'`),Tt&&(d3=!0,f1+=`'; -`+Tt+`; -__p += '`),L0&&(f1+=`' + -((__t = (`+L0+`)) == null ? '' : __t) + -'`),K3=ln+i0.length,i0}),f1+=`'; -`;var a0=U0.call(c,"variable")&&c.variable;if(!a0)f1=`with (obj) { +`)}function aS(l){return g0(l)||Y5(l)||!!(Xu&&l&&l[Xu])}function M6(l,c){var v=typeof l;return c=c==null?N1:c,!!c&&(v=="number"||v!="symbol"&&Br.test(l))&&l>-1&&l%1==0&&l 0){if(++c>=v3)return arguments[0]}else c=0;return l.apply(d,arguments)}}function Ia(l,c){var v=-1,R=l.length,Q=R-1;for(c=c===d?R:c;++v 1?l[c-1]:d;return v=typeof v=="function"?(l.pop(),v):d,ld(l,v)});function ud(l){var c=g2(l);return c.__chain__=!0,c}function mw(l,c){return c(l),l}function Fa(l,c){return c(l)}var pw=x6(function(l){var c=l.length,v=c?l[0]:0,R=this.__wrapped__,Q=function(b2){return ho(b2,l)};return c>1||this.__actions__.length||!(R instanceof k0)||!M6(v)?this.thru(Q):(R=R.slice(v,+v+(c?1:0)),R.__actions__.push({func:Fa,args:[Q],thisArg:d}),new gn(R,this.__chain__).thru(function(b2){return c&&!b2.length&&b2.push(d),b2}))});function gw(){return ud(this)}function yw(){return new gn(this.value(),this.__chain__)}function vw(){this.__values__===d&&(this.__values__=Cd(this.value()));var l=this.__index__>=this.__values__.length,c=l?d:this.__values__[this.__index__++];return{done:l,value:c}}function Sw(){return this}function ww(l){for(var c,v=this;v instanceof wa;){var R=nd(v);R.__index__=0,R.__values__=d,c?Q.__wrapped__=R:c=R;var Q=R;v=v.__wrapped__}return Q.__wrapped__=l,c}function bw(){var l=this.__wrapped__;if(l instanceof k0){var c=l;return this.__actions__.length&&(c=new k0(this)),c=c.reverse(),c.__actions__.push({func:Fa,args:[jo],thisArg:d}),new gn(c,this.__chain__)}return this.thru(jo)}function Tw(){return _c(this.__wrapped__,this.__actions__)}var Cw=Ma(function(l,c,v){U0.call(l,v)?++l[v]:A6(l,v,1)});function Aw(l,c,v){var R=g0(l)?Z8:mv;return v&&Tt(l,c,v)&&(c=d),R(l,a0(c,3))}function _w(l,c){var v=g0(l)?Ln:lc;return v(l,a0(c,3))}var xw=Bc(ad),Mw=Bc(id);function Pw(l,c){return Ve(Ba(l,c),1)}function kw(l,c){return Ve(Ba(l,c),T1)}function Ew(l,c,v){return v=v===d?1:v0(v),Ve(Ba(l,c),v)}function cd(l,c){var v=g0(l)?St:t5;return v(l,a0(c,3))}function dd(l,c){var v=g0(l)?ta:sc;return v(l,a0(c,3))}var Nw=Ma(function(l,c,v){U0.call(l,v)?l[v].push(c):A6(l,v,[c])});function Rw(l,c,v,R){l=Ft(l)?l:I9(l),v=v&&!R?v0(v):0;var Q=l.length;return v<0&&(v=Be(Q+v,0)),ja(l)?v<=Q&&l.indexOf(c,v)>-1:!!Q&&Zn(l,c,v)>-1}var Lw=T0(function(l,c,v){var R=-1,Q=typeof c=="function",b2=Ft(l)?P2(l.length):[];return t5(l,function(O2){b2[++R]=Q?nt(c,O2,v):g4(O2,c,v)}),b2}),Iw=Ma(function(l,c,v){A6(l,v,c)});function Ba(l,c){var v=g0(l)?te:mc;return v(l,a0(c,3))}function Fw(l,c,v,R){return l==null?[]:(g0(c)||(c=c==null?[]:[c]),v=R?d:v,g0(v)||(v=v==null?[]:[v]),vc(l,c,v))}var Bw=Ma(function(l,c,v){l[v?0:1].push(c)},function(){return[[],[]]});function Dw(l,c,v){var R=g0(l)?T9:ra,Q=arguments.length<3;return R(l,a0(c,4),v,Q,t5)}function Gw(l,c,v){var R=g0(l)?Xr:ra,Q=arguments.length<3;return R(l,a0(c,4),v,Q,sc)}function Uw(l,c){var v=g0(l)?Ln:lc;return v(l,Ua(a0(c,3)))}function Ow(l){var c=g0(l)?ac:Rv;return c(l)}function jw(l,c,v){(v?Tt(l,c,v):c===d)?c=1:c=v0(c);var R=g0(l)?uv:Lv;return R(l,c)}function zw(l){var c=g0(l)?cv:Fv;return c(l)}function Yw(l){if(l==null)return 0;if(Ft(l))return ja(l)?X6(l):l.length;var c=rt(l);return c==H||c==M3?l.size:So(l).length}function $w(l,c,v){var R=g0(l)?b6:Bv;return v&&Tt(l,c,v)&&(c=d),R(l,a0(c,3))}var Ww=T0(function(l,c){if(l==null)return[];var v=c.length;return v>1&&Tt(l,c[0],c[1])?c=[]:v>2&&Tt(c[0],c[1],c[2])&&(c=[c[0]]),vc(l,Ve(c,1),[])}),Da=_y||function(){return Ie.Date.now()};function Vw(l,c){if(typeof c!="function")throw new q0(_);return l=v0(l),function(){if(--l<1)return c.apply(this,arguments)}}function fd(l,c,v){return c=v?d:c,c=l&&c==null?l.length:c,_6(l,N2,d,d,d,d,c)}function hd(l,c){var v;if(typeof c!="function")throw new q0(_);return l=v0(l),function(){return--l>0&&(v=c.apply(this,arguments)),l<=1&&(c=d),v}}var Yo=T0(function(l,c,v){var R=d2;if(v.length){var Q=In(v,R9(Yo));R|=W}return _6(l,R,c,v,Q)}),md=T0(function(l,c,v){var R=d2|F2;if(v.length){var Q=In(v,R9(md));R|=W}return _6(c,R,l,v,Q)});function pd(l,c,v){c=v?d:c;var R=_6(l,T,d,d,d,d,d,c);return R.placeholder=pd.placeholder,R}function gd(l,c,v){c=v?d:c;var R=_6(l,D,d,d,d,d,d,c);return R.placeholder=gd.placeholder,R}function yd(l,c,v){var R,Q,b2,O2,X2,d3,K3=0,Q3=!1,f1=!1,I1=!0;if(typeof l!="function")throw new q0(_);c=wn(c)||0,fe(v)&&(Q3=!!v.leading,f1="maxWait"in v,b2=f1?Be(wn(v.maxWait)||0,c):b2,I1="trailing"in v?!!v.trailing:I1);function V1(Te){var Dn=R,E6=Q;return R=Q=d,K3=Te,O2=l.apply(E6,Dn),O2}function i0(Te){return K3=Te,X2=b4(M0,c),Q3?V1(Te):O2}function w0(Te){var Dn=Te-d3,E6=Te-K3,Bd=c-Dn;return f1?it(Bd,b2-E6):Bd}function r0(Te){var Dn=Te-d3,E6=Te-K3;return d3===d||Dn>=c||Dn<0||f1&&E6>=b2}function M0(){var Te=Da();if(r0(Te))return I0(Te);X2=b4(M0,w0(Te))}function I0(Te){return X2=d,I1&&R?V1(Te):(R=Q=d,O2)}function sn(){X2!==d&&Mc(X2),K3=0,R=d3=Q=X2=d}function Ct(){return X2===d?O2:I0(Da())}function ln(){var Te=Da(),Dn=r0(Te);if(R=arguments,Q=this,d3=Te,Dn){if(X2===d)return i0(d3);if(f1)return Mc(X2),X2=b4(M0,c),V1(d3)}return X2===d&&(X2=b4(M0,c)),O2}return ln.cancel=sn,ln.flush=Ct,ln}var Hw=T0(function(l,c){return oc(l,1,c)}),Kw=T0(function(l,c,v){return oc(l,wn(c)||0,v)});function qw(l){return _6(l,W2)}function Ga(l,c){if(typeof l!="function"||c!=null&&typeof c!="function")throw new q0(_);var v=function(){var R=arguments,Q=c?c.apply(this,R):R[0],b2=v.cache;if(b2.has(Q))return b2.get(Q);var O2=l.apply(this,R);return v.cache=b2.set(Q,O2)||b2,O2};return v.cache=new(Ga.Cache||C6),v}Ga.Cache=C6;function Ua(l){if(typeof l!="function")throw new q0(_);return function(){var c=arguments;switch(c.length){case 0:return!l.call(this);case 1:return!l.call(this,c[0]);case 2:return!l.call(this,c[0],c[1]);case 3:return!l.call(this,c[0],c[1],c[2])}return!l.apply(this,c)}}function Jw(l){return hd(2,l)}var Qw=Dv(function(l,c){c=c.length==1&&g0(c[0])?te(c[0],wt(a0())):te(Ve(c,1),wt(a0()));var v=c.length;return T0(function(R){for(var Q=-1,b2=it(R.length,v);++Q =c}),Y5=dc(function(){return arguments}())?dc:function(l){return ge(l)&&U0.call(l,"callee")&&!Qu.call(l,"callee")},g0=P2.isArray,fb=q8?wt(q8):wv;function Ft(l){return l!=null&&Oa(l.length)&&!P6(l)}function be(l){return ge(l)&&Ft(l)}function hb(l){return l===!0||l===!1||ge(l)&&bt(l)==m2}var r5=My||ts,mb=Z7?wt(Z7):bv;function pb(l){return ge(l)&&l.nodeType===1&&!T4(l)}function gb(l){if(l==null)return!0;if(Ft(l)&&(g0(l)||typeof l=="string"||typeof l.splice=="function"||r5(l)||L9(l)||Y5(l)))return!l.length;var c=rt(l);if(c==H||c==M3)return!l.size;if(w4(l))return!So(l).length;for(var v in l)if(U0.call(l,v))return!1;return!0}function yb(l,c){return y4(l,c)}function vb(l,c,v){v=typeof v=="function"?v:d;var R=v?v(l,c):d;return R===d?y4(l,c,d,v):!!R}function Wo(l){if(!ge(l))return!1;var c=bt(l);return c==X3||c==q2||typeof l.message=="string"&&typeof l.name=="string"&&!T4(l)}function Sb(l){return typeof l=="number"&&Zu(l)}function P6(l){if(!fe(l))return!1;var c=bt(l);return c==p1||c==B||c==K||c==U2}function Sd(l){return typeof l=="number"&&l==v0(l)}function Oa(l){return typeof l=="number"&&l>-1&&l%1==0&&l<=N1}function fe(l){var c=typeof l;return l!=null&&(c=="object"||c=="function")}function ge(l){return l!=null&&typeof l=="object"}var wd=J8?wt(J8):Cv;function wb(l,c){return l===c||vo(l,c,Fo(c))}function bb(l,c,v){return v=typeof v=="function"?v:d,vo(l,c,Fo(c),v)}function Tb(l){return bd(l)&&l!=+l}function Cb(l){if(oS(l))throw new $3(b);return fc(l)}function Ab(l){return l===null}function _b(l){return l==null}function bd(l){return typeof l=="number"||ge(l)&&bt(l)==S}function T4(l){if(!ge(l)||bt(l)!=c2)return!1;var c=ha(l);if(c===null)return!0;var v=U0.call(c,"constructor")&&c.constructor;return typeof v=="function"&&v instanceof v&&e6.call(v)==by}var Vo=N5?wt(N5):Av;function xb(l){return Sd(l)&&l>=-N1&&l<=N1}var Td=Q8?wt(Q8):_v;function ja(l){return typeof l=="string"||!g0(l)&&ge(l)&&bt(l)==u1}function on(l){return typeof l=="symbol"||ge(l)&&bt(l)==V}var L9=X8?wt(X8):xv;function Mb(l){return l===d}function Pb(l){return ge(l)&&rt(l)==E2}function kb(l){return ge(l)&&bt(l)==I2}var Eb=Na(wo),Nb=Na(function(l,c){return l<=c});function Cd(l){if(!l)return[];if(Ft(l))return ja(l)?an(l):It(l);if(u4&&l[u4])return sa(l[u4]());var c=rt(l),v=c==H?x9:c==M3?I5:I9;return v(l)}function k6(l){if(!l)return l===0?l:0;if(l=wn(l),l===T1||l===-T1){var c=l<0?-1:1;return c*L}return l===l?l:0}function v0(l){var c=k6(l),v=c%1;return c===c?v?c-v:c:0}function Ad(l){return l?U5(v0(l),0,F):0}function wn(l){if(typeof l=="number")return l;if(on(l))return q;if(fe(l)){var c=typeof l.valueOf=="function"?l.valueOf():l;l=fe(c)?c+"":c}if(typeof l!="string")return l===0?l:+l;l=A9(l);var v=U7.test(l);return v||Fr.test(l)?Qr(l.slice(2),v?2:8):N8.test(l)?q:+l}function _d(l){return n6(l,Bt(l))}function Rb(l){return l?U5(v0(l),-N1,N1):l===0?l:0}function $0(l){return l==null?"":rn(l)}var Lb=E9(function(l,c){if(w4(c)||Ft(c)){n6(c,je(c),l);return}for(var v in c)U0.call(c,v)&&m4(l,v,c[v])}),xd=E9(function(l,c){n6(c,Bt(c),l)}),za=E9(function(l,c,v,R){n6(c,Bt(c),l,R)}),Ib=E9(function(l,c,v,R){n6(c,je(c),l,R)}),Fb=x6(ho);function Bb(l,c){var v=k9(l);return c==null?v:ic(v,c)}var Db=T0(function(l,c){l=U1(l);var v=-1,R=c.length,Q=R>2?c[2]:d;for(Q&&Tt(c[0],c[1],Q)&&(R=1);++v 1),b2}),n6(l,Lo(l),v),R&&(v=yn(v,J|Y|k2,Kv));for(var Q=c.length;Q--;)_o(v,c[Q]);return v});function tT(l,c){return Pd(l,Ua(a0(c)))}var nT=x6(function(l,c){return l==null?{}:kv(l,c)});function Pd(l,c){if(l==null)return{};var v=te(Lo(l),function(R){return[R]});return c=a0(c),Sc(l,v,function(R,Q){return c(R,Q[0])})}function aT(l,c,v){c=a5(c,l);var R=-1,Q=c.length;for(Q||(Q=1,l=d);++R c){var R=l;l=c,c=R}if(v||l%1||c%1){var Q=ec();return it(l+Q*(c-l+X7("1e-"+((Q+"").length-1))),c)}return To(l,c)}var mT=N9(function(l,c,v){return c=c.toLowerCase(),l+(v?Nd(c):c)});function Nd(l){return qo($0(l).toLowerCase())}function Rd(l){return l=$0(l),l&&l.replace(m9,m0).replace(Wr,"")}function pT(l,c,v){l=$0(l),c=rn(c);var R=l.length;v=v===d?R:U5(v0(v),0,R);var Q=v;return v-=c.length,v>=0&&l.slice(v,Q)==c}function gT(l){return l=$0(l),l&&X0.test(l)?l.replace(pt,D0):l}function yT(l){return l=$0(l),l&>.test(l)?l.replace(ee,"\\$&"):l}var vT=N9(function(l,c,v){return l+(v?"-":"")+c.toLowerCase()}),ST=N9(function(l,c,v){return l+(v?" ":"")+c.toLowerCase()}),wT=Fc("toLowerCase");function bT(l,c,v){l=$0(l),c=v0(c);var R=c?X6(l):0;if(!c||R>=c)return l;var Q=(c-R)/2;return Ea(ya(Q),v)+l+Ea(ga(Q),v)}function TT(l,c,v){l=$0(l),c=v0(c);var R=c?X6(l):0;return c&&R>>0,v?(l=$0(l),l&&(typeof c=="string"||c!=null&&!Vo(c))&&(c=rn(c),!c&&Lt(l))?i5(an(l),0,v):l.split(c,v)):[]}var kT=N9(function(l,c,v){return l+(v?" ":"")+qo(c)});function ET(l,c,v){return l=$0(l),v=v==null?0:U5(v0(v),0,l.length),c=rn(c),l.slice(v,v+c.length)==c}function NT(l,c,v){var R=g2.templateSettings;v&&Tt(l,c,v)&&(c=d),l=$0(l),c=za({},c,R,zc);var Q=za({},c.imports,R.imports,zc),b2=je(Q),O2=s4(Q,b2),X2,d3,K3=0,Q3=c.interpolate||p9,f1="__p += '",I1=X1((c.escape||p9).source+"|"+Q3.source+"|"+(Q3===x5?Ir:p9).source+"|"+(c.evaluate||p9).source+"|$","g"),V1="//# sourceURL="+(U0.call(c,"sourceURL")?(c.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++Hr+"]")+` +`;l.replace(I1,function(r0,M0,I0,sn,Ct,ln){return I0||(I0=sn),f1+=l.slice(K3,ln).replace(L8,_9),M0&&(X2=!0,f1+=`' + +__e(`+M0+`) + +'`),Ct&&(d3=!0,f1+=`'; +`+Ct+`; +__p += '`),I0&&(f1+=`' + +((__t = (`+I0+`)) == null ? '' : __t) + +'`),K3=ln+r0.length,r0}),f1+=`'; +`;var i0=U0.call(c,"variable")&&c.variable;if(!i0)f1=`with (obj) { `+f1+` } -`;else if(J6.test(a0))throw new $3(M);f1=(d3?f1.replace(z3,""):f1).replace(U1,"$1").replace(I0,"$1;"),f1="function("+(a0||"obj")+`) { -`+(a0?"":`obj || (obj = {}); +`;else if(J6.test(i0))throw new $3(M);f1=(d3?f1.replace(h2,""):f1).replace(R3,"$1").replace(J1,"$1;"),f1="function("+(i0||"obj")+`) { +`+(i0?"":`obj || (obj = {}); `)+"var __t, __p = ''"+(X2?", __e = _.escape":"")+(d3?`, __j = Array.prototype.join; function print() { __p += __j.call(arguments, '') } `:`; `)+f1+`return __p -}`;var S0=Id(function(){return d1(w2,H1+"return "+f1).apply(d,O2)});if(S0.source=f1,Wo(S0))throw S0;return S0}function RT(l){return $0(l).toLowerCase()}function LT(l){return $0(l).toUpperCase()}function IT(l,c,v){if(l=$0(l),l&&(v||c===d))return A9(l);if(!l||!(c=rn(c)))return l;var R=an(l),Q=an(c),w2=l4(R,Q),O2=oa(R,Q)+1;return i5(R,w2,O2).join("")}function FT(l,c,v){if(l=$0(l),l&&(v||c===d))return l.slice(0,F5(l)+1);if(!l||!(c=rn(c)))return l;var R=an(l),Q=oa(R,an(c))+1;return i5(R,0,Q).join("")}function BT(l,c,v){if(l=$0(l),l&&(v||c===d))return l.replace(en,"");if(!l||!(c=rn(c)))return l;var R=an(l),Q=l4(R,an(c));return i5(R,Q).join("")}function DT(l,c){var v=a3,R=w3;if(fe(c)){var Q="separator"in c?c.separator:Q;v="length"in c?y0(c.length):v,R="omission"in c?rn(c.omission):R}l=$0(l);var w2=l.length;if(Lt(l)){var O2=an(l);w2=O2.length}if(v>=w2)return l;var X2=v-X6(R);if(X2<1)return R;var d3=O2?i5(O2,0,X2).join(""):l.slice(0,X2);if(Q===d)return d3+R;if(O2&&(X2+=d3.length-X2),Vo(Q)){if(l.slice(X2).search(Q)){var K3,Q3=d3;for(Q.global||(Q=X1(Q.source,$0(G7.exec(Q))+"g")),Q.lastIndex=0;K3=Q.exec(Q3);)var f1=K3.index;d3=d3.slice(0,f1===d?X2:f1)}}else if(l.indexOf(rn(Q),X2)!=X2){var I1=d3.lastIndexOf(Q);I1>-1&&(d3=d3.slice(0,I1))}return d3+R}function GT(l){return l=$0(l),l&&g0.test(l)?l.replace(Et,so):l}var UT=N9(function(l,c,v){return l+(v?" ":"")+c.toUpperCase()}),qo=Fc("toUpperCase");function Ld(l,c,v){return l=$0(l),c=v?d:c,c===d?ao(l)?k(l):Zr(l):l.match(c)||[]}var Id=b0(function(l,c){try{return nt(l,d,c)}catch(v){return Wo(v)?v:new $3(v)}}),OT=x6(function(l,c){return vt(c,function(v){v=a6(v),A6(l,v,Yo(l[v],l))}),l});function jT(l){var c=l==null?0:l.length,v=n0();return l=c?te(l,function(R){if(typeof R[1]!="function")throw new q0(_);return[v(R[0]),R[1]]}):[],b0(function(R){for(var Q=-1;++Q N1)return[];var v=F,R=it(l,F);c=n0(c),l-=F;for(var Q=o4(R,c);++v 0||c<0)?new P0(v):(l<0?v=v.takeRight(-l):l&&(v=v.drop(l)),c!==d&&(c=y0(c),v=c<0?v.dropRight(-c):v.take(c-l)),v)},P0.prototype.takeRightWhile=function(l){return this.reverse().takeWhile(l).reverse()},P0.prototype.toArray=function(){return this.take(F)},t6(P0.prototype,function(l,c){var v=/^(?:filter|find|map|reject)|While$/.test(c),R=/^(?:head|last)$/.test(c),Q=g2[R?"take"+(c=="last"?"Right":""):c],w2=R||/^find/.test(c);Q&&(g2.prototype[c]=function(){var O2=this.__wrapped__,X2=R?[1]:arguments,d3=O2 instanceof P0,K3=X2[0],Q3=d3||p0(O2),f1=function(x0){var L0=Q.apply(g2,nn([x0],X2));return R&&I1?L0[0]:L0};Q3&&v&&typeof K3=="function"&&K3.length!=1&&(d3=Q3=!1);var I1=this.__chain__,H1=!!this.__actions__.length,a0=w2&&!I1,S0=d3&&!H1;if(!w2&&Q3){O2=S0?O2:new P0(this);var i0=l.apply(O2,X2);return i0.__actions__.push({func:Fa,args:[f1],thisArg:d}),new gn(i0,I1)}return a0&&S0?l.apply(this,X2):(i0=this.thru(f1),a0?R?i0.value()[0]:i0.value():i0)})}),vt(["pop","push","shift","sort","splice","unshift"],function(l){var c=at[l],v=/^(?:push|sort|unshift)$/.test(l)?"tap":"thru",R=/^(?:pop|shift)$/.test(l);g2.prototype[l]=function(){var Q=arguments;if(R&&!this.__chain__){var w2=this.value();return c.apply(p0(w2)?w2:[],Q)}return this[v](function(O2){return c.apply(p0(O2)?O2:[],Q)})}}),t6(P0.prototype,function(l,c){var v=g2[c];if(v){var R=v.name+"";U0.call(P9,R)||(P9[R]=[]),P9[R].push({name:c,func:v})}}),P9[Pa(d,F2).name]=[{name:"wrapper",func:d}],P0.prototype.clone=Gy,P0.prototype.reverse=Uy,P0.prototype.value=Oy,g2.prototype.at=pw,g2.prototype.chain=gw,g2.prototype.commit=yw,g2.prototype.next=vw,g2.prototype.plant=ww,g2.prototype.reverse=bw,g2.prototype.toJSON=g2.prototype.valueOf=g2.prototype.value=Tw,g2.prototype.first=g2.prototype.head,u4&&(g2.prototype[u4]=Sw),g2},M2=e2();Xn?((Xn.exports=M2)._=M2,V8._=M2):Ie._=M2}).call(H2)});function p3(O,N){var d=N.parentNode;d.lastChild==N?d.appendChild(O):d.insertBefore(O,N.nextSibling)}var G3=function(){function O(N,d){a(this,O),this.id=d,this.jSPlugin=N,this.state={play:!1,loading:!1,text:""},this.loadingSetText=this.loadingSetText}return r(O,[{key:"toString",value:function(){return"".concat(this.coreX,"-").concat(this.coreY)}},{key:"setPlayStatus",value:function(d){this.state=Object.assign(this.state,d)}},{key:"loadingStart",value:function(d){var f=document.createElement("style");document.getElementsByTagName("head")[0].appendChild(f),f.innerHTML="@keyframes antRotate {to {transform: rotate(400deg);transform-origin:50% 50%;}} .loading {display: inline-block;z-index: 1000;-webkit-animation: antRotate 1s infinite linear;animation: antRotate 1s infinite linear;}";var y=d,b=document.getElementById(y),_=b.offsetWidth,M=b.offsetHeight,a2=0,Z=b.offsetLeft;document.getElementById("".concat(d,"-loading-id-0"))&&document.getElementById("".concat(d,"-loading-id-0")).parentNode.removeChild(document.getElementById("".concat(d,"-loading-id-0")));var t2=document.createElement("div");t2.setAttribute("id","".concat(d,"-loading-id-0"));var y2="position:absolute;outline:none;pointer-events:none;";console.log("this.jSPlugin",this.jSPlugin),y2+="width: 100%;background-size: cover; background-repeat:no-repeat;",y2+="height: 100%;",y2+="top:"+a2+";",y2+="left:"+Z+"px;",t2.setAttribute("style",y2),t2.style.height=M,t2.setAttribute("class","loading-container"),p3(t2,b);var J=1,Y=document.createElement("div"),k2=document.createElement("div");Y.setAttribute("class","loading-item"),Y.setAttribute("id","".concat(d,"-loading-item-0"));var y2="display:inline-flex;pointer-events:none;flex-direction:column;justify-content:center;align-items: center;width:100%;height:"+M+"px;outline:none;vertical-align: top;position:absolute;";y2+="left:"+s2(M,_,J,0).left+"px;",y2+="top:"+s2(M,_,J,0).top+"px;",Y.setAttribute("style",y2);function s2(n2,T,D,W){var x2=parseInt(W/D,10)*(n2/D),N2=W%D*(T/D);return{top:x2,left:N2}}var f2=document.createElement("div");k2.innerHTML="",k2.style.color="#fff",f2.setAttribute("class","loading"),f2.setAttribute("id","loading-icon");var F2='';f2.innerHTML=F2,Y.appendChild(f2),Y.appendChild(k2),t2.appendChild(Y)}},{key:"loadingStop",value:function(d){var f=document.getElementById("".concat(d,"-loading-item-0"));f&&f.removeChild(document.getElementById("loading-icon"))}},{key:"loadingSetText",value:function(d){var f=this;if(this.loadingClearText(),document.getElementById("".concat(this.id,"-loading-item-0"))){var y=document.getElementById("".concat(this.id,"-loading-item-0")).childNodes[1];if(!y){var b=document.getElementById("".concat(this.id,"-loading-item-0"));b.style.height="100%",y=document.createElement("div"),y.innerHTML=d.text,b.appendChild(y)}y.innerHTML=d.text,y.style.fontSize="14px",y.style.color=d.color||"#FFFFFF",this.state.text=d.text,d.delayClear&&setTimeout(function(){f.loadingClearText()},parseInt(d.delayClear))}}},{key:"loadingClearText",value:function(){if(document.getElementById("".concat(this.id,"-loading-item-0"))){var d=document.getElementById("".concat(this.id,"-loading-item-0")).childNodes;d.length>1?d[1].parentNode.removeChild(d[1]):d[0]&&d[0].parentNode.removeChild(d[0])}}},{key:"loadingClear",value:function(){if(document.getElementById("".concat(this.id,"-loading-item-0"))){for(var d=document.getElementById("".concat(this.id,"-loading-item-0")).childNodes,f=d.length-1;f>=0;f--)d[f].parentNode.removeChild(d[f]);document.getElementById("".concat(this.id,"-loading-id-0"))&&(document.getElementById("".concat(this.id,"-loading-id-0")).style.background="none"),document.getElementById("loading-icon")&&document.getElementById("loading-icon").parentNode.removeChild(document.getElementById("loading-icon"))}}},{key:"loadingEnd",value:function(){var d=document.getElementById("".concat(this.id,"-loading-item-0"));if(d){d.parentNode.removeChild(d);var f=document.getElementById("".concat(this.id,"-loading-id-0"));f&&f.children.length===0&&f.parentNode.removeChild(f)}document.getElementById("".concat(this.id,"-loading-item-0")).style.background="none"}}]),O}(),b3=function(){function O(N,d){a(this,O),this.id=d,this.jSPlugin=N,this.timer=null,this.state={play:!1,loading:!1}}return r(O,[{key:"default",value:function(d){var f=this,y="msgId";document.getElementById("".concat(this.id,"-").concat(y))&&document.getElementById("".concat(this.id,"-wrap")).removeChild(document.getElementById("".concat(this.id,"-").concat(y)));var b=document.createElement("div");b.id="".concat(this.id,"-").concat(y),b.style="position: absolute;top: 50%;left:calc(50% - ".concat(d.length*14/2,"px);padding: 4px 16px;background: #00000080;color: #FFFFFF;font-size: 14px"),b.innerHTML=d,document.getElementById("".concat(this.id,"-wrap")).appendChild(b),this.timer&&clearTimeout(this.timer),this.timer=setTimeout(function(){document.getElementById("".concat(f.id,"-wrap")).removeChild(document.getElementById("".concat(f.id,"-").concat(y)))},2e3)}}]),O}(),Y3=[{moduleCode:"",detailCode:"405984",description:"",solution:"",updateTime:1559564188e3},{moduleCode:"",detailCode:"10035",description:"获取子账户AccessToken异常,子账户不存在或子账户不属于该开发者",solution:"",updateTime:1559551958e3},{moduleCode:"",detailCode:"1052674",description:"获取本地录像失败",solution:"",updateTime:1558579653e3},{moduleCode:"",detailCode:"395547",description:"",solution:"",updateTime:1557367296e3},{moduleCode:"",detailCode:"12",description:"",solution:"",updateTime:1557229476e3},{moduleCode:"",detailCode:"10052",description:"余额不足",solution:"",updateTime:1557121463e3},{moduleCode:"",detailCode:"20108",description:"当前用户和所添加用户不是好友关系",solution:"",updateTime:1556541725e3},{moduleCode:"",detailCode:"10009",description:"",solution:"",updateTime:1556422452e3},{moduleCode:"",detailCode:"320001",description:"通道不存在",solution:"请检查录像机的关联状态是否正常,没有摄像头的通道无法播放",updateTime:1556419044e3},{moduleCode:"",detailCode:"120001",description:"通道不存在",solution:"请检查录像机的关联状态是否正常,没有摄像头的通道无法播放",updateTime:155641903e4},{moduleCode:"",detailCode:"320049",description:"",solution:"",updateTime:1556272984e3},{moduleCode:"",detailCode:"380227",description:"",solution:"",updateTime:1556264379e3},{moduleCode:"",detailCode:"10033",description:"policy参数信息异常",solution:"",updateTime:1555922124e3},{moduleCode:"",detailCode:"10065",description:"weakAppKey 不属于accessToken对应的用户",solution:"",updateTime:1555497522e3},{moduleCode:"",detailCode:"100001",description:"",solution:"",updateTime:1555141776e3},{moduleCode:"",detailCode:"395558",description:"",solution:"",updateTime:1554987121e3},{moduleCode:"",detailCode:"70001",description:"智能家居买断用户设备受到限制,建议合理选择pagestart和pageSize",solution:"",updateTime:1554691023e3},{moduleCode:"",detailCode:"170001",description:"",solution:"",updateTime:1554691023e3},{moduleCode:"",detailCode:"1012",description:"重置失败",solution:"",updateTime:1554645841e3},{moduleCode:"",detailCode:"1043",description:"重置失败",solution:"",updateTime:1554645834e3},{moduleCode:"",detailCode:"60060",description:"直播功能未开通",solution:"通道未开通直播功能,请先开通直播",updateTime:1554346018e3},{moduleCode:"",detailCode:"380203",description:"",solution:"",updateTime:1554093666e3},{moduleCode:"",detailCode:"399048",description:"免费版并发数达到上限,请升级企业版使用多并发能力",solution:"升级成为企业版套餐即可取消并发数限制",updateTime:1553839878e3},{moduleCode:"",detailCode:"60007",description:"预置点个数超过最大值",solution:"",updateTime:1553671316e3},{moduleCode:"",detailCode:"1005",description:"",solution:"",updateTime:1553513701e3},{moduleCode:"",detailCode:"20605",description:"其他用户正在认证中",solution:"",updateTime:1552976317e3},{moduleCode:"",detailCode:"90004",description:"当前型号设备暂时不支持AI任务:CS-C3W-3B1WFR-YGL",solution:"",updateTime:1552898525e3},{moduleCode:"",detailCode:"60046",description:"添加的设备的IP和本设备的IP冲突",solution:"",updateTime:1552872372e3},{moduleCode:"",detailCode:"3",description:"修改视频清晰度失败!",solution:"",updateTime:1552440229e3},{moduleCode:"",detailCode:"1013",description:"",solution:"",updateTime:1552035069e3},{moduleCode:"",detailCode:"370007",description:"",solution:"",updateTime:1551852327e3},{moduleCode:"",detailCode:"-1",description:"",solution:"",updateTime:1551752889e3},{moduleCode:"",detailCode:"30005",description:"弱账户不存在",solution:"",updateTime:1551422358e3},{moduleCode:"",detailCode:"90006",description:"用户操作AI任务受限",solution:"",updateTime:155107332e4},{moduleCode:"",detailCode:"60203",description:"未开通相关服务",solution:"",updateTime:155062307e4},{moduleCode:"",detailCode:"10002",description:"accessToken过期或异常",solution:"",updateTime:1550300346e3},{moduleCode:"",detailCode:"380339",description:"",solution:"",updateTime:1549889458e3},{moduleCode:"",detailCode:"90002",description:"AI任务设备配置数达到上限:3",solution:"",updateTime:1549071664e3},{moduleCode:"",detailCode:"380008",description:"",solution:"",updateTime:1549005979e3},{moduleCode:"",detailCode:"320227",description:"",solution:"",updateTime:1548739731e3},{moduleCode:"",detailCode:"60059",description:"ezopen地址均不可用",solution:"",updateTime:154839535e4},{moduleCode:"",detailCode:"10005",description:"appKey异常",solution:"",updateTime:1548317858e3},{moduleCode:"",detailCode:"60045",description:"添加的设备的IP和其他通道的IP冲突",solution:"",updateTime:1548155085e3},{moduleCode:"",detailCode:"60047",description:"码流类型不支持",solution:"",updateTime:1547962108e3},{moduleCode:"",detailCode:"60041",description:"添加的设备被其他设备关联或响应超时",solution:"",updateTime:154796098e4},{moduleCode:"",detailCode:"110029",description:"个人用户接口调用频率超限",solution:"请升级企业版:https://open.ys7.com/price.html",updateTime:1547606859e3},{moduleCode:"",detailCode:"380355",description:"设备直连推流异常结束",solution:"",updateTime:1547106294e3},{moduleCode:"",detailCode:"320081",description:"",solution:"",updateTime:1547106279e3},{moduleCode:"",detailCode:"60035",description:"购买云存储服务失败",solution:"",updateTime:1547026959e3},{moduleCode:"",detailCode:"90005",description:"设备已存在:C75714141",solution:"",updateTime:1546940622e3},{moduleCode:"",detailCode:"1053445",description:"该时间段没有录像片段",solution:"",updateTime:1546935727e3},{moduleCode:"",detailCode:"90007",description:"设备未加入到AI任务",solution:"",updateTime:1546932948e3},{moduleCode:"",detailCode:"326000",description:"",solution:"",updateTime:1546823143e3},{moduleCode:"",detailCode:"1021",description:"重置失败",solution:"",updateTime:1546781152e3},{moduleCode:"",detailCode:"2001",description:"删除设备失败!",solution:"",updateTime:1546422886e3},{moduleCode:"",detailCode:"380425",description:"",solution:"",updateTime:1546407694e3},{moduleCode:"",detailCode:"120097",description:"",solution:"",updateTime:1546085995e3},{moduleCode:"",detailCode:"10059",description:"requestId已存在",solution:"",updateTime:1545824509e3},{moduleCode:"",detailCode:"1154723",description:"",solution:"",updateTime:1545795209e3},{moduleCode:"",detailCode:"60043",description:"添加的设备超出最大数量",solution:"",updateTime:1545493607e3},{moduleCode:"",detailCode:"1152677",description:"",solution:"",updateTime:1545313404e3},{moduleCode:"",detailCode:"20097",description:"设备添加异常,设备验证码为ABCDEF或设备被N1,R1关联",solution:"",updateTime:1545310795e3},{moduleCode:"",detailCode:"10060",description:"设备不支持该云存储类型",solution:"",updateTime:1545309064e3},{moduleCode:"",detailCode:"20102",description:"无相应邀请信息,无法接受邀请",solution:"",updateTime:1545204966e3},{moduleCode:"",detailCode:"10053",description:"云存储开通中",solution:"",updateTime:1545100293e3},{moduleCode:"",detailCode:"20401",description:"用户云空间信息不存在",solution:"",updateTime:154501788e4},{moduleCode:"",detailCode:"20600",description:"临时密码数已达上限",solution:"",updateTime:1544873457e3},{moduleCode:"",detailCode:"901",description:"",solution:"",updateTime:1544693519e3},{moduleCode:"",detailCode:"60210",description:"图片数据错误",solution:"",updateTime:1544604457e3},{moduleCode:"",detailCode:"10013",description:"您的应用没有权限调用",solution:"",updateTime:1544416237e3},{moduleCode:"",detailCode:"70007",description:"授权码不存在",solution:"",updateTime:1544179533e3},{moduleCode:"",detailCode:"10015",description:"授权地址不存在",solution:"",updateTime:154416324e4},{moduleCode:"",detailCode:"320423",description:"",solution:"",updateTime:1544100685e3},{moduleCode:"",detailCode:"370009",description:"",solution:"",updateTime:1544077151e3},{moduleCode:"",detailCode:"10031",description:"子账户或萤石用户没有权限",solution:"",updateTime:1543990462e3},{moduleCode:"",detailCode:"10055",description:"设备不支持试用云存储服务",solution:"",updateTime:1543986292e3},{moduleCode:"",detailCode:"60042",description:"添加的设备密码错误",solution:"",updateTime:1543710913e3},{moduleCode:"",detailCode:"60082",description:"设备正在响应本次声源定位",solution:"",updateTime:1543647426e3},{moduleCode:"",detailCode:"10056",description:"设备不支持云存储服务转出",solution:"",updateTime:1543558342e3},{moduleCode:"",detailCode:"20104",description:"好友不存在",solution:"",updateTime:1543492403e3},{moduleCode:"",detailCode:"20111",description:"好友不是等待验证状态,无法接受邀请",solution:"",updateTime:1543492365e3},{moduleCode:"",detailCode:"20107",description:"不能添加自己为好友",solution:"",updateTime:1543480986e3},{moduleCode:"",detailCode:"1",description:"设备返回其他错误",solution:"",updateTime:1543459921e3},{moduleCode:"",detailCode:"60084",description:"当前正在关闭隐私遮蔽",solution:"",updateTime:1543456515e3},{moduleCode:"",detailCode:"380255",description:"",solution:"",updateTime:1543411652e3},{moduleCode:"",detailCode:"20015",description:"设备不支持",solution:"",updateTime:1543390936e3},{moduleCode:"",detailCode:"30003",description:"手机验证码错误",solution:"",updateTime:1543389137e3},{moduleCode:"",detailCode:"20615",description:"锁用户已存在",solution:"",updateTime:1543388325e3},{moduleCode:"",detailCode:"60061",description:"账户流量已超出或未购买,限制开通",solution:"",updateTime:1543372581e3},{moduleCode:"",detailCode:"60020",description:"设备不支持该信令",solution:"",updateTime:1543321636e3},{moduleCode:"",detailCode:"320146",description:"",solution:"",updateTime:1543318472e3},{moduleCode:"",detailCode:"60018",description:"设备升级失败",solution:"",updateTime:1543304928e3},{moduleCode:"",detailCode:"60044",description:"添加的设备网络不可达超时",solution:"",updateTime:1543304102e3},{moduleCode:"",detailCode:"20619",description:"主用户无法删除",solution:"",updateTime:1543290219e3},{moduleCode:"",detailCode:"20608",description:"锁用户不存在",solution:"",updateTime:154328195e4},{moduleCode:"",detailCode:"20609",description:"设备响应超时,门锁通信故障或者电量不足,请重试.",solution:"",updateTime:1543281601e3},{moduleCode:"",detailCode:"1049954",description:"升级设备失败",solution:"",updateTime:1543279264e3},{moduleCode:"",detailCode:"60009",description:"正在调用预置点",solution:"",updateTime:1543238114e3},{moduleCode:"",detailCode:"1052677",description:"获取本地录像失败",solution:"",updateTime:1543207604e3},{moduleCode:"",detailCode:"327000",description:"",solution:"",updateTime:1543196609e3},{moduleCode:"",detailCode:"20021",description:"设备在线,未被用户添加",solution:"",updateTime:1543193436e3},{moduleCode:"",detailCode:"20202",description:"操作留言信息失败",solution:"",updateTime:1543191562e3},{moduleCode:"",detailCode:"1052678",description:"获取本地录像失败",solution:"",updateTime:1543132218e3},{moduleCode:"",detailCode:"1054723",description:"格式化设备失败",solution:"",updateTime:1543129833e3},{moduleCode:"",detailCode:"20109",description:"对应分享不存在",solution:"",updateTime:1543129111e3},{moduleCode:"",detailCode:"60026",description:"设备处于隐私遮蔽状态",solution:"",updateTime:1543110403e3},{moduleCode:"",detailCode:"60083",description:"当前正在开启隐私遮蔽",solution:"",updateTime:1543071148e3},{moduleCode:"",detailCode:"60001",description:"用户无云台控制权限",solution:"",updateTime:1543059167e3},{moduleCode:"",detailCode:"2003",description:"设备不在线",solution:"",updateTime:1543051046e3},{moduleCode:"",detailCode:"-24",description:"设置设备enable错误",solution:"",updateTime:1543042701e3},{moduleCode:"",detailCode:"10018",description:"",solution:"",updateTime:1543041564e3},{moduleCode:"",detailCode:"20103",description:"好友已存在",solution:"",updateTime:154303843e4},{moduleCode:"",detailCode:"70010",description:"授权异常请重试",solution:"",updateTime:154303559e4},{moduleCode:"",detailCode:"60056",description:"删除设备失败",solution:"",updateTime:1543031275e3},{moduleCode:"",detailCode:"60040",description:"添加的设备不在同一局域网",solution:"",updateTime:154303121e4},{moduleCode:"",detailCode:"60019",description:"加密已开启",solution:"",updateTime:1543029931e3},{moduleCode:"",detailCode:"1054722",description:"格式化设备失败",solution:"",updateTime:1543028537e3},{moduleCode:"",detailCode:"20016",description:"当前设备正在格式化",solution:"",updateTime:1543028537e3},{moduleCode:"",detailCode:"10024",description:"透明通道权限校验不通过",solution:"",updateTime:154302554e4},{moduleCode:"",detailCode:"6002",description:"删除设备失败!",solution:"",updateTime:1543025026e3},{moduleCode:"",detailCode:"1011",description:"验证码错误!",solution:"",updateTime:1543016865e3},{moduleCode:"",detailCode:"60032",description:"卡密已使用",solution:"",updateTime:1543006668e3},{moduleCode:"",detailCode:"10034",description:"子账号已存在",solution:"",updateTime:1542989194e3},{moduleCode:"",detailCode:"20301",description:"根据uuid查询联动信息不存在",solution:"",updateTime:1542988651e3},{moduleCode:"",detailCode:"1041",description:"获取验证码过于频繁",solution:"",updateTime:1542980953e3},{moduleCode:"",detailCode:"10012",description:"该appkey下已绑定重复的phone!",solution:"",updateTime:15429808e5},{moduleCode:"",detailCode:"1008",description:"phone不合法!",solution:"",updateTime:1542979812e3},{moduleCode:"",detailCode:"60023",description:"订阅操作失败",solution:"",updateTime:1542979006e3},{moduleCode:"",detailCode:"5",description:"设备返回其他错误",solution:"",updateTime:1542977828e3},{moduleCode:"",detailCode:"60006",description:"云台当前操作失败",solution:"",updateTime:1542977598e3},{moduleCode:"",detailCode:"131",description:"修改视频清晰度失败!",solution:"",updateTime:1542977246e3},{moduleCode:"",detailCode:"10019",description:"密码错误",solution:"",updateTime:1542976628e3},{moduleCode:"",detailCode:"10004",description:"用户不存在",solution:"",updateTime:1542976268e3},{moduleCode:"",detailCode:"20201",description:"操作报警信息失败",solution:"",updateTime:1542975906e3},{moduleCode:"",detailCode:"20024",description:"设备不在线,已经被别的用户添加",solution:"",updateTime:1542975858e3},{moduleCode:"",detailCode:"60004",description:"设备云台旋转达到左限位",solution:"",updateTime:1542975207e3},{moduleCode:"",detailCode:"1052679",description:"修改视频清晰度失败!",solution:"",updateTime:1542974886e3},{moduleCode:"",detailCode:"20031",description:"请在萤石客户端关闭终端绑定",solution:"",updateTime:1542974756e3},{moduleCode:"",detailCode:"1053825",description:"获取本地录像失败",solution:"",updateTime:1542974692e3},{moduleCode:"",detailCode:"60011",description:"预置点不存在",solution:"",updateTime:1542974414e3},{moduleCode:"",detailCode:"1052936",description:"修改视频清晰度失败!",solution:"",updateTime:154297439e4},{moduleCode:"",detailCode:"1016",description:"",solution:"",updateTime:1542974273e3},{moduleCode:"",detailCode:"10032",description:"子账号不存在",solution:"",updateTime:1542973906e3},{moduleCode:"",detailCode:"20013",description:"设备已被别人添加",solution:"",updateTime:1542973817e3},{moduleCode:"",detailCode:"50000",description:"服务器错误!",solution:"",updateTime:1542973801e3},{moduleCode:"",detailCode:"60010",description:"该预置点已经是当前位置",solution:"",updateTime:15429738e5},{moduleCode:"",detailCode:"60003",description:"设备云台旋转达到下限位",solution:"",updateTime:154297377e4},{moduleCode:"",detailCode:"4",description:"设备返回其他错误",solution:"",updateTime:1542973755e3},{moduleCode:"",detailCode:"60016",description:"加密未开启,无需关闭",solution:"",updateTime:1542973753e3},{moduleCode:"",detailCode:"60002",description:"设备云台旋转达到上限位",solution:"",updateTime:1542973742e3},{moduleCode:"",detailCode:"20023",description:"设备不在线,未被用户添加",solution:"",updateTime:1542973685e3},{moduleCode:"",detailCode:"10008",description:"",solution:"",updateTime:1542973676e3},{moduleCode:"",detailCode:"20010",description:"设备验证码错误",solution:"",updateTime:1542973658e3},{moduleCode:"",detailCode:"60005",description:"设备云台旋转达到右限位",solution:"",updateTime:1542973657e3},{moduleCode:"",detailCode:"20017",description:"设备已经被自己添加",solution:"",updateTime:1542973648e3},{moduleCode:"",detailCode:"20020",description:"设备在线,已经被自己添加",solution:"",updateTime:1542973533e3},{moduleCode:"",detailCode:"20029",description:"设备不在线,已经被自己添加",solution:"",updateTime:154297353e4},{moduleCode:"",detailCode:"10014",description:"APPKEY下对应的第三方userId和phone未绑定!",solution:"",updateTime:1542973499e3},{moduleCode:"",detailCode:"20002",description:"设备不存在",solution:"",updateTime:1542973499e3},{moduleCode:"",detailCode:"10030",description:"appkey和appsecret不匹配",solution:"",updateTime:154297349e4},{moduleCode:"",detailCode:"20022",description:"设备在线,已经被别的用户添加",solution:"",updateTime:1542973486e3},{moduleCode:"",detailCode:"20008",description:"设备响应超时",solution:"",updateTime:1542973484e3},{moduleCode:"",detailCode:"20032",description:"该用户下通道不存在",solution:"",updateTime:1542973481e3},{moduleCode:"",detailCode:"20006",description:"网络异常",solution:"",updateTime:1542973475e3},{moduleCode:"",detailCode:"20014",description:"deviceSerial不合法!",solution:"",updateTime:1542973454e3},{moduleCode:"",detailCode:"20007",description:"设备不在线",solution:"",updateTime:1542973454e3},{moduleCode:"",detailCode:"20018",description:"该用户不拥有该设备",solution:"",updateTime:1542973453e3},{moduleCode:"",detailCode:"10010",description:"",solution:"",updateTime:1542973453e3},{moduleCode:"",detailCode:"10011",description:"未绑定!",solution:"",updateTime:1542973453e3},{moduleCode:"",detailCode:"20001",description:"通道不存在!",solution:"",updateTime:1542973452e3},{moduleCode:"",detailCode:"10017",description:"appKey不存在",solution:"",updateTime:1542973451e3},{moduleCode:"",detailCode:"400259",description:"",solution:"",updateTime:1542875643e3},{moduleCode:"",detailCode:"400004",description:"",solution:"",updateTime:1542873364e3},{moduleCode:"",detailCode:"3840",description:"",solution:"",updateTime:154186e7},{moduleCode:"",detailCode:"-1017",description:"",solution:"",updateTime:1541733663e3},{moduleCode:"",detailCode:"320025",description:"",solution:"",updateTime:1541078281e3},{moduleCode:"",detailCode:"320024",description:"",solution:"",updateTime:1540801374e3},{moduleCode:"",detailCode:"321002",description:"",solution:"",updateTime:1540631734e3},{moduleCode:"",detailCode:"321000",description:"",solution:"",updateTime:1540609178e3},{moduleCode:"",detailCode:"321022",description:"",solution:"",updateTime:1540548345e3},{moduleCode:"",detailCode:"321016",description:"",solution:"",updateTime:1540287187e3},{moduleCode:"",detailCode:"320023",description:"",solution:"",updateTime:1539825993e3},{moduleCode:"",detailCode:"-1016",description:"",solution:"",updateTime:1539584931e3},{moduleCode:"",detailCode:"8",description:"",solution:"",updateTime:1539391812e3},{moduleCode:"",detailCode:"1075127593",description:"",solution:"",updateTime:1538959251e3},{moduleCode:"",detailCode:"380421",description:"",solution:"",updateTime:1537288465e3},{moduleCode:"",detailCode:"322000",description:"麦克风权限未开启",solution:"",updateTime:1536820136e3},{moduleCode:"",detailCode:"1152678",description:"",solution:"",updateTime:1536738348e3},{moduleCode:"",detailCode:"320047",description:"",solution:"",updateTime:1536664472e3},{moduleCode:"",detailCode:"327006",description:"",solution:"",updateTime:153613612e4},{moduleCode:"",detailCode:"1074807593",description:"",solution:"",updateTime:1536135035e3},{moduleCode:"",detailCode:"320291",description:"",solution:"",updateTime:1536110836e3},{moduleCode:"",detailCode:"320045",description:"",solution:"",updateTime:1535963775e3},{moduleCode:"",detailCode:"370004",description:"",solution:"",updateTime:1535883699e3},{moduleCode:"",detailCode:"1149954",description:"",solution:"",updateTime:1535700674e3},{moduleCode:"",detailCode:"320053",description:"",solution:"",updateTime:1535681079e3},{moduleCode:"",detailCode:"400000",description:"",solution:"",updateTime:1535532332e3},{moduleCode:"",detailCode:"110028",description:"个人版抓图接口日调用次数超出限制",solution:"请升级企业版:https://open.ys7.com/price.html",updateTime:1535348756e3},{moduleCode:"",detailCode:"110027",description:"个人版帐号数量超出安全限制,无法调用",solution:"请升级企业版:https://open.ys7.com/price.html",updateTime:1535348734e3},{moduleCode:"",detailCode:"110026",description:"设备数量超出个人版限制,当前设备无法操作",solution:"请升级企业版:https://open.ys7.com/price.html",updateTime:1535348588e3},{moduleCode:"",detailCode:"100000",description:"",solution:"",updateTime:1534980008e3},{moduleCode:"",detailCode:"324004",description:"",solution:"",updateTime:1534927762e3},{moduleCode:"",detailCode:"360104",description:"",solution:"",updateTime:1534761006e3},{moduleCode:"",detailCode:"320204",description:"",solution:"",updateTime:1534584221e3},{moduleCode:"",detailCode:"380001",description:"",solution:"",updateTime:1534404715e3},{moduleCode:"",detailCode:"380204",description:"",solution:"",updateTime:1534401682e3},{moduleCode:"",detailCode:"328006",description:"",solution:"",updateTime:1534144407e3},{moduleCode:"",detailCode:"321703",description:"",solution:"",updateTime:1534127274e3},{moduleCode:"",detailCode:"321510",description:"",solution:"",updateTime:1533428892e3},{moduleCode:"",detailCode:"321006",description:"",solution:"",updateTime:1533036916e3},{moduleCode:"",detailCode:"50009",description:"",solution:"",updateTime:1532078548e3},{moduleCode:"",detailCode:"50007",description:"",solution:"",updateTime:153199172e4},{moduleCode:"",detailCode:"50018",description:"",solution:"",updateTime:1531912829e3},{moduleCode:"",detailCode:"380451",description:"",solution:"",updateTime:15316157e5},{moduleCode:"",detailCode:"380336",description:"",solution:"",updateTime:1531231721e3},{moduleCode:"",detailCode:"360020",description:"",solution:"",updateTime:1531117554e3},{moduleCode:"",detailCode:"380418",description:"",solution:"",updateTime:153110707e4},{moduleCode:"",detailCode:"1153445",description:"设备在该时间段内没有录像",solution:"",updateTime:1530944007e3},{moduleCode:"",detailCode:"110007",description:"调用接口总次数达到上限",solution:"请升级企业版,获取更高能力",updateTime:1530935584e3},{moduleCode:"",detailCode:"360019",description:"",solution:"",updateTime:1530869771e3},{moduleCode:"",detailCode:"360100",description:"",solution:"",updateTime:1530786188e3},{moduleCode:"",detailCode:"380042",description:"",solution:"",updateTime:1530775199e3},{moduleCode:"",detailCode:"320355",description:"",solution:"",updateTime:1530716074e3},{moduleCode:"",detailCode:"100003",description:"",solution:"",updateTime:1530232541e3},{moduleCode:"",detailCode:"371026",description:"",solution:"",updateTime:15301926e5},{moduleCode:"",detailCode:"102",description:"",solution:"",updateTime:1529895641e3},{moduleCode:"",detailCode:"380201",description:"",solution:"",updateTime:1529740929e3},{moduleCode:"",detailCode:"320054",description:"",solution:"",updateTime:1529544875e3},{moduleCode:"",detailCode:"500101",description:"",solution:"",updateTime:1529485953e3},{moduleCode:"",detailCode:"321001",description:"",solution:"",updateTime:1529411048e3},{moduleCode:"",detailCode:"321508",description:"",solution:"",updateTime:1529393279e3},{moduleCode:"",detailCode:"405991",description:"",solution:"",updateTime:1529380238e3},{moduleCode:"",detailCode:"380461",description:"",solution:"",updateTime:1529130941e3},{moduleCode:"",detailCode:"-1019",description:"",solution:"",updateTime:1529057245e3},{moduleCode:"",detailCode:"322009",description:"",solution:"",updateTime:1528965717e3},{moduleCode:"",detailCode:"324005",description:"",solution:"",updateTime:1528950153e3},{moduleCode:"",detailCode:"325000",description:"",solution:"",updateTime:1528947143e3},{moduleCode:"",detailCode:"326032",description:"",solution:"",updateTime:1528872971e3},{moduleCode:"",detailCode:"325032",description:"",solution:"",updateTime:1528863189e3},{moduleCode:"",detailCode:"328000",description:"",solution:"",updateTime:1528794505e3},{moduleCode:"",detailCode:"53",description:"",solution:"",updateTime:1528693249e3},{moduleCode:"",detailCode:"-1020",description:"",solution:"",updateTime:152849944e4},{moduleCode:"",detailCode:"329032",description:"",solution:"",updateTime:1528446301e3},{moduleCode:"",detailCode:"-1202",description:"",solution:"",updateTime:152843982e4},{moduleCode:"",detailCode:"2",description:"",solution:"",updateTime:1528434175e3},{moduleCode:"",detailCode:"1152936",description:"",solution:"",updateTime:1528345986e3},{moduleCode:"",detailCode:"328011",description:"",solution:"",updateTime:15283386e5},{moduleCode:"",detailCode:"28",description:"",solution:"",updateTime:152833753e4},{moduleCode:"",detailCode:"320356",description:"",solution:"",updateTime:1528188693e3},{moduleCode:"",detailCode:"320357",description:"",solution:"",updateTime:1528188517e3},{moduleCode:"",detailCode:"405800",description:"",solution:"",updateTime:1528168732e3},{moduleCode:"",detailCode:"405996",description:"",solution:"",updateTime:1528168686e3},{moduleCode:"",detailCode:"380357",description:"",solution:"",updateTime:1528011565e3},{moduleCode:"",detailCode:"328022",description:"",solution:"",updateTime:1527929065e3},{moduleCode:"",detailCode:"380003",description:"",solution:"",updateTime:1527927819e3},{moduleCode:"",detailCode:"50004",description:"",solution:"",updateTime:1527770643e3},{moduleCode:"",detailCode:"50011",description:"",solution:"",updateTime:1527770635e3},{moduleCode:"",detailCode:"370017",description:"",solution:"",updateTime:1527739514e3},{moduleCode:"",detailCode:"327032",description:"",solution:"",updateTime:1527726704e3},{moduleCode:"",detailCode:"324001",description:"",solution:"",updateTime:1527681892e3},{moduleCode:"",detailCode:"405997",description:"",solution:"",updateTime:1527653408e3},{moduleCode:"",detailCode:"405995",description:"",solution:"",updateTime:1527647283e3},{moduleCode:"",detailCode:"1153825",description:"",solution:"",updateTime:1527601747e3},{moduleCode:"",detailCode:"328002",description:"",solution:"",updateTime:1527495292e3},{moduleCode:"",detailCode:"1152679",description:"",solution:"",updateTime:1527486665e3},{moduleCode:"",detailCode:"380356",description:"",solution:"",updateTime:1527125669e3},{moduleCode:"",detailCode:"328032",description:"",solution:"",updateTime:1527069382e3},{moduleCode:"",detailCode:"22",description:"",solution:"",updateTime:1527049826e3},{moduleCode:"",detailCode:"9",description:"",solution:"",updateTime:1527006778e3},{moduleCode:"",detailCode:"89",description:"",solution:"",updateTime:1526622784e3},{moduleCode:"",detailCode:"328016",description:"",solution:"",updateTime:1526452365e3},{moduleCode:"",detailCode:"368005",description:"",solution:"",updateTime:1525921264e3},{moduleCode:"",detailCode:"0",description:"",solution:"",updateTime:1525920242e3},{moduleCode:"",detailCode:"380006",description:"",solution:"",updateTime:1525918868e3},{moduleCode:"",detailCode:"310",description:"",solution:"",updateTime:1525834436e3},{moduleCode:"",detailCode:"360011",description:"",solution:"",updateTime:1525681552e3},{moduleCode:"",detailCode:"170005",description:"",solution:"",updateTime:15254339e5},{moduleCode:"",detailCode:"50023",description:"",solution:"",updateTime:1525403338e3},{moduleCode:"",detailCode:"100131",description:"",solution:"",updateTime:1525229691e3},{moduleCode:"",detailCode:"-1018",description:"",solution:"",updateTime:1525142341e3},{moduleCode:"",detailCode:"362026",description:"",solution:"",updateTime:1524882677e3},{moduleCode:"",detailCode:"368007",description:"",solution:"",updateTime:1524832269e3},{moduleCode:"",detailCode:"54",description:"",solution:"",updateTime:1524793646e3},{moduleCode:"",detailCode:"1154722",description:"",solution:"",updateTime:1524620807e3},{moduleCode:"",detailCode:"320229",description:"",solution:"",updateTime:1524551682e3},{moduleCode:"",detailCode:"360012",description:"",solution:"",updateTime:1524472094e3},{moduleCode:"",detailCode:"380229",description:"",solution:"",updateTime:1524110755e3},{moduleCode:"",detailCode:"360016",description:"",solution:"",updateTime:1523933518e3},{moduleCode:"",detailCode:"-1003",description:"",solution:"",updateTime:1523584804e3},{moduleCode:"",detailCode:"410026",description:"",solution:"",updateTime:152351743e4},{moduleCode:"",detailCode:"360102",description:"TTS初始化失败",solution:"",updateTime:1523503528e3},{moduleCode:"",detailCode:"360013",description:"设备开启了隐私保护",solution:"",updateTime:1523503507e3},{moduleCode:"",detailCode:"360010",description:"设备正在对讲中",solution:"",updateTime:1523503491e3},{moduleCode:"",detailCode:"360007",description:"TTS关闭了与客户端的连接",solution:"",updateTime:1523503475e3},{moduleCode:"",detailCode:"360006",description:"客户端接收发生错误",solution:"",updateTime:1523503457e3},{moduleCode:"",detailCode:"360005",description:"客户端发送的消息错误",solution:"",updateTime:1523503437e3},{moduleCode:"",detailCode:"360004",description:"TTS内部发生错误",solution:"",updateTime:1523503421e3},{moduleCode:"",detailCode:"360003",description:"TTS的设备端发生错误",solution:"",updateTime:1523503397e3},{moduleCode:"",detailCode:"360002",description:"对讲发起超时",solution:"",updateTime:1523503376e3},{moduleCode:"",detailCode:"360001",description:"客户端请求超时",solution:"",updateTime:1523503357e3},{moduleCode:"",detailCode:"320077",description:"",solution:"",updateTime:1523444274e3},{moduleCode:"",detailCode:"370047",description:"",solution:"",updateTime:152344048e4},{moduleCode:"",detailCode:"100002",description:"",solution:"",updateTime:1523413964e3},{moduleCode:"",detailCode:"-1004",description:"",solution:"",updateTime:1523336653e3},{moduleCode:"",detailCode:"380000",description:"",solution:"",updateTime:1523180856e3},{moduleCode:"",detailCode:"380213",description:"",solution:"",updateTime:1523180623e3},{moduleCode:"",detailCode:"380101",description:"",solution:"",updateTime:1522834231e3},{moduleCode:"",detailCode:"50047",description:"",solution:"",updateTime:1522833243e3},{moduleCode:"",detailCode:"-999",description:"",solution:"",updateTime:1522831034e3},{moduleCode:"",detailCode:"320418",description:"",solution:"",updateTime:1522829072e3},{moduleCode:"",detailCode:"-1009",description:"",solution:"",updateTime:1522746247e3},{moduleCode:"",detailCode:"320209",description:"",solution:"",updateTime:1522744395e3},{moduleCode:"",detailCode:"368006",description:"",solution:"",updateTime:15227443e5},{moduleCode:"",detailCode:"369003",description:"",solution:"",updateTime:1522736355e3},{moduleCode:"",detailCode:"405989",description:"",solution:"",updateTime:1522726571e3},{moduleCode:"",detailCode:"-1012",description:"",solution:"",updateTime:1522726203e3},{moduleCode:"",detailCode:"322016",description:"",solution:"",updateTime:1522722918e3},{moduleCode:"",detailCode:"500103",description:"",solution:"",updateTime:1522655556e3},{moduleCode:"",detailCode:"405999",description:"",solution:"",updateTime:1522654716e3},{moduleCode:"",detailCode:"321032",description:"",solution:"",updateTime:1522647732e3},{moduleCode:"",detailCode:"381101",description:"",solution:"",updateTime:1522392414e3},{moduleCode:"",detailCode:"399999",description:"",solution:"",updateTime:1522379834e3},{moduleCode:"",detailCode:"380103",description:"",solution:"",updateTime:1522312724e3},{moduleCode:"",detailCode:"360014",description:"",solution:"",updateTime:1522304341e3},{moduleCode:"",detailCode:"-1005",description:"",solution:"",updateTime:1522288195e3},{moduleCode:"",detailCode:"100005",description:"",solution:"",updateTime:1522218849e3},{moduleCode:"",detailCode:"100004",description:"",solution:"",updateTime:1522209053e3},{moduleCode:"",detailCode:"106002",description:"",solution:"",updateTime:15222062e5},{moduleCode:"",detailCode:"410030",description:"",solution:"",updateTime:1522162252e3},{moduleCode:"",detailCode:"-1002",description:"",solution:"",updateTime:152215069e4},{moduleCode:"",detailCode:"-1200",description:"",solution:"",updateTime:1522139025e3},{moduleCode:"",detailCode:"-1001",description:"",solution:"",updateTime:1522046436e3},{moduleCode:"",detailCode:"-1011",description:"",solution:"",updateTime:1522045931e3},{moduleCode:"",detailCode:"381102",description:"",solution:"",updateTime:1522044953e3},{moduleCode:"",detailCode:"381103",description:"",solution:"",updateTime:1522044953e3},{moduleCode:"",detailCode:"391205",description:"vtdu解析服务器ip失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"391206",description:"vtdu描述符select失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"391207",description:"vtdu文件描述符不在可读中",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"391208",description:"vtdu网络发生错误getsockopt",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"391209",description:"vtdu描述符select超时",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395000",description:"cas回复信令,发现内存已经释放(和设备之间异常断开)",msg:"播放失败请重试",solution:"检查设备网络;刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395400",description:"私有化协议vtm检测私有化协议中码流类型小于0或者设备序列号为空等非法参数场景返回(app不重试取流)",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395402",description:"回放找不到录像文件",msg:"回放找不到录像文件,本地存储请检查存储卡是否接触良好",solution:"检查是否有存储卡并且接触良好",updateTime:1522034841e3},{moduleCode:"",detailCode:"395403",description:"操作码或信令密钥与设备不匹配",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395404",description:"设备不在线",solution:"检查设备网络;重启设备接入萤石云",msg:"设备不在线,请检查设备网络或重启设备接入萤石云",updateTime:1522034841e3},{moduleCode:"",detailCode:"395405",description:"流媒体向设备发送或接受信令超时/cas响应超时",msg:"播放失败,请检查设备网络或重启设备",solution:"检查设备网络;重启设备",updateTime:1522034841e3},{moduleCode:"",detailCode:"395406",description:"token失效",msg:"播放失败请重试或重启设备",solution:"刷新重试或者重启设备",updateTime:1522034841e3},{moduleCode:"",detailCode:"395407",description:"客户端的URL格式错误",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395409",description:"预览开启隐私保护",msg:"播放失败请关闭隐私遮蔽",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395410",description:"设备达到最大连接数",solution:"请升级设备固件版本",updateTime:1522034841e3},{moduleCode:"",detailCode:"395411",description:"token无权限",msg:"播放失败",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395412",description:"session不存在",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395413",description:"验证token的他异常(不具体) ",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395415",description:"设备通道错",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395416",description:"设备资源受限",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395451",description:"设备不支持的码流类型",msg:"播放失败请重试或切换设备码流",solution:"刷新重试或者切换到高清模式",updateTime:1522034841e3},{moduleCode:"",detailCode:"395452",description:"设备链接流媒体服务器失败",msg:"播放失败,请检查设备网络或重启设备或重新加载",solution:"检查设备网络,重启设备,刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395454",description:"流媒体中关于设备取流会话不存在",msg:"播放失败请重试",solution:"流媒体中关于设备取流会话不存在",updateTime:152222018e4},{moduleCode:"",detailCode:"395455",description:"设备通道未关联",msg:"播放失败,请检查设备通道是否关联",solution:"检查设备通道是否关联",updateTime:152222018e4},{moduleCode:"",detailCode:"395456",description:"设备通道关联设备不在线",msg:"播放失败,请检查设备通道是否上线",solution:"检查设备通道是否上线",updateTime:152222018e4},{moduleCode:"",detailCode:"395457",description:"客户端不支持端到端加密",msg:"播放失败",solution:"客户端不支持端到端加密",updateTime:152222018e4},{moduleCode:"",detailCode:"395458",description:"设备不支持当前并发ECDH密",msg:"客户端不支持端到端加密",solution:"设备不支持当前并发ECDH密",updateTime:152222018e4},{moduleCode:"",detailCode:"395459",description:"VTDU 处理ECDH 加密失败",msg:"播放失败",solution:"VTDU 处理ECDH 加密失败",updateTime:152222018e4},{moduleCode:"",detailCode:"395460",description:"流媒体中关于设备取流会话不存在",msg:"播放失败请重试",solution:"流媒体中关于设备取流会话不存在",updateTime:152222018e4},{moduleCode:"",detailCode:"395492",description:"设备不支持的命令",msg:"操作失败,设备不支持",solution:"",updateTime:152222018e4},{moduleCode:"",detailCode:"395500",description:"服务器处理失败",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395501",description:"流媒体vtdu达到最大负载,请扩容",msg:"播放失败请重试",solution:"服务器负载达到上限,请稍后重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395503",description:"vtm返回分配vtdu失败",msg:"播放失败请重试",solution:"vtdu服务异常,请请稍后重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395504",description:"流媒体vtdu达到最大负载",msg:"播放失败请重试",solution:"服务器负载达到上限,请稍后重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395505",description:"vtm ecdh解密失败",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395506",description:"vtm 返回IPC不支持取流(需要IPC添加NVR后支持)",msg:"播放失败,请绑定NVR使用",solution:"IPC绑定NVR使用",updateTime:1522034841e3},{moduleCode:"",detailCode:"395544",description:"设备返回无视频源",msg:"播放失败,请检查设备接触情况",solution:"设备是否接触良好; 如果一直无法解决,请联系技术支持",updateTime:1522034841e3},{moduleCode:"",detailCode:"395545",description:"视频分享时间已经结束",msg:"视频分享时间已结束",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395546",description:"vtdu返回达到取流并发路数限制",msg:"并发上限,请升级为企业版",solution:"请升级为企业版,放开并发限制",updateTime:1522034841e3},{moduleCode:"",detailCode:"395547",description:"vtdu返回开放平台用户并发限制",msg:"并发上限,请升级为企业版",solution:"请确定开放平台用户预览是否超过用户并发数量限制",updateTime:1522034841e3},{moduleCode:"",detailCode:"395556",description:"ticket校验失败",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395557",description:"回放服务器等待流头超时",msg:"播放失败请重试",solution:"刷新重试,检测设备网络,重启设备",updateTime:1522034841e3},{moduleCode:"",detailCode:"395558",description:"查找录像开始时间错误",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395560",description:"群组分享取流二次验证失败",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395561",description:"分享群组用户被锁住",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395562",description:"群组分享用户权限变更",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395563",description:"认证服务连接失败",msg:"播放失败请重试",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395564",description:"认证超时",msg:"播放失败请重试",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395566",description:"不在分享时间内预览",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395567",description:"分享通道被锁定",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395568",description:"未找到认证类型",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395569",description:"认证返回的参数异常",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395600",description:"分享设备不在分享时间内",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395601",description:"群组分享用户没权限",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395602",description:"群组分享权限变更",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395610",description:"接收流头失败",msg:"播放失败请重试并检查设备网络情况以及设备配置",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395620",description:"心跳超时",msg:"播放失败请重试并检查设备网络情况以及设备配置",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395530",description:"机房故障不可用",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395701",description:"cas信令返回格式错误",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395702",description:"SPGW请求Cas、Status透传超时",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395703",description:"SPGW请求http不通",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396001",description:"客户端参数出错",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396099",description:"客户端默认错误",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396101",description:"不支持的命令",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396102",description:"设备流头发送失败",msg:"播放失败请重试",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396103",description:"cas/设备返回错误1",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396104",description:"cas/设备返回错误-1",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396105",description:"设备返回错误码3",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396106",description:"设备返回错误码4",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396107",description:"设备返回错误码5",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396108",description:"cas信令回应重复",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396109",description:"视频广场取消分享",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396110",description:"设备信令默认错误",msg:"播放失败请重试",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396501",description:"设备数据链路和实际链路不匹配",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396502",description:"设备数据链路重复建立连接",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396503",description:"设备数据链路端口不匹配",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396504",description:"缓存设备数据链路失败(内存块不足)",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396505",description:"设备发送确认头消息重复",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396506",description:"设备数据先于确定头部到达",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396508",description:"设备数据头部长度非法",msg:"播放失败请重试或重启设备",solution:"刷新重试,或者重启设备",updateTime:1522034841e3},{moduleCode:"",detailCode:"396509",description:"索引找不到设备数据管理块",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396510",description:"设备数据链路vtdu内存块协议状态不匹配",msg:"播放失败请重试或重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396511",description:"设备数据头部没有streamkey错误",msg:"播放失败请重试或重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396512",description:"设备数据头部非法(较笼统)",msg:"播放失败请重试或重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396513",description:"设备数据长度过小",msg:"播放失败请重试或重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396514",description:"设备老协议推流头部没有streamkey错误",msg:"播放失败请重试或重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396515",description:"设备老协议推流数据非法",msg:"播放失败请重试或重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396516",description:"设备老协议索引找不到内存管理块",msg:"播放失败请重试或重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396517",description:"设备老协议推流数据非法",msg:"播放失败请重试或重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396518",description:"设备数据包过大",msg:"播放失败请重试或重启设备",solution:"刷新重试,或者重启设备",updateTime:1522034841e3},{moduleCode:"",detailCode:"396519",description:"设备推流链路网络不稳定",msg:"播放失败,请重试或重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396520",description:"设备推流链路网络不稳定(默认)",msg:"播放失败请重试或重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396700",description:"异常数据包",msg:"播放失败,设备重启",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396701",description:"回放结束数据包",msg:"回放结束",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"397001",description:"与相应服务连接失败",msg:"播放失败请重试,请检查设备网络情况以及连接情况",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"397002",description:"与相应服务连接失败",msg:"播放失败请重试,请检查设备网络情况以及连接情况",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"397003",description:"与相应服务连接失败",msg:"播放失败请重试,请检查设备网络情况以及连接情况",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"397004",description:"与相应服务连接失败",msg:"播放失败请重试,请检查设备网络情况以及连接情况",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"397005",description:"VTDU连接失败,或VTDU侧断开连接",msg:"播放失败请重试,请检查设备网络情况以及连接情况",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"397006",description:"vtm断开连接(无需 关注)",msg:"播放失败请重试,请检查设备网络情况以及连接情况",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"397007",description:"客户端发送缓冲区满(上行带宽太小)",msg:"播放失败,上行带宽过小请检查设备网络情况",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"399000",description:"无效包,包过大",msg:" 检查设备重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"399001",description:"地址不合法",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"399002",description:"缺少端口",msg:" 播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"170003",description:"refreshToken不存在",solution:"建议用户重新调用logout接口,然后调用openLoginPage接口重新启动登录页面登录",updateTime:1522034841e3},{moduleCode:"",detailCode:"170004",description:"refreshToken已过期",solution:"建议用户重新调用logout接口,然后调用openLoginPage接口重新启动登录页面登录",updateTime:1522034841e3},{moduleCode:"",detailCode:"380011",description:"设备隐私保护中",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"380045",description:"设备直连取流连接数量过大",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"380047",description:"设备不支持该命令",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"380077",description:"设备正在对讲中",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"380102",description:"数据接收异常",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"380205",description:"设备检测入参异常",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"380209",description:"网络连接超时",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"380212",description:"设备端网络连接超时",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"101007",description:"手机号未注册",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120503",description:"正在响铃",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390016",description:"vtdu成功响应未携带流头",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101008",description:"手机号码不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120504",description:"室内机正在通话",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390017",description:"无数据流,尚未使用",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101009",description:"用户名与手机不匹配",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120505",description:"设备操作失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390018",description:"信令消息体PB解析失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101010",description:"获取验证码失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120506",description:"非法命令",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390019",description:"信令消息体PB封装失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101011",description:"验证码错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120507",description:"智能锁密码错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390020",description:"申请系统内存资源失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101012",description:"验证码失效",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120508",description:"开关锁失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390021",description:"vtdu地址尚未获取到",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101013",description:"用户不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120509",description:"开关锁超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390022",description:"客户端尚未支持",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101014",description:"密码不正确或者appKey不正确",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120510",description:"智能锁设备繁忙",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390023",description:"获取系统socket资源失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101015",description:"用户被锁住",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120511",description:"远程开锁功能未打开",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390024",description:"上层填充的StreamSsnId不匹配",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101021",description:"验证参数异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120600",description:"临时密码数已达上限",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390025",description:"链接服务器失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101026",description:"邮箱已经被注册",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120601",description:"添加临时密码失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390026",description:"客户端请求未收到服务端应答",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101031",description:"邮箱未注册",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120602",description:"删除临时密码失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390027",description:"链路断开",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101032",description:"邮箱不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120603",description:"该临时密码不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390028",description:"没有取流链接",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101041",description:"获取验证码过于频繁",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120604",description:"指纹锁射频通信失败,请稍后再试",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390029",description:"流成功停止",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101043",description:"手机验证码输入错误超过规定次数",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120605",description:"其他用户正在认证中",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390030",description:"客户端防串流校验失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"102000",description:"设备不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120606",description:"验证已启动,请在120s内进行本地验证和调用添加设备接口",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390031",description:"应用层tcp粘包处理缓冲区满",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"102001",description:"摄像机不存在",solution:"摄像机未注册到萤石云平台,请仔细检查摄像机的网络配置,确保连接到网络",updateTime:152203484e4},{moduleCode:"",detailCode:"120607",description:"删除用户失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390032",description:"无效状态迁移",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"102003",description:"设备不在线",solution:"参考服务中心排查方法",updateTime:152203484e4},{moduleCode:"",detailCode:"120608",description:"用户不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390033",description:"无效客户端状态",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"102004",description:"设备异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120609",description:"设备响应超时,门锁通信故障或者电量不足,请重试.",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390034",description:"向vtm取流流媒体信息请求超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"102007",description:"设备序列号不正确",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120610",description:"获取临时密码列表失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390035",description:"向代理取流请求超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"102009",description:"设备请求响应超时异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"130001",description:"用户不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390036",description:"向代理保活取流请求超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"105000",description:"设备已被自己添加",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"130002",description:"手机号码已经注册",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390037",description:"向vtdu取流请求超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"105001",description:"设备已被别人添加",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"130003",description:"手机验证码错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390038",description:"向vtdu保活取流请求超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"105002",description:"设备验证码错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"130004",description:"终端绑定操作失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391001",description:"vtm地址或端口非法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"107001",description:"邀请不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"149999",description:"数据异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391002",description:"vtm生成文件描述符失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"107002",description:"邀请验证失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"150000",description:"服务器异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391003",description:"vtm设置文件描述符非阻塞失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"107003",description:"邀请用户不匹配",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160000",description:"设备不支持云台控制",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391004",description:"vtm设置文件描述符阻塞失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"107004",description:"云存储连接失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160001",description:"用户无云台控制权限",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391005",description:"vtm解析服务器ip失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"7005",description:"VTDU主动断开连接",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"107005",description:"VTDU主动断开连接",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160002",description:"设备云台旋转达到上限位",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391006",description:"vtm描述符select失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"107006",description:"不能邀请自己",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160003",description:"设备云台旋转达到下限位",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391007",description:"vtm文件描述符不在可读中",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"107007",description:"重复邀请",solution:"分享和删除分享必须全部由接口形式操作,如果与萤石客户端混用会造成这个问题,解决办法:在萤石客户端清空所有相关分享数据并重新添加设备,再通过接口操作即可",updateTime:152203484e4},{moduleCode:"",detailCode:"160004",description:"设备云台旋转达到左限位",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391008",description:"vtm网络发生错误getsockopt",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110001",description:"参数错误",solution:"参数为空或者格式不对",updateTime:152203484e4},{moduleCode:"",detailCode:"160005",description:"设备云台旋转达到右限位",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391009",description:"vtm描述符select超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110002",description:"accessToken异常或过期",solution:"accessToken有效期为七天,建议在accessToken即将过期或者出现10002错误码的时候重新获取accessToken",updateTime:152203484e4},{moduleCode:"",detailCode:"160006",description:"云台当前操作失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391101",description:"proxy地址或端口非法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110004",description:"用户不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160007",description:"预置点个数超过最大值",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391102",description:"proxy生成文件描述符失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110005",description:"appKey异常",solution:"确认appKey状态,不通过或者冻结状态会返回该错误码",updateTime:152203484e4},{moduleCode:"",detailCode:"160009",description:"正在调用预置点",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391103",description:"proxy设置文件描述符非阻塞失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110006",description:"ip受限",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160010",description:"该预置点已经是当前位置",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391104",description:"proxy设置文件描述符阻塞失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160011",description:"预置点不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391105",description:"proxy解析服务器ip失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110008",description:"签名错误",solution:"①获取签名方式详见apidemo及[旧]API文档 ②注意编码格式为UTF-8",updateTime:152203484e4},{moduleCode:"",detailCode:"160013",description:"设备版本已是最新",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391106",description:"proxy描述符select失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110009",description:"签名参数错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160014",description:"设备正在升级",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391107",description:"proxy文件描述符不在可读中",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110010",description:"签名超时",solution:"请调用同步服务器时间接口进行校时",updateTime:152203484e4},{moduleCode:"",detailCode:"160015",description:"设备正在重启",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391108",description:"proxy网络发生错误getsockopt",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110011",description:"未开通萤石云服务",solution:"参照绑定流程",updateTime:152203484e4},{moduleCode:"",detailCode:"160016",description:"加密未开启,无须关闭",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391109",description:"proxy描述符select超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110012",description:"第三方账户与萤石账号已经绑定",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160017",description:"设备抓图失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391201",description:"vtdu地址或端口非法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110013",description:"应用没有权限调用此接口",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160018",description:"设备升级失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391202",description:"vtdu生成文件描述符失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110014",description:"APPKEY下对应的第三方userId和phone未绑定",solution:"获取AccessToken时所用appKey与SDK所用appKey不一致",updateTime:152203484e4},{moduleCode:"",detailCode:"160019",description:"加密已开启",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391203",description:"vtdu设置文件描述符非阻塞失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110017",description:"appKey不存在",solution:"请填写在官网申请的应用秘钥",updateTime:152203484e4},{moduleCode:"",detailCode:"160020",description:"不支持该命令",solution:"请确认设备是否支持该命令",updateTime:152203484e4},{moduleCode:"",detailCode:"391204",description:"vtdu设置文件描述符阻塞失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110018",description:"AccessToken与Appkey不匹配",solution:"请检查获取accessToken对应的appKey和SDK中设置的appKey是否一致",updateTime:152203484e4},{moduleCode:"",detailCode:"160023",description:"订阅操作失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110019",description:"密码错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160024",description:"取消订阅操作失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110020",description:"请求方法为空",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160025",description:"客流统计配置失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110021",description:"ticket校验失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160026",description:"设备处于隐私遮蔽状态",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110022",description:"透传目的地非法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160027",description:"设备正在镜像操作",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110024",description:"无透传权限",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160028",description:"设备正在键控动作",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110025",description:"appKey被禁止使用通明通道",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160029",description:"设备处于语音对讲状态",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160030",description:"卡密输入错误次数过多,24小时后再输入",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160031",description:"卡密信息不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160032",description:"卡密状态不对或已过期",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160033",description:"卡密非卖品,只能开通对应的绑定设备",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110030",description:"appKey和appSecret不匹配",solution:"请检查appKey和appSecret是否对应",updateTime:152203484e4},{moduleCode:"",detailCode:"160035",description:"购买云存储服务失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110031",description:"子账户或萤石用户没有权限",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160040",description:"添加的设备不在同一局域网",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110032",description:"子账户不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160041",description:"添加的设备被其他设备关联或响应超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110033",description:"子账户未设置授权策略",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160042",description:"添加的设备密码错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110034",description:"子账户已存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160043",description:"添加的设备超出最大数量",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110035",description:"获取子账户AccessToken异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160044",description:"添加的设备网络不可达超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110036",description:"子账户被禁用",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160045",description:"添加的设备的IP和其他通道的IP冲突",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110051",description:"无权限进行抓图",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160046",description:"添加的设备的IP和本设备的IP冲突",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160047",description:"码流类型不支持",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120002",description:"设备不存在",solution:"①设备没有注册到萤石云平台,请检查下设备网络参数,确保能正常连接网络②设备序列号不存在",updateTime:152203484e4},{moduleCode:"",detailCode:"160048",description:"带宽超出系统接入带宽",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120003",description:"参数异常,SDK版本过低",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160049",description:"IP或者端口不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120004",description:"参数异常,SDK版本过低",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160050",description:"添加的设备版本不支持需要升级才能接入",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120005",description:"安全认证失败,需进行SDK安全认证",solution:"已去掉安全验证",updateTime:152203484e4},{moduleCode:"",detailCode:"160051",description:"添加的设备不支持接入",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120006",description:"网络异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160052",description:"添加的设备通道号出错",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120007",description:"设备不在线",solution:"参考服务中心排查方法",updateTime:152203484e4},{moduleCode:"",detailCode:"160053",description:"添加的设备分辨率不支持",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120008",description:"设备响应超时",solution:"设备响应超时,请检测设备网络或重试",updateTime:152203484e4},{moduleCode:"",detailCode:"160054",description:"添加的设备账号被锁定",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120009",description:"子账号不能添加设备",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160055",description:"添加的设备取码流出错",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120010",description:"设备验证码错误",solution:"验证码在设备标签上,六位大写字母,注意大小写",updateTime:152203484e4},{moduleCode:"",detailCode:"160056",description:"删除设备失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120012",description:"设备添加失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160057",description:"删除的设备未关联",solution:"检查IPC与NVR是否有关联关系",updateTime:152203484e4},{moduleCode:"",detailCode:"120013",description:"设备已被别人添加",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160060",description:"地址未绑定",solution:"请前往官网设置直播",updateTime:152203484e4},{moduleCode:"",detailCode:"120014",description:"设备序列号不正确",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160061",description:"账户流量已超出或未购买,限制开通",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120015",description:"设备不支持该功能",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160062",description:"该通道直播已开通",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120016",description:"当前设备正在格式化",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160063",description:"直播未使用或直播已关闭",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120017",description:"设备已被自己添加",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160070",description:"设备不能转移给自己",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120018",description:"该用户不拥有该设备",solution:"确认设备是否属于用户",updateTime:152203484e4},{moduleCode:"",detailCode:"160071",description:"设备不能转移,设备与其他设备存在关联关系",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400001",description:"参数为空",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120019",description:"设备不支持云存储服务",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160072",description:"设备不能转移,通道被分享给其他用户或者分享到视频广场",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400002",description:"参数错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120020",description:"设备在线,被自己添加",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160073",description:"云存储转移失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400025",description:"设备不支持对讲",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120021",description:"设备在线,但是未被用户添加",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160080",description:"当前正在声源定位",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400029",description:"没有初始化或资源被释放",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120022",description:"设备在线,但是已经被别的用户添加",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160081",description:"当前正在轨迹巡航",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400030",description:"json解析异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120023",description:"设备不在线,未被用户添加",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160082",description:"设备正在响应本次声源定位",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400031",description:"网络异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120024",description:"设备不在线,但是已经被别的用户添加",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160083",description:"当前正在开启隐私遮蔽",solution:"设备正在操作隐私遮蔽,无法进行当前操作",updateTime:152203484e4},{moduleCode:"",detailCode:"400032",description:"设备信息异常为空",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120025",description:"重复申请分享",solution:"确认设备是否由添加过该设备且申请过分享的账户下是否还存在分享记录",updateTime:152203484e4},{moduleCode:"",detailCode:"160084",description:"当前正在关闭隐私遮蔽",solution:"设备正在操作隐私遮蔽,无法进行当前操作",updateTime:152203484e4},{moduleCode:"",detailCode:"400034",description:"取流超时",solution:"一般是由于网络状况不好导致,可以尝试下让用户重新播放",updateTime:152203484e4},{moduleCode:"",detailCode:"120026",description:"视频广场不存在该视频",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"380290",description:" 连接CAS服务器失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400035",description:"设备已加密,需要输入验证码",solution:"收到此错误码,需要让用户输入验证码后,调用EZPlayer.setPlayKey传入验证码,并重新调用播放函数",updateTime:152203484e4},{moduleCode:"",detailCode:"120027",description:"视频转码失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361001",description:"对讲服务端排队超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400036",description:"播放验证码错误",solution:"收到此错误码,需要让用户输入验证码后,调用EZPlayer.setPlayKey传入验证码,并重新调用播放函数",updateTime:152203484e4},{moduleCode:"",detailCode:"120028",description:"设备固件升级包不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361002",description:"对讲服务端处理超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400037",description:"surfacehold错误",solution:"请检查是否是播放之前销毁了surface,收到此错误也可以重新建立surface后播放",updateTime:152203484e4},{moduleCode:"",detailCode:"120029",description:"设备不在线,但是已经被自己添加",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361003",description:"设备链接对讲服务器超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400100",description:"未知错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120030",description:"该用户不拥有该视频广场视频",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361004",description:"服务器内部错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400200",description:"player sdk出错,这种错误一般开发者也是无法解决,不具体分类传出,传一个统一的inner错误码出去",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120031",description:"开启终端绑定,硬件特征码验证失败",solution:"请在萤石客户端关闭终端绑定,参考此步骤",updateTime:152203484e4},{moduleCode:"",detailCode:"361005",description:"解析消息失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400300",description:"内存溢出",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120032",description:"该用户下通道不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361006",description:"请求重定向--需要向其他服务申请对讲",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400901",description:"设备不在线,可以提示用户",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120033",description:"无法收藏自己分享的视频",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361007",description:"请求url非法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400902",description:"accesstoken异常或失效,需要重新获取accesstoken,并传入到sdk",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120034",description:"该用户下无设备",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361008",description:"token失效",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400903",description:"当前账号开启了终端绑定,只允许指定设备登录操作,提示用户登录i.ys7.com解除终端绑定",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120090",description:"用户反馈失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361009",description:"设备验证码或者通信秘钥不匹配",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400904",description:"设备正在对讲中",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120095",description:"APP包下载失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361010",description:"设备已经在对讲",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400905",description:"设备开启了隐私保护,不允许预览、对讲等",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120096",description:"APP包信息删除失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361011",description:"设备10s响应超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120101",description:"视频不支持分享给本人",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361012",description:"设备不在线",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320002",description:"参数无效",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120102",description:"无相应邀请信息",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361013",description:"设备开启隐私保护拒绝对讲",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320003",description:"暂不支持此操作",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120103",description:"好友已存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361014",description:"token无权限",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320004",description:"内存溢出",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120104",description:"好友不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361015",description:"设备返回session不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320005",description:"创建CAS session失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120105",description:"好友状态错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361016",description:"验证token其他异常错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320006",description:"创建cloud session失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120106",description:"对应群组不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361017",description:"服务端监听设备建立端口超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320007",description:"token失效",solution:"重新设置token后再重试",updateTime:152203484e4},{moduleCode:"",detailCode:"120107",description:"不能添加自己为好友",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361018",description:"设备链路异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320008",description:"token池里面没有token,请传入token",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120108",description:"当前用户和所添加用户不是好友关系",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361019",description:"对讲服务端不支持的信令消息",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320009",description:"传入新的INIT_PARAM并reset(保留,目前未用)",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120109",description:"对应分享不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361020",description:"对讲服务端解析对讲请求未携带会话描述能力集",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320010",description:"请重试",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120110",description:"好友群组不属于当前用户",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361021",description:"对讲服务端优先能力集结果为空",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320011",description:"500毫秒后请重试",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120111",description:"好友不是等待验证状态",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361022",description:"cas链路异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320012",description:"token池已满",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120112",description:"添加应用下的用户为好友失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361023",description:"对讲服务端分配对讲会话资源失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320013",description:"P2P client超过限制",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120201",description:"操作报警信息失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361024",description:"对讲服务端解析信令消息失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320014",description:"sdk未初始化",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120202",description:"操作留言信息失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390001",description:"通用错误返回",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320015",description:"超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120301",description:"根据UUID查询报警消息不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390002",description:"入参为空指针",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320016",description:"正在打洞中",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120302",description:"根据UUID查询图片不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390003",description:"入参值无效",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320017",description:"没有视频文件头(播放器层面产生和处理此错误)",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120303",description:"根据FID查询图片不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390004",description:"信令消息解析非法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320018",description:"解码错误/超时(播放器层面产生和处理此错误)",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120305",description:"设备ip解析错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390005",description:"内存资源不足",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320019",description:"取消(保留,用户不用处理)",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120401",description:"用户云空间信息不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390006",description:"协议格式不对或者消息体长度超过STREAM_MAX_MSGBODY_LEN",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320020",description:"播放过程中预连接被用户清除预操作信息",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120402",description:"云空间操作失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390007",description:"设备序列号长度不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320021",description:"流加密码不对",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120403",description:"用户目录不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390008",description:"取流url长度不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320022",description:"未传入播放窗口",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120404",description:"要操作的目标目录不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390009",description:"解析vtm返回vtdu地址不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"100200",description:"操作成功",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120405",description:"要删除的文件信息不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390010",description:"解析vtm返回级联vtdu地址不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101001",description:"用户名不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120406",description:"已开通云存储",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390011",description:"解析vtm返回会话标识长度不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101002",description:"用户名已被占用",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120407",description:"开通记录失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390012",description:"vtdu返回流头长度不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101003",description:"密码不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120500",description:"获取数据错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390013",description:"vtdu会话长度非法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101004",description:"密码为同一字符",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120501",description:"开锁失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390014",description:"回调函数未注册",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101006",description:"手机号码已经被注册",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120502",description:"室内机未收到呼叫",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390015",description:"vtdu成功响应未携带会话标识",solution:"",updateTime:152203484e4}],o3="200",n1="操作成功!",b1={data:Y3,code:o3,msg:n1},W3=function(){function O(N,d){a(this,O),this.coreX=N,this.coreY=d,console.log("ErrorCode",b1)}return r(O,[{key:"toString",value:function(){return"".concat(this.coreX,"-").concat(this.coreY)}},{key:"matchErrorInfo",value:function(d){return b1.data.find(function(f){return f.detailCode.substr(-4)==d})}}]),O}(),R1={color:"red",backgroundColor:"red",activeColor:"red",btnList:[{btnKey:"ade5d065a113432e8091a1c5bc819c57-934f270c08b14e928bf0c2ae8e1a937d-header-0",iconId:"deviceID",part:"left",defaultActive:1,isrender:1,themeId:"934f270c08b14e928bf0c2ae8e1a937d"},{btnKey:"ade5d065a113432e8091a1c5bc819c57-934f270c08b14e928bf0c2ae8e1a937d-header-1",iconId:"deviceName",part:"left",defaultActive:1,isrender:1,themeId:"934f270c08b14e928bf0c2ae8e1a937d"}]},D1={color:"blue",backgroundColor:"blue",activeColor:"blue",btnList:[{btnKey:"ade5d065a113432e8091a1c5bc819c57-934f270c08b14e928bf0c2ae8e1a937d-footer-0",iconId:"play",part:"left",defaultActive:0,isrender:0,themeId:"934f270c08b14e928bf0c2ae8e1a937d"}]},$1={header:R1,footer:D1},h3=function O(N){this.jsPlugin=N;var d={isMouseDown:!1,isOver:!1,mousePosition:null,oldTime:null,nowTime:null,moved:null,hoverTime:"2018-12-07 12:00:00",hoverLeft:0,timeTipShow:!1,randomNum:123,timeWidthTbls:[60,1800,3600,86400],timeUnits:["范围: 1分钟; 单位: 秒","范围: 30分钟; 单位: 分钟","范围: 1小时; 单位: 分钟","范围: 1天; 单位: 小时","范围: 3天; 单位: 小时"],drawPen:null,timeSection:[],canvasWidth:null,canvasHeight:null,timeTips:null},f=this;Object.keys(d).forEach(function(y){f[y]=d[y]}),this.options={width:this.canvasWidth,height:48,time:new Date().getTime(),timeSection:[],timeWidth:0},O.prototype.subTime=function(y){return y<10?"0"+y:y},O.prototype.tranTime=function(y){var b=y;if(y){var _=new Date(y);b=_.getFullYear()+"/"+(_.getMonth()+1)+"/"+_.getDate()+" "+this.subTime(_.getHours())+":"+this.subTime(_.getMinutes())+":"+this.subTime(_.getSeconds())}return b},O.prototype.init=function(y){y.width&&document.getElementById(y.id).setAttribute("width",parseInt(y.width,10)+"px");var b=this,_=this.options;b.randomNum=(Math.random()+"").split(".").join(""),b.timeWidthTblIndex=_.timeWidth;var M=document.querySelector("#".concat(this.jsPlugin.id,"-canvas"));b.drawPen=M.getContext("2d"),b.nowTime=_.time||Date.now(),b.timeSection=_.timeSection||[],b.canvasWidth=M.offsetWidth,b.canvasHeight=M.offsetHeight,b.updata(),document.getElementById("".concat(this.jsPlugin.id,"-canvas")).addEventListener("mousemove",function(a2){b.options.readOnly||b.mousemove(a2)}),document.getElementById("".concat(this.jsPlugin.id,"-canvas")).addEventListener("mouseover",function(a2){b.options.readOnly||b.mouseover(a2)}),document.getElementById("".concat(this.jsPlugin.id,"-canvas")).addEventListener("mouseleave",function(a2){b.options.readOnly||b.mouseleave(a2)}),document.getElementById("".concat(this.jsPlugin.id,"-canvas")).addEventListener("mousedown",function(a2){b.options.readOnly||b.mousedown(a2)}),document.getElementById("".concat(this.jsPlugin.id,"-canvas")).addEventListener("mouseup",function(a2){if(!b.options.readOnly){var Z=y.onChange;b.mouseUpFn(a2,Z)}})},O.prototype.setWidth=function(y){var b=this,_=this;y.width&&(document.getElementById(this.jsPlugin.id).style.width=y.width,document.getElementById("".concat(this.jsPlugin.id,"-canvas")).style.width=y.width,document.getElementById("".concat(this.jsPlugin.id,"-canvas-container")).style.width=y.width,_.canvasWidth=y.width,setTimeout(function(){b.updata({time:new Date})},500))},O.prototype.mousemove=function(y){if(this.isMouseDown&&this.isOver){var b=this.mousePosition-y.pageX;if(b===0)return;var _=0;switch(this.timeWidth){case 60:_=1/10;break;case 1800:_=1/20*60;break;case 3600:_=1/20*60;break;case 86400:_=1/30*60*60;break}var M=new Date(this.oldTime).getTime()+b*_*1e3;this.updata({time:M}),this.moved=!0}else{var a2=parseInt(document.getElementById("".concat(this.jsPlugin.id,"-canvas-container")).offsetLeft,10);this.mousePosition=y.pageX-a2,this.updata()}},O.prototype.mousedown=function(y){this.isMouseDown=!0,this.mousePosition=y.pageX,this.oldTime=this.nowTime},O.prototype.mouseover=function(y){this.isOver=!0},O.prototype.mouseleave=function(y){this.isOver=!1,this.isMouseDown=!1,this.updata()},O.prototype.changeSize=function(y){console.log("changeSize",y),this.options.timeWidth=y,this.updata({timeWidth:y})},O.prototype.mouseUpFn=function(y,b){if(this.isMouseDown&&(this.isMouseDown=!1,this.moved)){this.moved=!1;var _=this.subTime(new Date(this.nowTime).getHours())+":"+this.subTime(new Date(this.nowTime).getMinutes())+":"+this.subTime(new Date(this.nowTime).getSeconds()),M=new Date(this.oldTime).getFullYear()+"/"+(new Date(this.oldTime).getMonth()+1)+"/"+new Date(this.oldTime).getDate();this.nowTime=new Date("".concat(M," ").concat(_)),this.updata({time:this.nowTime}),this.oldTime=this.nowTime,console.log("nowTime",new Date(this.nowTime),"".concat(M," ").concat(_)),b(this.nowTime)}},O.prototype.readOnly=function(y){console.log("更改为只读"),this.options.readOnly=!0,document.getElementById("".concat(this.jsPlugin.id,"-canvas")).style.cursor="not-allowed"},O.prototype.unReadOnly=function(y){console.log("更改为只读"),this.options.readOnly=!1,document.getElementById("".concat(this.jsPlugin.id,"-canvas")).style.cursor="pointer"},O.prototype.run=function(y){this.isMouseDown||this.updata(y)},O.prototype.getTime=function(y){console.log("this",this),console.log("当前时间",new Date(this.nowTime))},O.prototype.updata=function(y){var b=this;y=y||{},b.nowTime=y.time||b.nowTime,b.timeSection=y.timeSection||b.timeSection,b.timeWidthTblIndex=y.timeWidth||b.timeWidthTblIndex,b.timeWidth=b.timeWidthTbls[y.timeWidth||b.timeWidthTblIndex],b.timeUnit=b.timeUnits[y.timeWidth||b.timeWidthTblIndex],y.timeWidth===0&&(b.timeWidthTblIndex=0,b.timeWidth=b.timeWidthTbls[0],b.timeUnit=b.timeUnits[0]),b.drawPen.fillStyle="#000000",b.drawPen.fillRect(0,0,b.canvasWidth,b.canvasHeight),b.drawScale(),b.drawRecord(),b.drawOtherMsg(),document.getElementById("".concat(this.jsPlugin.id,"-canvas-container")).style.width=b.options.width+"px",document.getElementById("".concat(this.jsPlugin.id,"-canvas")).style.width=b.options.width+"px",document.getElementById("".concat(this.jsPlugin.id,"-canvas-container")).style.height=b.options.height+"px",document.getElementById("".concat(this.jsPlugin.id,"-canvas")).style.height=b.options.height+"px"},O.prototype.drawSolidLine=function(y,b,_,M,a2,Z){this.drawPen.save(),this.drawPen.strokeStyle=Z,this.drawPen.lineWidth=a2,this.drawPen.beginPath(),this.drawPen.moveTo(y,b),this.drawPen.lineTo(_,M),this.drawPen.stroke(),this.drawPen.restore()},O.prototype.drawString=function(y,b,_,M,a2){this.drawPen.font="12px serif",this.drawPen.fillStyle="#ffffff",this.drawPen.textAlign=M||"left",this.drawPen.fillText(y,b,_+10)},O.prototype.drawScale=function(){var y=this,b="rgba(255,255,255)",_=new Date(y.nowTime),M=_.getFullYear(),a2=_.getSeconds(),Z=_.getMinutes(),t2=_.getHours(),J=_.getDate(),Y=0;switch(y.timeWidth){case 60:{var k2=parseInt(y.canvasWidth/10);_.setSeconds(_.getSeconds()-parseInt(k2/2,10)),J=_.getDate(),t2=_.getHours(),Z=_.getMinutes(),a2=_.getSeconds();for(var y2=0;y2 b.canvasWidth&&(y2=b.canvasWidth),y2<=0&&(y2=0),y2}},O.prototype.drawOtherMsg=function(){this.drawSolidLine(this.canvasWidth/2,0,this.canvasWidth/2,this.canvasHeight,2,"#1890FF"),this.drawPen.shadowBlur=0,this.isOver&&!this.isMouseDown?(this.mouseTime=this.mousePosition/this.canvasWidth*this.timeWidth*1e3+this.nowTime-this.timeWidth/2*1e3,this.mouseString=this.tranTime(this.mouseTime),this.hoverTime=this.mouseString,this.hoverLeft=this.mousePosition-60,this.timeTipShow=!0):this.timeTipShow=!1}},x3=function(){function O(N){if(a(this,O),this.jSPlugin=N,!document.getElementById("".concat(this.jSPlugin.id,"-audioControls")))return!1;this.currentTimeWidth=0,this.date=new Date,this.datepickerVisible=!1,this.seekTimer=null,this.disabled=!1,this.seekFrequency=2e3,this.jSPlugin.params&&this.jSPlugin.params.seekFrequency&&(this.seekFrequency=this.jSPlugin.params.seekFrequency),this.recInit()}return r(O,[{key:"recInit",value:function(){var d=this;this.currentTimeWidth=0;var f=parseInt(getComputedStyle(document.getElementById(this.jSPlugin.id)).width,10)-100,y=document.createElement("div");y.style="display:inline-block;height:48px;",y.id=this.jSPlugin.id+"-canvas-container";var b=document.createElement("canvas");b.id=this.jSPlugin.id+"-canvas",b.className="time-line-body",b.height="48",b.width=f,b.style="display:inline-block;",b.innerHTML="该浏览器不支持canvas",y.appendChild(b),g(y,document.getElementById("".concat(this.jSPlugin.id,"-audioControls")));var _=document.createElement("div");_.className="timeline-controls",_.style="display:flex;width:100px;height:48px;text-align:center;line-height: 48px;vertical-align: top;background: #000000;";var M=` +}`;var w0=Id(function(){return d1(b2,V1+"return "+f1).apply(d,O2)});if(w0.source=f1,Wo(w0))throw w0;return w0}function RT(l){return $0(l).toLowerCase()}function LT(l){return $0(l).toUpperCase()}function IT(l,c,v){if(l=$0(l),l&&(v||c===d))return A9(l);if(!l||!(c=rn(c)))return l;var R=an(l),Q=an(c),b2=l4(R,Q),O2=oa(R,Q)+1;return i5(R,b2,O2).join("")}function FT(l,c,v){if(l=$0(l),l&&(v||c===d))return l.slice(0,F5(l)+1);if(!l||!(c=rn(c)))return l;var R=an(l),Q=oa(R,an(c))+1;return i5(R,0,Q).join("")}function BT(l,c,v){if(l=$0(l),l&&(v||c===d))return l.replace(en,"");if(!l||!(c=rn(c)))return l;var R=an(l),Q=l4(R,an(c));return i5(R,Q).join("")}function DT(l,c){var v=a3,R=w3;if(fe(c)){var Q="separator"in c?c.separator:Q;v="length"in c?v0(c.length):v,R="omission"in c?rn(c.omission):R}l=$0(l);var b2=l.length;if(Lt(l)){var O2=an(l);b2=O2.length}if(v>=b2)return l;var X2=v-X6(R);if(X2<1)return R;var d3=O2?i5(O2,0,X2).join(""):l.slice(0,X2);if(Q===d)return d3+R;if(O2&&(X2+=d3.length-X2),Vo(Q)){if(l.slice(X2).search(Q)){var K3,Q3=d3;for(Q.global||(Q=X1(Q.source,$0(G7.exec(Q))+"g")),Q.lastIndex=0;K3=Q.exec(Q3);)var f1=K3.index;d3=d3.slice(0,f1===d?X2:f1)}}else if(l.indexOf(rn(Q),X2)!=X2){var I1=d3.lastIndexOf(Q);I1>-1&&(d3=d3.slice(0,I1))}return d3+R}function GT(l){return l=$0(l),l&&y0.test(l)?l.replace(mt,so):l}var UT=N9(function(l,c,v){return l+(v?" ":"")+c.toUpperCase()}),qo=Fc("toUpperCase");function Ld(l,c,v){return l=$0(l),c=v?d:c,c===d?ao(l)?k(l):Zr(l):l.match(c)||[]}var Id=T0(function(l,c){try{return nt(l,d,c)}catch(v){return Wo(v)?v:new $3(v)}}),OT=x6(function(l,c){return St(c,function(v){v=a6(v),A6(l,v,Yo(l[v],l))}),l});function jT(l){var c=l==null?0:l.length,v=a0();return l=c?te(l,function(R){if(typeof R[1]!="function")throw new q0(_);return[v(R[0]),R[1]]}):[],T0(function(R){for(var Q=-1;++Q N1)return[];var v=F,R=it(l,F);c=a0(c),l-=F;for(var Q=o4(R,c);++v 0||c<0)?new k0(v):(l<0?v=v.takeRight(-l):l&&(v=v.drop(l)),c!==d&&(c=v0(c),v=c<0?v.dropRight(-c):v.take(c-l)),v)},k0.prototype.takeRightWhile=function(l){return this.reverse().takeWhile(l).reverse()},k0.prototype.toArray=function(){return this.take(F)},t6(k0.prototype,function(l,c){var v=/^(?:filter|find|map|reject)|While$/.test(c),R=/^(?:head|last)$/.test(c),Q=g2[R?"take"+(c=="last"?"Right":""):c],b2=R||/^find/.test(c);Q&&(g2.prototype[c]=function(){var O2=this.__wrapped__,X2=R?[1]:arguments,d3=O2 instanceof k0,K3=X2[0],Q3=d3||g0(O2),f1=function(M0){var I0=Q.apply(g2,nn([M0],X2));return R&&I1?I0[0]:I0};Q3&&v&&typeof K3=="function"&&K3.length!=1&&(d3=Q3=!1);var I1=this.__chain__,V1=!!this.__actions__.length,i0=b2&&!I1,w0=d3&&!V1;if(!b2&&Q3){O2=w0?O2:new k0(this);var r0=l.apply(O2,X2);return r0.__actions__.push({func:Fa,args:[f1],thisArg:d}),new gn(r0,I1)}return i0&&w0?l.apply(this,X2):(r0=this.thru(f1),i0?R?r0.value()[0]:r0.value():r0)})}),St(["pop","push","shift","sort","splice","unshift"],function(l){var c=at[l],v=/^(?:push|sort|unshift)$/.test(l)?"tap":"thru",R=/^(?:pop|shift)$/.test(l);g2.prototype[l]=function(){var Q=arguments;if(R&&!this.__chain__){var b2=this.value();return c.apply(g0(b2)?b2:[],Q)}return this[v](function(O2){return c.apply(g0(O2)?O2:[],Q)})}}),t6(k0.prototype,function(l,c){var v=g2[c];if(v){var R=v.name+"";U0.call(P9,R)||(P9[R]=[]),P9[R].push({name:c,func:v})}}),P9[Pa(d,F2).name]=[{name:"wrapper",func:d}],k0.prototype.clone=Gy,k0.prototype.reverse=Uy,k0.prototype.value=Oy,g2.prototype.at=pw,g2.prototype.chain=gw,g2.prototype.commit=yw,g2.prototype.next=vw,g2.prototype.plant=ww,g2.prototype.reverse=bw,g2.prototype.toJSON=g2.prototype.valueOf=g2.prototype.value=Tw,g2.prototype.first=g2.prototype.head,u4&&(g2.prototype[u4]=Sw),g2},M2=e2();Xn?((Xn.exports=M2)._=M2,V8._=M2):Ie._=M2}).call(V2)});function p3(O,N){var d=N.parentNode;d.lastChild==N?d.appendChild(O):d.insertBefore(O,N.nextSibling)}var U3=function(){function O(N,d){a(this,O),this.id=d,this.jSPlugin=N,this.state={play:!1,loading:!1,text:""},this.loadingSetText=this.loadingSetText}return r(O,[{key:"toString",value:function(){return"".concat(this.coreX,"-").concat(this.coreY)}},{key:"setPlayStatus",value:function(d){this.state=Object.assign(this.state,d)}},{key:"loadingStart",value:function(d){var f=document.createElement("style");document.getElementsByTagName("head")[0].appendChild(f),f.innerHTML="@keyframes antRotate {to {transform: rotate(400deg);transform-origin:50% 50%;}} .loading {display: inline-block;z-index: 1000;-webkit-animation: antRotate 1s infinite linear;animation: antRotate 1s infinite linear;}";var y=d,b=document.getElementById(y),_=b.offsetWidth,M=b.offsetHeight,a2=0,Z=b.offsetLeft;document.getElementById("".concat(d,"-loading-id-0"))&&document.getElementById("".concat(d,"-loading-id-0")).parentNode.removeChild(document.getElementById("".concat(d,"-loading-id-0")));var t2=document.createElement("div");t2.setAttribute("id","".concat(d,"-loading-id-0"));var y2="position:absolute;outline:none;pointer-events:none;";console.log("this.jSPlugin",this.jSPlugin),y2+="width: 100%;background-size: cover; background-repeat:no-repeat;",y2+="height: 100%;",y2+="top:"+a2+";",y2+="left:"+Z+"px;",t2.setAttribute("style",y2),t2.style.height=M,t2.setAttribute("class","loading-container"),p3(t2,b);var J=1,Y=document.createElement("div"),k2=document.createElement("div");Y.setAttribute("class","loading-item"),Y.setAttribute("id","".concat(d,"-loading-item-0"));var y2="display:inline-flex;pointer-events:none;flex-direction:column;justify-content:center;align-items: center;width:100%;height:"+M+"px;outline:none;vertical-align: top;position:absolute;";y2+="left:"+o2(M,_,J,0).left+"px;",y2+="top:"+o2(M,_,J,0).top+"px;",Y.setAttribute("style",y2);function o2(n2,T,D,W){var x2=parseInt(W/D,10)*(n2/D),N2=W%D*(T/D);return{top:x2,left:N2}}var d2=document.createElement("div");k2.innerHTML="",k2.style.color="#fff",d2.setAttribute("class","loading"),d2.setAttribute("id","loading-icon");var F2='';d2.innerHTML=F2,Y.appendChild(d2),Y.appendChild(k2),t2.appendChild(Y)}},{key:"loadingStop",value:function(d){var f=document.getElementById("".concat(d,"-loading-item-0"));f&&f.removeChild(document.getElementById("loading-icon"))}},{key:"loadingSetText",value:function(d){var f=this;if(this.loadingClearText(),document.getElementById("".concat(this.id,"-loading-item-0"))){var y=document.getElementById("".concat(this.id,"-loading-item-0")).childNodes[1];if(!y){var b=document.getElementById("".concat(this.id,"-loading-item-0"));b.style.height="100%",y=document.createElement("div"),y.innerHTML=d.text,b.appendChild(y)}y.innerHTML=d.text,y.style.fontSize="14px",y.style.color=d.color||"#FFFFFF",this.state.text=d.text,d.delayClear&&setTimeout(function(){f.loadingClearText()},parseInt(d.delayClear))}}},{key:"loadingClearText",value:function(){if(document.getElementById("".concat(this.id,"-loading-item-0"))){var d=document.getElementById("".concat(this.id,"-loading-item-0")).childNodes;d.length>1?d[1].parentNode.removeChild(d[1]):d[0]&&d[0].parentNode.removeChild(d[0])}}},{key:"loadingClear",value:function(){if(document.getElementById("".concat(this.id,"-loading-item-0"))){for(var d=document.getElementById("".concat(this.id,"-loading-item-0")).childNodes,f=d.length-1;f>=0;f--)d[f].parentNode.removeChild(d[f]);document.getElementById("".concat(this.id,"-loading-id-0"))&&(document.getElementById("".concat(this.id,"-loading-id-0")).style.background="none"),document.getElementById("loading-icon")&&document.getElementById("loading-icon").parentNode.removeChild(document.getElementById("loading-icon"))}}},{key:"loadingEnd",value:function(){var d=document.getElementById("".concat(this.id,"-loading-item-0"));if(d){d.parentNode.removeChild(d);var f=document.getElementById("".concat(this.id,"-loading-id-0"));f&&f.children.length===0&&f.parentNode.removeChild(f)}document.getElementById("".concat(this.id,"-loading-item-0")).style.background="none"}}]),O}(),b3=function(){function O(N,d){a(this,O),this.id=d,this.jSPlugin=N,this.timer=null,this.state={play:!1,loading:!1}}return r(O,[{key:"default",value:function(d){var f=this,y="msgId";document.getElementById("".concat(this.id,"-").concat(y))&&document.getElementById("".concat(this.id,"-wrap")).removeChild(document.getElementById("".concat(this.id,"-").concat(y)));var b=document.createElement("div");b.id="".concat(this.id,"-").concat(y),b.style="position: absolute;top: 50%;left:calc(50% - ".concat(d.length*14/2,"px);padding: 4px 16px;background: #00000080;color: #FFFFFF;font-size: 14px"),b.innerHTML=d,document.getElementById("".concat(this.id,"-wrap")).appendChild(b),this.timer&&clearTimeout(this.timer),this.timer=setTimeout(function(){document.getElementById("".concat(f.id,"-wrap")).removeChild(document.getElementById("".concat(f.id,"-").concat(y)))},2e3)}}]),O}(),Y3=[{moduleCode:"",detailCode:"405984",description:"",solution:"",updateTime:1559564188e3},{moduleCode:"",detailCode:"10035",description:"获取子账户AccessToken异常,子账户不存在或子账户不属于该开发者",solution:"",updateTime:1559551958e3},{moduleCode:"",detailCode:"1052674",description:"获取本地录像失败",solution:"",updateTime:1558579653e3},{moduleCode:"",detailCode:"395547",description:"",solution:"",updateTime:1557367296e3},{moduleCode:"",detailCode:"12",description:"",solution:"",updateTime:1557229476e3},{moduleCode:"",detailCode:"10052",description:"余额不足",solution:"",updateTime:1557121463e3},{moduleCode:"",detailCode:"20108",description:"当前用户和所添加用户不是好友关系",solution:"",updateTime:1556541725e3},{moduleCode:"",detailCode:"10009",description:"",solution:"",updateTime:1556422452e3},{moduleCode:"",detailCode:"320001",description:"通道不存在",solution:"请检查录像机的关联状态是否正常,没有摄像头的通道无法播放",updateTime:1556419044e3},{moduleCode:"",detailCode:"120001",description:"通道不存在",solution:"请检查录像机的关联状态是否正常,没有摄像头的通道无法播放",updateTime:155641903e4},{moduleCode:"",detailCode:"320049",description:"",solution:"",updateTime:1556272984e3},{moduleCode:"",detailCode:"380227",description:"",solution:"",updateTime:1556264379e3},{moduleCode:"",detailCode:"10033",description:"policy参数信息异常",solution:"",updateTime:1555922124e3},{moduleCode:"",detailCode:"10065",description:"weakAppKey 不属于accessToken对应的用户",solution:"",updateTime:1555497522e3},{moduleCode:"",detailCode:"100001",description:"",solution:"",updateTime:1555141776e3},{moduleCode:"",detailCode:"395558",description:"",solution:"",updateTime:1554987121e3},{moduleCode:"",detailCode:"70001",description:"智能家居买断用户设备受到限制,建议合理选择pagestart和pageSize",solution:"",updateTime:1554691023e3},{moduleCode:"",detailCode:"170001",description:"",solution:"",updateTime:1554691023e3},{moduleCode:"",detailCode:"1012",description:"重置失败",solution:"",updateTime:1554645841e3},{moduleCode:"",detailCode:"1043",description:"重置失败",solution:"",updateTime:1554645834e3},{moduleCode:"",detailCode:"60060",description:"直播功能未开通",solution:"通道未开通直播功能,请先开通直播",updateTime:1554346018e3},{moduleCode:"",detailCode:"380203",description:"",solution:"",updateTime:1554093666e3},{moduleCode:"",detailCode:"399048",description:"免费版并发数达到上限,请升级企业版使用多并发能力",solution:"升级成为企业版套餐即可取消并发数限制",updateTime:1553839878e3},{moduleCode:"",detailCode:"60007",description:"预置点个数超过最大值",solution:"",updateTime:1553671316e3},{moduleCode:"",detailCode:"1005",description:"",solution:"",updateTime:1553513701e3},{moduleCode:"",detailCode:"20605",description:"其他用户正在认证中",solution:"",updateTime:1552976317e3},{moduleCode:"",detailCode:"90004",description:"当前型号设备暂时不支持AI任务:CS-C3W-3B1WFR-YGL",solution:"",updateTime:1552898525e3},{moduleCode:"",detailCode:"60046",description:"添加的设备的IP和本设备的IP冲突",solution:"",updateTime:1552872372e3},{moduleCode:"",detailCode:"3",description:"修改视频清晰度失败!",solution:"",updateTime:1552440229e3},{moduleCode:"",detailCode:"1013",description:"",solution:"",updateTime:1552035069e3},{moduleCode:"",detailCode:"370007",description:"",solution:"",updateTime:1551852327e3},{moduleCode:"",detailCode:"-1",description:"",solution:"",updateTime:1551752889e3},{moduleCode:"",detailCode:"30005",description:"弱账户不存在",solution:"",updateTime:1551422358e3},{moduleCode:"",detailCode:"90006",description:"用户操作AI任务受限",solution:"",updateTime:155107332e4},{moduleCode:"",detailCode:"60203",description:"未开通相关服务",solution:"",updateTime:155062307e4},{moduleCode:"",detailCode:"10002",description:"accessToken过期或异常",solution:"",updateTime:1550300346e3},{moduleCode:"",detailCode:"380339",description:"",solution:"",updateTime:1549889458e3},{moduleCode:"",detailCode:"90002",description:"AI任务设备配置数达到上限:3",solution:"",updateTime:1549071664e3},{moduleCode:"",detailCode:"380008",description:"",solution:"",updateTime:1549005979e3},{moduleCode:"",detailCode:"320227",description:"",solution:"",updateTime:1548739731e3},{moduleCode:"",detailCode:"60059",description:"ezopen地址均不可用",solution:"",updateTime:154839535e4},{moduleCode:"",detailCode:"10005",description:"appKey异常",solution:"",updateTime:1548317858e3},{moduleCode:"",detailCode:"60045",description:"添加的设备的IP和其他通道的IP冲突",solution:"",updateTime:1548155085e3},{moduleCode:"",detailCode:"60047",description:"码流类型不支持",solution:"",updateTime:1547962108e3},{moduleCode:"",detailCode:"60041",description:"添加的设备被其他设备关联或响应超时",solution:"",updateTime:154796098e4},{moduleCode:"",detailCode:"110029",description:"个人用户接口调用频率超限",solution:"请升级企业版:https://open.ys7.com/price.html",updateTime:1547606859e3},{moduleCode:"",detailCode:"380355",description:"设备直连推流异常结束",solution:"",updateTime:1547106294e3},{moduleCode:"",detailCode:"320081",description:"",solution:"",updateTime:1547106279e3},{moduleCode:"",detailCode:"60035",description:"购买云存储服务失败",solution:"",updateTime:1547026959e3},{moduleCode:"",detailCode:"90005",description:"设备已存在:C75714141",solution:"",updateTime:1546940622e3},{moduleCode:"",detailCode:"1053445",description:"该时间段没有录像片段",solution:"",updateTime:1546935727e3},{moduleCode:"",detailCode:"90007",description:"设备未加入到AI任务",solution:"",updateTime:1546932948e3},{moduleCode:"",detailCode:"326000",description:"",solution:"",updateTime:1546823143e3},{moduleCode:"",detailCode:"1021",description:"重置失败",solution:"",updateTime:1546781152e3},{moduleCode:"",detailCode:"2001",description:"删除设备失败!",solution:"",updateTime:1546422886e3},{moduleCode:"",detailCode:"380425",description:"",solution:"",updateTime:1546407694e3},{moduleCode:"",detailCode:"120097",description:"",solution:"",updateTime:1546085995e3},{moduleCode:"",detailCode:"10059",description:"requestId已存在",solution:"",updateTime:1545824509e3},{moduleCode:"",detailCode:"1154723",description:"",solution:"",updateTime:1545795209e3},{moduleCode:"",detailCode:"60043",description:"添加的设备超出最大数量",solution:"",updateTime:1545493607e3},{moduleCode:"",detailCode:"1152677",description:"",solution:"",updateTime:1545313404e3},{moduleCode:"",detailCode:"20097",description:"设备添加异常,设备验证码为ABCDEF或设备被N1,R1关联",solution:"",updateTime:1545310795e3},{moduleCode:"",detailCode:"10060",description:"设备不支持该云存储类型",solution:"",updateTime:1545309064e3},{moduleCode:"",detailCode:"20102",description:"无相应邀请信息,无法接受邀请",solution:"",updateTime:1545204966e3},{moduleCode:"",detailCode:"10053",description:"云存储开通中",solution:"",updateTime:1545100293e3},{moduleCode:"",detailCode:"20401",description:"用户云空间信息不存在",solution:"",updateTime:154501788e4},{moduleCode:"",detailCode:"20600",description:"临时密码数已达上限",solution:"",updateTime:1544873457e3},{moduleCode:"",detailCode:"901",description:"",solution:"",updateTime:1544693519e3},{moduleCode:"",detailCode:"60210",description:"图片数据错误",solution:"",updateTime:1544604457e3},{moduleCode:"",detailCode:"10013",description:"您的应用没有权限调用",solution:"",updateTime:1544416237e3},{moduleCode:"",detailCode:"70007",description:"授权码不存在",solution:"",updateTime:1544179533e3},{moduleCode:"",detailCode:"10015",description:"授权地址不存在",solution:"",updateTime:154416324e4},{moduleCode:"",detailCode:"320423",description:"",solution:"",updateTime:1544100685e3},{moduleCode:"",detailCode:"370009",description:"",solution:"",updateTime:1544077151e3},{moduleCode:"",detailCode:"10031",description:"子账户或萤石用户没有权限",solution:"",updateTime:1543990462e3},{moduleCode:"",detailCode:"10055",description:"设备不支持试用云存储服务",solution:"",updateTime:1543986292e3},{moduleCode:"",detailCode:"60042",description:"添加的设备密码错误",solution:"",updateTime:1543710913e3},{moduleCode:"",detailCode:"60082",description:"设备正在响应本次声源定位",solution:"",updateTime:1543647426e3},{moduleCode:"",detailCode:"10056",description:"设备不支持云存储服务转出",solution:"",updateTime:1543558342e3},{moduleCode:"",detailCode:"20104",description:"好友不存在",solution:"",updateTime:1543492403e3},{moduleCode:"",detailCode:"20111",description:"好友不是等待验证状态,无法接受邀请",solution:"",updateTime:1543492365e3},{moduleCode:"",detailCode:"20107",description:"不能添加自己为好友",solution:"",updateTime:1543480986e3},{moduleCode:"",detailCode:"1",description:"设备返回其他错误",solution:"",updateTime:1543459921e3},{moduleCode:"",detailCode:"60084",description:"当前正在关闭隐私遮蔽",solution:"",updateTime:1543456515e3},{moduleCode:"",detailCode:"380255",description:"",solution:"",updateTime:1543411652e3},{moduleCode:"",detailCode:"20015",description:"设备不支持",solution:"",updateTime:1543390936e3},{moduleCode:"",detailCode:"30003",description:"手机验证码错误",solution:"",updateTime:1543389137e3},{moduleCode:"",detailCode:"20615",description:"锁用户已存在",solution:"",updateTime:1543388325e3},{moduleCode:"",detailCode:"60061",description:"账户流量已超出或未购买,限制开通",solution:"",updateTime:1543372581e3},{moduleCode:"",detailCode:"60020",description:"设备不支持该信令",solution:"",updateTime:1543321636e3},{moduleCode:"",detailCode:"320146",description:"",solution:"",updateTime:1543318472e3},{moduleCode:"",detailCode:"60018",description:"设备升级失败",solution:"",updateTime:1543304928e3},{moduleCode:"",detailCode:"60044",description:"添加的设备网络不可达超时",solution:"",updateTime:1543304102e3},{moduleCode:"",detailCode:"20619",description:"主用户无法删除",solution:"",updateTime:1543290219e3},{moduleCode:"",detailCode:"20608",description:"锁用户不存在",solution:"",updateTime:154328195e4},{moduleCode:"",detailCode:"20609",description:"设备响应超时,门锁通信故障或者电量不足,请重试.",solution:"",updateTime:1543281601e3},{moduleCode:"",detailCode:"1049954",description:"升级设备失败",solution:"",updateTime:1543279264e3},{moduleCode:"",detailCode:"60009",description:"正在调用预置点",solution:"",updateTime:1543238114e3},{moduleCode:"",detailCode:"1052677",description:"获取本地录像失败",solution:"",updateTime:1543207604e3},{moduleCode:"",detailCode:"327000",description:"",solution:"",updateTime:1543196609e3},{moduleCode:"",detailCode:"20021",description:"设备在线,未被用户添加",solution:"",updateTime:1543193436e3},{moduleCode:"",detailCode:"20202",description:"操作留言信息失败",solution:"",updateTime:1543191562e3},{moduleCode:"",detailCode:"1052678",description:"获取本地录像失败",solution:"",updateTime:1543132218e3},{moduleCode:"",detailCode:"1054723",description:"格式化设备失败",solution:"",updateTime:1543129833e3},{moduleCode:"",detailCode:"20109",description:"对应分享不存在",solution:"",updateTime:1543129111e3},{moduleCode:"",detailCode:"60026",description:"设备处于隐私遮蔽状态",solution:"",updateTime:1543110403e3},{moduleCode:"",detailCode:"60083",description:"当前正在开启隐私遮蔽",solution:"",updateTime:1543071148e3},{moduleCode:"",detailCode:"60001",description:"用户无云台控制权限",solution:"",updateTime:1543059167e3},{moduleCode:"",detailCode:"2003",description:"设备不在线",solution:"",updateTime:1543051046e3},{moduleCode:"",detailCode:"-24",description:"设置设备enable错误",solution:"",updateTime:1543042701e3},{moduleCode:"",detailCode:"10018",description:"",solution:"",updateTime:1543041564e3},{moduleCode:"",detailCode:"20103",description:"好友已存在",solution:"",updateTime:154303843e4},{moduleCode:"",detailCode:"70010",description:"授权异常请重试",solution:"",updateTime:154303559e4},{moduleCode:"",detailCode:"60056",description:"删除设备失败",solution:"",updateTime:1543031275e3},{moduleCode:"",detailCode:"60040",description:"添加的设备不在同一局域网",solution:"",updateTime:154303121e4},{moduleCode:"",detailCode:"60019",description:"加密已开启",solution:"",updateTime:1543029931e3},{moduleCode:"",detailCode:"1054722",description:"格式化设备失败",solution:"",updateTime:1543028537e3},{moduleCode:"",detailCode:"20016",description:"当前设备正在格式化",solution:"",updateTime:1543028537e3},{moduleCode:"",detailCode:"10024",description:"透明通道权限校验不通过",solution:"",updateTime:154302554e4},{moduleCode:"",detailCode:"6002",description:"删除设备失败!",solution:"",updateTime:1543025026e3},{moduleCode:"",detailCode:"1011",description:"验证码错误!",solution:"",updateTime:1543016865e3},{moduleCode:"",detailCode:"60032",description:"卡密已使用",solution:"",updateTime:1543006668e3},{moduleCode:"",detailCode:"10034",description:"子账号已存在",solution:"",updateTime:1542989194e3},{moduleCode:"",detailCode:"20301",description:"根据uuid查询联动信息不存在",solution:"",updateTime:1542988651e3},{moduleCode:"",detailCode:"1041",description:"获取验证码过于频繁",solution:"",updateTime:1542980953e3},{moduleCode:"",detailCode:"10012",description:"该appkey下已绑定重复的phone!",solution:"",updateTime:15429808e5},{moduleCode:"",detailCode:"1008",description:"phone不合法!",solution:"",updateTime:1542979812e3},{moduleCode:"",detailCode:"60023",description:"订阅操作失败",solution:"",updateTime:1542979006e3},{moduleCode:"",detailCode:"5",description:"设备返回其他错误",solution:"",updateTime:1542977828e3},{moduleCode:"",detailCode:"60006",description:"云台当前操作失败",solution:"",updateTime:1542977598e3},{moduleCode:"",detailCode:"131",description:"修改视频清晰度失败!",solution:"",updateTime:1542977246e3},{moduleCode:"",detailCode:"10019",description:"密码错误",solution:"",updateTime:1542976628e3},{moduleCode:"",detailCode:"10004",description:"用户不存在",solution:"",updateTime:1542976268e3},{moduleCode:"",detailCode:"20201",description:"操作报警信息失败",solution:"",updateTime:1542975906e3},{moduleCode:"",detailCode:"20024",description:"设备不在线,已经被别的用户添加",solution:"",updateTime:1542975858e3},{moduleCode:"",detailCode:"60004",description:"设备云台旋转达到左限位",solution:"",updateTime:1542975207e3},{moduleCode:"",detailCode:"1052679",description:"修改视频清晰度失败!",solution:"",updateTime:1542974886e3},{moduleCode:"",detailCode:"20031",description:"请在萤石客户端关闭终端绑定",solution:"",updateTime:1542974756e3},{moduleCode:"",detailCode:"1053825",description:"获取本地录像失败",solution:"",updateTime:1542974692e3},{moduleCode:"",detailCode:"60011",description:"预置点不存在",solution:"",updateTime:1542974414e3},{moduleCode:"",detailCode:"1052936",description:"修改视频清晰度失败!",solution:"",updateTime:154297439e4},{moduleCode:"",detailCode:"1016",description:"",solution:"",updateTime:1542974273e3},{moduleCode:"",detailCode:"10032",description:"子账号不存在",solution:"",updateTime:1542973906e3},{moduleCode:"",detailCode:"20013",description:"设备已被别人添加",solution:"",updateTime:1542973817e3},{moduleCode:"",detailCode:"50000",description:"服务器错误!",solution:"",updateTime:1542973801e3},{moduleCode:"",detailCode:"60010",description:"该预置点已经是当前位置",solution:"",updateTime:15429738e5},{moduleCode:"",detailCode:"60003",description:"设备云台旋转达到下限位",solution:"",updateTime:154297377e4},{moduleCode:"",detailCode:"4",description:"设备返回其他错误",solution:"",updateTime:1542973755e3},{moduleCode:"",detailCode:"60016",description:"加密未开启,无需关闭",solution:"",updateTime:1542973753e3},{moduleCode:"",detailCode:"60002",description:"设备云台旋转达到上限位",solution:"",updateTime:1542973742e3},{moduleCode:"",detailCode:"20023",description:"设备不在线,未被用户添加",solution:"",updateTime:1542973685e3},{moduleCode:"",detailCode:"10008",description:"",solution:"",updateTime:1542973676e3},{moduleCode:"",detailCode:"20010",description:"设备验证码错误",solution:"",updateTime:1542973658e3},{moduleCode:"",detailCode:"60005",description:"设备云台旋转达到右限位",solution:"",updateTime:1542973657e3},{moduleCode:"",detailCode:"20017",description:"设备已经被自己添加",solution:"",updateTime:1542973648e3},{moduleCode:"",detailCode:"20020",description:"设备在线,已经被自己添加",solution:"",updateTime:1542973533e3},{moduleCode:"",detailCode:"20029",description:"设备不在线,已经被自己添加",solution:"",updateTime:154297353e4},{moduleCode:"",detailCode:"10014",description:"APPKEY下对应的第三方userId和phone未绑定!",solution:"",updateTime:1542973499e3},{moduleCode:"",detailCode:"20002",description:"设备不存在",solution:"",updateTime:1542973499e3},{moduleCode:"",detailCode:"10030",description:"appkey和appsecret不匹配",solution:"",updateTime:154297349e4},{moduleCode:"",detailCode:"20022",description:"设备在线,已经被别的用户添加",solution:"",updateTime:1542973486e3},{moduleCode:"",detailCode:"20008",description:"设备响应超时",solution:"",updateTime:1542973484e3},{moduleCode:"",detailCode:"20032",description:"该用户下通道不存在",solution:"",updateTime:1542973481e3},{moduleCode:"",detailCode:"20006",description:"网络异常",solution:"",updateTime:1542973475e3},{moduleCode:"",detailCode:"20014",description:"deviceSerial不合法!",solution:"",updateTime:1542973454e3},{moduleCode:"",detailCode:"20007",description:"设备不在线",solution:"",updateTime:1542973454e3},{moduleCode:"",detailCode:"20018",description:"该用户不拥有该设备",solution:"",updateTime:1542973453e3},{moduleCode:"",detailCode:"10010",description:"",solution:"",updateTime:1542973453e3},{moduleCode:"",detailCode:"10011",description:"未绑定!",solution:"",updateTime:1542973453e3},{moduleCode:"",detailCode:"20001",description:"通道不存在!",solution:"",updateTime:1542973452e3},{moduleCode:"",detailCode:"10017",description:"appKey不存在",solution:"",updateTime:1542973451e3},{moduleCode:"",detailCode:"400259",description:"",solution:"",updateTime:1542875643e3},{moduleCode:"",detailCode:"400004",description:"",solution:"",updateTime:1542873364e3},{moduleCode:"",detailCode:"3840",description:"",solution:"",updateTime:154186e7},{moduleCode:"",detailCode:"-1017",description:"",solution:"",updateTime:1541733663e3},{moduleCode:"",detailCode:"320025",description:"",solution:"",updateTime:1541078281e3},{moduleCode:"",detailCode:"320024",description:"",solution:"",updateTime:1540801374e3},{moduleCode:"",detailCode:"321002",description:"",solution:"",updateTime:1540631734e3},{moduleCode:"",detailCode:"321000",description:"",solution:"",updateTime:1540609178e3},{moduleCode:"",detailCode:"321022",description:"",solution:"",updateTime:1540548345e3},{moduleCode:"",detailCode:"321016",description:"",solution:"",updateTime:1540287187e3},{moduleCode:"",detailCode:"320023",description:"",solution:"",updateTime:1539825993e3},{moduleCode:"",detailCode:"-1016",description:"",solution:"",updateTime:1539584931e3},{moduleCode:"",detailCode:"8",description:"",solution:"",updateTime:1539391812e3},{moduleCode:"",detailCode:"1075127593",description:"",solution:"",updateTime:1538959251e3},{moduleCode:"",detailCode:"380421",description:"",solution:"",updateTime:1537288465e3},{moduleCode:"",detailCode:"322000",description:"麦克风权限未开启",solution:"",updateTime:1536820136e3},{moduleCode:"",detailCode:"1152678",description:"",solution:"",updateTime:1536738348e3},{moduleCode:"",detailCode:"320047",description:"",solution:"",updateTime:1536664472e3},{moduleCode:"",detailCode:"327006",description:"",solution:"",updateTime:153613612e4},{moduleCode:"",detailCode:"1074807593",description:"",solution:"",updateTime:1536135035e3},{moduleCode:"",detailCode:"320291",description:"",solution:"",updateTime:1536110836e3},{moduleCode:"",detailCode:"320045",description:"",solution:"",updateTime:1535963775e3},{moduleCode:"",detailCode:"370004",description:"",solution:"",updateTime:1535883699e3},{moduleCode:"",detailCode:"1149954",description:"",solution:"",updateTime:1535700674e3},{moduleCode:"",detailCode:"320053",description:"",solution:"",updateTime:1535681079e3},{moduleCode:"",detailCode:"400000",description:"",solution:"",updateTime:1535532332e3},{moduleCode:"",detailCode:"110028",description:"个人版抓图接口日调用次数超出限制",solution:"请升级企业版:https://open.ys7.com/price.html",updateTime:1535348756e3},{moduleCode:"",detailCode:"110027",description:"个人版帐号数量超出安全限制,无法调用",solution:"请升级企业版:https://open.ys7.com/price.html",updateTime:1535348734e3},{moduleCode:"",detailCode:"110026",description:"设备数量超出个人版限制,当前设备无法操作",solution:"请升级企业版:https://open.ys7.com/price.html",updateTime:1535348588e3},{moduleCode:"",detailCode:"100000",description:"",solution:"",updateTime:1534980008e3},{moduleCode:"",detailCode:"324004",description:"",solution:"",updateTime:1534927762e3},{moduleCode:"",detailCode:"360104",description:"",solution:"",updateTime:1534761006e3},{moduleCode:"",detailCode:"320204",description:"",solution:"",updateTime:1534584221e3},{moduleCode:"",detailCode:"380001",description:"",solution:"",updateTime:1534404715e3},{moduleCode:"",detailCode:"380204",description:"",solution:"",updateTime:1534401682e3},{moduleCode:"",detailCode:"328006",description:"",solution:"",updateTime:1534144407e3},{moduleCode:"",detailCode:"321703",description:"",solution:"",updateTime:1534127274e3},{moduleCode:"",detailCode:"321510",description:"",solution:"",updateTime:1533428892e3},{moduleCode:"",detailCode:"321006",description:"",solution:"",updateTime:1533036916e3},{moduleCode:"",detailCode:"50009",description:"",solution:"",updateTime:1532078548e3},{moduleCode:"",detailCode:"50007",description:"",solution:"",updateTime:153199172e4},{moduleCode:"",detailCode:"50018",description:"",solution:"",updateTime:1531912829e3},{moduleCode:"",detailCode:"380451",description:"",solution:"",updateTime:15316157e5},{moduleCode:"",detailCode:"380336",description:"",solution:"",updateTime:1531231721e3},{moduleCode:"",detailCode:"360020",description:"",solution:"",updateTime:1531117554e3},{moduleCode:"",detailCode:"380418",description:"",solution:"",updateTime:153110707e4},{moduleCode:"",detailCode:"1153445",description:"设备在该时间段内没有录像",solution:"",updateTime:1530944007e3},{moduleCode:"",detailCode:"110007",description:"调用接口总次数达到上限",solution:"请升级企业版,获取更高能力",updateTime:1530935584e3},{moduleCode:"",detailCode:"360019",description:"",solution:"",updateTime:1530869771e3},{moduleCode:"",detailCode:"360100",description:"",solution:"",updateTime:1530786188e3},{moduleCode:"",detailCode:"380042",description:"",solution:"",updateTime:1530775199e3},{moduleCode:"",detailCode:"320355",description:"",solution:"",updateTime:1530716074e3},{moduleCode:"",detailCode:"100003",description:"",solution:"",updateTime:1530232541e3},{moduleCode:"",detailCode:"371026",description:"",solution:"",updateTime:15301926e5},{moduleCode:"",detailCode:"102",description:"",solution:"",updateTime:1529895641e3},{moduleCode:"",detailCode:"380201",description:"",solution:"",updateTime:1529740929e3},{moduleCode:"",detailCode:"320054",description:"",solution:"",updateTime:1529544875e3},{moduleCode:"",detailCode:"500101",description:"",solution:"",updateTime:1529485953e3},{moduleCode:"",detailCode:"321001",description:"",solution:"",updateTime:1529411048e3},{moduleCode:"",detailCode:"321508",description:"",solution:"",updateTime:1529393279e3},{moduleCode:"",detailCode:"405991",description:"",solution:"",updateTime:1529380238e3},{moduleCode:"",detailCode:"380461",description:"",solution:"",updateTime:1529130941e3},{moduleCode:"",detailCode:"-1019",description:"",solution:"",updateTime:1529057245e3},{moduleCode:"",detailCode:"322009",description:"",solution:"",updateTime:1528965717e3},{moduleCode:"",detailCode:"324005",description:"",solution:"",updateTime:1528950153e3},{moduleCode:"",detailCode:"325000",description:"",solution:"",updateTime:1528947143e3},{moduleCode:"",detailCode:"326032",description:"",solution:"",updateTime:1528872971e3},{moduleCode:"",detailCode:"325032",description:"",solution:"",updateTime:1528863189e3},{moduleCode:"",detailCode:"328000",description:"",solution:"",updateTime:1528794505e3},{moduleCode:"",detailCode:"53",description:"",solution:"",updateTime:1528693249e3},{moduleCode:"",detailCode:"-1020",description:"",solution:"",updateTime:152849944e4},{moduleCode:"",detailCode:"329032",description:"",solution:"",updateTime:1528446301e3},{moduleCode:"",detailCode:"-1202",description:"",solution:"",updateTime:152843982e4},{moduleCode:"",detailCode:"2",description:"",solution:"",updateTime:1528434175e3},{moduleCode:"",detailCode:"1152936",description:"",solution:"",updateTime:1528345986e3},{moduleCode:"",detailCode:"328011",description:"",solution:"",updateTime:15283386e5},{moduleCode:"",detailCode:"28",description:"",solution:"",updateTime:152833753e4},{moduleCode:"",detailCode:"320356",description:"",solution:"",updateTime:1528188693e3},{moduleCode:"",detailCode:"320357",description:"",solution:"",updateTime:1528188517e3},{moduleCode:"",detailCode:"405800",description:"",solution:"",updateTime:1528168732e3},{moduleCode:"",detailCode:"405996",description:"",solution:"",updateTime:1528168686e3},{moduleCode:"",detailCode:"380357",description:"",solution:"",updateTime:1528011565e3},{moduleCode:"",detailCode:"328022",description:"",solution:"",updateTime:1527929065e3},{moduleCode:"",detailCode:"380003",description:"",solution:"",updateTime:1527927819e3},{moduleCode:"",detailCode:"50004",description:"",solution:"",updateTime:1527770643e3},{moduleCode:"",detailCode:"50011",description:"",solution:"",updateTime:1527770635e3},{moduleCode:"",detailCode:"370017",description:"",solution:"",updateTime:1527739514e3},{moduleCode:"",detailCode:"327032",description:"",solution:"",updateTime:1527726704e3},{moduleCode:"",detailCode:"324001",description:"",solution:"",updateTime:1527681892e3},{moduleCode:"",detailCode:"405997",description:"",solution:"",updateTime:1527653408e3},{moduleCode:"",detailCode:"405995",description:"",solution:"",updateTime:1527647283e3},{moduleCode:"",detailCode:"1153825",description:"",solution:"",updateTime:1527601747e3},{moduleCode:"",detailCode:"328002",description:"",solution:"",updateTime:1527495292e3},{moduleCode:"",detailCode:"1152679",description:"",solution:"",updateTime:1527486665e3},{moduleCode:"",detailCode:"380356",description:"",solution:"",updateTime:1527125669e3},{moduleCode:"",detailCode:"328032",description:"",solution:"",updateTime:1527069382e3},{moduleCode:"",detailCode:"22",description:"",solution:"",updateTime:1527049826e3},{moduleCode:"",detailCode:"9",description:"",solution:"",updateTime:1527006778e3},{moduleCode:"",detailCode:"89",description:"",solution:"",updateTime:1526622784e3},{moduleCode:"",detailCode:"328016",description:"",solution:"",updateTime:1526452365e3},{moduleCode:"",detailCode:"368005",description:"",solution:"",updateTime:1525921264e3},{moduleCode:"",detailCode:"0",description:"",solution:"",updateTime:1525920242e3},{moduleCode:"",detailCode:"380006",description:"",solution:"",updateTime:1525918868e3},{moduleCode:"",detailCode:"310",description:"",solution:"",updateTime:1525834436e3},{moduleCode:"",detailCode:"360011",description:"",solution:"",updateTime:1525681552e3},{moduleCode:"",detailCode:"170005",description:"",solution:"",updateTime:15254339e5},{moduleCode:"",detailCode:"50023",description:"",solution:"",updateTime:1525403338e3},{moduleCode:"",detailCode:"100131",description:"",solution:"",updateTime:1525229691e3},{moduleCode:"",detailCode:"-1018",description:"",solution:"",updateTime:1525142341e3},{moduleCode:"",detailCode:"362026",description:"",solution:"",updateTime:1524882677e3},{moduleCode:"",detailCode:"368007",description:"",solution:"",updateTime:1524832269e3},{moduleCode:"",detailCode:"54",description:"",solution:"",updateTime:1524793646e3},{moduleCode:"",detailCode:"1154722",description:"",solution:"",updateTime:1524620807e3},{moduleCode:"",detailCode:"320229",description:"",solution:"",updateTime:1524551682e3},{moduleCode:"",detailCode:"360012",description:"",solution:"",updateTime:1524472094e3},{moduleCode:"",detailCode:"380229",description:"",solution:"",updateTime:1524110755e3},{moduleCode:"",detailCode:"360016",description:"",solution:"",updateTime:1523933518e3},{moduleCode:"",detailCode:"-1003",description:"",solution:"",updateTime:1523584804e3},{moduleCode:"",detailCode:"410026",description:"",solution:"",updateTime:152351743e4},{moduleCode:"",detailCode:"360102",description:"TTS初始化失败",solution:"",updateTime:1523503528e3},{moduleCode:"",detailCode:"360013",description:"设备开启了隐私保护",solution:"",updateTime:1523503507e3},{moduleCode:"",detailCode:"360010",description:"设备正在对讲中",solution:"",updateTime:1523503491e3},{moduleCode:"",detailCode:"360007",description:"TTS关闭了与客户端的连接",solution:"",updateTime:1523503475e3},{moduleCode:"",detailCode:"360006",description:"客户端接收发生错误",solution:"",updateTime:1523503457e3},{moduleCode:"",detailCode:"360005",description:"客户端发送的消息错误",solution:"",updateTime:1523503437e3},{moduleCode:"",detailCode:"360004",description:"TTS内部发生错误",solution:"",updateTime:1523503421e3},{moduleCode:"",detailCode:"360003",description:"TTS的设备端发生错误",solution:"",updateTime:1523503397e3},{moduleCode:"",detailCode:"360002",description:"对讲发起超时",solution:"",updateTime:1523503376e3},{moduleCode:"",detailCode:"360001",description:"客户端请求超时",solution:"",updateTime:1523503357e3},{moduleCode:"",detailCode:"320077",description:"",solution:"",updateTime:1523444274e3},{moduleCode:"",detailCode:"370047",description:"",solution:"",updateTime:152344048e4},{moduleCode:"",detailCode:"100002",description:"",solution:"",updateTime:1523413964e3},{moduleCode:"",detailCode:"-1004",description:"",solution:"",updateTime:1523336653e3},{moduleCode:"",detailCode:"380000",description:"",solution:"",updateTime:1523180856e3},{moduleCode:"",detailCode:"380213",description:"",solution:"",updateTime:1523180623e3},{moduleCode:"",detailCode:"380101",description:"",solution:"",updateTime:1522834231e3},{moduleCode:"",detailCode:"50047",description:"",solution:"",updateTime:1522833243e3},{moduleCode:"",detailCode:"-999",description:"",solution:"",updateTime:1522831034e3},{moduleCode:"",detailCode:"320418",description:"",solution:"",updateTime:1522829072e3},{moduleCode:"",detailCode:"-1009",description:"",solution:"",updateTime:1522746247e3},{moduleCode:"",detailCode:"320209",description:"",solution:"",updateTime:1522744395e3},{moduleCode:"",detailCode:"368006",description:"",solution:"",updateTime:15227443e5},{moduleCode:"",detailCode:"369003",description:"",solution:"",updateTime:1522736355e3},{moduleCode:"",detailCode:"405989",description:"",solution:"",updateTime:1522726571e3},{moduleCode:"",detailCode:"-1012",description:"",solution:"",updateTime:1522726203e3},{moduleCode:"",detailCode:"322016",description:"",solution:"",updateTime:1522722918e3},{moduleCode:"",detailCode:"500103",description:"",solution:"",updateTime:1522655556e3},{moduleCode:"",detailCode:"405999",description:"",solution:"",updateTime:1522654716e3},{moduleCode:"",detailCode:"321032",description:"",solution:"",updateTime:1522647732e3},{moduleCode:"",detailCode:"381101",description:"",solution:"",updateTime:1522392414e3},{moduleCode:"",detailCode:"399999",description:"",solution:"",updateTime:1522379834e3},{moduleCode:"",detailCode:"380103",description:"",solution:"",updateTime:1522312724e3},{moduleCode:"",detailCode:"360014",description:"",solution:"",updateTime:1522304341e3},{moduleCode:"",detailCode:"-1005",description:"",solution:"",updateTime:1522288195e3},{moduleCode:"",detailCode:"100005",description:"",solution:"",updateTime:1522218849e3},{moduleCode:"",detailCode:"100004",description:"",solution:"",updateTime:1522209053e3},{moduleCode:"",detailCode:"106002",description:"",solution:"",updateTime:15222062e5},{moduleCode:"",detailCode:"410030",description:"",solution:"",updateTime:1522162252e3},{moduleCode:"",detailCode:"-1002",description:"",solution:"",updateTime:152215069e4},{moduleCode:"",detailCode:"-1200",description:"",solution:"",updateTime:1522139025e3},{moduleCode:"",detailCode:"-1001",description:"",solution:"",updateTime:1522046436e3},{moduleCode:"",detailCode:"-1011",description:"",solution:"",updateTime:1522045931e3},{moduleCode:"",detailCode:"381102",description:"",solution:"",updateTime:1522044953e3},{moduleCode:"",detailCode:"381103",description:"",solution:"",updateTime:1522044953e3},{moduleCode:"",detailCode:"391205",description:"vtdu解析服务器ip失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"391206",description:"vtdu描述符select失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"391207",description:"vtdu文件描述符不在可读中",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"391208",description:"vtdu网络发生错误getsockopt",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"391209",description:"vtdu描述符select超时",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395000",description:"cas回复信令,发现内存已经释放(和设备之间异常断开)",msg:"播放失败请重试",solution:"检查设备网络;刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395400",description:"私有化协议vtm检测私有化协议中码流类型小于0或者设备序列号为空等非法参数场景返回(app不重试取流)",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395402",description:"回放找不到录像文件",msg:"回放找不到录像文件,本地存储请检查存储卡是否接触良好",solution:"检查是否有存储卡并且接触良好",updateTime:1522034841e3},{moduleCode:"",detailCode:"395403",description:"操作码或信令密钥与设备不匹配",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395404",description:"设备不在线",solution:"检查设备网络;重启设备接入萤石云",msg:"设备不在线,请检查设备网络或重启设备接入萤石云",updateTime:1522034841e3},{moduleCode:"",detailCode:"395405",description:"流媒体向设备发送或接受信令超时/cas响应超时",msg:"播放失败,请检查设备网络或重启设备",solution:"检查设备网络;重启设备",updateTime:1522034841e3},{moduleCode:"",detailCode:"395406",description:"token失效",msg:"播放失败请重试或重启设备",solution:"刷新重试或者重启设备",updateTime:1522034841e3},{moduleCode:"",detailCode:"395407",description:"客户端的URL格式错误",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395409",description:"预览开启隐私保护",msg:"播放失败请关闭隐私遮蔽",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395410",description:"设备达到最大连接数",solution:"请升级设备固件版本",updateTime:1522034841e3},{moduleCode:"",detailCode:"395411",description:"token无权限",msg:"播放失败",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395412",description:"session不存在",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395413",description:"验证token的他异常(不具体) ",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395415",description:"设备通道错",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395416",description:"设备资源受限",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395451",description:"设备不支持的码流类型",msg:"播放失败请重试或切换设备码流",solution:"刷新重试或者切换到高清模式",updateTime:1522034841e3},{moduleCode:"",detailCode:"395452",description:"设备链接流媒体服务器失败",msg:"播放失败,请检查设备网络或重启设备或重新加载",solution:"检查设备网络,重启设备,刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395454",description:"流媒体中关于设备取流会话不存在",msg:"播放失败请重试",solution:"流媒体中关于设备取流会话不存在",updateTime:152222018e4},{moduleCode:"",detailCode:"395455",description:"设备通道未关联",msg:"播放失败,请检查设备通道是否关联",solution:"检查设备通道是否关联",updateTime:152222018e4},{moduleCode:"",detailCode:"395456",description:"设备通道关联设备不在线",msg:"播放失败,请检查设备通道是否上线",solution:"检查设备通道是否上线",updateTime:152222018e4},{moduleCode:"",detailCode:"395457",description:"客户端不支持端到端加密",msg:"播放失败",solution:"客户端不支持端到端加密",updateTime:152222018e4},{moduleCode:"",detailCode:"395458",description:"设备不支持当前并发ECDH密",msg:"客户端不支持端到端加密",solution:"设备不支持当前并发ECDH密",updateTime:152222018e4},{moduleCode:"",detailCode:"395459",description:"VTDU 处理ECDH 加密失败",msg:"播放失败",solution:"VTDU 处理ECDH 加密失败",updateTime:152222018e4},{moduleCode:"",detailCode:"395460",description:"流媒体中关于设备取流会话不存在",msg:"播放失败请重试",solution:"流媒体中关于设备取流会话不存在",updateTime:152222018e4},{moduleCode:"",detailCode:"395492",description:"设备不支持的命令",msg:"操作失败,设备不支持",solution:"",updateTime:152222018e4},{moduleCode:"",detailCode:"395500",description:"服务器处理失败",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395501",description:"流媒体vtdu达到最大负载,请扩容",msg:"播放失败请重试",solution:"服务器负载达到上限,请稍后重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395503",description:"vtm返回分配vtdu失败",msg:"播放失败请重试",solution:"vtdu服务异常,请请稍后重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395504",description:"流媒体vtdu达到最大负载",msg:"播放失败请重试",solution:"服务器负载达到上限,请稍后重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395505",description:"vtm ecdh解密失败",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395506",description:"vtm 返回IPC不支持取流(需要IPC添加NVR后支持)",msg:"播放失败,请绑定NVR使用",solution:"IPC绑定NVR使用",updateTime:1522034841e3},{moduleCode:"",detailCode:"395544",description:"设备返回无视频源",msg:"播放失败,请检查设备接触情况",solution:"设备是否接触良好; 如果一直无法解决,请联系技术支持",updateTime:1522034841e3},{moduleCode:"",detailCode:"395545",description:"视频分享时间已经结束",msg:"视频分享时间已结束",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395546",description:"vtdu返回达到取流并发路数限制",msg:"并发上限,请升级为企业版",solution:"请升级为企业版,放开并发限制",updateTime:1522034841e3},{moduleCode:"",detailCode:"395547",description:"vtdu返回开放平台用户并发限制",msg:"并发上限,请升级为企业版",solution:"请确定开放平台用户预览是否超过用户并发数量限制",updateTime:1522034841e3},{moduleCode:"",detailCode:"395556",description:"ticket校验失败",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395557",description:"回放服务器等待流头超时",msg:"播放失败请重试",solution:"刷新重试,检测设备网络,重启设备",updateTime:1522034841e3},{moduleCode:"",detailCode:"395558",description:"查找录像开始时间错误",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395560",description:"群组分享取流二次验证失败",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395561",description:"分享群组用户被锁住",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395562",description:"群组分享用户权限变更",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395563",description:"认证服务连接失败",msg:"播放失败请重试",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395564",description:"认证超时",msg:"播放失败请重试",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395566",description:"不在分享时间内预览",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395567",description:"分享通道被锁定",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395568",description:"未找到认证类型",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395569",description:"认证返回的参数异常",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395600",description:"分享设备不在分享时间内",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395601",description:"群组分享用户没权限",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395602",description:"群组分享权限变更",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395610",description:"接收流头失败",msg:"播放失败请重试并检查设备网络情况以及设备配置",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395620",description:"心跳超时",msg:"播放失败请重试并检查设备网络情况以及设备配置",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"395530",description:"机房故障不可用",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395701",description:"cas信令返回格式错误",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395702",description:"SPGW请求Cas、Status透传超时",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"395703",description:"SPGW请求http不通",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396001",description:"客户端参数出错",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396099",description:"客户端默认错误",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396101",description:"不支持的命令",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396102",description:"设备流头发送失败",msg:"播放失败请重试",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396103",description:"cas/设备返回错误1",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396104",description:"cas/设备返回错误-1",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396105",description:"设备返回错误码3",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396106",description:"设备返回错误码4",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396107",description:"设备返回错误码5",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396108",description:"cas信令回应重复",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396109",description:"视频广场取消分享",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396110",description:"设备信令默认错误",msg:"播放失败请重试",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396501",description:"设备数据链路和实际链路不匹配",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396502",description:"设备数据链路重复建立连接",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396503",description:"设备数据链路端口不匹配",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396504",description:"缓存设备数据链路失败(内存块不足)",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396505",description:"设备发送确认头消息重复",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396506",description:"设备数据先于确定头部到达",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396508",description:"设备数据头部长度非法",msg:"播放失败请重试或重启设备",solution:"刷新重试,或者重启设备",updateTime:1522034841e3},{moduleCode:"",detailCode:"396509",description:"索引找不到设备数据管理块",msg:"播放失败请重试",solution:"刷新重试",updateTime:1522034841e3},{moduleCode:"",detailCode:"396510",description:"设备数据链路vtdu内存块协议状态不匹配",msg:"播放失败请重试或重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396511",description:"设备数据头部没有streamkey错误",msg:"播放失败请重试或重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396512",description:"设备数据头部非法(较笼统)",msg:"播放失败请重试或重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396513",description:"设备数据长度过小",msg:"播放失败请重试或重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396514",description:"设备老协议推流头部没有streamkey错误",msg:"播放失败请重试或重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396515",description:"设备老协议推流数据非法",msg:"播放失败请重试或重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396516",description:"设备老协议索引找不到内存管理块",msg:"播放失败请重试或重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396517",description:"设备老协议推流数据非法",msg:"播放失败请重试或重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396518",description:"设备数据包过大",msg:"播放失败请重试或重启设备",solution:"刷新重试,或者重启设备",updateTime:1522034841e3},{moduleCode:"",detailCode:"396519",description:"设备推流链路网络不稳定",msg:"播放失败,请重试或重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396520",description:"设备推流链路网络不稳定(默认)",msg:"播放失败请重试或重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396700",description:"异常数据包",msg:"播放失败,设备重启",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"396701",description:"回放结束数据包",msg:"回放结束",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"397001",description:"与相应服务连接失败",msg:"播放失败请重试,请检查设备网络情况以及连接情况",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"397002",description:"与相应服务连接失败",msg:"播放失败请重试,请检查设备网络情况以及连接情况",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"397003",description:"与相应服务连接失败",msg:"播放失败请重试,请检查设备网络情况以及连接情况",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"397004",description:"与相应服务连接失败",msg:"播放失败请重试,请检查设备网络情况以及连接情况",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"397005",description:"VTDU连接失败,或VTDU侧断开连接",msg:"播放失败请重试,请检查设备网络情况以及连接情况",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"397006",description:"vtm断开连接(无需 关注)",msg:"播放失败请重试,请检查设备网络情况以及连接情况",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"397007",description:"客户端发送缓冲区满(上行带宽太小)",msg:"播放失败,上行带宽过小请检查设备网络情况",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"399000",description:"无效包,包过大",msg:" 检查设备重启设备",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"399001",description:"地址不合法",msg:"播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"399002",description:"缺少端口",msg:" 播放失败",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"170003",description:"refreshToken不存在",solution:"建议用户重新调用logout接口,然后调用openLoginPage接口重新启动登录页面登录",updateTime:1522034841e3},{moduleCode:"",detailCode:"170004",description:"refreshToken已过期",solution:"建议用户重新调用logout接口,然后调用openLoginPage接口重新启动登录页面登录",updateTime:1522034841e3},{moduleCode:"",detailCode:"380011",description:"设备隐私保护中",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"380045",description:"设备直连取流连接数量过大",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"380047",description:"设备不支持该命令",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"380077",description:"设备正在对讲中",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"380102",description:"数据接收异常",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"380205",description:"设备检测入参异常",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"380209",description:"网络连接超时",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"380212",description:"设备端网络连接超时",solution:"",updateTime:1522034841e3},{moduleCode:"",detailCode:"101007",description:"手机号未注册",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120503",description:"正在响铃",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390016",description:"vtdu成功响应未携带流头",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101008",description:"手机号码不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120504",description:"室内机正在通话",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390017",description:"无数据流,尚未使用",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101009",description:"用户名与手机不匹配",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120505",description:"设备操作失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390018",description:"信令消息体PB解析失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101010",description:"获取验证码失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120506",description:"非法命令",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390019",description:"信令消息体PB封装失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101011",description:"验证码错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120507",description:"智能锁密码错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390020",description:"申请系统内存资源失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101012",description:"验证码失效",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120508",description:"开关锁失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390021",description:"vtdu地址尚未获取到",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101013",description:"用户不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120509",description:"开关锁超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390022",description:"客户端尚未支持",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101014",description:"密码不正确或者appKey不正确",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120510",description:"智能锁设备繁忙",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390023",description:"获取系统socket资源失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101015",description:"用户被锁住",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120511",description:"远程开锁功能未打开",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390024",description:"上层填充的StreamSsnId不匹配",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101021",description:"验证参数异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120600",description:"临时密码数已达上限",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390025",description:"链接服务器失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101026",description:"邮箱已经被注册",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120601",description:"添加临时密码失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390026",description:"客户端请求未收到服务端应答",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101031",description:"邮箱未注册",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120602",description:"删除临时密码失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390027",description:"链路断开",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101032",description:"邮箱不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120603",description:"该临时密码不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390028",description:"没有取流链接",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101041",description:"获取验证码过于频繁",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120604",description:"指纹锁射频通信失败,请稍后再试",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390029",description:"流成功停止",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101043",description:"手机验证码输入错误超过规定次数",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120605",description:"其他用户正在认证中",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390030",description:"客户端防串流校验失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"102000",description:"设备不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120606",description:"验证已启动,请在120s内进行本地验证和调用添加设备接口",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390031",description:"应用层tcp粘包处理缓冲区满",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"102001",description:"摄像机不存在",solution:"摄像机未注册到萤石云平台,请仔细检查摄像机的网络配置,确保连接到网络",updateTime:152203484e4},{moduleCode:"",detailCode:"120607",description:"删除用户失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390032",description:"无效状态迁移",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"102003",description:"设备不在线",solution:"参考服务中心排查方法",updateTime:152203484e4},{moduleCode:"",detailCode:"120608",description:"用户不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390033",description:"无效客户端状态",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"102004",description:"设备异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120609",description:"设备响应超时,门锁通信故障或者电量不足,请重试.",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390034",description:"向vtm取流流媒体信息请求超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"102007",description:"设备序列号不正确",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120610",description:"获取临时密码列表失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390035",description:"向代理取流请求超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"102009",description:"设备请求响应超时异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"130001",description:"用户不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390036",description:"向代理保活取流请求超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"105000",description:"设备已被自己添加",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"130002",description:"手机号码已经注册",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390037",description:"向vtdu取流请求超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"105001",description:"设备已被别人添加",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"130003",description:"手机验证码错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390038",description:"向vtdu保活取流请求超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"105002",description:"设备验证码错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"130004",description:"终端绑定操作失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391001",description:"vtm地址或端口非法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"107001",description:"邀请不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"149999",description:"数据异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391002",description:"vtm生成文件描述符失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"107002",description:"邀请验证失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"150000",description:"服务器异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391003",description:"vtm设置文件描述符非阻塞失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"107003",description:"邀请用户不匹配",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160000",description:"设备不支持云台控制",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391004",description:"vtm设置文件描述符阻塞失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"107004",description:"云存储连接失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160001",description:"用户无云台控制权限",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391005",description:"vtm解析服务器ip失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"7005",description:"VTDU主动断开连接",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"107005",description:"VTDU主动断开连接",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160002",description:"设备云台旋转达到上限位",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391006",description:"vtm描述符select失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"107006",description:"不能邀请自己",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160003",description:"设备云台旋转达到下限位",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391007",description:"vtm文件描述符不在可读中",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"107007",description:"重复邀请",solution:"分享和删除分享必须全部由接口形式操作,如果与萤石客户端混用会造成这个问题,解决办法:在萤石客户端清空所有相关分享数据并重新添加设备,再通过接口操作即可",updateTime:152203484e4},{moduleCode:"",detailCode:"160004",description:"设备云台旋转达到左限位",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391008",description:"vtm网络发生错误getsockopt",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110001",description:"参数错误",solution:"参数为空或者格式不对",updateTime:152203484e4},{moduleCode:"",detailCode:"160005",description:"设备云台旋转达到右限位",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391009",description:"vtm描述符select超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110002",description:"accessToken异常或过期",solution:"accessToken有效期为七天,建议在accessToken即将过期或者出现10002错误码的时候重新获取accessToken",updateTime:152203484e4},{moduleCode:"",detailCode:"160006",description:"云台当前操作失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391101",description:"proxy地址或端口非法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110004",description:"用户不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160007",description:"预置点个数超过最大值",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391102",description:"proxy生成文件描述符失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110005",description:"appKey异常",solution:"确认appKey状态,不通过或者冻结状态会返回该错误码",updateTime:152203484e4},{moduleCode:"",detailCode:"160009",description:"正在调用预置点",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391103",description:"proxy设置文件描述符非阻塞失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110006",description:"ip受限",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160010",description:"该预置点已经是当前位置",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391104",description:"proxy设置文件描述符阻塞失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160011",description:"预置点不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391105",description:"proxy解析服务器ip失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110008",description:"签名错误",solution:"①获取签名方式详见apidemo及[旧]API文档 ②注意编码格式为UTF-8",updateTime:152203484e4},{moduleCode:"",detailCode:"160013",description:"设备版本已是最新",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391106",description:"proxy描述符select失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110009",description:"签名参数错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160014",description:"设备正在升级",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391107",description:"proxy文件描述符不在可读中",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110010",description:"签名超时",solution:"请调用同步服务器时间接口进行校时",updateTime:152203484e4},{moduleCode:"",detailCode:"160015",description:"设备正在重启",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391108",description:"proxy网络发生错误getsockopt",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110011",description:"未开通萤石云服务",solution:"参照绑定流程",updateTime:152203484e4},{moduleCode:"",detailCode:"160016",description:"加密未开启,无须关闭",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391109",description:"proxy描述符select超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110012",description:"第三方账户与萤石账号已经绑定",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160017",description:"设备抓图失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391201",description:"vtdu地址或端口非法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110013",description:"应用没有权限调用此接口",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160018",description:"设备升级失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391202",description:"vtdu生成文件描述符失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110014",description:"APPKEY下对应的第三方userId和phone未绑定",solution:"获取AccessToken时所用appKey与SDK所用appKey不一致",updateTime:152203484e4},{moduleCode:"",detailCode:"160019",description:"加密已开启",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"391203",description:"vtdu设置文件描述符非阻塞失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110017",description:"appKey不存在",solution:"请填写在官网申请的应用秘钥",updateTime:152203484e4},{moduleCode:"",detailCode:"160020",description:"不支持该命令",solution:"请确认设备是否支持该命令",updateTime:152203484e4},{moduleCode:"",detailCode:"391204",description:"vtdu设置文件描述符阻塞失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110018",description:"AccessToken与Appkey不匹配",solution:"请检查获取accessToken对应的appKey和SDK中设置的appKey是否一致",updateTime:152203484e4},{moduleCode:"",detailCode:"160023",description:"订阅操作失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110019",description:"密码错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160024",description:"取消订阅操作失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110020",description:"请求方法为空",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160025",description:"客流统计配置失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110021",description:"ticket校验失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160026",description:"设备处于隐私遮蔽状态",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110022",description:"透传目的地非法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160027",description:"设备正在镜像操作",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110024",description:"无透传权限",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160028",description:"设备正在键控动作",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110025",description:"appKey被禁止使用通明通道",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160029",description:"设备处于语音对讲状态",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160030",description:"卡密输入错误次数过多,24小时后再输入",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160031",description:"卡密信息不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160032",description:"卡密状态不对或已过期",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160033",description:"卡密非卖品,只能开通对应的绑定设备",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110030",description:"appKey和appSecret不匹配",solution:"请检查appKey和appSecret是否对应",updateTime:152203484e4},{moduleCode:"",detailCode:"160035",description:"购买云存储服务失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110031",description:"子账户或萤石用户没有权限",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160040",description:"添加的设备不在同一局域网",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110032",description:"子账户不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160041",description:"添加的设备被其他设备关联或响应超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110033",description:"子账户未设置授权策略",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160042",description:"添加的设备密码错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110034",description:"子账户已存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160043",description:"添加的设备超出最大数量",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110035",description:"获取子账户AccessToken异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160044",description:"添加的设备网络不可达超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110036",description:"子账户被禁用",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160045",description:"添加的设备的IP和其他通道的IP冲突",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"110051",description:"无权限进行抓图",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160046",description:"添加的设备的IP和本设备的IP冲突",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160047",description:"码流类型不支持",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120002",description:"设备不存在",solution:"①设备没有注册到萤石云平台,请检查下设备网络参数,确保能正常连接网络②设备序列号不存在",updateTime:152203484e4},{moduleCode:"",detailCode:"160048",description:"带宽超出系统接入带宽",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120003",description:"参数异常,SDK版本过低",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160049",description:"IP或者端口不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120004",description:"参数异常,SDK版本过低",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160050",description:"添加的设备版本不支持需要升级才能接入",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120005",description:"安全认证失败,需进行SDK安全认证",solution:"已去掉安全验证",updateTime:152203484e4},{moduleCode:"",detailCode:"160051",description:"添加的设备不支持接入",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120006",description:"网络异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160052",description:"添加的设备通道号出错",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120007",description:"设备不在线",solution:"参考服务中心排查方法",updateTime:152203484e4},{moduleCode:"",detailCode:"160053",description:"添加的设备分辨率不支持",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120008",description:"设备响应超时",solution:"设备响应超时,请检测设备网络或重试",updateTime:152203484e4},{moduleCode:"",detailCode:"160054",description:"添加的设备账号被锁定",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120009",description:"子账号不能添加设备",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160055",description:"添加的设备取码流出错",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120010",description:"设备验证码错误",solution:"验证码在设备标签上,六位大写字母,注意大小写",updateTime:152203484e4},{moduleCode:"",detailCode:"160056",description:"删除设备失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120012",description:"设备添加失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160057",description:"删除的设备未关联",solution:"检查IPC与NVR是否有关联关系",updateTime:152203484e4},{moduleCode:"",detailCode:"120013",description:"设备已被别人添加",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160060",description:"地址未绑定",solution:"请前往官网设置直播",updateTime:152203484e4},{moduleCode:"",detailCode:"120014",description:"设备序列号不正确",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160061",description:"账户流量已超出或未购买,限制开通",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120015",description:"设备不支持该功能",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160062",description:"该通道直播已开通",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120016",description:"当前设备正在格式化",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160063",description:"直播未使用或直播已关闭",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120017",description:"设备已被自己添加",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160070",description:"设备不能转移给自己",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120018",description:"该用户不拥有该设备",solution:"确认设备是否属于用户",updateTime:152203484e4},{moduleCode:"",detailCode:"160071",description:"设备不能转移,设备与其他设备存在关联关系",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400001",description:"参数为空",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120019",description:"设备不支持云存储服务",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160072",description:"设备不能转移,通道被分享给其他用户或者分享到视频广场",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400002",description:"参数错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120020",description:"设备在线,被自己添加",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160073",description:"云存储转移失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400025",description:"设备不支持对讲",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120021",description:"设备在线,但是未被用户添加",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160080",description:"当前正在声源定位",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400029",description:"没有初始化或资源被释放",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120022",description:"设备在线,但是已经被别的用户添加",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160081",description:"当前正在轨迹巡航",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400030",description:"json解析异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120023",description:"设备不在线,未被用户添加",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160082",description:"设备正在响应本次声源定位",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400031",description:"网络异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120024",description:"设备不在线,但是已经被别的用户添加",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"160083",description:"当前正在开启隐私遮蔽",solution:"设备正在操作隐私遮蔽,无法进行当前操作",updateTime:152203484e4},{moduleCode:"",detailCode:"400032",description:"设备信息异常为空",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120025",description:"重复申请分享",solution:"确认设备是否由添加过该设备且申请过分享的账户下是否还存在分享记录",updateTime:152203484e4},{moduleCode:"",detailCode:"160084",description:"当前正在关闭隐私遮蔽",solution:"设备正在操作隐私遮蔽,无法进行当前操作",updateTime:152203484e4},{moduleCode:"",detailCode:"400034",description:"取流超时",solution:"一般是由于网络状况不好导致,可以尝试下让用户重新播放",updateTime:152203484e4},{moduleCode:"",detailCode:"120026",description:"视频广场不存在该视频",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"380290",description:" 连接CAS服务器失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400035",description:"设备已加密,需要输入验证码",solution:"收到此错误码,需要让用户输入验证码后,调用EZPlayer.setPlayKey传入验证码,并重新调用播放函数",updateTime:152203484e4},{moduleCode:"",detailCode:"120027",description:"视频转码失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361001",description:"对讲服务端排队超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400036",description:"播放验证码错误",solution:"收到此错误码,需要让用户输入验证码后,调用EZPlayer.setPlayKey传入验证码,并重新调用播放函数",updateTime:152203484e4},{moduleCode:"",detailCode:"120028",description:"设备固件升级包不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361002",description:"对讲服务端处理超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400037",description:"surfacehold错误",solution:"请检查是否是播放之前销毁了surface,收到此错误也可以重新建立surface后播放",updateTime:152203484e4},{moduleCode:"",detailCode:"120029",description:"设备不在线,但是已经被自己添加",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361003",description:"设备链接对讲服务器超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400100",description:"未知错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120030",description:"该用户不拥有该视频广场视频",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361004",description:"服务器内部错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400200",description:"player sdk出错,这种错误一般开发者也是无法解决,不具体分类传出,传一个统一的inner错误码出去",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120031",description:"开启终端绑定,硬件特征码验证失败",solution:"请在萤石客户端关闭终端绑定,参考此步骤",updateTime:152203484e4},{moduleCode:"",detailCode:"361005",description:"解析消息失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400300",description:"内存溢出",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120032",description:"该用户下通道不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361006",description:"请求重定向--需要向其他服务申请对讲",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400901",description:"设备不在线,可以提示用户",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120033",description:"无法收藏自己分享的视频",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361007",description:"请求url非法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400902",description:"accesstoken异常或失效,需要重新获取accesstoken,并传入到sdk",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120034",description:"该用户下无设备",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361008",description:"token失效",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400903",description:"当前账号开启了终端绑定,只允许指定设备登录操作,提示用户登录i.ys7.com解除终端绑定",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120090",description:"用户反馈失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361009",description:"设备验证码或者通信秘钥不匹配",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400904",description:"设备正在对讲中",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120095",description:"APP包下载失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361010",description:"设备已经在对讲",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"400905",description:"设备开启了隐私保护,不允许预览、对讲等",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120096",description:"APP包信息删除失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361011",description:"设备10s响应超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120101",description:"视频不支持分享给本人",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361012",description:"设备不在线",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320002",description:"参数无效",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120102",description:"无相应邀请信息",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361013",description:"设备开启隐私保护拒绝对讲",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320003",description:"暂不支持此操作",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120103",description:"好友已存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361014",description:"token无权限",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320004",description:"内存溢出",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120104",description:"好友不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361015",description:"设备返回session不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320005",description:"创建CAS session失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120105",description:"好友状态错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361016",description:"验证token其他异常错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320006",description:"创建cloud session失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120106",description:"对应群组不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361017",description:"服务端监听设备建立端口超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320007",description:"token失效",solution:"重新设置token后再重试",updateTime:152203484e4},{moduleCode:"",detailCode:"120107",description:"不能添加自己为好友",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361018",description:"设备链路异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320008",description:"token池里面没有token,请传入token",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120108",description:"当前用户和所添加用户不是好友关系",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361019",description:"对讲服务端不支持的信令消息",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320009",description:"传入新的INIT_PARAM并reset(保留,目前未用)",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120109",description:"对应分享不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361020",description:"对讲服务端解析对讲请求未携带会话描述能力集",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320010",description:"请重试",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120110",description:"好友群组不属于当前用户",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361021",description:"对讲服务端优先能力集结果为空",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320011",description:"500毫秒后请重试",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120111",description:"好友不是等待验证状态",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361022",description:"cas链路异常",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320012",description:"token池已满",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120112",description:"添加应用下的用户为好友失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361023",description:"对讲服务端分配对讲会话资源失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320013",description:"P2P client超过限制",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120201",description:"操作报警信息失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"361024",description:"对讲服务端解析信令消息失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320014",description:"sdk未初始化",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120202",description:"操作留言信息失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390001",description:"通用错误返回",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320015",description:"超时",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120301",description:"根据UUID查询报警消息不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390002",description:"入参为空指针",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320016",description:"正在打洞中",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120302",description:"根据UUID查询图片不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390003",description:"入参值无效",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320017",description:"没有视频文件头(播放器层面产生和处理此错误)",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120303",description:"根据FID查询图片不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390004",description:"信令消息解析非法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320018",description:"解码错误/超时(播放器层面产生和处理此错误)",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120305",description:"设备ip解析错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390005",description:"内存资源不足",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320019",description:"取消(保留,用户不用处理)",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120401",description:"用户云空间信息不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390006",description:"协议格式不对或者消息体长度超过STREAM_MAX_MSGBODY_LEN",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320020",description:"播放过程中预连接被用户清除预操作信息",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120402",description:"云空间操作失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390007",description:"设备序列号长度不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320021",description:"流加密码不对",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120403",description:"用户目录不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390008",description:"取流url长度不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"320022",description:"未传入播放窗口",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120404",description:"要操作的目标目录不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390009",description:"解析vtm返回vtdu地址不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"100200",description:"操作成功",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120405",description:"要删除的文件信息不存在",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390010",description:"解析vtm返回级联vtdu地址不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101001",description:"用户名不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120406",description:"已开通云存储",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390011",description:"解析vtm返回会话标识长度不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101002",description:"用户名已被占用",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120407",description:"开通记录失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390012",description:"vtdu返回流头长度不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101003",description:"密码不合法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120500",description:"获取数据错误",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390013",description:"vtdu会话长度非法",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101004",description:"密码为同一字符",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120501",description:"开锁失败",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390014",description:"回调函数未注册",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"101006",description:"手机号码已经被注册",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"120502",description:"室内机未收到呼叫",solution:"",updateTime:152203484e4},{moduleCode:"",detailCode:"390015",description:"vtdu成功响应未携带会话标识",solution:"",updateTime:152203484e4}],o3="200",n1="操作成功!",b1={data:Y3,code:o3,msg:n1},W3=function(){function O(N,d){a(this,O),this.coreX=N,this.coreY=d,console.log("ErrorCode",b1)}return r(O,[{key:"toString",value:function(){return"".concat(this.coreX,"-").concat(this.coreY)}},{key:"matchErrorInfo",value:function(d){return b1.data.find(function(f){return f.detailCode.substr(-4)==d})}}]),O}(),R1={color:"red",backgroundColor:"red",activeColor:"red",btnList:[{btnKey:"ade5d065a113432e8091a1c5bc819c57-934f270c08b14e928bf0c2ae8e1a937d-header-0",iconId:"deviceID",part:"left",defaultActive:1,isrender:1,themeId:"934f270c08b14e928bf0c2ae8e1a937d"},{btnKey:"ade5d065a113432e8091a1c5bc819c57-934f270c08b14e928bf0c2ae8e1a937d-header-1",iconId:"deviceName",part:"left",defaultActive:1,isrender:1,themeId:"934f270c08b14e928bf0c2ae8e1a937d"}]},D1={color:"blue",backgroundColor:"blue",activeColor:"blue",btnList:[{btnKey:"ade5d065a113432e8091a1c5bc819c57-934f270c08b14e928bf0c2ae8e1a937d-footer-0",iconId:"play",part:"left",defaultActive:0,isrender:0,themeId:"934f270c08b14e928bf0c2ae8e1a937d"}]},Y1={header:R1,footer:D1},h3=function O(N){this.jsPlugin=N;var d={isMouseDown:!1,isOver:!1,mousePosition:null,oldTime:null,nowTime:null,moved:null,hoverTime:"2018-12-07 12:00:00",hoverLeft:0,timeTipShow:!1,randomNum:123,timeWidthTbls:[60,1800,3600,86400],timeUnits:["范围: 1分钟; 单位: 秒","范围: 30分钟; 单位: 分钟","范围: 1小时; 单位: 分钟","范围: 1天; 单位: 小时","范围: 3天; 单位: 小时"],drawPen:null,timeSection:[],canvasWidth:null,canvasHeight:null,timeTips:null},f=this;Object.keys(d).forEach(function(y){f[y]=d[y]}),this.options={width:this.canvasWidth,height:48,time:new Date().getTime(),timeSection:[],timeWidth:0},O.prototype.subTime=function(y){return y<10?"0"+y:y},O.prototype.tranTime=function(y){var b=y;if(y){var _=new Date(y);b=_.getFullYear()+"/"+(_.getMonth()+1)+"/"+_.getDate()+" "+this.subTime(_.getHours())+":"+this.subTime(_.getMinutes())+":"+this.subTime(_.getSeconds())}return b},O.prototype.init=function(y){y.width&&document.getElementById(y.id).setAttribute("width",parseInt(y.width,10)+"px");var b=this,_=this.options;b.randomNum=(Math.random()+"").split(".").join(""),b.timeWidthTblIndex=_.timeWidth;var M=document.querySelector("#".concat(this.jsPlugin.id,"-canvas"));b.drawPen=M.getContext("2d"),b.nowTime=_.time||Date.now(),b.timeSection=_.timeSection||[],b.canvasWidth=M.offsetWidth,b.canvasHeight=M.offsetHeight,b.updata(),document.getElementById("".concat(this.jsPlugin.id,"-canvas")).addEventListener("mousemove",function(a2){b.options.readOnly||b.mousemove(a2)}),document.getElementById("".concat(this.jsPlugin.id,"-canvas")).addEventListener("mouseover",function(a2){b.options.readOnly||b.mouseover(a2)}),document.getElementById("".concat(this.jsPlugin.id,"-canvas")).addEventListener("mouseleave",function(a2){b.options.readOnly||b.mouseleave(a2)}),document.getElementById("".concat(this.jsPlugin.id,"-canvas")).addEventListener("mousedown",function(a2){b.options.readOnly||b.mousedown(a2)}),document.getElementById("".concat(this.jsPlugin.id,"-canvas")).addEventListener("mouseup",function(a2){if(!b.options.readOnly){var Z=y.onChange;b.mouseUpFn(a2,Z)}})},O.prototype.setWidth=function(y){var b=this,_=this;y.width&&(document.getElementById(this.jsPlugin.id).style.width=y.width,document.getElementById("".concat(this.jsPlugin.id,"-canvas")).style.width=y.width,document.getElementById("".concat(this.jsPlugin.id,"-canvas-container")).style.width=y.width,_.canvasWidth=y.width,setTimeout(function(){b.updata({time:new Date})},500))},O.prototype.mousemove=function(y){if(this.isMouseDown&&this.isOver){var b=this.mousePosition-y.pageX;if(b===0)return;var _=0;switch(this.timeWidth){case 60:_=1/10;break;case 1800:_=1/20*60;break;case 3600:_=1/20*60;break;case 86400:_=1/30*60*60;break}var M=new Date(this.oldTime).getTime()+b*_*1e3;this.updata({time:M}),this.moved=!0}else{var a2=parseInt(document.getElementById("".concat(this.jsPlugin.id,"-canvas-container")).offsetLeft,10);this.mousePosition=y.pageX-a2,this.updata()}},O.prototype.mousedown=function(y){this.isMouseDown=!0,this.mousePosition=y.pageX,this.oldTime=this.nowTime},O.prototype.mouseover=function(y){this.isOver=!0},O.prototype.mouseleave=function(y){this.isOver=!1,this.isMouseDown=!1,this.updata()},O.prototype.changeSize=function(y){console.log("changeSize",y),this.options.timeWidth=y,this.updata({timeWidth:y})},O.prototype.mouseUpFn=function(y,b){if(this.isMouseDown&&(this.isMouseDown=!1,this.moved)){this.moved=!1;var _=this.subTime(new Date(this.nowTime).getHours())+":"+this.subTime(new Date(this.nowTime).getMinutes())+":"+this.subTime(new Date(this.nowTime).getSeconds()),M=new Date(this.oldTime).getFullYear()+"/"+(new Date(this.oldTime).getMonth()+1)+"/"+new Date(this.oldTime).getDate();this.nowTime=new Date("".concat(M," ").concat(_)),this.updata({time:this.nowTime}),this.oldTime=this.nowTime,console.log("nowTime",new Date(this.nowTime),"".concat(M," ").concat(_)),b(this.nowTime)}},O.prototype.readOnly=function(y){console.log("更改为只读"),this.options.readOnly=!0,document.getElementById("".concat(this.jsPlugin.id,"-canvas")).style.cursor="not-allowed"},O.prototype.unReadOnly=function(y){console.log("更改为只读"),this.options.readOnly=!1,document.getElementById("".concat(this.jsPlugin.id,"-canvas")).style.cursor="pointer"},O.prototype.run=function(y){this.isMouseDown||this.updata(y)},O.prototype.getTime=function(y){console.log("this",this),console.log("当前时间",new Date(this.nowTime))},O.prototype.updata=function(y){var b=this;y=y||{},b.nowTime=y.time||b.nowTime,b.timeSection=y.timeSection||b.timeSection,b.timeWidthTblIndex=y.timeWidth||b.timeWidthTblIndex,b.timeWidth=b.timeWidthTbls[y.timeWidth||b.timeWidthTblIndex],b.timeUnit=b.timeUnits[y.timeWidth||b.timeWidthTblIndex],y.timeWidth===0&&(b.timeWidthTblIndex=0,b.timeWidth=b.timeWidthTbls[0],b.timeUnit=b.timeUnits[0]),b.drawPen.fillStyle="#000000",b.drawPen.fillRect(0,0,b.canvasWidth,b.canvasHeight),b.drawScale(),b.drawRecord(),b.drawOtherMsg(),document.getElementById("".concat(this.jsPlugin.id,"-canvas-container")).style.width=b.options.width+"px",document.getElementById("".concat(this.jsPlugin.id,"-canvas")).style.width=b.options.width+"px",document.getElementById("".concat(this.jsPlugin.id,"-canvas-container")).style.height=b.options.height+"px",document.getElementById("".concat(this.jsPlugin.id,"-canvas")).style.height=b.options.height+"px"},O.prototype.drawSolidLine=function(y,b,_,M,a2,Z){this.drawPen.save(),this.drawPen.strokeStyle=Z,this.drawPen.lineWidth=a2,this.drawPen.beginPath(),this.drawPen.moveTo(y,b),this.drawPen.lineTo(_,M),this.drawPen.stroke(),this.drawPen.restore()},O.prototype.drawString=function(y,b,_,M,a2){this.drawPen.font="12px serif",this.drawPen.fillStyle="#ffffff",this.drawPen.textAlign=M||"left",this.drawPen.fillText(y,b,_+10)},O.prototype.drawScale=function(){var y=this,b="rgba(255,255,255)",_=new Date(y.nowTime),M=_.getFullYear(),a2=_.getSeconds(),Z=_.getMinutes(),t2=_.getHours(),J=_.getDate(),Y=0;switch(y.timeWidth){case 60:{var k2=parseInt(y.canvasWidth/10);_.setSeconds(_.getSeconds()-parseInt(k2/2,10)),J=_.getDate(),t2=_.getHours(),Z=_.getMinutes(),a2=_.getSeconds();for(var y2=0;y2 b.canvasWidth&&(y2=b.canvasWidth),y2<=0&&(y2=0),y2}},O.prototype.drawOtherMsg=function(){this.drawSolidLine(this.canvasWidth/2,0,this.canvasWidth/2,this.canvasHeight,2,"#1890FF"),this.drawPen.shadowBlur=0,this.isOver&&!this.isMouseDown?(this.mouseTime=this.mousePosition/this.canvasWidth*this.timeWidth*1e3+this.nowTime-this.timeWidth/2*1e3,this.mouseString=this.tranTime(this.mouseTime),this.hoverTime=this.mouseString,this.hoverLeft=this.mousePosition-60,this.timeTipShow=!0):this.timeTipShow=!1}},x3=function(){function O(N){if(a(this,O),this.jSPlugin=N,!document.getElementById("".concat(this.jSPlugin.id,"-audioControls")))return!1;this.currentTimeWidth=0,this.date=new Date,this.datepickerVisible=!1,this.seekTimer=null,this.disabled=!1,this.seekFrequency=2e3,this.jSPlugin.params&&this.jSPlugin.params.seekFrequency&&(this.seekFrequency=this.jSPlugin.params.seekFrequency),this.recInit()}return r(O,[{key:"recInit",value:function(){var d=this;this.currentTimeWidth=0;var f=parseInt(getComputedStyle(document.getElementById(this.jSPlugin.id)).width,10)-100,y=document.createElement("div");y.style="display:inline-block;height:48px;",y.id=this.jSPlugin.id+"-canvas-container";var b=document.createElement("canvas");b.id=this.jSPlugin.id+"-canvas",b.className="time-line-body",b.height="48",b.width=f,b.style="display:inline-block;",b.innerHTML="该浏览器不支持canvas",y.appendChild(b),g(y,document.getElementById("".concat(this.jSPlugin.id,"-audioControls")));var _=document.createElement("div");_.className="timeline-controls",_.style="display:flex;width:100px;height:48px;text-align:center;line-height: 48px;vertical-align: top;background: #000000;";var M=` -`);_.innerHTML=M,g(_,y),this.timeLine=new h3(this.jSPlugin),this.timeLine.init({id:this.jSPlugin.id+"-canvas",width:f,onChange:function(Y){console.log("time",Y,new Date(Y).Format("yyyyMMddhhmmss"));var k2=new Date(Y).Format("yyyyMMddhhmmss");if(console.log("----------------this.jSPlugin.url",d.jSPlugin.url),S2(d.jSPlugin.url).type==="cloud.rec"||d.jSPlugin.capacity&&d.jSPlugin.capacity.support_seek_playback=="1"){var y2=function(){d.jSPlugin.seek(k2.substr(8,6),"235959"),d.unSyncTimeLine(),setTimeout(function(){d.syncTimeLine()},6e3)};d.seekTimer?clearTimeout(d.seekTimer):y2(),d.seekTimer=setTimeout(function(){y2(),clearTimeout(d.seekTimer),d.seekTimer=null},d.seekFrequency)}else{var s2=function(){setTimeout(function(){d.disabled=!1},d.seekFrequency)},f2=function(n2){d.disabled=!0,d.jSPlugin.pause().then(function(){console.log("暂停成功"),d.jSPlugin.resume(k2).then(function(T){console.log("恢复成功:",T),d.jSPlugin.Theme&&d.jSPlugin.Theme.setDecoderState({play:!0}),d.jSPlugin.Theme&&d.jSPlugin.Theme.decoderState.state.sound&&d.jSPlugin.openSound(),n2&&n2()}).catch(function(T){console.log("恢复失败",T)})}).catch(function(){console.log("暂停失败"),d.jSPlugin.resume(k2).then(function(T){console.log("恢复成功"),d.jSPlugin.Theme&&d.jSPlugin.Theme.setDecoderState({play:!0}),n2&&n2()}).catch(function(T){console.log("恢复失败",T)})})};d.disabled?(console.log("操作频繁,等待2秒后执行"),d.seekTimer&&clearTimeout(d.seekTimer),d.seekTimer=setTimeout(function(){f2(s2)},d.seekFrequency)):f2(s2)}}}),this.syncTimeLine(),m("".concat(this.jSPlugin.staticPath,"/rec/datepicker.min.css")),u("".concat(this.jSPlugin.staticPath,"/rec/jquery.min.js"),function(){u("".concat(d.jSPlugin.staticPath,"/rec/datepicker.js"),function(){u("".concat(d.jSPlugin.staticPath,"/rec/datepicker.zh-CN.js"),function(){!document.getElementsByClassName("datepicker-container")[0]&&$("#".concat(d.jSPlugin.id,"-datepicker")).datepicker&&$("#".concat(d.jSPlugin.id,"-datepicker")).datepicker({autoShow:!1,autoHide:!0,autoPick:!0,language:"zh-CN",date:new Date(p("begin",d.jSPlugin.params.url).replace(/(\d{4})(\d{2})(\d{2})/,"$1-$2-$3"))||new Date,format:"yyyy-mm-dd",endDate:new Date,inline:!0,container:document.getElementById("".concat(d.jSPlugin.id,"-wrap"))}),document.getElementsByClassName("datepicker-container")[0]&&(document.getElementsByClassName("datepicker-container")[0].style.display="none"),d.datepickerVisible=!1,$("#".concat(d.jSPlugin.id,"-datepicker")).on("pick.datepicker",function(J){console.log("重新选择日期",J.date,new Date(J.date).Format("yyyyMMdd"),new Date(document.getElementById("".concat(d.jSPlugin.id,"-datepicker")).value).Format("yyyyMMdd")),J.date>new Date||new Date(J.date).Format("yyyyMMdd")===new Date(document.getElementById("".concat(d.jSPlugin.id,"-datepicker")).value).Format("yyyyMMdd")?J.preventDefault():(document.getElementById("".concat(d.jSPlugin.id,"-datepicker")).value=new Date(J.date).Format("yyyy-MM-dd"),d.renderRec(J.date),d.jSPlugin.decoderState&&d.jSPlugin.decoderState.state?d.jSPlugin.decoderState.state.cloudRec?d.jSPlugin.changePlayUrl({begin:new Date(J.date).Format("yyyyMMdd"),type:"cloud.rec"}):d.jSPlugin.decoderState.state.rec?d.jSPlugin.changePlayUrl({begin:new Date(J.date).Format("yyyyMMdd"),type:"rec"}):d.jSPlugin.changePlayUrl({begin:new Date(J.date).Format("yyyyMMdd")}):d.jSPlugin.changePlayUrl({begin:new Date(J.date).Format("yyyyMMdd")})),document.getElementsByClassName("datepicker-container")[0]&&(document.getElementsByClassName("datepicker-container")[0].style.display="none"),d.datepickerVisible=!1,d.jSPlugin.decoderState&&d.jSPlugin.decoderState&&d.jSPlugin.decoderState.state&&d.jSPlugin.decoderState.state.zoom&&(d.jSPlugin.setDecoderState({zoom:!1}),d.jSPlugin.Zoom.stopZoom())}),$("#".concat(d.jSPlugin.id,"-datepicker")).off("click").on("click",function(J){console.log("点击日期"),d.datepickerVisible?document.getElementsByClassName("datepicker-container")[0]&&(document.getElementsByClassName("datepicker-container")[0].style.display="none"):document.getElementsByClassName("datepicker-container")[0]&&(document.getElementsByClassName("datepicker-container")[0].style.display="inline"),d.datepickerVisible=!d.datepickerVisible})})})}),document.getElementById("".concat(this.jSPlugin.id,"-timeline-scale-add")).onclick=function(){var J=d.currentTimeWidth;J<3&&d.timeLine.changeSize(++d.currentTimeWidth)},document.getElementById("".concat(this.jSPlugin.id,"-timeline-scale-sub")).onclick=function(){var J=d.currentTimeWidth;J>0&&d.timeLine.changeSize(--d.currentTimeWidth)};var a2=p("begin",this.jSPlugin.url)||new Date().Format("yyyyMMdd");this.renderRec("".concat(a2.slice(0,4),"-").concat(a2.slice(4,6),"-").concat(a2.slice(6,8))),this.observer=new MutationObserver(function(J,Y){d.recAutoSize()});var Z={attributes:!0,attributeOldValue:!0,attributeFilter:["style"]},t2=document.getElementById("".concat(this.jSPlugin.id));this.observer.observe(t2,Z)}},{key:"setDatepickerDate",value:function(d){if(document.getElementsByClassName("datepicker-container")[0]){var f=document.getElementsByClassName("datepicker-container")[0],y=f.parentNode;y.removeChild(f),document.getElementById("".concat(this.jSPlugin.id,"-datepicker")).value=d.replace(/(\d{4})(\d{2})(\d{2})/,"$1-$2-$3"),$("#".concat(this.jSPlugin.id,"-datepicker")).datepicker({autoShow:!1,autoHide:!0,autoPick:!0,language:"zh-CN",defaultDate:d,format:"yyyy-mm-dd",endDate:new Date,inline:!0,container:document.getElementById("".concat(this.jSPlugin.id,"-wrap"))})}}},{key:"datepickerHide",value:function(){document.getElementsByClassName("datepicker-container")[0]&&(document.getElementsByClassName("datepicker-container")[0].style.display="none"),this.datepickerVisible=!1}},{key:"datepickerShow",value:function(){document.getElementsByClassName("datepicker-container")[0]&&(document.getElementsByClassName("datepicker-container")[0].style.display="inline"),this.datepickerVisible=!0}},{key:"recAutoSize",value:function(){var d=this;if(document.getElementById("".concat(this.jSPlugin.id,"-canvas"))){var f=parseInt(getComputedStyle(document.getElementById(this.jSPlugin.id)).width,10)-100;f!==parseInt(document.getElementById("".concat(this.jSPlugin.id,"-canvas")).width)&&(document.getElementById("".concat(this.jSPlugin.id,"-canvas")).width=f,this.timeLine.init({id:"".concat(this.jSPlugin.id,"-canvas"),width:f,onChange:function(b){console.log("time",b,new Date(b).Format("yyyyMMddhhmmss")),console.log("jSPlugin",d.jSPlugin);var _=new Date(b).Format("yyyyMMddhhmmss");d.jSPlugin.changePlayUrl({begin:_})}}),this.renderRec(this.date),this.syncTimeLine())}}},{key:"syncTimeLine",value:function(){var d=this;this.jSPlugin.recTimer&&clearInterval(this.jSPlugin.recTimer),this.jSPlugin.recTimer=setInterval(function(){var f=d.jSPlugin.getOSDTime();f.then(function(y){var b=y.data;b===-1?console.log("获取播放时间错误"):b>0&&d.timeLine.run({time:new Date(b>1e12?b:b*1e3)})}).catch(function(y){})},1e3)}},{key:"unSyncTimeLine",value:function(){this.jSPlugin.recTimer&&clearInterval(this.jSPlugin.recTimer)}},{key:"renderRec",value:function(d){var f=this;this.date=d;var y=this,b=new Date(new Date(d).Format("yyyy-MM-dd 00:00:00").replace(/-/g,"/")).getTime(),_=new Date(new Date(d).Format("yyyy-MM-dd 23:59:59").replace(/-/g,"/")).getTime();this.timeLine.getRecord([],b,_),console.log("-----------233---------this.jSPlugin.url",this.jSPlugin.url);var M={accessToken:this.jSPlugin.accessToken,recType:S2(this.jSPlugin.url).type==="cloud.rec"?1:2,deviceSerial:S2(this.jSPlugin.url).deviceSerial,channelNo:S2(this.jSPlugin.url).channelNo,startTime:b,endTime:_,version:"2.0"},a2=function(J){if(J.data&&J.data.files&&J.data.files.length>0){var Y=J.data.files,k2=new Date().getTime(),y2=J.data.isAll;if(y2)f.timeLine.getRecord(Y,b,_);else{var s2=function f2(){function F2(n2){n2.data&&n2.data.files&&n2.data.files.length>0?n2.data.isAll==!1?(n2.data.files&&(Y=Y.concat(n2.data.files)),k2=n2.data.nextFileTime>0?n2.data.nextFileTime:new Date().getTime(),f2()):(console.log("云存储执行渲染片段"),y.timeLine.getRecord(Y,b,_)):y.timeLine.getRecord(Y,b,_)}M.startTime=k2,C2(this.jSPlugin.env.domain+"/api/lapp/video/by/time","POST",M,"",F2)};s2()}f.timeLine.run({time:new Date(b)})}else J.data&&J.data.length>0&&(console.log("获取本地录像片段成功",J),y.timeLine.getRecord(J.data,b,_),y.timeLine.run({time:new Date(b)}))},Z=this.jSPlugin.env.domain+"/api/lapp/video/by/time";C2(Z,"POST",M,"",a2)}}]),O}(),R3=function(N){console.log("执行TimeLine - params",N),this.state={id:N.id,start:"00:00:00",end:"24:00:00",current:0,timelag:30,timeArr:[],availTimeLine:[],scrollTop:0,index:0,date:"",noTimeLineTxt:"",disabled:!1};var d=this;this.setState=function(f){Object.keys(f).forEach(function(y){d.state[y]=f[y],y==="scrollTop"&&document.getElementById("time-line-item").parentNode.scrollTo(0,f[y]),y==="current"&&(document.getElementById("time-line-current").innerHTML=f[y])})},this.setDisabled=function(f){this.setState({disabled:f}),document.getElementById("time-line-item").parentNode.style.overflowY=f?"hidden":"scroll"},this.timeToSecond=function(f){var y=f.split(":"),b=Number(y[0]),_=Number(y[1]),M=Number(y[2]);return b*60*60+_*60+(M||0)},this.minuteToTime=function(f){var y=Math.floor(f/60),b=f%60;return(y>9?y:"0"+y)+":"+(b>9?b:"0"+b)},this.timeToMinute=function(f){var y=f.split(":"),b=Number(y[0]),_=Number(y[1]);return b*60+_},this.getPalyParam=N.getPalyParam,document.getElementById("time-line-item").parentNode.ontouchstart=function(){if(d.state.disabled)return!1;N.ontouchstart()},document.getElementById("time-line-item").parentNode.ontouchmove=function(){if(d.state.disabled)return!1;N.ontouchmove()},document.getElementById("time-line-item").parentNode.ontouchend=function(){if(d.state.disabled)return!1;var f,y=new Promise(function(b,_){var M=-1;f=setInterval(function(){var a2=document.getElementById("time-line-item").parentNode.scrollTop;a2!==M?(console.log("scolling",a2,M),M=a2):(console.log("scoll stop",a2,M),clearInterval(f),b(a2))},100)});y.then(function(b){console.log("scollPromise: then",b,d),d.rectTopTotime(b),console.log("页面滚动实际高度",b,d.state),d.getPalyParam({current:d.state.current})}),N.ontouchend()},this.matchTimeDot()};R3.prototype.changeScale=function(O){this.setState({timelag:O}),this.matchTimeDot()},R3.prototype.setDateLine=function(O,N){O.length>0?(typeof N=="undefined"&&(N=O.length-1),this.setState({availTimeLine:O,start:O[N].st,end:O[N].et,current:O[N].st}),console.log("this.state",this.state),this.matchRecTimeDot(),this.primaryOffsetH()):(this.setState({availTimeLine:[]}),console.log("this.state",this.state),this.matchRecTimeDot())},R3.prototype.matchTimeDot=function(){var O=this.state,N=O.start,d=O.end,f=O.timelag;O.availTimeLine,console.log("start",N,"end",d);var y=[],b=this.timeToMinute(d);b=Math.floor(b/f)*f;for(var _=b;_>=0;){var M=0,a2=0,Z=[];_==b&&(M=70),_==0&&(a2=230);var t2=this.minuteToTime(_);y.push({id:_,current:t2,label:"a"+_,marginTop:M,marginBottom:a2,recArr:Z}),_=_-f}this.setState({timeArr:y}),this.renderDateLine()},R3.prototype.matchRecTimeDot=function(){var O=this.state,N=O.start,d=O.end,f=O.timelag,y=O.availTimeLine,b=O.timeArr;console.log("start",N,"end",d);var _=[],M=y.length;if(M===0)for(var a2=0;a2y2&&b[a2].id ')}),a2+=" ').concat(y.current,""),_.innerHTML=a2,f.appendChild(_)})},R3.prototype.primaryOffsetH=function(){var O=this.state,N=O.start,d=O.timelag,f=O.timeArr,y=f[0].current,b=this.timeToSecond(y),_=this.timeToSecond(N),M=b-_,a2=Math.ceil(M/d)+60;this.setState({scrollTop:a2}),console.log("起始偏移量",a2)},R3.prototype.currentOffsetH=function(){var O=this.state,N=O.current,d=O.timelag,f=O.timeArr,y=f[0].current,b=this.timeToSecond(y),_=this.timeToSecond(N),M=b-_,a2=Math.ceil(M/d)+60;this.setState({scrollTop:a2})},R3.prototype.rectTopTotime=function(O){var N=this.state.timelag,d=Math.floor(O/60),f=O-d*60,y,b;if(console.log("index:",d,"offsetH:",f),f==0)y=this.state.timeArr[d-1].current,b=0;else{var _=this.state.timeArr[d].current,M=this.timeToMinute(_),a2=60-f,Z=a2*N,t2=Math.floor(Z/60)+M,J=Math.floor(Z/60)*60;b=Math.ceil(Z-J),y=this.minuteToTime(t2)}this.setState({current:y+":"+(b>9?b:"0"+b),scrollTop:O})},R3.prototype.stepScrollTimeLine=function(O){this.setState({current:O}),this.currentOffsetH()},R3.prototype.secondCountDown=function(O){var N=this.state.current,d=N.split(":"),f=Number(d[0]),y=Number(d[1]),b=Number(d[2]),_=f*60*60+y*60+b+1,M=Math.floor(_/3600),a2=Math.floor((_-M*3600)/60),Z=_-M*3600-a2*60;this.setState({current:(M>9?M:"0"+M)+":"+(a2>9?a2:"0"+a2)+":"+(Z>9?Z:"0"+Z)})};var h1=R3;Date.prototype.Format=function(O){var N={"M+":this.getMonth()+1,"d+":this.getDate(),"h+":this.getHours(),"m+":this.getMinutes(),"s+":this.getSeconds(),"q+":Math.floor((this.getMonth()+3)/3),S:this.getMilliseconds()};/(y+)/.test(O)&&(O=O.replace(RegExp.$1,(this.getFullYear()+"").substr(4-RegExp.$1.length)));for(var d in N)new RegExp("("+d+")").test(O)&&(O=O.replace(RegExp.$1,RegExp.$1.length==1?N[d]:("00"+N[d]).substr((""+N[d]).length)));return O};function C1(O){var N=new Date(O),d=N.getHours(),f=N.getMinutes(),y=N.getSeconds();return(d>9?d:"0"+d)+":"+(f>9?f:"0"+f)+":"+(y>9?y:"0"+y)}var _1=function(){function O(N,d,f){var y=this;a(this,O),this.changeRecSpeed=d,this.resetMobileZoomStatus=f,this.isMobile=!0,this.jSPlugin=N,this.timer=null,this.date=new Date().Format("yyyy-MM-dd"),this.begin=(new Date().Format("yyyy-MM-dd")+" 00:00:00").replace(/-/g,"/"),this.end=(new Date().Format("yyyy-MM-dd")+" 23:59:59").replace(/-/g,"/"),this.initBegin=null,this.initEnd=null,this.type=S2(this.jSPlugin.url).type,this.operating=!1,this.seekTimer=null,this.disabled=!1,this.seekFrequency=2e3,this.jSPlugin.params&&this.jSPlugin.params.seekFrequency&&(this.seekFrequency=this.jSPlugin.params.seekFrequency);var b=document.createElement("style");if(b.innerHTML=` +`);_.innerHTML=M,g(_,y),this.timeLine=new h3(this.jSPlugin),this.timeLine.init({id:this.jSPlugin.id+"-canvas",width:f,onChange:function(Y){console.log("time",Y,new Date(Y).Format("yyyyMMddhhmmss"));var k2=new Date(Y).Format("yyyyMMddhhmmss");if(console.log("----------------this.jSPlugin.url",d.jSPlugin.url),S2(d.jSPlugin.url).type==="cloud.rec"||d.jSPlugin.capacity&&d.jSPlugin.capacity.support_seek_playback=="1"){var y2=function(){d.jSPlugin.seek(k2.substr(8,6),"235959"),d.unSyncTimeLine(),setTimeout(function(){d.syncTimeLine()},6e3)};d.seekTimer?clearTimeout(d.seekTimer):y2(),d.seekTimer=setTimeout(function(){y2(),clearTimeout(d.seekTimer),d.seekTimer=null},d.seekFrequency)}else{var o2=function(){setTimeout(function(){d.disabled=!1},d.seekFrequency)},d2=function(n2){d.disabled=!0,d.jSPlugin.pause().then(function(){console.log("暂停成功"),d.jSPlugin.resume(k2).then(function(T){console.log("恢复成功:",T),d.jSPlugin.Theme&&d.jSPlugin.Theme.setDecoderState({play:!0}),d.jSPlugin.Theme&&d.jSPlugin.Theme.decoderState.state.sound&&d.jSPlugin.openSound(),n2&&n2()}).catch(function(T){console.log("恢复失败",T)})}).catch(function(){console.log("暂停失败"),d.jSPlugin.resume(k2).then(function(T){console.log("恢复成功"),d.jSPlugin.Theme&&d.jSPlugin.Theme.setDecoderState({play:!0}),n2&&n2()}).catch(function(T){console.log("恢复失败",T)})})};d.disabled?(console.log("操作频繁,等待2秒后执行"),d.seekTimer&&clearTimeout(d.seekTimer),d.seekTimer=setTimeout(function(){d2(o2)},d.seekFrequency)):d2(o2)}}}),this.syncTimeLine(),m("".concat(this.jSPlugin.staticPath,"/rec/datepicker.min.css")),u("".concat(this.jSPlugin.staticPath,"/rec/jquery.min.js"),function(){u("".concat(d.jSPlugin.staticPath,"/rec/datepicker.js"),function(){u("".concat(d.jSPlugin.staticPath,"/rec/datepicker.zh-CN.js"),function(){!document.getElementsByClassName("datepicker-container")[0]&&$("#".concat(d.jSPlugin.id,"-datepicker")).datepicker&&$("#".concat(d.jSPlugin.id,"-datepicker")).datepicker({autoShow:!1,autoHide:!0,autoPick:!0,language:"zh-CN",date:new Date(p("begin",d.jSPlugin.params.url).replace(/(\d{4})(\d{2})(\d{2})/,"$1-$2-$3"))||new Date,format:"yyyy-mm-dd",endDate:new Date,inline:!0,container:document.getElementById("".concat(d.jSPlugin.id,"-wrap"))}),document.getElementsByClassName("datepicker-container")[0]&&(document.getElementsByClassName("datepicker-container")[0].style.display="none"),d.datepickerVisible=!1,$("#".concat(d.jSPlugin.id,"-datepicker")).on("pick.datepicker",function(J){console.log("重新选择日期",J.date,new Date(J.date).Format("yyyyMMdd"),new Date(document.getElementById("".concat(d.jSPlugin.id,"-datepicker")).value).Format("yyyyMMdd")),J.date>new Date||new Date(J.date).Format("yyyyMMdd")===new Date(document.getElementById("".concat(d.jSPlugin.id,"-datepicker")).value).Format("yyyyMMdd")?J.preventDefault():(document.getElementById("".concat(d.jSPlugin.id,"-datepicker")).value=new Date(J.date).Format("yyyy-MM-dd"),d.renderRec(J.date),d.jSPlugin.decoderState&&d.jSPlugin.decoderState.state?d.jSPlugin.decoderState.state.cloudRec?d.jSPlugin.changePlayUrl({begin:new Date(J.date).Format("yyyyMMdd"),type:"cloud.rec"}):d.jSPlugin.decoderState.state.rec?d.jSPlugin.changePlayUrl({begin:new Date(J.date).Format("yyyyMMdd"),type:"rec"}):d.jSPlugin.changePlayUrl({begin:new Date(J.date).Format("yyyyMMdd")}):d.jSPlugin.changePlayUrl({begin:new Date(J.date).Format("yyyyMMdd")})),document.getElementsByClassName("datepicker-container")[0]&&(document.getElementsByClassName("datepicker-container")[0].style.display="none"),d.datepickerVisible=!1,d.jSPlugin.decoderState&&d.jSPlugin.decoderState&&d.jSPlugin.decoderState.state&&d.jSPlugin.decoderState.state.zoom&&(d.jSPlugin.setDecoderState({zoom:!1}),d.jSPlugin.Zoom.stopZoom())}),$("#".concat(d.jSPlugin.id,"-datepicker")).off("click").on("click",function(J){console.log("点击日期"),d.datepickerVisible?document.getElementsByClassName("datepicker-container")[0]&&(document.getElementsByClassName("datepicker-container")[0].style.display="none"):document.getElementsByClassName("datepicker-container")[0]&&(document.getElementsByClassName("datepicker-container")[0].style.display="inline"),d.datepickerVisible=!d.datepickerVisible})})})}),document.getElementById("".concat(this.jSPlugin.id,"-timeline-scale-add")).onclick=function(){var J=d.currentTimeWidth;J<3&&d.timeLine.changeSize(++d.currentTimeWidth)},document.getElementById("".concat(this.jSPlugin.id,"-timeline-scale-sub")).onclick=function(){var J=d.currentTimeWidth;J>0&&d.timeLine.changeSize(--d.currentTimeWidth)};var a2=p("begin",this.jSPlugin.url)||new Date().Format("yyyyMMdd");this.renderRec("".concat(a2.slice(0,4),"-").concat(a2.slice(4,6),"-").concat(a2.slice(6,8))),this.observer=new MutationObserver(function(J,Y){d.recAutoSize()});var Z={attributes:!0,attributeOldValue:!0,attributeFilter:["style"]},t2=document.getElementById("".concat(this.jSPlugin.id));this.observer.observe(t2,Z)}},{key:"setDatepickerDate",value:function(d){if(document.getElementsByClassName("datepicker-container")[0]){var f=document.getElementsByClassName("datepicker-container")[0],y=f.parentNode;y.removeChild(f),document.getElementById("".concat(this.jSPlugin.id,"-datepicker")).value=d.replace(/(\d{4})(\d{2})(\d{2})/,"$1-$2-$3"),$("#".concat(this.jSPlugin.id,"-datepicker")).datepicker({autoShow:!1,autoHide:!0,autoPick:!0,language:"zh-CN",defaultDate:d,format:"yyyy-mm-dd",endDate:new Date,inline:!0,container:document.getElementById("".concat(this.jSPlugin.id,"-wrap"))})}}},{key:"datepickerHide",value:function(){document.getElementsByClassName("datepicker-container")[0]&&(document.getElementsByClassName("datepicker-container")[0].style.display="none"),this.datepickerVisible=!1}},{key:"datepickerShow",value:function(){document.getElementsByClassName("datepicker-container")[0]&&(document.getElementsByClassName("datepicker-container")[0].style.display="inline"),this.datepickerVisible=!0}},{key:"recAutoSize",value:function(){var d=this;if(document.getElementById("".concat(this.jSPlugin.id,"-canvas"))){var f=parseInt(getComputedStyle(document.getElementById(this.jSPlugin.id)).width,10)-100;f!==parseInt(document.getElementById("".concat(this.jSPlugin.id,"-canvas")).width)&&(document.getElementById("".concat(this.jSPlugin.id,"-canvas")).width=f,this.timeLine.init({id:"".concat(this.jSPlugin.id,"-canvas"),width:f,onChange:function(b){console.log("time",b,new Date(b).Format("yyyyMMddhhmmss")),console.log("jSPlugin",d.jSPlugin);var _=new Date(b).Format("yyyyMMddhhmmss");d.jSPlugin.changePlayUrl({begin:_})}}),this.renderRec(this.date),this.syncTimeLine())}}},{key:"syncTimeLine",value:function(){var d=this;this.jSPlugin.recTimer&&clearInterval(this.jSPlugin.recTimer),this.jSPlugin.recTimer=setInterval(function(){var f=d.jSPlugin.getOSDTime();f.then(function(y){var b=y.data;b===-1?console.log("获取播放时间错误"):b>0&&d.timeLine.run({time:new Date(b>1e12?b:b*1e3)})}).catch(function(y){})},1e3)}},{key:"unSyncTimeLine",value:function(){this.jSPlugin.recTimer&&clearInterval(this.jSPlugin.recTimer)}},{key:"renderRec",value:function(d){var f=this;this.date=d;var y=this,b=new Date(new Date(d).Format("yyyy-MM-dd 00:00:00").replace(/-/g,"/")).getTime(),_=new Date(new Date(d).Format("yyyy-MM-dd 23:59:59").replace(/-/g,"/")).getTime();this.timeLine.getRecord([],b,_),console.log("-----------233---------this.jSPlugin.url",this.jSPlugin.url);var M={accessToken:this.jSPlugin.accessToken,recType:S2(this.jSPlugin.url).type==="cloud.rec"?1:2,deviceSerial:S2(this.jSPlugin.url).deviceSerial,channelNo:S2(this.jSPlugin.url).channelNo,startTime:b,endTime:_,version:"2.0"},a2=function(J){if(J.data&&J.data.files&&J.data.files.length>0){var Y=J.data.files,k2=new Date().getTime(),y2=J.data.isAll;if(y2)f.timeLine.getRecord(Y,b,_);else{var o2=function d2(){function F2(n2){n2.data&&n2.data.files&&n2.data.files.length>0?n2.data.isAll==!1?(n2.data.files&&(Y=Y.concat(n2.data.files)),k2=n2.data.nextFileTime>0?n2.data.nextFileTime:new Date().getTime(),d2()):(console.log("云存储执行渲染片段"),y.timeLine.getRecord(Y,b,_)):y.timeLine.getRecord(Y,b,_)}M.startTime=k2,C2(this.jSPlugin.env.domain+"/api/lapp/video/by/time","POST",M,"",F2)};o2()}f.timeLine.run({time:new Date(b)})}else J.data&&J.data.length>0&&(console.log("获取本地录像片段成功",J),y.timeLine.getRecord(J.data,b,_),y.timeLine.run({time:new Date(b)}))},Z=this.jSPlugin.env.domain+"/api/lapp/video/by/time";C2(Z,"POST",M,"",a2)}}]),O}(),L3=function(N){console.log("执行TimeLine - params",N),this.state={id:N.id,start:"00:00:00",end:"24:00:00",current:0,timelag:30,timeArr:[],availTimeLine:[],scrollTop:0,index:0,date:"",noTimeLineTxt:"",disabled:!1};var d=this;this.setState=function(f){Object.keys(f).forEach(function(y){d.state[y]=f[y],y==="scrollTop"&&document.getElementById("time-line-item").parentNode.scrollTo(0,f[y]),y==="current"&&(document.getElementById("time-line-current").innerHTML=f[y])})},this.setDisabled=function(f){this.setState({disabled:f}),document.getElementById("time-line-item").parentNode.style.overflowY=f?"hidden":"scroll"},this.timeToSecond=function(f){var y=f.split(":"),b=Number(y[0]),_=Number(y[1]),M=Number(y[2]);return b*60*60+_*60+(M||0)},this.minuteToTime=function(f){var y=Math.floor(f/60),b=f%60;return(y>9?y:"0"+y)+":"+(b>9?b:"0"+b)},this.timeToMinute=function(f){var y=f.split(":"),b=Number(y[0]),_=Number(y[1]);return b*60+_},this.getPalyParam=N.getPalyParam,document.getElementById("time-line-item").parentNode.ontouchstart=function(){if(d.state.disabled)return!1;N.ontouchstart()},document.getElementById("time-line-item").parentNode.ontouchmove=function(){if(d.state.disabled)return!1;N.ontouchmove()},document.getElementById("time-line-item").parentNode.ontouchend=function(){if(d.state.disabled)return!1;var f,y=new Promise(function(b,_){var M=-1;f=setInterval(function(){var a2=document.getElementById("time-line-item").parentNode.scrollTop;a2!==M?(console.log("scolling",a2,M),M=a2):(console.log("scoll stop",a2,M),clearInterval(f),b(a2))},100)});y.then(function(b){console.log("scollPromise: then",b,d),d.rectTopTotime(b),console.log("页面滚动实际高度",b,d.state),d.getPalyParam({current:d.state.current})}),N.ontouchend()},this.matchTimeDot()};L3.prototype.changeScale=function(O){this.setState({timelag:O}),this.matchTimeDot()},L3.prototype.setDateLine=function(O,N){O.length>0?(typeof N=="undefined"&&(N=O.length-1),this.setState({availTimeLine:O,start:O[N].st,end:O[N].et,current:O[N].st}),console.log("this.state",this.state),this.matchRecTimeDot(),this.primaryOffsetH()):(this.setState({availTimeLine:[]}),console.log("this.state",this.state),this.matchRecTimeDot())},L3.prototype.matchTimeDot=function(){var O=this.state,N=O.start,d=O.end,f=O.timelag;O.availTimeLine,console.log("start",N,"end",d);var y=[],b=this.timeToMinute(d);b=Math.floor(b/f)*f;for(var _=b;_>=0;){var M=0,a2=0,Z=[];_==b&&(M=70),_==0&&(a2=230);var t2=this.minuteToTime(_);y.push({id:_,current:t2,label:"a"+_,marginTop:M,marginBottom:a2,recArr:Z}),_=_-f}this.setState({timeArr:y}),this.renderDateLine()},L3.prototype.matchRecTimeDot=function(){var O=this.state,N=O.start,d=O.end,f=O.timelag,y=O.availTimeLine,b=O.timeArr;console.log("start",N,"end",d);var _=[],M=y.length;if(M===0)for(var a2=0;a2y2&&b[a2].id ')}),a2+=" ').concat(y.current,""),_.innerHTML=a2,f.appendChild(_)})},L3.prototype.primaryOffsetH=function(){var O=this.state,N=O.start,d=O.timelag,f=O.timeArr,y=f[0].current,b=this.timeToSecond(y),_=this.timeToSecond(N),M=b-_,a2=Math.ceil(M/d)+60;this.setState({scrollTop:a2}),console.log("起始偏移量",a2)},L3.prototype.currentOffsetH=function(){var O=this.state,N=O.current,d=O.timelag,f=O.timeArr,y=f[0].current,b=this.timeToSecond(y),_=this.timeToSecond(N),M=b-_,a2=Math.ceil(M/d)+60;this.setState({scrollTop:a2})},L3.prototype.rectTopTotime=function(O){var N=this.state.timelag,d=Math.floor(O/60),f=O-d*60,y,b;if(console.log("index:",d,"offsetH:",f),f==0)y=this.state.timeArr[d-1].current,b=0;else{var _=this.state.timeArr[d].current,M=this.timeToMinute(_),a2=60-f,Z=a2*N,t2=Math.floor(Z/60)+M,J=Math.floor(Z/60)*60;b=Math.ceil(Z-J),y=this.minuteToTime(t2)}this.setState({current:y+":"+(b>9?b:"0"+b),scrollTop:O})},L3.prototype.stepScrollTimeLine=function(O){this.setState({current:O}),this.currentOffsetH()},L3.prototype.secondCountDown=function(O){var N=this.state.current,d=N.split(":"),f=Number(d[0]),y=Number(d[1]),b=Number(d[2]),_=f*60*60+y*60+b+1,M=Math.floor(_/3600),a2=Math.floor((_-M*3600)/60),Z=_-M*3600-a2*60;this.setState({current:(M>9?M:"0"+M)+":"+(a2>9?a2:"0"+a2)+":"+(Z>9?Z:"0"+Z)})};var h1=L3;Date.prototype.Format=function(O){var N={"M+":this.getMonth()+1,"d+":this.getDate(),"h+":this.getHours(),"m+":this.getMinutes(),"s+":this.getSeconds(),"q+":Math.floor((this.getMonth()+3)/3),S:this.getMilliseconds()};/(y+)/.test(O)&&(O=O.replace(RegExp.$1,(this.getFullYear()+"").substr(4-RegExp.$1.length)));for(var d in N)new RegExp("("+d+")").test(O)&&(O=O.replace(RegExp.$1,RegExp.$1.length==1?N[d]:("00"+N[d]).substr((""+N[d]).length)));return O};function C1(O){var N=new Date(O),d=N.getHours(),f=N.getMinutes(),y=N.getSeconds();return(d>9?d:"0"+d)+":"+(f>9?f:"0"+f)+":"+(y>9?y:"0"+y)}var _1=function(){function O(N,d,f){var y=this;a(this,O),this.changeRecSpeed=d,this.resetMobileZoomStatus=f,this.isMobile=!0,this.jSPlugin=N,this.timer=null,this.date=new Date().Format("yyyy-MM-dd"),this.begin=(new Date().Format("yyyy-MM-dd")+" 00:00:00").replace(/-/g,"/"),this.end=(new Date().Format("yyyy-MM-dd")+" 23:59:59").replace(/-/g,"/"),this.initBegin=null,this.initEnd=null,this.type=S2(this.jSPlugin.url).type,this.operating=!1,this.seekTimer=null,this.disabled=!1,this.seekFrequency=2e3,this.jSPlugin.params&&this.jSPlugin.params.seekFrequency&&(this.seekFrequency=this.jSPlugin.params.seekFrequency);var b=document.createElement("style");if(b.innerHTML=` body{ padding: 0; margin: 0; @@ -360,7 +360,7 @@ C11.4,16.3,11,16.6,10.6,16.6z" /> - `,g(t2,Z);var J=function(f2){console.log("子组件传值到父组件",f2,f2.current);var F2=f2.current,n2=new Date(y.date).Format("yyyyMMdd").substr(0,8)+(f2.current?F2.replace(/:/g,""):f2.current.replace(/:/g,""));if(y.initBegin&&new Date("".concat(y.date," ").concat(f2.current)).getTime()new Date(y.initEnd).getTime()&&(console.log("超过限制最高值"),n2=new Date(y.initBegin).Format("yyyyMMddhhmmss")),y.type==="cloud.rec"){var T=function(){y.jSPlugin.seek(n2.substr(8,6),"235959"),setTimeout(function(){y.syncTimeLine()},6e3)};y.seekTimer?clearTimeout(y.seekTimer):T(),console.log("this.jsPlug",y.jSPlugin.params),y.seekTimer=setTimeout(function(){T(),clearTimeout(y.seekTimer),y.seekTimer=null},y.seekFrequency)}else{var D=function(){setTimeout(function(){y.disabled=!1},y.seekFrequency)},W=function(N2){y.disabled=!0,y.jSPlugin.pause().then(function(){console.log("暂停成功"),y.jSPlugin.resume(n2).then(function(Y2){console.log("恢复成功"),y.jSPlugin.Theme&&y.jSPlugin.Theme.setDecoderState({play:!0}),y.jSPlugin.Theme&&y.jSPlugin.Theme.decoderState.state.sound&&y.jSPlugin.openSound(),y.syncTimeLine(),N2&&N2()})}).catch(function(){console.log("暂停失败"),y.jSPlugin.resume(n2).then(function(Y2){console.log("恢复成功"),y.jSPlugin.Theme&&y.jSPlugin.Theme.setDecoderState({play:!0}),y.syncTimeLine(),N2&&N2()})})};y.disabled?(console.log("操作频繁,等待2秒后执行"),y.seekTimer&&clearTimeout(y.seekTimer),y.seekTimer=setTimeout(function(){W(D)},y.seekFrequency)):W(D)}},Y=function(){y.operating=!0,y.unSyncTimeLine()},k2=function(){},y2=function(){y.operating=!1,console.log("ontouchend")};this.TimeLineOBJ=new h1({id:"time-line-item",getPalyParam:J,ontouchstart:Y,ontouchmove:k2,ontouchend:y2}),this.fetchDeviceRec(),document.getElementById("date").addEventListener("change",function(s2){if(console.log("日期变化",s2.target.value),y.initBegin||y.initEnd)return console.log("您开启了时间限制,无法切换日期"),!1;y.date=new Date(s2.target.value).Format("yyyy/MM/dd"),y.begin=y.date+" 00:00:00",y.end=y.date+" 23:59:59",y.fetchDeviceRec(),y.jSPlugin.changePlayUrl({type:y.type,begin:"".concat(new Date(y.date).Format("yyyyMMdd"),"000000")}),y.changeRecSpeed(1),y.resetMobileZoomStatus()}),document.getElementById("cloudType").checked=this.type==="rec",document.getElementById("cloudType").addEventListener("change",function(s2){var f2=s2.target.checked?2:1;y.type=s2.target.checked?"rec":"cloud.rec",console.log("recType",f2),y.fetchDeviceRec(),y.jSPlugin.changePlayUrl({type:y.type,begin:"".concat(new Date(y.date).Format("yyyyMMdd"),"000000")}).then(function(){console.log("切换类型成功"),y.syncTimeLine(),y.changeRecSpeed(1),y.resetMobileZoomStatus()},function(F2){console.log("err",F2)}).catch(function(F2){console.log(F2)})}),this.syncTimeLine()}return r(O,[{key:"fetchDeviceRec",value:function(){var d=this,f=function(_){var M=_.length;document.getElementById("recCount").innerHTML=M;for(var a2=[],Z=M-1;Z>=0;Z--){var t2=_[Z],J=C1(t2.endTime),Y=C1(t2.startTime);a2.push({st:Y,et:J})}d.TimeLineOBJ.setDateLine(a2)},y=new FormData;y.append("deviceSerial",S2(this.jSPlugin.url).deviceSerial),y.append("channelNo",S2(this.jSPlugin.url).channelNo),y.append("accessToken",this.jSPlugin.accessToken),y.append("recType",this.type==="cloud.rec"?1:2),y.append("startTime",new Date(this.begin).getTime()),y.append("endTime",new Date(this.end).getTime()),fetch(this.jSPlugin.env.domain+"/api/lapp/video/by/time",{method:"POST",body:y}).then(function(b){return b.json()}).then(function(b){if(b.code==200&&b.data){var _=[];_=b.data,f(_)}else f([])})}},{key:"syncTimeLine",value:function(){var d=this,f=function(b){var _=new Date(b),M=_.getHours(),a2=_.getMinutes(),Z=_.getSeconds();return(M>9?M:"0"+M)+":"+(a2>9?a2:"0"+a2)+":"+(Z>9?Z:"0"+Z)};this.timer&&clearInterval(this.timer),this.timer=setInterval(function(){if(d.operating)return console.log("操作中"),!1;d.jSPlugin.getOSDTime().then(function(y){y.data>0?d.TimeLineOBJ.stepScrollTimeLine(f(y.data*1e3)):(console.log("未找到当前获取播放时间,等待中..."),console.log("res:-----------------",y))}).catch(function(y){console.log("err:-----",y),console.log("未找到当前获取播放时间,等待中...")})},1e3)}},{key:"unSyncTimeLine",value:function(){this.timer&&clearInterval(this.timer)}}]),O}(),o1=[{code:200,msg:"",desc:"请求成功",text:"操作成功",type:"ptzStart"},{code:10001,msg:"操作失败",desc:"参数为空或格式不正确",text:"参数错误",type:"ptzStart"},{code:10002,msg:"账号异常,操作失败",desc:"重新获取accessToken",text:"accessToken异常或过期",type:"ptzStart"},{code:10005,msg:"账号异常,操作失败",desc:"appKey被冻结",text:"appKey异常",type:"ptzStart"},{code:20002,msg:"设备不存在,请检查设备连接情况",desc:"",text:"设备不存在",type:"ptzStart"},{code:20006,msg:"操作失败,请检查设备网络情况",desc:"检查设备网络状况,稍后再试",text:"网络异常",type:"ptzStart"},{code:20007,msg:"操作失败,请检查设备在线情况",desc:"检查设备是否在线",text:"设备不在线",type:"ptzStart"},{code:20008,msg:"操作过于频繁,稍后再试",desc:"操作过于频繁,稍后再试",text:"设备响应超时",type:"ptzStart"},{code:20014,msg:"操作失败",desc:"",text:"deviceSerial不合法",type:"ptzStart"},{code:20032,msg:"通道不存在请检查设备连接情况",desc:"该用户下通道不存在",text:"该用户下通道不存在",type:"ptzStart"},{code:49999,msg:"操作失败,请重试",desc:"接口调用异常",text:"数据异常",type:"ptzStart"},{code:6e4,msg:"操作失败,设备不支持该操作",desc:"",text:"设备不支持云台控制",type:"ptzStart"},{code:60001,msg:"操作失败,用户无权限",desc:"",text:"用户无云台控制权限",type:"ptzStart"},{code:60002,msg:"设备已旋转到上限位",desc:"",text:"设备云台旋转达到上限位",type:"ptzStart"},{code:60003,msg:"设备已旋转到下限位",desc:"",text:"设备云台旋转达到下限位",type:"ptzStart"},{code:60004,msg:"设备已旋转到左限位",desc:"",text:"设备云台旋转达到左限位",type:"ptzStart"},{code:60005,msg:"设备已旋转到右限位",desc:"",text:"设备云台旋转达到右限位",type:"ptzStart"},{code:60006,msg:"操作失败,请重试",desc:"稍候再试",text:"云台当前操作失败",type:"ptzStart"},{code:60009,msg:"设备正在操作中",desc:"",text:"正在调用预置点",type:"ptzStart"},{code:60020,msg:"操作失败",desc:"确认设备是否支持该操作",text:"不支持该命令",type:"ptzStart"}],l3=[{code:200,msg:"",desc:"请求成功",text:"操作成功",type:"ptzStop"},{code:10001,msg:"操作失败",desc:"参数为空或格式不正确",text:"参数错误",type:"ptzStop"},{code:10002,msg:"账号异常,操作失败",desc:"重新获取accessToken",text:"accessToken异常或过期",type:"ptzStop"},{code:10005,msg:"账号异常,操作失败",desc:"appKey被冻结",text:"appKey异常",type:"ptzStop"},{code:20002,msg:"设备不存在,请检查设备连接情况",desc:"",text:"设备不存在",type:"ptzStop"},{code:20006,msg:"操作失败,请检查设备网络情况",desc:"检查设备网络状况,稍后再试",text:"网络异常",type:"ptzStop"},{code:20007,msg:"操作失败,请检查设备在线情况",desc:"检查设备是否在线",text:"设备不在线",type:"ptzStop"},{code:20008,msg:"操作过于频繁,稍后再试",desc:"操作过于频繁,稍后再试",text:"设备响应超时",type:"ptzStop"},{code:20014,msg:"操作失败",desc:"",text:"deviceSerial不合法",type:"ptzStop"},{code:20032,msg:"通道不存在请检查设备连接情况",desc:"该用户下通道不存在",text:"该用户下通道不存在",type:"ptzStop"},{code:49999,msg:"操作失败,请重试",desc:"接口调用异常",text:"数据异常",type:"ptzStop"},{code:6e4,msg:"操作失败,设备不支持该操作",desc:"",text:"设备不支持云台控制",type:"ptzStop"},{code:60001,msg:"操作失败,用户无权限",desc:"",text:"用户无云台控制权限",type:"ptzStop"},{code:60006,msg:"操作失败,请重试",desc:"稍候再试",text:"云台当前操作失败",type:"ptzStop"},{code:60009,msg:"设备正在操作中",desc:"",text:"正在调用预置点",type:"ptzStop"},{code:60020,msg:"操作失败",desc:"确认设备是否支持该操作",text:"不支持该命令",type:"ptzStop"}],$2=[{code:200,msg:"",desc:"请求成功",text:"操作成功",type:"talk"},{code:10001,msg:"播放失败",desc:"参数为空或格式不正确",text:"参数错误",type:"talk"},{code:10002,msg:"账号异常,操作失败",desc:"",text:"accessToken异常或过期",type:"talk"},{code:10031,msg:"账号异常,操作失败",desc:"",text:"子账户或萤石用户没有权限",type:"talk"},{code:20002,msg:"设备不存在请检查设备连接情况",desc:"设备序列号输入有误或者设备未被添加或者通道异常",text:"设备不存在",type:"talk"},{code:60059,msg:"播放失败",desc:"",text:"ezopen地址均不可用",type:"talk"}],O3=[{code:200,msg:"",desc:"",text:"操作成功",type:"time"},{code:10001,msg:"播放失败",desc:"参数为空或格式不正确",text:"参数错误",type:"time"},{code:10002,msg:"账号异常,播放失败",desc:"",text:"accessToken异常或过期",type:"time"},{code:10004,msg:"账号异常,播放失败",desc:"",text:"用户不存在",type:"time"},{code:10005,msg:"账号异常,播放失败",desc:"",text:"appKey异常",type:"time"},{code:10011,msg:"播放失败",desc:"设备对应用户未注册至应用下",text:"未开通萤石服务",type:"time"},{code:10013,msg:"账号异常,播放失败",desc:"",text:"非开发者账号无权限调用",type:"time"},{code:10030,msg:"播放失败",desc:"",text:"appkey和appsecret不匹配",type:"time"},{code:20002,msg:"设备不存在请检查设备连接情况",desc:"设备序列号输入有误或者设备未被添加或者通道异常",text:"设备不存在",type:"time"},{code:20014,msg:"播放失败",desc:"",text:"deviceSerial不合法",type:"time"},{code:20032,msg:"设备不存在请检查设备连接情况",desc:"",text:"该用户下通道不存在",type:"time"},{code:60024,msg:"播放失败请重试",desc:"",text:"取消订阅操作失败",type:"time"},{code:49999,msg:"播放失败请重试",desc:"",text:"操作异常",type:"time"}],c1={ptzStart:o1,ptzStop:l3,talk:$2,time:O3},M1=function(){function O(N,d){a(this,O),this.coreX=N,this.coreY=d,console.log("uikitCode",c1)}return r(O,[{key:"toString",value:function(){return"".concat(this.coreX,"-").concat(this.coreY)}},{key:"matchInfo",value:function(d,f){if(c1[f]){var y={};return c1[f].map(function(b){b.code==d&&(y=b)}),y}else return{code:500,msg:"未知错误",desc:"未知的错误码,或错误码类型有误",text:"",type:f}}}]),O}(),W1=function(){function O(N){var d=this;if(a(this,O),this.jSPlugin=N,this.codeHandler=new M1,this.pluginStatus=new G3(this,this.jSPlugin.id),console.log("云台初始化"),document.getElementById(this.jSPlugin.id+"-ez-ptz-item"))return!1;var f=document.createElement("div");f.id=this.jSPlugin.id+"-ez-ptz-item",f.className="ez-ptz-wrap",f.style="display:none";var y=document.createElement("style");y.innerHTML=` + `,g(t2,Z);var J=function(d2){console.log("子组件传值到父组件",d2,d2.current);var F2=d2.current,n2=new Date(y.date).Format("yyyyMMdd").substr(0,8)+(d2.current?F2.replace(/:/g,""):d2.current.replace(/:/g,""));if(y.initBegin&&new Date("".concat(y.date," ").concat(d2.current)).getTime() new Date(y.initEnd).getTime()&&(console.log("超过限制最高值"),n2=new Date(y.initBegin).Format("yyyyMMddhhmmss")),y.type==="cloud.rec"){var T=function(){y.jSPlugin.seek(n2.substr(8,6),"235959"),setTimeout(function(){y.syncTimeLine()},6e3)};y.seekTimer?clearTimeout(y.seekTimer):T(),console.log("this.jsPlug",y.jSPlugin.params),y.seekTimer=setTimeout(function(){T(),clearTimeout(y.seekTimer),y.seekTimer=null},y.seekFrequency)}else{var D=function(){setTimeout(function(){y.disabled=!1},y.seekFrequency)},W=function(N2){y.disabled=!0,y.jSPlugin.pause().then(function(){console.log("暂停成功"),y.jSPlugin.resume(n2).then(function(Y2){console.log("恢复成功"),y.jSPlugin.Theme&&y.jSPlugin.Theme.setDecoderState({play:!0}),y.jSPlugin.Theme&&y.jSPlugin.Theme.decoderState.state.sound&&y.jSPlugin.openSound(),y.syncTimeLine(),N2&&N2()})}).catch(function(){console.log("暂停失败"),y.jSPlugin.resume(n2).then(function(Y2){console.log("恢复成功"),y.jSPlugin.Theme&&y.jSPlugin.Theme.setDecoderState({play:!0}),y.syncTimeLine(),N2&&N2()})})};y.disabled?(console.log("操作频繁,等待2秒后执行"),y.seekTimer&&clearTimeout(y.seekTimer),y.seekTimer=setTimeout(function(){W(D)},y.seekFrequency)):W(D)}},Y=function(){y.operating=!0,y.unSyncTimeLine()},k2=function(){},y2=function(){y.operating=!1,console.log("ontouchend")};this.TimeLineOBJ=new h1({id:"time-line-item",getPalyParam:J,ontouchstart:Y,ontouchmove:k2,ontouchend:y2}),this.fetchDeviceRec(),document.getElementById("date").addEventListener("change",function(o2){if(console.log("日期变化",o2.target.value),y.initBegin||y.initEnd)return console.log("您开启了时间限制,无法切换日期"),!1;y.date=new Date(o2.target.value).Format("yyyy/MM/dd"),y.begin=y.date+" 00:00:00",y.end=y.date+" 23:59:59",y.fetchDeviceRec(),y.jSPlugin.changePlayUrl({type:y.type,begin:"".concat(new Date(y.date).Format("yyyyMMdd"),"000000")}),y.changeRecSpeed(1),y.resetMobileZoomStatus()}),document.getElementById("cloudType").checked=this.type==="rec",document.getElementById("cloudType").addEventListener("change",function(o2){var d2=o2.target.checked?2:1;y.type=o2.target.checked?"rec":"cloud.rec",console.log("recType",d2),y.fetchDeviceRec(),y.jSPlugin.changePlayUrl({type:y.type,begin:"".concat(new Date(y.date).Format("yyyyMMdd"),"000000")}).then(function(){console.log("切换类型成功"),y.syncTimeLine(),y.changeRecSpeed(1),y.resetMobileZoomStatus()},function(F2){console.log("err",F2)}).catch(function(F2){console.log(F2)})}),this.syncTimeLine()}return r(O,[{key:"fetchDeviceRec",value:function(){var d=this,f=function(_){var M=_.length;document.getElementById("recCount").innerHTML=M;for(var a2=[],Z=M-1;Z>=0;Z--){var t2=_[Z],J=C1(t2.endTime),Y=C1(t2.startTime);a2.push({st:Y,et:J})}d.TimeLineOBJ.setDateLine(a2)},y=new FormData;y.append("deviceSerial",S2(this.jSPlugin.url).deviceSerial),y.append("channelNo",S2(this.jSPlugin.url).channelNo),y.append("accessToken",this.jSPlugin.accessToken),y.append("recType",this.type==="cloud.rec"?1:2),y.append("startTime",new Date(this.begin).getTime()),y.append("endTime",new Date(this.end).getTime()),fetch(this.jSPlugin.env.domain+"/api/lapp/video/by/time",{method:"POST",body:y}).then(function(b){return b.json()}).then(function(b){if(b.code==200&&b.data){var _=[];_=b.data,f(_)}else f([])})}},{key:"syncTimeLine",value:function(){var d=this,f=function(b){var _=new Date(b),M=_.getHours(),a2=_.getMinutes(),Z=_.getSeconds();return(M>9?M:"0"+M)+":"+(a2>9?a2:"0"+a2)+":"+(Z>9?Z:"0"+Z)};this.timer&&clearInterval(this.timer),this.timer=setInterval(function(){if(d.operating)return console.log("操作中"),!1;d.jSPlugin.getOSDTime().then(function(y){y.data>0?d.TimeLineOBJ.stepScrollTimeLine(f(y.data*1e3)):(console.log("未找到当前获取播放时间,等待中..."),console.log("res:-----------------",y))}).catch(function(y){console.log("err:-----",y),console.log("未找到当前获取播放时间,等待中...")})},1e3)}},{key:"unSyncTimeLine",value:function(){this.timer&&clearInterval(this.timer)}}]),O}(),o1=[{code:200,msg:"",desc:"请求成功",text:"操作成功",type:"ptzStart"},{code:10001,msg:"操作失败",desc:"参数为空或格式不正确",text:"参数错误",type:"ptzStart"},{code:10002,msg:"账号异常,操作失败",desc:"重新获取accessToken",text:"accessToken异常或过期",type:"ptzStart"},{code:10005,msg:"账号异常,操作失败",desc:"appKey被冻结",text:"appKey异常",type:"ptzStart"},{code:20002,msg:"设备不存在,请检查设备连接情况",desc:"",text:"设备不存在",type:"ptzStart"},{code:20006,msg:"操作失败,请检查设备网络情况",desc:"检查设备网络状况,稍后再试",text:"网络异常",type:"ptzStart"},{code:20007,msg:"操作失败,请检查设备在线情况",desc:"检查设备是否在线",text:"设备不在线",type:"ptzStart"},{code:20008,msg:"操作过于频繁,稍后再试",desc:"操作过于频繁,稍后再试",text:"设备响应超时",type:"ptzStart"},{code:20014,msg:"操作失败",desc:"",text:"deviceSerial不合法",type:"ptzStart"},{code:20032,msg:"通道不存在请检查设备连接情况",desc:"该用户下通道不存在",text:"该用户下通道不存在",type:"ptzStart"},{code:49999,msg:"操作失败,请重试",desc:"接口调用异常",text:"数据异常",type:"ptzStart"},{code:6e4,msg:"操作失败,设备不支持该操作",desc:"",text:"设备不支持云台控制",type:"ptzStart"},{code:60001,msg:"操作失败,用户无权限",desc:"",text:"用户无云台控制权限",type:"ptzStart"},{code:60002,msg:"设备已旋转到上限位",desc:"",text:"设备云台旋转达到上限位",type:"ptzStart"},{code:60003,msg:"设备已旋转到下限位",desc:"",text:"设备云台旋转达到下限位",type:"ptzStart"},{code:60004,msg:"设备已旋转到左限位",desc:"",text:"设备云台旋转达到左限位",type:"ptzStart"},{code:60005,msg:"设备已旋转到右限位",desc:"",text:"设备云台旋转达到右限位",type:"ptzStart"},{code:60006,msg:"操作失败,请重试",desc:"稍候再试",text:"云台当前操作失败",type:"ptzStart"},{code:60009,msg:"设备正在操作中",desc:"",text:"正在调用预置点",type:"ptzStart"},{code:60020,msg:"操作失败",desc:"确认设备是否支持该操作",text:"不支持该命令",type:"ptzStart"}],l3=[{code:200,msg:"",desc:"请求成功",text:"操作成功",type:"ptzStop"},{code:10001,msg:"操作失败",desc:"参数为空或格式不正确",text:"参数错误",type:"ptzStop"},{code:10002,msg:"账号异常,操作失败",desc:"重新获取accessToken",text:"accessToken异常或过期",type:"ptzStop"},{code:10005,msg:"账号异常,操作失败",desc:"appKey被冻结",text:"appKey异常",type:"ptzStop"},{code:20002,msg:"设备不存在,请检查设备连接情况",desc:"",text:"设备不存在",type:"ptzStop"},{code:20006,msg:"操作失败,请检查设备网络情况",desc:"检查设备网络状况,稍后再试",text:"网络异常",type:"ptzStop"},{code:20007,msg:"操作失败,请检查设备在线情况",desc:"检查设备是否在线",text:"设备不在线",type:"ptzStop"},{code:20008,msg:"操作过于频繁,稍后再试",desc:"操作过于频繁,稍后再试",text:"设备响应超时",type:"ptzStop"},{code:20014,msg:"操作失败",desc:"",text:"deviceSerial不合法",type:"ptzStop"},{code:20032,msg:"通道不存在请检查设备连接情况",desc:"该用户下通道不存在",text:"该用户下通道不存在",type:"ptzStop"},{code:49999,msg:"操作失败,请重试",desc:"接口调用异常",text:"数据异常",type:"ptzStop"},{code:6e4,msg:"操作失败,设备不支持该操作",desc:"",text:"设备不支持云台控制",type:"ptzStop"},{code:60001,msg:"操作失败,用户无权限",desc:"",text:"用户无云台控制权限",type:"ptzStop"},{code:60006,msg:"操作失败,请重试",desc:"稍候再试",text:"云台当前操作失败",type:"ptzStop"},{code:60009,msg:"设备正在操作中",desc:"",text:"正在调用预置点",type:"ptzStop"},{code:60020,msg:"操作失败",desc:"确认设备是否支持该操作",text:"不支持该命令",type:"ptzStop"}],$2=[{code:200,msg:"",desc:"请求成功",text:"操作成功",type:"talk"},{code:10001,msg:"播放失败",desc:"参数为空或格式不正确",text:"参数错误",type:"talk"},{code:10002,msg:"账号异常,操作失败",desc:"",text:"accessToken异常或过期",type:"talk"},{code:10031,msg:"账号异常,操作失败",desc:"",text:"子账户或萤石用户没有权限",type:"talk"},{code:20002,msg:"设备不存在请检查设备连接情况",desc:"设备序列号输入有误或者设备未被添加或者通道异常",text:"设备不存在",type:"talk"},{code:60059,msg:"播放失败",desc:"",text:"ezopen地址均不可用",type:"talk"}],j3=[{code:200,msg:"",desc:"",text:"操作成功",type:"time"},{code:10001,msg:"播放失败",desc:"参数为空或格式不正确",text:"参数错误",type:"time"},{code:10002,msg:"账号异常,播放失败",desc:"",text:"accessToken异常或过期",type:"time"},{code:10004,msg:"账号异常,播放失败",desc:"",text:"用户不存在",type:"time"},{code:10005,msg:"账号异常,播放失败",desc:"",text:"appKey异常",type:"time"},{code:10011,msg:"播放失败",desc:"设备对应用户未注册至应用下",text:"未开通萤石服务",type:"time"},{code:10013,msg:"账号异常,播放失败",desc:"",text:"非开发者账号无权限调用",type:"time"},{code:10030,msg:"播放失败",desc:"",text:"appkey和appsecret不匹配",type:"time"},{code:20002,msg:"设备不存在请检查设备连接情况",desc:"设备序列号输入有误或者设备未被添加或者通道异常",text:"设备不存在",type:"time"},{code:20014,msg:"播放失败",desc:"",text:"deviceSerial不合法",type:"time"},{code:20032,msg:"设备不存在请检查设备连接情况",desc:"",text:"该用户下通道不存在",type:"time"},{code:60024,msg:"播放失败请重试",desc:"",text:"取消订阅操作失败",type:"time"},{code:49999,msg:"播放失败请重试",desc:"",text:"操作异常",type:"time"}],c1={ptzStart:o1,ptzStop:l3,talk:$2,time:j3},M1=function(){function O(N,d){a(this,O),this.coreX=N,this.coreY=d,console.log("uikitCode",c1)}return r(O,[{key:"toString",value:function(){return"".concat(this.coreX,"-").concat(this.coreY)}},{key:"matchInfo",value:function(d,f){if(c1[f]){var y={};return c1[f].map(function(b){b.code==d&&(y=b)}),y}else return{code:500,msg:"未知错误",desc:"未知的错误码,或错误码类型有误",text:"",type:f}}}]),O}(),$1=function(){function O(N){var d=this;if(a(this,O),this.jSPlugin=N,this.codeHandler=new M1,this.pluginStatus=new U3(this,this.jSPlugin.id),console.log("云台初始化"),document.getElementById(this.jSPlugin.id+"-ez-ptz-item"))return!1;var f=document.createElement("div");f.id=this.jSPlugin.id+"-ez-ptz-item",f.className="ez-ptz-wrap",f.style="display:none";var y=document.createElement("style");y.innerHTML=` .ez-ptz-container { position: relative; width: 80px; @@ -468,26 +468,26 @@ C11.4,16.3,11,16.6,10.6,16.6z" /> - `),document.getElementById("".concat(N.id,"-wrap")).appendChild(f),document.getElementById("".concat(this.jSPlugin.id,"-ez-ptz-container")).onmousedown=function(b){b.preventDefault(),console.log("触摸开始"),d._handlePtzTouch(b,"start")},document.getElementById("".concat(this.jSPlugin.id,"-ez-ptz-container")).onmouseup=function(b){b.preventDefault(),console.log("触摸结束"),d._handlePtzTouch(b,"stop")},document.getElementById("".concat(this.jSPlugin.id,"-ez-ptz-container")).ontouchstart=function(b){b.preventDefault(),console.log("触摸开始"),d._handlePtzTouch(b,"start")},document.getElementById("".concat(this.jSPlugin.id,"-ez-ptz-container")).ontouchend=function(b){b.preventDefault(),console.log("触摸结束",b),d._handlePtzTouch(b,"stop")}}return r(O,[{key:"show",value:function(){document.getElementById("".concat(this.jSPlugin.id,"-ez-ptz-item")).style="display: inline-block"}},{key:"hide",value:function(){document.getElementById("".concat(this.jSPlugin.id,"-ez-ptz-item")).style="display: none"}},{key:"_handlePtzTouch",value:function(d,f){var y=this,b=document.getElementById("".concat(this.jSPlugin.id,"-ez-ptz-container")).getBoundingClientRect(),_=b.left+41,M=b.top+41,a2=d.x||d.changedTouches[0].clientX,Z=d.y||d.changedTouches[0].clientY,t2=a2-_,J=Z-M,Y=0,k2=this.jSPlugin.env.domain+"/api/lapp/device/ptz/start";if(Math.abs(t2)>Math.abs(J)?t2>0?Y=3:Y=2:J>0?Y=1:Y=0,/^rotate\(90/.test(document.getElementById("".concat(this.jSPlugin.id,"-wrap")).style.transform))switch(Y){case 0:Y=2;break;case 1:Y=3;break;case 2:Y=1;break;case 3:Y=0;break}document.getElementById("".concat(this.jSPlugin.id,"-ez-ptz-container")).style="background-image:linear-gradient(".concat(Y===0?180:Y===1?0:Y===2?90:270,"deg, #1d8dd8 0%, rgba(100,143,252,0.00) 30%)"),f==="stop"&&(k2=this.jSPlugin.env.domain+"/api/lapp/device/ptz/stop",document.getElementById("".concat(this.jSPlugin.id,"-ez-ptz-container")).style="");var y2=new FormData;y2.append("deviceSerial",S2(this.jSPlugin.url).deviceSerial),y2.append("channelNo",S2(this.jSPlugin.url).channelNo),y2.append("speed",1),y2.append("direction",Y),y2.append("accessToken",this.jSPlugin.accessToken),fetch(k2,{method:"POST",body:y2}).then(function(s2){return s2.json()}).then(function(s2){s2.code==200||(console.log(s2.code,y.codeHandler.matchInfo(s2.code,f==="start"?"ptzStart":"ptzStop")),y.pluginStatus.loadingSetText({text:y.codeHandler.matchInfo(s2.code,f==="start"?"ptzStart":"ptzStop").msg,color:"red",delayClear:2e3}),(s2.code==60005||s2.code==60002||s2.code==60003||s2.code==60004)&&(document.getElementById("".concat(y.jSPlugin.id,"-ez-ptz-container")).style="background-image:linear-gradient(".concat(Y===0?180:Y===1?0:Y===2?90:270,"deg, #f45656 0%, rgba(100,143,252,0.00) 30%)")))}).catch(function(s2){console.log("云台调用异常",s2)})}}]),O}();(function(O){if(n(e)==="object")t.exports=O();else{var N;typeof window!="undefined"?N=window:typeof $a!="undefined"?N=$a:typeof self!="undefined"?N=self:N=this,N.adapter=O()}})(function(){return function(){function O(N,d,f){function y(M,a2){if(!d[M]){if(!N[M]){var Z=typeof Wa=="function"&&Wa;if(!a2&&Z)return Z(M,!0);if(b)return b(M,!0);var t2=new Error("Cannot find module '"+M+"'");throw t2.code="MODULE_NOT_FOUND",t2}var J=d[M]={exports:{}};N[M][0].call(J.exports,function(Y){var k2=N[M][1][Y];return y(k2||Y)},J,J.exports,O,N,d,f)}return d[M].exports}for(var b=typeof Wa=="function"&&Wa,_=0;_ 0&&arguments[0]!==void 0?arguments[0]:{},n2=F2.window,T=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{shimChrome:!0,shimFirefox:!0,shimEdge:!0,shimSafari:!0},D=y.log,W=y.detectBrowser(n2),x2={browserDetails:W,commonShim:y2,extractVersion:y.extractVersion,disableLog:y.disableLog,disableWarnings:y.disableWarnings};switch(W.browser){case"chrome":if(!_||!_.shimPeerConnection||!T.shimChrome)return D("Chrome shim is not included in this adapter release."),x2;D("adapter.js shimming chrome."),x2.browserShim=_,_.shimGetUserMedia(n2),_.shimMediaStream(n2),_.shimPeerConnection(n2),_.shimOnTrack(n2),_.shimAddTrackRemoveTrack(n2),_.shimGetSendersWithDtmf(n2),_.shimGetStats(n2),_.shimSenderReceiverGetStats(n2),_.fixNegotiationNeeded(n2),y2.shimRTCIceCandidate(n2),y2.shimConnectionState(n2),y2.shimMaxMessageSize(n2),y2.shimSendThrowTypeError(n2),y2.removeAllowExtmapMixed(n2);break;case"firefox":if(!t2||!t2.shimPeerConnection||!T.shimFirefox)return D("Firefox shim is not included in this adapter release."),x2;D("adapter.js shimming firefox."),x2.browserShim=t2,t2.shimGetUserMedia(n2),t2.shimPeerConnection(n2),t2.shimOnTrack(n2),t2.shimRemoveStream(n2),t2.shimSenderGetStats(n2),t2.shimReceiverGetStats(n2),t2.shimRTCDataChannel(n2),t2.shimAddTransceiver(n2),t2.shimCreateOffer(n2),t2.shimCreateAnswer(n2),y2.shimRTCIceCandidate(n2),y2.shimConnectionState(n2),y2.shimMaxMessageSize(n2),y2.shimSendThrowTypeError(n2);break;case"edge":if(!a2||!a2.shimPeerConnection||!T.shimEdge)return D("MS edge shim is not included in this adapter release."),x2;D("adapter.js shimming edge."),x2.browserShim=a2,a2.shimGetUserMedia(n2),a2.shimGetDisplayMedia(n2),a2.shimPeerConnection(n2),a2.shimReplaceTrack(n2),y2.shimMaxMessageSize(n2),y2.shimSendThrowTypeError(n2);break;case"safari":if(!Y||!T.shimSafari)return D("Safari shim is not included in this adapter release."),x2;D("adapter.js shimming safari."),x2.browserShim=Y,Y.shimRTCIceServerUrls(n2),Y.shimCreateOfferLegacy(n2),Y.shimCallbacksAPI(n2),Y.shimLocalStreamsAPI(n2),Y.shimRemoteStreamsAPI(n2),Y.shimTrackEventTransceiver(n2),Y.shimGetUserMedia(n2),y2.shimRTCIceCandidate(n2),y2.shimMaxMessageSize(n2),y2.shimSendThrowTypeError(n2),y2.removeAllowExtmapMixed(n2);break;default:D("Unsupported browser!");break}return x2}},{"./chrome/chrome_shim":3,"./common_shim":6,"./edge/edge_shim":7,"./firefox/firefox_shim":11,"./safari/safari_shim":14,"./utils":15}],3:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0}),d.shimGetDisplayMedia=d.shimGetUserMedia=void 0;var f=typeof Symbol=="function"&&n(Symbol.iterator)==="symbol"?function(T){return n(T)}:function(T){return T&&typeof Symbol=="function"&&T.constructor===Symbol&&T!==Symbol.prototype?"symbol":n(T)},y=O("./getusermedia");Object.defineProperty(d,"shimGetUserMedia",{enumerable:!0,get:function(){return y.shimGetUserMedia}});var b=O("./getdisplaymedia");Object.defineProperty(d,"shimGetDisplayMedia",{enumerable:!0,get:function(){return b.shimGetDisplayMedia}}),d.shimMediaStream=t2,d.shimOnTrack=J,d.shimGetSendersWithDtmf=Y,d.shimGetStats=k2,d.shimSenderReceiverGetStats=y2,d.shimAddTrackRemoveTrackWithNative=s2,d.shimAddTrackRemoveTrack=f2,d.shimPeerConnection=F2,d.fixNegotiationNeeded=n2;var _=O("../utils.js"),M=a2(_);function a2(T){if(T&&T.__esModule)return T;var D={};if(T!=null)for(var W in T)Object.prototype.hasOwnProperty.call(T,W)&&(D[W]=T[W]);return D.default=T,D}function Z(T,D,W){return D in T?Object.defineProperty(T,D,{value:W,enumerable:!0,configurable:!0,writable:!0}):T[D]=W,T}function t2(T){T.MediaStream=T.MediaStream||T.webkitMediaStream}function J(T){if((typeof T=="undefined"?"undefined":f(T))==="object"&&T.RTCPeerConnection&&!("ontrack"in T.RTCPeerConnection.prototype)){Object.defineProperty(T.RTCPeerConnection.prototype,"ontrack",{get:function(){return this._ontrack},set:function(x2){this._ontrack&&this.removeEventListener("track",this._ontrack),this.addEventListener("track",this._ontrack=x2)},enumerable:!0,configurable:!0});var D=T.RTCPeerConnection.prototype.setRemoteDescription;T.RTCPeerConnection.prototype.setRemoteDescription=function(){var x2=this;return this._ontrackpoly||(this._ontrackpoly=function(N2){N2.stream.addEventListener("addtrack",function(Y2){var W2=void 0;T.RTCPeerConnection.prototype.getReceivers?W2=x2.getReceivers().find(function(w3){return w3.track&&w3.track.id===Y2.track.id}):W2={track:Y2.track};var a3=new Event("track");a3.track=Y2.track,a3.receiver=W2,a3.transceiver={receiver:W2},a3.streams=[N2.stream],x2.dispatchEvent(a3)}),N2.stream.getTracks().forEach(function(Y2){var W2=void 0;T.RTCPeerConnection.prototype.getReceivers?W2=x2.getReceivers().find(function(w3){return w3.track&&w3.track.id===Y2.id}):W2={track:Y2};var a3=new Event("track");a3.track=Y2,a3.receiver=W2,a3.transceiver={receiver:W2},a3.streams=[N2.stream],x2.dispatchEvent(a3)})},this.addEventListener("addstream",this._ontrackpoly)),D.apply(this,arguments)}}else M.wrapPeerConnectionEvent(T,"track",function(W){return W.transceiver||Object.defineProperty(W,"transceiver",{value:{receiver:W.receiver}}),W})}function Y(T){if((typeof T=="undefined"?"undefined":f(T))==="object"&&T.RTCPeerConnection&&!("getSenders"in T.RTCPeerConnection.prototype)&&"createDTMFSender"in T.RTCPeerConnection.prototype){var D=function(w3,v3){return{track:v3,get dtmf(){return this._dtmf===void 0&&(v3.kind==="audio"?this._dtmf=w3.createDTMFSender(v3):this._dtmf=null),this._dtmf},_pc:w3}};if(!T.RTCPeerConnection.prototype.getSenders){T.RTCPeerConnection.prototype.getSenders=function(){return this._senders=this._senders||[],this._senders.slice()};var W=T.RTCPeerConnection.prototype.addTrack;T.RTCPeerConnection.prototype.addTrack=function(w3,v3){var f3=W.apply(this,arguments);return f3||(f3=D(this,w3),this._senders.push(f3)),f3};var x2=T.RTCPeerConnection.prototype.removeTrack;T.RTCPeerConnection.prototype.removeTrack=function(w3){x2.apply(this,arguments);var v3=this._senders.indexOf(w3);v3!==-1&&this._senders.splice(v3,1)}}var N2=T.RTCPeerConnection.prototype.addStream;T.RTCPeerConnection.prototype.addStream=function(w3){var v3=this;this._senders=this._senders||[],N2.apply(this,[w3]),w3.getTracks().forEach(function(f3){v3._senders.push(D(v3,f3))})};var Y2=T.RTCPeerConnection.prototype.removeStream;T.RTCPeerConnection.prototype.removeStream=function(w3){var v3=this;this._senders=this._senders||[],Y2.apply(this,[w3]),w3.getTracks().forEach(function(f3){var v1=v3._senders.find(function(a1){return a1.track===f3});v1&&v3._senders.splice(v3._senders.indexOf(v1),1)})}}else if((typeof T=="undefined"?"undefined":f(T))==="object"&&T.RTCPeerConnection&&"getSenders"in T.RTCPeerConnection.prototype&&"createDTMFSender"in T.RTCPeerConnection.prototype&&T.RTCRtpSender&&!("dtmf"in T.RTCRtpSender.prototype)){var W2=T.RTCPeerConnection.prototype.getSenders;T.RTCPeerConnection.prototype.getSenders=function(){var w3=this,v3=W2.apply(this,[]);return v3.forEach(function(f3){return f3._pc=w3}),v3},Object.defineProperty(T.RTCRtpSender.prototype,"dtmf",{get:function(){return this._dtmf===void 0&&(this.track.kind==="audio"?this._dtmf=this._pc.createDTMFSender(this.track):this._dtmf=null),this._dtmf}})}}function k2(T){if(T.RTCPeerConnection){var D=T.RTCPeerConnection.prototype.getStats;T.RTCPeerConnection.prototype.getStats=function(){var x2=this,N2=Array.prototype.slice.call(arguments),Y2=N2[0],W2=N2[1],a3=N2[2];if(arguments.length>0&&typeof Y2=="function")return D.apply(this,arguments);if(D.length===0&&(arguments.length===0||typeof Y2!="function"))return D.apply(this,[]);var w3=function(a1){var w1={},T1=a1.result();return T1.forEach(function(N1){var L={id:N1.id,timestamp:N1.timestamp,type:{localcandidate:"local-candidate",remotecandidate:"remote-candidate"}[N1.type]||N1.type};N1.names().forEach(function(q){L[q]=N1.stat(q)}),w1[L.id]=L}),w1},v3=function(a1){return new Map(Object.keys(a1).map(function(w1){return[w1,a1[w1]]}))};if(arguments.length>=2){var f3=function(a1){W2(v3(w3(a1)))};return D.apply(this,[f3,Y2])}return new Promise(function(v1,a1){D.apply(x2,[function(w1){v1(v3(w3(w1)))},a1])}).then(W2,a3)}}}function y2(T){if((typeof T=="undefined"?"undefined":f(T))==="object"&&T.RTCPeerConnection&&T.RTCRtpSender&&T.RTCRtpReceiver){if(!("getStats"in T.RTCRtpSender.prototype)){var D=T.RTCPeerConnection.prototype.getSenders;D&&(T.RTCPeerConnection.prototype.getSenders=function(){var W2=this,a3=D.apply(this,[]);return a3.forEach(function(w3){return w3._pc=W2}),a3});var W=T.RTCPeerConnection.prototype.addTrack;W&&(T.RTCPeerConnection.prototype.addTrack=function(){var W2=W.apply(this,arguments);return W2._pc=this,W2}),T.RTCRtpSender.prototype.getStats=function(){var W2=this;return this._pc.getStats().then(function(a3){return M.filterStats(a3,W2.track,!0)})}}if(!("getStats"in T.RTCRtpReceiver.prototype)){var x2=T.RTCPeerConnection.prototype.getReceivers;x2&&(T.RTCPeerConnection.prototype.getReceivers=function(){var W2=this,a3=x2.apply(this,[]);return a3.forEach(function(w3){return w3._pc=W2}),a3}),M.wrapPeerConnectionEvent(T,"track",function(Y2){return Y2.receiver._pc=Y2.srcElement,Y2}),T.RTCRtpReceiver.prototype.getStats=function(){var W2=this;return this._pc.getStats().then(function(a3){return M.filterStats(a3,W2.track,!1)})}}if("getStats"in T.RTCRtpSender.prototype&&"getStats"in T.RTCRtpReceiver.prototype){var N2=T.RTCPeerConnection.prototype.getStats;T.RTCPeerConnection.prototype.getStats=function(){if(arguments.length>0&&arguments[0]instanceof T.MediaStreamTrack){var W2=arguments[0],a3=void 0,w3=void 0,v3=void 0;return this.getSenders().forEach(function(f3){f3.track===W2&&(a3?v3=!0:a3=f3)}),this.getReceivers().forEach(function(f3){return f3.track===W2&&(w3?v3=!0:w3=f3),f3.track===W2}),v3||a3&&w3?Promise.reject(new DOMException("There are more than one sender or receiver for the track.","InvalidAccessError")):a3?a3.getStats():w3?w3.getStats():Promise.reject(new DOMException("There is no sender or receiver for the track.","InvalidAccessError"))}return N2.apply(this,arguments)}}}}function s2(T){T.RTCPeerConnection.prototype.getLocalStreams=function(){var W2=this;return this._shimmedLocalStreams=this._shimmedLocalStreams||{},Object.keys(this._shimmedLocalStreams).map(function(a3){return W2._shimmedLocalStreams[a3][0]})};var D=T.RTCPeerConnection.prototype.addTrack;T.RTCPeerConnection.prototype.addTrack=function(W2,a3){if(!a3)return D.apply(this,arguments);this._shimmedLocalStreams=this._shimmedLocalStreams||{};var w3=D.apply(this,arguments);return this._shimmedLocalStreams[a3.id]?this._shimmedLocalStreams[a3.id].indexOf(w3)===-1&&this._shimmedLocalStreams[a3.id].push(w3):this._shimmedLocalStreams[a3.id]=[a3,w3],w3};var W=T.RTCPeerConnection.prototype.addStream;T.RTCPeerConnection.prototype.addStream=function(W2){var a3=this;this._shimmedLocalStreams=this._shimmedLocalStreams||{},W2.getTracks().forEach(function(f3){var v1=a3.getSenders().find(function(a1){return a1.track===f3});if(v1)throw new DOMException("Track already exists.","InvalidAccessError")});var w3=this.getSenders();W.apply(this,arguments);var v3=this.getSenders().filter(function(f3){return w3.indexOf(f3)===-1});this._shimmedLocalStreams[W2.id]=[W2].concat(v3)};var x2=T.RTCPeerConnection.prototype.removeStream;T.RTCPeerConnection.prototype.removeStream=function(W2){return this._shimmedLocalStreams=this._shimmedLocalStreams||{},delete this._shimmedLocalStreams[W2.id],x2.apply(this,arguments)};var N2=T.RTCPeerConnection.prototype.removeTrack;T.RTCPeerConnection.prototype.removeTrack=function(W2){var a3=this;return this._shimmedLocalStreams=this._shimmedLocalStreams||{},W2&&Object.keys(this._shimmedLocalStreams).forEach(function(w3){var v3=a3._shimmedLocalStreams[w3].indexOf(W2);v3!==-1&&a3._shimmedLocalStreams[w3].splice(v3,1),a3._shimmedLocalStreams[w3].length===1&&delete a3._shimmedLocalStreams[w3]}),N2.apply(this,arguments)}}function f2(T){if(!T.RTCPeerConnection)return;var D=M.detectBrowser(T);if(T.RTCPeerConnection.prototype.addTrack&&D.version>=65)return s2(T);var W=T.RTCPeerConnection.prototype.getLocalStreams;T.RTCPeerConnection.prototype.getLocalStreams=function(){var f3=this,v1=W.apply(this);return this._reverseStreams=this._reverseStreams||{},v1.map(function(a1){return f3._reverseStreams[a1.id]})};var x2=T.RTCPeerConnection.prototype.addStream;T.RTCPeerConnection.prototype.addStream=function(f3){var v1=this;if(this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{},f3.getTracks().forEach(function(w1){var T1=v1.getSenders().find(function(N1){return N1.track===w1});if(T1)throw new DOMException("Track already exists.","InvalidAccessError")}),!this._reverseStreams[f3.id]){var a1=new T.MediaStream(f3.getTracks());this._streams[f3.id]=a1,this._reverseStreams[a1.id]=f3,f3=a1}x2.apply(this,[f3])};var N2=T.RTCPeerConnection.prototype.removeStream;T.RTCPeerConnection.prototype.removeStream=function(f3){this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{},N2.apply(this,[this._streams[f3.id]||f3]),delete this._reverseStreams[this._streams[f3.id]?this._streams[f3.id].id:f3.id],delete this._streams[f3.id]},T.RTCPeerConnection.prototype.addTrack=function(f3,v1){var a1=this;if(this.signalingState==="closed")throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");var w1=[].slice.call(arguments,1);if(w1.length!==1||!w1[0].getTracks().find(function(q){return q===f3}))throw new DOMException("The adapter.js addTrack polyfill only supports a single stream which is associated with the specified track.","NotSupportedError");var T1=this.getSenders().find(function(q){return q.track===f3});if(T1)throw new DOMException("Track already exists.","InvalidAccessError");this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{};var N1=this._streams[v1.id];if(N1)N1.addTrack(f3),Promise.resolve().then(function(){a1.dispatchEvent(new Event("negotiationneeded"))});else{var L=new T.MediaStream([f3]);this._streams[v1.id]=L,this._reverseStreams[L.id]=v1,this.addStream(L)}return this.getSenders().find(function(q){return q.track===f3})};function Y2(v3,f3){var v1=f3.sdp;return Object.keys(v3._reverseStreams||[]).forEach(function(a1){var w1=v3._reverseStreams[a1],T1=v3._streams[w1.id];v1=v1.replace(new RegExp(T1.id,"g"),w1.id)}),new RTCSessionDescription({type:f3.type,sdp:v1})}function W2(v3,f3){var v1=f3.sdp;return Object.keys(v3._reverseStreams||[]).forEach(function(a1){var w1=v3._reverseStreams[a1],T1=v3._streams[w1.id];v1=v1.replace(new RegExp(w1.id,"g"),T1.id)}),new RTCSessionDescription({type:f3.type,sdp:v1})}["createOffer","createAnswer"].forEach(function(v3){var f3=T.RTCPeerConnection.prototype[v3],v1=Z({},v3,function(){var a1=this,w1=arguments,T1=arguments.length&&typeof arguments[0]=="function";return T1?f3.apply(this,[function(N1){var L=Y2(a1,N1);w1[0].apply(null,[L])},function(N1){w1[1]&&w1[1].apply(null,N1)},arguments[2]]):f3.apply(this,arguments).then(function(N1){return Y2(a1,N1)})});T.RTCPeerConnection.prototype[v3]=v1[v3]});var a3=T.RTCPeerConnection.prototype.setLocalDescription;T.RTCPeerConnection.prototype.setLocalDescription=function(){return!arguments.length||!arguments[0].type?a3.apply(this,arguments):(arguments[0]=W2(this,arguments[0]),a3.apply(this,arguments))};var w3=Object.getOwnPropertyDescriptor(T.RTCPeerConnection.prototype,"localDescription");Object.defineProperty(T.RTCPeerConnection.prototype,"localDescription",{get:function(){var f3=w3.get.apply(this);return f3.type===""?f3:Y2(this,f3)}}),T.RTCPeerConnection.prototype.removeTrack=function(f3){var v1=this;if(this.signalingState==="closed")throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");if(!f3._pc)throw new DOMException("Argument 1 of RTCPeerConnection.removeTrack does not implement interface RTCRtpSender.","TypeError");var a1=f3._pc===this;if(!a1)throw new DOMException("Sender was not created by this connection.","InvalidAccessError");this._streams=this._streams||{};var w1=void 0;Object.keys(this._streams).forEach(function(T1){var N1=v1._streams[T1].getTracks().find(function(L){return f3.track===L});N1&&(w1=v1._streams[T1])}),w1&&(w1.getTracks().length===1?this.removeStream(this._reverseStreams[w1.id]):w1.removeTrack(f3.track),this.dispatchEvent(new Event("negotiationneeded")))}}function F2(T){var D=M.detectBrowser(T);if(!T.RTCPeerConnection&&T.webkitRTCPeerConnection&&(T.RTCPeerConnection=T.webkitRTCPeerConnection),!!T.RTCPeerConnection){D.version<53&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach(function(x2){var N2=T.RTCPeerConnection.prototype[x2],Y2=Z({},x2,function(){return arguments[0]=new(x2==="addIceCandidate"?T.RTCIceCandidate:T.RTCSessionDescription)(arguments[0]),N2.apply(this,arguments)});T.RTCPeerConnection.prototype[x2]=Y2[x2]});var W=T.RTCPeerConnection.prototype.addIceCandidate;T.RTCPeerConnection.prototype.addIceCandidate=function(){return arguments[0]?D.version<78&&arguments[0]&&arguments[0].candidate===""?Promise.resolve():W.apply(this,arguments):(arguments[1]&&arguments[1].apply(null),Promise.resolve())}}}function n2(T){M.wrapPeerConnectionEvent(T,"negotiationneeded",function(D){var W=D.target;if(W.signalingState==="stable")return D})}},{"../utils.js":15,"./getdisplaymedia":4,"./getusermedia":5}],4:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0}),d.shimGetDisplayMedia=f;function f(y,b){if(!(y.navigator.mediaDevices&&"getDisplayMedia"in y.navigator.mediaDevices)&&y.navigator.mediaDevices){if(typeof b!="function"){console.error("shimGetDisplayMedia: getSourceId argument is not a function");return}y.navigator.mediaDevices.getDisplayMedia=function(M){return b(M).then(function(a2){var Z=M.video&&M.video.width,t2=M.video&&M.video.height,J=M.video&&M.video.frameRate;return M.video={mandatory:{chromeMediaSource:"desktop",chromeMediaSourceId:a2,maxFrameRate:J||3}},Z&&(M.video.mandatory.maxWidth=Z),t2&&(M.video.mandatory.maxHeight=t2),y.navigator.mediaDevices.getUserMedia(M)})}}}},{}],5:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0});var f=typeof Symbol=="function"&&n(Symbol.iterator)==="symbol"?function(Z){return n(Z)}:function(Z){return Z&&typeof Symbol=="function"&&Z.constructor===Symbol&&Z!==Symbol.prototype?"symbol":n(Z)};d.shimGetUserMedia=a2;var y=O("../utils.js"),b=_(y);function _(Z){if(Z&&Z.__esModule)return Z;var t2={};if(Z!=null)for(var J in Z)Object.prototype.hasOwnProperty.call(Z,J)&&(t2[J]=Z[J]);return t2.default=Z,t2}var M=b.log;function a2(Z){var t2=Z&&Z.navigator;if(t2.mediaDevices){var J=b.detectBrowser(Z),Y=function(n2){if((typeof n2=="undefined"?"undefined":f(n2))!=="object"||n2.mandatory||n2.optional)return n2;var T={};return Object.keys(n2).forEach(function(D){if(!(D==="require"||D==="advanced"||D==="mediaSource")){var W=f(n2[D])==="object"?n2[D]:{ideal:n2[D]};W.exact!==void 0&&typeof W.exact=="number"&&(W.min=W.max=W.exact);var x2=function(W2,a3){return W2?W2+a3.charAt(0).toUpperCase()+a3.slice(1):a3==="deviceId"?"sourceId":a3};if(W.ideal!==void 0){T.optional=T.optional||[];var N2={};typeof W.ideal=="number"?(N2[x2("min",D)]=W.ideal,T.optional.push(N2),N2={},N2[x2("max",D)]=W.ideal,T.optional.push(N2)):(N2[x2("",D)]=W.ideal,T.optional.push(N2))}W.exact!==void 0&&typeof W.exact!="number"?(T.mandatory=T.mandatory||{},T.mandatory[x2("",D)]=W.exact):["min","max"].forEach(function(Y2){W[Y2]!==void 0&&(T.mandatory=T.mandatory||{},T.mandatory[x2(Y2,D)]=W[Y2])})}}),n2.advanced&&(T.optional=(T.optional||[]).concat(n2.advanced)),T},k2=function(n2,T){if(J.version>=61)return T(n2);if(n2=JSON.parse(JSON.stringify(n2)),n2&&f(n2.audio)==="object"){var D=function(W2,a3,w3){a3 in W2&&!(w3 in W2)&&(W2[w3]=W2[a3],delete W2[a3])};n2=JSON.parse(JSON.stringify(n2)),D(n2.audio,"autoGainControl","googAutoGainControl"),D(n2.audio,"noiseSuppression","googNoiseSuppression"),n2.audio=Y(n2.audio)}if(n2&&f(n2.video)==="object"){var W=n2.video.facingMode;W=W&&((typeof W=="undefined"?"undefined":f(W))==="object"?W:{ideal:W});var x2=J.version<66;if(W&&(W.exact==="user"||W.exact==="environment"||W.ideal==="user"||W.ideal==="environment")&&!(t2.mediaDevices.getSupportedConstraints&&t2.mediaDevices.getSupportedConstraints().facingMode&&!x2)){delete n2.video.facingMode;var N2=void 0;if(W.exact==="environment"||W.ideal==="environment"?N2=["back","rear"]:(W.exact==="user"||W.ideal==="user")&&(N2=["front"]),N2)return t2.mediaDevices.enumerateDevices().then(function(Y2){Y2=Y2.filter(function(a3){return a3.kind==="videoinput"});var W2=Y2.find(function(a3){return N2.some(function(w3){return a3.label.toLowerCase().includes(w3)})});return!W2&&Y2.length&&N2.includes("back")&&(W2=Y2[Y2.length-1]),W2&&(n2.video.deviceId=W.exact?{exact:W2.deviceId}:{ideal:W2.deviceId}),n2.video=Y(n2.video),M("chrome: "+JSON.stringify(n2)),T(n2)})}n2.video=Y(n2.video)}return M("chrome: "+JSON.stringify(n2)),T(n2)},y2=function(n2){return J.version>=64?n2:{name:{PermissionDeniedError:"NotAllowedError",PermissionDismissedError:"NotAllowedError",InvalidStateError:"NotAllowedError",DevicesNotFoundError:"NotFoundError",ConstraintNotSatisfiedError:"OverconstrainedError",TrackStartError:"NotReadableError",MediaDeviceFailedDueToShutdown:"NotAllowedError",MediaDeviceKillSwitchOn:"NotAllowedError",TabCaptureError:"AbortError",ScreenCaptureError:"AbortError",DeviceCaptureError:"AbortError"}[n2.name]||n2.name,message:n2.message,constraint:n2.constraint||n2.constraintName,toString:function(){return this.name+(this.message&&": ")+this.message}}},s2=function(n2,T,D){k2(n2,function(W){t2.webkitGetUserMedia(W,T,function(x2){D&&D(y2(x2))})})};if(t2.getUserMedia=s2.bind(t2),t2.mediaDevices.getUserMedia){var f2=t2.mediaDevices.getUserMedia.bind(t2.mediaDevices);t2.mediaDevices.getUserMedia=function(F2){return k2(F2,function(n2){return f2(n2).then(function(T){if(n2.audio&&!T.getAudioTracks().length||n2.video&&!T.getVideoTracks().length)throw T.getTracks().forEach(function(D){D.stop()}),new DOMException("","NotFoundError");return T},function(T){return Promise.reject(y2(T))})})}}}}},{"../utils.js":15}],6:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0});var f=typeof Symbol=="function"&&n(Symbol.iterator)==="symbol"?function(s2){return n(s2)}:function(s2){return s2&&typeof Symbol=="function"&&s2.constructor===Symbol&&s2!==Symbol.prototype?"symbol":n(s2)};d.shimRTCIceCandidate=t2,d.shimMaxMessageSize=J,d.shimSendThrowTypeError=Y,d.shimConnectionState=k2,d.removeAllowExtmapMixed=y2;var y=O("sdp"),b=Z(y),_=O("./utils"),M=a2(_);function a2(s2){if(s2&&s2.__esModule)return s2;var f2={};if(s2!=null)for(var F2 in s2)Object.prototype.hasOwnProperty.call(s2,F2)&&(f2[F2]=s2[F2]);return f2.default=s2,f2}function Z(s2){return s2&&s2.__esModule?s2:{default:s2}}function t2(s2){if(!(!s2.RTCIceCandidate||s2.RTCIceCandidate&&"foundation"in s2.RTCIceCandidate.prototype)){var f2=s2.RTCIceCandidate;s2.RTCIceCandidate=function(n2){if((typeof n2=="undefined"?"undefined":f(n2))==="object"&&n2.candidate&&n2.candidate.indexOf("a=")===0&&(n2=JSON.parse(JSON.stringify(n2)),n2.candidate=n2.candidate.substr(2)),n2.candidate&&n2.candidate.length){var T=new f2(n2),D=b.default.parseCandidate(n2.candidate),W=Object.assign(T,D);return W.toJSON=function(){return{candidate:W.candidate,sdpMid:W.sdpMid,sdpMLineIndex:W.sdpMLineIndex,usernameFragment:W.usernameFragment}},W}return new f2(n2)},s2.RTCIceCandidate.prototype=f2.prototype,M.wrapPeerConnectionEvent(s2,"icecandidate",function(F2){return F2.candidate&&Object.defineProperty(F2,"candidate",{value:new s2.RTCIceCandidate(F2.candidate),writable:"false"}),F2})}}function J(s2){if(s2.RTCPeerConnection){var f2=M.detectBrowser(s2);"sctp"in s2.RTCPeerConnection.prototype||Object.defineProperty(s2.RTCPeerConnection.prototype,"sctp",{get:function(){return typeof this._sctp=="undefined"?null:this._sctp}});var F2=function(N2){if(!N2||!N2.sdp)return!1;var Y2=b.default.splitSections(N2.sdp);return Y2.shift(),Y2.some(function(W2){var a3=b.default.parseMLine(W2);return a3&&a3.kind==="application"&&a3.protocol.indexOf("SCTP")!==-1})},n2=function(N2){var Y2=N2.sdp.match(/mozilla...THIS_IS_SDPARTA-(\d+)/);if(Y2===null||Y2.length<2)return-1;var W2=parseInt(Y2[1],10);return W2!==W2?-1:W2},T=function(N2){var Y2=65536;return f2.browser==="firefox"&&(f2.version<57?N2===-1?Y2=16384:Y2=2147483637:f2.version<60?Y2=f2.version===57?65535:65536:Y2=2147483637),Y2},D=function(N2,Y2){var W2=65536;f2.browser==="firefox"&&f2.version===57&&(W2=65535);var a3=b.default.matchPrefix(N2.sdp,"a=max-message-size:");return a3.length>0?W2=parseInt(a3[0].substr(19),10):f2.browser==="firefox"&&Y2!==-1&&(W2=2147483637),W2},W=s2.RTCPeerConnection.prototype.setRemoteDescription;s2.RTCPeerConnection.prototype.setRemoteDescription=function(){if(this._sctp=null,f2.browser==="chrome"&&f2.version>=76){var N2=this.getConfiguration(),Y2=N2.sdpSemantics;Y2==="plan-b"&&Object.defineProperty(this,"sctp",{get:function(){return typeof this._sctp=="undefined"?null:this._sctp},enumerable:!0,configurable:!0})}if(F2(arguments[0])){var W2=n2(arguments[0]),a3=T(W2),w3=D(arguments[0],W2),v3=void 0;a3===0&&w3===0?v3=Number.POSITIVE_INFINITY:a3===0||w3===0?v3=Math.max(a3,w3):v3=Math.min(a3,w3);var f3={};Object.defineProperty(f3,"maxMessageSize",{get:function(){return v3}}),this._sctp=f3}return W.apply(this,arguments)}}}function Y(s2){if(!(s2.RTCPeerConnection&&"createDataChannel"in s2.RTCPeerConnection.prototype))return;function f2(n2,T){var D=n2.send;n2.send=function(){var x2=arguments[0],N2=x2.length||x2.size||x2.byteLength;if(n2.readyState==="open"&&T.sctp&&N2>T.sctp.maxMessageSize)throw new TypeError("Message too large (can send a maximum of "+T.sctp.maxMessageSize+" bytes)");return D.apply(n2,arguments)}}var F2=s2.RTCPeerConnection.prototype.createDataChannel;s2.RTCPeerConnection.prototype.createDataChannel=function(){var T=F2.apply(this,arguments);return f2(T,this),T},M.wrapPeerConnectionEvent(s2,"datachannel",function(n2){return f2(n2.channel,n2.target),n2})}function k2(s2){if(!(!s2.RTCPeerConnection||"connectionState"in s2.RTCPeerConnection.prototype)){var f2=s2.RTCPeerConnection.prototype;Object.defineProperty(f2,"connectionState",{get:function(){return{completed:"connected",checking:"connecting"}[this.iceConnectionState]||this.iceConnectionState},enumerable:!0,configurable:!0}),Object.defineProperty(f2,"onconnectionstatechange",{get:function(){return this._onconnectionstatechange||null},set:function(n2){this._onconnectionstatechange&&(this.removeEventListener("connectionstatechange",this._onconnectionstatechange),delete this._onconnectionstatechange),n2&&this.addEventListener("connectionstatechange",this._onconnectionstatechange=n2)},enumerable:!0,configurable:!0}),["setLocalDescription","setRemoteDescription"].forEach(function(F2){var n2=f2[F2];f2[F2]=function(){return this._connectionstatechangepoly||(this._connectionstatechangepoly=function(T){var D=T.target;if(D._lastConnectionState!==D.connectionState){D._lastConnectionState=D.connectionState;var W=new Event("connectionstatechange",T);D.dispatchEvent(W)}return T},this.addEventListener("iceconnectionstatechange",this._connectionstatechangepoly)),n2.apply(this,arguments)}})}}function y2(s2){if(s2.RTCPeerConnection){var f2=M.detectBrowser(s2);if(!(f2.browser==="chrome"&&f2.version>=71)){var F2=s2.RTCPeerConnection.prototype.setRemoteDescription;s2.RTCPeerConnection.prototype.setRemoteDescription=function(T){return T&&T.sdp&&T.sdp.indexOf(` + `),document.getElementById("".concat(N.id,"-wrap")).appendChild(f),document.getElementById("".concat(this.jSPlugin.id,"-ez-ptz-container")).onmousedown=function(b){b.preventDefault(),console.log("触摸开始"),d._handlePtzTouch(b,"start")},document.getElementById("".concat(this.jSPlugin.id,"-ez-ptz-container")).onmouseup=function(b){b.preventDefault(),console.log("触摸结束"),d._handlePtzTouch(b,"stop")},document.getElementById("".concat(this.jSPlugin.id,"-ez-ptz-container")).ontouchstart=function(b){b.preventDefault(),console.log("触摸开始"),d._handlePtzTouch(b,"start")},document.getElementById("".concat(this.jSPlugin.id,"-ez-ptz-container")).ontouchend=function(b){b.preventDefault(),console.log("触摸结束",b),d._handlePtzTouch(b,"stop")}}return r(O,[{key:"show",value:function(){document.getElementById("".concat(this.jSPlugin.id,"-ez-ptz-item")).style="display: inline-block"}},{key:"hide",value:function(){document.getElementById("".concat(this.jSPlugin.id,"-ez-ptz-item")).style="display: none"}},{key:"_handlePtzTouch",value:function(d,f){var y=this,b=document.getElementById("".concat(this.jSPlugin.id,"-ez-ptz-container")).getBoundingClientRect(),_=b.left+41,M=b.top+41,a2=d.x||d.changedTouches[0].clientX,Z=d.y||d.changedTouches[0].clientY,t2=a2-_,J=Z-M,Y=0,k2=this.jSPlugin.env.domain+"/api/lapp/device/ptz/start";if(Math.abs(t2)>Math.abs(J)?t2>0?Y=3:Y=2:J>0?Y=1:Y=0,/^rotate\(90/.test(document.getElementById("".concat(this.jSPlugin.id,"-wrap")).style.transform))switch(Y){case 0:Y=2;break;case 1:Y=3;break;case 2:Y=1;break;case 3:Y=0;break}document.getElementById("".concat(this.jSPlugin.id,"-ez-ptz-container")).style="background-image:linear-gradient(".concat(Y===0?180:Y===1?0:Y===2?90:270,"deg, #1d8dd8 0%, rgba(100,143,252,0.00) 30%)"),f==="stop"&&(k2=this.jSPlugin.env.domain+"/api/lapp/device/ptz/stop",document.getElementById("".concat(this.jSPlugin.id,"-ez-ptz-container")).style="");var y2=new FormData;y2.append("deviceSerial",S2(this.jSPlugin.url).deviceSerial),y2.append("channelNo",S2(this.jSPlugin.url).channelNo),y2.append("speed",1),y2.append("direction",Y),y2.append("accessToken",this.jSPlugin.accessToken),fetch(k2,{method:"POST",body:y2}).then(function(o2){return o2.json()}).then(function(o2){o2.code==200||(console.log(o2.code,y.codeHandler.matchInfo(o2.code,f==="start"?"ptzStart":"ptzStop")),y.pluginStatus.loadingSetText({text:y.codeHandler.matchInfo(o2.code,f==="start"?"ptzStart":"ptzStop").msg,color:"red",delayClear:2e3}),(o2.code==60005||o2.code==60002||o2.code==60003||o2.code==60004)&&(document.getElementById("".concat(y.jSPlugin.id,"-ez-ptz-container")).style="background-image:linear-gradient(".concat(Y===0?180:Y===1?0:Y===2?90:270,"deg, #f45656 0%, rgba(100,143,252,0.00) 30%)")))}).catch(function(o2){console.log("云台调用异常",o2)})}}]),O}();(function(O){if(n(e)==="object")t.exports=O();else{var N;typeof window!="undefined"?N=window:typeof $a!="undefined"?N=$a:typeof self!="undefined"?N=self:N=this,N.adapter=O()}})(function(){return function(){function O(N,d,f){function y(M,a2){if(!d[M]){if(!N[M]){var Z=typeof Wa=="function"&&Wa;if(!a2&&Z)return Z(M,!0);if(b)return b(M,!0);var t2=new Error("Cannot find module '"+M+"'");throw t2.code="MODULE_NOT_FOUND",t2}var J=d[M]={exports:{}};N[M][0].call(J.exports,function(Y){var k2=N[M][1][Y];return y(k2||Y)},J,J.exports,O,N,d,f)}return d[M].exports}for(var b=typeof Wa=="function"&&Wa,_=0;_ 0&&arguments[0]!==void 0?arguments[0]:{},n2=F2.window,T=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{shimChrome:!0,shimFirefox:!0,shimEdge:!0,shimSafari:!0},D=y.log,W=y.detectBrowser(n2),x2={browserDetails:W,commonShim:y2,extractVersion:y.extractVersion,disableLog:y.disableLog,disableWarnings:y.disableWarnings};switch(W.browser){case"chrome":if(!_||!_.shimPeerConnection||!T.shimChrome)return D("Chrome shim is not included in this adapter release."),x2;D("adapter.js shimming chrome."),x2.browserShim=_,_.shimGetUserMedia(n2),_.shimMediaStream(n2),_.shimPeerConnection(n2),_.shimOnTrack(n2),_.shimAddTrackRemoveTrack(n2),_.shimGetSendersWithDtmf(n2),_.shimGetStats(n2),_.shimSenderReceiverGetStats(n2),_.fixNegotiationNeeded(n2),y2.shimRTCIceCandidate(n2),y2.shimConnectionState(n2),y2.shimMaxMessageSize(n2),y2.shimSendThrowTypeError(n2),y2.removeAllowExtmapMixed(n2);break;case"firefox":if(!t2||!t2.shimPeerConnection||!T.shimFirefox)return D("Firefox shim is not included in this adapter release."),x2;D("adapter.js shimming firefox."),x2.browserShim=t2,t2.shimGetUserMedia(n2),t2.shimPeerConnection(n2),t2.shimOnTrack(n2),t2.shimRemoveStream(n2),t2.shimSenderGetStats(n2),t2.shimReceiverGetStats(n2),t2.shimRTCDataChannel(n2),t2.shimAddTransceiver(n2),t2.shimCreateOffer(n2),t2.shimCreateAnswer(n2),y2.shimRTCIceCandidate(n2),y2.shimConnectionState(n2),y2.shimMaxMessageSize(n2),y2.shimSendThrowTypeError(n2);break;case"edge":if(!a2||!a2.shimPeerConnection||!T.shimEdge)return D("MS edge shim is not included in this adapter release."),x2;D("adapter.js shimming edge."),x2.browserShim=a2,a2.shimGetUserMedia(n2),a2.shimGetDisplayMedia(n2),a2.shimPeerConnection(n2),a2.shimReplaceTrack(n2),y2.shimMaxMessageSize(n2),y2.shimSendThrowTypeError(n2);break;case"safari":if(!Y||!T.shimSafari)return D("Safari shim is not included in this adapter release."),x2;D("adapter.js shimming safari."),x2.browserShim=Y,Y.shimRTCIceServerUrls(n2),Y.shimCreateOfferLegacy(n2),Y.shimCallbacksAPI(n2),Y.shimLocalStreamsAPI(n2),Y.shimRemoteStreamsAPI(n2),Y.shimTrackEventTransceiver(n2),Y.shimGetUserMedia(n2),y2.shimRTCIceCandidate(n2),y2.shimMaxMessageSize(n2),y2.shimSendThrowTypeError(n2),y2.removeAllowExtmapMixed(n2);break;default:D("Unsupported browser!");break}return x2}},{"./chrome/chrome_shim":3,"./common_shim":6,"./edge/edge_shim":7,"./firefox/firefox_shim":11,"./safari/safari_shim":14,"./utils":15}],3:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0}),d.shimGetDisplayMedia=d.shimGetUserMedia=void 0;var f=typeof Symbol=="function"&&n(Symbol.iterator)==="symbol"?function(T){return n(T)}:function(T){return T&&typeof Symbol=="function"&&T.constructor===Symbol&&T!==Symbol.prototype?"symbol":n(T)},y=O("./getusermedia");Object.defineProperty(d,"shimGetUserMedia",{enumerable:!0,get:function(){return y.shimGetUserMedia}});var b=O("./getdisplaymedia");Object.defineProperty(d,"shimGetDisplayMedia",{enumerable:!0,get:function(){return b.shimGetDisplayMedia}}),d.shimMediaStream=t2,d.shimOnTrack=J,d.shimGetSendersWithDtmf=Y,d.shimGetStats=k2,d.shimSenderReceiverGetStats=y2,d.shimAddTrackRemoveTrackWithNative=o2,d.shimAddTrackRemoveTrack=d2,d.shimPeerConnection=F2,d.fixNegotiationNeeded=n2;var _=O("../utils.js"),M=a2(_);function a2(T){if(T&&T.__esModule)return T;var D={};if(T!=null)for(var W in T)Object.prototype.hasOwnProperty.call(T,W)&&(D[W]=T[W]);return D.default=T,D}function Z(T,D,W){return D in T?Object.defineProperty(T,D,{value:W,enumerable:!0,configurable:!0,writable:!0}):T[D]=W,T}function t2(T){T.MediaStream=T.MediaStream||T.webkitMediaStream}function J(T){if((typeof T=="undefined"?"undefined":f(T))==="object"&&T.RTCPeerConnection&&!("ontrack"in T.RTCPeerConnection.prototype)){Object.defineProperty(T.RTCPeerConnection.prototype,"ontrack",{get:function(){return this._ontrack},set:function(x2){this._ontrack&&this.removeEventListener("track",this._ontrack),this.addEventListener("track",this._ontrack=x2)},enumerable:!0,configurable:!0});var D=T.RTCPeerConnection.prototype.setRemoteDescription;T.RTCPeerConnection.prototype.setRemoteDescription=function(){var x2=this;return this._ontrackpoly||(this._ontrackpoly=function(N2){N2.stream.addEventListener("addtrack",function(Y2){var W2=void 0;T.RTCPeerConnection.prototype.getReceivers?W2=x2.getReceivers().find(function(w3){return w3.track&&w3.track.id===Y2.track.id}):W2={track:Y2.track};var a3=new Event("track");a3.track=Y2.track,a3.receiver=W2,a3.transceiver={receiver:W2},a3.streams=[N2.stream],x2.dispatchEvent(a3)}),N2.stream.getTracks().forEach(function(Y2){var W2=void 0;T.RTCPeerConnection.prototype.getReceivers?W2=x2.getReceivers().find(function(w3){return w3.track&&w3.track.id===Y2.id}):W2={track:Y2};var a3=new Event("track");a3.track=Y2,a3.receiver=W2,a3.transceiver={receiver:W2},a3.streams=[N2.stream],x2.dispatchEvent(a3)})},this.addEventListener("addstream",this._ontrackpoly)),D.apply(this,arguments)}}else M.wrapPeerConnectionEvent(T,"track",function(W){return W.transceiver||Object.defineProperty(W,"transceiver",{value:{receiver:W.receiver}}),W})}function Y(T){if((typeof T=="undefined"?"undefined":f(T))==="object"&&T.RTCPeerConnection&&!("getSenders"in T.RTCPeerConnection.prototype)&&"createDTMFSender"in T.RTCPeerConnection.prototype){var D=function(w3,v3){return{track:v3,get dtmf(){return this._dtmf===void 0&&(v3.kind==="audio"?this._dtmf=w3.createDTMFSender(v3):this._dtmf=null),this._dtmf},_pc:w3}};if(!T.RTCPeerConnection.prototype.getSenders){T.RTCPeerConnection.prototype.getSenders=function(){return this._senders=this._senders||[],this._senders.slice()};var W=T.RTCPeerConnection.prototype.addTrack;T.RTCPeerConnection.prototype.addTrack=function(w3,v3){var f3=W.apply(this,arguments);return f3||(f3=D(this,w3),this._senders.push(f3)),f3};var x2=T.RTCPeerConnection.prototype.removeTrack;T.RTCPeerConnection.prototype.removeTrack=function(w3){x2.apply(this,arguments);var v3=this._senders.indexOf(w3);v3!==-1&&this._senders.splice(v3,1)}}var N2=T.RTCPeerConnection.prototype.addStream;T.RTCPeerConnection.prototype.addStream=function(w3){var v3=this;this._senders=this._senders||[],N2.apply(this,[w3]),w3.getTracks().forEach(function(f3){v3._senders.push(D(v3,f3))})};var Y2=T.RTCPeerConnection.prototype.removeStream;T.RTCPeerConnection.prototype.removeStream=function(w3){var v3=this;this._senders=this._senders||[],Y2.apply(this,[w3]),w3.getTracks().forEach(function(f3){var v1=v3._senders.find(function(a1){return a1.track===f3});v1&&v3._senders.splice(v3._senders.indexOf(v1),1)})}}else if((typeof T=="undefined"?"undefined":f(T))==="object"&&T.RTCPeerConnection&&"getSenders"in T.RTCPeerConnection.prototype&&"createDTMFSender"in T.RTCPeerConnection.prototype&&T.RTCRtpSender&&!("dtmf"in T.RTCRtpSender.prototype)){var W2=T.RTCPeerConnection.prototype.getSenders;T.RTCPeerConnection.prototype.getSenders=function(){var w3=this,v3=W2.apply(this,[]);return v3.forEach(function(f3){return f3._pc=w3}),v3},Object.defineProperty(T.RTCRtpSender.prototype,"dtmf",{get:function(){return this._dtmf===void 0&&(this.track.kind==="audio"?this._dtmf=this._pc.createDTMFSender(this.track):this._dtmf=null),this._dtmf}})}}function k2(T){if(T.RTCPeerConnection){var D=T.RTCPeerConnection.prototype.getStats;T.RTCPeerConnection.prototype.getStats=function(){var x2=this,N2=Array.prototype.slice.call(arguments),Y2=N2[0],W2=N2[1],a3=N2[2];if(arguments.length>0&&typeof Y2=="function")return D.apply(this,arguments);if(D.length===0&&(arguments.length===0||typeof Y2!="function"))return D.apply(this,[]);var w3=function(a1){var w1={},T1=a1.result();return T1.forEach(function(N1){var L={id:N1.id,timestamp:N1.timestamp,type:{localcandidate:"local-candidate",remotecandidate:"remote-candidate"}[N1.type]||N1.type};N1.names().forEach(function(q){L[q]=N1.stat(q)}),w1[L.id]=L}),w1},v3=function(a1){return new Map(Object.keys(a1).map(function(w1){return[w1,a1[w1]]}))};if(arguments.length>=2){var f3=function(a1){W2(v3(w3(a1)))};return D.apply(this,[f3,Y2])}return new Promise(function(v1,a1){D.apply(x2,[function(w1){v1(v3(w3(w1)))},a1])}).then(W2,a3)}}}function y2(T){if((typeof T=="undefined"?"undefined":f(T))==="object"&&T.RTCPeerConnection&&T.RTCRtpSender&&T.RTCRtpReceiver){if(!("getStats"in T.RTCRtpSender.prototype)){var D=T.RTCPeerConnection.prototype.getSenders;D&&(T.RTCPeerConnection.prototype.getSenders=function(){var W2=this,a3=D.apply(this,[]);return a3.forEach(function(w3){return w3._pc=W2}),a3});var W=T.RTCPeerConnection.prototype.addTrack;W&&(T.RTCPeerConnection.prototype.addTrack=function(){var W2=W.apply(this,arguments);return W2._pc=this,W2}),T.RTCRtpSender.prototype.getStats=function(){var W2=this;return this._pc.getStats().then(function(a3){return M.filterStats(a3,W2.track,!0)})}}if(!("getStats"in T.RTCRtpReceiver.prototype)){var x2=T.RTCPeerConnection.prototype.getReceivers;x2&&(T.RTCPeerConnection.prototype.getReceivers=function(){var W2=this,a3=x2.apply(this,[]);return a3.forEach(function(w3){return w3._pc=W2}),a3}),M.wrapPeerConnectionEvent(T,"track",function(Y2){return Y2.receiver._pc=Y2.srcElement,Y2}),T.RTCRtpReceiver.prototype.getStats=function(){var W2=this;return this._pc.getStats().then(function(a3){return M.filterStats(a3,W2.track,!1)})}}if("getStats"in T.RTCRtpSender.prototype&&"getStats"in T.RTCRtpReceiver.prototype){var N2=T.RTCPeerConnection.prototype.getStats;T.RTCPeerConnection.prototype.getStats=function(){if(arguments.length>0&&arguments[0]instanceof T.MediaStreamTrack){var W2=arguments[0],a3=void 0,w3=void 0,v3=void 0;return this.getSenders().forEach(function(f3){f3.track===W2&&(a3?v3=!0:a3=f3)}),this.getReceivers().forEach(function(f3){return f3.track===W2&&(w3?v3=!0:w3=f3),f3.track===W2}),v3||a3&&w3?Promise.reject(new DOMException("There are more than one sender or receiver for the track.","InvalidAccessError")):a3?a3.getStats():w3?w3.getStats():Promise.reject(new DOMException("There is no sender or receiver for the track.","InvalidAccessError"))}return N2.apply(this,arguments)}}}}function o2(T){T.RTCPeerConnection.prototype.getLocalStreams=function(){var W2=this;return this._shimmedLocalStreams=this._shimmedLocalStreams||{},Object.keys(this._shimmedLocalStreams).map(function(a3){return W2._shimmedLocalStreams[a3][0]})};var D=T.RTCPeerConnection.prototype.addTrack;T.RTCPeerConnection.prototype.addTrack=function(W2,a3){if(!a3)return D.apply(this,arguments);this._shimmedLocalStreams=this._shimmedLocalStreams||{};var w3=D.apply(this,arguments);return this._shimmedLocalStreams[a3.id]?this._shimmedLocalStreams[a3.id].indexOf(w3)===-1&&this._shimmedLocalStreams[a3.id].push(w3):this._shimmedLocalStreams[a3.id]=[a3,w3],w3};var W=T.RTCPeerConnection.prototype.addStream;T.RTCPeerConnection.prototype.addStream=function(W2){var a3=this;this._shimmedLocalStreams=this._shimmedLocalStreams||{},W2.getTracks().forEach(function(f3){var v1=a3.getSenders().find(function(a1){return a1.track===f3});if(v1)throw new DOMException("Track already exists.","InvalidAccessError")});var w3=this.getSenders();W.apply(this,arguments);var v3=this.getSenders().filter(function(f3){return w3.indexOf(f3)===-1});this._shimmedLocalStreams[W2.id]=[W2].concat(v3)};var x2=T.RTCPeerConnection.prototype.removeStream;T.RTCPeerConnection.prototype.removeStream=function(W2){return this._shimmedLocalStreams=this._shimmedLocalStreams||{},delete this._shimmedLocalStreams[W2.id],x2.apply(this,arguments)};var N2=T.RTCPeerConnection.prototype.removeTrack;T.RTCPeerConnection.prototype.removeTrack=function(W2){var a3=this;return this._shimmedLocalStreams=this._shimmedLocalStreams||{},W2&&Object.keys(this._shimmedLocalStreams).forEach(function(w3){var v3=a3._shimmedLocalStreams[w3].indexOf(W2);v3!==-1&&a3._shimmedLocalStreams[w3].splice(v3,1),a3._shimmedLocalStreams[w3].length===1&&delete a3._shimmedLocalStreams[w3]}),N2.apply(this,arguments)}}function d2(T){if(!T.RTCPeerConnection)return;var D=M.detectBrowser(T);if(T.RTCPeerConnection.prototype.addTrack&&D.version>=65)return o2(T);var W=T.RTCPeerConnection.prototype.getLocalStreams;T.RTCPeerConnection.prototype.getLocalStreams=function(){var f3=this,v1=W.apply(this);return this._reverseStreams=this._reverseStreams||{},v1.map(function(a1){return f3._reverseStreams[a1.id]})};var x2=T.RTCPeerConnection.prototype.addStream;T.RTCPeerConnection.prototype.addStream=function(f3){var v1=this;if(this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{},f3.getTracks().forEach(function(w1){var T1=v1.getSenders().find(function(N1){return N1.track===w1});if(T1)throw new DOMException("Track already exists.","InvalidAccessError")}),!this._reverseStreams[f3.id]){var a1=new T.MediaStream(f3.getTracks());this._streams[f3.id]=a1,this._reverseStreams[a1.id]=f3,f3=a1}x2.apply(this,[f3])};var N2=T.RTCPeerConnection.prototype.removeStream;T.RTCPeerConnection.prototype.removeStream=function(f3){this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{},N2.apply(this,[this._streams[f3.id]||f3]),delete this._reverseStreams[this._streams[f3.id]?this._streams[f3.id].id:f3.id],delete this._streams[f3.id]},T.RTCPeerConnection.prototype.addTrack=function(f3,v1){var a1=this;if(this.signalingState==="closed")throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");var w1=[].slice.call(arguments,1);if(w1.length!==1||!w1[0].getTracks().find(function(q){return q===f3}))throw new DOMException("The adapter.js addTrack polyfill only supports a single stream which is associated with the specified track.","NotSupportedError");var T1=this.getSenders().find(function(q){return q.track===f3});if(T1)throw new DOMException("Track already exists.","InvalidAccessError");this._streams=this._streams||{},this._reverseStreams=this._reverseStreams||{};var N1=this._streams[v1.id];if(N1)N1.addTrack(f3),Promise.resolve().then(function(){a1.dispatchEvent(new Event("negotiationneeded"))});else{var L=new T.MediaStream([f3]);this._streams[v1.id]=L,this._reverseStreams[L.id]=v1,this.addStream(L)}return this.getSenders().find(function(q){return q.track===f3})};function Y2(v3,f3){var v1=f3.sdp;return Object.keys(v3._reverseStreams||[]).forEach(function(a1){var w1=v3._reverseStreams[a1],T1=v3._streams[w1.id];v1=v1.replace(new RegExp(T1.id,"g"),w1.id)}),new RTCSessionDescription({type:f3.type,sdp:v1})}function W2(v3,f3){var v1=f3.sdp;return Object.keys(v3._reverseStreams||[]).forEach(function(a1){var w1=v3._reverseStreams[a1],T1=v3._streams[w1.id];v1=v1.replace(new RegExp(w1.id,"g"),T1.id)}),new RTCSessionDescription({type:f3.type,sdp:v1})}["createOffer","createAnswer"].forEach(function(v3){var f3=T.RTCPeerConnection.prototype[v3],v1=Z({},v3,function(){var a1=this,w1=arguments,T1=arguments.length&&typeof arguments[0]=="function";return T1?f3.apply(this,[function(N1){var L=Y2(a1,N1);w1[0].apply(null,[L])},function(N1){w1[1]&&w1[1].apply(null,N1)},arguments[2]]):f3.apply(this,arguments).then(function(N1){return Y2(a1,N1)})});T.RTCPeerConnection.prototype[v3]=v1[v3]});var a3=T.RTCPeerConnection.prototype.setLocalDescription;T.RTCPeerConnection.prototype.setLocalDescription=function(){return!arguments.length||!arguments[0].type?a3.apply(this,arguments):(arguments[0]=W2(this,arguments[0]),a3.apply(this,arguments))};var w3=Object.getOwnPropertyDescriptor(T.RTCPeerConnection.prototype,"localDescription");Object.defineProperty(T.RTCPeerConnection.prototype,"localDescription",{get:function(){var f3=w3.get.apply(this);return f3.type===""?f3:Y2(this,f3)}}),T.RTCPeerConnection.prototype.removeTrack=function(f3){var v1=this;if(this.signalingState==="closed")throw new DOMException("The RTCPeerConnection's signalingState is 'closed'.","InvalidStateError");if(!f3._pc)throw new DOMException("Argument 1 of RTCPeerConnection.removeTrack does not implement interface RTCRtpSender.","TypeError");var a1=f3._pc===this;if(!a1)throw new DOMException("Sender was not created by this connection.","InvalidAccessError");this._streams=this._streams||{};var w1=void 0;Object.keys(this._streams).forEach(function(T1){var N1=v1._streams[T1].getTracks().find(function(L){return f3.track===L});N1&&(w1=v1._streams[T1])}),w1&&(w1.getTracks().length===1?this.removeStream(this._reverseStreams[w1.id]):w1.removeTrack(f3.track),this.dispatchEvent(new Event("negotiationneeded")))}}function F2(T){var D=M.detectBrowser(T);if(!T.RTCPeerConnection&&T.webkitRTCPeerConnection&&(T.RTCPeerConnection=T.webkitRTCPeerConnection),!!T.RTCPeerConnection){D.version<53&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach(function(x2){var N2=T.RTCPeerConnection.prototype[x2],Y2=Z({},x2,function(){return arguments[0]=new(x2==="addIceCandidate"?T.RTCIceCandidate:T.RTCSessionDescription)(arguments[0]),N2.apply(this,arguments)});T.RTCPeerConnection.prototype[x2]=Y2[x2]});var W=T.RTCPeerConnection.prototype.addIceCandidate;T.RTCPeerConnection.prototype.addIceCandidate=function(){return arguments[0]?D.version<78&&arguments[0]&&arguments[0].candidate===""?Promise.resolve():W.apply(this,arguments):(arguments[1]&&arguments[1].apply(null),Promise.resolve())}}}function n2(T){M.wrapPeerConnectionEvent(T,"negotiationneeded",function(D){var W=D.target;if(W.signalingState==="stable")return D})}},{"../utils.js":15,"./getdisplaymedia":4,"./getusermedia":5}],4:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0}),d.shimGetDisplayMedia=f;function f(y,b){if(!(y.navigator.mediaDevices&&"getDisplayMedia"in y.navigator.mediaDevices)&&y.navigator.mediaDevices){if(typeof b!="function"){console.error("shimGetDisplayMedia: getSourceId argument is not a function");return}y.navigator.mediaDevices.getDisplayMedia=function(M){return b(M).then(function(a2){var Z=M.video&&M.video.width,t2=M.video&&M.video.height,J=M.video&&M.video.frameRate;return M.video={mandatory:{chromeMediaSource:"desktop",chromeMediaSourceId:a2,maxFrameRate:J||3}},Z&&(M.video.mandatory.maxWidth=Z),t2&&(M.video.mandatory.maxHeight=t2),y.navigator.mediaDevices.getUserMedia(M)})}}}},{}],5:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0});var f=typeof Symbol=="function"&&n(Symbol.iterator)==="symbol"?function(Z){return n(Z)}:function(Z){return Z&&typeof Symbol=="function"&&Z.constructor===Symbol&&Z!==Symbol.prototype?"symbol":n(Z)};d.shimGetUserMedia=a2;var y=O("../utils.js"),b=_(y);function _(Z){if(Z&&Z.__esModule)return Z;var t2={};if(Z!=null)for(var J in Z)Object.prototype.hasOwnProperty.call(Z,J)&&(t2[J]=Z[J]);return t2.default=Z,t2}var M=b.log;function a2(Z){var t2=Z&&Z.navigator;if(t2.mediaDevices){var J=b.detectBrowser(Z),Y=function(n2){if((typeof n2=="undefined"?"undefined":f(n2))!=="object"||n2.mandatory||n2.optional)return n2;var T={};return Object.keys(n2).forEach(function(D){if(!(D==="require"||D==="advanced"||D==="mediaSource")){var W=f(n2[D])==="object"?n2[D]:{ideal:n2[D]};W.exact!==void 0&&typeof W.exact=="number"&&(W.min=W.max=W.exact);var x2=function(W2,a3){return W2?W2+a3.charAt(0).toUpperCase()+a3.slice(1):a3==="deviceId"?"sourceId":a3};if(W.ideal!==void 0){T.optional=T.optional||[];var N2={};typeof W.ideal=="number"?(N2[x2("min",D)]=W.ideal,T.optional.push(N2),N2={},N2[x2("max",D)]=W.ideal,T.optional.push(N2)):(N2[x2("",D)]=W.ideal,T.optional.push(N2))}W.exact!==void 0&&typeof W.exact!="number"?(T.mandatory=T.mandatory||{},T.mandatory[x2("",D)]=W.exact):["min","max"].forEach(function(Y2){W[Y2]!==void 0&&(T.mandatory=T.mandatory||{},T.mandatory[x2(Y2,D)]=W[Y2])})}}),n2.advanced&&(T.optional=(T.optional||[]).concat(n2.advanced)),T},k2=function(n2,T){if(J.version>=61)return T(n2);if(n2=JSON.parse(JSON.stringify(n2)),n2&&f(n2.audio)==="object"){var D=function(W2,a3,w3){a3 in W2&&!(w3 in W2)&&(W2[w3]=W2[a3],delete W2[a3])};n2=JSON.parse(JSON.stringify(n2)),D(n2.audio,"autoGainControl","googAutoGainControl"),D(n2.audio,"noiseSuppression","googNoiseSuppression"),n2.audio=Y(n2.audio)}if(n2&&f(n2.video)==="object"){var W=n2.video.facingMode;W=W&&((typeof W=="undefined"?"undefined":f(W))==="object"?W:{ideal:W});var x2=J.version<66;if(W&&(W.exact==="user"||W.exact==="environment"||W.ideal==="user"||W.ideal==="environment")&&!(t2.mediaDevices.getSupportedConstraints&&t2.mediaDevices.getSupportedConstraints().facingMode&&!x2)){delete n2.video.facingMode;var N2=void 0;if(W.exact==="environment"||W.ideal==="environment"?N2=["back","rear"]:(W.exact==="user"||W.ideal==="user")&&(N2=["front"]),N2)return t2.mediaDevices.enumerateDevices().then(function(Y2){Y2=Y2.filter(function(a3){return a3.kind==="videoinput"});var W2=Y2.find(function(a3){return N2.some(function(w3){return a3.label.toLowerCase().includes(w3)})});return!W2&&Y2.length&&N2.includes("back")&&(W2=Y2[Y2.length-1]),W2&&(n2.video.deviceId=W.exact?{exact:W2.deviceId}:{ideal:W2.deviceId}),n2.video=Y(n2.video),M("chrome: "+JSON.stringify(n2)),T(n2)})}n2.video=Y(n2.video)}return M("chrome: "+JSON.stringify(n2)),T(n2)},y2=function(n2){return J.version>=64?n2:{name:{PermissionDeniedError:"NotAllowedError",PermissionDismissedError:"NotAllowedError",InvalidStateError:"NotAllowedError",DevicesNotFoundError:"NotFoundError",ConstraintNotSatisfiedError:"OverconstrainedError",TrackStartError:"NotReadableError",MediaDeviceFailedDueToShutdown:"NotAllowedError",MediaDeviceKillSwitchOn:"NotAllowedError",TabCaptureError:"AbortError",ScreenCaptureError:"AbortError",DeviceCaptureError:"AbortError"}[n2.name]||n2.name,message:n2.message,constraint:n2.constraint||n2.constraintName,toString:function(){return this.name+(this.message&&": ")+this.message}}},o2=function(n2,T,D){k2(n2,function(W){t2.webkitGetUserMedia(W,T,function(x2){D&&D(y2(x2))})})};if(t2.getUserMedia=o2.bind(t2),t2.mediaDevices.getUserMedia){var d2=t2.mediaDevices.getUserMedia.bind(t2.mediaDevices);t2.mediaDevices.getUserMedia=function(F2){return k2(F2,function(n2){return d2(n2).then(function(T){if(n2.audio&&!T.getAudioTracks().length||n2.video&&!T.getVideoTracks().length)throw T.getTracks().forEach(function(D){D.stop()}),new DOMException("","NotFoundError");return T},function(T){return Promise.reject(y2(T))})})}}}}},{"../utils.js":15}],6:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0});var f=typeof Symbol=="function"&&n(Symbol.iterator)==="symbol"?function(o2){return n(o2)}:function(o2){return o2&&typeof Symbol=="function"&&o2.constructor===Symbol&&o2!==Symbol.prototype?"symbol":n(o2)};d.shimRTCIceCandidate=t2,d.shimMaxMessageSize=J,d.shimSendThrowTypeError=Y,d.shimConnectionState=k2,d.removeAllowExtmapMixed=y2;var y=O("sdp"),b=Z(y),_=O("./utils"),M=a2(_);function a2(o2){if(o2&&o2.__esModule)return o2;var d2={};if(o2!=null)for(var F2 in o2)Object.prototype.hasOwnProperty.call(o2,F2)&&(d2[F2]=o2[F2]);return d2.default=o2,d2}function Z(o2){return o2&&o2.__esModule?o2:{default:o2}}function t2(o2){if(!(!o2.RTCIceCandidate||o2.RTCIceCandidate&&"foundation"in o2.RTCIceCandidate.prototype)){var d2=o2.RTCIceCandidate;o2.RTCIceCandidate=function(n2){if((typeof n2=="undefined"?"undefined":f(n2))==="object"&&n2.candidate&&n2.candidate.indexOf("a=")===0&&(n2=JSON.parse(JSON.stringify(n2)),n2.candidate=n2.candidate.substr(2)),n2.candidate&&n2.candidate.length){var T=new d2(n2),D=b.default.parseCandidate(n2.candidate),W=Object.assign(T,D);return W.toJSON=function(){return{candidate:W.candidate,sdpMid:W.sdpMid,sdpMLineIndex:W.sdpMLineIndex,usernameFragment:W.usernameFragment}},W}return new d2(n2)},o2.RTCIceCandidate.prototype=d2.prototype,M.wrapPeerConnectionEvent(o2,"icecandidate",function(F2){return F2.candidate&&Object.defineProperty(F2,"candidate",{value:new o2.RTCIceCandidate(F2.candidate),writable:"false"}),F2})}}function J(o2){if(o2.RTCPeerConnection){var d2=M.detectBrowser(o2);"sctp"in o2.RTCPeerConnection.prototype||Object.defineProperty(o2.RTCPeerConnection.prototype,"sctp",{get:function(){return typeof this._sctp=="undefined"?null:this._sctp}});var F2=function(N2){if(!N2||!N2.sdp)return!1;var Y2=b.default.splitSections(N2.sdp);return Y2.shift(),Y2.some(function(W2){var a3=b.default.parseMLine(W2);return a3&&a3.kind==="application"&&a3.protocol.indexOf("SCTP")!==-1})},n2=function(N2){var Y2=N2.sdp.match(/mozilla...THIS_IS_SDPARTA-(\d+)/);if(Y2===null||Y2.length<2)return-1;var W2=parseInt(Y2[1],10);return W2!==W2?-1:W2},T=function(N2){var Y2=65536;return d2.browser==="firefox"&&(d2.version<57?N2===-1?Y2=16384:Y2=2147483637:d2.version<60?Y2=d2.version===57?65535:65536:Y2=2147483637),Y2},D=function(N2,Y2){var W2=65536;d2.browser==="firefox"&&d2.version===57&&(W2=65535);var a3=b.default.matchPrefix(N2.sdp,"a=max-message-size:");return a3.length>0?W2=parseInt(a3[0].substr(19),10):d2.browser==="firefox"&&Y2!==-1&&(W2=2147483637),W2},W=o2.RTCPeerConnection.prototype.setRemoteDescription;o2.RTCPeerConnection.prototype.setRemoteDescription=function(){if(this._sctp=null,d2.browser==="chrome"&&d2.version>=76){var N2=this.getConfiguration(),Y2=N2.sdpSemantics;Y2==="plan-b"&&Object.defineProperty(this,"sctp",{get:function(){return typeof this._sctp=="undefined"?null:this._sctp},enumerable:!0,configurable:!0})}if(F2(arguments[0])){var W2=n2(arguments[0]),a3=T(W2),w3=D(arguments[0],W2),v3=void 0;a3===0&&w3===0?v3=Number.POSITIVE_INFINITY:a3===0||w3===0?v3=Math.max(a3,w3):v3=Math.min(a3,w3);var f3={};Object.defineProperty(f3,"maxMessageSize",{get:function(){return v3}}),this._sctp=f3}return W.apply(this,arguments)}}}function Y(o2){if(!(o2.RTCPeerConnection&&"createDataChannel"in o2.RTCPeerConnection.prototype))return;function d2(n2,T){var D=n2.send;n2.send=function(){var x2=arguments[0],N2=x2.length||x2.size||x2.byteLength;if(n2.readyState==="open"&&T.sctp&&N2>T.sctp.maxMessageSize)throw new TypeError("Message too large (can send a maximum of "+T.sctp.maxMessageSize+" bytes)");return D.apply(n2,arguments)}}var F2=o2.RTCPeerConnection.prototype.createDataChannel;o2.RTCPeerConnection.prototype.createDataChannel=function(){var T=F2.apply(this,arguments);return d2(T,this),T},M.wrapPeerConnectionEvent(o2,"datachannel",function(n2){return d2(n2.channel,n2.target),n2})}function k2(o2){if(!(!o2.RTCPeerConnection||"connectionState"in o2.RTCPeerConnection.prototype)){var d2=o2.RTCPeerConnection.prototype;Object.defineProperty(d2,"connectionState",{get:function(){return{completed:"connected",checking:"connecting"}[this.iceConnectionState]||this.iceConnectionState},enumerable:!0,configurable:!0}),Object.defineProperty(d2,"onconnectionstatechange",{get:function(){return this._onconnectionstatechange||null},set:function(n2){this._onconnectionstatechange&&(this.removeEventListener("connectionstatechange",this._onconnectionstatechange),delete this._onconnectionstatechange),n2&&this.addEventListener("connectionstatechange",this._onconnectionstatechange=n2)},enumerable:!0,configurable:!0}),["setLocalDescription","setRemoteDescription"].forEach(function(F2){var n2=d2[F2];d2[F2]=function(){return this._connectionstatechangepoly||(this._connectionstatechangepoly=function(T){var D=T.target;if(D._lastConnectionState!==D.connectionState){D._lastConnectionState=D.connectionState;var W=new Event("connectionstatechange",T);D.dispatchEvent(W)}return T},this.addEventListener("iceconnectionstatechange",this._connectionstatechangepoly)),n2.apply(this,arguments)}})}}function y2(o2){if(o2.RTCPeerConnection){var d2=M.detectBrowser(o2);if(!(d2.browser==="chrome"&&d2.version>=71)){var F2=o2.RTCPeerConnection.prototype.setRemoteDescription;o2.RTCPeerConnection.prototype.setRemoteDescription=function(T){return T&&T.sdp&&T.sdp.indexOf(` a=extmap-allow-mixed`)!==-1&&(T.sdp=T.sdp.split(` `).filter(function(D){return D.trim()!=="a=extmap-allow-mixed"}).join(` -`)),F2.apply(this,arguments)}}}}},{"./utils":15,sdp:17}],7:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0}),d.shimGetDisplayMedia=d.shimGetUserMedia=void 0;var f=O("./getusermedia");Object.defineProperty(d,"shimGetUserMedia",{enumerable:!0,get:function(){return f.shimGetUserMedia}});var y=O("./getdisplaymedia");Object.defineProperty(d,"shimGetDisplayMedia",{enumerable:!0,get:function(){return y.shimGetDisplayMedia}}),d.shimPeerConnection=Y,d.shimReplaceTrack=k2;var b=O("../utils"),_=J(b),M=O("./filtericeservers"),a2=O("rtcpeerconnection-shim"),Z=t2(a2);function t2(y2){return y2&&y2.__esModule?y2:{default:y2}}function J(y2){if(y2&&y2.__esModule)return y2;var s2={};if(y2!=null)for(var f2 in y2)Object.prototype.hasOwnProperty.call(y2,f2)&&(s2[f2]=y2[f2]);return s2.default=y2,s2}function Y(y2){var s2=_.detectBrowser(y2);if(y2.RTCIceGatherer&&(y2.RTCIceCandidate||(y2.RTCIceCandidate=function(T){return T}),y2.RTCSessionDescription||(y2.RTCSessionDescription=function(T){return T}),s2.version<15025)){var f2=Object.getOwnPropertyDescriptor(y2.MediaStreamTrack.prototype,"enabled");Object.defineProperty(y2.MediaStreamTrack.prototype,"enabled",{set:function(T){f2.set.call(this,T);var D=new Event("enabled");D.enabled=T,this.dispatchEvent(D)}})}y2.RTCRtpSender&&!("dtmf"in y2.RTCRtpSender.prototype)&&Object.defineProperty(y2.RTCRtpSender.prototype,"dtmf",{get:function(){return this._dtmf===void 0&&(this.track.kind==="audio"?this._dtmf=new y2.RTCDtmfSender(this):this.track.kind==="video"&&(this._dtmf=null)),this._dtmf}}),y2.RTCDtmfSender&&!y2.RTCDTMFSender&&(y2.RTCDTMFSender=y2.RTCDtmfSender);var F2=(0,Z.default)(y2,s2.version);y2.RTCPeerConnection=function(T){return T&&T.iceServers&&(T.iceServers=(0,M.filterIceServers)(T.iceServers,s2.version),_.log("ICE servers after filtering:",T.iceServers)),new F2(T)},y2.RTCPeerConnection.prototype=F2.prototype}function k2(y2){y2.RTCRtpSender&&!("replaceTrack"in y2.RTCRtpSender.prototype)&&(y2.RTCRtpSender.prototype.replaceTrack=y2.RTCRtpSender.prototype.setTrack)}},{"../utils":15,"./filtericeservers":8,"./getdisplaymedia":9,"./getusermedia":10,"rtcpeerconnection-shim":16}],8:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0}),d.filterIceServers=_;var f=O("../utils"),y=b(f);function b(M){if(M&&M.__esModule)return M;var a2={};if(M!=null)for(var Z in M)Object.prototype.hasOwnProperty.call(M,Z)&&(a2[Z]=M[Z]);return a2.default=M,a2}function _(M,a2){var Z=!1;return M=JSON.parse(JSON.stringify(M)),M.filter(function(t2){if(t2&&(t2.urls||t2.url)){var J=t2.urls||t2.url;t2.url&&!t2.urls&&y.deprecated("RTCIceServer.url","RTCIceServer.urls");var Y=typeof J=="string";return Y&&(J=[J]),J=J.filter(function(k2){if(k2.indexOf("stun:")===0)return!1;var y2=k2.startsWith("turn")&&!k2.startsWith("turn:[")&&k2.includes("transport=udp");return y2&&!Z?(Z=!0,!0):y2&&!Z}),delete t2.url,t2.urls=Y?J[0]:J,!!J.length}})}},{"../utils":15}],9:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0}),d.shimGetDisplayMedia=f;function f(y){"getDisplayMedia"in y.navigator&&y.navigator.mediaDevices&&(y.navigator.mediaDevices&&"getDisplayMedia"in y.navigator.mediaDevices||(y.navigator.mediaDevices.getDisplayMedia=y.navigator.getDisplayMedia.bind(y.navigator)))}},{}],10:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0}),d.shimGetUserMedia=f;function f(y){var b=y&&y.navigator,_=function(Z){return{name:{PermissionDeniedError:"NotAllowedError"}[Z.name]||Z.name,message:Z.message,constraint:Z.constraint,toString:function(){return this.name}}},M=b.mediaDevices.getUserMedia.bind(b.mediaDevices);b.mediaDevices.getUserMedia=function(a2){return M(a2).catch(function(Z){return Promise.reject(_(Z))})}}},{}],11:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0}),d.shimGetDisplayMedia=d.shimGetUserMedia=void 0;var f=typeof Symbol=="function"&&n(Symbol.iterator)==="symbol"?function(T){return n(T)}:function(T){return T&&typeof Symbol=="function"&&T.constructor===Symbol&&T!==Symbol.prototype?"symbol":n(T)},y=O("./getusermedia");Object.defineProperty(d,"shimGetUserMedia",{enumerable:!0,get:function(){return y.shimGetUserMedia}});var b=O("./getdisplaymedia");Object.defineProperty(d,"shimGetDisplayMedia",{enumerable:!0,get:function(){return b.shimGetDisplayMedia}}),d.shimOnTrack=t2,d.shimPeerConnection=J,d.shimSenderGetStats=Y,d.shimReceiverGetStats=k2,d.shimRemoveStream=y2,d.shimRTCDataChannel=s2,d.shimAddTransceiver=f2,d.shimCreateOffer=F2,d.shimCreateAnswer=n2;var _=O("../utils"),M=a2(_);function a2(T){if(T&&T.__esModule)return T;var D={};if(T!=null)for(var W in T)Object.prototype.hasOwnProperty.call(T,W)&&(D[W]=T[W]);return D.default=T,D}function Z(T,D,W){return D in T?Object.defineProperty(T,D,{value:W,enumerable:!0,configurable:!0,writable:!0}):T[D]=W,T}function t2(T){(typeof T=="undefined"?"undefined":f(T))==="object"&&T.RTCTrackEvent&&"receiver"in T.RTCTrackEvent.prototype&&!("transceiver"in T.RTCTrackEvent.prototype)&&Object.defineProperty(T.RTCTrackEvent.prototype,"transceiver",{get:function(){return{receiver:this.receiver}}})}function J(T){var D=M.detectBrowser(T);if(!((typeof T=="undefined"?"undefined":f(T))!=="object"||!(T.RTCPeerConnection||T.mozRTCPeerConnection))){if(!T.RTCPeerConnection&&T.mozRTCPeerConnection&&(T.RTCPeerConnection=T.mozRTCPeerConnection),D.version<53&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach(function(Y2){var W2=T.RTCPeerConnection.prototype[Y2],a3=Z({},Y2,function(){return arguments[0]=new(Y2==="addIceCandidate"?T.RTCIceCandidate:T.RTCSessionDescription)(arguments[0]),W2.apply(this,arguments)});T.RTCPeerConnection.prototype[Y2]=a3[Y2]}),D.version<68){var W=T.RTCPeerConnection.prototype.addIceCandidate;T.RTCPeerConnection.prototype.addIceCandidate=function(){return arguments[0]?arguments[0]&&arguments[0].candidate===""?Promise.resolve():W.apply(this,arguments):(arguments[1]&&arguments[1].apply(null),Promise.resolve())}}var x2={inboundrtp:"inbound-rtp",outboundrtp:"outbound-rtp",candidatepair:"candidate-pair",localcandidate:"local-candidate",remotecandidate:"remote-candidate"},N2=T.RTCPeerConnection.prototype.getStats;T.RTCPeerConnection.prototype.getStats=function(){var W2=Array.prototype.slice.call(arguments),a3=W2[0],w3=W2[1],v3=W2[2];return N2.apply(this,[a3||null]).then(function(f3){if(D.version<53&&!w3)try{f3.forEach(function(v1){v1.type=x2[v1.type]||v1.type})}catch(v1){if(v1.name!=="TypeError")throw v1;f3.forEach(function(a1,w1){f3.set(w1,Object.assign({},a1,{type:x2[a1.type]||a1.type}))})}return f3}).then(w3,v3)}}}function Y(T){if((typeof T=="undefined"?"undefined":f(T))==="object"&&T.RTCPeerConnection&&T.RTCRtpSender&&!(T.RTCRtpSender&&"getStats"in T.RTCRtpSender.prototype)){var D=T.RTCPeerConnection.prototype.getSenders;D&&(T.RTCPeerConnection.prototype.getSenders=function(){var N2=this,Y2=D.apply(this,[]);return Y2.forEach(function(W2){return W2._pc=N2}),Y2});var W=T.RTCPeerConnection.prototype.addTrack;W&&(T.RTCPeerConnection.prototype.addTrack=function(){var N2=W.apply(this,arguments);return N2._pc=this,N2}),T.RTCRtpSender.prototype.getStats=function(){return this.track?this._pc.getStats(this.track):Promise.resolve(new Map)}}}function k2(T){if((typeof T=="undefined"?"undefined":f(T))==="object"&&T.RTCPeerConnection&&T.RTCRtpSender&&!(T.RTCRtpSender&&"getStats"in T.RTCRtpReceiver.prototype)){var D=T.RTCPeerConnection.prototype.getReceivers;D&&(T.RTCPeerConnection.prototype.getReceivers=function(){var x2=this,N2=D.apply(this,[]);return N2.forEach(function(Y2){return Y2._pc=x2}),N2}),M.wrapPeerConnectionEvent(T,"track",function(W){return W.receiver._pc=W.srcElement,W}),T.RTCRtpReceiver.prototype.getStats=function(){return this._pc.getStats(this.track)}}}function y2(T){!T.RTCPeerConnection||"removeStream"in T.RTCPeerConnection.prototype||(T.RTCPeerConnection.prototype.removeStream=function(W){var x2=this;M.deprecated("removeStream","removeTrack"),this.getSenders().forEach(function(N2){N2.track&&W.getTracks().includes(N2.track)&&x2.removeTrack(N2)})})}function s2(T){T.DataChannel&&!T.RTCDataChannel&&(T.RTCDataChannel=T.DataChannel)}function f2(T){if((typeof T=="undefined"?"undefined":f(T))==="object"&&T.RTCPeerConnection){var D=T.RTCPeerConnection.prototype.addTransceiver;D&&(T.RTCPeerConnection.prototype.addTransceiver=function(){this.setParametersPromises=[];var x2=arguments[1],N2=x2&&"sendEncodings"in x2;N2&&x2.sendEncodings.forEach(function(w3){if("rid"in w3){var v3=/^[a-z0-9]{0,16}$/i;if(!v3.test(w3.rid))throw new TypeError("Invalid RID value provided.")}if("scaleResolutionDownBy"in w3&&!(parseFloat(w3.scaleResolutionDownBy)>=1))throw new RangeError("scale_resolution_down_by must be >= 1.0");if("maxFramerate"in w3&&!(parseFloat(w3.maxFramerate)>=0))throw new RangeError("max_framerate must be >= 0.0")});var Y2=D.apply(this,arguments);if(N2){var W2=Y2.sender,a3=W2.getParameters();"encodings"in a3||(a3.encodings=x2.sendEncodings,this.setParametersPromises.push(W2.setParameters(a3).catch(function(){})))}return Y2})}}function F2(T){if((typeof T=="undefined"?"undefined":f(T))==="object"&&T.RTCPeerConnection){var D=T.RTCPeerConnection.prototype.createOffer;T.RTCPeerConnection.prototype.createOffer=function(){var x2=this,N2=arguments;return this.setParametersPromises&&this.setParametersPromises.length?Promise.all(this.setParametersPromises).then(function(){return D.apply(x2,N2)}).finally(function(){x2.setParametersPromises=[]}):D.apply(this,arguments)}}}function n2(T){if((typeof T=="undefined"?"undefined":f(T))==="object"&&T.RTCPeerConnection){var D=T.RTCPeerConnection.prototype.createAnswer;T.RTCPeerConnection.prototype.createAnswer=function(){var x2=this,N2=arguments;return this.setParametersPromises&&this.setParametersPromises.length?Promise.all(this.setParametersPromises).then(function(){return D.apply(x2,N2)}).finally(function(){x2.setParametersPromises=[]}):D.apply(this,arguments)}}}},{"../utils":15,"./getdisplaymedia":12,"./getusermedia":13}],12:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0}),d.shimGetDisplayMedia=f;function f(y,b){y.navigator.mediaDevices&&"getDisplayMedia"in y.navigator.mediaDevices||y.navigator.mediaDevices&&(y.navigator.mediaDevices.getDisplayMedia=function(M){if(!(M&&M.video)){var a2=new DOMException("getDisplayMedia without video constraints is undefined");return a2.name="NotFoundError",a2.code=8,Promise.reject(a2)}return M.video===!0?M.video={mediaSource:b}:M.video.mediaSource=b,y.navigator.mediaDevices.getUserMedia(M)})}},{}],13:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0});var f=typeof Symbol=="function"&&n(Symbol.iterator)==="symbol"?function(a2){return n(a2)}:function(a2){return a2&&typeof Symbol=="function"&&a2.constructor===Symbol&&a2!==Symbol.prototype?"symbol":n(a2)};d.shimGetUserMedia=M;var y=O("../utils"),b=_(y);function _(a2){if(a2&&a2.__esModule)return a2;var Z={};if(a2!=null)for(var t2 in a2)Object.prototype.hasOwnProperty.call(a2,t2)&&(Z[t2]=a2[t2]);return Z.default=a2,Z}function M(a2){var Z=b.detectBrowser(a2),t2=a2&&a2.navigator,J=a2&&a2.MediaStreamTrack;if(t2.getUserMedia=function(f2,F2,n2){b.deprecated("navigator.getUserMedia","navigator.mediaDevices.getUserMedia"),t2.mediaDevices.getUserMedia(f2).then(F2,n2)},!(Z.version>55&&"autoGainControl"in t2.mediaDevices.getSupportedConstraints())){var Y=function(F2,n2,T){n2 in F2&&!(T in F2)&&(F2[T]=F2[n2],delete F2[n2])},k2=t2.mediaDevices.getUserMedia.bind(t2.mediaDevices);if(t2.mediaDevices.getUserMedia=function(f2){return(typeof f2=="undefined"?"undefined":f(f2))==="object"&&f(f2.audio)==="object"&&(f2=JSON.parse(JSON.stringify(f2)),Y(f2.audio,"autoGainControl","mozAutoGainControl"),Y(f2.audio,"noiseSuppression","mozNoiseSuppression")),k2(f2)},J&&J.prototype.getSettings){var y2=J.prototype.getSettings;J.prototype.getSettings=function(){var f2=y2.apply(this,arguments);return Y(f2,"mozAutoGainControl","autoGainControl"),Y(f2,"mozNoiseSuppression","noiseSuppression"),f2}}if(J&&J.prototype.applyConstraints){var s2=J.prototype.applyConstraints;J.prototype.applyConstraints=function(f2){return this.kind==="audio"&&(typeof f2=="undefined"?"undefined":f(f2))==="object"&&(f2=JSON.parse(JSON.stringify(f2)),Y(f2,"autoGainControl","mozAutoGainControl"),Y(f2,"noiseSuppression","mozNoiseSuppression")),s2.apply(this,[f2])}}}}},{"../utils":15}],14:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0});var f=typeof Symbol=="function"&&n(Symbol.iterator)==="symbol"?function(s2){return n(s2)}:function(s2){return s2&&typeof Symbol=="function"&&s2.constructor===Symbol&&s2!==Symbol.prototype?"symbol":n(s2)};d.shimLocalStreamsAPI=M,d.shimRemoteStreamsAPI=a2,d.shimCallbacksAPI=Z,d.shimGetUserMedia=t2,d.shimConstraints=J,d.shimRTCIceServerUrls=Y,d.shimTrackEventTransceiver=k2,d.shimCreateOfferLegacy=y2;var y=O("../utils"),b=_(y);function _(s2){if(s2&&s2.__esModule)return s2;var f2={};if(s2!=null)for(var F2 in s2)Object.prototype.hasOwnProperty.call(s2,F2)&&(f2[F2]=s2[F2]);return f2.default=s2,f2}function M(s2){if(!((typeof s2=="undefined"?"undefined":f(s2))!=="object"||!s2.RTCPeerConnection)){if("getLocalStreams"in s2.RTCPeerConnection.prototype||(s2.RTCPeerConnection.prototype.getLocalStreams=function(){return this._localStreams||(this._localStreams=[]),this._localStreams}),!("addStream"in s2.RTCPeerConnection.prototype)){var f2=s2.RTCPeerConnection.prototype.addTrack;s2.RTCPeerConnection.prototype.addStream=function(n2){var T=this;this._localStreams||(this._localStreams=[]),this._localStreams.includes(n2)||this._localStreams.push(n2),n2.getAudioTracks().forEach(function(D){return f2.call(T,D,n2)}),n2.getVideoTracks().forEach(function(D){return f2.call(T,D,n2)})},s2.RTCPeerConnection.prototype.addTrack=function(n2){var T=arguments[1];return T&&(this._localStreams?this._localStreams.includes(T)||this._localStreams.push(T):this._localStreams=[T]),f2.apply(this,arguments)}}"removeStream"in s2.RTCPeerConnection.prototype||(s2.RTCPeerConnection.prototype.removeStream=function(n2){var T=this;this._localStreams||(this._localStreams=[]);var D=this._localStreams.indexOf(n2);if(D!==-1){this._localStreams.splice(D,1);var W=n2.getTracks();this.getSenders().forEach(function(x2){W.includes(x2.track)&&T.removeTrack(x2)})}})}}function a2(s2){if(!((typeof s2=="undefined"?"undefined":f(s2))!=="object"||!s2.RTCPeerConnection)&&("getRemoteStreams"in s2.RTCPeerConnection.prototype||(s2.RTCPeerConnection.prototype.getRemoteStreams=function(){return this._remoteStreams?this._remoteStreams:[]}),!("onaddstream"in s2.RTCPeerConnection.prototype))){Object.defineProperty(s2.RTCPeerConnection.prototype,"onaddstream",{get:function(){return this._onaddstream},set:function(n2){var T=this;this._onaddstream&&(this.removeEventListener("addstream",this._onaddstream),this.removeEventListener("track",this._onaddstreampoly)),this.addEventListener("addstream",this._onaddstream=n2),this.addEventListener("track",this._onaddstreampoly=function(D){D.streams.forEach(function(W){if(T._remoteStreams||(T._remoteStreams=[]),!T._remoteStreams.includes(W)){T._remoteStreams.push(W);var x2=new Event("addstream");x2.stream=W,T.dispatchEvent(x2)}})})}});var f2=s2.RTCPeerConnection.prototype.setRemoteDescription;s2.RTCPeerConnection.prototype.setRemoteDescription=function(){var n2=this;return this._onaddstreampoly||this.addEventListener("track",this._onaddstreampoly=function(T){T.streams.forEach(function(D){if(n2._remoteStreams||(n2._remoteStreams=[]),!(n2._remoteStreams.indexOf(D)>=0)){n2._remoteStreams.push(D);var W=new Event("addstream");W.stream=D,n2.dispatchEvent(W)}})}),f2.apply(n2,arguments)}}}function Z(s2){if(!((typeof s2=="undefined"?"undefined":f(s2))!=="object"||!s2.RTCPeerConnection)){var f2=s2.RTCPeerConnection.prototype,F2=f2.createOffer,n2=f2.createAnswer,T=f2.setLocalDescription,D=f2.setRemoteDescription,W=f2.addIceCandidate;f2.createOffer=function(Y2,W2){var a3=arguments.length>=2?arguments[2]:arguments[0],w3=F2.apply(this,[a3]);return W2?(w3.then(Y2,W2),Promise.resolve()):w3},f2.createAnswer=function(Y2,W2){var a3=arguments.length>=2?arguments[2]:arguments[0],w3=n2.apply(this,[a3]);return W2?(w3.then(Y2,W2),Promise.resolve()):w3};var x2=function(Y2,W2,a3){var w3=T.apply(this,[Y2]);return a3?(w3.then(W2,a3),Promise.resolve()):w3};f2.setLocalDescription=x2,x2=function(Y2,W2,a3){var w3=D.apply(this,[Y2]);return a3?(w3.then(W2,a3),Promise.resolve()):w3},f2.setRemoteDescription=x2,x2=function(Y2,W2,a3){var w3=W.apply(this,[Y2]);return a3?(w3.then(W2,a3),Promise.resolve()):w3},f2.addIceCandidate=x2}}function t2(s2){var f2=s2&&s2.navigator;if(f2.mediaDevices&&f2.mediaDevices.getUserMedia){var F2=f2.mediaDevices,n2=F2.getUserMedia.bind(F2);f2.mediaDevices.getUserMedia=function(T){return n2(J(T))}}!f2.getUserMedia&&f2.mediaDevices&&f2.mediaDevices.getUserMedia&&(f2.getUserMedia=function(D,W,x2){f2.mediaDevices.getUserMedia(D).then(W,x2)}.bind(f2))}function J(s2){return s2&&s2.video!==void 0?Object.assign({},s2,{video:b.compactObject(s2.video)}):s2}function Y(s2){var f2=s2.RTCPeerConnection;s2.RTCPeerConnection=function(n2,T){if(n2&&n2.iceServers){for(var D=[],W=0;W =D&&parseInt(W[D],10)}function a2(n2,T,D){if(n2.RTCPeerConnection){var W=n2.RTCPeerConnection.prototype,x2=W.addEventListener;W.addEventListener=function(Y2,W2){if(Y2!==T)return x2.apply(this,arguments);var a3=function(v3){var f3=D(v3);f3&&W2(f3)};return this._eventMap=this._eventMap||{},this._eventMap[W2]=a3,x2.apply(this,[Y2,a3])};var N2=W.removeEventListener;W.removeEventListener=function(Y2,W2){if(Y2!==T||!this._eventMap||!this._eventMap[W2])return N2.apply(this,arguments);var a3=this._eventMap[W2];return delete this._eventMap[W2],N2.apply(this,[Y2,a3])},Object.defineProperty(W,"on"+T,{get:function(){return this["_on"+T]},set:function(W2){this["_on"+T]&&(this.removeEventListener(T,this["_on"+T]),delete this["_on"+T]),W2&&this.addEventListener(T,this["_on"+T]=W2)},enumerable:!0,configurable:!0})}}function Z(n2){return typeof n2!="boolean"?new Error("Argument type: "+(typeof n2=="undefined"?"undefined":f(n2))+". Please use a boolean."):(b=n2,n2?"adapter.js logging disabled":"adapter.js logging enabled")}function t2(n2){return typeof n2!="boolean"?new Error("Argument type: "+(typeof n2=="undefined"?"undefined":f(n2))+". Please use a boolean."):(_=!n2,"adapter.js deprecation warnings "+(n2?"disabled":"enabled"))}function J(){if((typeof window=="undefined"?"undefined":f(window))==="object"){if(b)return;typeof console!="undefined"&&typeof console.log=="function"&&console.log.apply(console,arguments)}}function Y(n2,T){_&&console.warn(n2+" is deprecated, please use "+T+" instead.")}function k2(n2){var T=n2.navigator,D={browser:null,version:null};if(typeof n2=="undefined"||!n2.navigator)return D.browser="Not a browser.",D;if(T.mozGetUserMedia)D.browser="firefox",D.version=M(T.userAgent,/Firefox\/(\d+)\./,1);else if(T.webkitGetUserMedia||n2.isSecureContext===!1&&n2.webkitRTCPeerConnection&&!n2.RTCIceGatherer)D.browser="chrome",D.version=M(T.userAgent,/Chrom(e|ium)\/(\d+)\./,2);else if(T.mediaDevices&&T.userAgent.match(/Edge\/(\d+).(\d+)$/))D.browser="edge",D.version=M(T.userAgent,/Edge\/(\d+).(\d+)$/,2);else if(n2.RTCPeerConnection&&T.userAgent.match(/AppleWebKit\/(\d+)\./))D.browser="safari",D.version=M(T.userAgent,/AppleWebKit\/(\d+)\./,1),D.supportsUnifiedPlan=n2.RTCRtpTransceiver&&"currentDirection"in n2.RTCRtpTransceiver.prototype;else return D.browser="Not a supported browser.",D;return D}function y2(n2){return Object.prototype.toString.call(n2)==="[object Object]"}function s2(n2){return y2(n2)?Object.keys(n2).reduce(function(T,D){var W=y2(n2[D]),x2=W?s2(n2[D]):n2[D],N2=W&&!Object.keys(x2).length;return x2===void 0||N2?T:Object.assign(T,y({},D,x2))},{}):n2}function f2(n2,T,D){!T||D.has(T.id)||(D.set(T.id,T),Object.keys(T).forEach(function(W){W.endsWith("Id")?f2(n2,n2.get(T[W]),D):W.endsWith("Ids")&&T[W].forEach(function(x2){f2(n2,n2.get(x2),D)})}))}function F2(n2,T,D){var W=D?"outbound-rtp":"inbound-rtp",x2=new Map;if(T===null)return x2;var N2=[];return n2.forEach(function(Y2){Y2.type==="track"&&Y2.trackIdentifier===T.id&&N2.push(Y2)}),N2.forEach(function(Y2){n2.forEach(function(W2){W2.type===W&&W2.trackId===Y2.id&&f2(n2,W2,x2)})}),x2}},{}],16:[function(O,N,d){var f=O("sdp");function y(J){return{inboundrtp:"inbound-rtp",outboundrtp:"outbound-rtp",candidatepair:"candidate-pair",localcandidate:"local-candidate",remotecandidate:"remote-candidate"}[J.type]||J.type}function b(J,Y,k2,y2,s2){var f2=f.writeRtpDescription(J.kind,Y);if(f2+=f.writeIceParameters(J.iceGatherer.getLocalParameters()),f2+=f.writeDtlsParameters(J.dtlsTransport.getLocalParameters(),k2==="offer"?"actpass":s2||"active"),f2+="a=mid:"+J.mid+`\r -`,J.rtpSender&&J.rtpReceiver?f2+=`a=sendrecv\r -`:J.rtpSender?f2+=`a=sendonly\r -`:J.rtpReceiver?f2+=`a=recvonly\r -`:f2+=`a=inactive\r +`)),F2.apply(this,arguments)}}}}},{"./utils":15,sdp:17}],7:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0}),d.shimGetDisplayMedia=d.shimGetUserMedia=void 0;var f=O("./getusermedia");Object.defineProperty(d,"shimGetUserMedia",{enumerable:!0,get:function(){return f.shimGetUserMedia}});var y=O("./getdisplaymedia");Object.defineProperty(d,"shimGetDisplayMedia",{enumerable:!0,get:function(){return y.shimGetDisplayMedia}}),d.shimPeerConnection=Y,d.shimReplaceTrack=k2;var b=O("../utils"),_=J(b),M=O("./filtericeservers"),a2=O("rtcpeerconnection-shim"),Z=t2(a2);function t2(y2){return y2&&y2.__esModule?y2:{default:y2}}function J(y2){if(y2&&y2.__esModule)return y2;var o2={};if(y2!=null)for(var d2 in y2)Object.prototype.hasOwnProperty.call(y2,d2)&&(o2[d2]=y2[d2]);return o2.default=y2,o2}function Y(y2){var o2=_.detectBrowser(y2);if(y2.RTCIceGatherer&&(y2.RTCIceCandidate||(y2.RTCIceCandidate=function(T){return T}),y2.RTCSessionDescription||(y2.RTCSessionDescription=function(T){return T}),o2.version<15025)){var d2=Object.getOwnPropertyDescriptor(y2.MediaStreamTrack.prototype,"enabled");Object.defineProperty(y2.MediaStreamTrack.prototype,"enabled",{set:function(T){d2.set.call(this,T);var D=new Event("enabled");D.enabled=T,this.dispatchEvent(D)}})}y2.RTCRtpSender&&!("dtmf"in y2.RTCRtpSender.prototype)&&Object.defineProperty(y2.RTCRtpSender.prototype,"dtmf",{get:function(){return this._dtmf===void 0&&(this.track.kind==="audio"?this._dtmf=new y2.RTCDtmfSender(this):this.track.kind==="video"&&(this._dtmf=null)),this._dtmf}}),y2.RTCDtmfSender&&!y2.RTCDTMFSender&&(y2.RTCDTMFSender=y2.RTCDtmfSender);var F2=(0,Z.default)(y2,o2.version);y2.RTCPeerConnection=function(T){return T&&T.iceServers&&(T.iceServers=(0,M.filterIceServers)(T.iceServers,o2.version),_.log("ICE servers after filtering:",T.iceServers)),new F2(T)},y2.RTCPeerConnection.prototype=F2.prototype}function k2(y2){y2.RTCRtpSender&&!("replaceTrack"in y2.RTCRtpSender.prototype)&&(y2.RTCRtpSender.prototype.replaceTrack=y2.RTCRtpSender.prototype.setTrack)}},{"../utils":15,"./filtericeservers":8,"./getdisplaymedia":9,"./getusermedia":10,"rtcpeerconnection-shim":16}],8:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0}),d.filterIceServers=_;var f=O("../utils"),y=b(f);function b(M){if(M&&M.__esModule)return M;var a2={};if(M!=null)for(var Z in M)Object.prototype.hasOwnProperty.call(M,Z)&&(a2[Z]=M[Z]);return a2.default=M,a2}function _(M,a2){var Z=!1;return M=JSON.parse(JSON.stringify(M)),M.filter(function(t2){if(t2&&(t2.urls||t2.url)){var J=t2.urls||t2.url;t2.url&&!t2.urls&&y.deprecated("RTCIceServer.url","RTCIceServer.urls");var Y=typeof J=="string";return Y&&(J=[J]),J=J.filter(function(k2){if(k2.indexOf("stun:")===0)return!1;var y2=k2.startsWith("turn")&&!k2.startsWith("turn:[")&&k2.includes("transport=udp");return y2&&!Z?(Z=!0,!0):y2&&!Z}),delete t2.url,t2.urls=Y?J[0]:J,!!J.length}})}},{"../utils":15}],9:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0}),d.shimGetDisplayMedia=f;function f(y){"getDisplayMedia"in y.navigator&&y.navigator.mediaDevices&&(y.navigator.mediaDevices&&"getDisplayMedia"in y.navigator.mediaDevices||(y.navigator.mediaDevices.getDisplayMedia=y.navigator.getDisplayMedia.bind(y.navigator)))}},{}],10:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0}),d.shimGetUserMedia=f;function f(y){var b=y&&y.navigator,_=function(Z){return{name:{PermissionDeniedError:"NotAllowedError"}[Z.name]||Z.name,message:Z.message,constraint:Z.constraint,toString:function(){return this.name}}},M=b.mediaDevices.getUserMedia.bind(b.mediaDevices);b.mediaDevices.getUserMedia=function(a2){return M(a2).catch(function(Z){return Promise.reject(_(Z))})}}},{}],11:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0}),d.shimGetDisplayMedia=d.shimGetUserMedia=void 0;var f=typeof Symbol=="function"&&n(Symbol.iterator)==="symbol"?function(T){return n(T)}:function(T){return T&&typeof Symbol=="function"&&T.constructor===Symbol&&T!==Symbol.prototype?"symbol":n(T)},y=O("./getusermedia");Object.defineProperty(d,"shimGetUserMedia",{enumerable:!0,get:function(){return y.shimGetUserMedia}});var b=O("./getdisplaymedia");Object.defineProperty(d,"shimGetDisplayMedia",{enumerable:!0,get:function(){return b.shimGetDisplayMedia}}),d.shimOnTrack=t2,d.shimPeerConnection=J,d.shimSenderGetStats=Y,d.shimReceiverGetStats=k2,d.shimRemoveStream=y2,d.shimRTCDataChannel=o2,d.shimAddTransceiver=d2,d.shimCreateOffer=F2,d.shimCreateAnswer=n2;var _=O("../utils"),M=a2(_);function a2(T){if(T&&T.__esModule)return T;var D={};if(T!=null)for(var W in T)Object.prototype.hasOwnProperty.call(T,W)&&(D[W]=T[W]);return D.default=T,D}function Z(T,D,W){return D in T?Object.defineProperty(T,D,{value:W,enumerable:!0,configurable:!0,writable:!0}):T[D]=W,T}function t2(T){(typeof T=="undefined"?"undefined":f(T))==="object"&&T.RTCTrackEvent&&"receiver"in T.RTCTrackEvent.prototype&&!("transceiver"in T.RTCTrackEvent.prototype)&&Object.defineProperty(T.RTCTrackEvent.prototype,"transceiver",{get:function(){return{receiver:this.receiver}}})}function J(T){var D=M.detectBrowser(T);if(!((typeof T=="undefined"?"undefined":f(T))!=="object"||!(T.RTCPeerConnection||T.mozRTCPeerConnection))){if(!T.RTCPeerConnection&&T.mozRTCPeerConnection&&(T.RTCPeerConnection=T.mozRTCPeerConnection),D.version<53&&["setLocalDescription","setRemoteDescription","addIceCandidate"].forEach(function(Y2){var W2=T.RTCPeerConnection.prototype[Y2],a3=Z({},Y2,function(){return arguments[0]=new(Y2==="addIceCandidate"?T.RTCIceCandidate:T.RTCSessionDescription)(arguments[0]),W2.apply(this,arguments)});T.RTCPeerConnection.prototype[Y2]=a3[Y2]}),D.version<68){var W=T.RTCPeerConnection.prototype.addIceCandidate;T.RTCPeerConnection.prototype.addIceCandidate=function(){return arguments[0]?arguments[0]&&arguments[0].candidate===""?Promise.resolve():W.apply(this,arguments):(arguments[1]&&arguments[1].apply(null),Promise.resolve())}}var x2={inboundrtp:"inbound-rtp",outboundrtp:"outbound-rtp",candidatepair:"candidate-pair",localcandidate:"local-candidate",remotecandidate:"remote-candidate"},N2=T.RTCPeerConnection.prototype.getStats;T.RTCPeerConnection.prototype.getStats=function(){var W2=Array.prototype.slice.call(arguments),a3=W2[0],w3=W2[1],v3=W2[2];return N2.apply(this,[a3||null]).then(function(f3){if(D.version<53&&!w3)try{f3.forEach(function(v1){v1.type=x2[v1.type]||v1.type})}catch(v1){if(v1.name!=="TypeError")throw v1;f3.forEach(function(a1,w1){f3.set(w1,Object.assign({},a1,{type:x2[a1.type]||a1.type}))})}return f3}).then(w3,v3)}}}function Y(T){if((typeof T=="undefined"?"undefined":f(T))==="object"&&T.RTCPeerConnection&&T.RTCRtpSender&&!(T.RTCRtpSender&&"getStats"in T.RTCRtpSender.prototype)){var D=T.RTCPeerConnection.prototype.getSenders;D&&(T.RTCPeerConnection.prototype.getSenders=function(){var N2=this,Y2=D.apply(this,[]);return Y2.forEach(function(W2){return W2._pc=N2}),Y2});var W=T.RTCPeerConnection.prototype.addTrack;W&&(T.RTCPeerConnection.prototype.addTrack=function(){var N2=W.apply(this,arguments);return N2._pc=this,N2}),T.RTCRtpSender.prototype.getStats=function(){return this.track?this._pc.getStats(this.track):Promise.resolve(new Map)}}}function k2(T){if((typeof T=="undefined"?"undefined":f(T))==="object"&&T.RTCPeerConnection&&T.RTCRtpSender&&!(T.RTCRtpSender&&"getStats"in T.RTCRtpReceiver.prototype)){var D=T.RTCPeerConnection.prototype.getReceivers;D&&(T.RTCPeerConnection.prototype.getReceivers=function(){var x2=this,N2=D.apply(this,[]);return N2.forEach(function(Y2){return Y2._pc=x2}),N2}),M.wrapPeerConnectionEvent(T,"track",function(W){return W.receiver._pc=W.srcElement,W}),T.RTCRtpReceiver.prototype.getStats=function(){return this._pc.getStats(this.track)}}}function y2(T){!T.RTCPeerConnection||"removeStream"in T.RTCPeerConnection.prototype||(T.RTCPeerConnection.prototype.removeStream=function(W){var x2=this;M.deprecated("removeStream","removeTrack"),this.getSenders().forEach(function(N2){N2.track&&W.getTracks().includes(N2.track)&&x2.removeTrack(N2)})})}function o2(T){T.DataChannel&&!T.RTCDataChannel&&(T.RTCDataChannel=T.DataChannel)}function d2(T){if((typeof T=="undefined"?"undefined":f(T))==="object"&&T.RTCPeerConnection){var D=T.RTCPeerConnection.prototype.addTransceiver;D&&(T.RTCPeerConnection.prototype.addTransceiver=function(){this.setParametersPromises=[];var x2=arguments[1],N2=x2&&"sendEncodings"in x2;N2&&x2.sendEncodings.forEach(function(w3){if("rid"in w3){var v3=/^[a-z0-9]{0,16}$/i;if(!v3.test(w3.rid))throw new TypeError("Invalid RID value provided.")}if("scaleResolutionDownBy"in w3&&!(parseFloat(w3.scaleResolutionDownBy)>=1))throw new RangeError("scale_resolution_down_by must be >= 1.0");if("maxFramerate"in w3&&!(parseFloat(w3.maxFramerate)>=0))throw new RangeError("max_framerate must be >= 0.0")});var Y2=D.apply(this,arguments);if(N2){var W2=Y2.sender,a3=W2.getParameters();"encodings"in a3||(a3.encodings=x2.sendEncodings,this.setParametersPromises.push(W2.setParameters(a3).catch(function(){})))}return Y2})}}function F2(T){if((typeof T=="undefined"?"undefined":f(T))==="object"&&T.RTCPeerConnection){var D=T.RTCPeerConnection.prototype.createOffer;T.RTCPeerConnection.prototype.createOffer=function(){var x2=this,N2=arguments;return this.setParametersPromises&&this.setParametersPromises.length?Promise.all(this.setParametersPromises).then(function(){return D.apply(x2,N2)}).finally(function(){x2.setParametersPromises=[]}):D.apply(this,arguments)}}}function n2(T){if((typeof T=="undefined"?"undefined":f(T))==="object"&&T.RTCPeerConnection){var D=T.RTCPeerConnection.prototype.createAnswer;T.RTCPeerConnection.prototype.createAnswer=function(){var x2=this,N2=arguments;return this.setParametersPromises&&this.setParametersPromises.length?Promise.all(this.setParametersPromises).then(function(){return D.apply(x2,N2)}).finally(function(){x2.setParametersPromises=[]}):D.apply(this,arguments)}}}},{"../utils":15,"./getdisplaymedia":12,"./getusermedia":13}],12:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0}),d.shimGetDisplayMedia=f;function f(y,b){y.navigator.mediaDevices&&"getDisplayMedia"in y.navigator.mediaDevices||y.navigator.mediaDevices&&(y.navigator.mediaDevices.getDisplayMedia=function(M){if(!(M&&M.video)){var a2=new DOMException("getDisplayMedia without video constraints is undefined");return a2.name="NotFoundError",a2.code=8,Promise.reject(a2)}return M.video===!0?M.video={mediaSource:b}:M.video.mediaSource=b,y.navigator.mediaDevices.getUserMedia(M)})}},{}],13:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0});var f=typeof Symbol=="function"&&n(Symbol.iterator)==="symbol"?function(a2){return n(a2)}:function(a2){return a2&&typeof Symbol=="function"&&a2.constructor===Symbol&&a2!==Symbol.prototype?"symbol":n(a2)};d.shimGetUserMedia=M;var y=O("../utils"),b=_(y);function _(a2){if(a2&&a2.__esModule)return a2;var Z={};if(a2!=null)for(var t2 in a2)Object.prototype.hasOwnProperty.call(a2,t2)&&(Z[t2]=a2[t2]);return Z.default=a2,Z}function M(a2){var Z=b.detectBrowser(a2),t2=a2&&a2.navigator,J=a2&&a2.MediaStreamTrack;if(t2.getUserMedia=function(d2,F2,n2){b.deprecated("navigator.getUserMedia","navigator.mediaDevices.getUserMedia"),t2.mediaDevices.getUserMedia(d2).then(F2,n2)},!(Z.version>55&&"autoGainControl"in t2.mediaDevices.getSupportedConstraints())){var Y=function(F2,n2,T){n2 in F2&&!(T in F2)&&(F2[T]=F2[n2],delete F2[n2])},k2=t2.mediaDevices.getUserMedia.bind(t2.mediaDevices);if(t2.mediaDevices.getUserMedia=function(d2){return(typeof d2=="undefined"?"undefined":f(d2))==="object"&&f(d2.audio)==="object"&&(d2=JSON.parse(JSON.stringify(d2)),Y(d2.audio,"autoGainControl","mozAutoGainControl"),Y(d2.audio,"noiseSuppression","mozNoiseSuppression")),k2(d2)},J&&J.prototype.getSettings){var y2=J.prototype.getSettings;J.prototype.getSettings=function(){var d2=y2.apply(this,arguments);return Y(d2,"mozAutoGainControl","autoGainControl"),Y(d2,"mozNoiseSuppression","noiseSuppression"),d2}}if(J&&J.prototype.applyConstraints){var o2=J.prototype.applyConstraints;J.prototype.applyConstraints=function(d2){return this.kind==="audio"&&(typeof d2=="undefined"?"undefined":f(d2))==="object"&&(d2=JSON.parse(JSON.stringify(d2)),Y(d2,"autoGainControl","mozAutoGainControl"),Y(d2,"noiseSuppression","mozNoiseSuppression")),o2.apply(this,[d2])}}}}},{"../utils":15}],14:[function(O,N,d){Object.defineProperty(d,"__esModule",{value:!0});var f=typeof Symbol=="function"&&n(Symbol.iterator)==="symbol"?function(o2){return n(o2)}:function(o2){return o2&&typeof Symbol=="function"&&o2.constructor===Symbol&&o2!==Symbol.prototype?"symbol":n(o2)};d.shimLocalStreamsAPI=M,d.shimRemoteStreamsAPI=a2,d.shimCallbacksAPI=Z,d.shimGetUserMedia=t2,d.shimConstraints=J,d.shimRTCIceServerUrls=Y,d.shimTrackEventTransceiver=k2,d.shimCreateOfferLegacy=y2;var y=O("../utils"),b=_(y);function _(o2){if(o2&&o2.__esModule)return o2;var d2={};if(o2!=null)for(var F2 in o2)Object.prototype.hasOwnProperty.call(o2,F2)&&(d2[F2]=o2[F2]);return d2.default=o2,d2}function M(o2){if(!((typeof o2=="undefined"?"undefined":f(o2))!=="object"||!o2.RTCPeerConnection)){if("getLocalStreams"in o2.RTCPeerConnection.prototype||(o2.RTCPeerConnection.prototype.getLocalStreams=function(){return this._localStreams||(this._localStreams=[]),this._localStreams}),!("addStream"in o2.RTCPeerConnection.prototype)){var d2=o2.RTCPeerConnection.prototype.addTrack;o2.RTCPeerConnection.prototype.addStream=function(n2){var T=this;this._localStreams||(this._localStreams=[]),this._localStreams.includes(n2)||this._localStreams.push(n2),n2.getAudioTracks().forEach(function(D){return d2.call(T,D,n2)}),n2.getVideoTracks().forEach(function(D){return d2.call(T,D,n2)})},o2.RTCPeerConnection.prototype.addTrack=function(n2){var T=arguments[1];return T&&(this._localStreams?this._localStreams.includes(T)||this._localStreams.push(T):this._localStreams=[T]),d2.apply(this,arguments)}}"removeStream"in o2.RTCPeerConnection.prototype||(o2.RTCPeerConnection.prototype.removeStream=function(n2){var T=this;this._localStreams||(this._localStreams=[]);var D=this._localStreams.indexOf(n2);if(D!==-1){this._localStreams.splice(D,1);var W=n2.getTracks();this.getSenders().forEach(function(x2){W.includes(x2.track)&&T.removeTrack(x2)})}})}}function a2(o2){if(!((typeof o2=="undefined"?"undefined":f(o2))!=="object"||!o2.RTCPeerConnection)&&("getRemoteStreams"in o2.RTCPeerConnection.prototype||(o2.RTCPeerConnection.prototype.getRemoteStreams=function(){return this._remoteStreams?this._remoteStreams:[]}),!("onaddstream"in o2.RTCPeerConnection.prototype))){Object.defineProperty(o2.RTCPeerConnection.prototype,"onaddstream",{get:function(){return this._onaddstream},set:function(n2){var T=this;this._onaddstream&&(this.removeEventListener("addstream",this._onaddstream),this.removeEventListener("track",this._onaddstreampoly)),this.addEventListener("addstream",this._onaddstream=n2),this.addEventListener("track",this._onaddstreampoly=function(D){D.streams.forEach(function(W){if(T._remoteStreams||(T._remoteStreams=[]),!T._remoteStreams.includes(W)){T._remoteStreams.push(W);var x2=new Event("addstream");x2.stream=W,T.dispatchEvent(x2)}})})}});var d2=o2.RTCPeerConnection.prototype.setRemoteDescription;o2.RTCPeerConnection.prototype.setRemoteDescription=function(){var n2=this;return this._onaddstreampoly||this.addEventListener("track",this._onaddstreampoly=function(T){T.streams.forEach(function(D){if(n2._remoteStreams||(n2._remoteStreams=[]),!(n2._remoteStreams.indexOf(D)>=0)){n2._remoteStreams.push(D);var W=new Event("addstream");W.stream=D,n2.dispatchEvent(W)}})}),d2.apply(n2,arguments)}}}function Z(o2){if(!((typeof o2=="undefined"?"undefined":f(o2))!=="object"||!o2.RTCPeerConnection)){var d2=o2.RTCPeerConnection.prototype,F2=d2.createOffer,n2=d2.createAnswer,T=d2.setLocalDescription,D=d2.setRemoteDescription,W=d2.addIceCandidate;d2.createOffer=function(Y2,W2){var a3=arguments.length>=2?arguments[2]:arguments[0],w3=F2.apply(this,[a3]);return W2?(w3.then(Y2,W2),Promise.resolve()):w3},d2.createAnswer=function(Y2,W2){var a3=arguments.length>=2?arguments[2]:arguments[0],w3=n2.apply(this,[a3]);return W2?(w3.then(Y2,W2),Promise.resolve()):w3};var x2=function(Y2,W2,a3){var w3=T.apply(this,[Y2]);return a3?(w3.then(W2,a3),Promise.resolve()):w3};d2.setLocalDescription=x2,x2=function(Y2,W2,a3){var w3=D.apply(this,[Y2]);return a3?(w3.then(W2,a3),Promise.resolve()):w3},d2.setRemoteDescription=x2,x2=function(Y2,W2,a3){var w3=W.apply(this,[Y2]);return a3?(w3.then(W2,a3),Promise.resolve()):w3},d2.addIceCandidate=x2}}function t2(o2){var d2=o2&&o2.navigator;if(d2.mediaDevices&&d2.mediaDevices.getUserMedia){var F2=d2.mediaDevices,n2=F2.getUserMedia.bind(F2);d2.mediaDevices.getUserMedia=function(T){return n2(J(T))}}!d2.getUserMedia&&d2.mediaDevices&&d2.mediaDevices.getUserMedia&&(d2.getUserMedia=function(D,W,x2){d2.mediaDevices.getUserMedia(D).then(W,x2)}.bind(d2))}function J(o2){return o2&&o2.video!==void 0?Object.assign({},o2,{video:b.compactObject(o2.video)}):o2}function Y(o2){var d2=o2.RTCPeerConnection;o2.RTCPeerConnection=function(n2,T){if(n2&&n2.iceServers){for(var D=[],W=0;W =D&&parseInt(W[D],10)}function a2(n2,T,D){if(n2.RTCPeerConnection){var W=n2.RTCPeerConnection.prototype,x2=W.addEventListener;W.addEventListener=function(Y2,W2){if(Y2!==T)return x2.apply(this,arguments);var a3=function(v3){var f3=D(v3);f3&&W2(f3)};return this._eventMap=this._eventMap||{},this._eventMap[W2]=a3,x2.apply(this,[Y2,a3])};var N2=W.removeEventListener;W.removeEventListener=function(Y2,W2){if(Y2!==T||!this._eventMap||!this._eventMap[W2])return N2.apply(this,arguments);var a3=this._eventMap[W2];return delete this._eventMap[W2],N2.apply(this,[Y2,a3])},Object.defineProperty(W,"on"+T,{get:function(){return this["_on"+T]},set:function(W2){this["_on"+T]&&(this.removeEventListener(T,this["_on"+T]),delete this["_on"+T]),W2&&this.addEventListener(T,this["_on"+T]=W2)},enumerable:!0,configurable:!0})}}function Z(n2){return typeof n2!="boolean"?new Error("Argument type: "+(typeof n2=="undefined"?"undefined":f(n2))+". Please use a boolean."):(b=n2,n2?"adapter.js logging disabled":"adapter.js logging enabled")}function t2(n2){return typeof n2!="boolean"?new Error("Argument type: "+(typeof n2=="undefined"?"undefined":f(n2))+". Please use a boolean."):(_=!n2,"adapter.js deprecation warnings "+(n2?"disabled":"enabled"))}function J(){if((typeof window=="undefined"?"undefined":f(window))==="object"){if(b)return;typeof console!="undefined"&&typeof console.log=="function"&&console.log.apply(console,arguments)}}function Y(n2,T){_&&console.warn(n2+" is deprecated, please use "+T+" instead.")}function k2(n2){var T=n2.navigator,D={browser:null,version:null};if(typeof n2=="undefined"||!n2.navigator)return D.browser="Not a browser.",D;if(T.mozGetUserMedia)D.browser="firefox",D.version=M(T.userAgent,/Firefox\/(\d+)\./,1);else if(T.webkitGetUserMedia||n2.isSecureContext===!1&&n2.webkitRTCPeerConnection&&!n2.RTCIceGatherer)D.browser="chrome",D.version=M(T.userAgent,/Chrom(e|ium)\/(\d+)\./,2);else if(T.mediaDevices&&T.userAgent.match(/Edge\/(\d+).(\d+)$/))D.browser="edge",D.version=M(T.userAgent,/Edge\/(\d+).(\d+)$/,2);else if(n2.RTCPeerConnection&&T.userAgent.match(/AppleWebKit\/(\d+)\./))D.browser="safari",D.version=M(T.userAgent,/AppleWebKit\/(\d+)\./,1),D.supportsUnifiedPlan=n2.RTCRtpTransceiver&&"currentDirection"in n2.RTCRtpTransceiver.prototype;else return D.browser="Not a supported browser.",D;return D}function y2(n2){return Object.prototype.toString.call(n2)==="[object Object]"}function o2(n2){return y2(n2)?Object.keys(n2).reduce(function(T,D){var W=y2(n2[D]),x2=W?o2(n2[D]):n2[D],N2=W&&!Object.keys(x2).length;return x2===void 0||N2?T:Object.assign(T,y({},D,x2))},{}):n2}function d2(n2,T,D){!T||D.has(T.id)||(D.set(T.id,T),Object.keys(T).forEach(function(W){W.endsWith("Id")?d2(n2,n2.get(T[W]),D):W.endsWith("Ids")&&T[W].forEach(function(x2){d2(n2,n2.get(x2),D)})}))}function F2(n2,T,D){var W=D?"outbound-rtp":"inbound-rtp",x2=new Map;if(T===null)return x2;var N2=[];return n2.forEach(function(Y2){Y2.type==="track"&&Y2.trackIdentifier===T.id&&N2.push(Y2)}),N2.forEach(function(Y2){n2.forEach(function(W2){W2.type===W&&W2.trackId===Y2.id&&d2(n2,W2,x2)})}),x2}},{}],16:[function(O,N,d){var f=O("sdp");function y(J){return{inboundrtp:"inbound-rtp",outboundrtp:"outbound-rtp",candidatepair:"candidate-pair",localcandidate:"local-candidate",remotecandidate:"remote-candidate"}[J.type]||J.type}function b(J,Y,k2,y2,o2){var d2=f.writeRtpDescription(J.kind,Y);if(d2+=f.writeIceParameters(J.iceGatherer.getLocalParameters()),d2+=f.writeDtlsParameters(J.dtlsTransport.getLocalParameters(),k2==="offer"?"actpass":o2||"active"),d2+="a=mid:"+J.mid+`\r +`,J.rtpSender&&J.rtpReceiver?d2+=`a=sendrecv\r +`:J.rtpSender?d2+=`a=sendonly\r +`:J.rtpReceiver?d2+=`a=recvonly\r +`:d2+=`a=inactive\r `,J.rtpSender){var F2=J.rtpSender._initialTrackId||J.rtpSender.track.id;J.rtpSender._initialTrackId=F2;var n2="msid:"+(y2?y2.id:"-")+" "+F2+`\r -`;f2+="a="+n2,f2+="a=ssrc:"+J.sendEncodingParameters[0].ssrc+" "+n2,J.sendEncodingParameters[0].rtx&&(f2+="a=ssrc:"+J.sendEncodingParameters[0].rtx.ssrc+" "+n2,f2+="a=ssrc-group:FID "+J.sendEncodingParameters[0].ssrc+" "+J.sendEncodingParameters[0].rtx.ssrc+`\r -`)}return f2+="a=ssrc:"+J.sendEncodingParameters[0].ssrc+" cname:"+f.localCName+`\r -`,J.rtpSender&&J.sendEncodingParameters[0].rtx&&(f2+="a=ssrc:"+J.sendEncodingParameters[0].rtx.ssrc+" cname:"+f.localCName+`\r -`),f2}function _(J,Y){var k2=!1;return J=JSON.parse(JSON.stringify(J)),J.filter(function(y2){if(y2&&(y2.urls||y2.url)){var s2=y2.urls||y2.url;y2.url&&!y2.urls&&console.warn("RTCIceServer.url is deprecated! Use urls instead.");var f2=typeof s2=="string";return f2&&(s2=[s2]),s2=s2.filter(function(F2){var n2=F2.indexOf("turn:")===0&&F2.indexOf("transport=udp")!==-1&&F2.indexOf("turn:[")===-1&&!k2;return n2?(k2=!0,!0):F2.indexOf("stun:")===0&&Y>=14393&&F2.indexOf("?transport=udp")===-1}),delete y2.url,y2.urls=f2?s2[0]:s2,!!s2.length}})}function M(J,Y){var k2={codecs:[],headerExtensions:[],fecMechanisms:[]},y2=function(F2,n2){F2=parseInt(F2,10);for(var T=0;T 0;N2--)this._iceGatherers.push(new J.RTCIceGatherer({iceServers:D.iceServers,gatherPolicy:D.iceTransportPolicy}));else D.iceCandidatePoolSize=0;this._config=D,this.transceivers=[],this._sdpSessionId=f.generateSessionId(),this._sdpSessionVersion=0,this._dtlsRole=void 0,this._isClosed=!1};Object.defineProperty(f2.prototype,"localDescription",{configurable:!0,get:function(){return this._localDescription}}),Object.defineProperty(f2.prototype,"remoteDescription",{configurable:!0,get:function(){return this._remoteDescription}}),f2.prototype.onicecandidate=null,f2.prototype.onaddstream=null,f2.prototype.ontrack=null,f2.prototype.onremovestream=null,f2.prototype.onsignalingstatechange=null,f2.prototype.oniceconnectionstatechange=null,f2.prototype.onconnectionstatechange=null,f2.prototype.onicegatheringstatechange=null,f2.prototype.onnegotiationneeded=null,f2.prototype.ondatachannel=null,f2.prototype._dispatchEvent=function(T,D){this._isClosed||(this.dispatchEvent(D),typeof this["on"+T]=="function"&&this["on"+T](D))},f2.prototype._emitGatheringStateChange=function(){var T=new Event("icegatheringstatechange");this._dispatchEvent("icegatheringstatechange",T)},f2.prototype.getConfiguration=function(){return this._config},f2.prototype.getLocalStreams=function(){return this.localStreams},f2.prototype.getRemoteStreams=function(){return this.remoteStreams},f2.prototype._createTransceiver=function(T,D){var W=this.transceivers.length>0,x2={track:null,iceGatherer:null,iceTransport:null,dtlsTransport:null,localCapabilities:null,remoteCapabilities:null,rtpSender:null,rtpReceiver:null,kind:T,mid:null,sendEncodingParameters:null,recvEncodingParameters:null,stream:null,associatedRemoteMediaStreams:[],wantReceive:!0};if(this.usingBundle&&W)x2.iceTransport=this.transceivers[0].iceTransport,x2.dtlsTransport=this.transceivers[0].dtlsTransport;else{var N2=this._createIceAndDtlsTransports();x2.iceTransport=N2.iceTransport,x2.dtlsTransport=N2.dtlsTransport}return D||this.transceivers.push(x2),x2},f2.prototype.addTrack=function(T,D){if(this._isClosed)throw t2("InvalidStateError","Attempted to call addTrack on a closed peerconnection.");var W=this.transceivers.find(function(Y2){return Y2.track===T});if(W)throw t2("InvalidAccessError","Track already exists.");for(var x2,N2=0;N2 =15025)T.getTracks().forEach(function(x2){D.addTrack(x2,T)});else{var W=T.clone();T.getTracks().forEach(function(x2,N2){var Y2=W.getTracks()[N2];x2.addEventListener("enabled",function(W2){Y2.enabled=W2.enabled})}),W.getTracks().forEach(function(x2){D.addTrack(x2,W)})}},f2.prototype.removeTrack=function(T){if(this._isClosed)throw t2("InvalidStateError","Attempted to call removeTrack on a closed peerconnection.");if(!(T instanceof J.RTCRtpSender))throw new TypeError("Argument 1 of RTCPeerConnection.removeTrack does not implement interface RTCRtpSender.");var D=this.transceivers.find(function(N2){return N2.rtpSender===T});if(!D)throw t2("InvalidAccessError","Sender was not created by this connection.");var W=D.stream;D.rtpSender.stop(),D.rtpSender=null,D.track=null,D.stream=null;var x2=this.transceivers.map(function(N2){return N2.stream});x2.indexOf(W)===-1&&this.localStreams.indexOf(W)>-1&&this.localStreams.splice(this.localStreams.indexOf(W),1),this._maybeFireNegotiationNeeded()},f2.prototype.removeStream=function(T){var D=this;T.getTracks().forEach(function(W){var x2=D.getSenders().find(function(N2){return N2.track===W});x2&&D.removeTrack(x2)})},f2.prototype.getSenders=function(){return this.transceivers.filter(function(T){return!!T.rtpSender}).map(function(T){return T.rtpSender})},f2.prototype.getReceivers=function(){return this.transceivers.filter(function(T){return!!T.rtpReceiver}).map(function(T){return T.rtpReceiver})},f2.prototype._createIceGatherer=function(T,D){var W=this;if(D&&T>0)return this.transceivers[0].iceGatherer;if(this._iceGatherers.length)return this._iceGatherers.shift();var x2=new J.RTCIceGatherer({iceServers:this._config.iceServers,gatherPolicy:this._config.iceTransportPolicy});return Object.defineProperty(x2,"state",{value:"new",writable:!0}),this.transceivers[T].bufferedCandidateEvents=[],this.transceivers[T].bufferCandidates=function(N2){var Y2=!N2.candidate||Object.keys(N2.candidate).length===0;x2.state=Y2?"completed":"gathering",W.transceivers[T].bufferedCandidateEvents!==null&&W.transceivers[T].bufferedCandidateEvents.push(N2)},x2.addEventListener("localcandidate",this.transceivers[T].bufferCandidates),x2},f2.prototype._gather=function(T,D){var W=this,x2=this.transceivers[D].iceGatherer;if(!x2.onlocalcandidate){var N2=this.transceivers[D].bufferedCandidateEvents;this.transceivers[D].bufferedCandidateEvents=null,x2.removeEventListener("localcandidate",this.transceivers[D].bufferCandidates),x2.onlocalcandidate=function(Y2){if(!(W.usingBundle&&D>0)){var W2=new Event("icecandidate");W2.candidate={sdpMid:T,sdpMLineIndex:D};var a3=Y2.candidate,w3=!a3||Object.keys(a3).length===0;if(w3)(x2.state==="new"||x2.state==="gathering")&&(x2.state="completed");else{x2.state==="new"&&(x2.state="gathering"),a3.component=1,a3.ufrag=x2.getLocalParameters().usernameFragment;var v3=f.writeCandidate(a3);W2.candidate=Object.assign(W2.candidate,f.parseCandidate(v3)),W2.candidate.candidate=v3,W2.candidate.toJSON=function(){return{candidate:W2.candidate.candidate,sdpMid:W2.candidate.sdpMid,sdpMLineIndex:W2.candidate.sdpMLineIndex,usernameFragment:W2.candidate.usernameFragment}}}var f3=f.getMediaSections(W._localDescription.sdp);w3?f3[W2.candidate.sdpMLineIndex]+=`a=end-of-candidates\r +`;d2+="a="+n2,d2+="a=ssrc:"+J.sendEncodingParameters[0].ssrc+" "+n2,J.sendEncodingParameters[0].rtx&&(d2+="a=ssrc:"+J.sendEncodingParameters[0].rtx.ssrc+" "+n2,d2+="a=ssrc-group:FID "+J.sendEncodingParameters[0].ssrc+" "+J.sendEncodingParameters[0].rtx.ssrc+`\r +`)}return d2+="a=ssrc:"+J.sendEncodingParameters[0].ssrc+" cname:"+f.localCName+`\r +`,J.rtpSender&&J.sendEncodingParameters[0].rtx&&(d2+="a=ssrc:"+J.sendEncodingParameters[0].rtx.ssrc+" cname:"+f.localCName+`\r +`),d2}function _(J,Y){var k2=!1;return J=JSON.parse(JSON.stringify(J)),J.filter(function(y2){if(y2&&(y2.urls||y2.url)){var o2=y2.urls||y2.url;y2.url&&!y2.urls&&console.warn("RTCIceServer.url is deprecated! Use urls instead.");var d2=typeof o2=="string";return d2&&(o2=[o2]),o2=o2.filter(function(F2){var n2=F2.indexOf("turn:")===0&&F2.indexOf("transport=udp")!==-1&&F2.indexOf("turn:[")===-1&&!k2;return n2?(k2=!0,!0):F2.indexOf("stun:")===0&&Y>=14393&&F2.indexOf("?transport=udp")===-1}),delete y2.url,y2.urls=d2?o2[0]:o2,!!o2.length}})}function M(J,Y){var k2={codecs:[],headerExtensions:[],fecMechanisms:[]},y2=function(F2,n2){F2=parseInt(F2,10);for(var T=0;T 0;N2--)this._iceGatherers.push(new J.RTCIceGatherer({iceServers:D.iceServers,gatherPolicy:D.iceTransportPolicy}));else D.iceCandidatePoolSize=0;this._config=D,this.transceivers=[],this._sdpSessionId=f.generateSessionId(),this._sdpSessionVersion=0,this._dtlsRole=void 0,this._isClosed=!1};Object.defineProperty(d2.prototype,"localDescription",{configurable:!0,get:function(){return this._localDescription}}),Object.defineProperty(d2.prototype,"remoteDescription",{configurable:!0,get:function(){return this._remoteDescription}}),d2.prototype.onicecandidate=null,d2.prototype.onaddstream=null,d2.prototype.ontrack=null,d2.prototype.onremovestream=null,d2.prototype.onsignalingstatechange=null,d2.prototype.oniceconnectionstatechange=null,d2.prototype.onconnectionstatechange=null,d2.prototype.onicegatheringstatechange=null,d2.prototype.onnegotiationneeded=null,d2.prototype.ondatachannel=null,d2.prototype._dispatchEvent=function(T,D){this._isClosed||(this.dispatchEvent(D),typeof this["on"+T]=="function"&&this["on"+T](D))},d2.prototype._emitGatheringStateChange=function(){var T=new Event("icegatheringstatechange");this._dispatchEvent("icegatheringstatechange",T)},d2.prototype.getConfiguration=function(){return this._config},d2.prototype.getLocalStreams=function(){return this.localStreams},d2.prototype.getRemoteStreams=function(){return this.remoteStreams},d2.prototype._createTransceiver=function(T,D){var W=this.transceivers.length>0,x2={track:null,iceGatherer:null,iceTransport:null,dtlsTransport:null,localCapabilities:null,remoteCapabilities:null,rtpSender:null,rtpReceiver:null,kind:T,mid:null,sendEncodingParameters:null,recvEncodingParameters:null,stream:null,associatedRemoteMediaStreams:[],wantReceive:!0};if(this.usingBundle&&W)x2.iceTransport=this.transceivers[0].iceTransport,x2.dtlsTransport=this.transceivers[0].dtlsTransport;else{var N2=this._createIceAndDtlsTransports();x2.iceTransport=N2.iceTransport,x2.dtlsTransport=N2.dtlsTransport}return D||this.transceivers.push(x2),x2},d2.prototype.addTrack=function(T,D){if(this._isClosed)throw t2("InvalidStateError","Attempted to call addTrack on a closed peerconnection.");var W=this.transceivers.find(function(Y2){return Y2.track===T});if(W)throw t2("InvalidAccessError","Track already exists.");for(var x2,N2=0;N2 =15025)T.getTracks().forEach(function(x2){D.addTrack(x2,T)});else{var W=T.clone();T.getTracks().forEach(function(x2,N2){var Y2=W.getTracks()[N2];x2.addEventListener("enabled",function(W2){Y2.enabled=W2.enabled})}),W.getTracks().forEach(function(x2){D.addTrack(x2,W)})}},d2.prototype.removeTrack=function(T){if(this._isClosed)throw t2("InvalidStateError","Attempted to call removeTrack on a closed peerconnection.");if(!(T instanceof J.RTCRtpSender))throw new TypeError("Argument 1 of RTCPeerConnection.removeTrack does not implement interface RTCRtpSender.");var D=this.transceivers.find(function(N2){return N2.rtpSender===T});if(!D)throw t2("InvalidAccessError","Sender was not created by this connection.");var W=D.stream;D.rtpSender.stop(),D.rtpSender=null,D.track=null,D.stream=null;var x2=this.transceivers.map(function(N2){return N2.stream});x2.indexOf(W)===-1&&this.localStreams.indexOf(W)>-1&&this.localStreams.splice(this.localStreams.indexOf(W),1),this._maybeFireNegotiationNeeded()},d2.prototype.removeStream=function(T){var D=this;T.getTracks().forEach(function(W){var x2=D.getSenders().find(function(N2){return N2.track===W});x2&&D.removeTrack(x2)})},d2.prototype.getSenders=function(){return this.transceivers.filter(function(T){return!!T.rtpSender}).map(function(T){return T.rtpSender})},d2.prototype.getReceivers=function(){return this.transceivers.filter(function(T){return!!T.rtpReceiver}).map(function(T){return T.rtpReceiver})},d2.prototype._createIceGatherer=function(T,D){var W=this;if(D&&T>0)return this.transceivers[0].iceGatherer;if(this._iceGatherers.length)return this._iceGatherers.shift();var x2=new J.RTCIceGatherer({iceServers:this._config.iceServers,gatherPolicy:this._config.iceTransportPolicy});return Object.defineProperty(x2,"state",{value:"new",writable:!0}),this.transceivers[T].bufferedCandidateEvents=[],this.transceivers[T].bufferCandidates=function(N2){var Y2=!N2.candidate||Object.keys(N2.candidate).length===0;x2.state=Y2?"completed":"gathering",W.transceivers[T].bufferedCandidateEvents!==null&&W.transceivers[T].bufferedCandidateEvents.push(N2)},x2.addEventListener("localcandidate",this.transceivers[T].bufferCandidates),x2},d2.prototype._gather=function(T,D){var W=this,x2=this.transceivers[D].iceGatherer;if(!x2.onlocalcandidate){var N2=this.transceivers[D].bufferedCandidateEvents;this.transceivers[D].bufferedCandidateEvents=null,x2.removeEventListener("localcandidate",this.transceivers[D].bufferCandidates),x2.onlocalcandidate=function(Y2){if(!(W.usingBundle&&D>0)){var W2=new Event("icecandidate");W2.candidate={sdpMid:T,sdpMLineIndex:D};var a3=Y2.candidate,w3=!a3||Object.keys(a3).length===0;if(w3)(x2.state==="new"||x2.state==="gathering")&&(x2.state="completed");else{x2.state==="new"&&(x2.state="gathering"),a3.component=1,a3.ufrag=x2.getLocalParameters().usernameFragment;var v3=f.writeCandidate(a3);W2.candidate=Object.assign(W2.candidate,f.parseCandidate(v3)),W2.candidate.candidate=v3,W2.candidate.toJSON=function(){return{candidate:W2.candidate.candidate,sdpMid:W2.candidate.sdpMid,sdpMLineIndex:W2.candidate.sdpMLineIndex,usernameFragment:W2.candidate.usernameFragment}}}var f3=f.getMediaSections(W._localDescription.sdp);w3?f3[W2.candidate.sdpMLineIndex]+=`a=end-of-candidates\r `:f3[W2.candidate.sdpMLineIndex]+="a="+W2.candidate.candidate+`\r -`,W._localDescription.sdp=f.getDescription(W._localDescription.sdp)+f3.join("");var v1=W.transceivers.every(function(a1){return a1.iceGatherer&&a1.iceGatherer.state==="completed"});W.iceGatheringState!=="gathering"&&(W.iceGatheringState="gathering",W._emitGatheringStateChange()),w3||W._dispatchEvent("icecandidate",W2),v1&&(W._dispatchEvent("icecandidate",new Event("icecandidate")),W.iceGatheringState="complete",W._emitGatheringStateChange())}},J.setTimeout(function(){N2.forEach(function(Y2){x2.onlocalcandidate(Y2)})},0)}},f2.prototype._createIceAndDtlsTransports=function(){var T=this,D=new J.RTCIceTransport(null);D.onicestatechange=function(){T._updateIceConnectionState(),T._updateConnectionState()};var W=new J.RTCDtlsTransport(D);return W.ondtlsstatechange=function(){T._updateConnectionState()},W.onerror=function(){Object.defineProperty(W,"state",{value:"failed",writable:!0}),T._updateConnectionState()},{iceTransport:D,dtlsTransport:W}},f2.prototype._disposeIceAndDtlsTransports=function(T){var D=this.transceivers[T].iceGatherer;D&&(delete D.onlocalcandidate,delete this.transceivers[T].iceGatherer);var W=this.transceivers[T].iceTransport;W&&(delete W.onicestatechange,delete this.transceivers[T].iceTransport);var x2=this.transceivers[T].dtlsTransport;x2&&(delete x2.ondtlsstatechange,delete x2.onerror,delete this.transceivers[T].dtlsTransport)},f2.prototype._transceive=function(T,D,W){var x2=M(T.localCapabilities,T.remoteCapabilities);D&&T.rtpSender&&(x2.encodings=T.sendEncodingParameters,x2.rtcp={cname:f.localCName,compound:T.rtcpParameters.compound},T.recvEncodingParameters.length&&(x2.rtcp.ssrc=T.recvEncodingParameters[0].ssrc),T.rtpSender.send(x2)),W&&T.rtpReceiver&&x2.codecs.length>0&&(T.kind==="video"&&T.recvEncodingParameters&&Y<15019&&T.recvEncodingParameters.forEach(function(N2){delete N2.rtx}),T.recvEncodingParameters.length?x2.encodings=T.recvEncodingParameters:x2.encodings=[{}],x2.rtcp={compound:T.rtcpParameters.compound},T.rtcpParameters.cname&&(x2.rtcp.cname=T.rtcpParameters.cname),T.sendEncodingParameters.length&&(x2.rtcp.ssrc=T.sendEncodingParameters[0].ssrc),T.rtpReceiver.receive(x2))},f2.prototype.setLocalDescription=function(T){var D=this;if(["offer","answer"].indexOf(T.type)===-1)return Promise.reject(t2("TypeError",'Unsupported type "'+T.type+'"'));if(!a2("setLocalDescription",T.type,D.signalingState)||D._isClosed)return Promise.reject(t2("InvalidStateError","Can not set local "+T.type+" in state "+D.signalingState));var W,x2;if(T.type==="offer")W=f.splitSections(T.sdp),x2=W.shift(),W.forEach(function(Y2,W2){var a3=f.parseRtpParameters(Y2);D.transceivers[W2].localCapabilities=a3}),D.transceivers.forEach(function(Y2,W2){D._gather(Y2.mid,W2)});else if(T.type==="answer"){W=f.splitSections(D._remoteDescription.sdp),x2=W.shift();var N2=f.matchPrefix(x2,"a=ice-lite").length>0;W.forEach(function(Y2,W2){var a3=D.transceivers[W2],w3=a3.iceGatherer,v3=a3.iceTransport,f3=a3.dtlsTransport,v1=a3.localCapabilities,a1=a3.remoteCapabilities,w1=f.isRejected(Y2)&&f.matchPrefix(Y2,"a=bundle-only").length===0;if(!w1&&!a3.rejected){var T1=f.getIceParameters(Y2,x2),N1=f.getDtlsParameters(Y2,x2);N2&&(N1.role="server"),(!D.usingBundle||W2===0)&&(D._gather(a3.mid,W2),v3.state==="new"&&v3.start(w3,T1,N2?"controlling":"controlled"),f3.state==="new"&&f3.start(N1));var L=M(v1,a1);D._transceive(a3,L.codecs.length>0,!1)}})}return D._localDescription={type:T.type,sdp:T.sdp},T.type==="offer"?D._updateSignalingState("have-local-offer"):D._updateSignalingState("stable"),Promise.resolve()},f2.prototype.setRemoteDescription=function(T){var D=this;if(["offer","answer"].indexOf(T.type)===-1)return Promise.reject(t2("TypeError",'Unsupported type "'+T.type+'"'));if(!a2("setRemoteDescription",T.type,D.signalingState)||D._isClosed)return Promise.reject(t2("InvalidStateError","Can not set remote "+T.type+" in state "+D.signalingState));var W={};D.remoteStreams.forEach(function(v3){W[v3.id]=v3});var x2=[],N2=f.splitSections(T.sdp),Y2=N2.shift(),W2=f.matchPrefix(Y2,"a=ice-lite").length>0,a3=f.matchPrefix(Y2,"a=group:BUNDLE ").length>0;D.usingBundle=a3;var w3=f.matchPrefix(Y2,"a=ice-options:")[0];return w3?D.canTrickleIceCandidates=w3.substr(14).split(" ").indexOf("trickle")>=0:D.canTrickleIceCandidates=!1,N2.forEach(function(v3,f3){var v1=f.splitLines(v3),a1=f.getKind(v3),w1=f.isRejected(v3)&&f.matchPrefix(v3,"a=bundle-only").length===0,T1=v1[0].substr(2).split(" ")[2],N1=f.getDirection(v3,Y2),L=f.parseMsid(v3),q=f.getMid(v3)||f.generateIdentifier();if(w1||a1==="application"&&(T1==="DTLS/SCTP"||T1==="UDP/DTLS/SCTP")){D.transceivers[f3]={mid:q,kind:a1,protocol:T1,rejected:!0};return}!w1&&D.transceivers[f3]&&D.transceivers[f3].rejected&&(D.transceivers[f3]=D._createTransceiver(a1,!0));var F,r2,p2,h2,r3,N3,K,m2,R2,q2=f.parseRtpParameters(v3),X3,p1;w1||(X3=f.getIceParameters(v3,Y2),p1=f.getDtlsParameters(v3,Y2),p1.role="client"),K=f.parseRtpEncodingParameters(v3);var B=f.parseRtcpParameters(v3),H=f.matchPrefix(v3,"a=end-of-candidates",Y2).length>0,S=f.matchPrefix(v3,"a=candidate:").map(function(J2){return f.parseCandidate(J2)}).filter(function(J2){return J2.component===1});if((T.type==="offer"||T.type==="answer")&&!w1&&a3&&f3>0&&D.transceivers[f3]&&(D._disposeIceAndDtlsTransports(f3),D.transceivers[f3].iceGatherer=D.transceivers[0].iceGatherer,D.transceivers[f3].iceTransport=D.transceivers[0].iceTransport,D.transceivers[f3].dtlsTransport=D.transceivers[0].dtlsTransport,D.transceivers[f3].rtpSender&&D.transceivers[f3].rtpSender.setTransport(D.transceivers[0].dtlsTransport),D.transceivers[f3].rtpReceiver&&D.transceivers[f3].rtpReceiver.setTransport(D.transceivers[0].dtlsTransport)),T.type==="offer"&&!w1){F=D.transceivers[f3]||D._createTransceiver(a1),F.mid=q,F.iceGatherer||(F.iceGatherer=D._createIceGatherer(f3,a3)),S.length&&F.iceTransport.state==="new"&&(H&&(!a3||f3===0)?F.iceTransport.setRemoteCandidates(S):S.forEach(function(J2){Z(F.iceTransport,J2)})),m2=J.RTCRtpReceiver.getCapabilities(a1),Y<15019&&(m2.codecs=m2.codecs.filter(function(J2){return J2.name!=="rtx"})),N3=F.sendEncodingParameters||[{ssrc:(2*f3+2)*1001}];var E=!1;if(N1==="sendrecv"||N1==="sendonly"){if(E=!F.rtpReceiver,r3=F.rtpReceiver||new J.RTCRtpReceiver(F.dtlsTransport,a1),E){var d2;R2=r3.track,L&&L.stream==="-"||(L?(W[L.stream]||(W[L.stream]=new J.MediaStream,Object.defineProperty(W[L.stream],"id",{get:function(){return L.stream}})),Object.defineProperty(R2,"id",{get:function(){return L.track}}),d2=W[L.stream]):(W.default||(W.default=new J.MediaStream),d2=W.default)),d2&&(k2(R2,d2),F.associatedRemoteMediaStreams.push(d2)),x2.push([R2,r3,d2])}}else F.rtpReceiver&&F.rtpReceiver.track&&(F.associatedRemoteMediaStreams.forEach(function(J2){var M3=J2.getTracks().find(function(u1){return u1.id===F.rtpReceiver.track.id});M3&&y2(M3,J2)}),F.associatedRemoteMediaStreams=[]);F.localCapabilities=m2,F.remoteCapabilities=q2,F.rtpReceiver=r3,F.rtcpParameters=B,F.sendEncodingParameters=N3,F.recvEncodingParameters=K,D._transceive(D.transceivers[f3],!1,E)}else if(T.type==="answer"&&!w1){F=D.transceivers[f3],r2=F.iceGatherer,p2=F.iceTransport,h2=F.dtlsTransport,r3=F.rtpReceiver,N3=F.sendEncodingParameters,m2=F.localCapabilities,D.transceivers[f3].recvEncodingParameters=K,D.transceivers[f3].remoteCapabilities=q2,D.transceivers[f3].rtcpParameters=B,S.length&&p2.state==="new"&&((W2||H)&&(!a3||f3===0)?p2.setRemoteCandidates(S):S.forEach(function(J2){Z(F.iceTransport,J2)})),(!a3||f3===0)&&(p2.state==="new"&&p2.start(r2,X3,"controlling"),h2.state==="new"&&h2.start(p1));var L2=M(F.localCapabilities,F.remoteCapabilities),U2=L2.codecs.filter(function(J2){return J2.name.toLowerCase()==="rtx"}).length;!U2&&F.sendEncodingParameters[0].rtx&&delete F.sendEncodingParameters[0].rtx,D._transceive(F,N1==="sendrecv"||N1==="recvonly",N1==="sendrecv"||N1==="sendonly"),r3&&(N1==="sendrecv"||N1==="sendonly")?(R2=r3.track,L?(W[L.stream]||(W[L.stream]=new J.MediaStream),k2(R2,W[L.stream]),x2.push([R2,r3,W[L.stream]])):(W.default||(W.default=new J.MediaStream),k2(R2,W.default),x2.push([R2,r3,W.default]))):delete F.rtpReceiver}}),D._dtlsRole===void 0&&(D._dtlsRole=T.type==="offer"?"active":"passive"),D._remoteDescription={type:T.type,sdp:T.sdp},T.type==="offer"?D._updateSignalingState("have-remote-offer"):D._updateSignalingState("stable"),Object.keys(W).forEach(function(v3){var f3=W[v3];if(f3.getTracks().length){if(D.remoteStreams.indexOf(f3)===-1){D.remoteStreams.push(f3);var v1=new Event("addstream");v1.stream=f3,J.setTimeout(function(){D._dispatchEvent("addstream",v1)})}x2.forEach(function(a1){var w1=a1[0],T1=a1[1];f3.id===a1[2].id&&s2(D,w1,T1,[f3])})}}),x2.forEach(function(v3){v3[2]||s2(D,v3[0],v3[1],[])}),J.setTimeout(function(){D&&D.transceivers&&D.transceivers.forEach(function(v3){v3.iceTransport&&v3.iceTransport.state==="new"&&v3.iceTransport.getRemoteCandidates().length>0&&(console.warn("Timeout for addRemoteCandidate. Consider sending an end-of-candidates notification"),v3.iceTransport.addRemoteCandidate({}))})},4e3),Promise.resolve()},f2.prototype.close=function(){this.transceivers.forEach(function(T){T.iceTransport&&T.iceTransport.stop(),T.dtlsTransport&&T.dtlsTransport.stop(),T.rtpSender&&T.rtpSender.stop(),T.rtpReceiver&&T.rtpReceiver.stop()}),this._isClosed=!0,this._updateSignalingState("closed")},f2.prototype._updateSignalingState=function(T){this.signalingState=T;var D=new Event("signalingstatechange");this._dispatchEvent("signalingstatechange",D)},f2.prototype._maybeFireNegotiationNeeded=function(){var T=this;this.signalingState!=="stable"||this.needNegotiation===!0||(this.needNegotiation=!0,J.setTimeout(function(){if(T.needNegotiation){T.needNegotiation=!1;var D=new Event("negotiationneeded");T._dispatchEvent("negotiationneeded",D)}},0))},f2.prototype._updateIceConnectionState=function(){var T,D={new:0,closed:0,checking:0,connected:0,completed:0,disconnected:0,failed:0};if(this.transceivers.forEach(function(x2){x2.iceTransport&&!x2.rejected&&D[x2.iceTransport.state]++}),T="new",D.failed>0?T="failed":D.checking>0?T="checking":D.disconnected>0?T="disconnected":D.new>0?T="new":D.connected>0?T="connected":D.completed>0&&(T="completed"),T!==this.iceConnectionState){this.iceConnectionState=T;var W=new Event("iceconnectionstatechange");this._dispatchEvent("iceconnectionstatechange",W)}},f2.prototype._updateConnectionState=function(){var T,D={new:0,closed:0,connecting:0,connected:0,completed:0,disconnected:0,failed:0};if(this.transceivers.forEach(function(x2){x2.iceTransport&&x2.dtlsTransport&&!x2.rejected&&(D[x2.iceTransport.state]++,D[x2.dtlsTransport.state]++)}),D.connected+=D.completed,T="new",D.failed>0?T="failed":D.connecting>0?T="connecting":D.disconnected>0?T="disconnected":D.new>0?T="new":D.connected>0&&(T="connected"),T!==this.connectionState){this.connectionState=T;var W=new Event("connectionstatechange");this._dispatchEvent("connectionstatechange",W)}},f2.prototype.createOffer=function(){var T=this;if(T._isClosed)return Promise.reject(t2("InvalidStateError","Can not call createOffer after close"));var D=T.transceivers.filter(function(W2){return W2.kind==="audio"}).length,W=T.transceivers.filter(function(W2){return W2.kind==="video"}).length,x2=arguments[0];if(x2){if(x2.mandatory||x2.optional)throw new TypeError("Legacy mandatory/optional constraints not supported.");x2.offerToReceiveAudio!==void 0&&(x2.offerToReceiveAudio===!0?D=1:x2.offerToReceiveAudio===!1?D=0:D=x2.offerToReceiveAudio),x2.offerToReceiveVideo!==void 0&&(x2.offerToReceiveVideo===!0?W=1:x2.offerToReceiveVideo===!1?W=0:W=x2.offerToReceiveVideo)}for(T.transceivers.forEach(function(W2){W2.kind==="audio"?(D--,D<0&&(W2.wantReceive=!1)):W2.kind==="video"&&(W--,W<0&&(W2.wantReceive=!1))});D>0||W>0;)D>0&&(T._createTransceiver("audio"),D--),W>0&&(T._createTransceiver("video"),W--);var N2=f.writeSessionBoilerplate(T._sdpSessionId,T._sdpSessionVersion++);T.transceivers.forEach(function(W2,a3){var w3=W2.track,v3=W2.kind,f3=W2.mid||f.generateIdentifier();W2.mid=f3,W2.iceGatherer||(W2.iceGatherer=T._createIceGatherer(a3,T.usingBundle));var v1=J.RTCRtpSender.getCapabilities(v3);Y<15019&&(v1.codecs=v1.codecs.filter(function(w1){return w1.name!=="rtx"})),v1.codecs.forEach(function(w1){w1.name==="H264"&&w1.parameters["level-asymmetry-allowed"]===void 0&&(w1.parameters["level-asymmetry-allowed"]="1"),W2.remoteCapabilities&&W2.remoteCapabilities.codecs&&W2.remoteCapabilities.codecs.forEach(function(T1){w1.name.toLowerCase()===T1.name.toLowerCase()&&w1.clockRate===T1.clockRate&&(w1.preferredPayloadType=T1.payloadType)})}),v1.headerExtensions.forEach(function(w1){var T1=W2.remoteCapabilities&&W2.remoteCapabilities.headerExtensions||[];T1.forEach(function(N1){w1.uri===N1.uri&&(w1.id=N1.id)})});var a1=W2.sendEncodingParameters||[{ssrc:(2*a3+1)*1001}];w3&&Y>=15019&&v3==="video"&&!a1[0].rtx&&(a1[0].rtx={ssrc:a1[0].ssrc+1}),W2.wantReceive&&(W2.rtpReceiver=new J.RTCRtpReceiver(W2.dtlsTransport,v3)),W2.localCapabilities=v1,W2.sendEncodingParameters=a1}),T._config.bundlePolicy!=="max-compat"&&(N2+="a=group:BUNDLE "+T.transceivers.map(function(W2){return W2.mid}).join(" ")+`\r +`,W._localDescription.sdp=f.getDescription(W._localDescription.sdp)+f3.join("");var v1=W.transceivers.every(function(a1){return a1.iceGatherer&&a1.iceGatherer.state==="completed"});W.iceGatheringState!=="gathering"&&(W.iceGatheringState="gathering",W._emitGatheringStateChange()),w3||W._dispatchEvent("icecandidate",W2),v1&&(W._dispatchEvent("icecandidate",new Event("icecandidate")),W.iceGatheringState="complete",W._emitGatheringStateChange())}},J.setTimeout(function(){N2.forEach(function(Y2){x2.onlocalcandidate(Y2)})},0)}},d2.prototype._createIceAndDtlsTransports=function(){var T=this,D=new J.RTCIceTransport(null);D.onicestatechange=function(){T._updateIceConnectionState(),T._updateConnectionState()};var W=new J.RTCDtlsTransport(D);return W.ondtlsstatechange=function(){T._updateConnectionState()},W.onerror=function(){Object.defineProperty(W,"state",{value:"failed",writable:!0}),T._updateConnectionState()},{iceTransport:D,dtlsTransport:W}},d2.prototype._disposeIceAndDtlsTransports=function(T){var D=this.transceivers[T].iceGatherer;D&&(delete D.onlocalcandidate,delete this.transceivers[T].iceGatherer);var W=this.transceivers[T].iceTransport;W&&(delete W.onicestatechange,delete this.transceivers[T].iceTransport);var x2=this.transceivers[T].dtlsTransport;x2&&(delete x2.ondtlsstatechange,delete x2.onerror,delete this.transceivers[T].dtlsTransport)},d2.prototype._transceive=function(T,D,W){var x2=M(T.localCapabilities,T.remoteCapabilities);D&&T.rtpSender&&(x2.encodings=T.sendEncodingParameters,x2.rtcp={cname:f.localCName,compound:T.rtcpParameters.compound},T.recvEncodingParameters.length&&(x2.rtcp.ssrc=T.recvEncodingParameters[0].ssrc),T.rtpSender.send(x2)),W&&T.rtpReceiver&&x2.codecs.length>0&&(T.kind==="video"&&T.recvEncodingParameters&&Y<15019&&T.recvEncodingParameters.forEach(function(N2){delete N2.rtx}),T.recvEncodingParameters.length?x2.encodings=T.recvEncodingParameters:x2.encodings=[{}],x2.rtcp={compound:T.rtcpParameters.compound},T.rtcpParameters.cname&&(x2.rtcp.cname=T.rtcpParameters.cname),T.sendEncodingParameters.length&&(x2.rtcp.ssrc=T.sendEncodingParameters[0].ssrc),T.rtpReceiver.receive(x2))},d2.prototype.setLocalDescription=function(T){var D=this;if(["offer","answer"].indexOf(T.type)===-1)return Promise.reject(t2("TypeError",'Unsupported type "'+T.type+'"'));if(!a2("setLocalDescription",T.type,D.signalingState)||D._isClosed)return Promise.reject(t2("InvalidStateError","Can not set local "+T.type+" in state "+D.signalingState));var W,x2;if(T.type==="offer")W=f.splitSections(T.sdp),x2=W.shift(),W.forEach(function(Y2,W2){var a3=f.parseRtpParameters(Y2);D.transceivers[W2].localCapabilities=a3}),D.transceivers.forEach(function(Y2,W2){D._gather(Y2.mid,W2)});else if(T.type==="answer"){W=f.splitSections(D._remoteDescription.sdp),x2=W.shift();var N2=f.matchPrefix(x2,"a=ice-lite").length>0;W.forEach(function(Y2,W2){var a3=D.transceivers[W2],w3=a3.iceGatherer,v3=a3.iceTransport,f3=a3.dtlsTransport,v1=a3.localCapabilities,a1=a3.remoteCapabilities,w1=f.isRejected(Y2)&&f.matchPrefix(Y2,"a=bundle-only").length===0;if(!w1&&!a3.rejected){var T1=f.getIceParameters(Y2,x2),N1=f.getDtlsParameters(Y2,x2);N2&&(N1.role="server"),(!D.usingBundle||W2===0)&&(D._gather(a3.mid,W2),v3.state==="new"&&v3.start(w3,T1,N2?"controlling":"controlled"),f3.state==="new"&&f3.start(N1));var L=M(v1,a1);D._transceive(a3,L.codecs.length>0,!1)}})}return D._localDescription={type:T.type,sdp:T.sdp},T.type==="offer"?D._updateSignalingState("have-local-offer"):D._updateSignalingState("stable"),Promise.resolve()},d2.prototype.setRemoteDescription=function(T){var D=this;if(["offer","answer"].indexOf(T.type)===-1)return Promise.reject(t2("TypeError",'Unsupported type "'+T.type+'"'));if(!a2("setRemoteDescription",T.type,D.signalingState)||D._isClosed)return Promise.reject(t2("InvalidStateError","Can not set remote "+T.type+" in state "+D.signalingState));var W={};D.remoteStreams.forEach(function(v3){W[v3.id]=v3});var x2=[],N2=f.splitSections(T.sdp),Y2=N2.shift(),W2=f.matchPrefix(Y2,"a=ice-lite").length>0,a3=f.matchPrefix(Y2,"a=group:BUNDLE ").length>0;D.usingBundle=a3;var w3=f.matchPrefix(Y2,"a=ice-options:")[0];return w3?D.canTrickleIceCandidates=w3.substr(14).split(" ").indexOf("trickle")>=0:D.canTrickleIceCandidates=!1,N2.forEach(function(v3,f3){var v1=f.splitLines(v3),a1=f.getKind(v3),w1=f.isRejected(v3)&&f.matchPrefix(v3,"a=bundle-only").length===0,T1=v1[0].substr(2).split(" ")[2],N1=f.getDirection(v3,Y2),L=f.parseMsid(v3),q=f.getMid(v3)||f.generateIdentifier();if(w1||a1==="application"&&(T1==="DTLS/SCTP"||T1==="UDP/DTLS/SCTP")){D.transceivers[f3]={mid:q,kind:a1,protocol:T1,rejected:!0};return}!w1&&D.transceivers[f3]&&D.transceivers[f3].rejected&&(D.transceivers[f3]=D._createTransceiver(a1,!0));var F,r2,p2,f2,r3,N3,K,m2,R2,q2=f.parseRtpParameters(v3),X3,p1;w1||(X3=f.getIceParameters(v3,Y2),p1=f.getDtlsParameters(v3,Y2),p1.role="client"),K=f.parseRtpEncodingParameters(v3);var B=f.parseRtcpParameters(v3),H=f.matchPrefix(v3,"a=end-of-candidates",Y2).length>0,S=f.matchPrefix(v3,"a=candidate:").map(function(J2){return f.parseCandidate(J2)}).filter(function(J2){return J2.component===1});if((T.type==="offer"||T.type==="answer")&&!w1&&a3&&f3>0&&D.transceivers[f3]&&(D._disposeIceAndDtlsTransports(f3),D.transceivers[f3].iceGatherer=D.transceivers[0].iceGatherer,D.transceivers[f3].iceTransport=D.transceivers[0].iceTransport,D.transceivers[f3].dtlsTransport=D.transceivers[0].dtlsTransport,D.transceivers[f3].rtpSender&&D.transceivers[f3].rtpSender.setTransport(D.transceivers[0].dtlsTransport),D.transceivers[f3].rtpReceiver&&D.transceivers[f3].rtpReceiver.setTransport(D.transceivers[0].dtlsTransport)),T.type==="offer"&&!w1){F=D.transceivers[f3]||D._createTransceiver(a1),F.mid=q,F.iceGatherer||(F.iceGatherer=D._createIceGatherer(f3,a3)),S.length&&F.iceTransport.state==="new"&&(H&&(!a3||f3===0)?F.iceTransport.setRemoteCandidates(S):S.forEach(function(J2){Z(F.iceTransport,J2)})),m2=J.RTCRtpReceiver.getCapabilities(a1),Y<15019&&(m2.codecs=m2.codecs.filter(function(J2){return J2.name!=="rtx"})),N3=F.sendEncodingParameters||[{ssrc:(2*f3+2)*1001}];var E=!1;if(N1==="sendrecv"||N1==="sendonly"){if(E=!F.rtpReceiver,r3=F.rtpReceiver||new J.RTCRtpReceiver(F.dtlsTransport,a1),E){var c2;R2=r3.track,L&&L.stream==="-"||(L?(W[L.stream]||(W[L.stream]=new J.MediaStream,Object.defineProperty(W[L.stream],"id",{get:function(){return L.stream}})),Object.defineProperty(R2,"id",{get:function(){return L.track}}),c2=W[L.stream]):(W.default||(W.default=new J.MediaStream),c2=W.default)),c2&&(k2(R2,c2),F.associatedRemoteMediaStreams.push(c2)),x2.push([R2,r3,c2])}}else F.rtpReceiver&&F.rtpReceiver.track&&(F.associatedRemoteMediaStreams.forEach(function(J2){var M3=J2.getTracks().find(function(u1){return u1.id===F.rtpReceiver.track.id});M3&&y2(M3,J2)}),F.associatedRemoteMediaStreams=[]);F.localCapabilities=m2,F.remoteCapabilities=q2,F.rtpReceiver=r3,F.rtcpParameters=B,F.sendEncodingParameters=N3,F.recvEncodingParameters=K,D._transceive(D.transceivers[f3],!1,E)}else if(T.type==="answer"&&!w1){F=D.transceivers[f3],r2=F.iceGatherer,p2=F.iceTransport,f2=F.dtlsTransport,r3=F.rtpReceiver,N3=F.sendEncodingParameters,m2=F.localCapabilities,D.transceivers[f3].recvEncodingParameters=K,D.transceivers[f3].remoteCapabilities=q2,D.transceivers[f3].rtcpParameters=B,S.length&&p2.state==="new"&&((W2||H)&&(!a3||f3===0)?p2.setRemoteCandidates(S):S.forEach(function(J2){Z(F.iceTransport,J2)})),(!a3||f3===0)&&(p2.state==="new"&&p2.start(r2,X3,"controlling"),f2.state==="new"&&f2.start(p1));var L2=M(F.localCapabilities,F.remoteCapabilities),U2=L2.codecs.filter(function(J2){return J2.name.toLowerCase()==="rtx"}).length;!U2&&F.sendEncodingParameters[0].rtx&&delete F.sendEncodingParameters[0].rtx,D._transceive(F,N1==="sendrecv"||N1==="recvonly",N1==="sendrecv"||N1==="sendonly"),r3&&(N1==="sendrecv"||N1==="sendonly")?(R2=r3.track,L?(W[L.stream]||(W[L.stream]=new J.MediaStream),k2(R2,W[L.stream]),x2.push([R2,r3,W[L.stream]])):(W.default||(W.default=new J.MediaStream),k2(R2,W.default),x2.push([R2,r3,W.default]))):delete F.rtpReceiver}}),D._dtlsRole===void 0&&(D._dtlsRole=T.type==="offer"?"active":"passive"),D._remoteDescription={type:T.type,sdp:T.sdp},T.type==="offer"?D._updateSignalingState("have-remote-offer"):D._updateSignalingState("stable"),Object.keys(W).forEach(function(v3){var f3=W[v3];if(f3.getTracks().length){if(D.remoteStreams.indexOf(f3)===-1){D.remoteStreams.push(f3);var v1=new Event("addstream");v1.stream=f3,J.setTimeout(function(){D._dispatchEvent("addstream",v1)})}x2.forEach(function(a1){var w1=a1[0],T1=a1[1];f3.id===a1[2].id&&o2(D,w1,T1,[f3])})}}),x2.forEach(function(v3){v3[2]||o2(D,v3[0],v3[1],[])}),J.setTimeout(function(){D&&D.transceivers&&D.transceivers.forEach(function(v3){v3.iceTransport&&v3.iceTransport.state==="new"&&v3.iceTransport.getRemoteCandidates().length>0&&(console.warn("Timeout for addRemoteCandidate. Consider sending an end-of-candidates notification"),v3.iceTransport.addRemoteCandidate({}))})},4e3),Promise.resolve()},d2.prototype.close=function(){this.transceivers.forEach(function(T){T.iceTransport&&T.iceTransport.stop(),T.dtlsTransport&&T.dtlsTransport.stop(),T.rtpSender&&T.rtpSender.stop(),T.rtpReceiver&&T.rtpReceiver.stop()}),this._isClosed=!0,this._updateSignalingState("closed")},d2.prototype._updateSignalingState=function(T){this.signalingState=T;var D=new Event("signalingstatechange");this._dispatchEvent("signalingstatechange",D)},d2.prototype._maybeFireNegotiationNeeded=function(){var T=this;this.signalingState!=="stable"||this.needNegotiation===!0||(this.needNegotiation=!0,J.setTimeout(function(){if(T.needNegotiation){T.needNegotiation=!1;var D=new Event("negotiationneeded");T._dispatchEvent("negotiationneeded",D)}},0))},d2.prototype._updateIceConnectionState=function(){var T,D={new:0,closed:0,checking:0,connected:0,completed:0,disconnected:0,failed:0};if(this.transceivers.forEach(function(x2){x2.iceTransport&&!x2.rejected&&D[x2.iceTransport.state]++}),T="new",D.failed>0?T="failed":D.checking>0?T="checking":D.disconnected>0?T="disconnected":D.new>0?T="new":D.connected>0?T="connected":D.completed>0&&(T="completed"),T!==this.iceConnectionState){this.iceConnectionState=T;var W=new Event("iceconnectionstatechange");this._dispatchEvent("iceconnectionstatechange",W)}},d2.prototype._updateConnectionState=function(){var T,D={new:0,closed:0,connecting:0,connected:0,completed:0,disconnected:0,failed:0};if(this.transceivers.forEach(function(x2){x2.iceTransport&&x2.dtlsTransport&&!x2.rejected&&(D[x2.iceTransport.state]++,D[x2.dtlsTransport.state]++)}),D.connected+=D.completed,T="new",D.failed>0?T="failed":D.connecting>0?T="connecting":D.disconnected>0?T="disconnected":D.new>0?T="new":D.connected>0&&(T="connected"),T!==this.connectionState){this.connectionState=T;var W=new Event("connectionstatechange");this._dispatchEvent("connectionstatechange",W)}},d2.prototype.createOffer=function(){var T=this;if(T._isClosed)return Promise.reject(t2("InvalidStateError","Can not call createOffer after close"));var D=T.transceivers.filter(function(W2){return W2.kind==="audio"}).length,W=T.transceivers.filter(function(W2){return W2.kind==="video"}).length,x2=arguments[0];if(x2){if(x2.mandatory||x2.optional)throw new TypeError("Legacy mandatory/optional constraints not supported.");x2.offerToReceiveAudio!==void 0&&(x2.offerToReceiveAudio===!0?D=1:x2.offerToReceiveAudio===!1?D=0:D=x2.offerToReceiveAudio),x2.offerToReceiveVideo!==void 0&&(x2.offerToReceiveVideo===!0?W=1:x2.offerToReceiveVideo===!1?W=0:W=x2.offerToReceiveVideo)}for(T.transceivers.forEach(function(W2){W2.kind==="audio"?(D--,D<0&&(W2.wantReceive=!1)):W2.kind==="video"&&(W--,W<0&&(W2.wantReceive=!1))});D>0||W>0;)D>0&&(T._createTransceiver("audio"),D--),W>0&&(T._createTransceiver("video"),W--);var N2=f.writeSessionBoilerplate(T._sdpSessionId,T._sdpSessionVersion++);T.transceivers.forEach(function(W2,a3){var w3=W2.track,v3=W2.kind,f3=W2.mid||f.generateIdentifier();W2.mid=f3,W2.iceGatherer||(W2.iceGatherer=T._createIceGatherer(a3,T.usingBundle));var v1=J.RTCRtpSender.getCapabilities(v3);Y<15019&&(v1.codecs=v1.codecs.filter(function(w1){return w1.name!=="rtx"})),v1.codecs.forEach(function(w1){w1.name==="H264"&&w1.parameters["level-asymmetry-allowed"]===void 0&&(w1.parameters["level-asymmetry-allowed"]="1"),W2.remoteCapabilities&&W2.remoteCapabilities.codecs&&W2.remoteCapabilities.codecs.forEach(function(T1){w1.name.toLowerCase()===T1.name.toLowerCase()&&w1.clockRate===T1.clockRate&&(w1.preferredPayloadType=T1.payloadType)})}),v1.headerExtensions.forEach(function(w1){var T1=W2.remoteCapabilities&&W2.remoteCapabilities.headerExtensions||[];T1.forEach(function(N1){w1.uri===N1.uri&&(w1.id=N1.id)})});var a1=W2.sendEncodingParameters||[{ssrc:(2*a3+1)*1001}];w3&&Y>=15019&&v3==="video"&&!a1[0].rtx&&(a1[0].rtx={ssrc:a1[0].ssrc+1}),W2.wantReceive&&(W2.rtpReceiver=new J.RTCRtpReceiver(W2.dtlsTransport,v3)),W2.localCapabilities=v1,W2.sendEncodingParameters=a1}),T._config.bundlePolicy!=="max-compat"&&(N2+="a=group:BUNDLE "+T.transceivers.map(function(W2){return W2.mid}).join(" ")+`\r `),N2+=`a=ice-options:trickle\r `,T.transceivers.forEach(function(W2,a3){N2+=b(W2,W2.localCapabilities,"offer",W2.stream,T._dtlsRole),N2+=`a=rtcp-rsize\r `,W2.iceGatherer&&T.iceGatheringState!=="new"&&(a3===0||!T.usingBundle)&&(W2.iceGatherer.getLocalCandidates().forEach(function(w3){w3.component=1,N2+="a="+f.writeCandidate(w3)+`\r `}),W2.iceGatherer.state==="completed"&&(N2+=`a=end-of-candidates\r -`))});var Y2=new J.RTCSessionDescription({type:"offer",sdp:N2});return Promise.resolve(Y2)},f2.prototype.createAnswer=function(){var T=this;if(T._isClosed)return Promise.reject(t2("InvalidStateError","Can not call createAnswer after close"));if(!(T.signalingState==="have-remote-offer"||T.signalingState==="have-local-pranswer"))return Promise.reject(t2("InvalidStateError","Can not call createAnswer in signalingState "+T.signalingState));var D=f.writeSessionBoilerplate(T._sdpSessionId,T._sdpSessionVersion++);T.usingBundle&&(D+="a=group:BUNDLE "+T.transceivers.map(function(N2){return N2.mid}).join(" ")+`\r +`))});var Y2=new J.RTCSessionDescription({type:"offer",sdp:N2});return Promise.resolve(Y2)},d2.prototype.createAnswer=function(){var T=this;if(T._isClosed)return Promise.reject(t2("InvalidStateError","Can not call createAnswer after close"));if(!(T.signalingState==="have-remote-offer"||T.signalingState==="have-local-pranswer"))return Promise.reject(t2("InvalidStateError","Can not call createAnswer in signalingState "+T.signalingState));var D=f.writeSessionBoilerplate(T._sdpSessionId,T._sdpSessionVersion++);T.usingBundle&&(D+="a=group:BUNDLE "+T.transceivers.map(function(N2){return N2.mid}).join(" ")+`\r `),D+=`a=ice-options:trickle\r `;var W=f.getMediaSections(T._remoteDescription.sdp).length;T.transceivers.forEach(function(N2,Y2){if(!(Y2+1>W)){if(N2.rejected){N2.kind==="application"?N2.protocol==="DTLS/SCTP"?D+=`m=application 0 DTLS/SCTP 5000\r `:D+="m=application 0 "+N2.protocol+` webrtc-datachannel\r @@ -499,9 +499,9 @@ a=rtpmap:120 VP8/90000\r a=inactive\r a=mid:`+N2.mid+`\r `;return}if(N2.stream){var W2;N2.kind==="audio"?W2=N2.stream.getAudioTracks()[0]:N2.kind==="video"&&(W2=N2.stream.getVideoTracks()[0]),W2&&Y>=15019&&N2.kind==="video"&&!N2.sendEncodingParameters[0].rtx&&(N2.sendEncodingParameters[0].rtx={ssrc:N2.sendEncodingParameters[0].ssrc+1})}var a3=M(N2.localCapabilities,N2.remoteCapabilities),w3=a3.codecs.filter(function(v3){return v3.name.toLowerCase()==="rtx"}).length;!w3&&N2.sendEncodingParameters[0].rtx&&delete N2.sendEncodingParameters[0].rtx,D+=b(N2,a3,"answer",N2.stream,T._dtlsRole),N2.rtcpParameters&&N2.rtcpParameters.reducedSize&&(D+=`a=rtcp-rsize\r -`)}});var x2=new J.RTCSessionDescription({type:"answer",sdp:D});return Promise.resolve(x2)},f2.prototype.addIceCandidate=function(T){var D=this,W;return T&&!(T.sdpMLineIndex!==void 0||T.sdpMid)?Promise.reject(new TypeError("sdpMLineIndex or sdpMid required")):new Promise(function(x2,N2){if(D._remoteDescription)if(!T||T.candidate==="")for(var Y2=0;Y2 0?f.parseCandidate(T.candidate):{};if(v3.protocol==="tcp"&&(v3.port===0||v3.port===9)||v3.component&&v3.component!==1)return x2();if((W2===0||W2>0&&w3.iceTransport!==D.transceivers[0].iceTransport)&&!Z(w3.iceTransport,v3))return N2(t2("OperationError","Can not add ICE candidate"));var f3=T.candidate.trim();f3.indexOf("a=")===0&&(f3=f3.substr(2)),W=f.getMediaSections(D._remoteDescription.sdp),W[W2]+="a="+(v3.type?f3:"end-of-candidates")+`\r -`,D._remoteDescription.sdp=f.getDescription(D._remoteDescription.sdp)+W.join("")}else return N2(t2("OperationError","Can not add ICE candidate"))}else return N2(t2("InvalidStateError","Can not add ICE candidate without a remote description"));x2()})},f2.prototype.getStats=function(T){if(T&&T instanceof J.MediaStreamTrack){var D=null;if(this.transceivers.forEach(function(x2){x2.rtpSender&&x2.rtpSender.track===T?D=x2.rtpSender:x2.rtpReceiver&&x2.rtpReceiver.track===T&&(D=x2.rtpReceiver)}),!D)throw t2("InvalidAccessError","Invalid selector.");return D.getStats()}var W=[];return this.transceivers.forEach(function(x2){["rtpSender","rtpReceiver","iceGatherer","iceTransport","dtlsTransport"].forEach(function(N2){x2[N2]&&W.push(x2[N2].getStats())})}),Promise.all(W).then(function(x2){var N2=new Map;return x2.forEach(function(Y2){Y2.forEach(function(W2){N2.set(W2.id,W2)})}),N2})};var F2=["RTCRtpSender","RTCRtpReceiver","RTCIceGatherer","RTCIceTransport","RTCDtlsTransport"];F2.forEach(function(T){var D=J[T];if(D&&D.prototype&&D.prototype.getStats){var W=D.prototype.getStats;D.prototype.getStats=function(){return W.apply(this).then(function(x2){var N2=new Map;return Object.keys(x2).forEach(function(Y2){x2[Y2].type=y(x2[Y2]),N2.set(Y2,x2[Y2])}),N2})}}});var n2=["createOffer","createAnswer"];return n2.forEach(function(T){var D=f2.prototype[T];f2.prototype[T]=function(){var W=arguments;return typeof W[0]=="function"||typeof W[1]=="function"?D.apply(this,[arguments[2]]).then(function(x2){typeof W[0]=="function"&&W[0].apply(null,[x2])},function(x2){typeof W[1]=="function"&&W[1].apply(null,[x2])}):D.apply(this,arguments)}}),n2=["setLocalDescription","setRemoteDescription","addIceCandidate"],n2.forEach(function(T){var D=f2.prototype[T];f2.prototype[T]=function(){var W=arguments;return typeof W[1]=="function"||typeof W[2]=="function"?D.apply(this,arguments).then(function(){typeof W[1]=="function"&&W[1].apply(null)},function(x2){typeof W[2]=="function"&&W[2].apply(null,[x2])}):D.apply(this,arguments)}}),["getStats"].forEach(function(T){var D=f2.prototype[T];f2.prototype[T]=function(){var W=arguments;return typeof W[1]=="function"?D.apply(this,arguments).then(function(){typeof W[1]=="function"&&W[1].apply(null)}):D.apply(this,arguments)}}),f2}},{sdp:17}],17:[function(O,N,d){var f={};f.generateIdentifier=function(){return Math.random().toString(36).substr(2,10)},f.localCName=f.generateIdentifier(),f.splitLines=function(y){return y.trim().split(` +`,D._remoteDescription.sdp=f.getDescription(D._remoteDescription.sdp)+W.join("")}else return N2(t2("OperationError","Can not add ICE candidate"))}else return N2(t2("InvalidStateError","Can not add ICE candidate without a remote description"));x2()})},d2.prototype.getStats=function(T){if(T&&T instanceof J.MediaStreamTrack){var D=null;if(this.transceivers.forEach(function(x2){x2.rtpSender&&x2.rtpSender.track===T?D=x2.rtpSender:x2.rtpReceiver&&x2.rtpReceiver.track===T&&(D=x2.rtpReceiver)}),!D)throw t2("InvalidAccessError","Invalid selector.");return D.getStats()}var W=[];return this.transceivers.forEach(function(x2){["rtpSender","rtpReceiver","iceGatherer","iceTransport","dtlsTransport"].forEach(function(N2){x2[N2]&&W.push(x2[N2].getStats())})}),Promise.all(W).then(function(x2){var N2=new Map;return x2.forEach(function(Y2){Y2.forEach(function(W2){N2.set(W2.id,W2)})}),N2})};var F2=["RTCRtpSender","RTCRtpReceiver","RTCIceGatherer","RTCIceTransport","RTCDtlsTransport"];F2.forEach(function(T){var D=J[T];if(D&&D.prototype&&D.prototype.getStats){var W=D.prototype.getStats;D.prototype.getStats=function(){return W.apply(this).then(function(x2){var N2=new Map;return Object.keys(x2).forEach(function(Y2){x2[Y2].type=y(x2[Y2]),N2.set(Y2,x2[Y2])}),N2})}}});var n2=["createOffer","createAnswer"];return n2.forEach(function(T){var D=d2.prototype[T];d2.prototype[T]=function(){var W=arguments;return typeof W[0]=="function"||typeof W[1]=="function"?D.apply(this,[arguments[2]]).then(function(x2){typeof W[0]=="function"&&W[0].apply(null,[x2])},function(x2){typeof W[1]=="function"&&W[1].apply(null,[x2])}):D.apply(this,arguments)}}),n2=["setLocalDescription","setRemoteDescription","addIceCandidate"],n2.forEach(function(T){var D=d2.prototype[T];d2.prototype[T]=function(){var W=arguments;return typeof W[1]=="function"||typeof W[2]=="function"?D.apply(this,arguments).then(function(){typeof W[1]=="function"&&W[1].apply(null)},function(x2){typeof W[2]=="function"&&W[2].apply(null,[x2])}):D.apply(this,arguments)}}),["getStats"].forEach(function(T){var D=d2.prototype[T];d2.prototype[T]=function(){var W=arguments;return typeof W[1]=="function"?D.apply(this,arguments).then(function(){typeof W[1]=="function"&&W[1].apply(null)}):D.apply(this,arguments)}}),d2}},{sdp:17}],17:[function(O,N,d){var f={};f.generateIdentifier=function(){return Math.random().toString(36).substr(2,10)},f.localCName=f.generateIdentifier(),f.splitLines=function(y){return y.trim().split(` `).map(function(b){return b.trim()})},f.splitSections=function(y){var b=y.split(` m=`);return b.map(function(_,M){return(M>0?"m="+_:_).trim()+`\r `})},f.getDescription=function(y){var b=f.splitSections(y);return b&&b[0]},f.getMediaSections=function(y){var b=f.splitSections(y);return b.shift(),b},f.matchPrefix=function(y,b){return f.splitLines(y).filter(function(_){return _.indexOf(b)===0})},f.parseCandidate=function(y){var b;y.indexOf("a=candidate:")===0?b=y.substring(12).split(" "):b=y.substring(10).split(" ");for(var _={foundation:b[0],component:parseInt(b[1],10),protocol:b[2].toLowerCase(),priority:parseInt(b[3],10),ip:b[4],address:b[4],port:parseInt(b[5],10),type:b[7]},M=8;M M&&(M=a2.maxptime)}),M>0&&(_+="a=maxptime:"+M+`\r `),_+=`a=rtcp-mux\r -`,b.headerExtensions&&b.headerExtensions.forEach(function(a2){_+=f.writeExtmap(a2)}),_},f.parseRtpEncodingParameters=function(y){var b=[],_=f.parseRtpParameters(y),M=_.fecMechanisms.indexOf("RED")!==-1,a2=_.fecMechanisms.indexOf("ULPFEC")!==-1,Z=f.matchPrefix(y,"a=ssrc:").map(function(y2){return f.parseSsrcMedia(y2)}).filter(function(y2){return y2.attribute==="cname"}),t2=Z.length>0&&Z[0].ssrc,J,Y=f.matchPrefix(y,"a=ssrc-group:FID").map(function(y2){var s2=y2.substr(17).split(" ");return s2.map(function(f2){return parseInt(f2,10)})});Y.length>0&&Y[0].length>1&&Y[0][0]===t2&&(J=Y[0][1]),_.codecs.forEach(function(y2){if(y2.name.toUpperCase()==="RTX"&&y2.parameters.apt){var s2={ssrc:t2,codecPayloadType:parseInt(y2.parameters.apt,10)};t2&&J&&(s2.rtx={ssrc:J}),b.push(s2),M&&(s2=JSON.parse(JSON.stringify(s2)),s2.fec={ssrc:t2,mechanism:a2?"red+ulpfec":"red"},b.push(s2))}}),b.length===0&&t2&&b.push({ssrc:t2});var k2=f.matchPrefix(y,"b=");return k2.length&&(k2[0].indexOf("b=TIAS:")===0?k2=parseInt(k2[0].substr(7),10):k2[0].indexOf("b=AS:")===0?k2=parseInt(k2[0].substr(5),10)*1e3*.95-50*40*8:k2=void 0,b.forEach(function(y2){y2.maxBitrate=k2})),b},f.parseRtcpParameters=function(y){var b={},_=f.matchPrefix(y,"a=ssrc:").map(function(Z){return f.parseSsrcMedia(Z)}).filter(function(Z){return Z.attribute==="cname"})[0];_&&(b.cname=_.value,b.ssrc=_.ssrc);var M=f.matchPrefix(y,"a=rtcp-rsize");b.reducedSize=M.length>0,b.compound=M.length===0;var a2=f.matchPrefix(y,"a=rtcp-mux");return b.mux=a2.length>0,b},f.parseMsid=function(y){var b,_=f.matchPrefix(y,"a=msid:");if(_.length===1)return b=_[0].substr(7).split(" "),{stream:b[0],track:b[1]};var M=f.matchPrefix(y,"a=ssrc:").map(function(a2){return f.parseSsrcMedia(a2)}).filter(function(a2){return a2.attribute==="msid"});if(M.length>0)return b=M[0].value.split(" "),{stream:b[0],track:b[1]}},f.parseSctpDescription=function(y){var b=f.parseMLine(y),_=f.matchPrefix(y,"a=max-message-size:"),M;_.length>0&&(M=parseInt(_[0].substr(19),10)),isNaN(M)&&(M=65536);var a2=f.matchPrefix(y,"a=sctp-port:");if(a2.length>0)return{port:parseInt(a2[0].substr(12),10),protocol:b.fmt,maxMessageSize:M};var Z=f.matchPrefix(y,"a=sctpmap:");if(Z.length>0){var t2=f.matchPrefix(y,"a=sctpmap:")[0].substr(10).split(" ");return{port:parseInt(t2[0],10),protocol:t2[1],maxMessageSize:M}}},f.writeSctpDescription=function(y,b){var _=[];return y.protocol!=="DTLS/SCTP"?_=["m="+y.kind+" 9 "+y.protocol+" "+b.protocol+`\r +`,b.headerExtensions&&b.headerExtensions.forEach(function(a2){_+=f.writeExtmap(a2)}),_},f.parseRtpEncodingParameters=function(y){var b=[],_=f.parseRtpParameters(y),M=_.fecMechanisms.indexOf("RED")!==-1,a2=_.fecMechanisms.indexOf("ULPFEC")!==-1,Z=f.matchPrefix(y,"a=ssrc:").map(function(y2){return f.parseSsrcMedia(y2)}).filter(function(y2){return y2.attribute==="cname"}),t2=Z.length>0&&Z[0].ssrc,J,Y=f.matchPrefix(y,"a=ssrc-group:FID").map(function(y2){var o2=y2.substr(17).split(" ");return o2.map(function(d2){return parseInt(d2,10)})});Y.length>0&&Y[0].length>1&&Y[0][0]===t2&&(J=Y[0][1]),_.codecs.forEach(function(y2){if(y2.name.toUpperCase()==="RTX"&&y2.parameters.apt){var o2={ssrc:t2,codecPayloadType:parseInt(y2.parameters.apt,10)};t2&&J&&(o2.rtx={ssrc:J}),b.push(o2),M&&(o2=JSON.parse(JSON.stringify(o2)),o2.fec={ssrc:t2,mechanism:a2?"red+ulpfec":"red"},b.push(o2))}}),b.length===0&&t2&&b.push({ssrc:t2});var k2=f.matchPrefix(y,"b=");return k2.length&&(k2[0].indexOf("b=TIAS:")===0?k2=parseInt(k2[0].substr(7),10):k2[0].indexOf("b=AS:")===0?k2=parseInt(k2[0].substr(5),10)*1e3*.95-50*40*8:k2=void 0,b.forEach(function(y2){y2.maxBitrate=k2})),b},f.parseRtcpParameters=function(y){var b={},_=f.matchPrefix(y,"a=ssrc:").map(function(Z){return f.parseSsrcMedia(Z)}).filter(function(Z){return Z.attribute==="cname"})[0];_&&(b.cname=_.value,b.ssrc=_.ssrc);var M=f.matchPrefix(y,"a=rtcp-rsize");b.reducedSize=M.length>0,b.compound=M.length===0;var a2=f.matchPrefix(y,"a=rtcp-mux");return b.mux=a2.length>0,b},f.parseMsid=function(y){var b,_=f.matchPrefix(y,"a=msid:");if(_.length===1)return b=_[0].substr(7).split(" "),{stream:b[0],track:b[1]};var M=f.matchPrefix(y,"a=ssrc:").map(function(a2){return f.parseSsrcMedia(a2)}).filter(function(a2){return a2.attribute==="msid"});if(M.length>0)return b=M[0].value.split(" "),{stream:b[0],track:b[1]}},f.parseSctpDescription=function(y){var b=f.parseMLine(y),_=f.matchPrefix(y,"a=max-message-size:"),M;_.length>0&&(M=parseInt(_[0].substr(19),10)),isNaN(M)&&(M=65536);var a2=f.matchPrefix(y,"a=sctp-port:");if(a2.length>0)return{port:parseInt(a2[0].substr(12),10),protocol:b.fmt,maxMessageSize:M};var Z=f.matchPrefix(y,"a=sctpmap:");if(Z.length>0){var t2=f.matchPrefix(y,"a=sctpmap:")[0].substr(10).split(" ");return{port:parseInt(t2[0],10),protocol:t2[1],maxMessageSize:M}}},f.writeSctpDescription=function(y,b){var _=[];return y.protocol!=="DTLS/SCTP"?_=["m="+y.kind+" 9 "+y.protocol+" "+b.protocol+`\r `,`c=IN IP4 0.0.0.0\r `,"a=sctp-port:"+b.port+`\r `]:_=["m="+y.kind+" 9 "+y.protocol+" "+b.port+`\r @@ -538,11 +538,11 @@ t=0 0\r `;a2+="a="+Z,a2+="a=ssrc:"+y.sendEncodingParameters[0].ssrc+" "+Z,y.sendEncodingParameters[0].rtx&&(a2+="a=ssrc:"+y.sendEncodingParameters[0].rtx.ssrc+" "+Z,a2+="a=ssrc-group:FID "+y.sendEncodingParameters[0].ssrc+" "+y.sendEncodingParameters[0].rtx.ssrc+`\r `)}return a2+="a=ssrc:"+y.sendEncodingParameters[0].ssrc+" cname:"+f.localCName+`\r `,y.rtpSender&&y.sendEncodingParameters[0].rtx&&(a2+="a=ssrc:"+y.sendEncodingParameters[0].rtx.ssrc+" cname:"+f.localCName+`\r -`),a2},f.getDirection=function(y,b){for(var _=f.splitLines(y),M=0;M<_.length;M++)switch(_[M]){case"a=sendrecv":case"a=sendonly":case"a=recvonly":case"a=inactive":return _[M].substr(2)}return b?f.getDirection(b):"sendrecv"},f.getKind=function(y){var b=f.splitLines(y),_=b[0].split(" ");return _[0].substr(2)},f.isRejected=function(y){return y.split(" ",2)[1]==="0"},f.parseMLine=function(y){var b=f.splitLines(y),_=b[0].substr(2).split(" ");return{kind:_[0],port:parseInt(_[1],10),protocol:_[2],fmt:_.slice(3).join(" ")}},f.parseOLine=function(y){var b=f.matchPrefix(y,"o=")[0],_=b.substr(2).split(" ");return{username:_[0],sessionId:_[1],sessionVersion:parseInt(_[2],10),netType:_[3],addressType:_[4],address:_[5]}},f.isValidSDP=function(y){if(typeof y!="string"||y.length===0)return!1;for(var b=f.splitLines(y),_=0;_ =26&&O<=N?!0:P.extension.isInstalled()}else return!0};var V1={extensionId:"hapfgfdkleiggjjpfpenajgdnfckjpaj",isInstalled:function(){return document.querySelector("#janus-extension-installed")!==null},getScreen:function(N){var d=window.setTimeout(function(){var f=new Error("NavigatorUserMediaError");return f.name='The required Chrome extension is not installed: click here to install it. (NOTE: this will need you to refresh the page)',N(f)},1e3);this.cache[d]=N,window.postMessage({type:"janusGetScreen",id:d},"*")},init:function(){var N={};this.cache=N,window.addEventListener("message",function(d){if(d.origin==window.location.origin)if(d.data.type=="janusGotScreen"&&N[d.data.id]){var f=N[d.data.id];if(delete N[d.data.id],d.data.sourceId===""){var y=new Error("NavigatorUserMediaError");y.name="You cancelled the request for permission, giving up...",f(y)}else f(null,d.data.sourceId)}else d.data.type=="janusGetScreenPending"&&(console.log("clearing ",d.data.id),window.clearTimeout(d.data.id))})}};P.useDefaultDependencies=function(O){var N=O&&O.fetch||fetch,d=O&&O.Promise||Promise,f=O&&O.WebSocket||WebSocket;return{newWebSocket:function(b,_){return new f(b,_)},extension:O&&O.extension||V1,isArray:function(b){return Array.isArray(b)},webRTCAdapter:O&&O.adapter||window.adapter,httpAPICall:function(b,_){var M={method:_.verb,headers:{Accept:"application/json, text/plain, */*"},cache:"no-cache"};_.verb==="POST"&&(M.headers["Content-Type"]="application/json"),_.withCredentials!==void 0&&(M.credentials=_.withCredentials===!0?"include":_.withCredentials?_.withCredentials:"omit"),_.body!==void 0&&(M.body=JSON.stringify(_.body));var a2=N(b,M).catch(function(t2){return d.reject({message:"Probably a network error, is the server down?",error:t2})});if(_.timeout!==void 0){var Z=new d(function(t2,J){var Y=setTimeout(function(){return clearTimeout(Y),J({message:"Request timed out",timeout:_.timeout})},_.timeout)});a2=d.race([a2,Z])}return a2.then(function(t2){if(t2.ok){if(n(_.success)===n(P.noop))return t2.json().then(function(J){_.success(J)}).catch(function(J){return d.reject({message:"Failed to parse response body",error:J,response:t2})})}else return d.reject({message:"API call failed",response:t2})}).catch(function(t2){n(_.error)===n(P.noop)&&_.error(t2.message||"<< internal error >>",t2)}),a2}}},P.useOldDependencies=function(O){var N=O&&O.jQuery||jQuery,d=O&&O.WebSocket||WebSocket;return{newWebSocket:function(y,b){return new d(y,b)},isArray:function(y){return N.isArray(y)},extension:O&&O.extension||V1,webRTCAdapter:O&&O.adapter||adapter,httpAPICall:function(y,b){var _=b.body!==void 0?{contentType:"application/json",data:JSON.stringify(b.body)}:{},M=b.withCredentials!==void 0?{xhrFields:{withCredentials:b.withCredentials}}:{};return N.ajax(N.extend(_,M,{url:y,type:b.verb,cache:!1,dataType:"json",async:b.async,timeout:b.timeout,success:function(Z){n(b.success)===n(P.noop)&&b.success(Z)},error:function(Z,t2,J){n(b.error)===n(P.noop)&&b.error(t2,J)}}))}}},P.noop=function(){},P.dataChanDefaultLabel="JanusDataChannel",P.endOfCandidates=null,P.init=function(O){if(O=O||{},O.callback=typeof O.callback=="function"?O.callback:P.noop,P.initDone===!0)O.callback();else{if((typeof console=="undefined"||typeof console.log=="undefined")&&(console={log:function(){}}),P.trace=P.noop,P.debug=P.noop,P.vdebug=P.noop,P.log=P.noop,P.warn=P.noop,P.error=P.noop,O.debug===!0||O.debug==="all")P.trace=console.trace.bind(console),P.debug=console.debug.bind(console),P.vdebug=console.debug.bind(console),P.log=console.log.bind(console),P.warn=console.warn.bind(console),P.error=console.error.bind(console);else if(Array.isArray(O.debug))for(var N in O.debug){var d=O.debug[N];switch(d){case"trace":P.trace=console.trace.bind(console);break;case"debug":P.debug=console.debug.bind(console);break;case"vdebug":P.vdebug=console.debug.bind(console);break;case"log":P.log=console.log.bind(console);break;case"warn":P.warn=console.warn.bind(console);break;case"error":P.error=console.error.bind(console);break;default:console.error("Unknown debugging option '"+d+"' (supported: 'trace', 'debug', 'vdebug', 'log', warn', 'error')");break}}P.log("Initializing library");var f=O.dependencies||P.useDefaultDependencies();P.isArray=f.isArray,P.webRTCAdapter=f.webRTCAdapter,P.httpAPICall=f.httpAPICall,P.newWebSocket=f.newWebSocket,P.extension=f.extension,P.extension.init(),P.listDevices=function(t2,J){t2=typeof t2=="function"?t2:P.noop,J==null&&(J={audio:!0,video:!0}),P.isGetUserMediaAvailable()?navigator.mediaDevices.getUserMedia(J).then(function(Y){navigator.mediaDevices.enumerateDevices().then(function(k2){P.debug(k2),t2(k2);try{var y2=Y.getTracks();for(var s2 in y2){var f2=y2[s2];f2!=null&&f2.stop()}}catch(F2){}})}).catch(function(Y){P.error(Y),t2([])}):(P.warn("navigator.mediaDevices unavailable"),t2([]))},P.attachMediaStream=function(t2,J){if(P.webRTCAdapter.browserDetails.browser==="chrome"){var Y=P.webRTCAdapter.browserDetails.version;Y>=52?t2.srcObject=J:P.error("Error attaching stream to element")}else t2.srcObject=J},P.reattachMediaStream=function(t2,J){if(P.webRTCAdapter.browserDetails.browser==="chrome"){var Y=P.webRTCAdapter.browserDetails.version;Y>=52?t2.srcObject=J.srcObject:typeof t2.src!="undefined"?t2.src=J.src:P.error("Error reattaching stream to element")}else t2.srcObject=J.srcObject};var y=["iPad","iPhone","iPod"].indexOf(navigator.platform)>=0,b=y?"pagehide":"beforeunload",_=window["on"+b];if(window.addEventListener(b,function(t2){P.log("Closing window");for(var J in P.sessions)P.sessions[J]!==null&&P.sessions[J]!==void 0&&P.sessions[J].destroyOnUnload&&(P.log("Destroying session "+J),P.sessions[J].destroy({asyncRequest:!1,notifyDestroyed:!1}));_&&typeof _=="function"&&_()}),P.safariVp8=!1,P.webRTCAdapter.browserDetails.browser==="safari"&&P.webRTCAdapter.browserDetails.version>=605)if(RTCRtpSender&&RTCRtpSender.getCapabilities&&RTCRtpSender.getCapabilities("video")&&RTCRtpSender.getCapabilities("video").codecs&&RTCRtpSender.getCapabilities("video").codecs.length){for(var N in RTCRtpSender.getCapabilities("video").codecs){var M=RTCRtpSender.getCapabilities("video").codecs[N];if(M&&M.mimeType&&M.mimeType.toLowerCase()==="video/vp8"){P.safariVp8=!0;break}}P.safariVp8?P.log("This version of Safari supports VP8"):P.warn("This version of Safari does NOT support VP8: if you're using a Technology Preview, try enabling the 'WebRTC VP8 codec' setting in the 'Experimental Features' Develop menu")}else{var a2=new RTCPeerConnection({},{});a2.createOffer({offerToReceiveVideo:!0}).then(function(t2){P.safariVp8=t2.sdp.indexOf("VP8")!==-1,P.safariVp8?P.log("This version of Safari supports VP8"):P.warn("This version of Safari does NOT support VP8: if you're using a Technology Preview, try enabling the 'WebRTC VP8 codec' setting in the 'Experimental Features' Develop menu"),a2.close(),a2=null})}if(P.unifiedPlan=!1,P.webRTCAdapter.browserDetails.browser==="firefox"&&P.webRTCAdapter.browserDetails.version>=59)P.unifiedPlan=!0;else if(P.webRTCAdapter.browserDetails.browser==="chrome"&&P.webRTCAdapter.browserDetails.version<72)P.unifiedPlan=!1;else if(typeof RTCRtpTransceiver!="undefined"&&!("currentDirection"in RTCRtpTransceiver.prototype))P.unifiedPlan=!1;else{var Z=new RTCPeerConnection;try{Z.addTransceiver("audio"),P.unifiedPlan=!0}catch(t2){}Z.close()}P.initDone=!0,O.callback()}},P.isWebrtcSupported=function(){return window.RTCPeerConnection!==void 0&&window.RTCPeerConnection!==null},P.isGetUserMediaAvailable=function(){return navigator.mediaDevices!==void 0&&navigator.mediaDevices!==null&&navigator.mediaDevices.getUserMedia!==void 0&&navigator.mediaDevices.getUserMedia!==null},P.randomString=function(O){for(var N="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",d="",f=0;f 3){T=!1,O.error("Lost connection to the server (is it down?)");return}W2()}})}}function a3(V,b2){if(N2=0,!N&&D!==void 0&&D!==null&&b2!==!0&&W2(),!N&&P.isArray(V)){for(var E2=0;E2 data channel: "+_0),_0==="open"){if(t3.dataChannel[i1].pending&&t3.dataChannel[i1].pending.length>0){P.log("Sending pending messages on <"+i1+">:",t3.dataChannel[i1].pending.length);for(var Y0 in t3.dataChannel[i1].pending){var o2=t3.dataChannel[i1].pending[Y0];P.log("Sending string on data channel <"+i1+">: "+o2),t3.dataChannel[i1].send(o2)}t3.dataChannel[i1].pending=[]}c2.ondataopen(i1)}},C3=function(_3){P.error("Got error on data channel:",_3)};E2?t3.dataChannel[b2]=E2:t3.dataChannel[b2]=t3.pc.createDataChannel(b2,{ordered:!1}),t3.dataChannel[b2].onmessage=z2,t3.dataChannel[b2].onopen=c3,t3.dataChannel[b2].onclose=c3,t3.dataChannel[b2].onerror=C3,t3.dataChannel[b2].pending=[],I2&&t3.dataChannel[b2].pending.push(I2)}function N1(V,b2){b2=b2||{},b2.success=typeof b2.success=="function"?b2.success:P.noop,b2.error=typeof b2.error=="function"?b2.error:P.noop;var E2=W[V];if(E2==null||E2.webrtcStuff===null||E2.webrtcStuff===void 0){P.warn("Invalid handle"),b2.error("Invalid handle");return}var I2=E2.webrtcStuff,c2=b2.text;if(c2==null){P.warn("Invalid text"),b2.error("Invalid text");return}var t3=b2.label?b2.label:P.dataChanDefaultLabel;if(!I2.dataChannel[t3]){T1(V,t3,!1,c2),b2.success();return}if(I2.dataChannel[t3].readyState!=="open"){I2.dataChannel[t3].pending.push(c2),b2.success();return}P.log("Sending string on data channel <"+t3+">: "+c2),I2.dataChannel[t3].send(c2),b2.success()}function L(V,b2){b2=b2||{},b2.success=typeof b2.success=="function"?b2.success:P.noop,b2.error=typeof b2.error=="function"?b2.error:P.noop;var E2=W[V];if(E2==null||E2.webrtcStuff===null||E2.webrtcStuff===void 0){P.warn("Invalid handle"),b2.error("Invalid handle");return}var I2=E2.webrtcStuff;if(I2.dtmfSender===null||I2.dtmfSender===void 0){if(I2.pc!==void 0&&I2.pc!==null){var c2=I2.pc.getSenders(),t3=c2.find(function(_3){return _3.track&&_3.track.kind==="audio"});if(!t3){P.warn("Invalid DTMF configuration (no audio track)"),b2.error("Invalid DTMF configuration (no audio track)");return}I2.dtmfSender=t3.dtmf,I2.dtmfSender&&(P.log("Created DTMF Sender"),I2.dtmfSender.ontonechange=function(_3){P.debug("Sent DTMF tone: "+_3.tone)})}if(I2.dtmfSender===null||I2.dtmfSender===void 0){P.warn("Invalid DTMF configuration"),b2.error("Invalid DTMF configuration");return}}var z2=b2.dtmf;if(z2==null){P.warn("Invalid DTMF parameters"),b2.error("Invalid DTMF parameters");return}var c3=z2.tones;if(c3==null){P.warn("Invalid DTMF string"),b2.error("Invalid DTMF string");return}var C3=z2.duration;C3==null&&(C3=500);var J3=z2.gap;J3==null&&(J3=50),P.debug("Sending DTMF string "+c3+" (duration "+C3+"ms, gap "+J3+"ms)"),I2.dtmfSender.insertDTMF(c3,C3,J3),b2.success()}function q(V,b2){b2=b2||{},b2.success=typeof b2.success=="function"?b2.success:P.noop,b2.error=typeof b2.error=="function"?b2.error:P.noop;var E2=!0;b2.asyncRequest!==void 0&&b2.asyncRequest!==null&&(E2=b2.asyncRequest===!0);var I2=!0;b2.noRequest!==void 0&&b2.noRequest!==null&&(I2=b2.noRequest===!0),P.log("Destroying handle "+V+" (async="+E2+")"),p1(V);var c2=W[V];if(c2==null||c2.detached){delete W[V],b2.success();return}if(I2){delete W[V],b2.success();return}if(!T){P.warn("Is the server down? (connected=false)"),b2.error("Is the server down? (connected=false)");return}var t3={rtcgw:"detach",transaction:P.randomString(12)};if(c2.token!==null&&c2.token!==void 0&&(t3.token=c2.token),s2!=null&&(t3.apisecret=s2),N){t3.session_id=D,t3.handle_id=V,d.send(JSON.stringify(t3)),delete W[V],b2.success();return}P.httpAPICall(M+"/"+D+"/"+V,{verb:"POST",async:E2,withCredentials:Y,body:t3,success:function(c3){P.log("Destroyed handle:"),P.debug(c3),c3.rtcgw!=="success"&&P.error("Ooops: "+c3.error.code+" "+c3.error.reason),delete W[V],b2.success()},error:function(c3,C3){P.error(c3+":",C3),delete W[V],b2.success()}})}function F(V,b2,E2,I2,c2){var t3=W[V];if(t3==null||t3.webrtcStuff===null||t3.webrtcStuff===void 0){P.warn("Invalid handle"),I2.error("Invalid handle");return}var z2=t3.webrtcStuff;P.debug("streamsDone:",c2),c2&&(P.debug(" -- Audio tracks:",c2.getAudioTracks()),P.debug(" -- Video tracks:",c2.getVideoTracks()));var c3=!1;if(!z2.myStream||!E2.update||z2.streamExternal)z2.myStream=c2,c3=!0;else{if((!E2.update&&H(E2)||E2.update&&(E2.addAudio||E2.replaceAudio))&&c2.getAudioTracks()&&c2.getAudioTracks().length)if(z2.myStream.addTrack(c2.getAudioTracks()[0]),P.unifiedPlan){P.log((E2.replaceAudio?"Replacing":"Adding")+" audio track:",c2.getAudioTracks()[0]);var C3=null,J3=z2.pc.getTransceivers();if(J3&&J3.length>0)for(var _3 in J3){var i1=J3[_3];if(i1.sender&&i1.sender.track&&i1.sender.track.kind==="audio"||i1.receiver&&i1.receiver.track&&i1.receiver.track.kind==="audio"){C3=i1;break}}C3&&C3.sender?C3.sender.replaceTrack(c2.getAudioTracks()[0]):z2.pc.addTrack(c2.getAudioTracks()[0],c2)}else P.log((E2.replaceAudio?"Replacing":"Adding")+" audio track:",c2.getAudioTracks()[0]),z2.pc.addTrack(c2.getAudioTracks()[0],c2);if((!E2.update&&d2(E2)||E2.update&&(E2.addVideo||E2.replaceVideo))&&c2.getVideoTracks()&&c2.getVideoTracks().length)if(z2.myStream.addTrack(c2.getVideoTracks()[0]),P.unifiedPlan){P.log((E2.replaceVideo?"Replacing":"Adding")+" video track:",c2.getVideoTracks()[0]);var _0=null,J3=z2.pc.getTransceivers();if(J3&&J3.length>0)for(var _3 in J3){var i1=J3[_3];if(i1.sender&&i1.sender.track&&i1.sender.track.kind==="video"||i1.receiver&&i1.receiver.track&&i1.receiver.track.kind==="video"){_0=i1;break}}_0&&_0.sender?_0.sender.replaceTrack(c2.getVideoTracks()[0]):z2.pc.addTrack(c2.getVideoTracks()[0],c2)}else P.log((E2.replaceVideo?"Replacing":"Adding")+" video track:",c2.getVideoTracks()[0]),z2.pc.addTrack(c2.getVideoTracks()[0],c2)}if(!z2.pc){var Y0={iceServers:a2,iceTransportPolicy:Z,bundlePolicy:t2};P.webRTCAdapter.browserDetails.browser==="chrome"&&(Y0.sdpSemantics=P.webRTCAdapter.browserDetails.version<72?"plan-b":"unified-plan");var o2={optional:[{DtlsSrtpKeyAgreement:!0}]};if(J===!0&&o2.optional.push({googIPv6:!0}),I2.rtcConstraints&&n(I2.rtcConstraints)==="object"){P.debug("Adding custom PeerConnection constraints:",I2.rtcConstraints);for(var _3 in I2.rtcConstraints)o2.optional.push(I2.rtcConstraints[_3])}P.webRTCAdapter.browserDetails.browser==="edge"&&(Y0.bundlePolicy="max-bundle"),P.log("Creating PeerConnection"),P.debug(o2),z2.pc=new RTCPeerConnection(Y0,o2),P.debug(z2.pc),z2.pc.getStats&&(z2.volume={},z2.bitrate.value="0 kbits/sec"),P.log("Preparing local SDP and gathering candidates (trickle="+z2.trickle+")"),z2.pc.oniceconnectionstatechange=function(U1){z2.pc&&t3.iceState(z2.pc.iceConnectionState)},z2.pc.onicecandidate=function(U1){if(U1.candidate==null||P.webRTCAdapter.browserDetails.browser==="edge"&&U1.candidate.candidate.indexOf("endOfCandidates")>0)P.log("End of candidates."),z2.iceDone=!0,z2.trickle===!0?w1(V,{completed:!0}):N3(V,I2);else{var I0={candidate:U1.candidate.candidate,sdpMid:U1.candidate.sdpMid,sdpMLineIndex:U1.candidate.sdpMLineIndex};z2.trickle===!0&&w1(V,I0)}},z2.pc.ontrack=function(U1){P.log("Handling Remote Track"),P.debug(U1),U1.streams&&(z2.remoteStream=U1.streams[0],t3.onremotestream(z2.remoteStream),!U1.track.onended&&(P.log("Adding onended callback to track:",U1.track),U1.track.onended=function(I0){P.log("Remote track muted/removed:",I0),z2.remoteStream&&(z2.remoteStream.removeTrack(I0.target),t3.onremotestream(z2.remoteStream))},U1.track.onmute=U1.track.onended,U1.track.onunmute=function(I0){P.log("Remote track flowing again:",I0);try{z2.remoteStream.addTrack(I0.target),t3.onremotestream(z2.remoteStream)}catch(Et){P.error(Et)}}))}}if(c3&&c2!==null&&c2!==void 0){P.log("Adding local stream");var z3=I2.simulcast2===!0;c2.getTracks().forEach(function(U1){if(P.log("Adding local track:",U1),!z3)z2.pc.addTrack(U1,c2);else if(U1.kind==="audio")z2.pc.addTrack(U1,c2);else{P.log("Enabling rid-based simulcasting:",U1);var I0=n2(I2.simulcastMaxBitrates);z2.pc.addTransceiver(U1,{direction:"sendrecv",streams:[c2],sendEncodings:[{rid:"h",active:!0,maxBitrate:I0.high},{rid:"m",active:!0,maxBitrate:I0.medium,scaleResolutionDownBy:2},{rid:"l",active:!0,maxBitrate:I0.low,scaleResolutionDownBy:4}]})}})}M3(E2)&&!z2.dataChannel[P.dataChanDefaultLabel]&&(P.log("Creating data channel"),T1(V,P.dataChanDefaultLabel,!1),z2.pc.ondatachannel=function(U1){P.log("Data channel created by Janus:",U1),T1(V,U1.channel.label,U1.channel)}),z2.myStream&&t3.onlocalstream(z2.myStream),b2==null?h2(V,E2,I2):z2.pc.setRemoteDescription(b2).then(function(){if(P.log("Remote description accepted!"),z2.remoteSdp=b2.sdp,z2.candidates&&z2.candidates.length>0){for(var U1=0;U1 =26&&x5<=u9?(z3={video:{mandatory:{googLeakyBucket:!0,maxWidth:window.screen.width,maxHeight:window.screen.height,minFrameRate:c2.screenshareFrameRate,maxFrameRate:c2.screenshareFrameRate,chromeMediaSource:"screen"}},audio:H(c2)&&!c2.keepAudio},_5(z3,Qn)):P.extension.getScreen(function(de,ee){if(de)return t3.consentDialog(!1),E2.error(de);z3={audio:!1,video:{mandatory:{chromeMediaSource:"desktop",maxWidth:window.screen.width,maxHeight:window.screen.height,minFrameRate:c2.screenshareFrameRate,maxFrameRate:c2.screenshareFrameRate},optional:[{googLeakyBucket:!0},{googTemporalLayeredScreencast:!0}]}},z3.video.mandatory.chromeMediaSourceId=ee,_5(z3,Qn,H(c2)&&!c2.keepAudio)})}else if(P.webRTCAdapter.browserDetails.browser==="firefox")if(P.webRTCAdapter.browserDetails.version>=33)z3={video:{mozMediaSource:c2.video,mediaSource:c2.video},audio:H(c2)&&!c2.keepAudio},_5(z3,function(de,ee){if(Qn(de,ee),!de)var pt=ee.currentTime,en=window.setInterval(function(){ee||window.clearInterval(en),ee.currentTime==pt&&(window.clearInterval(en),ee.onended&&ee.onended()),pt=ee.currentTime},500)});else{var c9=new Error("NavigatorUserMediaError");c9.name="Your version of Firefox does not support screen sharing, please install Firefox 33 (or more recent versions)",t3.consentDialog(!1),E2.error(c9);return}return}}(c2==null||c2.video!=="screen")&&navigator.mediaDevices.enumerateDevices().then(function(de){var ee=de.some(function(tn){return tn.kind==="audioinput"}),pt=J2(c2)||de.some(function(tn){return tn.kind==="videoinput"}),en=H(c2),pn=d2(c2),q6=S(c2),d9=L2(c2);if(en||pn||q6||d9){var f9=en?ee:!1,h9=pn?pt:!1;if(!f9&&!h9)return t3.consentDialog(!1),E2.error("No capture device found"),!1;if(!f9&&q6)return t3.consentDialog(!1),E2.error("Audio capture is required, but no capture device found"),!1;if(!h9&&d9)return t3.consentDialog(!1),E2.error("Video capture is required, but no capture device found"),!1}var J6={audio:ee&&!c2.keepAudio?U1:!1,video:pt&&!c2.keepVideo?I0:!1};P.debug("getUserMedia constraints",J6),!J6.audio&&!J6.video?(t3.consentDialog(!1),F(V,I2,c2,E2,i1)):navigator.mediaDevices.getUserMedia(J6).then(function(tn){t3.consentDialog(!1),F(V,I2,c2,E2,tn)}).catch(function(tn){t3.consentDialog(!1),E2.error({code:tn.code,name:tn.name,message:tn.message})})}).catch(function(de){t3.consentDialog(!1),E2.error("enumerateDevices error",de)})}else F(V,I2,c2,E2)}function p2(V,b2){b2=b2||{},b2.success=typeof b2.success=="function"?b2.success:P.noop,b2.error=typeof b2.error=="function"?b2.error:X3;var E2=b2.jsep,I2=W[V];if(I2==null||I2.webrtcStuff===null||I2.webrtcStuff===void 0){P.warn("Invalid handle"),b2.error("Invalid handle");return}var c2=I2.webrtcStuff;if(E2!=null){if(c2.pc===null){P.warn("Wait, no PeerConnection?? if this is an answer, use createAnswer and not handleRemoteJsep"),b2.error("No PeerConnection: if this is an answer, use createAnswer and not handleRemoteJsep");return}c2.pc.setRemoteDescription(E2).then(function(){if(P.log("Remote description accepted!"),c2.remoteSdp=E2.sdp,c2.candidates&&c2.candidates.length>0){for(var t3=0;t3 0)for(var _3 in J3){var i1=J3[_3];if(i1.sender&&i1.sender.track&&i1.sender.track.kind==="audio"||i1.receiver&&i1.receiver.track&&i1.receiver.track.kind==="audio"){c3||(c3=i1);continue}if(i1.sender&&i1.sender.track&&i1.sender.track.kind==="video"||i1.receiver&&i1.receiver.track&&i1.receiver.track.kind==="video"){C3||(C3=i1);continue}}var _0=H(b2),Y0=E(b2);!_0&&!Y0?b2.removeAudio&&c3&&(c3.setDirection?c3.setDirection("inactive"):c3.direction="inactive",P.log("Setting audio transceiver to inactive:",c3)):_0&&Y0?c3&&(c3.setDirection?c3.setDirection("sendrecv"):c3.direction="sendrecv",P.log("Setting audio transceiver to sendrecv:",c3)):_0&&!Y0?c3&&(c3.setDirection?c3.setDirection("sendonly"):c3.direction="sendonly",P.log("Setting audio transceiver to sendonly:",c3)):!_0&&Y0&&(c3?(c3.setDirection?c3.setDirection("recvonly"):c3.direction="recvonly",P.log("Setting audio transceiver to recvonly:",c3)):(c3=c2.pc.addTransceiver("audio",{direction:"recvonly"}),P.log("Adding recvonly audio transceiver:",c3)));var o2=d2(b2),z3=U2(b2);!o2&&!z3?b2.removeVideo&&C3&&(C3.setDirection?C3.setDirection("inactive"):C3.direction="inactive",P.log("Setting video transceiver to inactive:",C3)):o2&&z3?C3&&(C3.setDirection?C3.setDirection("sendrecv"):C3.direction="sendrecv",P.log("Setting video transceiver to sendrecv:",C3)):o2&&!z3?C3&&(C3.setDirection?C3.setDirection("sendonly"):C3.direction="sendonly",P.log("Setting video transceiver to sendonly:",C3)):!o2&&z3&&(C3?(C3.setDirection?C3.setDirection("recvonly"):C3.direction="recvonly",P.log("Setting video transceiver to recvonly:",C3)):(C3=c2.pc.addTransceiver("video",{direction:"recvonly"}),P.log("Adding recvonly video transceiver:",C3)))}else z2.offerToReceiveAudio=E(b2),z2.offerToReceiveVideo=U2(b2);var U1=E2.iceRestart===!0;U1&&(z2.iceRestart=!0),P.debug(z2);var I0=d2(b2);if(I0&&t3&&P.webRTCAdapter.browserDetails.browser==="firefox"){P.log("Enabling Simulcasting for Firefox (RID)");var Et=c2.pc.getSenders().find(function(X0){return X0.track.kind=="video"});if(Et){var mt=Et.getParameters();mt||(mt={});var g0=n2(E2.simulcastMaxBitrates);mt.encodings=[{rid:"h",active:!0,maxBitrate:g0.high},{rid:"m",active:!0,maxBitrate:g0.medium,scaleResolutionDownBy:2},{rid:"l",active:!0,maxBitrate:g0.low,scaleResolutionDownBy:4}],Et.setParameters(mt)}}c2.pc.createOffer(z2).then(function(X0){P.debug(X0);var Qn={type:X0.type,sdp:X0.sdp};if(E2.customizeSdp(Qn),X0.sdp=Qn.sdp,P.log("Setting local description"),I0&&t3&&(P.webRTCAdapter.browserDetails.browser==="chrome"||P.webRTCAdapter.browserDetails.browser==="safari"?(P.log("Enabling Simulcasting for Chrome (SDP munging)"),X0.sdp=B(X0.sdp)):P.webRTCAdapter.browserDetails.browser!=="firefox"&&P.warn("simulcast=true, but this is not Chrome nor Firefox, ignoring")),c2.mySdp=X0.sdp,c2.pc.setLocalDescription(X0).catch(E2.error),c2.mediaConstraints=z2,!c2.iceDone&&!c2.trickle){P.log("Waiting for all candidates...");return}P.log("Offer ready"),P.debug(E2),E2.success(X0)},E2.error)}function r3(V,b2,E2){E2=E2||{},E2.success=typeof E2.success=="function"?E2.success:P.noop,E2.error=typeof E2.error=="function"?E2.error:P.noop,E2.customizeSdp=typeof E2.customizeSdp=="function"?E2.customizeSdp:P.noop;var I2=W[V];if(I2==null||I2.webrtcStuff===null||I2.webrtcStuff===void 0){P.warn("Invalid handle"),E2.error("Invalid handle");return}var c2=I2.webrtcStuff,t3=E2.simulcast===!0;t3?P.log("Creating answer (iceDone="+c2.iceDone+", simulcast="+t3+")"):P.log("Creating answer (iceDone="+c2.iceDone+")");var z2=null;if(P.unifiedPlan){z2={};var c3=null,C3=null,J3=c2.pc.getTransceivers();if(J3&&J3.length>0)for(var _3 in J3){var i1=J3[_3];if(i1.sender&&i1.sender.track&&i1.sender.track.kind==="audio"||i1.receiver&&i1.receiver.track&&i1.receiver.track.kind==="audio"){c3||(c3=i1);continue}if(i1.sender&&i1.sender.track&&i1.sender.track.kind==="video"||i1.receiver&&i1.receiver.track&&i1.receiver.track.kind==="video"){C3||(C3=i1);continue}}var _0=H(b2),Y0=E(b2);if(!_0&&!Y0){if(b2.removeAudio&&c3)try{c3.setDirection?c3.setDirection("inactive"):c3.direction="inactive",P.log("Setting audio transceiver to inactive:",c3)}catch(g0){P.error(g0)}}else if(_0&&Y0){if(c3)try{c3.setDirection?c3.setDirection("sendrecv"):c3.direction="sendrecv",P.log("Setting audio transceiver to sendrecv:",c3)}catch(g0){P.error(g0)}}else if(_0&&!Y0)try{c3&&(c3.setDirection?c3.setDirection("sendonly"):c3.direction="sendonly",P.log("Setting audio transceiver to sendonly:",c3))}catch(g0){P.error(g0)}else if(!_0&&Y0)if(c3)try{c3.setDirection?c3.setDirection("recvonly"):c3.direction="recvonly",P.log("Setting audio transceiver to recvonly:",c3)}catch(g0){P.error(g0)}else c3=c2.pc.addTransceiver("audio",{direction:"recvonly"}),P.log("Adding recvonly audio transceiver:",c3);var o2=d2(b2),z3=U2(b2);if(!o2&&!z3){if(b2.removeVideo&&C3)try{C3.setDirection?C3.setDirection("inactive"):C3.direction="inactive",P.log("Setting video transceiver to inactive:",C3)}catch(g0){P.error(g0)}}else if(o2&&z3){if(C3)try{C3.setDirection?C3.setDirection("sendrecv"):C3.direction="sendrecv",P.log("Setting video transceiver to sendrecv:",C3)}catch(g0){P.error(g0)}}else if(o2&&!z3){if(C3)try{C3.setDirection?C3.setDirection("sendonly"):C3.direction="sendonly",P.log("Setting video transceiver to sendonly:",C3)}catch(g0){P.error(g0)}}else if(!o2&&z3)if(C3)try{C3.setDirection?C3.setDirection("recvonly"):C3.direction="recvonly",P.log("Setting video transceiver to recvonly:",C3)}catch(g0){P.error(g0)}else C3=c2.pc.addTransceiver("video",{direction:"recvonly"}),P.log("Adding recvonly video transceiver:",C3)}else P.webRTCAdapter.browserDetails.browser=="firefox"||P.webRTCAdapter.browserDetails.browser=="edge"?z2={offerToReceiveAudio:E(b2),offerToReceiveVideo:U2(b2)}:z2={mandatory:{OfferToReceiveAudio:E(b2),OfferToReceiveVideo:U2(b2)}};P.debug(z2);var U1=d2(b2);if(U1&&t3&&P.webRTCAdapter.browserDetails.browser==="firefox"){P.log("Enabling Simulcasting for Firefox (RID)");var I0=c2.pc.getSenders()[1];P.log(I0);var Et=I0.getParameters();P.log(Et);var mt=n2(E2.simulcastMaxBitrates);I0.setParameters({encodings:[{rid:"high",active:!0,priority:"high",maxBitrate:mt.high},{rid:"medium",active:!0,priority:"medium",maxBitrate:mt.medium},{rid:"low",active:!0,priority:"low",maxBitrate:mt.low}]})}c2.pc.createAnswer(z2).then(function(g0){P.debug(g0);var X0={type:g0.type,sdp:g0.sdp};if(E2.customizeSdp(X0),g0.sdp=X0.sdp,P.log("Setting local description"),U1&&t3&&(P.webRTCAdapter.browserDetails.browser==="chrome"?P.warn("simulcast=true, but this is an answer, and video breaks in Chrome if we enable it"):P.webRTCAdapter.browserDetails.browser!=="firefox"&&P.warn("simulcast=true, but this is not Chrome nor Firefox, ignoring")),c2.mySdp=g0.sdp,c2.pc.setLocalDescription(g0).catch(E2.error),c2.mediaConstraints=z2,!c2.iceDone&&!c2.trickle){P.log("Waiting for all candidates...");return}E2.success(g0)},E2.error)}function N3(V,b2){b2=b2||{},b2.success=typeof b2.success=="function"?b2.success:P.noop,b2.error=typeof b2.error=="function"?b2.error:P.noop;var E2=W[V];if(E2==null||E2.webrtcStuff===null||E2.webrtcStuff===void 0){P.warn("Invalid handle, not sending anything");return}var I2=E2.webrtcStuff;if(P.log("Sending offer/answer SDP..."),I2.mySdp===null||I2.mySdp===void 0){P.warn("Local SDP instance is invalid, not sending anything...");return}I2.mySdp={type:I2.pc.localDescription.type,sdp:I2.pc.localDescription.sdp},I2.trickle===!1&&(I2.mySdp.trickle=!1),P.debug(b2),I2.sdpSent=!0,b2.success(I2.mySdp)}function K(V,b2){var E2=W[V];if(E2==null||E2.webrtcStuff===null||E2.webrtcStuff===void 0)return P.warn("Invalid handle"),0;var I2=b2?"remote":"local",c2=E2.webrtcStuff;return c2.volume[I2]||(c2.volume[I2]={value:0}),c2.pc.getStats&&P.webRTCAdapter.browserDetails.browser==="chrome"?b2&&(c2.remoteStream===null||c2.remoteStream===void 0)?(P.warn("Remote stream unavailable"),0):!b2&&(c2.myStream===null||c2.myStream===void 0)?(P.warn("Local stream unavailable"),0):c2.volume[I2].timer===null||c2.volume[I2].timer===void 0?(P.log("Starting "+I2+" volume monitor"),c2.volume[I2].timer=setInterval(function(){c2.pc.getStats(function(t3){for(var z2=t3.result(),c3=0;c3 -1)&&c2.type==="inbound-rtp"&&c2.id.indexOf("rtcp")<0||c2.type=="ssrc"&&c2.bytesReceived&&(c2.googCodecName==="VP8"||c2.googCodecName===""))&&(t3=!0),t3)if(E2.bitrate.bsnow=c2.bytesReceived,E2.bitrate.tsnow=c2.timestamp,E2.bitrate.bsbefore===null||E2.bitrate.tsbefore===null)E2.bitrate.bsbefore=E2.bitrate.bsnow,E2.bitrate.tsbefore=E2.bitrate.tsnow;else{var z2=E2.bitrate.tsnow-E2.bitrate.tsbefore;P.webRTCAdapter.browserDetails.browser=="safari"&&(z2=z2/1e3);var c3=Math.round((E2.bitrate.bsnow-E2.bitrate.bsbefore)*8/z2);P.webRTCAdapter.browserDetails.browser==="safari"&&(c3=parseInt(c3/1e3)),E2.bitrate.value=c3+" kbits/sec",E2.bitrate.bsbefore=E2.bitrate.bsnow,E2.bitrate.tsbefore=E2.bitrate.tsnow}}})})},1e3),"0 kbits/sec"):E2.bitrate.value:(P.warn("Getting the video bitrate unsupported by browser"),"Feature unsupported by browser")}function X3(V){P.error("WebRTC error:",V)}function p1(V,b2){P.log("Cleaning WebRTC stuff");var E2=W[V];if(E2!=null){var I2=E2.webrtcStuff;if(I2!=null){if(b2===!0){var c2={rtcgw:"hangup",transaction:P.randomString(12)};E2.token!==null&&E2.token!==void 0&&(c2.token=E2.token),s2!=null&&(c2.apisecret=s2),P.debug("Sending hangup request (handle="+V+"):"),P.debug(c2),N?(c2.session_id=D,c2.handle_id=V,d.send(JSON.stringify(c2))):P.httpAPICall(M+"/"+D+"/"+V,{verb:"POST",withCredentials:Y,body:c2})}I2.remoteStream=null,I2.volume&&(I2.volume.local&&I2.volume.local.timer&&clearInterval(I2.volume.local.timer),I2.volume.remote&&I2.volume.remote.timer&&clearInterval(I2.volume.remote.timer)),I2.volume={},I2.bitrate.timer&&clearInterval(I2.bitrate.timer),I2.bitrate.timer=null,I2.bitrate.bsnow=null,I2.bitrate.bsbefore=null,I2.bitrate.tsnow=null,I2.bitrate.tsbefore=null,I2.bitrate.value=null;try{if(!I2.streamExternal&&I2.myStream!==null&&I2.myStream!==void 0){P.log("Stopping local stream tracks");var t3=I2.myStream.getTracks();for(var z2 in t3){var c3=t3[z2];P.log(c3),c3!=null&&c3.stop()}}}catch(C3){}I2.streamExternal=!1,I2.myStream=null;try{I2.pc.close()}catch(C3){}I2.pc=null,I2.candidates=null,I2.mySdp=null,I2.remoteSdp=null,I2.iceDone=!1,I2.dataChannel={},I2.dtmfSender=null}E2.oncleanup()}}function B(V){for(var b2=V.split(`\r -`),E2=!1,I2=[-1],c2=[-1],t3=null,z2=null,c3=null,C3=null,J3=-1,_3=0;_3 -1){J3=_3;break}continue}if(E2){var Y0=b2[_3].match(/a=ssrc-group:FID (\d+) (\d+)/);if(Y0){I2[0]=Y0[1],c2[0]=Y0[2],b2.splice(_3,1),_3--;continue}if(I2[0]){var o2=b2[_3].match("a=ssrc:"+I2[0]+" cname:(.+)");if(o2&&(t3=o2[1]),o2=b2[_3].match("a=ssrc:"+I2[0]+" msid:(.+)"),o2&&(z2=o2[1]),o2=b2[_3].match("a=ssrc:"+I2[0]+" mslabel:(.+)"),o2&&(c3=o2[1]),o2=b2[_3].match("a=ssrc:"+I2[0]+" label:(.+)"),o2&&(C3=o2[1]),b2[_3].indexOf("a=ssrc:"+c2[0])===0){b2.splice(_3,1),_3--;continue}if(b2[_3].indexOf("a=ssrc:"+I2[0])===0){b2.splice(_3,1),_3--;continue}}if(b2[_3].length==0){b2.splice(_3,1),_3--;continue}}}if(I2[0]<0){J3=-1,E2=!1;for(var _3=0;_3 -1){J3=_3;break}continue}if(E2){if(I2[0]<0){var z3=b2[_3].match(/a=ssrc:(\d+)/);if(z3){I2[0]=z3[1],b2.splice(_3,1),_3--;continue}}else{var o2=b2[_3].match("a=ssrc:"+I2[0]+" cname:(.+)");if(o2&&(t3=o2[1]),o2=b2[_3].match("a=ssrc:"+I2[0]+" msid:(.+)"),o2&&(z2=o2[1]),o2=b2[_3].match("a=ssrc:"+I2[0]+" mslabel:(.+)"),o2&&(c3=o2[1]),o2=b2[_3].match("a=ssrc:"+I2[0]+" label:(.+)"),o2&&(C3=o2[1]),b2[_3].indexOf("a=ssrc:"+c2[0])===0){b2.splice(_3,1),_3--;continue}if(b2[_3].indexOf("a=ssrc:"+I2[0])===0){b2.splice(_3,1),_3--;continue}}if(b2[_3].length==0){b2.splice(_3,1),_3--;continue}}}}if(I2[0]<0)return P.warn("Couldn't find the video SSRC, simulcasting NOT enabled"),V;J3<0&&(J3=b2.length),I2[1]=Math.floor(Math.random()*4294967295),I2[2]=Math.floor(Math.random()*4294967295),c2[1]=Math.floor(Math.random()*4294967295),c2[2]=Math.floor(Math.random()*4294967295);for(var _3=0;_3 =26&&O<=N?!0:P.extension.isInstalled()}else return!0};var W1={extensionId:"hapfgfdkleiggjjpfpenajgdnfckjpaj",isInstalled:function(){return document.querySelector("#janus-extension-installed")!==null},getScreen:function(N){var d=window.setTimeout(function(){var f=new Error("NavigatorUserMediaError");return f.name='The required Chrome extension is not installed: click here to install it. (NOTE: this will need you to refresh the page)',N(f)},1e3);this.cache[d]=N,window.postMessage({type:"janusGetScreen",id:d},"*")},init:function(){var N={};this.cache=N,window.addEventListener("message",function(d){if(d.origin==window.location.origin)if(d.data.type=="janusGotScreen"&&N[d.data.id]){var f=N[d.data.id];if(delete N[d.data.id],d.data.sourceId===""){var y=new Error("NavigatorUserMediaError");y.name="You cancelled the request for permission, giving up...",f(y)}else f(null,d.data.sourceId)}else d.data.type=="janusGetScreenPending"&&(console.log("clearing ",d.data.id),window.clearTimeout(d.data.id))})}};P.useDefaultDependencies=function(O){var N=O&&O.fetch||fetch,d=O&&O.Promise||Promise,f=O&&O.WebSocket||WebSocket;return{newWebSocket:function(b,_){return new f(b,_)},extension:O&&O.extension||W1,isArray:function(b){return Array.isArray(b)},webRTCAdapter:O&&O.adapter||window.adapter,httpAPICall:function(b,_){var M={method:_.verb,headers:{Accept:"application/json, text/plain, */*"},cache:"no-cache"};_.verb==="POST"&&(M.headers["Content-Type"]="application/json"),_.withCredentials!==void 0&&(M.credentials=_.withCredentials===!0?"include":_.withCredentials?_.withCredentials:"omit"),_.body!==void 0&&(M.body=JSON.stringify(_.body));var a2=N(b,M).catch(function(t2){return d.reject({message:"Probably a network error, is the server down?",error:t2})});if(_.timeout!==void 0){var Z=new d(function(t2,J){var Y=setTimeout(function(){return clearTimeout(Y),J({message:"Request timed out",timeout:_.timeout})},_.timeout)});a2=d.race([a2,Z])}return a2.then(function(t2){if(t2.ok){if(n(_.success)===n(P.noop))return t2.json().then(function(J){_.success(J)}).catch(function(J){return d.reject({message:"Failed to parse response body",error:J,response:t2})})}else return d.reject({message:"API call failed",response:t2})}).catch(function(t2){n(_.error)===n(P.noop)&&_.error(t2.message||"<< internal error >>",t2)}),a2}}},P.useOldDependencies=function(O){var N=O&&O.jQuery||jQuery,d=O&&O.WebSocket||WebSocket;return{newWebSocket:function(y,b){return new d(y,b)},isArray:function(y){return N.isArray(y)},extension:O&&O.extension||W1,webRTCAdapter:O&&O.adapter||adapter,httpAPICall:function(y,b){var _=b.body!==void 0?{contentType:"application/json",data:JSON.stringify(b.body)}:{},M=b.withCredentials!==void 0?{xhrFields:{withCredentials:b.withCredentials}}:{};return N.ajax(N.extend(_,M,{url:y,type:b.verb,cache:!1,dataType:"json",async:b.async,timeout:b.timeout,success:function(Z){n(b.success)===n(P.noop)&&b.success(Z)},error:function(Z,t2,J){n(b.error)===n(P.noop)&&b.error(t2,J)}}))}}},P.noop=function(){},P.dataChanDefaultLabel="JanusDataChannel",P.endOfCandidates=null,P.init=function(O){if(O=O||{},O.callback=typeof O.callback=="function"?O.callback:P.noop,P.initDone===!0)O.callback();else{if((typeof console=="undefined"||typeof console.log=="undefined")&&(console={log:function(){}}),P.trace=P.noop,P.debug=P.noop,P.vdebug=P.noop,P.log=P.noop,P.warn=P.noop,P.error=P.noop,O.debug===!0||O.debug==="all")P.trace=console.trace.bind(console),P.debug=console.debug.bind(console),P.vdebug=console.debug.bind(console),P.log=console.log.bind(console),P.warn=console.warn.bind(console),P.error=console.error.bind(console);else if(Array.isArray(O.debug))for(var N in O.debug){var d=O.debug[N];switch(d){case"trace":P.trace=console.trace.bind(console);break;case"debug":P.debug=console.debug.bind(console);break;case"vdebug":P.vdebug=console.debug.bind(console);break;case"log":P.log=console.log.bind(console);break;case"warn":P.warn=console.warn.bind(console);break;case"error":P.error=console.error.bind(console);break;default:console.error("Unknown debugging option '"+d+"' (supported: 'trace', 'debug', 'vdebug', 'log', warn', 'error')");break}}P.log("Initializing library");var f=O.dependencies||P.useDefaultDependencies();P.isArray=f.isArray,P.webRTCAdapter=f.webRTCAdapter,P.httpAPICall=f.httpAPICall,P.newWebSocket=f.newWebSocket,P.extension=f.extension,P.extension.init(),P.listDevices=function(t2,J){t2=typeof t2=="function"?t2:P.noop,J==null&&(J={audio:!0,video:!0}),P.isGetUserMediaAvailable()?navigator.mediaDevices.getUserMedia(J).then(function(Y){navigator.mediaDevices.enumerateDevices().then(function(k2){P.debug(k2),t2(k2);try{var y2=Y.getTracks();for(var o2 in y2){var d2=y2[o2];d2!=null&&d2.stop()}}catch(F2){}})}).catch(function(Y){P.error(Y),t2([])}):(P.warn("navigator.mediaDevices unavailable"),t2([]))},P.attachMediaStream=function(t2,J){if(P.webRTCAdapter.browserDetails.browser==="chrome"){var Y=P.webRTCAdapter.browserDetails.version;Y>=52?t2.srcObject=J:P.error("Error attaching stream to element")}else t2.srcObject=J},P.reattachMediaStream=function(t2,J){if(P.webRTCAdapter.browserDetails.browser==="chrome"){var Y=P.webRTCAdapter.browserDetails.version;Y>=52?t2.srcObject=J.srcObject:typeof t2.src!="undefined"?t2.src=J.src:P.error("Error reattaching stream to element")}else t2.srcObject=J.srcObject};var y=["iPad","iPhone","iPod"].indexOf(navigator.platform)>=0,b=y?"pagehide":"beforeunload",_=window["on"+b];if(window.addEventListener(b,function(t2){P.log("Closing window");for(var J in P.sessions)P.sessions[J]!==null&&P.sessions[J]!==void 0&&P.sessions[J].destroyOnUnload&&(P.log("Destroying session "+J),P.sessions[J].destroy({asyncRequest:!1,notifyDestroyed:!1}));_&&typeof _=="function"&&_()}),P.safariVp8=!1,P.webRTCAdapter.browserDetails.browser==="safari"&&P.webRTCAdapter.browserDetails.version>=605)if(RTCRtpSender&&RTCRtpSender.getCapabilities&&RTCRtpSender.getCapabilities("video")&&RTCRtpSender.getCapabilities("video").codecs&&RTCRtpSender.getCapabilities("video").codecs.length){for(var N in RTCRtpSender.getCapabilities("video").codecs){var M=RTCRtpSender.getCapabilities("video").codecs[N];if(M&&M.mimeType&&M.mimeType.toLowerCase()==="video/vp8"){P.safariVp8=!0;break}}P.safariVp8?P.log("This version of Safari supports VP8"):P.warn("This version of Safari does NOT support VP8: if you're using a Technology Preview, try enabling the 'WebRTC VP8 codec' setting in the 'Experimental Features' Develop menu")}else{var a2=new RTCPeerConnection({},{});a2.createOffer({offerToReceiveVideo:!0}).then(function(t2){P.safariVp8=t2.sdp.indexOf("VP8")!==-1,P.safariVp8?P.log("This version of Safari supports VP8"):P.warn("This version of Safari does NOT support VP8: if you're using a Technology Preview, try enabling the 'WebRTC VP8 codec' setting in the 'Experimental Features' Develop menu"),a2.close(),a2=null})}if(P.unifiedPlan=!1,P.webRTCAdapter.browserDetails.browser==="firefox"&&P.webRTCAdapter.browserDetails.version>=59)P.unifiedPlan=!0;else if(P.webRTCAdapter.browserDetails.browser==="chrome"&&P.webRTCAdapter.browserDetails.version<72)P.unifiedPlan=!1;else if(typeof RTCRtpTransceiver!="undefined"&&!("currentDirection"in RTCRtpTransceiver.prototype))P.unifiedPlan=!1;else{var Z=new RTCPeerConnection;try{Z.addTransceiver("audio"),P.unifiedPlan=!0}catch(t2){}Z.close()}P.initDone=!0,O.callback()}},P.isWebrtcSupported=function(){return window.RTCPeerConnection!==void 0&&window.RTCPeerConnection!==null},P.isGetUserMediaAvailable=function(){return navigator.mediaDevices!==void 0&&navigator.mediaDevices!==null&&navigator.mediaDevices.getUserMedia!==void 0&&navigator.mediaDevices.getUserMedia!==null},P.randomString=function(O){for(var N="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",d="",f=0;f 3){T=!1,O.error("Lost connection to the server (is it down?)");return}W2()}})}}function a3(V,w2){if(N2=0,!N&&D!==void 0&&D!==null&&w2!==!0&&W2(),!N&&P.isArray(V)){for(var E2=0;E2 data channel: "+x0),x0==="open"){if(t3.dataChannel[i1].pending&&t3.dataChannel[i1].pending.length>0){P.log("Sending pending messages on <"+i1+">:",t3.dataChannel[i1].pending.length);for(var Y0 in t3.dataChannel[i1].pending){var Z1=t3.dataChannel[i1].pending[Y0];P.log("Sending string on data channel <"+i1+">: "+Z1),t3.dataChannel[i1].send(Z1)}t3.dataChannel[i1].pending=[]}u2.ondataopen(i1)}},C3=function(_3){P.error("Got error on data channel:",_3)};E2?t3.dataChannel[w2]=E2:t3.dataChannel[w2]=t3.pc.createDataChannel(w2,{ordered:!1}),t3.dataChannel[w2].onmessage=z2,t3.dataChannel[w2].onopen=c3,t3.dataChannel[w2].onclose=c3,t3.dataChannel[w2].onerror=C3,t3.dataChannel[w2].pending=[],I2&&t3.dataChannel[w2].pending.push(I2)}function N1(V,w2){w2=w2||{},w2.success=typeof w2.success=="function"?w2.success:P.noop,w2.error=typeof w2.error=="function"?w2.error:P.noop;var E2=W[V];if(E2==null||E2.webrtcStuff===null||E2.webrtcStuff===void 0){P.warn("Invalid handle"),w2.error("Invalid handle");return}var I2=E2.webrtcStuff,u2=w2.text;if(u2==null){P.warn("Invalid text"),w2.error("Invalid text");return}var t3=w2.label?w2.label:P.dataChanDefaultLabel;if(!I2.dataChannel[t3]){T1(V,t3,!1,u2),w2.success();return}if(I2.dataChannel[t3].readyState!=="open"){I2.dataChannel[t3].pending.push(u2),w2.success();return}P.log("Sending string on data channel <"+t3+">: "+u2),I2.dataChannel[t3].send(u2),w2.success()}function L(V,w2){w2=w2||{},w2.success=typeof w2.success=="function"?w2.success:P.noop,w2.error=typeof w2.error=="function"?w2.error:P.noop;var E2=W[V];if(E2==null||E2.webrtcStuff===null||E2.webrtcStuff===void 0){P.warn("Invalid handle"),w2.error("Invalid handle");return}var I2=E2.webrtcStuff;if(I2.dtmfSender===null||I2.dtmfSender===void 0){if(I2.pc!==void 0&&I2.pc!==null){var u2=I2.pc.getSenders(),t3=u2.find(function(_3){return _3.track&&_3.track.kind==="audio"});if(!t3){P.warn("Invalid DTMF configuration (no audio track)"),w2.error("Invalid DTMF configuration (no audio track)");return}I2.dtmfSender=t3.dtmf,I2.dtmfSender&&(P.log("Created DTMF Sender"),I2.dtmfSender.ontonechange=function(_3){P.debug("Sent DTMF tone: "+_3.tone)})}if(I2.dtmfSender===null||I2.dtmfSender===void 0){P.warn("Invalid DTMF configuration"),w2.error("Invalid DTMF configuration");return}}var z2=w2.dtmf;if(z2==null){P.warn("Invalid DTMF parameters"),w2.error("Invalid DTMF parameters");return}var c3=z2.tones;if(c3==null){P.warn("Invalid DTMF string"),w2.error("Invalid DTMF string");return}var C3=z2.duration;C3==null&&(C3=500);var J3=z2.gap;J3==null&&(J3=50),P.debug("Sending DTMF string "+c3+" (duration "+C3+"ms, gap "+J3+"ms)"),I2.dtmfSender.insertDTMF(c3,C3,J3),w2.success()}function q(V,w2){w2=w2||{},w2.success=typeof w2.success=="function"?w2.success:P.noop,w2.error=typeof w2.error=="function"?w2.error:P.noop;var E2=!0;w2.asyncRequest!==void 0&&w2.asyncRequest!==null&&(E2=w2.asyncRequest===!0);var I2=!0;w2.noRequest!==void 0&&w2.noRequest!==null&&(I2=w2.noRequest===!0),P.log("Destroying handle "+V+" (async="+E2+")"),p1(V);var u2=W[V];if(u2==null||u2.detached){delete W[V],w2.success();return}if(I2){delete W[V],w2.success();return}if(!T){P.warn("Is the server down? (connected=false)"),w2.error("Is the server down? (connected=false)");return}var t3={rtcgw:"detach",transaction:P.randomString(12)};if(u2.token!==null&&u2.token!==void 0&&(t3.token=u2.token),o2!=null&&(t3.apisecret=o2),N){t3.session_id=D,t3.handle_id=V,d.send(JSON.stringify(t3)),delete W[V],w2.success();return}P.httpAPICall(M+"/"+D+"/"+V,{verb:"POST",async:E2,withCredentials:Y,body:t3,success:function(c3){P.log("Destroyed handle:"),P.debug(c3),c3.rtcgw!=="success"&&P.error("Ooops: "+c3.error.code+" "+c3.error.reason),delete W[V],w2.success()},error:function(c3,C3){P.error(c3+":",C3),delete W[V],w2.success()}})}function F(V,w2,E2,I2,u2){var t3=W[V];if(t3==null||t3.webrtcStuff===null||t3.webrtcStuff===void 0){P.warn("Invalid handle"),I2.error("Invalid handle");return}var z2=t3.webrtcStuff;P.debug("streamsDone:",u2),u2&&(P.debug(" -- Audio tracks:",u2.getAudioTracks()),P.debug(" -- Video tracks:",u2.getVideoTracks()));var c3=!1;if(!z2.myStream||!E2.update||z2.streamExternal)z2.myStream=u2,c3=!0;else{if((!E2.update&&H(E2)||E2.update&&(E2.addAudio||E2.replaceAudio))&&u2.getAudioTracks()&&u2.getAudioTracks().length)if(z2.myStream.addTrack(u2.getAudioTracks()[0]),P.unifiedPlan){P.log((E2.replaceAudio?"Replacing":"Adding")+" audio track:",u2.getAudioTracks()[0]);var C3=null,J3=z2.pc.getTransceivers();if(J3&&J3.length>0)for(var _3 in J3){var i1=J3[_3];if(i1.sender&&i1.sender.track&&i1.sender.track.kind==="audio"||i1.receiver&&i1.receiver.track&&i1.receiver.track.kind==="audio"){C3=i1;break}}C3&&C3.sender?C3.sender.replaceTrack(u2.getAudioTracks()[0]):z2.pc.addTrack(u2.getAudioTracks()[0],u2)}else P.log((E2.replaceAudio?"Replacing":"Adding")+" audio track:",u2.getAudioTracks()[0]),z2.pc.addTrack(u2.getAudioTracks()[0],u2);if((!E2.update&&c2(E2)||E2.update&&(E2.addVideo||E2.replaceVideo))&&u2.getVideoTracks()&&u2.getVideoTracks().length)if(z2.myStream.addTrack(u2.getVideoTracks()[0]),P.unifiedPlan){P.log((E2.replaceVideo?"Replacing":"Adding")+" video track:",u2.getVideoTracks()[0]);var x0=null,J3=z2.pc.getTransceivers();if(J3&&J3.length>0)for(var _3 in J3){var i1=J3[_3];if(i1.sender&&i1.sender.track&&i1.sender.track.kind==="video"||i1.receiver&&i1.receiver.track&&i1.receiver.track.kind==="video"){x0=i1;break}}x0&&x0.sender?x0.sender.replaceTrack(u2.getVideoTracks()[0]):z2.pc.addTrack(u2.getVideoTracks()[0],u2)}else P.log((E2.replaceVideo?"Replacing":"Adding")+" video track:",u2.getVideoTracks()[0]),z2.pc.addTrack(u2.getVideoTracks()[0],u2)}if(!z2.pc){var Y0={iceServers:a2,iceTransportPolicy:Z,bundlePolicy:t2};P.webRTCAdapter.browserDetails.browser==="chrome"&&(Y0.sdpSemantics=P.webRTCAdapter.browserDetails.version<72?"plan-b":"unified-plan");var Z1={optional:[{DtlsSrtpKeyAgreement:!0}]};if(J===!0&&Z1.optional.push({googIPv6:!0}),I2.rtcConstraints&&n(I2.rtcConstraints)==="object"){P.debug("Adding custom PeerConnection constraints:",I2.rtcConstraints);for(var _3 in I2.rtcConstraints)Z1.optional.push(I2.rtcConstraints[_3])}P.webRTCAdapter.browserDetails.browser==="edge"&&(Y0.bundlePolicy="max-bundle"),P.log("Creating PeerConnection"),P.debug(Z1),z2.pc=new RTCPeerConnection(Y0,Z1),P.debug(z2.pc),z2.pc.getStats&&(z2.volume={},z2.bitrate.value="0 kbits/sec"),P.log("Preparing local SDP and gathering candidates (trickle="+z2.trickle+")"),z2.pc.oniceconnectionstatechange=function(R3){z2.pc&&t3.iceState(z2.pc.iceConnectionState)},z2.pc.onicecandidate=function(R3){if(R3.candidate==null||P.webRTCAdapter.browserDetails.browser==="edge"&&R3.candidate.candidate.indexOf("endOfCandidates")>0)P.log("End of candidates."),z2.iceDone=!0,z2.trickle===!0?w1(V,{completed:!0}):N3(V,I2);else{var J1={candidate:R3.candidate.candidate,sdpMid:R3.candidate.sdpMid,sdpMLineIndex:R3.candidate.sdpMLineIndex};z2.trickle===!0&&w1(V,J1)}},z2.pc.ontrack=function(R3){P.log("Handling Remote Track"),P.debug(R3),R3.streams&&(z2.remoteStream=R3.streams[0],t3.onremotestream(z2.remoteStream),!R3.track.onended&&(P.log("Adding onended callback to track:",R3.track),R3.track.onended=function(J1){P.log("Remote track muted/removed:",J1),z2.remoteStream&&(z2.remoteStream.removeTrack(J1.target),t3.onremotestream(z2.remoteStream))},R3.track.onmute=R3.track.onended,R3.track.onunmute=function(J1){P.log("Remote track flowing again:",J1);try{z2.remoteStream.addTrack(J1.target),t3.onremotestream(z2.remoteStream)}catch(mt){P.error(mt)}}))}}if(c3&&u2!==null&&u2!==void 0){P.log("Adding local stream");var h2=I2.simulcast2===!0;u2.getTracks().forEach(function(R3){if(P.log("Adding local track:",R3),!h2)z2.pc.addTrack(R3,u2);else if(R3.kind==="audio")z2.pc.addTrack(R3,u2);else{P.log("Enabling rid-based simulcasting:",R3);var J1=n2(I2.simulcastMaxBitrates);z2.pc.addTransceiver(R3,{direction:"sendrecv",streams:[u2],sendEncodings:[{rid:"h",active:!0,maxBitrate:J1.high},{rid:"m",active:!0,maxBitrate:J1.medium,scaleResolutionDownBy:2},{rid:"l",active:!0,maxBitrate:J1.low,scaleResolutionDownBy:4}]})}})}M3(E2)&&!z2.dataChannel[P.dataChanDefaultLabel]&&(P.log("Creating data channel"),T1(V,P.dataChanDefaultLabel,!1),z2.pc.ondatachannel=function(R3){P.log("Data channel created by Janus:",R3),T1(V,R3.channel.label,R3.channel)}),z2.myStream&&t3.onlocalstream(z2.myStream),w2==null?f2(V,E2,I2):z2.pc.setRemoteDescription(w2).then(function(){if(P.log("Remote description accepted!"),z2.remoteSdp=w2.sdp,z2.candidates&&z2.candidates.length>0){for(var R3=0;R3 =26&&x5<=u9?(h2={video:{mandatory:{googLeakyBucket:!0,maxWidth:window.screen.width,maxHeight:window.screen.height,minFrameRate:u2.screenshareFrameRate,maxFrameRate:u2.screenshareFrameRate,chromeMediaSource:"screen"}},audio:H(u2)&&!u2.keepAudio},_5(h2,Qn)):P.extension.getScreen(function(de,ee){if(de)return t3.consentDialog(!1),E2.error(de);h2={audio:!1,video:{mandatory:{chromeMediaSource:"desktop",maxWidth:window.screen.width,maxHeight:window.screen.height,minFrameRate:u2.screenshareFrameRate,maxFrameRate:u2.screenshareFrameRate},optional:[{googLeakyBucket:!0},{googTemporalLayeredScreencast:!0}]}},h2.video.mandatory.chromeMediaSourceId=ee,_5(h2,Qn,H(u2)&&!u2.keepAudio)})}else if(P.webRTCAdapter.browserDetails.browser==="firefox")if(P.webRTCAdapter.browserDetails.version>=33)h2={video:{mozMediaSource:u2.video,mediaSource:u2.video},audio:H(u2)&&!u2.keepAudio},_5(h2,function(de,ee){if(Qn(de,ee),!de)var gt=ee.currentTime,en=window.setInterval(function(){ee||window.clearInterval(en),ee.currentTime==gt&&(window.clearInterval(en),ee.onended&&ee.onended()),gt=ee.currentTime},500)});else{var c9=new Error("NavigatorUserMediaError");c9.name="Your version of Firefox does not support screen sharing, please install Firefox 33 (or more recent versions)",t3.consentDialog(!1),E2.error(c9);return}return}}(u2==null||u2.video!=="screen")&&navigator.mediaDevices.enumerateDevices().then(function(de){var ee=de.some(function(tn){return tn.kind==="audioinput"}),gt=J2(u2)||de.some(function(tn){return tn.kind==="videoinput"}),en=H(u2),pn=c2(u2),q6=S(u2),d9=L2(u2);if(en||pn||q6||d9){var f9=en?ee:!1,h9=pn?gt:!1;if(!f9&&!h9)return t3.consentDialog(!1),E2.error("No capture device found"),!1;if(!f9&&q6)return t3.consentDialog(!1),E2.error("Audio capture is required, but no capture device found"),!1;if(!h9&&d9)return t3.consentDialog(!1),E2.error("Video capture is required, but no capture device found"),!1}var J6={audio:ee&&!u2.keepAudio?R3:!1,video:gt&&!u2.keepVideo?J1:!1};P.debug("getUserMedia constraints",J6),!J6.audio&&!J6.video?(t3.consentDialog(!1),F(V,I2,u2,E2,i1)):navigator.mediaDevices.getUserMedia(J6).then(function(tn){t3.consentDialog(!1),F(V,I2,u2,E2,tn)}).catch(function(tn){t3.consentDialog(!1),E2.error({code:tn.code,name:tn.name,message:tn.message})})}).catch(function(de){t3.consentDialog(!1),E2.error("enumerateDevices error",de)})}else F(V,I2,u2,E2)}function p2(V,w2){w2=w2||{},w2.success=typeof w2.success=="function"?w2.success:P.noop,w2.error=typeof w2.error=="function"?w2.error:X3;var E2=w2.jsep,I2=W[V];if(I2==null||I2.webrtcStuff===null||I2.webrtcStuff===void 0){P.warn("Invalid handle"),w2.error("Invalid handle");return}var u2=I2.webrtcStuff;if(E2!=null){if(u2.pc===null){P.warn("Wait, no PeerConnection?? if this is an answer, use createAnswer and not handleRemoteJsep"),w2.error("No PeerConnection: if this is an answer, use createAnswer and not handleRemoteJsep");return}u2.pc.setRemoteDescription(E2).then(function(){if(P.log("Remote description accepted!"),u2.remoteSdp=E2.sdp,u2.candidates&&u2.candidates.length>0){for(var t3=0;t3 0)for(var _3 in J3){var i1=J3[_3];if(i1.sender&&i1.sender.track&&i1.sender.track.kind==="audio"||i1.receiver&&i1.receiver.track&&i1.receiver.track.kind==="audio"){c3||(c3=i1);continue}if(i1.sender&&i1.sender.track&&i1.sender.track.kind==="video"||i1.receiver&&i1.receiver.track&&i1.receiver.track.kind==="video"){C3||(C3=i1);continue}}var x0=H(w2),Y0=E(w2);!x0&&!Y0?w2.removeAudio&&c3&&(c3.setDirection?c3.setDirection("inactive"):c3.direction="inactive",P.log("Setting audio transceiver to inactive:",c3)):x0&&Y0?c3&&(c3.setDirection?c3.setDirection("sendrecv"):c3.direction="sendrecv",P.log("Setting audio transceiver to sendrecv:",c3)):x0&&!Y0?c3&&(c3.setDirection?c3.setDirection("sendonly"):c3.direction="sendonly",P.log("Setting audio transceiver to sendonly:",c3)):!x0&&Y0&&(c3?(c3.setDirection?c3.setDirection("recvonly"):c3.direction="recvonly",P.log("Setting audio transceiver to recvonly:",c3)):(c3=u2.pc.addTransceiver("audio",{direction:"recvonly"}),P.log("Adding recvonly audio transceiver:",c3)));var Z1=c2(w2),h2=U2(w2);!Z1&&!h2?w2.removeVideo&&C3&&(C3.setDirection?C3.setDirection("inactive"):C3.direction="inactive",P.log("Setting video transceiver to inactive:",C3)):Z1&&h2?C3&&(C3.setDirection?C3.setDirection("sendrecv"):C3.direction="sendrecv",P.log("Setting video transceiver to sendrecv:",C3)):Z1&&!h2?C3&&(C3.setDirection?C3.setDirection("sendonly"):C3.direction="sendonly",P.log("Setting video transceiver to sendonly:",C3)):!Z1&&h2&&(C3?(C3.setDirection?C3.setDirection("recvonly"):C3.direction="recvonly",P.log("Setting video transceiver to recvonly:",C3)):(C3=u2.pc.addTransceiver("video",{direction:"recvonly"}),P.log("Adding recvonly video transceiver:",C3)))}else z2.offerToReceiveAudio=E(w2),z2.offerToReceiveVideo=U2(w2);var R3=E2.iceRestart===!0;R3&&(z2.iceRestart=!0),P.debug(z2);var J1=c2(w2);if(J1&&t3&&P.webRTCAdapter.browserDetails.browser==="firefox"){P.log("Enabling Simulcasting for Firefox (RID)");var mt=u2.pc.getSenders().find(function(X0){return X0.track.kind=="video"});if(mt){var pt=mt.getParameters();pt||(pt={});var y0=n2(E2.simulcastMaxBitrates);pt.encodings=[{rid:"h",active:!0,maxBitrate:y0.high},{rid:"m",active:!0,maxBitrate:y0.medium,scaleResolutionDownBy:2},{rid:"l",active:!0,maxBitrate:y0.low,scaleResolutionDownBy:4}],mt.setParameters(pt)}}u2.pc.createOffer(z2).then(function(X0){P.debug(X0);var Qn={type:X0.type,sdp:X0.sdp};if(E2.customizeSdp(Qn),X0.sdp=Qn.sdp,P.log("Setting local description"),J1&&t3&&(P.webRTCAdapter.browserDetails.browser==="chrome"||P.webRTCAdapter.browserDetails.browser==="safari"?(P.log("Enabling Simulcasting for Chrome (SDP munging)"),X0.sdp=B(X0.sdp)):P.webRTCAdapter.browserDetails.browser!=="firefox"&&P.warn("simulcast=true, but this is not Chrome nor Firefox, ignoring")),u2.mySdp=X0.sdp,u2.pc.setLocalDescription(X0).catch(E2.error),u2.mediaConstraints=z2,!u2.iceDone&&!u2.trickle){P.log("Waiting for all candidates...");return}P.log("Offer ready"),P.debug(E2),E2.success(X0)},E2.error)}function r3(V,w2,E2){E2=E2||{},E2.success=typeof E2.success=="function"?E2.success:P.noop,E2.error=typeof E2.error=="function"?E2.error:P.noop,E2.customizeSdp=typeof E2.customizeSdp=="function"?E2.customizeSdp:P.noop;var I2=W[V];if(I2==null||I2.webrtcStuff===null||I2.webrtcStuff===void 0){P.warn("Invalid handle"),E2.error("Invalid handle");return}var u2=I2.webrtcStuff,t3=E2.simulcast===!0;t3?P.log("Creating answer (iceDone="+u2.iceDone+", simulcast="+t3+")"):P.log("Creating answer (iceDone="+u2.iceDone+")");var z2=null;if(P.unifiedPlan){z2={};var c3=null,C3=null,J3=u2.pc.getTransceivers();if(J3&&J3.length>0)for(var _3 in J3){var i1=J3[_3];if(i1.sender&&i1.sender.track&&i1.sender.track.kind==="audio"||i1.receiver&&i1.receiver.track&&i1.receiver.track.kind==="audio"){c3||(c3=i1);continue}if(i1.sender&&i1.sender.track&&i1.sender.track.kind==="video"||i1.receiver&&i1.receiver.track&&i1.receiver.track.kind==="video"){C3||(C3=i1);continue}}var x0=H(w2),Y0=E(w2);if(!x0&&!Y0){if(w2.removeAudio&&c3)try{c3.setDirection?c3.setDirection("inactive"):c3.direction="inactive",P.log("Setting audio transceiver to inactive:",c3)}catch(y0){P.error(y0)}}else if(x0&&Y0){if(c3)try{c3.setDirection?c3.setDirection("sendrecv"):c3.direction="sendrecv",P.log("Setting audio transceiver to sendrecv:",c3)}catch(y0){P.error(y0)}}else if(x0&&!Y0)try{c3&&(c3.setDirection?c3.setDirection("sendonly"):c3.direction="sendonly",P.log("Setting audio transceiver to sendonly:",c3))}catch(y0){P.error(y0)}else if(!x0&&Y0)if(c3)try{c3.setDirection?c3.setDirection("recvonly"):c3.direction="recvonly",P.log("Setting audio transceiver to recvonly:",c3)}catch(y0){P.error(y0)}else c3=u2.pc.addTransceiver("audio",{direction:"recvonly"}),P.log("Adding recvonly audio transceiver:",c3);var Z1=c2(w2),h2=U2(w2);if(!Z1&&!h2){if(w2.removeVideo&&C3)try{C3.setDirection?C3.setDirection("inactive"):C3.direction="inactive",P.log("Setting video transceiver to inactive:",C3)}catch(y0){P.error(y0)}}else if(Z1&&h2){if(C3)try{C3.setDirection?C3.setDirection("sendrecv"):C3.direction="sendrecv",P.log("Setting video transceiver to sendrecv:",C3)}catch(y0){P.error(y0)}}else if(Z1&&!h2){if(C3)try{C3.setDirection?C3.setDirection("sendonly"):C3.direction="sendonly",P.log("Setting video transceiver to sendonly:",C3)}catch(y0){P.error(y0)}}else if(!Z1&&h2)if(C3)try{C3.setDirection?C3.setDirection("recvonly"):C3.direction="recvonly",P.log("Setting video transceiver to recvonly:",C3)}catch(y0){P.error(y0)}else C3=u2.pc.addTransceiver("video",{direction:"recvonly"}),P.log("Adding recvonly video transceiver:",C3)}else P.webRTCAdapter.browserDetails.browser=="firefox"||P.webRTCAdapter.browserDetails.browser=="edge"?z2={offerToReceiveAudio:E(w2),offerToReceiveVideo:U2(w2)}:z2={mandatory:{OfferToReceiveAudio:E(w2),OfferToReceiveVideo:U2(w2)}};P.debug(z2);var R3=c2(w2);if(R3&&t3&&P.webRTCAdapter.browserDetails.browser==="firefox"){P.log("Enabling Simulcasting for Firefox (RID)");var J1=u2.pc.getSenders()[1];P.log(J1);var mt=J1.getParameters();P.log(mt);var pt=n2(E2.simulcastMaxBitrates);J1.setParameters({encodings:[{rid:"high",active:!0,priority:"high",maxBitrate:pt.high},{rid:"medium",active:!0,priority:"medium",maxBitrate:pt.medium},{rid:"low",active:!0,priority:"low",maxBitrate:pt.low}]})}u2.pc.createAnswer(z2).then(function(y0){P.debug(y0);var X0={type:y0.type,sdp:y0.sdp};if(E2.customizeSdp(X0),y0.sdp=X0.sdp,P.log("Setting local description"),R3&&t3&&(P.webRTCAdapter.browserDetails.browser==="chrome"?P.warn("simulcast=true, but this is an answer, and video breaks in Chrome if we enable it"):P.webRTCAdapter.browserDetails.browser!=="firefox"&&P.warn("simulcast=true, but this is not Chrome nor Firefox, ignoring")),u2.mySdp=y0.sdp,u2.pc.setLocalDescription(y0).catch(E2.error),u2.mediaConstraints=z2,!u2.iceDone&&!u2.trickle){P.log("Waiting for all candidates...");return}E2.success(y0)},E2.error)}function N3(V,w2){w2=w2||{},w2.success=typeof w2.success=="function"?w2.success:P.noop,w2.error=typeof w2.error=="function"?w2.error:P.noop;var E2=W[V];if(E2==null||E2.webrtcStuff===null||E2.webrtcStuff===void 0){P.warn("Invalid handle, not sending anything");return}var I2=E2.webrtcStuff;if(P.log("Sending offer/answer SDP..."),I2.mySdp===null||I2.mySdp===void 0){P.warn("Local SDP instance is invalid, not sending anything...");return}I2.mySdp={type:I2.pc.localDescription.type,sdp:I2.pc.localDescription.sdp},I2.trickle===!1&&(I2.mySdp.trickle=!1),P.debug(w2),I2.sdpSent=!0,w2.success(I2.mySdp)}function K(V,w2){var E2=W[V];if(E2==null||E2.webrtcStuff===null||E2.webrtcStuff===void 0)return P.warn("Invalid handle"),0;var I2=w2?"remote":"local",u2=E2.webrtcStuff;return u2.volume[I2]||(u2.volume[I2]={value:0}),u2.pc.getStats&&P.webRTCAdapter.browserDetails.browser==="chrome"?w2&&(u2.remoteStream===null||u2.remoteStream===void 0)?(P.warn("Remote stream unavailable"),0):!w2&&(u2.myStream===null||u2.myStream===void 0)?(P.warn("Local stream unavailable"),0):u2.volume[I2].timer===null||u2.volume[I2].timer===void 0?(P.log("Starting "+I2+" volume monitor"),u2.volume[I2].timer=setInterval(function(){u2.pc.getStats(function(t3){for(var z2=t3.result(),c3=0;c3 -1)&&u2.type==="inbound-rtp"&&u2.id.indexOf("rtcp")<0||u2.type=="ssrc"&&u2.bytesReceived&&(u2.googCodecName==="VP8"||u2.googCodecName===""))&&(t3=!0),t3)if(E2.bitrate.bsnow=u2.bytesReceived,E2.bitrate.tsnow=u2.timestamp,E2.bitrate.bsbefore===null||E2.bitrate.tsbefore===null)E2.bitrate.bsbefore=E2.bitrate.bsnow,E2.bitrate.tsbefore=E2.bitrate.tsnow;else{var z2=E2.bitrate.tsnow-E2.bitrate.tsbefore;P.webRTCAdapter.browserDetails.browser=="safari"&&(z2=z2/1e3);var c3=Math.round((E2.bitrate.bsnow-E2.bitrate.bsbefore)*8/z2);P.webRTCAdapter.browserDetails.browser==="safari"&&(c3=parseInt(c3/1e3)),E2.bitrate.value=c3+" kbits/sec",E2.bitrate.bsbefore=E2.bitrate.bsnow,E2.bitrate.tsbefore=E2.bitrate.tsnow}}})})},1e3),"0 kbits/sec"):E2.bitrate.value:(P.warn("Getting the video bitrate unsupported by browser"),"Feature unsupported by browser")}function X3(V){P.error("WebRTC error:",V)}function p1(V,w2){P.log("Cleaning WebRTC stuff");var E2=W[V];if(E2!=null){var I2=E2.webrtcStuff;if(I2!=null){if(w2===!0){var u2={rtcgw:"hangup",transaction:P.randomString(12)};E2.token!==null&&E2.token!==void 0&&(u2.token=E2.token),o2!=null&&(u2.apisecret=o2),P.debug("Sending hangup request (handle="+V+"):"),P.debug(u2),N?(u2.session_id=D,u2.handle_id=V,d.send(JSON.stringify(u2))):P.httpAPICall(M+"/"+D+"/"+V,{verb:"POST",withCredentials:Y,body:u2})}I2.remoteStream=null,I2.volume&&(I2.volume.local&&I2.volume.local.timer&&clearInterval(I2.volume.local.timer),I2.volume.remote&&I2.volume.remote.timer&&clearInterval(I2.volume.remote.timer)),I2.volume={},I2.bitrate.timer&&clearInterval(I2.bitrate.timer),I2.bitrate.timer=null,I2.bitrate.bsnow=null,I2.bitrate.bsbefore=null,I2.bitrate.tsnow=null,I2.bitrate.tsbefore=null,I2.bitrate.value=null;try{if(!I2.streamExternal&&I2.myStream!==null&&I2.myStream!==void 0){P.log("Stopping local stream tracks");var t3=I2.myStream.getTracks();for(var z2 in t3){var c3=t3[z2];P.log(c3),c3!=null&&c3.stop()}}}catch(C3){}I2.streamExternal=!1,I2.myStream=null;try{I2.pc.close()}catch(C3){}I2.pc=null,I2.candidates=null,I2.mySdp=null,I2.remoteSdp=null,I2.iceDone=!1,I2.dataChannel={},I2.dtmfSender=null}E2.oncleanup()}}function B(V){for(var w2=V.split(`\r +`),E2=!1,I2=[-1],u2=[-1],t3=null,z2=null,c3=null,C3=null,J3=-1,_3=0;_3 -1){J3=_3;break}continue}if(E2){var Y0=w2[_3].match(/a=ssrc-group:FID (\d+) (\d+)/);if(Y0){I2[0]=Y0[1],u2[0]=Y0[2],w2.splice(_3,1),_3--;continue}if(I2[0]){var Z1=w2[_3].match("a=ssrc:"+I2[0]+" cname:(.+)");if(Z1&&(t3=Z1[1]),Z1=w2[_3].match("a=ssrc:"+I2[0]+" msid:(.+)"),Z1&&(z2=Z1[1]),Z1=w2[_3].match("a=ssrc:"+I2[0]+" mslabel:(.+)"),Z1&&(c3=Z1[1]),Z1=w2[_3].match("a=ssrc:"+I2[0]+" label:(.+)"),Z1&&(C3=Z1[1]),w2[_3].indexOf("a=ssrc:"+u2[0])===0){w2.splice(_3,1),_3--;continue}if(w2[_3].indexOf("a=ssrc:"+I2[0])===0){w2.splice(_3,1),_3--;continue}}if(w2[_3].length==0){w2.splice(_3,1),_3--;continue}}}if(I2[0]<0){J3=-1,E2=!1;for(var _3=0;_3 -1){J3=_3;break}continue}if(E2){if(I2[0]<0){var h2=w2[_3].match(/a=ssrc:(\d+)/);if(h2){I2[0]=h2[1],w2.splice(_3,1),_3--;continue}}else{var Z1=w2[_3].match("a=ssrc:"+I2[0]+" cname:(.+)");if(Z1&&(t3=Z1[1]),Z1=w2[_3].match("a=ssrc:"+I2[0]+" msid:(.+)"),Z1&&(z2=Z1[1]),Z1=w2[_3].match("a=ssrc:"+I2[0]+" mslabel:(.+)"),Z1&&(c3=Z1[1]),Z1=w2[_3].match("a=ssrc:"+I2[0]+" label:(.+)"),Z1&&(C3=Z1[1]),w2[_3].indexOf("a=ssrc:"+u2[0])===0){w2.splice(_3,1),_3--;continue}if(w2[_3].indexOf("a=ssrc:"+I2[0])===0){w2.splice(_3,1),_3--;continue}}if(w2[_3].length==0){w2.splice(_3,1),_3--;continue}}}}if(I2[0]<0)return P.warn("Couldn't find the video SSRC, simulcasting NOT enabled"),V;J3<0&&(J3=w2.length),I2[1]=Math.floor(Math.random()*4294967295),I2[2]=Math.floor(Math.random()*4294967295),u2[1]=Math.floor(Math.random()*4294967295),u2[2]=Math.floor(Math.random()*4294967295);for(var _3=0;_3 - `,document.getElementById("mobile-ez-ptz-item")||y.appendChild(M),g(y,document.getElementById("".concat(this.jSPlugin.id,"-wrap"))),document.getElementById("mobile-ez-ptz-item").ontouchstart=function(a2){a2.preventDefault(),console.log("触摸开始"),d._handlePtzTouch(a2,"start")},document.getElementById("mobile-ez-ptz-item").ontouchend=function(a2){a2.preventDefault(),console.log("触摸结束",a2),d._handlePtzTouch(a2,"stop")},document.getElementById("mobile-ez-ptz-item").onmousedown=function(a2){a2.preventDefault(),console.log("触摸开始"),d._handlePtzTouch(a2,"start")},document.getElementById("mobile-ez-ptz-item").onmouseup=function(a2){a2.preventDefault(),console.log("触摸结束",a2),d._handlePtzTouch(a2,"stop")}}return r(O,[{key:"show",value:function(){document.getElementById("mobile-ez-ptz-item").style="display: inline-block"}},{key:"hide",value:function(){document.getElementById("mobile-ez-ptz-item").style="display: none"}},{key:"_handlePtzTouch",value:function(d,f){var y=document.getElementById("mobile-ez-ptz-item").getBoundingClientRect(),b=y.left+130,_=y.top+130,M=d.x||d.changedTouches[0].clientX,a2=d.y||d.changedTouches[0].clientY,Z=M-b,t2=a2-_,J=0,Y=this.jSPlugin.env.domain+"/api/lapp/device/ptz/start";Math.abs(Z)>Math.abs(t2)?Z>0?(J=3,document.getElementsByClassName("mobile-ez-ptz-icon")[3].className=document.getElementsByClassName("mobile-ez-ptz-icon")[3].className.replace("default","active")):(J=2,document.getElementsByClassName("mobile-ez-ptz-icon")[1].className=document.getElementsByClassName("mobile-ez-ptz-icon")[1].className.replace("default","active")):t2>0?(J=1,document.getElementsByClassName("mobile-ez-ptz-icon")[2].className=document.getElementsByClassName("mobile-ez-ptz-icon")[2].className.replace("default","active")):(J=0,document.getElementsByClassName("mobile-ez-ptz-icon")[0].className=document.getElementsByClassName("mobile-ez-ptz-icon")[0].className.replace("default","active")),document.getElementById("mobile-ez-ptz-item").style="background-image:linear-gradient(".concat(J===0?180:J===1?0:J===2?90:270,"deg, #c0ddf1 0%, rgba(100,143,252,0.00) 50%)"),f==="stop"&&(Y=this.jSPlugin.env.domain+"/api/lapp/device/ptz/stop",document.getElementById("mobile-ez-ptz-item").style="",document.getElementsByClassName("mobile-ez-ptz-icon")[3].className=document.getElementsByClassName("mobile-ez-ptz-icon")[3].className.replace("active","default"),document.getElementsByClassName("mobile-ez-ptz-icon")[1].className=document.getElementsByClassName("mobile-ez-ptz-icon")[1].className.replace("active","default"),document.getElementsByClassName("mobile-ez-ptz-icon")[2].className=document.getElementsByClassName("mobile-ez-ptz-icon")[2].className.replace("active","default"),document.getElementsByClassName("mobile-ez-ptz-icon")[0].className=document.getElementsByClassName("mobile-ez-ptz-icon")[0].className.replace("active","default"));var k2=new FormData;k2.append("deviceSerial",S2(this.jSPlugin.url).deviceSerial),k2.append("channelNo",S2(this.jSPlugin.url).channelNo),k2.append("speed",1),k2.append("direction",J),k2.append("accessToken",this.jSPlugin.accessToken),fetch(Y,{method:"POST",body:k2}).then(function(y2){return y2.json()}).then(function(y2){y2.code==200||(y2.code==60005||y2.code==60002||y2.code==60003||y2.code==60004)&&(document.getElementById("mobile-ez-ptz-item").style="background-image:linear-gradient(".concat(J===0?180:J===1?0:J===2?90:270,"deg, #f45656 0%, rgba(100,143,252,0.00) 50%)"))}).catch(function(y2){console.log("云台调用异常",y2)})}}]),O}(),K1=0,G2="成功",V2={header:{color:"#FFFFFF",backgroundColor:"#000000",activeColor:"#1890FF",btnList:[{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-0",iconId:"deviceID",part:"left",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-1",iconId:"deviceName",part:"left",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-2",iconId:"cloudRec",part:"right",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-3",iconId:"rec",part:"right",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"}]},footer:{color:"#FFFFFF",backgroundColor:"rgb(0 0 0 / 0%)",activeColor:"#1890FF",btnList:[{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-footer-0",iconId:"play",part:"left",defaultActive:1,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-footer-1",iconId:"capturePicture",part:"left",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-footer-2",iconId:"sound",part:"left",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-footer-3",iconId:"pantile",part:"left",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-footer-4",iconId:"recordvideo",part:"left",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-footer-5",iconId:"talk",part:"left",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-footer-6",iconId:"hd",part:"right",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-footer-7",iconId:"webExpend",part:"right",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-footer-8",iconId:"expend",part:"right",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"}]}},e3={retcode:K1,msg:G2,data:V2},T3={header:{color:"#FFFFFF",backgroundColor:"#000000",activeColor:"#1890FF",btnList:[{iconId:"deviceID",part:"left",defaultActive:0,isrender:1},{iconId:"deviceName",part:"left",defaultActive:0,isrender:1},{iconId:"cloudRec",part:"right",defaultActive:0,isrender:0},{iconId:"rec",part:"right",defaultActive:0,isrender:0}]},footer:{color:"#FFFFFF",backgroundColor:"#00000080",activeColor:"#1890FF",btnList:[{iconId:"play",part:"left",defaultActive:1,isrender:1},{iconId:"capturePicture",part:"left",defaultActive:0,isrender:0},{iconId:"sound",part:"left",defaultActive:1,isrender:1},{iconId:"pantile",part:"left",defaultActive:0,isrender:1},{iconId:"recordvideo",part:"left",defaultActive:0,isrender:0},{iconId:"talk",part:"left",defaultActive:0,isrender:1},{iconId:"zoom",part:"left",defaultActive:0,isrender:1},{iconId:"hd",part:"right",defaultActive:0,isrender:1},{iconId:"webExpend",part:"right",defaultActive:0,isrender:0},{iconId:"expend",part:"right",defaultActive:0,isrender:1}]}},y1={data:T3},B1={header:{color:"#FFFFFF",backgroundColor:"#000000",activeColor:"#1890FF",btnList:[{iconId:"deviceID",part:"left",defaultActive:0,isrender:1},{iconId:"deviceName",part:"left",defaultActive:0,isrender:1},{iconId:"cloudRec",part:"right",defaultActive:0,isrender:1},{iconId:"rec",part:"right",defaultActive:0,isrender:1}]},footer:{color:"#FFFFFF",backgroundColor:"#00000080",activeColor:"#1890FF",btnList:[{iconId:"play",part:"left",defaultActive:1,isrender:1},{iconId:"capturePicture",part:"left",defaultActive:0,isrender:0},{iconId:"sound",part:"left",defaultActive:1,isrender:1},{iconId:"pantile",part:"left",defaultActive:0,isrender:0},{iconId:"recordvideo",part:"left",defaultActive:0,isrender:0},{iconId:"talk",part:"left",defaultActive:0,isrender:0},{iconId:"zoom",part:"left",defaultActive:0,isrender:1},{iconId:"speed",part:"right",defaultActive:0,isrender:1},{iconId:"hd",part:"right",defaultActive:0,isrender:0},{iconId:"webExpend",part:"right",defaultActive:0,isrender:0},{iconId:"expend",part:"right",defaultActive:0,isrender:1}]}},G1={data:B1},B3={header:{color:"#FFFFFF",backgroundColor:"#000000",activeColor:"#1890FF",btnList:[{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-0",iconId:"deviceID",part:"left",defaultActive:0,isrender:1},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-1",iconId:"deviceName",part:"left",defaultActive:0,isrender:1},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-2",iconId:"cloudRec",part:"right",defaultActive:0,isrender:0},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-3",iconId:"rec",part:"right",defaultActive:0,isrender:0}]},footer:{color:"#FFFFFF",backgroundColor:"#00000080",activeColor:"#1890FF",btnList:[{iconId:"play",part:"left",defaultActive:1,isrender:1},{iconId:"capturePicture",part:"left",defaultActive:0,isrender:1},{iconId:"sound",part:"left",defaultActive:1,isrender:1},{iconId:"pantile",part:"left",defaultActive:0,isrender:1},{iconId:"recordvideo",part:"left",defaultActive:0,isrender:1},{iconId:"talk",part:"left",defaultActive:0,isrender:1},{iconId:"zoom",part:"left",defaultActive:0,isrender:1},{iconId:"speed",part:"right",defaultActive:0,isrender:0},{iconId:"hd",part:"right",defaultActive:0,isrender:1},{iconId:"webExpend",part:"right",defaultActive:0,isrender:1},{iconId:"expend",part:"right",defaultActive:0,isrender:1}]}},e1={data:B3},s1={header:{color:"#FFFFFF",backgroundColor:"#000000",activeColor:"#1890FF",btnList:[{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-0",iconId:"deviceID",part:"left",defaultActive:0,isrender:1},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-1",iconId:"deviceName",part:"left",defaultActive:0,isrender:1},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-2",iconId:"cloudRec",part:"right",defaultActive:0,isrender:0},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-3",iconId:"rec",part:"right",defaultActive:0,isrender:0}]},footer:{color:"#FFFFFF",backgroundColor:"#00000080",activeColor:"#1890FF",btnList:[{iconId:"play",part:"left",defaultActive:1,isrender:1},{iconId:"talk",part:"left",defaultActive:0,isrender:1},{iconId:"sound",part:"left",defaultActive:1,isrender:1},{iconId:"capturePicture",part:"left",defaultActive:0,isrender:1},{iconId:"recordvideo",part:"left",defaultActive:0,isrender:1},{iconId:"pantile",part:"left",defaultActive:0,isrender:0},{iconId:"zoom",part:"left",defaultActive:0,isrender:1},{iconId:"hd",part:"right",defaultActive:0,isrender:1},{iconId:"webExpend",part:"right",defaultActive:0,isrender:0},{iconId:"expend",part:"right",defaultActive:0,isrender:1}]}},S1={data:s1},F1={header:{color:"#FFFFFF",backgroundColor:"#000000",activeColor:"#1890FF",btnList:[{iconId:"deviceID",part:"left",defaultActive:0,isrender:0},{iconId:"deviceName",part:"left",defaultActive:0,isrender:0},{iconId:"cloudRec",part:"right",defaultActive:0,isrender:0},{iconId:"rec",part:"right",defaultActive:0,isrender:0}]},footer:{color:"#FFFFFF",backgroundColor:"#000000",activeColor:"#1890FF",btnList:[{iconId:"play",part:"left",defaultActive:1,isrender:0},{iconId:"capturePicture",part:"left",defaultActive:0,isrender:0},{iconId:"sound",part:"left",defaultActive:1,isrender:0},{iconId:"pantile",part:"left",defaultActive:0,isrender:0},{iconId:"recordvideo",part:"left",defaultActive:0,isrender:0},{iconId:"talk",part:"left",defaultActive:0,isrender:0},{iconId:"zoom",part:"left",defaultActive:0,isrender:0},{iconId:"hd",part:"right",defaultActive:0,isrender:0},{iconId:"webExpend",part:"right",defaultActive:0,isrender:0},{iconId:"expend",part:"right",defaultActive:0,isrender:0}]}},o0={data:F1},G0={header:{color:"#FFFFFF",backgroundColor:"#000000",activeColor:"#1890FF",btnList:[{iconId:"deviceID",part:"left",defaultActive:0,isrender:1},{iconId:"deviceName",part:"left",defaultActive:0,isrender:1},{iconId:"cloudRec",part:"right",defaultActive:0,isrender:0},{iconId:"rec",part:"right",defaultActive:0,isrender:0}]},footer:{color:"#FFFFFF",backgroundColor:"#00000080",activeColor:"#1890FF",btnList:[{iconId:"play",part:"left",defaultActive:1,isrender:1},{iconId:"capturePicture",part:"left",defaultActive:0,isrender:0},{iconId:"talk",part:"left",defaultActive:0,isrender:1},{iconId:"sound",part:"left",defaultActive:1,isrender:1},{iconId:"pantile",part:"left",defaultActive:0,isrender:0},{iconId:"recordvideo",part:"left",defaultActive:0,isrender:0},{iconId:"hd",part:"right",defaultActive:0,isrender:0},{iconId:"zoom",part:"left",defaultActive:0,isrender:0},{iconId:"webExpend",part:"right",defaultActive:0,isrender:0},{iconId:"expend",part:"right",defaultActive:0,isrender:1}]}},u3={data:G0},j3={header:{color:"#FFFFFF",backgroundColor:"#000000",activeColor:"#1890FF",btnList:[{iconId:"deviceID",part:"left",defaultActive:0,isrender:1},{iconId:"deviceName",part:"left",defaultActive:0,isrender:1},{iconId:"cloudRec",part:"right",defaultActive:0,isrender:1},{iconId:"rec",part:"right",defaultActive:0,isrender:1}]},footer:{color:"#FFFFFF",backgroundColor:"#00000080",activeColor:"#1890FF",btnList:[{iconId:"play",part:"left",defaultActive:1,isrender:1},{iconId:"capturePicture",part:"left",defaultActive:0,isrender:1},{iconId:"sound",part:"left",defaultActive:1,isrender:1},{iconId:"pantile",part:"left",defaultActive:0,isrender:0},{iconId:"recordvideo",part:"left",defaultActive:0,isrender:1},{iconId:"zoom",part:"left",defaultActive:0,isrender:1},{iconId:"speed",part:"right",defaultActive:0,isrender:1},{iconId:"hd",part:"right",defaultActive:0,isrender:0},{iconId:"webExpend",part:"right",defaultActive:0,isrender:1},{iconId:"expend",part:"right",defaultActive:0,isrender:1}]}},V3={data:j3},x1=[{autoFocus:5,createTime:"2021-06-14T08:04:37.000Z",themeId:"pcLive",themeIntro:"PC直播全量版",themeName:"PC直播全量版",themeType:"webLive",updateTime:"2021-06-14T08:04:37.000Z",label:"官方",labelPic:"https://resource.eziot.com/group1/M00/00/8A/CtwQEmLr_DmANlElAAA-xyivSaw030.png",poster:"https://resource.eziot.com/group1/M00/00/89/CtwQEmLl8r-AZU7wAAETKlvgerU237.png",header:e1.data.header,footer:e1.data.footer},{autoFocus:5,createTime:"2021-06-14T08:04:37.000Z",themeId:"security",themeIntro:"PC直播安防版",themeName:"PC直播安防版",themeType:"webLive",updateTime:"2021-06-14T08:04:37.000Z",label:"官方",labelPic:"https://resource.eziot.com/group1/M00/00/8A/CtwQEmLr_DmANlElAAA-xyivSaw030.png",poster:"https://resource.eziot.com/group1/M00/00/89/CtwQEmLl8r-AZU7wAAETKlvgerU237.png",header:S1.data.header,footer:S1.data.footer},{autoFocus:5,createTime:"2021-06-14T08:04:37.000Z",themeId:"voice",themeIntro:"PC直播语音版",themeName:"PC直播语音版",themeType:"webLive",updateTime:"2021-06-14T08:04:37.000Z",label:"官方",labelPic:"https://resource.eziot.com/group1/M00/00/8A/CtwQEmLr_DmANlElAAA-xyivSaw030.png",poster:"https://resource.eziot.com/group1/M00/00/89/CtwQEmLl8r-AZU7wAAETKlvgerU237.png",header:u3.data.header,footer:u3.data.footer},{autoFocus:5,createTime:"2021-06-14T08:04:37.000Z",themeId:"simple",themeIntro:"PC直播极简版",themeName:"PC直播极简版",themeType:"webLive",updateTime:"2021-06-14T08:04:37.000Z",label:"官方",labelPic:"https://resource.eziot.com/group1/M00/00/8A/CtwQEmLr_DmANlElAAA-xyivSaw030.png",poster:"",header:o0.data.header,footer:o0.data.footer},{autoFocus:5,createTime:"2021-06-14T08:04:37.000Z",themeId:"pcRec",themeIntro:"PC回放全量版",themeName:"PC回放全量版",themeType:"webRec",updateTime:"2021-06-14T08:04:37.000Z",label:"官方",labelPic:"https://resource.eziot.com/group1/M00/00/8A/CtwQEmLr_DmANlElAAA-xyivSaw030.png",poster:"https://resource.eziot.com/group1/M00/00/89/CtwQEmLl8r-AZU7wAAETKlvgerU237.png",header:V3.data.header,footer:V3.data.footer},{autoFocus:5,createTime:"2021-06-14T08:04:37.000Z",themeId:"mobileLive",themeIntro:"Mobile直播全量版",themeName:"Mobile直播全量版",themeType:"mobileLive",updateTime:"2021-06-14T08:04:37.000Z",label:"官方",labelPic:"https://resource.eziot.com/group1/M00/00/8A/CtwQEmLr_GmAL5IhAABZs1vUK0s564.png",poster:"https://resource.eziot.com/group1/M00/00/89/CtwQEmLl8r-AZU7wAAETKlvgerU237.png",header:y1.data.header,footer:y1.data.footer},{autoFocus:5,createTime:"2021-06-14T08:04:37.000Z",themeId:"mobileRec",themeIntro:"Mobile回放全量版",themeName:"Mobile回放全量版",themeType:"mobileRec",updateTime:"2021-06-14T08:04:37.000Z",label:"官方",labelPic:"https://resource.eziot.com/group1/M00/00/8A/CtwQEmLr_GmAL5IhAABZs1vUK0s564.png",poster:"https://resource.eziot.com/group1/M00/00/89/CtwQEmLl8r-AZU7wAAETKlvgerU237.png",header:G1.data.header,footer:G1.data.footer}],S3=function(){function O(N){var d=this;a(this,O),this.jSPlugin=N,this.enableZoom=!1,this.isMouseDown=!1,this.videoWidth=1920,this.videoHeight=1080,this.currentScale=1,this.currentPosition={x:0,y:0,xPercent:.1,yPercent:.1,xCurrentVideo:0,yCurrentVideo:0,left:0,top:0,right:1920,bottom:1080},this.DOM=document.getElementById(N.id),this.clientRect=document.getElementById(N.id).getBoundingClientRect();var f=document.createElement("div");f.id="".concat(N.id,"-zoom-container"),f.style=`position: absolute; + `,document.getElementById("mobile-ez-ptz-item")||y.appendChild(M),g(y,document.getElementById("".concat(this.jSPlugin.id,"-wrap"))),document.getElementById("mobile-ez-ptz-item").ontouchstart=function(a2){a2.preventDefault(),console.log("触摸开始"),d._handlePtzTouch(a2,"start")},document.getElementById("mobile-ez-ptz-item").ontouchend=function(a2){a2.preventDefault(),console.log("触摸结束",a2),d._handlePtzTouch(a2,"stop")},document.getElementById("mobile-ez-ptz-item").onmousedown=function(a2){a2.preventDefault(),console.log("触摸开始"),d._handlePtzTouch(a2,"start")},document.getElementById("mobile-ez-ptz-item").onmouseup=function(a2){a2.preventDefault(),console.log("触摸结束",a2),d._handlePtzTouch(a2,"stop")}}return r(O,[{key:"show",value:function(){document.getElementById("mobile-ez-ptz-item").style="display: inline-block"}},{key:"hide",value:function(){document.getElementById("mobile-ez-ptz-item").style="display: none"}},{key:"_handlePtzTouch",value:function(d,f){var y=document.getElementById("mobile-ez-ptz-item").getBoundingClientRect(),b=y.left+130,_=y.top+130,M=d.x||d.changedTouches[0].clientX,a2=d.y||d.changedTouches[0].clientY,Z=M-b,t2=a2-_,J=0,Y=this.jSPlugin.env.domain+"/api/lapp/device/ptz/start";Math.abs(Z)>Math.abs(t2)?Z>0?(J=3,document.getElementsByClassName("mobile-ez-ptz-icon")[3].className=document.getElementsByClassName("mobile-ez-ptz-icon")[3].className.replace("default","active")):(J=2,document.getElementsByClassName("mobile-ez-ptz-icon")[1].className=document.getElementsByClassName("mobile-ez-ptz-icon")[1].className.replace("default","active")):t2>0?(J=1,document.getElementsByClassName("mobile-ez-ptz-icon")[2].className=document.getElementsByClassName("mobile-ez-ptz-icon")[2].className.replace("default","active")):(J=0,document.getElementsByClassName("mobile-ez-ptz-icon")[0].className=document.getElementsByClassName("mobile-ez-ptz-icon")[0].className.replace("default","active")),document.getElementById("mobile-ez-ptz-item").style="background-image:linear-gradient(".concat(J===0?180:J===1?0:J===2?90:270,"deg, #c0ddf1 0%, rgba(100,143,252,0.00) 50%)"),f==="stop"&&(Y=this.jSPlugin.env.domain+"/api/lapp/device/ptz/stop",document.getElementById("mobile-ez-ptz-item").style="",document.getElementsByClassName("mobile-ez-ptz-icon")[3].className=document.getElementsByClassName("mobile-ez-ptz-icon")[3].className.replace("active","default"),document.getElementsByClassName("mobile-ez-ptz-icon")[1].className=document.getElementsByClassName("mobile-ez-ptz-icon")[1].className.replace("active","default"),document.getElementsByClassName("mobile-ez-ptz-icon")[2].className=document.getElementsByClassName("mobile-ez-ptz-icon")[2].className.replace("active","default"),document.getElementsByClassName("mobile-ez-ptz-icon")[0].className=document.getElementsByClassName("mobile-ez-ptz-icon")[0].className.replace("active","default"));var k2=new FormData;k2.append("deviceSerial",S2(this.jSPlugin.url).deviceSerial),k2.append("channelNo",S2(this.jSPlugin.url).channelNo),k2.append("speed",1),k2.append("direction",J),k2.append("accessToken",this.jSPlugin.accessToken),fetch(Y,{method:"POST",body:k2}).then(function(y2){return y2.json()}).then(function(y2){y2.code==200||(y2.code==60005||y2.code==60002||y2.code==60003||y2.code==60004)&&(document.getElementById("mobile-ez-ptz-item").style="background-image:linear-gradient(".concat(J===0?180:J===1?0:J===2?90:270,"deg, #f45656 0%, rgba(100,143,252,0.00) 50%)"))}).catch(function(y2){console.log("云台调用异常",y2)})}}]),O}(),H1=0,G2="成功",H2={header:{color:"#FFFFFF",backgroundColor:"#000000",activeColor:"#1890FF",btnList:[{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-0",iconId:"deviceID",part:"left",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-1",iconId:"deviceName",part:"left",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-2",iconId:"cloudRec",part:"right",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-3",iconId:"rec",part:"right",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"}]},footer:{color:"#FFFFFF",backgroundColor:"rgb(0 0 0 / 0%)",activeColor:"#1890FF",btnList:[{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-footer-0",iconId:"play",part:"left",defaultActive:1,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-footer-1",iconId:"capturePicture",part:"left",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-footer-2",iconId:"sound",part:"left",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-footer-3",iconId:"pantile",part:"left",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-footer-4",iconId:"recordvideo",part:"left",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-footer-5",iconId:"talk",part:"left",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-footer-6",iconId:"hd",part:"right",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-footer-7",iconId:"webExpend",part:"right",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-footer-8",iconId:"expend",part:"right",defaultActive:0,isrender:0,themeId:"f7896c8942c9476fb439370dd974f1c0"}]}},e3={retcode:H1,msg:G2,data:H2},T3={header:{color:"#FFFFFF",backgroundColor:"#000000",activeColor:"#1890FF",btnList:[{iconId:"deviceID",part:"left",defaultActive:0,isrender:1},{iconId:"deviceName",part:"left",defaultActive:0,isrender:1},{iconId:"cloudRec",part:"right",defaultActive:0,isrender:0},{iconId:"rec",part:"right",defaultActive:0,isrender:0}]},footer:{color:"#FFFFFF",backgroundColor:"#00000080",activeColor:"#1890FF",btnList:[{iconId:"play",part:"left",defaultActive:1,isrender:1},{iconId:"capturePicture",part:"left",defaultActive:0,isrender:0},{iconId:"sound",part:"left",defaultActive:1,isrender:1},{iconId:"pantile",part:"left",defaultActive:0,isrender:1},{iconId:"recordvideo",part:"left",defaultActive:0,isrender:0},{iconId:"talk",part:"left",defaultActive:0,isrender:1},{iconId:"zoom",part:"left",defaultActive:0,isrender:1},{iconId:"hd",part:"right",defaultActive:0,isrender:1},{iconId:"webExpend",part:"right",defaultActive:0,isrender:0},{iconId:"expend",part:"right",defaultActive:0,isrender:1}]}},y1={data:T3},B1={header:{color:"#FFFFFF",backgroundColor:"#000000",activeColor:"#1890FF",btnList:[{iconId:"deviceID",part:"left",defaultActive:0,isrender:1},{iconId:"deviceName",part:"left",defaultActive:0,isrender:1},{iconId:"cloudRec",part:"right",defaultActive:0,isrender:1},{iconId:"rec",part:"right",defaultActive:0,isrender:1}]},footer:{color:"#FFFFFF",backgroundColor:"#00000080",activeColor:"#1890FF",btnList:[{iconId:"play",part:"left",defaultActive:1,isrender:1},{iconId:"capturePicture",part:"left",defaultActive:0,isrender:0},{iconId:"sound",part:"left",defaultActive:1,isrender:1},{iconId:"pantile",part:"left",defaultActive:0,isrender:0},{iconId:"recordvideo",part:"left",defaultActive:0,isrender:0},{iconId:"talk",part:"left",defaultActive:0,isrender:0},{iconId:"zoom",part:"left",defaultActive:0,isrender:1},{iconId:"speed",part:"right",defaultActive:0,isrender:1},{iconId:"hd",part:"right",defaultActive:0,isrender:0},{iconId:"webExpend",part:"right",defaultActive:0,isrender:0},{iconId:"expend",part:"right",defaultActive:0,isrender:1}]}},G1={data:B1},D3={header:{color:"#FFFFFF",backgroundColor:"#000000",activeColor:"#1890FF",btnList:[{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-0",iconId:"deviceID",part:"left",defaultActive:0,isrender:1},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-1",iconId:"deviceName",part:"left",defaultActive:0,isrender:1},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-2",iconId:"cloudRec",part:"right",defaultActive:0,isrender:0},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-3",iconId:"rec",part:"right",defaultActive:0,isrender:0}]},footer:{color:"#FFFFFF",backgroundColor:"#00000080",activeColor:"#1890FF",btnList:[{iconId:"play",part:"left",defaultActive:1,isrender:1},{iconId:"capturePicture",part:"left",defaultActive:0,isrender:1},{iconId:"sound",part:"left",defaultActive:1,isrender:1},{iconId:"pantile",part:"left",defaultActive:0,isrender:1},{iconId:"recordvideo",part:"left",defaultActive:0,isrender:1},{iconId:"talk",part:"left",defaultActive:0,isrender:1},{iconId:"zoom",part:"left",defaultActive:0,isrender:1},{iconId:"speed",part:"right",defaultActive:0,isrender:0},{iconId:"hd",part:"right",defaultActive:0,isrender:1},{iconId:"webExpend",part:"right",defaultActive:0,isrender:1},{iconId:"expend",part:"right",defaultActive:0,isrender:1}]}},e1={data:D3},s1={header:{color:"#FFFFFF",backgroundColor:"#000000",activeColor:"#1890FF",btnList:[{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-0",iconId:"deviceID",part:"left",defaultActive:0,isrender:1},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-1",iconId:"deviceName",part:"left",defaultActive:0,isrender:1},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-2",iconId:"cloudRec",part:"right",defaultActive:0,isrender:0},{btnKey:"c1cbc1d4e86d49a0981f54beea95280a-f7896c8942c9476fb439370dd974f1c0-header-3",iconId:"rec",part:"right",defaultActive:0,isrender:0}]},footer:{color:"#FFFFFF",backgroundColor:"#00000080",activeColor:"#1890FF",btnList:[{iconId:"play",part:"left",defaultActive:1,isrender:1},{iconId:"talk",part:"left",defaultActive:0,isrender:1},{iconId:"sound",part:"left",defaultActive:1,isrender:1},{iconId:"capturePicture",part:"left",defaultActive:0,isrender:1},{iconId:"recordvideo",part:"left",defaultActive:0,isrender:1},{iconId:"pantile",part:"left",defaultActive:0,isrender:0},{iconId:"zoom",part:"left",defaultActive:0,isrender:1},{iconId:"hd",part:"right",defaultActive:0,isrender:1},{iconId:"webExpend",part:"right",defaultActive:0,isrender:0},{iconId:"expend",part:"right",defaultActive:0,isrender:1}]}},S1={data:s1},F1={header:{color:"#FFFFFF",backgroundColor:"#000000",activeColor:"#1890FF",btnList:[{iconId:"deviceID",part:"left",defaultActive:0,isrender:0},{iconId:"deviceName",part:"left",defaultActive:0,isrender:0},{iconId:"cloudRec",part:"right",defaultActive:0,isrender:0},{iconId:"rec",part:"right",defaultActive:0,isrender:0}]},footer:{color:"#FFFFFF",backgroundColor:"#000000",activeColor:"#1890FF",btnList:[{iconId:"play",part:"left",defaultActive:1,isrender:0},{iconId:"capturePicture",part:"left",defaultActive:0,isrender:0},{iconId:"sound",part:"left",defaultActive:1,isrender:0},{iconId:"pantile",part:"left",defaultActive:0,isrender:0},{iconId:"recordvideo",part:"left",defaultActive:0,isrender:0},{iconId:"talk",part:"left",defaultActive:0,isrender:0},{iconId:"zoom",part:"left",defaultActive:0,isrender:0},{iconId:"hd",part:"right",defaultActive:0,isrender:0},{iconId:"webExpend",part:"right",defaultActive:0,isrender:0},{iconId:"expend",part:"right",defaultActive:0,isrender:0}]}},s0={data:F1},G0={header:{color:"#FFFFFF",backgroundColor:"#000000",activeColor:"#1890FF",btnList:[{iconId:"deviceID",part:"left",defaultActive:0,isrender:1},{iconId:"deviceName",part:"left",defaultActive:0,isrender:1},{iconId:"cloudRec",part:"right",defaultActive:0,isrender:0},{iconId:"rec",part:"right",defaultActive:0,isrender:0}]},footer:{color:"#FFFFFF",backgroundColor:"#00000080",activeColor:"#1890FF",btnList:[{iconId:"play",part:"left",defaultActive:1,isrender:1},{iconId:"capturePicture",part:"left",defaultActive:0,isrender:0},{iconId:"talk",part:"left",defaultActive:0,isrender:1},{iconId:"sound",part:"left",defaultActive:1,isrender:1},{iconId:"pantile",part:"left",defaultActive:0,isrender:0},{iconId:"recordvideo",part:"left",defaultActive:0,isrender:0},{iconId:"hd",part:"right",defaultActive:0,isrender:0},{iconId:"zoom",part:"left",defaultActive:0,isrender:0},{iconId:"webExpend",part:"right",defaultActive:0,isrender:0},{iconId:"expend",part:"right",defaultActive:0,isrender:1}]}},u3={data:G0},z3={header:{color:"#FFFFFF",backgroundColor:"#000000",activeColor:"#1890FF",btnList:[{iconId:"deviceID",part:"left",defaultActive:0,isrender:1},{iconId:"deviceName",part:"left",defaultActive:0,isrender:1},{iconId:"cloudRec",part:"right",defaultActive:0,isrender:1},{iconId:"rec",part:"right",defaultActive:0,isrender:1}]},footer:{color:"#FFFFFF",backgroundColor:"#00000080",activeColor:"#1890FF",btnList:[{iconId:"play",part:"left",defaultActive:1,isrender:1},{iconId:"capturePicture",part:"left",defaultActive:0,isrender:1},{iconId:"sound",part:"left",defaultActive:1,isrender:1},{iconId:"pantile",part:"left",defaultActive:0,isrender:0},{iconId:"recordvideo",part:"left",defaultActive:0,isrender:1},{iconId:"zoom",part:"left",defaultActive:0,isrender:1},{iconId:"speed",part:"right",defaultActive:0,isrender:1},{iconId:"hd",part:"right",defaultActive:0,isrender:0},{iconId:"webExpend",part:"right",defaultActive:0,isrender:1},{iconId:"expend",part:"right",defaultActive:0,isrender:1}]}},V3={data:z3},x1=[{autoFocus:5,createTime:"2021-06-14T08:04:37.000Z",themeId:"pcLive",themeIntro:"PC直播全量版",themeName:"PC直播全量版",themeType:"webLive",updateTime:"2021-06-14T08:04:37.000Z",label:"官方",labelPic:"https://resource.eziot.com/group1/M00/00/8A/CtwQEmLr_DmANlElAAA-xyivSaw030.png",poster:"https://resource.eziot.com/group1/M00/00/89/CtwQEmLl8r-AZU7wAAETKlvgerU237.png",header:e1.data.header,footer:e1.data.footer},{autoFocus:5,createTime:"2021-06-14T08:04:37.000Z",themeId:"security",themeIntro:"PC直播安防版",themeName:"PC直播安防版",themeType:"webLive",updateTime:"2021-06-14T08:04:37.000Z",label:"官方",labelPic:"https://resource.eziot.com/group1/M00/00/8A/CtwQEmLr_DmANlElAAA-xyivSaw030.png",poster:"https://resource.eziot.com/group1/M00/00/89/CtwQEmLl8r-AZU7wAAETKlvgerU237.png",header:S1.data.header,footer:S1.data.footer},{autoFocus:5,createTime:"2021-06-14T08:04:37.000Z",themeId:"voice",themeIntro:"PC直播语音版",themeName:"PC直播语音版",themeType:"webLive",updateTime:"2021-06-14T08:04:37.000Z",label:"官方",labelPic:"https://resource.eziot.com/group1/M00/00/8A/CtwQEmLr_DmANlElAAA-xyivSaw030.png",poster:"https://resource.eziot.com/group1/M00/00/89/CtwQEmLl8r-AZU7wAAETKlvgerU237.png",header:u3.data.header,footer:u3.data.footer},{autoFocus:5,createTime:"2021-06-14T08:04:37.000Z",themeId:"simple",themeIntro:"PC直播极简版",themeName:"PC直播极简版",themeType:"webLive",updateTime:"2021-06-14T08:04:37.000Z",label:"官方",labelPic:"https://resource.eziot.com/group1/M00/00/8A/CtwQEmLr_DmANlElAAA-xyivSaw030.png",poster:"",header:s0.data.header,footer:s0.data.footer},{autoFocus:5,createTime:"2021-06-14T08:04:37.000Z",themeId:"pcRec",themeIntro:"PC回放全量版",themeName:"PC回放全量版",themeType:"webRec",updateTime:"2021-06-14T08:04:37.000Z",label:"官方",labelPic:"https://resource.eziot.com/group1/M00/00/8A/CtwQEmLr_DmANlElAAA-xyivSaw030.png",poster:"https://resource.eziot.com/group1/M00/00/89/CtwQEmLl8r-AZU7wAAETKlvgerU237.png",header:V3.data.header,footer:V3.data.footer},{autoFocus:5,createTime:"2021-06-14T08:04:37.000Z",themeId:"mobileLive",themeIntro:"Mobile直播全量版",themeName:"Mobile直播全量版",themeType:"mobileLive",updateTime:"2021-06-14T08:04:37.000Z",label:"官方",labelPic:"https://resource.eziot.com/group1/M00/00/8A/CtwQEmLr_GmAL5IhAABZs1vUK0s564.png",poster:"https://resource.eziot.com/group1/M00/00/89/CtwQEmLl8r-AZU7wAAETKlvgerU237.png",header:y1.data.header,footer:y1.data.footer},{autoFocus:5,createTime:"2021-06-14T08:04:37.000Z",themeId:"mobileRec",themeIntro:"Mobile回放全量版",themeName:"Mobile回放全量版",themeType:"mobileRec",updateTime:"2021-06-14T08:04:37.000Z",label:"官方",labelPic:"https://resource.eziot.com/group1/M00/00/8A/CtwQEmLr_GmAL5IhAABZs1vUK0s564.png",poster:"https://resource.eziot.com/group1/M00/00/89/CtwQEmLl8r-AZU7wAAETKlvgerU237.png",header:G1.data.header,footer:G1.data.footer}],S3=function(){function O(N){var d=this;a(this,O),this.jSPlugin=N,this.enableZoom=!1,this.isMouseDown=!1,this.videoWidth=1920,this.videoHeight=1080,this.currentScale=1,this.currentPosition={x:0,y:0,xPercent:.1,yPercent:.1,xCurrentVideo:0,yCurrentVideo:0,left:0,top:0,right:1920,bottom:1080},this.DOM=document.getElementById(N.id),this.clientRect=document.getElementById(N.id).getBoundingClientRect();var f=document.createElement("div");f.id="".concat(N.id,"-zoom-container"),f.style=`position: absolute; display:none; left: 12px; bottom: 80px;`;var y=` @@ -755,7 +755,7 @@ t=0 0\r font-size: 12px; text-align: center; height: 22px; - line-height: 22px;`;var y="1X";f.innerHTML=y,document.getElementById("".concat(N.id,"-audioControls-left")).parentNode.appendChild(f),document.getElementById(this.jSPlugin.id).addEventListener("touchstart",function(b){return d.onTouchstart(b)}),document.getElementById(this.jSPlugin.id).addEventListener("touchmove",function(b){return d.onTouchmove(b)})}return r(O,[{key:"onTouchstart",value:function(d){var f=this.jSPlugin.beforeMobileZoomVerify();if(!f)return!1;if(!this.inited){var y=this.jSPlugin.jSPlugin._JSPlayM4_GetFrameInfo(0);this.videoWidth=y.width,this.videoHeight=y.height,this.currentPosition.right=y.width,this.currentPosition.bottom=y.height,this.inited=!0}var b=this.currentPosition;this.currentScale,console.log("双指按下",b);var _=d.touches,M=_[0],a2=_[1];M&&(this.point1.clientX=M.clientX,this.point1.clientY=M.clientY),a2&&(this.point2.clientX=a2.clientX,this.point2.clientY=a2.clientY,this.touchLineLength=y3(this.point1,this.point2),this.isDubboTouch=!0,this.moveX=M.clientX,this.moveY=M.clientY),console.log("双指按下2",b)}},{key:"onTouchmove",value:function(d){var f=this.isDubboTouch,y=this.currentPosition,b=this.clientRect,_=this.jSPlugin.beforeMobileZoomVerify();if(!_)return!1;if(d.touches.length===1){var a2=d.touches[0];return y.xPercent=y.xPercent+(this.point1.clientX-a2.clientX)/b.width/this.currentScale,y.yPercent=y.yPercent+(this.point1.clientY-a2.clientY)/b.height/this.currentScale,this.doScale(),this.point1.clientX=a2.clientX,this.point1.clientY=a2.clientY,!1}if(!f)return!1;var M=d.touches,a2=M[0],Z=M[1];if(a2&&(this.point1.clientX=a2.clientX,this.point1.clientY=a2.clientY),Z){this.point2.clientX=Z.clientX,this.point2.clientY=Z.clientY;var t2=y3(this.point1,this.point2);t2!==this.touchLineLength&&(t2>this.touchLineLength?this.currentScale<8?(++this.currentScale,y.xPercent=(this.point1.clientX+this.point2.clientX)/2/b.width,y.yPercent=(this.point1.clientY+this.point2.clientY)/2/b.height,this.doScale()):console.log("已经是最大8倍率了"):this.currentScale>1?(--this.currentScale,y.xPercent=(this.point1.clientX+this.point2.clientX)/2/b.width,y.yPercent=(this.point1.clientY+this.point2.clientY)/2/b.height,this.doScale()):console.log("已经是最小1倍率了"),this.isDubboTouch=!1)}}},{key:"startZoom",value:function(){var d=this.jSPlugin.jSPlugin._JSPlayM4_GetFrameInfo(0);this.videoWidth=d.width,this.videoHeight=d.height,this.currentPosition.right=d.width,this.currentPosition.bottom=d.height,this.currentScale=1,document.getElementById("".concat(this.jSPlugin.id,"-zoom-container")).style.display="block",this.jSPlugin.jSPlugin._JSPlayM4_SetDisplayRegion(0,this.videoWidth,0,this.videoHeight),this.renderDot()}},{key:"stopZoom",value:function(){this.currentScale=1,this.jSPlugin.jSPlugin._JSPlayM4_SetDisplayRegion(0,this.videoWidth,0,this.videoHeight),document.getElementById("".concat(this.jSPlugin.id,"-zoom-container")).style.display="none",this.renderDot()}},{key:"resetZoom",value:function(){this.currentScale=1,document.getElementById("".concat(this.jSPlugin.id,"-zoom-container")).style.display="none"}},{key:"doScale",value:function(){var d=this.currentPosition,f=this.currentScale;d.left=d.left+d.xPercent*(d.right-d.left)-1/2*(this.videoWidth/f),d.left<0?d.left=0:d.left>this.videoWidth-this.videoWidth/f&&(d.left=this.videoWidth-this.videoWidth/f),d.right=d.left+this.videoWidth/f,d.top=d.top+d.yPercent*(d.bottom-d.top)-1/2*(this.videoHeight/f),d.top<0?d.top=0:d.top>this.videoHeight-this.videoHeight/f&&(d.top=this.videoHeight-this.videoHeight/f),d.bottom=d.top+this.videoHeight/f,d.left=parseInt(d.left,10),d.right=parseInt(d.right,10),d.top=parseInt(d.top,10),d.bottom=parseInt(d.bottom,10),console.log("视频宽高",this.videoWidth,this.videoHeight),console.log("计算后,",d.left,d.right,d.top,d.bottom,d.xPercent,d.yPercent),d.left 0&&(this.autoFocus=parseInt(this.themeData.autoFocus),this.startAutoFocus(),document.getElementById("".concat(this.jSPlugin.id,"-wrap")).addEventListener("click",function(){d.stopAutoFocus()})),this.setDecoderState({cloudRec:S2(this.jSPlugin.url).type==="cloud.rec",rec:S2(this.jSPlugin.url).type==="rec",type:S2(this.jSPlugin.url).type});else if(!this.themeInited)var _=setInterval(function(){window.EZUIKit[d.jSPlugin.id].state.EZUIKitPlayer.init&&(clearInterval(_),d.jSPlugin.play(),d.themeInited=!0)},50);var M=m3.findIndex(this.themeData.footer.btnList,function(Z){return Z.iconId==="zoom"&&Z.isrender>0})>=0;M&&(this.isMobile?(this.jSPlugin.beforeMobileZoomVerify=function(){var Z=d.decoderState.state.play;return console.log("手机端电子放大前校验回调play------------",Z),!!Z},this.jSPlugin.Zoom=new D2(this.jSPlugin)):this.jSPlugin.Zoom=new S3(this.jSPlugin));var a2=setInterval(function(){window.EZUIKit[d.jSPlugin.id].state.EZUIKitPlayer.init&&(clearInterval(a2),d.jSPlugin.reSize(d.jSPlugin.params.width,d.jSPlugin.params.height))},50)}},{key:"setDecoderState",value:function(d){var f=this,y=this.themeData,b=y.header,_=y.footer;Object.keys(d).map(function(M,a2){var Z="#FFFFFF",t2="#FFFFFF",J=b.btnList.findIndex(function(Y){return Y.iconId===M});switch(J===-1?(Z=_.color.replace("-diy",""),t2=_.activeColor.replace("-diy","")):(Z=b.color.replace("-diy",""),t2=_.activeColor.replace("-diy","")),M){case"play":d[M]?document.getElementById("".concat(f.jSPlugin.id,"-play"))&&(document.getElementById("".concat(f.jSPlugin.id,"-play-content")).children[0].children[0].style="display:inline-block",document.getElementById("".concat(f.jSPlugin.id,"-play-content")).children[0].children[1].style="display:none",document.getElementById("".concat(f.jSPlugin.id,"-play")).className=d[M]?"active":"",document.getElementById("".concat(f.jSPlugin.id,"-play-content")).childNodes[0].children[0].style.fill=d[M]?t2:Z):document.getElementById("".concat(f.jSPlugin.id,"-play"))&&(document.getElementById("".concat(f.jSPlugin.id,"-play-content")).children[0].children[1].style="display:inline-block",document.getElementById("".concat(f.jSPlugin.id,"-play-content")).children[0].children[0].style="display:none",document.getElementById("".concat(f.jSPlugin.id,"-play")).className=d[M]?"active":"",document.getElementById("".concat(f.jSPlugin.id,"-play-content")).childNodes[0].children[1].style.fill=d[M]?t2:Z);break;case"sound":document.getElementById("".concat(f.jSPlugin.id,"-sound"))&&(d[M]?(document.getElementById("".concat(f.jSPlugin.id,"-sound-content")).children[0].children[1].style="display:inline-block",document.getElementById("".concat(f.jSPlugin.id,"-sound-content")).children[0].children[0].style="display:none",document.getElementById("".concat(f.jSPlugin.id,"-sound")).className=d[M]?"active":"",document.getElementById("".concat(f.jSPlugin.id,"-sound-content")).childNodes[0].children[1].style.fill=d[M]?t2:Z):(document.getElementById("".concat(f.jSPlugin.id,"-sound-content")).children[0].children[0].style="display:inline-block",document.getElementById("".concat(f.jSPlugin.id,"-sound-content")).children[0].children[1].style="display:none",document.getElementById("".concat(f.jSPlugin.id,"-sound")).className=d[M]?"active":"",document.getElementById("".concat(f.jSPlugin.id,"-sound-content")).childNodes[0].children[0].style.fill=d[M]?t2:Z));break;case"recordvideo":document.getElementById("".concat(f.jSPlugin.id,"-recordvideo"))&&(document.getElementById("".concat(f.jSPlugin.id,"-recordvideo")).className=d[M]?"active":"",document.getElementById("".concat(f.jSPlugin.id,"-recordvideo-content")).childNodes[0].style.fill=d[M]?t2:Z,d[M]?f.countTime("add",0):f.countTime("destroy",0));break;case"talk":document.getElementById("".concat(f.jSPlugin.id,"-talk"))&&(document.getElementById("".concat(f.jSPlugin.id,"-talk")).className=d[M]?"active":"",document.getElementById("".concat(f.jSPlugin.id,"-talk-content")).childNodes[1].style.fill=d[M]?t2:Z);break;case"zoom":document.getElementById("".concat(f.jSPlugin.id,"-zoom"))&&(document.getElementById("".concat(f.jSPlugin.id,"-zoom")).className=d[M]?"active":"",document.getElementById("".concat(f.jSPlugin.id,"-zoom-content")).childNodes[1].style.fill=d[M]?t2:Z);break;case"pantile":document.getElementById("".concat(f.jSPlugin.id,"-pantile"))&&(document.getElementById("".concat(f.jSPlugin.id,"-pantile")).className=d[M]?"active":"",document.getElementById("".concat(f.jSPlugin.id,"-pantile-content")).childNodes[0].style.fill=d[M]?t2:Z);break;case"webExpend":d[M]?(document.getElementById("".concat(f.jSPlugin.id,"-webExpend"))&&(document.getElementById("".concat(f.jSPlugin.id,"-webExpend-content")).children[0].children[1].style="display:inline-block",document.getElementById("".concat(f.jSPlugin.id,"-webExpend-content")).children[0].children[0].style="display:none"),document.getElementById("".concat(f.jSPlugin.id,"-expend"))&&(document.getElementById("".concat(f.jSPlugin.id,"-expend")).className="disabled")):(document.getElementById("".concat(f.jSPlugin.id,"-webExpend"))&&(document.getElementById("".concat(f.jSPlugin.id,"-webExpend-content")).children[0].children[0].style="display:inline-block",document.getElementById("".concat(f.jSPlugin.id,"-webExpend-content")).children[0].children[1].style="display:none"),document.getElementById("".concat(f.jSPlugin.id,"-expend"))&&(document.getElementById("".concat(f.jSPlugin.id,"-expend")).className="")),document.getElementById("".concat(f.jSPlugin.id,"-webExpend"))&&(document.getElementById("".concat(f.jSPlugin.id,"-webExpend")).className=d[M]?"active":"",document.getElementById("".concat(f.jSPlugin.id,"-webExpend-content")).childNodes[0].childNodes[0].style.fill=d[M]?t2:Z,document.getElementById("".concat(f.jSPlugin.id,"-webExpend-content")).childNodes[0].childNodes[1].style.fill=d[M]?t2:Z);break;case"capturePicture":document.getElementById("".concat(f.jSPlugin.id,"-capturePicture"))&&(document.getElementById("".concat(f.jSPlugin.id,"-capturePicture")).className=d[M]?"active":"",document.getElementById("".concat(f.jSPlugin.id,"-capturePicture-content")).childNodes[0].style.fill=d[M]?t2:Z);break;case"expend":d[M]?(document.getElementById("".concat(f.jSPlugin.id,"-expend"))&&(document.getElementById("".concat(f.jSPlugin.id,"-expend-content")).children[0].children[1].style="display:inline-block",document.getElementById("".concat(f.jSPlugin.id,"-expend-content")).children[0].children[0].style="display:none"),document.getElementById("".concat(f.jSPlugin.id,"-webExpend"))&&(document.getElementById("".concat(f.jSPlugin.id,"-webExpend")).className="disabled")):(document.getElementById("".concat(f.jSPlugin.id,"-expend"))&&(document.getElementById("".concat(f.jSPlugin.id,"-expend-content")).children[0].children[0].style="display:inline-block",document.getElementById("".concat(f.jSPlugin.id,"-expend-content")).children[0].children[1].style="display:none"),document.getElementById("".concat(f.jSPlugin.id,"-webExpend"))&&(document.getElementById("".concat(f.jSPlugin.id,"-webExpend")).className="")),document.getElementById("".concat(f.jSPlugin.id,"-expend"))&&(document.getElementById("".concat(f.jSPlugin.id,"-expend")).className=d[M]?"active":"",document.getElementById("".concat(f.jSPlugin.id,"-expend-content")).childNodes[0].childNodes[0].style.fill=d[M]?t2:Z,document.getElementById("".concat(f.jSPlugin.id,"-expend-content")).childNodes[0].childNodes[1].style.fill=d[M]?t2:Z);break;case"hd":d[M]?document.getElementById("".concat(f.jSPlugin.id,"-hd"))&&(document.getElementById("".concat(f.jSPlugin.id,"-hd-content")).children[1].children[0].style="display:block",document.getElementById("".concat(f.jSPlugin.id,"-hd-content")).children[1].children[1].style="display:none"):document.getElementById("".concat(f.jSPlugin.id,"-hd"))&&(document.getElementById("".concat(f.jSPlugin.id,"-hd-content")).children[1].children[1].style="display:block",document.getElementById("".concat(f.jSPlugin.id,"-hd-content")).children[1].children[0].style="display:none");break;case"speed":document.getElementById("".concat(f.jSPlugin.id,"-speed"))&&(document.getElementById("".concat(f.jSPlugin.id,"-speed-content")).children[1].children[0].style.color=d[M]?t2:Z,document.getElementById("".concat(f.jSPlugin.id,"-speed-content")).children[1].children[0].style.borderColor=d[M]?t2:Z),document.getElementById("".concat(f.jSPlugin.id,"-select-mask"))&&(f.isMobile&&d[M]?document.getElementById("".concat(f.jSPlugin.id,"-select-mask")).style.display="block":document.getElementById("".concat(f.jSPlugin.id,"-select-mask")).style.display="none");break;case"cloudRec":document.getElementById("".concat(f.jSPlugin.id,"-cloudRec"))&&(console.log("document.getElementById(`${this.jSPlugin.id}-cloudRec-content`)",document.getElementById("".concat(f.jSPlugin.id,"-cloudRec"))),document.getElementById("".concat(f.jSPlugin.id,"-cloudRec")).className=d[M]?"active":"",document.getElementById("".concat(f.jSPlugin.id,"-cloudRec-content")).children[0].children[0].style.fill=d[M]?t2:Z),document.getElementById("".concat(f.jSPlugin.id,"-rec"))&&(document.getElementById("".concat(f.jSPlugin.id,"-rec")).className=d[M]?"active":"",document.getElementById("".concat(f.jSPlugin.id,"-rec-content")).children[0].children[0].style.fill=d[M]?Z:t2);break;case"rec":document.getElementById("".concat(f.jSPlugin.id,"-cloudRec"))&&(document.getElementById("".concat(f.jSPlugin.id,"-cloudRec")).className=d[M]?"active":"",document.getElementById("".concat(f.jSPlugin.id,"-cloudRec-content")).children[0].children[0].style.fill=d[M]?Z:t2),document.getElementById("".concat(f.jSPlugin.id,"-rec"))&&(document.getElementById("".concat(f.jSPlugin.id,"-rec")).className=d[M]?"active":"",document.getElementById("".concat(f.jSPlugin.id,"-rec-content")).children[0].children[0].style.fill=d[M]?t2:Z);break}f.decoderState.state=Object.assign(f.decoderState.state,d)})}},{key:"startAutoFocus",value:function(){var d=this,f=this.autoFocus;this.autoFocusTimer&&clearTimeout(this.autoFocusTimer),this.autoFocusTimer=setTimeout(function(){document.getElementById("".concat(d.jSPlugin.id,"-audioControls"))&&(document.getElementById("".concat(d.jSPlugin.id,"-audioControls")).style.opacity=0,document.getElementById("".concat(d.jSPlugin.id,"-audioControls")).style.pointerEvents="none")},f*1e3)}},{key:"stopAutoFocus",value:function(){document.getElementById("".concat(this.jSPlugin.id,"-audioControls"))&&(document.getElementById("".concat(this.jSPlugin.id,"-audioControls")).style.opacity=1,document.getElementById("".concat(this.jSPlugin.id,"-audioControls")).style.pointerEvents="all"),this.autoFocusTimer&&clearTimeout(this.autoFocusTimer),this.startAutoFocus()}},{key:"toString",value:function(){return"".concat(this.coreX,"-").concat(this.coreY)}},{key:"renderFooter",value:function(d,f){var y=this,b=this.matchBtn(d);if(this.isMobile&&b.id==="zoom")return!1;var _=document.createElement("div");_.className="theme-icon-item",_.innerHTML="".concat('')+' ')).concat(b.domString,"")+"",_.onclick=function(t2){if(y.decoderState.state.isEditing)return!1;b.onclick(t2)},b.onmouseenter&&(_.onmouseenter=function(t2){if(y.decoderState.state.isEditing)return!1;b.onmouseenter(t2)}),b.onmouseleave&&(_.onmouseleave=function(t2){if(y.decoderState.state.isEditing)return!1;b.onmouseleave(t2)});var M=document.createElement("span");M.className="icon-move left",M.innerHTML=''),M.onclick=function(){y.editIcon(b.id,"left","footer")},_.appendChild(M);var a2=document.createElement("span");a2.className="icon-move right",a2.innerHTML=''),a2.onclick=function(){y.editIcon(b.id,"right","footer")},_.appendChild(a2);var Z=document.createElement("span");Z.className="icon-move close",Z.innerHTML='',Z.onclick=function(){y.editIcon(b.id,"delete","footer")},_.appendChild(Z),f==="left"?document.getElementById("".concat(this.jSPlugin.id,"-audioControls")).childNodes[0].appendChild(_):document.getElementById("".concat(this.jSPlugin.id,"-audioControls")).childNodes[1].appendChild(_)}},{key:"editIcon",value:function(d,f,y){console.log("编辑组件",d,f,y);var b=this.themeData;console.log("themeData",this.themeData);var _=this.themeData[y].btnList,M=m3.findIndex(_,function(k2){return k2.iconId===d}),a2=_[M];switch(f){case"delete":if(d==="rec"){if(m3.findIndex(_,function(k2){return k2.iconId==="cloudRec"&&k2.isrender==1})===-1)return this.jSPlugin.Message&&this.jSPlugin.Message.default("必须选中一种存储介质"),!1}else if(d==="cloudRec"&&m3.findIndex(_,function(k2){return k2.iconId==="rec"&&k2.isrender==1})===-1)return this.jSPlugin.Message&&this.jSPlugin.Message.default("必须选中一种存储介质"),!1;_[M].isrender=0;break;case"right":for(var Z=-1,t2=M+1;t2<_.length;t2++)if(_[t2].part===_[M].part&&_[t2].isrender==1){Z=t2;break}Z!==-1&&(_[M]=_[Z],_[Z]=a2);break;case"left":for(var J=-1,Y=M-1;Y>=0;Y--)if(_[Y].part===_[M].part&&_[Y].isrender==1){J=Y;break}J!==-1&&(_[M]=_[J],_[J]=a2);break}console.log("new btnList",_),b[y].btnList=_,this.changeTheme(b)}},{key:"renderHeader",value:function(d,f){var y=this,b=this.matchBtn(d),_=document.createElement("div");_.className="theme-icon-item",_.style="max-width:50%;",_.innerHTML="".concat('')+'')).concat(b.domString,"")+'',_.onclick=function(a2){if(y.decoderState.state.isEditing)return!1;b.onclick(a2)};var M=document.createElement("span");M.className="icon-move close",M.innerHTML='',M.onclick=function(){y.editIcon(b.id,"delete","header")},_.appendChild(M),f==="left"?document.getElementById("".concat(this.jSPlugin.id,"-headControl")).childNodes[0].appendChild(_):document.getElementById("".concat(this.jSPlugin.id,"-headControl")).childNodes[1].appendChild(_)}},{key:"countTime",value:function(d){var f=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,y=this;if(!document.getElementById(this.jSPlugin.id+"time-area")){var b=document.createElement("div");b.id=this.jSPlugin.id+"time-area",b.className="time-area",b.innerHTML='00:00',document.getElementById("".concat(this.jSPlugin.id,"-ez-iframe-footer-container"))&&document.getElementById("".concat(this.jSPlugin.id,"-ez-iframe-footer-container")).appendChild(b)}if(this.countTimer&&clearInterval(this.countTimer),d==="add"){var _=f;document.getElementById(y.jSPlugin.id+"time-area").style.display="flex",this.countTimer=setInterval(function(){++_,document.getElementById(y.jSPlugin.id+"time-area").children[1].innerHTML=M(_)},1e3)}else d==="destroy"&&(this.countTimer&&clearInterval(this.countTimer),this.countTimer=void 0,document.getElementById(y.jSPlugin.id+"time-area")&&(document.getElementById(y.jSPlugin.id+"time-area").children[1].innerHTML="00:00",document.getElementById(y.jSPlugin.id+"time-area").style.display="none"));function M(a2){var Z=parseInt(a2),t2=0,J=0,Y="00",k2="00",y2="00";return Z>59&&(t2=parseInt(Z/60),Z=parseInt(Z%60),t2>59&&(J=parseInt(t2/60),t2=parseInt(t2%60))),Y=parseInt(Z)>9?parseInt(Z):"0"+parseInt(Z),k2=parseInt(t2)>9?parseInt(t2):"0"+parseInt(t2),y2=parseInt(J)>9?parseInt(J):"0"+parseInt(J),J>0?y2+":"+k2+":"+Y:t2>0?k2+":"+Y:"00:"+Y}}},{key:"setDisabled",value:function(d){var f=this.decoderState.state,y=f.sound,b=f.hd;document.getElementById(y?"".concat(this.jSPlugin.id,"-sound-icon"):"".concat(this.jSPlugin.id,"-nosound-icon"))!=null&&document.getElementById(y?"".concat(this.jSPlugin.id,"-sound-icon"):"".concat(this.jSPlugin.id,"-nosound-icon")).setAttribute("style",d?"cursor: not-allowed;fill: gray":"cursor: default"),document.getElementById("".concat(this.jSPlugin.id,"-recordvideo-icon"))!=null&&document.getElementById("".concat(this.jSPlugin.id,"-recordvideo-icon")).setAttribute("style",d?"cursor: not-allowed;fill: gray":"cursor: default"),document.getElementById("".concat(this.jSPlugin.id,"-capturePicture-icon"))!=null&&document.getElementById("".concat(this.jSPlugin.id,"-capturePicture-icon")).setAttribute("style",d?"cursor: not-allowed;fill: gray":"cursor: default"),document.getElementById("".concat(this.jSPlugin.id,"-talk-icon"))!=null&&document.getElementById("".concat(this.jSPlugin.id,"-talk-icon")).setAttribute("style",d?"cursor: not-allowed;fill: gray":"cursor: default"),document.getElementById("".concat(this.jSPlugin.id,"-zoom-icon"))!=null&&document.getElementById("".concat(this.jSPlugin.id,"-zoom-icon")).setAttribute("style",d?"cursor: not-allowed;fill: gray":"cursor: default"),document.getElementById("".concat(this.jSPlugin.id,"-pantile-icon"))!=null&&document.getElementById("".concat(this.jSPlugin.id,"-pantile-icon")).setAttribute("style",d?"cursor: not-allowed;fill: gray":"cursor: default"),document.getElementById(b?"".concat(this.jSPlugin.id,"-hdSelect-icon"):"".concat(this.jSPlugin.id,"-sdSelect-icon"))!=null&&document.getElementById(b?"".concat(this.jSPlugin.id,"-hdSelect-icon"):"".concat(this.jSPlugin.id,"-sdSelect-icon")).setAttribute("style",d?"cursor: not-allowed;fill: gray":"cursor: default"),document.getElementById("".concat(this.jSPlugin.id,"-speed-text"))!=null&&document.getElementById("".concat(this.jSPlugin.id,"-speed-text")).setAttribute("style",document.getElementById("".concat(this.jSPlugin.id,"-speed-text")).getAttribute("style")+";"+(d?"cursor: not-allowed;color: gray;border-color: gray;":"cursor: default;color: #ffffff;border-color: #ffffff;"))}},{key:"matchBtn",value:function(d){var f=this,y=this.themeData,b=y.header,_=y.footer,M={title:"",id:"",domString:"",color:"#FFFFFF",activeColor:"#FFFFFF",onclick:function(){},onmoveleft:function(){},onmoveright:function(){},onremove:function(){}},a2=b.btnList.findIndex(function(Z){return Z.iconId===d});switch(a2===-1?(M.color=_.color,M.backgroundColor=_.backgroundColor,M.activeColor=_.activeColor):(M.color=b.color,M.backgroundColor=b.backgroundColor,M.activeColor=b.activeColor),d){case"play":return M.title="播放/结束播放",M.id=d,M.domString=''+'