From a70e327a8efaf38d74911ea568419a087fbd235a Mon Sep 17 00:00:00 2001
From: lawrencehj <1934378145@qq.com>
Date: 星期四, 15 四月 2021 11:42:05 +0800
Subject: [PATCH] 修改用户密码前先验证旧密码,增加安全性

---
 src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRTPServerFactory.java |   53 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 52 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRTPServerFactory.java b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRTPServerFactory.java
index 00951ba..02fb742 100644
--- a/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRTPServerFactory.java
+++ b/src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRTPServerFactory.java
@@ -96,7 +96,7 @@
     }
 
     /**
-     * 鍒涘缓涓�涓帹娴�
+     * 鍒涘缓涓�涓浗鏍囨帹娴�
      * @param ip 鎺ㄦ祦ip
      * @param port 鎺ㄦ祦绔彛
      * @param ssrc 鎺ㄦ祦鍞竴鏍囪瘑
@@ -120,6 +120,39 @@
         sendRtpItem.setSsrc(ssrc);
         sendRtpItem.setPlatformId(platformId);
         sendRtpItem.setDeviceId(deviceId);
+        sendRtpItem.setChannelId(channelId);
+        sendRtpItem.setTcp(tcp);
+        sendRtpItem.setApp("rtp");
+        sendRtpItem.setLocalPort(localPort);
+        return sendRtpItem;
+    }
+
+    /**
+     * 鍒涘缓涓�涓洿鎾帹娴�
+     * @param ip 鎺ㄦ祦ip
+     * @param port 鎺ㄦ祦绔彛
+     * @param ssrc 鎺ㄦ祦鍞竴鏍囪瘑
+     * @param platformId 骞冲彴id
+     * @param channelId 閫氶亾id
+     * @param tcp 鏄惁涓簍cp
+     * @return SendRtpItem
+     */
+    public SendRtpItem createSendRtpItem(String ip, int port, String ssrc, String platformId, String app, String stream, String channelId, boolean tcp){
+        String playSsrc = SsrcUtil.getPlaySsrc();
+        int localPort = createRTPServer(SsrcUtil.getPlaySsrc());
+        if (localPort != -1) {
+            closeRTPServer(playSsrc);
+        }else {
+            logger.error("娌℃湁鍙敤鐨勭鍙�");
+            return null;
+        }
+        SendRtpItem sendRtpItem = new SendRtpItem();
+        sendRtpItem.setIp(ip);
+        sendRtpItem.setPort(port);
+        sendRtpItem.setSsrc(ssrc);
+        sendRtpItem.setApp(app);
+        sendRtpItem.setStreamId(stream);
+        sendRtpItem.setPlatformId(platformId);
         sendRtpItem.setChannelId(channelId);
         sendRtpItem.setTcp(tcp);
         sendRtpItem.setLocalPort(localPort);
@@ -153,6 +186,24 @@
     }
 
     /**
+     * 鏌ヨ寰呰浆鎺ㄧ殑娴佹槸鍚﹀氨缁�
+     */
+    public Boolean isStreamReady(String app, String streamId) {
+        JSONObject mediaInfo = zlmresTfulUtils.getMediaInfo(app, "rtmp", streamId);
+        return (mediaInfo.getInteger("code") == 0 && mediaInfo.getBoolean("online"));
+    }
+
+    /**
+     * 鏌ヨ杞帹鐨勬祦鏄惁鏈夊叾瀹冭鐪嬭��
+     * @param streamId
+     * @return
+     */
+    public int totalReaderCount(String app, String streamId) {
+        JSONObject mediaInfo = zlmresTfulUtils.getMediaInfo(app, "rtmp", streamId);
+        return mediaInfo.getInteger("totalReaderCount");
+    }
+
+    /**
      * 璋冪敤zlm RESTful API 鈥斺�� stopSendRtp
      */
     public Boolean stopSendRtpStream(Map<String, Object>param) {

--
Gitblit v1.8.0