Spaces:
Building
Building
Update websocket_handler.py
Browse files- websocket_handler.py +29 -20
websocket_handler.py
CHANGED
@@ -180,28 +180,37 @@ class RealtimeSession:
|
|
180 |
"""Initialize STT provider"""
|
181 |
try:
|
182 |
self.stt_manager = STTFactory.create_provider()
|
183 |
-
if self.stt_manager:
|
184 |
-
|
185 |
-
|
186 |
-
# STTConfig objesi oluştur
|
187 |
-
stt_config = STTConfig(
|
188 |
-
language=config_dict.get("language", "tr-TR"),
|
189 |
-
sample_rate=16000,
|
190 |
-
encoding="WEBM_OPUS",
|
191 |
-
enable_punctuation=config_dict.get("enable_punctuation", True),
|
192 |
-
interim_results=config_dict.get("interim_results", True),
|
193 |
-
single_utterance=False,
|
194 |
-
enable_word_timestamps=False,
|
195 |
-
model="latest_long",
|
196 |
-
use_enhanced=True
|
197 |
-
)
|
198 |
|
199 |
-
|
200 |
-
|
201 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
202 |
except Exception as e:
|
203 |
-
log_error(f"Failed to initialize STT", error=str(e), session_id=self.session.session_id)
|
204 |
-
|
|
|
|
|
205 |
|
206 |
async def change_state(self, new_state: ConversationState):
|
207 |
"""Change conversation state"""
|
|
|
180 |
"""Initialize STT provider"""
|
181 |
try:
|
182 |
self.stt_manager = STTFactory.create_provider()
|
183 |
+
if not self.stt_manager:
|
184 |
+
log_error("❌ STT manager is None - STTFactory.create_provider() returned None", session_id=self.session.session_id)
|
185 |
+
return False
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
186 |
|
187 |
+
log_info(f"✅ STT manager created: {type(self.stt_manager).__name__}", session_id=self.session.session_id)
|
188 |
+
|
189 |
+
# Prepare STT config
|
190 |
+
config = ConfigProvider.get().global_config.stt_provider.settings
|
191 |
+
stt_config = {
|
192 |
+
"language": config.get("language", "tr-TR"),
|
193 |
+
"interim_results": config.get("interim_results", True),
|
194 |
+
"single_utterance": False,
|
195 |
+
"enable_punctuation": config.get("enable_punctuation", True),
|
196 |
+
"sample_rate": 16000,
|
197 |
+
"encoding": "WEBM_OPUS"
|
198 |
+
}
|
199 |
+
|
200 |
+
log_info(f"🎤 Starting STT streaming with config: {stt_config}", session_id=self.session.session_id)
|
201 |
+
|
202 |
+
# Start streaming
|
203 |
+
await self.stt_manager.start_streaming(stt_config)
|
204 |
+
self.is_streaming = True
|
205 |
+
|
206 |
+
log_info("✅ STT streaming started successfully", session_id=self.session.session_id)
|
207 |
+
return True
|
208 |
+
|
209 |
except Exception as e:
|
210 |
+
log_error(f"❌ Failed to initialize STT", error=str(e), traceback=traceback.format_exc(), session_id=self.session.session_id)
|
211 |
+
self.stt_manager = None
|
212 |
+
self.is_streaming = False
|
213 |
+
return False
|
214 |
|
215 |
async def change_state(self, new_state: ConversationState):
|
216 |
"""Change conversation state"""
|