New file |
| | |
| | | package com.genersoft.iot.vmp.jt1078.config; |
| | | |
| | | import com.genersoft.iot.vmp.jt1078.cmd.JT1078Template; |
| | | import com.genersoft.iot.vmp.jt1078.proc.response.*; |
| | | import com.genersoft.iot.vmp.vmanager.bean.WVPResult; |
| | | import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; |
| | | import org.springframework.web.bind.annotation.GetMapping; |
| | | import org.springframework.web.bind.annotation.PathVariable; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | |
| | | import javax.annotation.Resource; |
| | | |
| | | /** |
| | | * curl http://localhost:18080/api/jt1078/start/live/18864197066/1 |
| | | * |
| | | * @author QingtaiJiang |
| | | * @date 2023/4/27 18:12 |
| | | * @email qingtaij@163.com |
| | | */ |
| | | @ConditionalOnProperty(value = "jt1078.enable", havingValue = "true") |
| | | @RestController |
| | | @RequestMapping("/api/jt1078") |
| | | public class JT1078Controller { |
| | | |
| | | @Resource |
| | | JT1078Template jt1078Template; |
| | | |
| | | /** |
| | | * jt1078Template 调用示例 |
| | | */ |
| | | @GetMapping("/start/live/{deviceId}/{channelId}") |
| | | public WVPResult<?> startLive(@PathVariable String deviceId, @PathVariable String channelId) { |
| | | J9101 j9101 = new J9101(); |
| | | j9101.setChannel(Integer.valueOf(channelId)); |
| | | j9101.setIp("192.168.1.1"); |
| | | j9101.setRate(1); |
| | | j9101.setTcpPort(7618); |
| | | j9101.setUdpPort(7618); |
| | | j9101.setType(0); |
| | | // TODO 分配ZLM,获取IP、端口 |
| | | String s = jt1078Template.startLive(deviceId, j9101, 6); |
| | | // TODO 设备响应成功后,封装拉流结果集 |
| | | WVPResult<String> wvpResult = new WVPResult<>(); |
| | | wvpResult.setCode(200); |
| | | wvpResult.setData(String.format("http://192.168.1.1/rtp/%s_%s.live.mp4", deviceId, channelId)); |
| | | return wvpResult; |
| | | } |
| | | |
| | | } |
| | | |