setServerConfig 改为 post
添加 openRtpServer,closeRtpServer
This commit is contained in:
parent
3685e4e648
commit
d6960a64c4
@ -0,0 +1,17 @@
|
||||
package cn.skcks.docking.gb28181.media.dto.rtp;
|
||||
|
||||
import com.fasterxml.jackson.databind.PropertyNamingStrategies;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonNaming;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Builder
|
||||
@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class)
|
||||
public class CloseRtpServer {
|
||||
private String streamId;
|
||||
}
|
@ -0,0 +1,12 @@
|
||||
package cn.skcks.docking.gb28181.media.dto.rtp;
|
||||
|
||||
import cn.skcks.docking.gb28181.media.dto.status.ResponseStatus;
|
||||
import com.fasterxml.jackson.databind.PropertyNamingStrategies;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonNaming;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class CloseRtpServerResp {
|
||||
private ResponseStatus code;
|
||||
private Integer hit;
|
||||
}
|
@ -0,0 +1,19 @@
|
||||
package cn.skcks.docking.gb28181.media.dto.rtp;
|
||||
|
||||
import com.fasterxml.jackson.databind.PropertyNamingStrategies;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonNaming;
|
||||
import feign.Param;
|
||||
import lombok.*;
|
||||
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@Builder
|
||||
@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class)
|
||||
public class OpenRtpServer {
|
||||
private int port;
|
||||
|
||||
private int tcpMode;
|
||||
|
||||
private String streamId;
|
||||
}
|
@ -0,0 +1,10 @@
|
||||
package cn.skcks.docking.gb28181.media.dto.rtp;
|
||||
|
||||
import cn.skcks.docking.gb28181.media.dto.status.ResponseStatus;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class OpenRtpServerResp {
|
||||
private ResponseStatus code;
|
||||
private Integer port;
|
||||
}
|
@ -2,15 +2,19 @@ package cn.skcks.docking.gb28181.media.proxy;
|
||||
|
||||
import cn.skcks.docking.gb28181.media.dto.config.ServerConfig;
|
||||
import cn.skcks.docking.gb28181.media.dto.response.ZlmResponse;
|
||||
import cn.skcks.docking.gb28181.media.dto.rtp.CloseRtpServer;
|
||||
import cn.skcks.docking.gb28181.media.dto.rtp.CloseRtpServerResp;
|
||||
import cn.skcks.docking.gb28181.media.dto.rtp.OpenRtpServer;
|
||||
import cn.skcks.docking.gb28181.media.dto.rtp.OpenRtpServerResp;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
import org.springframework.cloud.openfeign.SpringQueryMap;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.service.annotation.HttpExchange;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@FeignClient(name="zlmMediaServerProxy",url = "${media.url}")
|
||||
@HttpExchange
|
||||
@ -24,6 +28,12 @@ public interface ZlmMediaHttpClient {
|
||||
@GetMapping("/index/api/getServerConfig")
|
||||
ResponseEntity<String> getServerConfigResponseEntity(@RequestParam String secret);
|
||||
|
||||
@GetMapping("/index/api/setServerConfig")
|
||||
String setServerConfig(@RequestParam String secret, @SpringQueryMap Map<String,Object> config);
|
||||
@PostMapping("/index/api/setServerConfig")
|
||||
String setServerConfig(@RequestParam String secret, @RequestBody ServerConfig config);
|
||||
|
||||
@PostMapping("/index/api/openRtpServer")
|
||||
OpenRtpServerResp openRtpServer(@RequestParam String secret, @RequestBody OpenRtpServer params);
|
||||
|
||||
@PostMapping("/index/api/closeRtpServer")
|
||||
CloseRtpServerResp closeRtpServer(@RequestParam String secret, @RequestBody CloseRtpServer params);
|
||||
}
|
||||
|
@ -3,6 +3,10 @@ package cn.skcks.docking.gb28181.media.proxy;
|
||||
import cn.skcks.docking.gb28181.common.json.JsonUtils;
|
||||
import cn.skcks.docking.gb28181.media.dto.config.ServerConfig;
|
||||
import cn.skcks.docking.gb28181.media.dto.response.ZlmResponse;
|
||||
import cn.skcks.docking.gb28181.media.dto.rtp.CloseRtpServer;
|
||||
import cn.skcks.docking.gb28181.media.dto.rtp.CloseRtpServerResp;
|
||||
import cn.skcks.docking.gb28181.media.dto.rtp.OpenRtpServer;
|
||||
import cn.skcks.docking.gb28181.media.dto.rtp.OpenRtpServerResp;
|
||||
import com.fasterxml.jackson.core.type.TypeReference;
|
||||
import lombok.Builder;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
@ -11,7 +15,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
@Builder
|
||||
public class ZlmMediaHttpService {
|
||||
public class ZlmMediaService {
|
||||
private String secret;
|
||||
private ZlmMediaHttpClient exchange;
|
||||
|
||||
@ -30,7 +34,14 @@ public class ZlmMediaHttpService {
|
||||
}
|
||||
|
||||
public String setServerConfig(ServerConfig config){
|
||||
Map<String,Object> map = JsonUtils.mapper.convertValue(config, new TypeReference<>() {});
|
||||
return exchange.setServerConfig(secret, map);
|
||||
return exchange.setServerConfig(secret, config);
|
||||
}
|
||||
|
||||
public OpenRtpServerResp openRtpServer(OpenRtpServer params){
|
||||
return exchange.openRtpServer(secret, params);
|
||||
}
|
||||
|
||||
public CloseRtpServerResp closeRtpServer(CloseRtpServer params){
|
||||
return exchange.closeRtpServer(secret, params);
|
||||
}
|
||||
}
|
@ -12,8 +12,8 @@ public class ZlmProxy {
|
||||
private final ZlmMediaHttpClient exchange;
|
||||
|
||||
@Bean
|
||||
public ZlmMediaHttpService zlMediaHttpService(){
|
||||
return ZlmMediaHttpService.builder()
|
||||
public ZlmMediaService zlMediaHttpService(){
|
||||
return ZlmMediaService.builder()
|
||||
.secret(mediaConfig.getSecret())
|
||||
.exchange(exchange)
|
||||
.build();
|
||||
|
@ -1,18 +1,14 @@
|
||||
package cn.skcks.docking.gb28181.test;
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.date.LocalDateTimeUtil;
|
||||
import cn.hutool.core.date.ZoneUtil;
|
||||
import cn.skcks.docking.gb28181.common.json.JsonResponse;
|
||||
import cn.skcks.docking.gb28181.common.json.JsonUtils;
|
||||
import cn.skcks.docking.gb28181.media.config.ZlmMediaConfig;
|
||||
import cn.skcks.docking.gb28181.media.dto.config.ApiConfig;
|
||||
import cn.skcks.docking.gb28181.media.dto.config.ServerConfig;
|
||||
import cn.skcks.docking.gb28181.media.dto.response.ZlmResponse;
|
||||
import cn.skcks.docking.gb28181.media.dto.response.ZlmResponseConvertor;
|
||||
import cn.skcks.docking.gb28181.media.proxy.ZlmMediaHttpService;
|
||||
import com.fasterxml.jackson.core.type.TypeReference;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import cn.skcks.docking.gb28181.media.dto.rtp.CloseRtpServer;
|
||||
import cn.skcks.docking.gb28181.media.dto.rtp.OpenRtpServer;
|
||||
import cn.skcks.docking.gb28181.media.proxy.ZlmMediaService;
|
||||
import lombok.SneakyThrows;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.extension.ExtendWith;
|
||||
@ -25,7 +21,6 @@ import org.springframework.test.context.junit.jupiter.SpringExtension;
|
||||
|
||||
import java.time.Instant;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.ZoneId;
|
||||
import java.time.ZoneOffset;
|
||||
import java.util.*;
|
||||
|
||||
@ -35,7 +30,7 @@ import java.util.*;
|
||||
@ExtendWith(SpringExtension.class)
|
||||
public class MediaServiceTest {
|
||||
@Autowired
|
||||
private ZlmMediaHttpService zlMediaHttpService;
|
||||
private ZlmMediaService zlMediaHttpService;
|
||||
|
||||
@Test
|
||||
void test(){
|
||||
@ -66,14 +61,34 @@ public class MediaServiceTest {
|
||||
}
|
||||
|
||||
@Test
|
||||
@SneakyThrows
|
||||
void testApi(){
|
||||
log.info("{}", zlMediaHttpService.getApiList());
|
||||
int port = 60000;
|
||||
String streamId = "testStream";
|
||||
OpenRtpServer openRtpServer = new OpenRtpServer(port,0,streamId);
|
||||
log.info("{}", zlMediaHttpService.openRtpServer(openRtpServer));
|
||||
Thread.sleep(500);
|
||||
CloseRtpServer closeRtpServer = new CloseRtpServer(streamId);
|
||||
log.info("{}", zlMediaHttpService.closeRtpServer(closeRtpServer));
|
||||
}
|
||||
|
||||
@Test
|
||||
void httpBinTest(){
|
||||
void configTest(){
|
||||
ZlmResponse<List<ServerConfig>> resp = zlMediaHttpService.getServerConfig();
|
||||
log.info("{}", resp);
|
||||
ServerConfig config = resp.getData().get(0);
|
||||
config.getApi().setApiDebug(0);
|
||||
log.info("{}", zlMediaHttpService.setServerConfig(config));
|
||||
|
||||
resp = zlMediaHttpService.getServerConfig();
|
||||
log.info("{}", resp);
|
||||
config.getApi().setApiDebug(1);
|
||||
log.info("{}", zlMediaHttpService.setServerConfig(config));
|
||||
|
||||
resp = zlMediaHttpService.getServerConfig();
|
||||
log.info("{}", resp);
|
||||
|
||||
log.info("{}", zlMediaHttpService.setServerConfig(config));
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user