|
|
@@ -21,6 +21,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
|
|
import com.genersoft.iot.vmp.common.VideoManagerConstants;
|
|
|
import com.genersoft.iot.vmp.gb28181.bean.Device;
|
|
|
+import com.genersoft.iot.vmp.gb28181.bean.DeviceAlarm;
|
|
|
import com.genersoft.iot.vmp.gb28181.bean.DeviceChannel;
|
|
|
import com.genersoft.iot.vmp.gb28181.bean.RecordInfo;
|
|
|
import com.genersoft.iot.vmp.gb28181.bean.RecordItem;
|
|
|
@@ -289,19 +290,41 @@ public class MessageRequestProcessor extends SIPRequestAbstractProcessor {
|
|
|
// storager.queryChannel(deviceId)
|
|
|
return;
|
|
|
}
|
|
|
- device.setName(XmlUtil.getText(rootElement, "DeviceName"));
|
|
|
- device.setManufacturer(XmlUtil.getText(rootElement, "Manufacturer"));
|
|
|
- device.setModel(XmlUtil.getText(rootElement, "Model"));
|
|
|
- device.setFirmware(XmlUtil.getText(rootElement, "Firmware"));
|
|
|
- if (StringUtils.isEmpty(device.getStreamMode())) {
|
|
|
- device.setStreamMode("UDP");
|
|
|
+
|
|
|
+ DeviceAlarm deviceAlarm = new DeviceAlarm();
|
|
|
+ deviceAlarm.setDeviceId(deviceId);
|
|
|
+ deviceAlarm.setAlarmPriority(XmlUtil.getText(rootElement, "AlarmPriority"));
|
|
|
+ deviceAlarm.setAlarmMethod(XmlUtil.getText(rootElement, "AlarmMethod"));
|
|
|
+ deviceAlarm.setAlarmTime(XmlUtil.getText(rootElement, "AlarmTime"));
|
|
|
+ if (XmlUtil.getText(rootElement, "AlarmDescription") == null) {
|
|
|
+ deviceAlarm.setAlarmDescription("");
|
|
|
+ } else {
|
|
|
+ deviceAlarm.setAlarmDescription(XmlUtil.getText(rootElement, "AlarmDescription"));
|
|
|
}
|
|
|
- storager.updateDevice(device);
|
|
|
+ if (XmlUtil.getText(rootElement, "Longitude") == null || XmlUtil.getText(rootElement, "Longitude") == "") {
|
|
|
+ deviceAlarm.setLongitude(0.00);
|
|
|
+ } else {
|
|
|
+ deviceAlarm.setLongitude(Double.parseDouble(XmlUtil.getText(rootElement, "Longitude")));
|
|
|
+ }
|
|
|
+ if (XmlUtil.getText(rootElement, "Latitude") == null || XmlUtil.getText(rootElement, "Latitude") =="") {
|
|
|
+ deviceAlarm.setLatitude(0.00);
|
|
|
+ } else {
|
|
|
+ deviceAlarm.setLatitude(Double.parseDouble(XmlUtil.getText(rootElement, "Latitude")));
|
|
|
+ }
|
|
|
+
|
|
|
+ // device.setName(XmlUtil.getText(rootElement, "DeviceName"));
|
|
|
+ // device.setManufacturer(XmlUtil.getText(rootElement, "Manufacturer"));
|
|
|
+ // device.setModel(XmlUtil.getText(rootElement, "Model"));
|
|
|
+ // device.setFirmware(XmlUtil.getText(rootElement, "Firmware"));
|
|
|
+ // if (StringUtils.isEmpty(device.getStreamMode())) {
|
|
|
+ // device.setStreamMode("UDP");
|
|
|
+ // }
|
|
|
+ // storager.updateDevice(device);
|
|
|
//cmder.catalogQuery(device, null);
|
|
|
// 回复200 OK
|
|
|
responseAck(evt);
|
|
|
if (offLineDetector.isOnline(deviceId)) {
|
|
|
- publisher.onlineEventPublish(deviceId, VideoManagerConstants.EVENT_ONLINE_KEEPLIVE);
|
|
|
+ publisher.deviceAlarmEventPublish(deviceAlarm);
|
|
|
}
|
|
|
} catch (DocumentException | SipException | InvalidArgumentException | ParseException e) {
|
|
|
// } catch (DocumentException e) {
|