From 206f47f42ac9c679da1a4154b58d37441360f068 Mon Sep 17 00:00:00 2001
From: shizy@yisa.com <shizy@yisa.com>
Date: 星期三, 29 十二月 2021 17:53:05 +0800
Subject: [PATCH] 修复获取设备信息信令Catalog不标准问题 PTZType,级联的Longitude、Latitude、PTZType等

---
 src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommanderFroPlatform.java                                      |    8 +++++++-
 src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/CatalogResponseMessageHandler.java |    5 +++--
 2 files changed, 10 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommanderFroPlatform.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommanderFroPlatform.java
index 65348ab..cf8b0a5 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommanderFroPlatform.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommanderFroPlatform.java
@@ -222,7 +222,13 @@
                 catalogXml.append("<Secrecy>" + channel.getSecrecy() + "</Secrecy>\r\n");
                 catalogXml.append("<RegisterWay>" + channel.getRegisterWay() + "</RegisterWay>\r\n");
                 catalogXml.append("<Status>" + (channel.getStatus() == 0?"OFF":"ON") + "</Status>\r\n");
-                catalogXml.append("<Info></Info>\r\n");
+                catalogXml.append("<Longitude>" + channel.getLongitude() + "</Longitude>\r\n");
+                catalogXml.append("<Latitude>" + channel.getLatitude() + "</Latitude>\r\n");
+                catalogXml.append("<IPAddress>" + channel.getIpAddress() + "</IPAddress>\r\n");
+                catalogXml.append("<Port>" + channel.getPort() + "</Port>\r\n");
+                catalogXml.append("<Info>\r\n");
+                catalogXml.append("<PTZType>" + channel.getPTZType() + "</PTZType>\r\n");
+                catalogXml.append("</Info>\r\n");
             }
 
 
diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/CatalogResponseMessageHandler.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/CatalogResponseMessageHandler.java
index f8da94b..9e15068 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/CatalogResponseMessageHandler.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/event/request/impl/message/response/cmd/CatalogResponseMessageHandler.java
@@ -166,10 +166,11 @@
                     } else {
                         deviceChannel.setLatitude(0.00);
                     }
-                    if (getText(itemDevice, "PTZType") == null || getText(itemDevice, "PTZType") == "") {
+                    Element InfoNode = channelDeviceElement.element("Info");
+                    if (getText(InfoNode, "PTZType") == null || getText(InfoNode, "PTZType") == "") {
                         deviceChannel.setPTZType(0);
                     } else {
-                        deviceChannel.setPTZType(Integer.parseInt(getText(itemDevice, "PTZType")));
+                        deviceChannel.setPTZType(Integer.parseInt(getText(InfoNode, "PTZType")));
                     }
                     deviceChannel.setHasAudio(true); // 榛樿鍚湁闊抽锛屾挱鏀炬椂鍐嶆鏌ユ槸鍚︽湁闊抽鍙婃槸鍚AC
                     channelList.add(deviceChannel);

--
Gitblit v1.8.0