mirror of
https://gitee.com/pan648540858/wvp-GB28181-pro.git
synced 2026-05-24 05:57:49 +08:00
1078-修复断开连接时设备未下线的BUG
This commit is contained in:
parent
7ffe773175
commit
dbb2492640
@ -1,8 +1,10 @@
|
|||||||
package com.genersoft.iot.vmp.jt1078.cmd;
|
package com.genersoft.iot.vmp.jt1078.cmd;
|
||||||
|
|
||||||
|
import com.genersoft.iot.vmp.conf.exception.ControllerException;
|
||||||
import com.genersoft.iot.vmp.jt1078.proc.entity.Cmd;
|
import com.genersoft.iot.vmp.jt1078.proc.entity.Cmd;
|
||||||
import com.genersoft.iot.vmp.jt1078.proc.response.*;
|
import com.genersoft.iot.vmp.jt1078.proc.response.*;
|
||||||
import com.genersoft.iot.vmp.jt1078.session.SessionManager;
|
import com.genersoft.iot.vmp.jt1078.session.SessionManager;
|
||||||
|
import com.genersoft.iot.vmp.vmanager.bean.ErrorCode;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
@ -73,6 +75,12 @@ public class JT1078Template {
|
|||||||
private static final String H1003 = "1003";
|
private static final String H1003 = "1003";
|
||||||
private static final String H1205 = "1205";
|
private static final String H1205 = "1205";
|
||||||
|
|
||||||
|
public void checkTerminalStatus(String devId){
|
||||||
|
if (SessionManager.INSTANCE.get(devId) == null) {
|
||||||
|
throw new ControllerException(ErrorCode.ERROR100.getCode(), "终端不在线");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 开启直播视频
|
* 开启直播视频
|
||||||
*
|
*
|
||||||
@ -80,6 +88,7 @@ public class JT1078Template {
|
|||||||
* @param j9101 开启视频参数
|
* @param j9101 开启视频参数
|
||||||
*/
|
*/
|
||||||
public Object startLive(String devId, J9101 j9101, Integer timeOut) {
|
public Object startLive(String devId, J9101 j9101, Integer timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -97,6 +106,7 @@ public class JT1078Template {
|
|||||||
* @param j9102 关闭视频参数
|
* @param j9102 关闭视频参数
|
||||||
*/
|
*/
|
||||||
public Object stopLive(String devId, J9102 j9102, Integer timeOut) {
|
public Object stopLive(String devId, J9102 j9102, Integer timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -114,6 +124,7 @@ public class JT1078Template {
|
|||||||
* @param j9205 查询音视频列表
|
* @param j9205 查询音视频列表
|
||||||
*/
|
*/
|
||||||
public Object queryBackTime(String devId, J9205 j9205, Integer timeOut) {
|
public Object queryBackTime(String devId, J9205 j9205, Integer timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -131,6 +142,7 @@ public class JT1078Template {
|
|||||||
* @param j9201 视频回放参数
|
* @param j9201 视频回放参数
|
||||||
*/
|
*/
|
||||||
public Object startBackLive(String devId, J9201 j9201, Integer timeOut) {
|
public Object startBackLive(String devId, J9201 j9201, Integer timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -148,6 +160,7 @@ public class JT1078Template {
|
|||||||
* @param j9202 控制视频回放参数
|
* @param j9202 控制视频回放参数
|
||||||
*/
|
*/
|
||||||
public Object controlBackLive(String devId, J9202 j9202, Integer timeOut) {
|
public Object controlBackLive(String devId, J9202 j9202, Integer timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -165,6 +178,7 @@ public class JT1078Template {
|
|||||||
* @param j9206 文件上传参数
|
* @param j9206 文件上传参数
|
||||||
*/
|
*/
|
||||||
public Object fileUpload(String devId, J9206 j9206, Integer timeOut) {
|
public Object fileUpload(String devId, J9206 j9206, Integer timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -182,6 +196,7 @@ public class JT1078Template {
|
|||||||
* @param j9207 文件上传控制参数
|
* @param j9207 文件上传控制参数
|
||||||
*/
|
*/
|
||||||
public Object fileUploadControl(String devId, J9207 j9207, Integer timeOut) {
|
public Object fileUploadControl(String devId, J9207 j9207, Integer timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -199,6 +214,7 @@ public class JT1078Template {
|
|||||||
* @param j9301 云台旋转参数
|
* @param j9301 云台旋转参数
|
||||||
*/
|
*/
|
||||||
public Object ptzRotate(String devId, J9301 j9301, Integer timeOut) {
|
public Object ptzRotate(String devId, J9301 j9301, Integer timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -216,6 +232,7 @@ public class JT1078Template {
|
|||||||
* @param j9302 云台焦距控制参数
|
* @param j9302 云台焦距控制参数
|
||||||
*/
|
*/
|
||||||
public Object ptzFocal(String devId, J9302 j9302, Integer timeOut) {
|
public Object ptzFocal(String devId, J9302 j9302, Integer timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -233,6 +250,7 @@ public class JT1078Template {
|
|||||||
* @param j9303 云台光圈控制参数
|
* @param j9303 云台光圈控制参数
|
||||||
*/
|
*/
|
||||||
public Object ptzIris(String devId, J9303 j9303, Integer timeOut) {
|
public Object ptzIris(String devId, J9303 j9303, Integer timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -250,6 +268,7 @@ public class JT1078Template {
|
|||||||
* @param j9304 云台雨刷控制参数
|
* @param j9304 云台雨刷控制参数
|
||||||
*/
|
*/
|
||||||
public Object ptzWiper(String devId, J9304 j9304, Integer timeOut) {
|
public Object ptzWiper(String devId, J9304 j9304, Integer timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -267,6 +286,7 @@ public class JT1078Template {
|
|||||||
* @param j9305 云台红外补光控制参数
|
* @param j9305 云台红外补光控制参数
|
||||||
*/
|
*/
|
||||||
public Object ptzSupplementaryLight(String devId, J9305 j9305, Integer timeOut) {
|
public Object ptzSupplementaryLight(String devId, J9305 j9305, Integer timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -284,6 +304,7 @@ public class JT1078Template {
|
|||||||
* @param j9306 云台变倍控制参数
|
* @param j9306 云台变倍控制参数
|
||||||
*/
|
*/
|
||||||
public Object ptzZoom(String devId, J9306 j9306, Integer timeOut) {
|
public Object ptzZoom(String devId, J9306 j9306, Integer timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -300,7 +321,7 @@ public class JT1078Template {
|
|||||||
* @param devId 设备号
|
* @param devId 设备号
|
||||||
*/
|
*/
|
||||||
public Object getDeviceConfig(String devId, J8104 j8104, Integer timeOut) {
|
public Object getDeviceConfig(String devId, J8104 j8104, Integer timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -317,7 +338,7 @@ public class JT1078Template {
|
|||||||
* @param devId 设备号
|
* @param devId 设备号
|
||||||
*/
|
*/
|
||||||
public Object getDeviceSpecifyConfig(String devId, J8106 j8106, Integer timeOut) {
|
public Object getDeviceSpecifyConfig(String devId, J8106 j8106, Integer timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -334,7 +355,7 @@ public class JT1078Template {
|
|||||||
* @param devId 设备号
|
* @param devId 设备号
|
||||||
*/
|
*/
|
||||||
public Object setDeviceSpecifyConfig(String devId, J8103 j8103, Integer timeOut) {
|
public Object setDeviceSpecifyConfig(String devId, J8103 j8103, Integer timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -353,6 +374,7 @@ public class JT1078Template {
|
|||||||
* 设备控制
|
* 设备控制
|
||||||
*/
|
*/
|
||||||
public Object deviceControl(String devId, J8105 j8105, int timeOut) {
|
public Object deviceControl(String devId, J8105 j8105, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -367,6 +389,7 @@ public class JT1078Template {
|
|||||||
* 查询终端属性
|
* 查询终端属性
|
||||||
*/
|
*/
|
||||||
public Object deviceAttribute(String devId, J8107 j8107, int timeOut) {
|
public Object deviceAttribute(String devId, J8107 j8107, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -381,6 +404,7 @@ public class JT1078Template {
|
|||||||
* 位置信息查询
|
* 位置信息查询
|
||||||
*/
|
*/
|
||||||
public Object queryPositionInfo(String devId, J8201 j8201, int timeOut) {
|
public Object queryPositionInfo(String devId, J8201 j8201, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -392,6 +416,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object tempPositionTrackingControl(String devId, J8202 j8202, int timeOut) {
|
public Object tempPositionTrackingControl(String devId, J8202 j8202, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -403,6 +428,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object confirmationAlarmMessage(String devId, J8203 j8203, int timeOut) {
|
public Object confirmationAlarmMessage(String devId, J8203 j8203, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -414,6 +440,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object linkDetection(String devId, J8204 j8204, int timeOut) {
|
public Object linkDetection(String devId, J8204 j8204, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -425,6 +452,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object textMessage(String devId, J8300 j8300, int timeOut) {
|
public Object textMessage(String devId, J8300 j8300, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -436,6 +464,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object telephoneCallback(String devId, J8400 j8400, int timeOut) {
|
public Object telephoneCallback(String devId, J8400 j8400, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -447,6 +476,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object setPhoneBook(String devId, J8401 j8401, int timeOut) {
|
public Object setPhoneBook(String devId, J8401 j8401, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -458,6 +488,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object vehicleControl(String devId, J8500 j8500, int timeOut) {
|
public Object vehicleControl(String devId, J8500 j8500, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -469,6 +500,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object setAreaForCircle(String devId, J8600 j8600, int timeOut) {
|
public Object setAreaForCircle(String devId, J8600 j8600, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -480,6 +512,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object deleteAreaForCircle(String devId, J8601 j8601, int timeOut) {
|
public Object deleteAreaForCircle(String devId, J8601 j8601, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -491,6 +524,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object setAreaForRectangle(String devId, J8602 j8602, int timeOut) {
|
public Object setAreaForRectangle(String devId, J8602 j8602, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -502,6 +536,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object deleteAreaForRectangle(String devId, J8603 j8603, int timeOut) {
|
public Object deleteAreaForRectangle(String devId, J8603 j8603, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -513,6 +548,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object setAreaForPolygon(String devId, J8604 j8604, int timeOut) {
|
public Object setAreaForPolygon(String devId, J8604 j8604, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -524,6 +560,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object deleteAreaForPolygon(String devId, J8605 j8605, int timeOut) {
|
public Object deleteAreaForPolygon(String devId, J8605 j8605, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -535,6 +572,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object setRoute(String devId, J8606 j8606, int timeOut) {
|
public Object setRoute(String devId, J8606 j8606, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -546,6 +584,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object deleteRoute(String devId, J8607 j8607, int timeOut) {
|
public Object deleteRoute(String devId, J8607 j8607, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -557,6 +596,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object queryAreaOrRoute(String devId, J8608 j8608, int timeOut) {
|
public Object queryAreaOrRoute(String devId, J8608 j8608, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -568,6 +608,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object queryDriverInformation(String devId, J8702 j8702, int timeOut) {
|
public Object queryDriverInformation(String devId, J8702 j8702, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -579,6 +620,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object shooting(String devId, J8801 j8801, int timeOut) {
|
public Object shooting(String devId, J8801 j8801, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -590,6 +632,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object queryMediaData(String devId, J8802 j8802, int timeOut) {
|
public Object queryMediaData(String devId, J8802 j8802, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -601,6 +644,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object uploadMediaData(String devId, J8803 j8803, int timeOut) {
|
public Object uploadMediaData(String devId, J8803 j8803, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -612,6 +656,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object record(String devId, J8804 j8804, int timeOut) {
|
public Object record(String devId, J8804 j8804, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -623,6 +668,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object uploadMediaDataForSingle(String devId, J8805 j8805, int timeOut) {
|
public Object uploadMediaDataForSingle(String devId, J8805 j8805, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
@ -634,6 +680,7 @@ public class JT1078Template {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public Object queryMediaAttribute(String devId, J9003 j9003, int timeOut) {
|
public Object queryMediaAttribute(String devId, J9003 j9003, int timeOut) {
|
||||||
|
checkTerminalStatus(devId);
|
||||||
Cmd cmd = new Cmd.Builder()
|
Cmd cmd = new Cmd.Builder()
|
||||||
.setPhoneNumber(devId)
|
.setPhoneNumber(devId)
|
||||||
.setPackageNo(randomInt())
|
.setPackageNo(randomInt())
|
||||||
|
|||||||
@ -5,6 +5,7 @@ import com.genersoft.iot.vmp.jt1078.event.ConnectChangeEvent;
|
|||||||
import com.genersoft.iot.vmp.jt1078.event.RegisterEvent;
|
import com.genersoft.iot.vmp.jt1078.event.RegisterEvent;
|
||||||
import com.genersoft.iot.vmp.jt1078.proc.request.J0003;
|
import com.genersoft.iot.vmp.jt1078.proc.request.J0003;
|
||||||
import com.genersoft.iot.vmp.jt1078.service.Ijt1078Service;
|
import com.genersoft.iot.vmp.jt1078.service.Ijt1078Service;
|
||||||
|
import com.genersoft.iot.vmp.jt1078.session.SessionManager;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
@ -25,6 +26,9 @@ public class ConnectChangeEventListener implements ApplicationListener<ConnectCh
|
|||||||
log.info("[JT-设备已连接] 终端ID: {}", event.getPhoneNumber());
|
log.info("[JT-设备已连接] 终端ID: {}", event.getPhoneNumber());
|
||||||
}else{
|
}else{
|
||||||
log.info("[JT-设备连接已断开] 终端ID: {}", event.getPhoneNumber());
|
log.info("[JT-设备连接已断开] 终端ID: {}", event.getPhoneNumber());
|
||||||
|
if(SessionManager.INSTANCE.get(event.getPhoneNumber()) != null) {
|
||||||
|
SessionManager.INSTANCE.get(event.getPhoneNumber()).unregister();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
JTDevice device = service.getDevice(event.getPhoneNumber());
|
JTDevice device = service.getDevice(event.getPhoneNumber());
|
||||||
if (device != null) {
|
if (device != null) {
|
||||||
|
|||||||
@ -141,9 +141,6 @@ public class jt1078ServiceImpl implements Ijt1078Service {
|
|||||||
if (device == null) {
|
if (device == null) {
|
||||||
throw new ControllerException(ErrorCode.ERROR100.getCode(), "设备不存在");
|
throw new ControllerException(ErrorCode.ERROR100.getCode(), "设备不存在");
|
||||||
}
|
}
|
||||||
if (SessionManager.INSTANCE.get(phoneNumber) == null) {
|
|
||||||
throw new ControllerException(ErrorCode.ERROR100.getCode(), "设备离线");
|
|
||||||
}
|
|
||||||
// 检查流是否已经存在,存在则返回
|
// 检查流是否已经存在,存在则返回
|
||||||
String playKey = VideoManagerConstants.INVITE_INFO_1078_PLAY + phoneNumber + ":" + channelId;
|
String playKey = VideoManagerConstants.INVITE_INFO_1078_PLAY + phoneNumber + ":" + channelId;
|
||||||
List<GeneralCallback<StreamInfo>> errorCallbacks = inviteErrorCallbackMap.computeIfAbsent(playKey, k -> new ArrayList<>());
|
List<GeneralCallback<StreamInfo>> errorCallbacks = inviteErrorCallbackMap.computeIfAbsent(playKey, k -> new ArrayList<>());
|
||||||
@ -236,6 +233,7 @@ public class jt1078ServiceImpl implements Ijt1078Service {
|
|||||||
if (streamInfo != null) {
|
if (streamInfo != null) {
|
||||||
// 关闭rtpServer
|
// 关闭rtpServer
|
||||||
mediaServerService.closeRTPServer(streamInfo.getMediaServerId(), streamInfo.getStream());
|
mediaServerService.closeRTPServer(streamInfo.getMediaServerId(), streamInfo.getStream());
|
||||||
|
redisTemplate.delete(playKey);
|
||||||
}
|
}
|
||||||
// 清理回调
|
// 清理回调
|
||||||
List<GeneralCallback<StreamInfo>> generalCallbacks = inviteErrorCallbackMap.get(playKey);
|
List<GeneralCallback<StreamInfo>> generalCallbacks = inviteErrorCallbackMap.get(playKey);
|
||||||
|
|||||||
@ -59,6 +59,7 @@ public enum SessionManager {
|
|||||||
*/
|
*/
|
||||||
protected void put(Object clientId, Session newSession) {
|
protected void put(Object clientId, Session newSession) {
|
||||||
sessionMap.put(clientId, newSession);
|
sessionMap.put(clientId, newSession);
|
||||||
|
System.out.println(sessionMap.size());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -261,9 +261,10 @@ export default {
|
|||||||
var that = this;
|
var that = this;
|
||||||
this.$axios({
|
this.$axios({
|
||||||
method: 'get',
|
method: 'get',
|
||||||
url: '/api/play/stop/' + this.deviceId + "/" + itemData.channelId,
|
url: '/api/jt1078/live/stop',
|
||||||
params: {
|
params: {
|
||||||
isSubStream: this.isSubStream
|
phoneNumber: this.device.phoneNumber,
|
||||||
|
channelId: itemData.channelId,
|
||||||
}
|
}
|
||||||
}).then(function (res) {
|
}).then(function (res) {
|
||||||
that.initData();
|
that.initData();
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user