Merge branch 'multi_language' into for_webui
This commit is contained in:
@@ -157,60 +157,6 @@ class Config:
|
||||
if isinstance(value, bool):
|
||||
self._ENABLE_FOREGROUND = value
|
||||
|
||||
@property
|
||||
def SOURCE_COUNTRY(self):
|
||||
return self._SOURCE_COUNTRY
|
||||
|
||||
@SOURCE_COUNTRY.setter
|
||||
def SOURCE_COUNTRY(self, value):
|
||||
if isinstance(value, str):
|
||||
self._SOURCE_COUNTRY = value
|
||||
|
||||
@property
|
||||
def SOURCE_LANGUAGE(self):
|
||||
return self._SOURCE_LANGUAGE
|
||||
|
||||
@SOURCE_LANGUAGE.setter
|
||||
def SOURCE_LANGUAGE(self, value):
|
||||
if isinstance(value, str):
|
||||
self._SOURCE_LANGUAGE = value
|
||||
|
||||
@property
|
||||
def TARGET_COUNTRY(self):
|
||||
return self._TARGET_COUNTRY
|
||||
|
||||
@TARGET_COUNTRY.setter
|
||||
def TARGET_COUNTRY(self, value):
|
||||
if isinstance(value, str):
|
||||
self._TARGET_COUNTRY = value
|
||||
|
||||
@property
|
||||
def TARGET_LANGUAGE(self):
|
||||
return self._TARGET_LANGUAGE
|
||||
|
||||
@TARGET_LANGUAGE.setter
|
||||
def TARGET_LANGUAGE(self, value):
|
||||
if isinstance(value, str):
|
||||
self._TARGET_LANGUAGE = value
|
||||
|
||||
@property
|
||||
def CHOICE_INPUT_TRANSLATOR(self):
|
||||
return self._CHOICE_INPUT_TRANSLATOR
|
||||
|
||||
@CHOICE_INPUT_TRANSLATOR.setter
|
||||
def CHOICE_INPUT_TRANSLATOR(self, value):
|
||||
if value in list(translation_lang.keys()):
|
||||
self._CHOICE_INPUT_TRANSLATOR= value
|
||||
|
||||
@property
|
||||
def CHOICE_OUTPUT_TRANSLATOR(self):
|
||||
return self._CHOICE_OUTPUT_TRANSLATOR
|
||||
|
||||
@CHOICE_OUTPUT_TRANSLATOR.setter
|
||||
def CHOICE_OUTPUT_TRANSLATOR(self, value):
|
||||
if value in list(translation_lang.keys()):
|
||||
self._CHOICE_OUTPUT_TRANSLATOR = value
|
||||
|
||||
# @property
|
||||
# def SENT_MESSAGES_LOG(self):
|
||||
# return self._SENT_MESSAGES_LOG
|
||||
@@ -301,11 +247,12 @@ class Config:
|
||||
try:
|
||||
if isinstance(value, dict):
|
||||
value_old = self.SELECTED_TAB_YOUR_LANGUAGES
|
||||
for k, v in value.items():
|
||||
language = v["language"]
|
||||
country = v["country"]
|
||||
for k0, v0 in value.items():
|
||||
for k1, v1 in v0.items():
|
||||
language = v1["language"]
|
||||
country = v1["country"]
|
||||
if language not in list(transcription_lang.keys()) or country not in list(transcription_lang[language].keys()):
|
||||
value[k] = value_old[k]
|
||||
value[k0][k1] = value_old[k0][k1]
|
||||
self._SELECTED_TAB_YOUR_LANGUAGES = value
|
||||
except Exception:
|
||||
pass
|
||||
@@ -321,11 +268,12 @@ class Config:
|
||||
try:
|
||||
if isinstance(value, dict):
|
||||
value_old = self.SELECTED_TAB_TARGET_LANGUAGES
|
||||
for k, v in value.items():
|
||||
language = v["language"]
|
||||
country = v["country"]
|
||||
for k0, v0 in value.items():
|
||||
for k1, v1 in v0.items():
|
||||
language = v1["language"]
|
||||
country = v1["country"]
|
||||
if language not in list(transcription_lang.keys()) or country not in list(transcription_lang[language].keys()):
|
||||
value[k] = value_old[k]
|
||||
value[k0][k1] = value_old[k0][k1]
|
||||
self._SELECTED_TAB_TARGET_LANGUAGES = value
|
||||
except Exception:
|
||||
pass
|
||||
@@ -342,6 +290,17 @@ class Config:
|
||||
self._SELECTED_TRANSCRIPTION_ENGINE = value
|
||||
# saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('ENABLE_MULTI_TRANSLATION')
|
||||
def ENABLE_MULTI_TRANSLATION(self):
|
||||
return self._ENABLE_MULTI_TRANSLATION
|
||||
|
||||
@ENABLE_MULTI_TRANSLATION.setter
|
||||
def ENABLE_MULTI_TRANSLATION(self, value):
|
||||
if isinstance(value, bool):
|
||||
self._ENABLE_MULTI_TRANSLATION = value
|
||||
saveJson(self.PATH_CONFIG, inspect.currentframe().f_code.co_name, value)
|
||||
|
||||
@property
|
||||
@json_serializable('IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE')
|
||||
def IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE(self):
|
||||
@@ -1000,12 +959,7 @@ class Config:
|
||||
self._ENABLE_TRANSCRIPTION_SEND = False
|
||||
self._ENABLE_TRANSCRIPTION_RECEIVE = False
|
||||
self._ENABLE_FOREGROUND = False
|
||||
self._CHOICE_INPUT_TRANSLATOR = "CTranslate2"
|
||||
self._CHOICE_OUTPUT_TRANSLATOR = "CTranslate2"
|
||||
self._SOURCE_LANGUAGE = "Japanese"
|
||||
self._SOURCE_COUNTRY = "Japan"
|
||||
self._TARGET_LANGUAGE = "English"
|
||||
self._TARGET_COUNTRY = "United States"
|
||||
|
||||
# self._SENT_MESSAGES_LOG = []
|
||||
# self._CURRENT_SENT_MESSAGES_LOG_INDEX = 0
|
||||
self._IS_RESET_BUTTON_DISPLAYED_FOR_TRANSLATION = False
|
||||
@@ -1027,33 +981,70 @@ class Config:
|
||||
}
|
||||
self._SELECTED_TAB_YOUR_LANGUAGES = {
|
||||
"1":{
|
||||
"primary":{
|
||||
"language":"Japanese",
|
||||
"country":"Japan"
|
||||
},
|
||||
},
|
||||
"2":{
|
||||
"primary":{
|
||||
"language":"Japanese",
|
||||
"country":"Japan"
|
||||
},
|
||||
},
|
||||
"3":{
|
||||
"primary":{
|
||||
"language":"Japanese",
|
||||
"country":"Japan"
|
||||
},
|
||||
},
|
||||
}
|
||||
self._SELECTED_TAB_TARGET_LANGUAGES = {
|
||||
"1":{
|
||||
"primary":{
|
||||
"language":"English",
|
||||
"country":"United States",
|
||||
},
|
||||
"secondary":{
|
||||
"language":"English",
|
||||
"country":"United States"
|
||||
},
|
||||
"tertiary":{
|
||||
"language":"English",
|
||||
"country":"United States"
|
||||
},
|
||||
},
|
||||
"2":{
|
||||
"primary":{
|
||||
"language":"English",
|
||||
"country":"United States",
|
||||
},
|
||||
"secondary":{
|
||||
"language":"English",
|
||||
"country":"United States"
|
||||
},
|
||||
"3":{
|
||||
"tertiary":{
|
||||
"language":"English",
|
||||
"country":"United States"
|
||||
},
|
||||
},
|
||||
"3":{
|
||||
"primary":{
|
||||
"language":"English",
|
||||
"country":"United States",
|
||||
},
|
||||
"secondary":{
|
||||
"language":"English",
|
||||
"country":"United States"
|
||||
},
|
||||
"tertiary":{
|
||||
"language":"English",
|
||||
"country":"United States"
|
||||
},
|
||||
},
|
||||
}
|
||||
self._SELECTED_TRANSCRIPTION_ENGINE = "Google"
|
||||
self._ENABLE_MULTI_TRANSLATION = False
|
||||
self._IS_MAIN_WINDOW_SIDEBAR_COMPACT_MODE = False
|
||||
|
||||
## Config Window
|
||||
|
||||
@@ -167,7 +167,12 @@ class Model:
|
||||
compatible_engines = []
|
||||
for engine in list(translation_lang.keys()):
|
||||
languages = translation_lang.get(engine, {}).get("source", {})
|
||||
if source_lang in languages and target_lang in languages:
|
||||
|
||||
source_langs = [e["language"] for e in list(source_lang.values())]
|
||||
target_langs = [e["language"] for e in list(target_lang.values())]
|
||||
language_list = list(languages.keys())
|
||||
|
||||
if all(e in language_list for e in source_langs) and all(e in language_list for e in target_langs):
|
||||
compatible_engines.append(engine)
|
||||
if "DeepL_API" in compatible_engines:
|
||||
if config.AUTH_KEYS["DeepL_API"] is None:
|
||||
@@ -202,11 +207,17 @@ class Model:
|
||||
return translation, success_flag
|
||||
|
||||
def getInputTranslate(self, message):
|
||||
translator_name=config.CHOICE_INPUT_TRANSLATOR
|
||||
source_language=config.SOURCE_LANGUAGE
|
||||
target_language=config.TARGET_LANGUAGE
|
||||
target_country = config.TARGET_COUNTRY
|
||||
translator_name=config.SELECTED_TAB_YOUR_TRANSLATOR_ENGINES[config.SELECTED_TAB_NO]
|
||||
source_language=config.SELECTED_TAB_YOUR_LANGUAGES[config.SELECTED_TAB_NO]
|
||||
target_languages=config.SELECTED_TAB_TARGET_LANGUAGES[config.SELECTED_TAB_NO]
|
||||
|
||||
translations = []
|
||||
success_flags = []
|
||||
for key in target_languages.keys():
|
||||
if key == "primary" or config.ENABLE_MULTI_TRANSLATION is True:
|
||||
target_language = target_languages[key]["language"]
|
||||
target_country = target_languages[key]["country"]
|
||||
if target_language is not None or target_country is not None:
|
||||
translation, success_flag = self.getTranslate(
|
||||
translator_name,
|
||||
source_language,
|
||||
@@ -214,13 +225,16 @@ class Model:
|
||||
target_country,
|
||||
message
|
||||
)
|
||||
return translation, success_flag
|
||||
translations.append(translation)
|
||||
success_flags.append(success_flag)
|
||||
|
||||
return translations, success_flags
|
||||
|
||||
def getOutputTranslate(self, message):
|
||||
translator_name=config.CHOICE_OUTPUT_TRANSLATOR
|
||||
source_language=config.TARGET_LANGUAGE
|
||||
target_language=config.SOURCE_LANGUAGE
|
||||
target_country=config.SOURCE_COUNTRY
|
||||
translator_name=config.SELECTED_TAB_TARGET_TRANSLATOR_ENGINES[config.SELECTED_TAB_NO]
|
||||
source_language=config.SELECTED_TAB_TARGET_LANGUAGES[config.SELECTED_TAB_NO]["primary"]["language"]
|
||||
target_language=config.SELECTED_TAB_YOUR_LANGUAGES[config.SELECTED_TAB_NO]["primary"]["language"]
|
||||
target_country=config.SELECTED_TAB_YOUR_LANGUAGES[config.SELECTED_TAB_NO]["primary"]["country"]
|
||||
|
||||
translation, success_flag = self.getTranslate(
|
||||
translator_name,
|
||||
@@ -430,8 +444,8 @@ class Model:
|
||||
try:
|
||||
res = self.mic_transcriber.transcribeAudioQueue(
|
||||
self.mic_audio_queue,
|
||||
config.SOURCE_LANGUAGE,
|
||||
config.SOURCE_COUNTRY,
|
||||
config.SELECTED_TAB_YOUR_LANGUAGES[config.SELECTED_TAB_NO]["primary"]["language"],
|
||||
config.SELECTED_TAB_YOUR_LANGUAGES[config.SELECTED_TAB_NO]["primary"]["country"],
|
||||
config.INPUT_MIC_AVG_LOGPROB,
|
||||
config.INPUT_MIC_NO_SPEECH_PROB
|
||||
)
|
||||
@@ -590,8 +604,8 @@ class Model:
|
||||
try:
|
||||
res = self.speaker_transcriber.transcribeAudioQueue(
|
||||
speaker_audio_queue,
|
||||
config.TARGET_LANGUAGE,
|
||||
config.TARGET_COUNTRY,
|
||||
config.SELECTED_TAB_TARGET_LANGUAGES[config.SELECTED_TAB_NO]["primary"]["language"],
|
||||
config.SELECTED_TAB_TARGET_LANGUAGES[config.SELECTED_TAB_NO]["primary"]["country"],
|
||||
config.INPUT_SPEAKER_AVG_LOGPROB,
|
||||
config.INPUT_SPEAKER_NO_SPEECH_PROB
|
||||
)
|
||||
@@ -673,8 +687,8 @@ class Model:
|
||||
self.speaker_energy_recorder = None
|
||||
|
||||
def createOverlayImageShort(self, message, translation):
|
||||
your_language = config.TARGET_LANGUAGE
|
||||
target_language = config.SOURCE_LANGUAGE
|
||||
your_language = config.SELECTED_TAB_TARGET_LANGUAGES[config.SELECTED_TAB_NO]["primary"]["language"]
|
||||
target_language = config.SELECTED_TAB_YOUR_LANGUAGES[config.SELECTED_TAB_NO]["primary"]["language"]
|
||||
ui_type = config.OVERLAY_UI_TYPE
|
||||
self.pre_overlay_message = {
|
||||
"message" : message,
|
||||
@@ -685,11 +699,6 @@ class Model:
|
||||
}
|
||||
return self.overlay_image.createOverlayImageShort(message, your_language, translation, target_language, ui_type)
|
||||
|
||||
# def createOverlayImageLong(self, message_type, message, translation):
|
||||
# your_language = config.TARGET_LANGUAGE if message_type == "receive" else config.SOURCE_LANGUAGE
|
||||
# target_language = config.SOURCE_LANGUAGE if message_type == "receive" else config.TARGET_LANGUAGE
|
||||
# return self.overlay_image.create_overlay_image_long(message_type, message, your_language, translation, target_language)
|
||||
|
||||
def clearOverlayImage(self):
|
||||
self.overlay.clearImage()
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ def callbackFilepathConfigFile(*args, **kwargs) -> dict:
|
||||
# config.OVERLAY_UI_TYPE = "sakura"
|
||||
# return {"status":200, "result":config.IS_EASTER_EGG_ENABLED}
|
||||
|
||||
def messageFormatter(format_type:str, translation, message):
|
||||
def messageFormatter(format_type:str, translation:list, message:list):
|
||||
if format_type == "RECEIVED":
|
||||
FORMAT_WITH_T = config.RECEIVED_MESSAGE_FORMAT_WITH_T
|
||||
FORMAT = config.RECEIVED_MESSAGE_FORMAT
|
||||
@@ -72,16 +72,15 @@ def messageFormatter(format_type:str, translation, message):
|
||||
raise ValueError("format_type is not found", format_type)
|
||||
|
||||
if len(translation) > 0:
|
||||
osc_message = FORMAT_WITH_T.replace("[message]", message)
|
||||
osc_message = osc_message.replace("[translation]", translation)
|
||||
osc_message = FORMAT_WITH_T.replace("[message]", "/".join(message))
|
||||
osc_message = osc_message.replace("[translation]", "/".join(translation))
|
||||
else:
|
||||
osc_message = FORMAT.replace("[message]", message)
|
||||
osc_message = FORMAT.replace("[message]", "/".join(message))
|
||||
return osc_message
|
||||
|
||||
def changeToCTranslate2Process():
|
||||
if config.CHOICE_INPUT_TRANSLATOR != "CTranslate2" or config.CHOICE_OUTPUT_TRANSLATOR != "CTranslate2":
|
||||
config.CHOICE_INPUT_TRANSLATOR = "CTranslate2"
|
||||
config.CHOICE_OUTPUT_TRANSLATOR = "CTranslate2"
|
||||
config.SELECTED_TAB_YOUR_TRANSLATOR_ENGINES[config.SELECTED_TAB_NO] = "CTranslate2"
|
||||
config.SELECTED_TAB_TARGET_TRANSLATOR_ENGINES[config.SELECTED_TAB_NO] = "CTranslate2"
|
||||
updateTranslationEngineAndEngineList()
|
||||
|
||||
# func transcription send message
|
||||
@@ -99,7 +98,7 @@ class MicMessage:
|
||||
})
|
||||
elif isinstance(message, str) and len(message) > 0:
|
||||
# addSentMessageLog(message)
|
||||
translation = ""
|
||||
translation = []
|
||||
if model.checkKeywords(message):
|
||||
self.action("word_filter", {
|
||||
"status":200,
|
||||
@@ -127,11 +126,11 @@ class MicMessage:
|
||||
if config.ENABLE_SEND_MESSAGE_TO_VRC is True:
|
||||
if config.ENABLE_SEND_ONLY_TRANSLATED_MESSAGES is True:
|
||||
if config.ENABLE_TRANSLATION is False:
|
||||
osc_message = messageFormatter("SEND", "", message)
|
||||
osc_message = messageFormatter("SEND", "", [message])
|
||||
else:
|
||||
osc_message = messageFormatter("SEND", "", translation)
|
||||
else:
|
||||
osc_message = messageFormatter("SEND", translation, message)
|
||||
osc_message = messageFormatter("SEND", translation, [message])
|
||||
model.oscSendMessage(osc_message)
|
||||
|
||||
self.action("mic", {
|
||||
@@ -143,7 +142,7 @@ class MicMessage:
|
||||
})
|
||||
if config.ENABLE_LOGGER is True:
|
||||
if len(translation) > 0:
|
||||
translation = f" ({translation})"
|
||||
translation = " (" + "/".join(translation) + ")"
|
||||
model.logger.info(f"[SENT] {message}{translation}")
|
||||
|
||||
# if config.ENABLE_OVERLAY_SMALL_LOG is True:
|
||||
@@ -229,7 +228,7 @@ class SpeakerMessage:
|
||||
if config.ENABLE_SPEAKER2CHATBOX is True:
|
||||
# send OSC message
|
||||
if config.ENABLE_SEND_RECEIVED_MESSAGE_TO_VRC is True:
|
||||
osc_message = messageFormatter("RECEIVED", translation, message)
|
||||
osc_message = messageFormatter("RECEIVED", translation, [message])
|
||||
model.oscSendMessage(osc_message)
|
||||
# ------------Speaker2Chatbox------------
|
||||
|
||||
@@ -243,7 +242,7 @@ class SpeakerMessage:
|
||||
})
|
||||
if config.ENABLE_LOGGER is True:
|
||||
if len(translation) > 0:
|
||||
translation = f" ({translation})"
|
||||
translation = " (" + "/".join(translation) + ")"
|
||||
model.logger.info(f"[RECEIVED] {message}{translation}")
|
||||
|
||||
def startTranscriptionReceiveMessage(action:Callable[[dict], None]) -> None:
|
||||
@@ -291,7 +290,7 @@ class ChatMessage:
|
||||
message = data["message"]
|
||||
if len(message) > 0:
|
||||
# addSentMessageLog(message)
|
||||
translation = ""
|
||||
translation = []
|
||||
if config.ENABLE_TRANSLATION is False:
|
||||
pass
|
||||
else:
|
||||
@@ -309,11 +308,11 @@ class ChatMessage:
|
||||
if config.ENABLE_SEND_MESSAGE_TO_VRC is True:
|
||||
if config.ENABLE_SEND_ONLY_TRANSLATED_MESSAGES is True:
|
||||
if config.ENABLE_TRANSLATION is False:
|
||||
osc_message = messageFormatter("SEND", "", message)
|
||||
osc_message = messageFormatter("SEND", "", [message])
|
||||
else:
|
||||
osc_message = messageFormatter("SEND", "", translation)
|
||||
else:
|
||||
osc_message = messageFormatter("SEND", translation, message)
|
||||
osc_message = messageFormatter("SEND", translation, [message])
|
||||
model.oscSendMessage(osc_message)
|
||||
|
||||
# if config.ENABLE_OVERLAY_SMALL_LOG is True:
|
||||
@@ -325,7 +324,7 @@ class ChatMessage:
|
||||
# update textbox message log (Sent)
|
||||
if config.ENABLE_LOGGER is True:
|
||||
if len(translation) > 0:
|
||||
translation = f" ({translation})"
|
||||
translation = " (" + "/".join(translation) + ")"
|
||||
model.logger.info(f"[SENT] {message}{translation}")
|
||||
|
||||
return {"status":200,
|
||||
@@ -375,72 +374,40 @@ def callbackMessageBoxTypingStop(*args, **kwargs) -> dict:
|
||||
# updateMessageBox(1)
|
||||
|
||||
def updateTranslationEngineAndEngineList():
|
||||
engine = config.CHOICE_INPUT_TRANSLATOR
|
||||
engines = model.findTranslationEngines(config.SOURCE_LANGUAGE, config.TARGET_LANGUAGE)
|
||||
engine = config.SELECTED_TAB_YOUR_TRANSLATOR_ENGINES[config.SELECTED_TAB_NO]
|
||||
engines = model.findTranslationEngines(
|
||||
config.SELECTED_TAB_YOUR_LANGUAGES[config.SELECTED_TAB_NO],
|
||||
config.SELECTED_TAB_TARGET_LANGUAGES[config.SELECTED_TAB_NO])
|
||||
if engine not in engines:
|
||||
engine = engines[0]
|
||||
config.CHOICE_INPUT_TRANSLATOR = engine
|
||||
config.CHOICE_OUTPUT_TRANSLATOR = engine
|
||||
|
||||
def initSetTranslateEngine():
|
||||
engine = config.SELECTED_TAB_YOUR_TRANSLATOR_ENGINES[config.SELECTED_TAB_NO]
|
||||
config.CHOICE_INPUT_TRANSLATOR = engine
|
||||
engine = config.SELECTED_TAB_TARGET_TRANSLATOR_ENGINES[config.SELECTED_TAB_NO]
|
||||
config.CHOICE_OUTPUT_TRANSLATOR = engine
|
||||
|
||||
def initSetLanguageAndCountry():
|
||||
select = config.SELECTED_TAB_YOUR_LANGUAGES[config.SELECTED_TAB_NO]
|
||||
config.SOURCE_LANGUAGE = select["language"]
|
||||
config.SOURCE_COUNTRY = select["country"]
|
||||
select = config.SELECTED_TAB_TARGET_LANGUAGES[config.SELECTED_TAB_NO]
|
||||
config.TARGET_LANGUAGE = select["language"]
|
||||
config.TARGET_COUNTRY = select["country"]
|
||||
config.SELECTED_TAB_YOUR_TRANSLATOR_ENGINES[config.SELECTED_TAB_NO] = engine
|
||||
config.SELECTED_TAB_TARGET_TRANSLATOR_ENGINES[config.SELECTED_TAB_NO] = engine
|
||||
|
||||
def setYourTranslateEngine(select):
|
||||
engines = config.SELECTED_TAB_YOUR_TRANSLATOR_ENGINES
|
||||
engines[config.SELECTED_TAB_NO] = select
|
||||
config.SELECTED_TAB_YOUR_TRANSLATOR_ENGINES = engines
|
||||
config.CHOICE_INPUT_TRANSLATOR = select
|
||||
|
||||
def setTargetTranslateEngine(select):
|
||||
engines = config.SELECTED_TAB_TARGET_TRANSLATOR_ENGINES
|
||||
engines[config.SELECTED_TAB_NO] = select
|
||||
config.SELECTED_TAB_TARGET_TRANSLATOR_ENGINES = engines
|
||||
config.CHOICE_OUTPUT_TRANSLATOR = select
|
||||
|
||||
def setYourLanguageAndCountry(select:dict, *args, **kwargs) -> dict:
|
||||
printLog("setYourLanguageAndCountry", select)
|
||||
languages = config.SELECTED_TAB_YOUR_LANGUAGES
|
||||
languages[config.SELECTED_TAB_NO] = select
|
||||
config.SELECTED_TAB_YOUR_LANGUAGES = languages
|
||||
config.SOURCE_LANGUAGE = select["language"]
|
||||
config.SOURCE_COUNTRY = select["country"]
|
||||
updateTranslationEngineAndEngineList()
|
||||
return {"status":200,
|
||||
"result":{
|
||||
"your":{
|
||||
"language":config.SOURCE_LANGUAGE,
|
||||
"country":config.SOURCE_COUNTRY
|
||||
}
|
||||
}
|
||||
}
|
||||
return {"status":200}
|
||||
|
||||
def setTargetLanguageAndCountry(select:dict, *args, **kwargs) -> dict:
|
||||
printLog("setTargetLanguageAndCountry", select)
|
||||
languages = config.SELECTED_TAB_TARGET_LANGUAGES
|
||||
languages[config.SELECTED_TAB_NO] = select
|
||||
config.SELECTED_TAB_TARGET_LANGUAGES = languages
|
||||
config.TARGET_LANGUAGE = select["language"]
|
||||
config.TARGET_COUNTRY = select["country"]
|
||||
updateTranslationEngineAndEngineList()
|
||||
return {"status":200,
|
||||
"result":{
|
||||
"target":{
|
||||
"language":config.TARGET_LANGUAGE,
|
||||
"country":config.TARGET_COUNTRY
|
||||
},
|
||||
}
|
||||
}
|
||||
return {"status":200}
|
||||
|
||||
def swapYourLanguageAndTargetLanguage(*args, **kwargs) -> dict:
|
||||
printLog("swapYourLanguageAndTargetLanguage")
|
||||
@@ -448,41 +415,13 @@ def swapYourLanguageAndTargetLanguage(*args, **kwargs) -> dict:
|
||||
target_language = config.SELECTED_TAB_TARGET_LANGUAGES[config.SELECTED_TAB_NO]
|
||||
setYourLanguageAndCountry(target_language)
|
||||
setTargetLanguageAndCountry(your_language)
|
||||
return {"status":200,
|
||||
"result":{
|
||||
"your":{"language":config.SOURCE_LANGUAGE,
|
||||
"country":config.SOURCE_COUNTRY,
|
||||
},
|
||||
"target":{
|
||||
"language":config.TARGET_LANGUAGE,
|
||||
"country":config.TARGET_COUNTRY,
|
||||
},
|
||||
},
|
||||
}
|
||||
return {"status":200}
|
||||
|
||||
def callbackSelectedLanguagePresetTab(selected_tab_no:str, *args, **kwargs) -> dict:
|
||||
printLog("callbackSelectedLanguagePresetTab", selected_tab_no)
|
||||
config.SELECTED_TAB_NO = selected_tab_no
|
||||
|
||||
engines = config.SELECTED_TAB_YOUR_TRANSLATOR_ENGINES
|
||||
engine = engines[config.SELECTED_TAB_NO]
|
||||
config.CHOICE_INPUT_TRANSLATOR = engine
|
||||
|
||||
engines = config.SELECTED_TAB_TARGET_TRANSLATOR_ENGINES
|
||||
engine = engines[config.SELECTED_TAB_NO]
|
||||
config.CHOICE_OUTPUT_TRANSLATOR = engine
|
||||
|
||||
languages = config.SELECTED_TAB_YOUR_LANGUAGES
|
||||
select = languages[config.SELECTED_TAB_NO]
|
||||
config.SOURCE_LANGUAGE = select["language"]
|
||||
config.SOURCE_COUNTRY = select["country"]
|
||||
|
||||
languages = config.SELECTED_TAB_TARGET_LANGUAGES
|
||||
select = languages[config.SELECTED_TAB_NO]
|
||||
config.TARGET_LANGUAGE = select["language"]
|
||||
config.TARGET_COUNTRY = select["country"]
|
||||
updateTranslationEngineAndEngineList()
|
||||
return {"status":200, "result":config.SELECTED_TAB_NO}
|
||||
return {"status":200}
|
||||
|
||||
def callbackSelectedTranslationEngine(selected_translation_engine:str, *args, **kwargs) -> dict:
|
||||
printLog("callbackSelectedTranslationEngine", selected_translation_engine)
|
||||
@@ -1270,10 +1209,6 @@ def getListOutputDevice(*args, **kwargs) -> dict:
|
||||
|
||||
def init(endpoints:dict, *args, **kwargs) -> None:
|
||||
printLog("Start Initialization")
|
||||
printLog("Start InitSetTranslateEngine")
|
||||
initSetTranslateEngine()
|
||||
printLog("Start Init LanguageAndCountry")
|
||||
initSetLanguageAndCountry()
|
||||
|
||||
printLog("Start check DeepL API Key")
|
||||
if config.AUTH_KEYS["DeepL_API"] is not None:
|
||||
|
||||
@@ -21,12 +21,6 @@ config_mapping = {
|
||||
"/config/enable_transcription_send": "ENABLE_TRANSCRIPTION_SEND",
|
||||
"/config/enable_transcription_receive": "ENABLE_TRANSCRIPTION_RECEIVE",
|
||||
"/config/enable_foreground": "ENABLE_FOREGROUND",
|
||||
"/config/source_country": "SOURCE_COUNTRY",
|
||||
"/config/source_language": "SOURCE_LANGUAGE",
|
||||
"/config/target_country": "TARGET_COUNTRY",
|
||||
"/config/target_language": "TARGET_LANGUAGE",
|
||||
"/config/choice_input_translator": "CHOICE_INPUT_TRANSLATOR",
|
||||
"/config/choice_output_translator": "CHOICE_OUTPUT_TRANSLATOR",
|
||||
"/config/is_reset_button_displayed_for_translation": "IS_RESET_BUTTON_DISPLAYED_FOR_TRANSLATION",
|
||||
"/config/is_reset_button_displayed_for_whisper": "IS_RESET_BUTTON_DISPLAYED_FOR_WHISPER",
|
||||
"/config/selected_tab_no": "SELECTED_TAB_NO",
|
||||
@@ -334,9 +328,27 @@ if __name__ == "__main__":
|
||||
case "/controller/callback_messagebox_send":
|
||||
data = {"id":"123456", "message":"テスト"}
|
||||
case "/controller/set_your_language_and_country":
|
||||
data = {"language": "English", "country": "Hong Kong"}
|
||||
data = {
|
||||
"primary": {
|
||||
"language": "English",
|
||||
"country": "Hong Kong"
|
||||
}
|
||||
}
|
||||
case "/controller/set_target_language_and_country":
|
||||
data = {"language": "Japanese", "country": "Japan"}
|
||||
data = {
|
||||
"primary": {
|
||||
"language": "Japanese",
|
||||
"country": "Japan"
|
||||
},
|
||||
"secondary": {
|
||||
"language": "English",
|
||||
"country": "United States"
|
||||
},
|
||||
"tertiary": {
|
||||
"language": "Chinese Simplified",
|
||||
"country": "China"
|
||||
}
|
||||
}
|
||||
case "/controller/callback_set_transparency":
|
||||
data = 0.5
|
||||
case "/controller/callback_set_appearance":
|
||||
|
||||
Reference in New Issue
Block a user