添加addParentPlatform, queryParentPlatformList 接口
This commit is contained in:
@@ -20,6 +20,8 @@ public class VideoManagerConstants {
|
||||
|
||||
public static final String PLAY_BLACK_PREFIX = "VMP_playback_";
|
||||
|
||||
public static final String PLATFORM_PREFIX = "VMP_platform_";
|
||||
|
||||
public static final String EVENT_ONLINE_REGISTER = "1";
|
||||
|
||||
public static final String EVENT_ONLINE_KEEPLIVE = "2";
|
||||
|
||||
@@ -0,0 +1,227 @@
|
||||
package com.genersoft.iot.vmp.gb28181.bean;
|
||||
|
||||
public class ParentPlatform {
|
||||
|
||||
/**
|
||||
* 是否启用
|
||||
*/
|
||||
private boolean enable;
|
||||
|
||||
/**
|
||||
* 名称
|
||||
*/
|
||||
private String name;
|
||||
|
||||
/**
|
||||
* SIP服务国标编码
|
||||
*/
|
||||
private String serverGBId;
|
||||
|
||||
/**
|
||||
* SIP服务国标域
|
||||
*/
|
||||
private String serverGBDomain;
|
||||
|
||||
/**
|
||||
* SIP服务IP
|
||||
*/
|
||||
private String serverIP;
|
||||
|
||||
/**
|
||||
* SIP服务端口
|
||||
*/
|
||||
private int serverPort;
|
||||
|
||||
/**
|
||||
* 设备国标编号
|
||||
*/
|
||||
private String deviceGBId;
|
||||
|
||||
/**
|
||||
* 设备ip
|
||||
*/
|
||||
private String deviceIp;
|
||||
|
||||
/**
|
||||
* 设备端口
|
||||
*/
|
||||
private String devicePort;
|
||||
|
||||
/**
|
||||
* SIP认证用户名(默认使用设备国标编号)
|
||||
*/
|
||||
private String username;
|
||||
|
||||
/**
|
||||
* SIP认证密码
|
||||
*/
|
||||
private String password;
|
||||
|
||||
/**
|
||||
* 注册周期 (秒)
|
||||
*/
|
||||
private String expires;
|
||||
|
||||
/**
|
||||
* 心跳周期(秒)
|
||||
*/
|
||||
private String keepTimeout;
|
||||
|
||||
/**
|
||||
* 传输协议
|
||||
* UDP/TCP
|
||||
*/
|
||||
private String transport;
|
||||
|
||||
/**
|
||||
* 字符集
|
||||
*/
|
||||
private String characterSet;
|
||||
|
||||
/**
|
||||
* 允许云台控制
|
||||
*/
|
||||
private boolean PTZEnable;
|
||||
|
||||
/**
|
||||
* RTCP流保活
|
||||
*/
|
||||
private boolean rtcp;
|
||||
|
||||
|
||||
public boolean isEnable() {
|
||||
return enable;
|
||||
}
|
||||
|
||||
public void setEnable(boolean enable) {
|
||||
this.enable = enable;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public void setName(String name) {
|
||||
this.name = name;
|
||||
}
|
||||
|
||||
public String getServerGBId() {
|
||||
return serverGBId;
|
||||
}
|
||||
|
||||
public void setServerGBId(String serverGBId) {
|
||||
this.serverGBId = serverGBId;
|
||||
}
|
||||
|
||||
public String getServerGBDomain() {
|
||||
return serverGBDomain;
|
||||
}
|
||||
|
||||
public void setServerGBDomain(String serverGBDomain) {
|
||||
this.serverGBDomain = serverGBDomain;
|
||||
}
|
||||
|
||||
public String getServerIP() {
|
||||
return serverIP;
|
||||
}
|
||||
|
||||
public void setServerIP(String serverIP) {
|
||||
this.serverIP = serverIP;
|
||||
}
|
||||
|
||||
public int getServerPort() {
|
||||
return serverPort;
|
||||
}
|
||||
|
||||
public void setServerPort(int serverPort) {
|
||||
this.serverPort = serverPort;
|
||||
}
|
||||
|
||||
public String getDeviceGBId() {
|
||||
return deviceGBId;
|
||||
}
|
||||
|
||||
public void setDeviceGBId(String deviceGBId) {
|
||||
this.deviceGBId = deviceGBId;
|
||||
}
|
||||
|
||||
public String getDeviceIp() {
|
||||
return deviceIp;
|
||||
}
|
||||
|
||||
public void setDeviceIp(String deviceIp) {
|
||||
this.deviceIp = deviceIp;
|
||||
}
|
||||
|
||||
public String getDevicePort() {
|
||||
return devicePort;
|
||||
}
|
||||
|
||||
public void setDevicePort(String devicePort) {
|
||||
this.devicePort = devicePort;
|
||||
}
|
||||
|
||||
public String getUsername() {
|
||||
return username;
|
||||
}
|
||||
|
||||
public void setUsername(String username) {
|
||||
this.username = username;
|
||||
}
|
||||
|
||||
public String getPassword() {
|
||||
return password;
|
||||
}
|
||||
|
||||
public void setPassword(String password) {
|
||||
this.password = password;
|
||||
}
|
||||
|
||||
public String getExpires() {
|
||||
return expires;
|
||||
}
|
||||
|
||||
public void setExpires(String expires) {
|
||||
this.expires = expires;
|
||||
}
|
||||
|
||||
public String getKeepTimeout() {
|
||||
return keepTimeout;
|
||||
}
|
||||
|
||||
public void setKeepTimeout(String keepTimeout) {
|
||||
this.keepTimeout = keepTimeout;
|
||||
}
|
||||
|
||||
public String getTransport() {
|
||||
return transport;
|
||||
}
|
||||
|
||||
public void setTransport(String transport) {
|
||||
this.transport = transport;
|
||||
}
|
||||
|
||||
public String getCharacterSet() {
|
||||
return characterSet;
|
||||
}
|
||||
|
||||
public void setCharacterSet(String characterSet) {
|
||||
this.characterSet = characterSet;
|
||||
}
|
||||
|
||||
public boolean isPTZEnable() {
|
||||
return PTZEnable;
|
||||
}
|
||||
|
||||
public void setPTZEnable(boolean PTZEnable) {
|
||||
this.PTZEnable = PTZEnable;
|
||||
}
|
||||
|
||||
public boolean isRtcp() {
|
||||
return rtcp;
|
||||
}
|
||||
|
||||
public void setRtcp(boolean rtcp) {
|
||||
this.rtcp = rtcp;
|
||||
}
|
||||
}
|
||||
@@ -9,6 +9,7 @@ import com.genersoft.iot.vmp.common.StreamInfo;
|
||||
import com.genersoft.iot.vmp.conf.MediaServerConfig;
|
||||
import com.genersoft.iot.vmp.gb28181.bean.Device;
|
||||
import com.genersoft.iot.vmp.gb28181.bean.DeviceChannel;
|
||||
import com.genersoft.iot.vmp.gb28181.bean.ParentPlatform;
|
||||
|
||||
/**
|
||||
* @Description:视频设备数据存储接口
|
||||
@@ -191,4 +192,25 @@ public interface IVideoManagerStorager {
|
||||
StreamInfo queryPlaybackByDevice(String deviceId, String channelId);
|
||||
|
||||
StreamInfo queryPlaybackBySSRC(String ssrc);
|
||||
|
||||
/**
|
||||
* 更新或添加上级平台
|
||||
* @param parentPlatform
|
||||
*/
|
||||
boolean updateParentPlatform(ParentPlatform parentPlatform);
|
||||
|
||||
/**
|
||||
* 删除上级平台
|
||||
* @param parentPlatform
|
||||
*/
|
||||
boolean deleteParentPlatform(ParentPlatform parentPlatform);
|
||||
|
||||
|
||||
/**
|
||||
* 分页获取上级平台
|
||||
* @param page
|
||||
* @param count
|
||||
* @return
|
||||
*/
|
||||
public PageResult<ParentPlatform> queryParentPlatformList(int page, int count);
|
||||
}
|
||||
|
||||
@@ -7,6 +7,7 @@ import com.genersoft.iot.vmp.common.PageResult;
|
||||
import com.genersoft.iot.vmp.common.StreamInfo;
|
||||
import com.genersoft.iot.vmp.conf.MediaServerConfig;
|
||||
import com.genersoft.iot.vmp.gb28181.bean.DeviceChannel;
|
||||
import com.genersoft.iot.vmp.gb28181.bean.ParentPlatform;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@@ -213,4 +214,19 @@ public class VideoManagerJdbcStoragerImpl implements IVideoManagerStorager {
|
||||
public StreamInfo queryPlaybackBySSRC(String ssrc) {
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean updateParentPlatform(ParentPlatform parentPlatform) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean deleteParentPlatform(ParentPlatform parentPlatform) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResult<ParentPlatform> queryParentPlatformList(int page, int count) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@ import com.genersoft.iot.vmp.common.PageResult;
|
||||
import com.genersoft.iot.vmp.common.StreamInfo;
|
||||
import com.genersoft.iot.vmp.conf.MediaServerConfig;
|
||||
import com.genersoft.iot.vmp.gb28181.bean.DeviceChannel;
|
||||
import com.genersoft.iot.vmp.gb28181.bean.ParentPlatform;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
@@ -557,4 +558,33 @@ public class VideoManagerRedisStoragerImpl implements IVideoManagerStorager {
|
||||
if (playLeys == null || playLeys.size() == 0) return null;
|
||||
return (StreamInfo)redis.get(playLeys.get(0).toString());
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean updateParentPlatform(ParentPlatform parentPlatform) {
|
||||
// 存储device
|
||||
return redis.set(VideoManagerConstants.PLATFORM_PREFIX + parentPlatform.getDeviceGBId(), parentPlatform);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean deleteParentPlatform(ParentPlatform parentPlatform) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResult<ParentPlatform> queryParentPlatformList(int page, int count) {
|
||||
PageResult pageResult = new PageResult<Device>();
|
||||
pageResult.setPage(page);
|
||||
pageResult.setCount(count);
|
||||
List<ParentPlatform> resultData = new ArrayList<>();
|
||||
List<Object> parentPlatformList = redis.scan(VideoManagerConstants.PLATFORM_PREFIX + "*");
|
||||
pageResult.setTotal(parentPlatformList.size());
|
||||
int maxCount = (page + 1)* count;
|
||||
for (int i = page * count; i < (pageResult.getTotal() > maxCount ? maxCount : pageResult.getTotal() ); i++) {
|
||||
ParentPlatform parentPlatform =(ParentPlatform)redis.get((String)parentPlatformList.get(i));
|
||||
resultData.add(parentPlatform);
|
||||
|
||||
}
|
||||
pageResult.setData(resultData);
|
||||
return pageResult;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
package com.genersoft.iot.vmp.vmanager.platform;
|
||||
|
||||
import com.genersoft.iot.vmp.common.PageResult;
|
||||
import com.genersoft.iot.vmp.gb28181.bean.Device;
|
||||
import com.genersoft.iot.vmp.gb28181.bean.ParentPlatform;
|
||||
import com.genersoft.iot.vmp.storager.IVideoManagerStorager;
|
||||
import com.genersoft.iot.vmp.vmanager.device.DeviceController;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.stereotype.Controller;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@CrossOrigin
|
||||
@RestController
|
||||
@RequestMapping("/api")
|
||||
public class PlatformController {
|
||||
|
||||
private final static Logger logger = LoggerFactory.getLogger(PlatformController.class);
|
||||
|
||||
@Autowired
|
||||
private IVideoManagerStorager storager;
|
||||
|
||||
@GetMapping("/platforms")
|
||||
public PageResult<ParentPlatform> platforms(int page, int count){
|
||||
|
||||
if (logger.isDebugEnabled()) {
|
||||
logger.debug("查询所有上级设备API调用");
|
||||
}
|
||||
return storager.queryParentPlatformList(page, count);
|
||||
}
|
||||
|
||||
@PostMapping("/platforms/add")
|
||||
public ResponseEntity<String> addPlatform(ParentPlatform parentPlatform){
|
||||
|
||||
if (logger.isDebugEnabled()) {
|
||||
logger.debug("查询所有上级设备API调用");
|
||||
}
|
||||
boolean updateResult = storager.updateParentPlatform(parentPlatform);
|
||||
if (updateResult) {
|
||||
return new ResponseEntity<>("success", HttpStatus.OK);
|
||||
}else {
|
||||
return new ResponseEntity<>("fail", HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user