From d3578a957d17af13ef6b17bfffdb9335111f92e4 Mon Sep 17 00:00:00 2001 From: panlinlin <648540858@qq.com> Date: 星期五, 08 一月 2021 13:33:19 +0800 Subject: [PATCH] 添加对水星云台控制的支持 --- src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommander.java | 45 +++++++++++++++++---------------------------- 1 files changed, 17 insertions(+), 28 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommander.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommander.java index e1d474f..26d0f23 100644 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommander.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommander.java @@ -182,35 +182,24 @@ /** * 浜戝彴鎸囦护鐮佽绠� * - * @param leftRight 闀滃ご宸︾Щ鍙崇Щ 0:鍋滄 1:宸︾Щ 2:鍙崇Щ - * @param upDown 闀滃ご涓婄Щ涓嬬Щ 0:鍋滄 1:涓婄Щ 2:涓嬬Щ - * @param inOut 闀滃ご鏀惧ぇ缂╁皬 0:鍋滄 1:缂╁皬 2:鏀惧ぇ - * @param moveSpeed 闀滃ご绉诲姩閫熷害 榛樿 0XFF (0-255) - * @param zoomSpeed 闀滃ご缂╂斁閫熷害 榛樿 0X1 (0-255) + * @param cmdCode 鎸囦护鐮� + * @param parameter1 鏁版嵁1 + * @param parameter2 鏁版嵁2 + * @param combineCode2 缁勫悎鐮�2 */ - - /** - * 浜戝彴鎸囦护鐮佽绠� - * - * @param cmdCode 鎸囦护鐮� - * @param horizonSpeed 姘村钩绉诲姩閫熷害 - * @param verticalSpeed 鍨傜洿绉诲姩閫熷害 - * @param zoomSpeed 缂╂斁閫熷害 - * @return - */ - public static String frontEndCmdString(int cmdCode, int horizonSpeed, int verticalSpeed, int zoomSpeed) { + public static String frontEndCmdString(int cmdCode, int parameter1, int parameter2, int combineCode2) { StringBuilder builder = new StringBuilder("A50F01"); String strTmp; strTmp = String.format("%02X", cmdCode); builder.append(strTmp, 0, 2); - strTmp = String.format("%02X", horizonSpeed); + strTmp = String.format("%02X", parameter1); builder.append(strTmp, 0, 2); - strTmp = String.format("%02X", verticalSpeed); + strTmp = String.format("%02X", parameter2); builder.append(strTmp, 0, 2); - strTmp = String.format("%X", zoomSpeed); + strTmp = String.format("%X", combineCode2); builder.append(strTmp, 0, 1).append("0"); //璁$畻鏍¢獙鐮� - int checkCode = (0XA5 + 0X0F + 0X01 + cmdCode + horizonSpeed + verticalSpeed + (zoomSpeed & 0XF0)) % 0X100; + int checkCode = (0XA5 + 0X0F + 0X01 + cmdCode + parameter1 + parameter2 + (combineCode2 & 0XF0)) % 0X100; strTmp = String.format("%02X", checkCode); builder.append(strTmp, 0, 2); return builder.toString(); @@ -243,7 +232,7 @@ ptzXml.append("</Info>\r\n"); ptzXml.append("</Control>\r\n"); - Request request = headerProvider.createMessageRequest(device, ptzXml.toString(), "ViaPtzBranch", "FromPtzTag", "ToPtzTag"); + Request request = headerProvider.createMessageRequest(device, ptzXml.toString(), "ViaPtzBranch", "FromPtzTag", null); transmitRequest(device, request); return true; @@ -259,14 +248,14 @@ * @param device 鎺у埗璁惧 * @param channelId 棰勮閫氶亾 * @param cmdCode 鎸囦护鐮� - * @param horizonSpeed 姘村钩绉诲姩閫熷害 - * @param verticalSpeed 鍨傜洿绉诲姩閫熷害 - * @param zoomSpeed 缂╂斁閫熷害 + * @param parameter1 鏁版嵁1 + * @param parameter2 鏁版嵁2 + * @param combineCode2 缁勫悎鐮�2 */ @Override - public boolean frontEndCmd(Device device, String channelId, int cmdCode, int horizonSpeed, int verticalSpeed, int zoomSpeed) { + public boolean frontEndCmd(Device device, String channelId, int cmdCode, int parameter1, int parameter2, int combineCode2) { try { - String cmdStr= frontEndCmdString(cmdCode, horizonSpeed, verticalSpeed, zoomSpeed); + String cmdStr= frontEndCmdString(cmdCode, parameter1, parameter2, combineCode2); System.out.println("鎺у埗瀛楃涓诧細" + cmdStr); StringBuffer ptzXml = new StringBuffer(200); ptzXml.append("<?xml version=\"1.0\" ?>\r\n"); @@ -279,7 +268,7 @@ ptzXml.append("</Info>\r\n"); ptzXml.append("</Control>\r\n"); - Request request = headerProvider.createMessageRequest(device, ptzXml.toString(), "ViaPtzBranch", "FromPtzTag", "ToPtzTag"); + Request request = headerProvider.createMessageRequest(device, ptzXml.toString(), "ViaPtzBranch", "FromPtzTag", null); transmitRequest(device, request); return true; } catch (SipException | ParseException | InvalidArgumentException e) { @@ -646,7 +635,7 @@ catalogXml.append("<DeviceID>" + device.getDeviceId() + "</DeviceID>\r\n"); catalogXml.append("</Query>\r\n"); - Request request = headerProvider.createMessageRequest(device, catalogXml.toString(), "ViaDeviceInfoBranch", "FromDeviceInfoTag", "ToDeviceInfoTag"); + Request request = headerProvider.createMessageRequest(device, catalogXml.toString(), "ViaDeviceInfoBranch", "FromDeviceInfoTag", null); transmitRequest(device, request); -- Gitblit v1.8.0