648540858
2022-07-03 72c1b36d6d2ece497e032c8434641d6576590f9d
src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMMediaListManager.java
@@ -24,6 +24,9 @@
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
 * @author lin
 */
@Component
public class ZLMMediaListManager {
@@ -67,7 +70,9 @@
        // 使用异步的当时更新媒体流列表
        zlmresTfulUtils.getMediaList(mediaServerItem, (mediaList ->{
            if (mediaList == null) return;
            if (mediaList == null) {
                return;
            }
            String dataStr = mediaList.getString("data");
            Integer code = mediaList.getInteger("code");
@@ -145,7 +150,6 @@
                    }
                }
            }
            //            StreamProxyItem streamProxyItem = gbStreamMapper.selectOne(transform.getApp(), transform.getStream());
            List<GbStream> gbStreamList = gbStreamMapper.selectByGBId(transform.getGbId());
            if (gbStreamList != null && gbStreamList.size() == 1) {
                transform.setGbStreamId(gbStreamList.get(0).getGbStreamId());
@@ -160,12 +164,11 @@
            }
            if (transform != null) {
                if (channelOnlineEvents.get(transform.getGbId()) != null)  {
                    channelOnlineEvents.get(transform.getGbId()).run(transform.getApp(), transform.getStream());
                    channelOnlineEvents.get(transform.getGbId()).run(transform.getApp(), transform.getStream(), transform.getServerId());
                    channelOnlineEvents.remove(transform.getGbId());
                }
            }
        }
        storager.updateMedia(transform);
        return transform;
@@ -176,7 +179,9 @@
        //使用异步更新推流
        zlmresTfulUtils.getMediaList(mediaServerItem, app, streamId, "rtmp", json->{
            if (json == null) return;
            if (json == null) {
                return;
            }
            String dataStr = json.getString("data");
            Integer code = json.getInteger("code");
@@ -204,6 +209,7 @@
        if (streamProxyItem == null) {
            result = storager.removeMedia(app, streamId);
        }else {
            // TODO 暂不设置为离线
            result =storager.mediaOutline(app, streamId);
        }
        return result;