| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- package com.genersoft.iot.vmp.media.zlm;
- import com.alibaba.fastjson2.JSON;
- import com.alibaba.fastjson2.JSONArray;
- import com.alibaba.fastjson2.JSONObject;
- import com.genersoft.iot.vmp.common.CommonCallback;
- import com.genersoft.iot.vmp.media.IMediaNodeServerService;
- import com.genersoft.iot.vmp.media.zlm.dto.MediaServerItem;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Component;
- import org.springframework.stereotype.Service;
- @Service("zlm")
- public class ZLMMediaNodeServerService implements IMediaNodeServerService {
- @Autowired
- private ZLMRESTfulUtils zlmresTfulUtils;
- @Autowired
- private ZLMServerFactory zlmServerFactory;
- @Override
- public int createRTPServer(MediaServerItem mediaServerItem, String streamId, long ssrc, Integer port, Boolean onlyAuto, Boolean reUsePort, Integer tcpMode) {
- return zlmServerFactory.createRTPServer(mediaServerItem, streamId, ssrc, port, onlyAuto, reUsePort, tcpMode);;
- }
- @Override
- public void closeRtpServer(MediaServerItem mediaServerItem, String streamId) {
- zlmresTfulUtils.closeStreams(mediaServerItem, "rtp", streamId);
- }
- @Override
- public void closeRtpServer(MediaServerItem mediaServerItem, String streamId, CommonCallback<Boolean> callback) {
- zlmServerFactory.closeRtpServer(mediaServerItem, streamId, callback);
- }
- @Override
- public void closeStreams(MediaServerItem mediaServerItem, String app, String stream) {
- zlmresTfulUtils.closeStreams(mediaServerItem, app, stream);
- }
- @Override
- public Boolean updateRtpServerSSRC(MediaServerItem mediaServerItem, String streamId, String ssrc) {
- return zlmServerFactory.updateRtpServerSSRC(mediaServerItem, streamId, ssrc);
- }
- @Override
- public boolean checkNodeId(MediaServerItem mediaServerItem) {
- if (mediaServerItem == null) {
- return false;
- }
- JSONObject responseJSON = zlmresTfulUtils.getMediaServerConfig(mediaServerItem);
- if (responseJSON != null) {
- JSONArray data = responseJSON.getJSONArray("data");
- if (data != null && !data.isEmpty()) {
- ZLMServerConfig zlmServerConfig= JSON.parseObject(JSON.toJSONString(data.get(0)), ZLMServerConfig.class);
- return zlmServerConfig.getGeneralMediaServerId().equals(mediaServerItem.getId());
- }else {
- return false;
- }
- }else {
- return false;
- }
- }
- @Override
- public void online(MediaServerItem mediaServerItem) {
- }
- }
|