Commit ee62f171707295a90220194bde54a6bd3ce7f0c1
1 parent
5d901b5e
统一userAgent
Showing
2 changed files
with
16 additions
and
13 deletions
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) { | ... | ... |