From ecf4fbb68445cf412d5e946f67f92c9928df8273 Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期一, 22 八月 2022 16:53:16 +0800
Subject: [PATCH] Merge branch 'wvp-28181-2.0'

---
 web_src/src/components/dialog/devicePlayer.vue |   33 +++++++++++++++++++++++----------
 1 files changed, 23 insertions(+), 10 deletions(-)

diff --git a/web_src/src/components/dialog/devicePlayer.vue b/web_src/src/components/dialog/devicePlayer.vue
index a33e8a4..d9c003a 100644
--- a/web_src/src/components/dialog/devicePlayer.vue
+++ b/web_src/src/components/dialog/devicePlayer.vue
@@ -278,8 +278,9 @@
                 </el-tab-pane>
               <el-tab-pane label="璇煶瀵硅" name="broadcast" >
                 <div class="trank" style="text-align: center;">
-                  <el-button @click="broadcastStatusClick()" :type="getBroadcastStatus()" circle icon="el-icon-microphone"  style="font-size: 32px; padding: 24px;margin-top: 24px;"/>
+                  <el-button @click="broadcastStatusClick()" :type="getBroadcastStatus()" :disabled="broadcastStatus === -2" circle icon="el-icon-microphone"  style="font-size: 32px; padding: 24px;margin-top: 24px;"/>
                   <p>
+                    <span v-if="broadcastStatus === -2">姝e湪閲婃斁璧勬簮</span>
                     <span v-if="broadcastStatus === -1">鐐瑰嚮寮�濮嬪璁�</span>
                     <span v-if="broadcastStatus === 0">绛夊緟鎺ラ�氫腑...</span>
                     <span v-if="broadcastStatus === 1">璇疯璇�</span>
@@ -297,6 +298,7 @@
 
 <script>
 import rtcPlayer from '../dialog/rtcPlayer.vue'
+import crypto from 'crypto'
 // import LivePlayer from '@liveqing/liveplayer'
 // import player from '../dialog/easyPlayer.vue'
 import jessibucaPlayer from '../common/jessibuca.vue'
@@ -371,7 +373,7 @@
             showTimeText: "00:00:00",
             streamInfo: null,
             broadcastRtc: null,
-            broadcastStatus: -1, // -1 榛樿鐘舵�� 0 绛夊緟鎺ラ�� 1 鎺ラ�氭垚鍔�
+            broadcastStatus: -1, // -2 姝e湪閲婃斁璧勬簮 -1 榛樿鐘舵�� 0 绛夊緟鎺ラ�� 1 鎺ラ�氭垚鍔�
         };
     },
     methods: {
@@ -387,7 +389,7 @@
                     url: '/zlm/' +this.mediaServerId+ '/index/api/getMediaInfo?vhost=__defaultVhost__&schema=rtmp&app='+ this.app +'&stream='+ this.streamId
                 }).then(function (res) {
                     that.tracksLoading = false;
-                    if (res.data.code == 0 && res.data.online) {
+                    if (res.data.code == 0 && res.data.tracks) {
                         that.tracks = res.data.tracks;
                     }else{
                         that.tracksNotLoaded = true;
@@ -451,6 +453,7 @@
             this.playFromStreamInfo(false, streamInfo)
         },
         getUrlByStreamInfo(){
+            console.log(this.streamInfo)
             if (location.protocol === "https:") {
               this.videoUrl = this.streamInfo[this.player[this.activePlayer][1]]
             }else {
@@ -465,9 +468,9 @@
             this.$refs[this.activePlayer].pause()
             that.$axios({
                 method: 'post',
-                url: '/api/gb_record/convert/' + that.streamId
+                url: '/api/play/convert/' + that.streamId
                 }).then(function (res) {
-                    if (res.data.code == 0) {
+                    if (res.data.code === 0) {
                         that.convertKey = res.data.key;
                         setTimeout(()=>{
                             that.isLoging = false;
@@ -621,13 +624,15 @@
                     url: '/api/playback/start/' + this.deviceId + '/' + this.channelId + '?startTime=' + row.startTime + '&endTime=' +
                         row.endTime
                 }).then(function (res) {
-                    that.streamInfo = res.data;
+                  if (res.data.code === 0) {
+                    that.streamInfo = res.data.data;
                     that.app = that.streamInfo.app;
                     that.streamId = that.streamInfo.stream;
                     that.mediaServerId = that.streamInfo.mediaServerId;
                     that.ssrc = that.streamInfo.ssrc;
                     that.videoUrl = that.getUrlByStreamInfo();
-                    that.recordPlay = true;
+                  }
+                  that.recordPlay = true;
                 });
             }
         },
@@ -821,6 +826,9 @@
           });
         },
         getBroadcastStatus() {
+            if (this.broadcastStatus == -2) {
+              return "primary"
+            }
             if (this.broadcastStatus == -1) {
               return "primary"
             }
@@ -835,6 +843,7 @@
         broadcastStatusClick() {
             if (this.broadcastStatus == -1) {
               // 榛樿鐘舵�侊紝 寮�濮�
+              this.broadcastStatus = 0
               // 鍙戣捣璇煶瀵硅
               this.$axios({
                 method: 'get',
@@ -856,6 +865,10 @@
             }
         },
         startBroadcast(url){
+          // 鑾峰彇鎺ㄦ祦閴存潈KEY
+          console.log(this.$loginUser)
+          console.log(this.$loginUser.pushKey)
+          url += "&sign=" + crypto.createHash('md5').update(this.$loginUser.pushKey, "utf8").digest('hex')
           console.log("寮�濮嬭闊冲璁诧細 " + url)
           this.broadcastRtc = new ZLMRTCClient.Endpoint({
             debug: true, // 鏄惁鎵撳嵃鏃ュ織
@@ -910,7 +923,7 @@
               this.broadcastStatus = 0;
             }else if (e === "connected") {
               this.broadcastStatus = 1;
-            }else {
+            }else if (e === "disconnected") {
               this.broadcastStatus = -1;
             }
           });
@@ -924,7 +937,7 @@
           });
         },
         stopBroadcast(){
-          this.broadcastRtc.close()
+          this.broadcastStatus = -2;
           this.broadcastRtc = null;
           this.$axios({
             method: 'get',
@@ -932,7 +945,7 @@
           }).then( (res)=> {
             if (res.data.code == 0) {
               // this.broadcastStatus = -1;
-
+              // this.broadcastRtc.close()
             }else {
               this.$message({
                 showClose: true,

--
Gitblit v1.8.0