2 lines
3.1 KiB
JavaScript
2 lines
3.1 KiB
JavaScript
var D=Object.defineProperty,U=Object.defineProperties;var C=Object.getOwnPropertyDescriptors;var S=Object.getOwnPropertySymbols;var N=Object.prototype.hasOwnProperty,y=Object.prototype.propertyIsEnumerable;var p=(t,e,r)=>e in t?D(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,m=(t,e)=>{for(var r in e||(e={}))N.call(e,r)&&p(t,r,e[r]);if(S)for(var r of S(e))y.call(e,r)&&p(t,r,e[r]);return t},l=(t,e)=>U(t,C(e));var d=(t,e,r)=>(p(t,typeof e!="symbol"?e+"":e,r),r);var b={properties:{roomId:{type:"number"},strRoomId:{type:"string"}}},c={name:"option",required:!0,properties:l(m({},b.properties),{userId:{type:"string"}})},R={name:"option",required:!0,properties:{updateList:{type:"array",required:!0,arrayItem:{required:!0,type:"object",properties:l(m({},c.properties),{userId:{required:!1,type:"string"},muteAudio:{type:"boolean"},muteVideo:{type:"boolean"},muteSubStream:{type:"boolean"}})}}}},E={name:"option",properties:m({},b.properties)};var u=class u{constructor(e){this.core=e;d(this,"updateSeq",0)}getName(){return u.Name}getAlias(){return"crs-r"}getGroup(e){var a;let r=(e==null?void 0:e.userId)||((a=e==null?void 0:e.updateList)==null?void 0:a[0].userId)||"";return r||(e?e.updateList?String(e.updateList[0].roomId)||e.updateList[0].strRoomId||"":String(e.roomId)||e.strRoomId||"":"*")}getValidateRule(e){switch(e){case"start":return c;case"update":return R;case"stop":return E}}async start({roomId:e,strRoomId:r,userId:a}){let{RtcError:i,ErrorCode:o}=this.core.errorModule;if(!this.core.room.sendSignalMessage)throw new i({code:o.ENV_NOT_SUPPORTED});let s=e||r,n=await this.core.room.sendSignalMessage({command:"connect_other_room",responseCommand:8209,data:{roomId:s,userId:a,localRoomId:a?void 0:this.core.room.roomId},retries:3});if(n.data.code!==0)throw new i({code:o.SERVER_ERROR,extraCode:n.data.code,message:n.data.message})}async update({updateList:e}){var s;let{RtcError:r,ErrorCode:a}=this.core.errorModule;if(!this.core.room.sendSignalMessage)throw new r({code:a.ENV_NOT_SUPPORTED});let i=e.find(n=>n.userId)?0:1,o=await this.core.room.sendSignalMessage({command:"update_other_room_forward_mode",responseCommand:8213,data:{seq:++this.updateSeq,operationType:i,updateList:e.map(({roomId:n,strRoomId:g,userId:O,muteAudio:_,muteVideo:A,muteSubStream:I})=>({roomId:n||g,userId:O,muteAudio:_,muteVideo:A,muteSubStream:I}))},retries:3});if(o.data.data.expectSeq)return this.updateSeq=o.data.data.expectSeq,this.update({updateList:e});if(o.data.code!==0)throw new r({code:a.SERVER_ERROR,extraCode:o.data.code,message:o.data.message});if(((s=o.data.data.errorList)==null?void 0:s.length)>0)throw new r({code:a.UNKNOWN_ERROR,message:o.data.data.errorList[0].message})}async stop({roomId:e,strRoomId:r}={}){let{RtcError:a,ErrorCode:i}=this.core.errorModule;if(!this.core.room.sendSignalMessage)throw new a({code:i.ENV_NOT_SUPPORTED});let o=e||r,s=await this.core.room.sendSignalMessage({command:"disconnect_other_room",responseCommand:8211,data:{roomId:o,localRoomId:this.core.room.roomId},retries:3});if(s.data.code!==0)throw new a({code:i.SERVER_ERROR,extraCode:s.data.code,message:s.data.message})}destroy(){}};d(u,"Name","CrossRoom");var T=u;export{T as default};
|