Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
amos-boot-biz
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
项目统一框架
amos-boot-biz
Commits
d8f60ec0
Commit
d8f60ec0
authored
Dec 02, 2021
by
helinlin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改语音识别功能
parent
0ffa70b4
Hide whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
167 additions
and
58 deletions
+167
-58
AudioKeyWord.java
...in/amos/boot/module/jcs/biz/audioToText/AudioKeyWord.java
+5
-5
AudioKeywordType.java
...mos/boot/module/jcs/biz/audioToText/AudioKeywordType.java
+2
-24
AudioTopic.java
...join/amos/boot/module/jcs/biz/audioToText/AudioTopic.java
+24
-0
FileSpeechTranscriberListener.java
...le/jcs/biz/audioToText/FileSpeechTranscriberListener.java
+43
-0
RealTimeSpeechTranscriberListener.java
...cs/biz/audioToText/RealTimeSpeechTranscriberListener.java
+11
-10
SocketClient.java
...in/amos/boot/module/jcs/biz/audioToText/SocketClient.java
+2
-1
AbstractInputStream2Text.java
...iz/audioToText/streamToText/AbstractInputStream2Text.java
+24
-0
LocalFileInputStream2Text.java
...z/audioToText/streamToText/LocalFileInputStream2Text.java
+16
-0
NetWorkInputStream2Text.java
...biz/audioToText/streamToText/NetWorkInputStream2Text.java
+16
-0
RealTimeStream2Text.java
...jcs/biz/audioToText/streamToText/RealTimeStream2Text.java
+11
-8
Audio2TextController.java
.../boot/module/jcs/biz/controller/Audio2TextController.java
+11
-9
AppSpeechTranscriber.java
...in/java/com/yeejoin/amos/speech/AppSpeechTranscriber.java
+2
-1
No files found.
amos-boot-module/amos-boot-module-biz/amos-boot-module-jcs-biz/src/main/java/com/yeejoin/amos/boot/module/jcs/biz/audioToText/AudioKeyWord.java
View file @
d8f60ec0
...
...
@@ -18,15 +18,15 @@ public class AudioKeyWord {
public
AudioKeyWord
()
{
values
=
new
HashMap
<>();
//地址
values
.
put
(
MessageKeywords
.
LOCATION
.
getType
(),
new
HashSet
<>());
values
.
put
(
AudioKeywordType
.
LOCATION
.
getType
(),
new
HashSet
<>());
//联系人
values
.
put
(
MessageKeywords
.
CONTACT
.
getType
(),
new
HashSet
<>());
values
.
put
(
AudioKeywordType
.
CONTACT
.
getType
(),
new
HashSet
<>());
//联系电话
values
.
put
(
MessageKeywords
.
CONTACT_NUMBER
.
getType
(),
new
HashSet
<>());
values
.
put
(
AudioKeywordType
.
CONTACT_NUMBER
.
getType
(),
new
HashSet
<>());
//事发单位
values
.
put
(
MessageKeywords
.
UNIT
.
getType
(),
new
HashSet
<>());
values
.
put
(
AudioKeywordType
.
UNIT
.
getType
(),
new
HashSet
<>());
//重点部位
values
.
put
(
MessageKeywords
.
PART
.
getType
(),
new
HashSet
<>());
values
.
put
(
AudioKeywordType
.
PART
.
getType
(),
new
HashSet
<>());
}
public
Map
<
String
,
Set
<
String
>>
getValues
()
{
...
...
amos-boot-module/amos-boot-module-biz/amos-boot-module-jcs-biz/src/main/java/com/yeejoin/amos/boot/module/jcs/biz/audioToText/
Message
Type.java
→
amos-boot-module/amos-boot-module-biz/amos-boot-module-jcs-biz/src/main/java/com/yeejoin/amos/boot/module/jcs/biz/audioToText/
AudioKeyword
Type.java
View file @
d8f60ec0
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jcs
.
biz
.
audioToText
;
/**
* 语音转文字消息类型
* mqtt 发送消息类型是加上[_phoneNumber]即接电话用户的电话号码,实现区分
*/
public
enum
MessageType
{
RECORD
(
"audioRecord"
),
KEYWORD
(
"audioKeyWord"
);
private
String
name
;
MessageType
(
String
name
)
{
this
.
name
=
name
;
}
public
String
getName
()
{
return
name
;
}
public
void
setName
(
String
name
)
{
this
.
name
=
name
;
}
}
/**
* 语音转文字关键字查找表
*/
enum
MessageKeywords
{
enum
AudioKeywordType
{
LOCATION
(
"location"
,
new
String
[]{
"地址"
,
"位置"
,
"地点"
,}),
CONTACT
(
"contact"
,
new
String
[]{
"联系人"
,
"联系"
,
"在"
,}),
CONTACT_NUMBER
(
"contactNumber"
,
new
String
[]{
"号码是"
,
"号码"
,
"手机是"
,
"手机"
,
"手机号"
,
"手机号是"
}),
...
...
@@ -35,7 +13,7 @@ enum MessageKeywords {
private
String
type
;
private
String
[]
keyword
;
MessageKeywords
(
String
type
,
String
[]
keyword
)
{
AudioKeywordType
(
String
type
,
String
[]
keyword
)
{
this
.
type
=
type
;
this
.
keyword
=
keyword
;
}
...
...
amos-boot-module/amos-boot-module-biz/amos-boot-module-jcs-biz/src/main/java/com/yeejoin/amos/boot/module/jcs/biz/audioToText/AudioTopic.java
0 → 100644
View file @
d8f60ec0
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jcs
.
biz
.
audioToText
;
/**
* 语音转文字消息类型
* mqtt 发送消息类型是加上[_phoneNumber]即接电话用户的电话号码,实现区分
*/
public
enum
AudioTopic
{
RECORD
(
"audioRecord"
),
KEYWORD
(
"audioKeyWord"
);
private
String
name
;
AudioTopic
(
String
name
)
{
this
.
name
=
name
;
}
public
String
getName
()
{
return
name
;
}
public
void
setName
(
String
name
)
{
this
.
name
=
name
;
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-jcs-biz/src/main/java/com/yeejoin/amos/boot/module/jcs/biz/audioToText/FileSpeechTranscriberListener.java
0 → 100644
View file @
d8f60ec0
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jcs
.
biz
.
audioToText
;
import
com.alibaba.nls.client.protocol.asr.SpeechTranscriberListener
;
import
com.alibaba.nls.client.protocol.asr.SpeechTranscriberResponse
;
/**
* 文件语音识别 回调函数
*/
public
class
FileSpeechTranscriberListener
extends
SpeechTranscriberListener
{
@Override
public
void
onTranscriberStart
(
SpeechTranscriberResponse
response
)
{
}
@Override
public
void
onSentenceBegin
(
SpeechTranscriberResponse
response
)
{
}
@Override
public
void
onSentenceEnd
(
SpeechTranscriberResponse
response
)
{
}
@Override
public
void
onTranscriptionResultChange
(
SpeechTranscriberResponse
response
)
{
}
@Override
public
void
onTranscriptionComplete
(
SpeechTranscriberResponse
response
)
{
}
@Override
public
void
onFail
(
SpeechTranscriberResponse
response
)
{
}
void
responseLogger
(
SpeechTranscriberResponse
response
)
{
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-jcs-biz/src/main/java/com/yeejoin/amos/boot/module/jcs/biz/audioToText/SpeechTranscriberListener.java
→
amos-boot-module/amos-boot-module-biz/amos-boot-module-jcs-biz/src/main/java/com/yeejoin/amos/boot/module/jcs/biz/audioToText/
RealTime
SpeechTranscriberListener.java
View file @
d8f60ec0
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jcs
.
biz
.
audioToText
;
import
com.alibaba.nls.client.protocol.asr.SpeechTranscriberListener
;
import
com.alibaba.nls.client.protocol.asr.SpeechTranscriberResponse
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
org.eclipse.paho.client.mqttv3.MqttException
;
...
...
@@ -17,8 +18,8 @@ import java.util.regex.Pattern;
/**
* 实时语音识别 回调函数
*/
public
class
SpeechTranscriberListener
extends
com
.
alibaba
.
nls
.
client
.
protocol
.
asr
.
SpeechTranscriberListener
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
SpeechTranscriberListener
.
class
);
public
class
RealTimeSpeechTranscriberListener
extends
SpeechTranscriberListener
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
RealTime
SpeechTranscriberListener
.
class
);
public
static
final
int
RESULT_SUCCESS_CODE
=
20000000
;
private
final
String
myNumber
;
private
final
String
typeNumber
;
...
...
@@ -26,7 +27,7 @@ public class SpeechTranscriberListener extends com.alibaba.nls.client.protocol.a
private
final
List
<
AudioRecord
>
audioRecords
;
private
final
AudioKeyWord
audioKeyWords
;
public
SpeechTranscriberListener
(
public
RealTime
SpeechTranscriberListener
(
String
myNumber
,
String
typeNumber
,
EmqKeeper
emqKeeper
,
...
...
@@ -116,8 +117,8 @@ public class SpeechTranscriberListener extends com.alibaba.nls.client.protocol.a
+
", status: "
+
response
.
getStatus
()
+
",result:"
+
response
.
getTransSentenceText
());
try
{
emqKeeper
.
getMqttClient
().
publish
(
MessageType
.
RECORD
.
getName
()
+
"/"
+
myNumber
,
""
.
getBytes
(),
2
,
true
);
emqKeeper
.
getMqttClient
().
publish
(
MessageType
.
KEYWORD
.
getName
()
+
"/"
+
myNumber
,
""
.
getBytes
(),
2
,
true
);
emqKeeper
.
getMqttClient
().
publish
(
AudioTopic
.
RECORD
.
getName
()
+
"/"
+
myNumber
,
""
.
getBytes
(),
2
,
true
);
emqKeeper
.
getMqttClient
().
publish
(
AudioTopic
.
KEYWORD
.
getName
()
+
"/"
+
myNumber
,
""
.
getBytes
(),
2
,
true
);
}
catch
(
MqttException
e
)
{
e
.
printStackTrace
();
}
...
...
@@ -169,7 +170,7 @@ public class SpeechTranscriberListener extends com.alibaba.nls.client.protocol.a
try
{
ObjectMapper
objectMapper
=
new
ObjectMapper
();
byte
[]
bytes
=
objectMapper
.
writeValueAsString
(
audioRecord
).
getBytes
();
emqKeeper
.
getMqttClient
().
publish
(
MessageType
.
RECORD
.
getName
()
+
"/"
+
myNumber
,
bytes
,
2
,
false
);
emqKeeper
.
getMqttClient
().
publish
(
AudioTopic
.
RECORD
.
getName
()
+
"/"
+
myNumber
,
bytes
,
2
,
false
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
logger
.
error
(
"发送音频识别结果消息异常,原因:"
+
e
.
getMessage
());
...
...
@@ -192,11 +193,11 @@ public class SpeechTranscriberListener extends com.alibaba.nls.client.protocol.a
Pattern
pattern
=
Pattern
.
compile
(
"\\d{5,}"
);
Matcher
matcher
=
pattern
.
matcher
(
result
);
while
(
matcher
.
find
())
{
audioKeyWords
.
getValues
().
get
(
MessageKeywords
.
CONTACT_NUMBER
.
getType
()).
add
(
matcher
.
group
());
audioKeyWords
.
getValues
().
get
(
AudioKeywordType
.
CONTACT_NUMBER
.
getType
()).
add
(
matcher
.
group
());
}
//寻找其他类型关键字
for
(
MessageKeywords
messageKeyword
:
MessageKeywords
.
values
())
{
if
(
messageKeyword
==
MessageKeywords
.
CONTACT_NUMBER
)
continue
;
for
(
AudioKeywordType
messageKeyword
:
AudioKeywordType
.
values
())
{
if
(
messageKeyword
==
AudioKeywordType
.
CONTACT_NUMBER
)
continue
;
for
(
String
keyword
:
messageKeyword
.
getKeyword
())
{
int
keywordIndex
=
result
.
indexOf
(
keyword
);
//问答式:截取关键字,从关键字的下一个[,/。]号开始截取到下下一个[,/。]号结束
...
...
@@ -213,7 +214,7 @@ public class SpeechTranscriberListener extends com.alibaba.nls.client.protocol.a
}
ObjectMapper
objectMapper
=
new
ObjectMapper
();
byte
[]
bytes
=
objectMapper
.
writeValueAsString
(
audioKeyWords
.
getValues
()).
getBytes
();
emqKeeper
.
getMqttClient
().
publish
(
MessageType
.
KEYWORD
.
getName
()
+
"/"
+
myNumber
,
bytes
,
2
,
false
);
emqKeeper
.
getMqttClient
().
publish
(
AudioTopic
.
KEYWORD
.
getName
()
+
"/"
+
myNumber
,
bytes
,
2
,
false
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
logger
.
error
(
"发送音频关键字消息异常,原因:"
+
e
.
getMessage
());
...
...
amos-boot-module/amos-boot-module-biz/amos-boot-module-jcs-biz/src/main/java/com/yeejoin/amos/boot/module/jcs/biz/audioToText/SocketClient.java
View file @
d8f60ec0
...
...
@@ -8,6 +8,7 @@ import org.springframework.stereotype.Component;
import
java.io.File
;
import
java.io.FileInputStream
;
import
java.io.OutputStream
;
import
java.net.InetAddress
;
import
java.net.InetSocketAddress
;
import
java.net.Socket
;
import
java.util.concurrent.TimeUnit
;
...
...
@@ -37,7 +38,7 @@ public class SocketClient {
Socket
socket
=
new
Socket
();
try
{
socket
.
connect
(
new
InetSocketAddress
(
"127.0.0.1"
,
port
));
socket
.
connect
(
new
InetSocketAddress
(
InetAddress
.
getLocalHost
().
getHostAddress
()
,
port
));
OutputStream
outputStream
=
socket
.
getOutputStream
();
FileInputStream
fis
=
new
FileInputStream
(
new
File
(
testFilePath
[
type
]));
byte
[]
b
=
new
byte
[
4096
];
...
...
amos-boot-module/amos-boot-module-biz/amos-boot-module-jcs-biz/src/main/java/com/yeejoin/amos/boot/module/jcs/biz/audioToText/streamToText/AbstractInputStream2Text.java
0 → 100644
View file @
d8f60ec0
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jcs
.
biz
.
audioToText
.
streamToText
;
import
java.io.InputStream
;
/**
* 语音文件输入流,转文字
*/
public
abstract
class
AbstractInputStream2Text
{
private
InputStream
inputStream
;
/**
* 获取输入流
*/
abstract
InputStream
getInputStream
();
/**
* 转换操作
*/
void
doTranslate
()
{
inputStream
=
getInputStream
();
if
(
inputStream
==
null
)
throw
new
RuntimeException
(
"inputStream is null"
);
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-jcs-biz/src/main/java/com/yeejoin/amos/boot/module/jcs/biz/audioToText/streamToText/LocalFileInputStream2Text.java
0 → 100644
View file @
d8f60ec0
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jcs
.
biz
.
audioToText
.
streamToText
;
import
java.io.InputStream
;
/**
* 本地文件语音输入流转文字
*/
public
class
LocalFileInputStream2Text
extends
AbstractInputStream2Text
{
@Override
InputStream
getInputStream
()
{
return
null
;
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-jcs-biz/src/main/java/com/yeejoin/amos/boot/module/jcs/biz/audioToText/streamToText/NetWorkInputStream2Text.java
0 → 100644
View file @
d8f60ec0
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jcs
.
biz
.
audioToText
.
streamToText
;
import
java.io.InputStream
;
/**
* 网络语音文件输入流转文字
*/
public
class
NetWorkInputStream2Text
extends
AbstractInputStream2Text
{
@Override
InputStream
getInputStream
()
{
return
null
;
}
}
amos-boot-module/amos-boot-module-biz/amos-boot-module-jcs-biz/src/main/java/com/yeejoin/amos/boot/module/jcs/biz/audioToText/
AudioTo
Text.java
→
amos-boot-module/amos-boot-module-biz/amos-boot-module-jcs-biz/src/main/java/com/yeejoin/amos/boot/module/jcs/biz/audioToText/
streamToText/RealTimeStream2
Text.java
View file @
d8f60ec0
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jcs
.
biz
.
audioToText
;
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jcs
.
biz
.
audioToText
.
streamToText
;
import
com.yeejoin.amos.boot.module.jcs.biz.audioToText.AudioKeyWord
;
import
com.yeejoin.amos.boot.module.jcs.biz.audioToText.AudioRecord
;
import
com.yeejoin.amos.boot.module.jcs.biz.audioToText.RealTimeSpeechTranscriberListener
;
import
com.yeejoin.amos.speech.AppSpeechTranscriber
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
...
...
@@ -14,11 +17,11 @@ import java.util.HashMap;
import
java.util.List
;
/**
* 语音转文字
*
实时
语音转文字
*/
@Component
public
class
AudioTo
Text
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
AudioTo
Text
.
class
);
public
class
RealTimeStream2
Text
{
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
RealTimeStream2
Text
.
class
);
public
static
int
serverPort
=
10001
;
@Autowired
...
...
@@ -30,7 +33,7 @@ public class AudioToText {
* @param myNumber 我的电话号码
* @param callerNumber 呼入电话号码
*/
public
HashMap
<
String
,
Integer
>
convert
(
String
myNumber
,
String
callerNumber
)
{
public
HashMap
<
String
,
Object
>
doTranslate
(
String
cid
,
String
myNumber
,
String
callerNumber
)
{
//启动两个监听端口监听推送进来的2路语音流
ServerSocket
serverSocket1
=
initServerSocketPort
();
ServerSocket
serverSocket2
=
initServerSocketPort
();
...
...
@@ -41,17 +44,17 @@ public class AudioToText {
logger
.
warn
(
"myNumber监听的端口为:"
+
serverSocket1
.
getLocalPort
()
+
" callerNumber监听的端口为:"
+
serverSocket2
.
getLocalPort
());
//我的语音流
Thread
thread1
=
new
Thread
(()
->
{
new
AppSpeechTranscriber
(
new
SpeechTranscriberListener
(
myNumber
,
myNumber
,
emqKeeper
,
audioRecords
,
audioKeyWord
),
serverSocket1
).
process
();
new
AppSpeechTranscriber
(
new
RealTime
SpeechTranscriberListener
(
myNumber
,
myNumber
,
emqKeeper
,
audioRecords
,
audioKeyWord
),
serverSocket1
).
process
();
});
//呼入的语音流
Thread
thread2
=
new
Thread
(()
->
{
new
AppSpeechTranscriber
(
new
SpeechTranscriberListener
(
myNumber
,
callerNumber
,
emqKeeper
,
audioRecords
,
audioKeyWord
),
serverSocket2
).
process
();
new
AppSpeechTranscriber
(
new
RealTime
SpeechTranscriberListener
(
myNumber
,
callerNumber
,
emqKeeper
,
audioRecords
,
audioKeyWord
),
serverSocket2
).
process
();
});
thread1
.
setUncaughtExceptionHandler
(
new
SubUncaughtExceptionHandler
(
serverSocket1
));
thread2
.
setUncaughtExceptionHandler
(
new
SubUncaughtExceptionHandler
(
serverSocket2
));
thread1
.
start
();
thread2
.
start
();
HashMap
<
String
,
Integer
>
map
=
new
HashMap
<>();
HashMap
<
String
,
Object
>
map
=
new
HashMap
<>();
map
.
put
(
myNumber
,
serverSocket1
.
getLocalPort
());
map
.
put
(
callerNumber
,
serverSocket2
.
getLocalPort
());
return
map
;
...
...
amos-boot-module/amos-boot-module-biz/amos-boot-module-jcs-biz/src/main/java/com/yeejoin/amos/boot/module/jcs/biz/controller/Audio2TextController.java
View file @
d8f60ec0
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jcs
.
biz
.
controller
;
import
com.yeejoin.amos.boot.module.jcs.biz.audioToText.
AudioTo
Text
;
import
com.yeejoin.amos.boot.module.jcs.biz.audioToText.
streamToText.RealTimeStream2
Text
;
import
com.yeejoin.amos.boot.module.jcs.biz.audioToText.SocketClient
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
...
...
@@ -21,11 +21,12 @@ import java.util.concurrent.TimeUnit;
public
class
Audio2TextController
{
@Autowired
AudioToText
audioTo
Text
;
RealTimeStream2Text
audio2
Text
;
@Autowired
SocketClient
socketClient
;
/**
* 测试语音转文字第一步
*
...
...
@@ -34,8 +35,8 @@ public class Audio2TextController {
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@GetMapping
(
"/startConvert"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"测试语音转文字第一步"
,
notes
=
"number为当前用户的手机号"
)
public
HashMap
<
String
,
Integer
>
startConvert
(
@RequestParam
String
myNumber
,
@RequestParam
String
callerNumber
)
{
return
audio
ToText
.
convert
(
myNumber
,
callerNumber
);
public
HashMap
<
String
,
Object
>
startConvert
(
@RequestParam
String
myNumber
,
@RequestParam
String
callerNumber
)
{
return
audio
2Text
.
doTranslate
(
""
,
myNumber
,
callerNumber
);
}
/**
...
...
@@ -58,12 +59,12 @@ public class Audio2TextController {
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@GetMapping
(
"/startConvertAndSendAudio"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"测试语音转文字融合接口"
,
notes
=
"测试语音转文字融合接口"
)
public
HashMap
<
String
,
Integer
>
startConvertAndSendAudio
(
@RequestParam
String
myNumber
,
@RequestParam
String
callerNumber
)
{
HashMap
<
String
,
Integer
>
convert
=
audioToText
.
convert
(
myNumber
,
callerNumber
);
public
HashMap
<
String
,
Object
>
startConvertAndSendAudio
(
@RequestParam
String
myNumber
,
@RequestParam
String
callerNumber
)
{
HashMap
<
String
,
Object
>
convert
=
audio2Text
.
doTranslate
(
""
,
myNumber
,
callerNumber
);
try
{
TimeUnit
.
SECONDS
.
sleep
(
1
);
socketClient
.
process
(
convert
.
get
(
myNumber
),
2
);
socketClient
.
process
(
convert
.
get
(
callerNumber
),
3
);
socketClient
.
process
(
(
Integer
)
convert
.
get
(
myNumber
),
2
);
socketClient
.
process
(
(
Integer
)
convert
.
get
(
callerNumber
),
3
);
}
catch
(
InterruptedException
e
)
{
e
.
printStackTrace
();
}
...
...
@@ -83,9 +84,10 @@ public class Audio2TextController {
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
)
@GetMapping
(
"/startConvertText"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"
静听电话回调后端开始转文字"
,
notes
=
"静
听电话回调后端开始转文字"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"
接听电话回调后端开始转文字"
,
notes
=
"接
听电话回调后端开始转文字"
)
public
void
startConvertText
(
String
cid
,
String
myPhone
,
String
caller
)
{
}
}
amos-boot-utils/amos-boot-utils-speech/src/main/java/com/yeejoin/amos/speech/AppSpeechTranscriber.java
View file @
d8f60ec0
...
...
@@ -9,6 +9,7 @@ import org.slf4j.LoggerFactory;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.net.InetAddress
;
import
java.net.ServerSocket
;
import
java.net.Socket
;
import
java.util.Timer
;
...
...
@@ -51,7 +52,7 @@ public class AppSpeechTranscriber {
SpeechTranscriber
transcriber
=
null
;
try
{
//启动ServerSocket等待接收音频数据,只接受一次请求
logger
.
warn
(
"serverSocket已启动,地址:"
+
serverSocket
.
getInetAddress
().
getHostAddress
()
logger
.
warn
(
"serverSocket已启动,地址:"
+
InetAddress
.
getLocalHost
().
getHostAddress
()
+
"监听端口:"
+
serverSocket
.
getLocalPort
()
+
" 等待语音融合系统推送数据..."
);
Socket
socket
=
serverSocket
.
accept
();
timerTask
.
cancel
();
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment