Files
shz-backend/ruoyi-bussiness/src/main/java/com/ruoyi/cms/handler/SpeechRecognitionWebSocketHandler.java

64 lines
2.0 KiB
Java
Raw Normal View History

2026-04-01 10:43:59 +08:00
//package com.ruoyi.cms.handler;
//
//import com.ruoyi.cms.util.AliyunNlsUtils;
//import org.springframework.stereotype.Component;
//
//import javax.websocket.*;
//import javax.websocket.server.ServerEndpoint;
//import java.io.ByteArrayInputStream;
//import java.io.IOException;
//import java.nio.ByteBuffer;
//
//@Component
//@ServerEndpoint("/speech-recognition")
//public class SpeechRecognitionWebSocketHandler {
//
// private SpeechRecognizerAI recognizerDemo;
//
// public SpeechRecognitionWebSocketHandler() {
// // 初始化语音识别器
// String appKey = "4lFYn2yPsQymwGu8";
// String id = "LTAI5t9hhSqdDHqwH3RjgyYj";
// String secret = "ni5aW3vxrWouMwcGqJPfh9Uu56PBuv";
// String url = System.getenv().getOrDefault("NLS_GATEWAY_URL", AliyunNlsUtils.getNlsUrl()+"/ws/v1/");
// recognizerDemo = new SpeechRecognizerAI(appKey, id, secret, url);
// }
//
// /**
// * 连接建立成功调用的方法
// */
// @OnOpen
// public void onOpen(Session session) {
// System.out.println("WebSocket 连接建立成功sessionId = " + session.getId());
// }
//
// /**
// * 收到客户端消息后调用的方法
// */
// @OnMessage(maxMessageSize=5242880)
// public void onMessage(ByteBuffer message, Session session) throws IOException {
// byte[] audioData = new byte[message.remaining()];
// message.get(audioData);
//
// // 处理音频数据
// recognizerDemo.processStream(session, new ByteArrayInputStream(audioData), 16000);
// }
//
//
// /**
// * 连接关闭调用的方法
// */
// @OnClose
// public void onClose(Session session) {
// System.out.println("WebSocket 连接关闭sessionId = " + session.getId());
// }
//
// /**
// * 发生错误时调用的方法
// */
// @OnError
// public void onError(Session session, Throwable error) {
// System.err.println("WebSocket 发生错误:" + error.getMessage());
// error.printStackTrace();
// }
//}