Browse Source

修复编码错误

pull/1/head
648540858 4 years ago
parent
commit
a7f224b1af
  1. 26
      src/main/java/com/genersoft/iot/vmp/gb28181/SipLayer.java
  2. 2
      src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/MessageRequestProcessor.java
  3. 4
      src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRESTfulUtils.java

26
src/main/java/com/genersoft/iot/vmp/gb28181/SipLayer.java

@ -2,22 +2,12 @@ package com.genersoft.iot.vmp.gb28181;
import java.text.ParseException; import java.text.ParseException;
import java.util.Properties; import java.util.Properties;
import java.util.TooManyListenersException;
import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.ThreadPoolExecutor; import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import javax.sip.DialogTerminatedEvent; import javax.sip.*;
import javax.sip.IOExceptionEvent;
import javax.sip.ListeningPoint;
import javax.sip.PeerUnavailableException;
import javax.sip.RequestEvent;
import javax.sip.ResponseEvent;
import javax.sip.SipFactory;
import javax.sip.SipListener;
import javax.sip.SipProvider;
import javax.sip.SipStack;
import javax.sip.TimeoutEvent;
import javax.sip.TransactionTerminatedEvent;
import javax.sip.message.Response; import javax.sip.message.Response;
import org.slf4j.Logger; import org.slf4j.Logger;
@ -93,11 +83,17 @@ public class SipLayer implements SipListener {
@Bean("tcpSipProvider") @Bean("tcpSipProvider")
@DependsOn("sipStack") @DependsOn("sipStack")
private SipProvider startTcpListener() throws Exception { private SipProvider startTcpListener() {
ListeningPoint tcpListeningPoint = sipStack.createListeningPoint(sipConfig.getSipIp(), sipConfig.getSipPort(), "TCP"); ListeningPoint tcpListeningPoint = null;
SipProvider tcpSipProvider = sipStack.createSipProvider(tcpListeningPoint); SipProvider tcpSipProvider = null;
try {
tcpListeningPoint = sipStack.createListeningPoint(sipConfig.getSipIp(), sipConfig.getSipPort(), "TCP");
tcpSipProvider = sipStack.createSipProvider(tcpListeningPoint);
tcpSipProvider.addSipListener(this); tcpSipProvider.addSipListener(this);
logger.info("Sip Server TCP 启动成功 port {" + sipConfig.getSipPort() + "}"); logger.info("Sip Server TCP 启动成功 port {" + sipConfig.getSipPort() + "}");
} catch (TransportNotSupportedException | InvalidArgumentException | TooManyListenersException | ObjectInUseException e) {
logger.error(String.format("创建SIP服务失败: %s", e.getMessage()));
}
return tcpSipProvider; return tcpSipProvider;
} }

2
src/main/java/com/genersoft/iot/vmp/gb28181/transmit/request/impl/MessageRequestProcessor.java

@ -362,7 +362,7 @@ public class MessageRequestProcessor extends SIPRequestAbstractProcessor {
private Element getRootElement(RequestEvent evt) throws DocumentException { private Element getRootElement(RequestEvent evt) throws DocumentException {
Request request = evt.getRequest(); Request request = evt.getRequest();
SAXReader reader = new SAXReader(); SAXReader reader = new SAXReader();
// reader.setEncoding("GB2312"); reader.setEncoding("gbk");
Document xml = reader.read(new ByteArrayInputStream(request.getRawContent())); Document xml = reader.read(new ByteArrayInputStream(request.getRawContent()));
return xml.getRootElement(); return xml.getRootElement();
} }

4
src/main/java/com/genersoft/iot/vmp/media/zlm/ZLMRESTfulUtils.java

@ -9,6 +9,7 @@ import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.io.IOException; import java.io.IOException;
import java.net.ConnectException;
import java.util.HashMap; import java.util.HashMap;
import java.util.HashSet; import java.util.HashSet;
import java.util.Map; import java.util.Map;
@ -55,6 +56,9 @@ public class ZLMRESTfulUtils {
responseJSON = JSON.parseObject(responseStr); responseJSON = JSON.parseObject(responseStr);
} }
} }
} catch (ConnectException e) {
logger.error(String.format("连接ZLM失败: %s, %s", e.getCause().getMessage(), e.getMessage()));
logger.info("请检查media配置并确认ZLM已启动...");
}catch (IOException e) { }catch (IOException e) {
e.printStackTrace(); e.printStackTrace();
} }

Loading…
Cancel
Save