From dfb87c768538e280cf5e17d1d5ee5bbed1e1888d Mon Sep 17 00:00:00 2001 From: 648540858 <648540858@qq.com> Date: 星期五, 25 十一月 2022 10:58:26 +0800 Subject: [PATCH] 合并主线 --- src/main/java/com/genersoft/iot/vmp/gb28181/utils/SipUtils.java | 34 ++++++++++++++++++++++++++++++---- 1 files changed, 30 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/genersoft/iot/vmp/gb28181/utils/SipUtils.java b/src/main/java/com/genersoft/iot/vmp/gb28181/utils/SipUtils.java index bf2a0ee..bbce087 100644 --- a/src/main/java/com/genersoft/iot/vmp/gb28181/utils/SipUtils.java +++ b/src/main/java/com/genersoft/iot/vmp/gb28181/utils/SipUtils.java @@ -4,6 +4,7 @@ import gov.nist.javax.sip.address.AddressImpl; import gov.nist.javax.sip.address.SipUri; import gov.nist.javax.sip.header.Subject; +import org.springframework.util.ObjectUtils; import javax.sip.PeerUnavailableException; import javax.sip.SipFactory; @@ -52,10 +53,15 @@ public static UserAgentHeader createUserAgentHeader(SipFactory sipFactory, GitUtil gitUtil) throws PeerUnavailableException, ParseException { List<String> agentParam = new ArrayList<>(); - agentParam.add("WVP-Pro v"); - if (gitUtil != null && gitUtil.getCommitTime() != null) { - agentParam.add(gitUtil.getBuildVersion() + "."); - agentParam.add(gitUtil.getCommitTime()); + agentParam.add("WVP-Pro "); + if (gitUtil != null ) { + if (!ObjectUtils.isEmpty(gitUtil.getBuildVersion())) { + agentParam.add("v"); + agentParam.add(gitUtil.getBuildVersion() + "."); + } + if (!ObjectUtils.isEmpty(gitUtil.getCommitTime())) { + agentParam.add(gitUtil.getCommitTime()); + } } return sipFactory.createHeaderFactory().createUserAgentHeader(agentParam); } @@ -113,4 +119,24 @@ return builder.toString(); } + public static String getNewCallId() { + return (int) Math.floor(Math.random() * 10000) + ""; + } + + public static int getTypeCodeFromGbCode(String deviceId) { + if (ObjectUtils.isEmpty(deviceId)) { + return 0; + } + return Integer.parseInt(deviceId.substring(10, 13)); + } + + /** + * 鍒ゆ柇鏄惁鏄墠绔鍥磋澶� + * @param deviceId + * @return + */ + public static boolean isFrontEnd(String deviceId) { + int typeCodeFromGbCode = getTypeCodeFromGbCode(deviceId); + return typeCodeFromGbCode > 130 && typeCodeFromGbCode < 199; + } } -- Gitblit v1.8.0