Commit 39e50612 authored by chenhao's avatar chenhao

Merge branch 'developer' of http://172.16.10.76/moa/amos-boot-biz into developer

parents 1b56fc4c 0a43d10f
...@@ -19,9 +19,7 @@ import org.springframework.web.client.RestTemplate; ...@@ -19,9 +19,7 @@ import org.springframework.web.client.RestTemplate;
import org.typroject.tyboot.component.emq.EmqKeeper; import org.typroject.tyboot.component.emq.EmqKeeper;
import java.net.DatagramSocket; import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.SocketException; import java.net.SocketException;
import java.net.UnknownHostException;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
...@@ -44,6 +42,9 @@ public class RealTimeStream2Text { ...@@ -44,6 +42,9 @@ public class RealTimeStream2Text {
@Value("${ifc.url}") @Value("${ifc.url}")
String audioSystemAddress; String audioSystemAddress;
@Value("${rule.definition.localIp}")
String localIpAddress;
/** /**
* 开始语音转文字 * 开始语音转文字
* *
...@@ -63,14 +64,16 @@ public class RealTimeStream2Text { ...@@ -63,14 +64,16 @@ public class RealTimeStream2Text {
Thread thread1 = Thread thread1 =
new Thread(() -> { new Thread(() -> {
new AppSpeechTranscriber( new AppSpeechTranscriber(
new RealTimeSpeechTranscriberListener(myNumber, myNumber, emqKeeper, audioRecords, audioKeyWord), serverSocket1) new RealTimeSpeechTranscriberListener(myNumber, myNumber, emqKeeper, audioRecords, audioKeyWord)
, serverSocket1, localIpAddress)
.process(); .process();
}, "我的语音流"); }, "我的语音流");
//呼入的语音流 //呼入的语音流
Thread thread2 = Thread thread2 =
new Thread(() -> { new Thread(() -> {
new AppSpeechTranscriber( new AppSpeechTranscriber(
new RealTimeSpeechTranscriberListener(myNumber, callerNumber, emqKeeper, audioRecords, audioKeyWord), serverSocket2) new RealTimeSpeechTranscriberListener(myNumber, callerNumber, emqKeeper, audioRecords, audioKeyWord),
serverSocket2, localIpAddress)
.process(); .process();
}, "呼入的语音流"); }, "呼入的语音流");
thread1.setUncaughtExceptionHandler(new SubUncaughtExceptionHandler(serverSocket1)); thread1.setUncaughtExceptionHandler(new SubUncaughtExceptionHandler(serverSocket1));
...@@ -99,7 +102,8 @@ public class RealTimeStream2Text { ...@@ -99,7 +102,8 @@ public class RealTimeStream2Text {
map.add("number", number); map.add("number", number);
map.add("codec", "PCM"); map.add("codec", "PCM");
map.add("uuid", UUID.randomUUID().toString()); map.add("uuid", UUID.randomUUID().toString());
map.add("dstip", InetAddress.getLocalHost().getHostAddress()); //map.add("dstip", InetAddress.getLocalHost().getHostAddress());
map.add("dstip", localIpAddress);
map.add("dstport", String.valueOf(port)); map.add("dstport", String.valueOf(port));
map.add("marker", "amos"); map.add("marker", "amos");
httpHeaders.setContentType(MediaType.MULTIPART_FORM_DATA); httpHeaders.setContentType(MediaType.MULTIPART_FORM_DATA);
...@@ -117,7 +121,7 @@ public class RealTimeStream2Text { ...@@ -117,7 +121,7 @@ public class RealTimeStream2Text {
logger.error("调用语音融合系统接口获取音频流返回异常:响应码:" + responseEntityBody.getState()); logger.error("调用语音融合系统接口获取音频流返回异常:响应码:" + responseEntityBody.getState());
logger.error("调用语音融合系统接口获取音频流返回异常:失败原因:" + responseEntityBody.getDescribe()); logger.error("调用语音融合系统接口获取音频流返回异常:失败原因:" + responseEntityBody.getDescribe());
} }
} catch (UnknownHostException e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
logger.error(e.getMessage()); logger.error(e.getMessage());
} }
...@@ -188,5 +192,14 @@ public class RealTimeStream2Text { ...@@ -188,5 +192,14 @@ public class RealTimeStream2Text {
public void setData(Object data) { public void setData(Object data) {
this.data = data; this.data = data;
} }
@Override
public String toString() {
return "AudioResponseEntity{" +
"state=" + state +
", describe='" + describe + '\'' +
", data=" + data +
'}';
}
} }
} }
...@@ -28,8 +28,10 @@ public class AppSpeechTranscriber { ...@@ -28,8 +28,10 @@ public class AppSpeechTranscriber {
private final DatagramSocket serverSocket; private final DatagramSocket serverSocket;
private final Timer serverSocketTimeoutTimer; private final Timer serverSocketTimeoutTimer;
private final TimerTask timerTask; private final TimerTask timerTask;
private final String localIpAddress;
public AppSpeechTranscriber(SpeechTranscriberListener listener, DatagramSocket serverSocket) { public AppSpeechTranscriber(SpeechTranscriberListener listener, DatagramSocket serverSocket, String localIpAddress) {
this.localIpAddress = localIpAddress;
this.listener = listener; this.listener = listener;
this.serverSocket = serverSocket; this.serverSocket = serverSocket;
serverSocketTimeoutTimer = new Timer(); serverSocketTimeoutTimer = new Timer();
...@@ -53,7 +55,7 @@ public class AppSpeechTranscriber { ...@@ -53,7 +55,7 @@ public class AppSpeechTranscriber {
//创建实例、建立连接。 //创建实例、建立连接。
byte[] b = new byte[332]; byte[] b = new byte[332];
DatagramPacket datagramPacket = new DatagramPacket(b, b.length); DatagramPacket datagramPacket = new DatagramPacket(b, b.length);
logger.warn("serverSocket已启动,地址:" + InetAddress.getLocalHost().getHostAddress() logger.warn("serverSocket已启动,地址:" + localIpAddress
+ "监听端口:" + serverSocket.getLocalPort() + " 等待语音融合系统推送数据..."); + "监听端口:" + serverSocket.getLocalPort() + " 等待语音融合系统推送数据...");
while (true) { while (true) {
serverSocket.receive(datagramPacket); serverSocket.receive(datagramPacket);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment