Avoid Russian lock during name capture
This commit is contained in:
+19
-2
@@ -304,6 +304,19 @@ def _detect_preferred_session_language(text: str) -> str | None:
|
|||||||
return None
|
return None
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def _detect_name_collection_language(text: str) -> str | None:
|
||||||
|
normalized = str(text or "").strip().lower()
|
||||||
|
if not normalized:
|
||||||
|
return None
|
||||||
|
preferred_language = _detect_preferred_session_language(normalized)
|
||||||
|
if preferred_language:
|
||||||
|
return preferred_language
|
||||||
|
if any(ch in _KAZAKH_SPECIFIC_LETTERS for ch in normalized):
|
||||||
|
return "kk"
|
||||||
|
return None
|
||||||
|
|
||||||
def _detect_session_language(text: str) -> str | None:
|
def _detect_session_language(text: str) -> str | None:
|
||||||
normalized = str(text or "").strip().lower()
|
normalized = str(text or "").strip().lower()
|
||||||
if not normalized:
|
if not normalized:
|
||||||
@@ -1375,7 +1388,11 @@ class CallSession:
|
|||||||
self._active_user_transcript = transcript
|
self._active_user_transcript = transcript
|
||||||
|
|
||||||
if self._session_language is None:
|
if self._session_language is None:
|
||||||
detected_language = _detect_session_language(transcript)
|
detected_language = (
|
||||||
|
_detect_name_collection_language(transcript)
|
||||||
|
if self._awaiting_customer_name
|
||||||
|
else _detect_session_language(transcript)
|
||||||
|
)
|
||||||
if detected_language:
|
if detected_language:
|
||||||
self._session_language = detected_language
|
self._session_language = detected_language
|
||||||
LOGGER.info(
|
LOGGER.info(
|
||||||
@@ -1738,7 +1755,7 @@ class CallSession:
|
|||||||
if not self._awaiting_customer_name:
|
if not self._awaiting_customer_name:
|
||||||
return None
|
return None
|
||||||
if self._session_language is None:
|
if self._session_language is None:
|
||||||
detected_language = _detect_session_language(transcript)
|
detected_language = _detect_name_collection_language(transcript)
|
||||||
if detected_language:
|
if detected_language:
|
||||||
self._session_language = detected_language
|
self._session_language = detected_language
|
||||||
LOGGER.info(
|
LOGGER.info(
|
||||||
|
|||||||
Reference in New Issue
Block a user