tremble 3 سال پیش
والد
کامیت
9af324b895
3فایلهای تغییر یافته به همراه17 افزوده شده و 21 حذف شده
  1. 13 10
      src/components/RTC/Trtccom.vue
  2. 2 0
      src/components/RTC/index.vue
  3. 2 11
      src/store/modules/rtc.js

+ 13 - 10
src/components/RTC/Trtccom.vue

@@ -1,6 +1,6 @@
 <template>
 <template>
   <div class="trtccom" v-if="show">
   <div class="trtccom" v-if="show">
-    <Device @switchDevice="switchDevice" @canUseDevice="canUseDevice"  />
+    <Device @switchDevice="switchDevice" @canUseDevice="canUseDevice" />
     <div class="local" id="local" v-if="isJoined">
     <div class="local" id="local" v-if="isJoined">
       <div class="tag">
       <div class="tag">
         <div :class="audioMuted ? 'muteAudio' : 'unmuteAudio'" @click="muteAudio"></div>
         <div :class="audioMuted ? 'muteAudio' : 'unmuteAudio'" @click="muteAudio"></div>
@@ -21,6 +21,11 @@ const store = useStore();
 const show = ref(false);
 const show = ref(false);
 const isJoined = computed(() => store.getters["rtc/isJoined"]);
 const isJoined = computed(() => store.getters["rtc/isJoined"]);
 const isPublished = computed(() => store.getters["rtc/isPublished"]);
 const isPublished = computed(() => store.getters["rtc/isPublished"]);
+const userSig = computed(() => store.getters["rtc/userSig"]);
+
+const initParamsStates = computed(
+  () => !!(store.getters["rtc/sdkAppId"] && store.getters["rtc/secretKey"] && store.getters["rtc/roomId"] && store.getters["rtc/userId"])
+);
 
 
 let localClient = "";
 let localClient = "";
 let localStream = "";
 let localStream = "";
@@ -60,18 +65,17 @@ async function createLocalStream() {
 }
 }
 
 
 async function handleJoin() {
 async function handleJoin() {
-  console.log(!store.commit("rtc/getInitParamsStates"),'getInitParamsStates');
-  if (!store.commit("rtc/getInitParamsStates")) {
+  console.log(!initParamsStates.value);
+  if (!initParamsStates.value) {
     return;
     return;
   }
   }
-  const userSig = store.commit("rtc/getUserSig");
 
 
   try {
   try {
     localClient = TRTC.createClient({
     localClient = TRTC.createClient({
       mode: "rtc",
       mode: "rtc",
       sdkAppId: parseInt(store.getters["rtc/sdkAppId"], 10),
       sdkAppId: parseInt(store.getters["rtc/sdkAppId"], 10),
       userId: store.getters["rtc/userId"],
       userId: store.getters["rtc/userId"],
-      userSig,
+      userSig: userSig.value,
     });
     });
     installEventHandlers();
     installEventHandlers();
     await localClient.join({ roomId: parseInt(store.getters["rtc/roomId"], 10) });
     await localClient.join({ roomId: parseInt(store.getters["rtc/roomId"], 10) });
@@ -276,11 +280,10 @@ let switchDevice = async ({ videoId, audioId }) => {
   }
   }
 };
 };
 
 
-let canUseDevice = ()=>{
-  console.log('可用');
-    handleJoin();
-}
-
+let canUseDevice = () => {
+  console.log("可用");
+  handleJoin();
+};
 </script>
 </script>
 
 
 <style lang="scss" scoped>
 <style lang="scss" scoped>

+ 2 - 0
src/components/RTC/index.vue

@@ -33,6 +33,8 @@ const userName = ref(browser.getURLParam("name"));
 const socket = computed(() => store.getters["rtc/socket"]);
 const socket = computed(() => store.getters["rtc/socket"]);
 
 
 
 
+
+
 const openDialog = (str, link) => {
 const openDialog = (str, link) => {
   shareLink.value = link;
   shareLink.value = link;
   dialog.value = str;
   dialog.value = str;

+ 2 - 11
src/store/modules/rtc.js

@@ -84,17 +84,8 @@ export default {
         setIsPublished(state, payload){
         setIsPublished(state, payload){
             state.isPublished = payload
             state.isPublished = payload
         },
         },
-        getInitParamsStates(state, payload) {
-            console.log(state.sdkAppId , state.secretKey , state.roomId , state.userId);
-            return !!(state.sdkAppId && state.secretKey && state.roomId && state.userId);
-        },
-        getUserSig(state, payload) {
-            return state.userSig || genTestUserSig({
-                sdkAppId: parseInt(state.sdkAppId, 10),
-                userId: state.userId,
-                secretKey: state.secretKey,
-            }).userSig;
-        },
+       
+    
         createShareLink(state, payload) {
         createShareLink(state, payload) {
             const userId = `Guest_${Math.floor(Math.random() * 1000000)}`;
             const userId = `Guest_${Math.floor(Math.random() * 1000000)}`;
             const { userSig } = genTestUserSig({
             const { userSig } = genTestUserSig({