Compare commits
2 Commits
8c03253446
...
3443d4dcd4
| Author | SHA1 | Date | |
|---|---|---|---|
| 3443d4dcd4 | |||
| 88e83895da |
@@ -39,11 +39,15 @@ public class TtsQueueProcessJob {
|
||||
@TenantJob
|
||||
public String execute() {
|
||||
if (!ttsQueueConsumer.isEnabled()) {
|
||||
log.warn("[TTS队列Job] TTS队列未启用");
|
||||
return "TTS队列未启用";
|
||||
}
|
||||
|
||||
try {
|
||||
int processedCount = ttsQueueConsumer.processAllQueues();
|
||||
if (processedCount > 0) {
|
||||
log.info("[TTS队列Job] 处理完成: 处理 {} 条消<E69DA1><E6B688>", processedCount);
|
||||
}
|
||||
return String.format("TTS队列处理完成: 处理 %d 条消息", processedCount);
|
||||
} catch (Exception e) {
|
||||
log.error("[TTS队列Job] 处理失败", e);
|
||||
|
||||
@@ -48,7 +48,7 @@ public class TtsQueueConsumer {
|
||||
@Value("${ops.tts.queue.enabled:true}")
|
||||
private boolean queueEnabled;
|
||||
|
||||
@Value("${ops.tts.queue.interval-ms:1500}")
|
||||
@Value("${ops.tts.queue.interval-ms:3000}")
|
||||
private long broadcastIntervalMs;
|
||||
|
||||
@Value("${ops.tts.queue.max-queue-size:50}")
|
||||
@@ -153,6 +153,7 @@ public class TtsQueueConsumer {
|
||||
Long lastBroadcastTime = deviceBroadcastLock.get(deviceId);
|
||||
if (lastBroadcastTime != null && now - lastBroadcastTime < broadcastIntervalMs) {
|
||||
// 距离上次播报时间太短,跳过
|
||||
log.debug("[TTS队列] 间隔太近跳过: deviceId={}, 间隔={}ms", deviceId, now - lastBroadcastTime);
|
||||
return false;
|
||||
}
|
||||
|
||||
@@ -172,7 +173,7 @@ public class TtsQueueConsumer {
|
||||
|
||||
// 检查消息是否过期
|
||||
if (message.isExpired()) {
|
||||
log.debug("[TTS队列] 消息已过期,跳过: deviceId={}, text={}",
|
||||
log.info("[TTS队列] 消息已过期: deviceId={}, text={}",
|
||||
deviceId, message.getText());
|
||||
return false;
|
||||
}
|
||||
@@ -183,7 +184,7 @@ public class TtsQueueConsumer {
|
||||
if (success) {
|
||||
// 播报成功,更新锁时间
|
||||
deviceBroadcastLock.put(deviceId, now);
|
||||
log.debug("[TTS队列] 播报成功: deviceId={}, text={}",
|
||||
log.info("[TTS队列] 播报成功: deviceId={}, text={}",
|
||||
deviceId, message.getText());
|
||||
return true;
|
||||
} else {
|
||||
@@ -219,6 +220,8 @@ public class TtsQueueConsumer {
|
||||
return 0;
|
||||
}
|
||||
|
||||
log.info("[TTS队列] 发现 {} 个设备队列", keys.size());
|
||||
|
||||
// 处理每个队列
|
||||
for (String key : keys) {
|
||||
try {
|
||||
|
||||
@@ -146,5 +146,10 @@ ops:
|
||||
order:
|
||||
datacenter-id: 1 # 数据中心ID(0-31)
|
||||
machine-id: 1 # 机器ID(0-31)
|
||||
tts:
|
||||
queue:
|
||||
enabled: true # 是否启用 TTS 语音播报队列
|
||||
interval-ms: 3000 # 同一设备播报间隔(毫秒)
|
||||
max-queue-size: 50 # 单个设备队列最大长度
|
||||
|
||||
debug: false
|
||||
|
||||
Reference in New Issue
Block a user