From fbdad00cdb294a857f55e33b2dd92c61dc37475c Mon Sep 17 00:00:00 2001
From: 648540858 <648540858@qq.com>
Date: 星期二, 13 十月 2020 18:55:42 +0800
Subject: [PATCH] 修复无音频通道开启通道音频后无法播放的bug 修复点播接口真的收到视频后回复

---
 src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/MessageRequestProcessor.java |   13 +++++++++----
 1 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/MessageRequestProcessor.java b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/MessageRequestProcessor.java
index e9f5906..927168f 100644
--- a/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/MessageRequestProcessor.java
+++ b/src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/MessageRequestProcessor.java
@@ -144,6 +144,7 @@
 	private void processMessageCatalogList(RequestEvent evt) {
 		try {
 			Element rootElement = getRootElement(evt);
+			String s = rootElement.toString();
 			Element deviceIdElement = rootElement.element("DeviceID");
 			String deviceId = deviceIdElement.getText().toString();
 			Element deviceListElement = rootElement.element("DeviceList");
@@ -171,10 +172,10 @@
 					DeviceChannel deviceChannel = new DeviceChannel();
 					deviceChannel.setName(channelName);
 					deviceChannel.setChannelId(channelDeviceId);
-					if(status.equals("ON")) {
+					if(status.equals("ON") || status.equals("On")) {
 						deviceChannel.setStatus(1);
 					}
-					if(status.equals("OFF")) {
+					if(status.equals("OFF") || status.equals("Off")) {
 						deviceChannel.setStatus(0);
 					}
 
@@ -185,7 +186,7 @@
 					deviceChannel.setBlock(XmlUtil.getText(itemDevice,"Block"));
 					deviceChannel.setAddress(XmlUtil.getText(itemDevice,"Address"));
 					deviceChannel.setParental(itemDevice.element("Parental") == null? 0:Integer.parseInt(XmlUtil.getText(itemDevice,"Parental")));
-					deviceChannel.setParentId(XmlUtil.getText(itemDevice,"ParentId"));
+					deviceChannel.setParentId(XmlUtil.getText(itemDevice,"ParentID"));
 					deviceChannel.setSafetyWay(itemDevice.element("SafetyWay") == null? 0:Integer.parseInt(XmlUtil.getText(itemDevice,"SafetyWay")));
 					deviceChannel.setRegisterWay(itemDevice.element("RegisterWay") == null? 1:Integer.parseInt(XmlUtil.getText(itemDevice,"RegisterWay")));
 					deviceChannel.setCertNum(XmlUtil.getText(itemDevice,"CertNum"));
@@ -199,6 +200,7 @@
 					deviceChannel.setLongitude(itemDevice.element("Longitude") == null? 0.00:Double.parseDouble(XmlUtil.getText(itemDevice,"Longitude")));
 					deviceChannel.setLatitude(itemDevice.element("Latitude") == null? 0.00:Double.parseDouble(XmlUtil.getText(itemDevice,"Latitude")));
 					deviceChannel.setPTZType(itemDevice.element("PTZType") == null? 0:Integer.parseInt(XmlUtil.getText(itemDevice,"PTZType")));
+					deviceChannel.setHasAudio(false); // 榛樿鍚湁闊抽涓篺alse
 					storager.updateChannel(device.getDeviceId(), deviceChannel);
 				}
 				// 鏇存柊
@@ -209,8 +211,11 @@
 				msg.setType(DeferredResultHolder.CALLBACK_CMD_CATALOG);
 				msg.setData(device);
 				deferredResultHolder.invokeResult(msg);
+
+				// 鍥炲200
+				responseAck(evt);
 			}
-		} catch (DocumentException e) {
+		} catch (DocumentException | SipException | InvalidArgumentException | ParseException e) {
 			e.printStackTrace();
 		}
 	}

--
Gitblit v1.8.0