Commit ee62f171707295a90220194bde54a6bd3ce7f0c1

Authored by 648540858
1 parent 5d901b5e

统一userAgent

src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/SIPRequestHeaderPlarformProvider.java
... ... @@ -68,9 +68,6 @@ public class SIPRequestHeaderPlarformProvider {
68 68 toHeader, viaHeaders, maxForwards);
69 69  
70 70 List<String> agentParam = new ArrayList<>();
71   - agentParam.add("wvp-pro");
72   - UserAgentHeader userAgentHeader = sipFactory.createHeaderFactory().createUserAgentHeader(agentParam);
73   - request.addHeader(userAgentHeader);
74 71  
75 72 ContentTypeHeader contentTypeHeader = sipFactory.createHeaderFactory().createContentTypeHeader("Application", "MANSCDP+xml");
76 73 request.setContent(content, contentTypeHeader);
... ... @@ -115,10 +112,6 @@ public class SIPRequestHeaderPlarformProvider {
115 112 ExpiresHeader expires = sipFactory.createHeaderFactory().createExpiresHeader(Integer.parseInt(platform.getExpires()));
116 113 request.addHeader(expires);
117 114  
118   - List<String> agentParam = new ArrayList<>();
119   - agentParam.add("wvp-pro");
120   - UserAgentHeader userAgentHeader = sipFactory.createHeaderFactory().createUserAgentHeader(agentParam);
121   - request.addHeader(userAgentHeader);
122 115  
123 116 return request;
124 117 }
... ... @@ -226,10 +219,6 @@ public class SIPRequestHeaderPlarformProvider {
226 219 messageFactory.setDefaultContentEncodingCharset(parentPlatform.getCharacterSet());
227 220 request = messageFactory.createRequest(requestURI, Request.MESSAGE, callIdHeader, cSeqHeader, fromHeader,
228 221 toHeader, viaHeaders, maxForwards);
229   - List<String> agentParam = new ArrayList<>();
230   - agentParam.add("wvp-pro");
231   - UserAgentHeader userAgentHeader = sipFactory.createHeaderFactory().createUserAgentHeader(agentParam);
232   - request.addHeader(userAgentHeader);
233 222  
234 223 ContentTypeHeader contentTypeHeader = sipFactory.createHeaderFactory().createContentTypeHeader("Application", "MANSCDP+xml");
235 224 request.setContent(content, contentTypeHeader);
... ...
src/main/java/com/genersoft/iot/vmp/gb28181/transmit/cmd/impl/SIPCommander.java
... ... @@ -27,6 +27,7 @@ import org.slf4j.Logger;
27 27 import org.slf4j.LoggerFactory;
28 28 import org.springframework.beans.factory.annotation.Autowired;
29 29 import org.springframework.beans.factory.annotation.Qualifier;
  30 +import org.springframework.boot.SpringBootVersion;
30 31 import org.springframework.context.annotation.DependsOn;
31 32 import org.springframework.stereotype.Component;
32 33 import org.springframework.util.StringUtils;
... ... @@ -37,7 +38,9 @@ import javax.sip.header.*;
37 38 import javax.sip.message.Request;
38 39 import java.lang.reflect.Field;
39 40 import java.text.ParseException;
  41 +import java.util.ArrayList;
40 42 import java.util.HashSet;
  43 +import java.util.List;
41 44  
42 45 /**
43 46 * @description:设备能力接口,用于定义设备的控制、查询能力
... ... @@ -49,7 +52,7 @@ import java.util.HashSet;
49 52 public class SIPCommander implements ISIPCommander {
50 53  
51 54 private final Logger logger = LoggerFactory.getLogger(SIPCommander.class);
52   -
  55 +
53 56 @Autowired
54 57 private SipConfig sipConfig;
55 58  
... ... @@ -1643,7 +1646,18 @@ public class SIPCommander implements ISIPCommander {
1643 1646 } else if("UDP".equals(device.getTransport())) {
1644 1647 clientTransaction = udpSipProvider.getNewClientTransaction(request);
1645 1648 }
1646   -
  1649 + if (request.getHeader(UserAgentHeader.NAME) == null) {
  1650 + List<String> agentParam = new ArrayList<>();
  1651 + agentParam.add("wvp-pro");
  1652 + // TODO 添加版本信息以及日期
  1653 + UserAgentHeader userAgentHeader = null;
  1654 + try {
  1655 + userAgentHeader = sipFactory.createHeaderFactory().createUserAgentHeader(agentParam);
  1656 + } catch (ParseException e) {
  1657 + throw new RuntimeException(e);
  1658 + }
  1659 + request.addHeader(userAgentHeader);
  1660 + }
1647 1661 CallIdHeader callIdHeader = (CallIdHeader)request.getHeader(CallIdHeader.NAME);
1648 1662 // 添加错误订阅
1649 1663 if (errorEvent != null) {
... ...