|
@@ -3,12 +3,15 @@ package com.genersoft.iot.vmp.gb28181.utils;
|
|
|
import com.genersoft.iot.vmp.gb28181.bean.DeviceChannel;
|
|
import com.genersoft.iot.vmp.gb28181.bean.DeviceChannel;
|
|
|
import com.genersoft.iot.vmp.gb28181.bean.Gb28181Sdp;
|
|
import com.genersoft.iot.vmp.gb28181.bean.Gb28181Sdp;
|
|
|
import com.genersoft.iot.vmp.gb28181.bean.RemoteAddressInfo;
|
|
import com.genersoft.iot.vmp.gb28181.bean.RemoteAddressInfo;
|
|
|
|
|
+import com.genersoft.iot.vmp.utils.DateUtil;
|
|
|
import com.genersoft.iot.vmp.utils.GitUtil;
|
|
import com.genersoft.iot.vmp.utils.GitUtil;
|
|
|
import gov.nist.javax.sip.address.AddressImpl;
|
|
import gov.nist.javax.sip.address.AddressImpl;
|
|
|
import gov.nist.javax.sip.address.SipUri;
|
|
import gov.nist.javax.sip.address.SipUri;
|
|
|
import gov.nist.javax.sip.header.Subject;
|
|
import gov.nist.javax.sip.header.Subject;
|
|
|
import gov.nist.javax.sip.message.SIPRequest;
|
|
import gov.nist.javax.sip.message.SIPRequest;
|
|
|
import org.apache.commons.lang3.RandomStringUtils;
|
|
import org.apache.commons.lang3.RandomStringUtils;
|
|
|
|
|
+import org.slf4j.Logger;
|
|
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
import org.springframework.util.ObjectUtils;
|
|
import org.springframework.util.ObjectUtils;
|
|
|
|
|
|
|
|
import javax.sdp.SdpFactory;
|
|
import javax.sdp.SdpFactory;
|
|
@@ -21,6 +24,8 @@ import javax.sip.header.Header;
|
|
|
import javax.sip.header.UserAgentHeader;
|
|
import javax.sip.header.UserAgentHeader;
|
|
|
import javax.sip.message.Request;
|
|
import javax.sip.message.Request;
|
|
|
import java.text.ParseException;
|
|
import java.text.ParseException;
|
|
|
|
|
+import java.time.LocalDateTime;
|
|
|
|
|
+import java.time.format.DateTimeParseException;
|
|
|
import java.util.ArrayList;
|
|
import java.util.ArrayList;
|
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
import java.util.UUID;
|
|
import java.util.UUID;
|
|
@@ -33,6 +38,8 @@ import java.util.UUID;
|
|
|
*/
|
|
*/
|
|
|
public class SipUtils {
|
|
public class SipUtils {
|
|
|
|
|
|
|
|
|
|
+ private final static Logger logger = LoggerFactory.getLogger(SipUtils.class);
|
|
|
|
|
+
|
|
|
public static String getUserIdFromFromHeader(Request request) {
|
|
public static String getUserIdFromFromHeader(Request request) {
|
|
|
FromHeader fromHeader = (FromHeader)request.getHeader(FromHeader.NAME);
|
|
FromHeader fromHeader = (FromHeader)request.getHeader(FromHeader.NAME);
|
|
|
return getUserIdFromFromHeader(fromHeader);
|
|
return getUserIdFromFromHeader(fromHeader);
|
|
@@ -238,4 +245,23 @@ public class SipUtils {
|
|
|
}
|
|
}
|
|
|
return null;
|
|
return null;
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
|
|
+ public static String parseTime(String timeStr) {
|
|
|
|
|
+ if (ObjectUtils.isEmpty(timeStr)){
|
|
|
|
|
+ return null;
|
|
|
|
|
+ }
|
|
|
|
|
+ System.out.println(timeStr);
|
|
|
|
|
+ LocalDateTime localDateTime;
|
|
|
|
|
+ try {
|
|
|
|
|
+ localDateTime = LocalDateTime.parse(timeStr);
|
|
|
|
|
+ }catch (DateTimeParseException e) {
|
|
|
|
|
+ try {
|
|
|
|
|
+ localDateTime = LocalDateTime.parse(timeStr, DateUtil.formatterISO8601);
|
|
|
|
|
+ }catch (DateTimeParseException e2) {
|
|
|
|
|
+ logger.error("[格式化时间] 无法格式化时间: {}", timeStr);
|
|
|
|
|
+ return null;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ return localDateTime.format(DateUtil.formatterISO8601);
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|