🐛[bugfix] Model : auth keyを記入したあとに、削除すると翻訳に失敗するバグを修正
This commit is contained in:
@@ -22,8 +22,6 @@ def sendMicMessage(message):
|
|||||||
return
|
return
|
||||||
elif config.ENABLE_TRANSLATION is False:
|
elif config.ENABLE_TRANSLATION is False:
|
||||||
pass
|
pass
|
||||||
elif model.getTranslatorStatus() is False:
|
|
||||||
view.printToTextbox_AuthenticationError()
|
|
||||||
else:
|
else:
|
||||||
translation = model.getInputTranslate(message)
|
translation = model.getInputTranslate(message)
|
||||||
if translation == False:
|
if translation == False:
|
||||||
@@ -88,8 +86,6 @@ def receiveSpeakerMessage(message):
|
|||||||
translation = ""
|
translation = ""
|
||||||
if config.ENABLE_TRANSLATION is False:
|
if config.ENABLE_TRANSLATION is False:
|
||||||
pass
|
pass
|
||||||
elif model.getTranslatorStatus() is False:
|
|
||||||
view.printToTextbox_AuthenticationError()
|
|
||||||
else:
|
else:
|
||||||
translation = model.getOutputTranslate(message)
|
translation = model.getOutputTranslate(message)
|
||||||
if translation == False:
|
if translation == False:
|
||||||
@@ -156,8 +152,6 @@ def sendChatMessage(message):
|
|||||||
translation = ""
|
translation = ""
|
||||||
if config.ENABLE_TRANSLATION is False:
|
if config.ENABLE_TRANSLATION is False:
|
||||||
pass
|
pass
|
||||||
elif model.getTranslatorStatus() is False:
|
|
||||||
view.printToTextbox_AuthenticationError()
|
|
||||||
else:
|
else:
|
||||||
translation = model.getInputTranslate(message)
|
translation = model.getInputTranslate(message)
|
||||||
if translation == False:
|
if translation == False:
|
||||||
@@ -215,7 +209,6 @@ def initSetLanguageAndCountry():
|
|||||||
config.TARGET_LANGUAGE = language
|
config.TARGET_LANGUAGE = language
|
||||||
config.TARGET_COUNTRY = country
|
config.TARGET_COUNTRY = country
|
||||||
config.CHOICE_TRANSLATOR = model.findTranslationEngine(config.SOURCE_LANGUAGE, config.TARGET_LANGUAGE)
|
config.CHOICE_TRANSLATOR = model.findTranslationEngine(config.SOURCE_LANGUAGE, config.TARGET_LANGUAGE)
|
||||||
model.authenticationTranslator()
|
|
||||||
|
|
||||||
def setYourLanguageAndCountry(select):
|
def setYourLanguageAndCountry(select):
|
||||||
languages = config.SELECTED_TAB_YOUR_LANGUAGES
|
languages = config.SELECTED_TAB_YOUR_LANGUAGES
|
||||||
@@ -225,7 +218,6 @@ def setYourLanguageAndCountry(select):
|
|||||||
config.SOURCE_LANGUAGE = language
|
config.SOURCE_LANGUAGE = language
|
||||||
config.SOURCE_COUNTRY = country
|
config.SOURCE_COUNTRY = country
|
||||||
config.CHOICE_TRANSLATOR = model.findTranslationEngine(config.SOURCE_LANGUAGE, config.TARGET_LANGUAGE)
|
config.CHOICE_TRANSLATOR = model.findTranslationEngine(config.SOURCE_LANGUAGE, config.TARGET_LANGUAGE)
|
||||||
model.authenticationTranslator()
|
|
||||||
view.printToTextbox_selectedYourLanguages(select)
|
view.printToTextbox_selectedYourLanguages(select)
|
||||||
|
|
||||||
def setTargetLanguageAndCountry(select):
|
def setTargetLanguageAndCountry(select):
|
||||||
@@ -236,7 +228,6 @@ def setTargetLanguageAndCountry(select):
|
|||||||
config.TARGET_LANGUAGE = language
|
config.TARGET_LANGUAGE = language
|
||||||
config.TARGET_COUNTRY = country
|
config.TARGET_COUNTRY = country
|
||||||
config.CHOICE_TRANSLATOR = model.findTranslationEngine(config.SOURCE_LANGUAGE, config.TARGET_LANGUAGE)
|
config.CHOICE_TRANSLATOR = model.findTranslationEngine(config.SOURCE_LANGUAGE, config.TARGET_LANGUAGE)
|
||||||
model.authenticationTranslator()
|
|
||||||
view.printToTextbox_selectedTargetLanguages(select)
|
view.printToTextbox_selectedTargetLanguages(select)
|
||||||
|
|
||||||
def callbackSelectedLanguagePresetTab(selected_tab_no):
|
def callbackSelectedLanguagePresetTab(selected_tab_no):
|
||||||
@@ -253,7 +244,6 @@ def callbackSelectedLanguagePresetTab(selected_tab_no):
|
|||||||
config.TARGET_LANGUAGE = language
|
config.TARGET_LANGUAGE = language
|
||||||
config.TARGET_COUNTRY = country
|
config.TARGET_COUNTRY = country
|
||||||
config.CHOICE_TRANSLATOR = model.findTranslationEngine(config.SOURCE_LANGUAGE, config.TARGET_LANGUAGE)
|
config.CHOICE_TRANSLATOR = model.findTranslationEngine(config.SOURCE_LANGUAGE, config.TARGET_LANGUAGE)
|
||||||
model.authenticationTranslator()
|
|
||||||
view.printToTextbox_changedLanguagePresetTab(config.SELECTED_TAB_NO)
|
view.printToTextbox_changedLanguagePresetTab(config.SELECTED_TAB_NO)
|
||||||
|
|
||||||
# command func
|
# command func
|
||||||
@@ -377,21 +367,23 @@ def callbackSetUiLanguage(value):
|
|||||||
# Translation Tab
|
# Translation Tab
|
||||||
def callbackSetDeeplAuthkey(value):
|
def callbackSetDeeplAuthkey(value):
|
||||||
print("callbackSetDeeplAuthkey", str(value))
|
print("callbackSetDeeplAuthkey", str(value))
|
||||||
if len(value) > 0:
|
if len(value) == 39:
|
||||||
result = model.authenticationTranslator(choice_translator="DeepL_API", auth_key=value)
|
result = model.authenticationTranslator(choice_translator="DeepL_API", auth_key=value)
|
||||||
if result is True:
|
if result is True:
|
||||||
auth_keys = config.AUTH_KEYS
|
key = value
|
||||||
auth_keys["DeepL_API"] = value
|
|
||||||
config.AUTH_KEYS = auth_keys
|
|
||||||
view.printToTextbox_AuthenticationSuccess()
|
view.printToTextbox_AuthenticationSuccess()
|
||||||
|
else:
|
||||||
|
key = None
|
||||||
|
view.printToTextbox_AuthenticationError()
|
||||||
|
auth_keys = config.AUTH_KEYS
|
||||||
|
auth_keys["DeepL_API"] = key
|
||||||
|
config.AUTH_KEYS = auth_keys
|
||||||
config.CHOICE_TRANSLATOR = model.findTranslationEngine(config.SOURCE_LANGUAGE, config.TARGET_LANGUAGE)
|
config.CHOICE_TRANSLATOR = model.findTranslationEngine(config.SOURCE_LANGUAGE, config.TARGET_LANGUAGE)
|
||||||
elif len(value) == 0:
|
elif len(value) == 0:
|
||||||
auth_keys = config.AUTH_KEYS
|
auth_keys = config.AUTH_KEYS
|
||||||
auth_keys["DeepL_API"] = None
|
auth_keys["DeepL_API"] = None
|
||||||
config.AUTH_KEYS = auth_keys
|
config.AUTH_KEYS = auth_keys
|
||||||
config.CHOICE_TRANSLATOR = model.findTranslationEngine(config.SOURCE_LANGUAGE, config.TARGET_LANGUAGE)
|
config.CHOICE_TRANSLATOR = model.findTranslationEngine(config.SOURCE_LANGUAGE, config.TARGET_LANGUAGE)
|
||||||
else:
|
|
||||||
view.printToTextbox_AuthenticationError()
|
|
||||||
|
|
||||||
# Transcription Tab (Mic)
|
# Transcription Tab (Mic)
|
||||||
def callbackSetMicHost(value):
|
def callbackSetMicHost(value):
|
||||||
@@ -638,11 +630,13 @@ def createMainWindow():
|
|||||||
# init config
|
# init config
|
||||||
initSetLanguageAndCountry()
|
initSetLanguageAndCountry()
|
||||||
|
|
||||||
if model.authenticationTranslator() is False:
|
if model.authenticationTranslator(config.CHOICE_TRANSLATOR, config.AUTH_KEYS[config.CHOICE_TRANSLATOR]) is False:
|
||||||
# error update Auth key
|
# error update Auth key
|
||||||
|
auth_keys = config.AUTH_KEYS
|
||||||
|
auth_keys[config.CHOICE_TRANSLATOR] = None
|
||||||
|
config.AUTH_KEYS = auth_keys
|
||||||
view.printToTextbox_AuthenticationError()
|
view.printToTextbox_AuthenticationError()
|
||||||
config.CHOICE_TRANSLATOR = model.findTranslationEngine(config.SOURCE_LANGUAGE, config.TARGET_LANGUAGE)
|
config.CHOICE_TRANSLATOR = model.findTranslationEngine(config.SOURCE_LANGUAGE, config.TARGET_LANGUAGE)
|
||||||
model.authenticationTranslator()
|
|
||||||
|
|
||||||
# set word filter
|
# set word filter
|
||||||
model.addKeywords()
|
model.addKeywords()
|
||||||
|
|||||||
18
model.py
18
model.py
@@ -121,8 +121,7 @@ class Model:
|
|||||||
country = parts[1][1:-1]
|
country = parts[1][1:-1]
|
||||||
return language, country
|
return language, country
|
||||||
|
|
||||||
@staticmethod
|
def findTranslationEngine(self, source_lang, target_lang):
|
||||||
def findTranslationEngine(source_lang, target_lang):
|
|
||||||
compatible_engines = []
|
compatible_engines = []
|
||||||
for engine in translatorEngine:
|
for engine in translatorEngine:
|
||||||
source_languages = translation_lang.get(engine, {}).get("source", {})
|
source_languages = translation_lang.get(engine, {}).get("source", {})
|
||||||
@@ -132,16 +131,15 @@ class Model:
|
|||||||
engine_name = compatible_engines[0]
|
engine_name = compatible_engines[0]
|
||||||
|
|
||||||
if engine_name == "DeepL" and config.AUTH_KEYS["DeepL_API"] != None:
|
if engine_name == "DeepL" and config.AUTH_KEYS["DeepL_API"] != None:
|
||||||
|
if self.authenticationTranslator(engine_name, config.AUTH_KEYS["DeepL_API"]) is True:
|
||||||
engine_name = "DeepL_API"
|
engine_name = "DeepL_API"
|
||||||
elif engine_name == "DeepL_API" and config.AUTH_KEYS["DeepL_API"] == None:
|
elif engine_name == "DeepL_API" and config.AUTH_KEYS["DeepL_API"] == None:
|
||||||
engine_name = "DeepL"
|
engine_name = "DeepL"
|
||||||
|
|
||||||
return engine_name
|
return engine_name
|
||||||
|
|
||||||
def getTranslatorStatus(self):
|
|
||||||
return self.translator.translator_status[config.CHOICE_TRANSLATOR]
|
|
||||||
|
|
||||||
def getInputTranslate(self, message):
|
def getInputTranslate(self, message):
|
||||||
|
print(config.CHOICE_TRANSLATOR, config.AUTH_KEYS)
|
||||||
if config.CHOICE_TRANSLATOR == "DeepL_API":
|
if config.CHOICE_TRANSLATOR == "DeepL_API":
|
||||||
if config.TARGET_LANGUAGE == "English":
|
if config.TARGET_LANGUAGE == "English":
|
||||||
if config.TARGET_COUNTRY in ["United States", "Canada", "Philippines"]:
|
if config.TARGET_COUNTRY in ["United States", "Canada", "Philippines"]:
|
||||||
@@ -153,6 +151,11 @@ class Model:
|
|||||||
config.TARGET_LANGUAGE = "Portuguese European"
|
config.TARGET_LANGUAGE = "Portuguese European"
|
||||||
else:
|
else:
|
||||||
config.TARGET_LANGUAGE = "Portuguese Brazilian"
|
config.TARGET_LANGUAGE = "Portuguese Brazilian"
|
||||||
|
elif config.CHOICE_TRANSLATOR == "DeepL":
|
||||||
|
if config.TARGET_LANGUAGE in ["English American", "English British"]:
|
||||||
|
config.TARGET_LANGUAGE = "English"
|
||||||
|
elif config.TARGET_LANGUAGE in ["Portuguese European", "Portuguese Brazilian"]:
|
||||||
|
config.TARGET_COUNTRY = "Portugal"
|
||||||
|
|
||||||
translation = self.translator.translate(
|
translation = self.translator.translate(
|
||||||
translator_name=config.CHOICE_TRANSLATOR,
|
translator_name=config.CHOICE_TRANSLATOR,
|
||||||
@@ -174,6 +177,11 @@ class Model:
|
|||||||
config.SOURCE_LANGUAGE = "Portuguese European"
|
config.SOURCE_LANGUAGE = "Portuguese European"
|
||||||
else:
|
else:
|
||||||
config.SOURCE_LANGUAGE = "Portuguese Brazilian"
|
config.SOURCE_LANGUAGE = "Portuguese Brazilian"
|
||||||
|
elif config.CHOICE_TRANSLATOR == "DeepL":
|
||||||
|
if config.SOURCE_LANGUAGE in ["English American", "English British"]:
|
||||||
|
config.SOURCE_LANGUAGE = "English"
|
||||||
|
elif config.SOURCE_LANGUAGE in ["Portuguese European", "Portuguese Brazilian"]:
|
||||||
|
config.SOURCE_COUNTRY = "Portugal"
|
||||||
|
|
||||||
translation = self.translator.translate(
|
translation = self.translator.translate(
|
||||||
translator_name=config.CHOICE_TRANSLATOR,
|
translator_name=config.CHOICE_TRANSLATOR,
|
||||||
|
|||||||
@@ -6,34 +6,22 @@ from .translation_languages import translatorEngine, translation_lang
|
|||||||
# Translator
|
# Translator
|
||||||
class Translator():
|
class Translator():
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
|
pass
|
||||||
self.translator_status = {}
|
self.translator_status = {}
|
||||||
for translator in translatorEngine:
|
|
||||||
self.translator_status[translator] = False
|
|
||||||
self.deepl_client = None
|
|
||||||
|
|
||||||
def authentication(self, translator_name, authkey=None):
|
def authentication(self, translator_name, authkey=None):
|
||||||
result = False
|
|
||||||
match translator_name:
|
|
||||||
case "DeepL":
|
|
||||||
self.translator_status[translator_name] = True
|
|
||||||
result = True
|
result = True
|
||||||
|
match translator_name:
|
||||||
case "DeepL_API":
|
case "DeepL_API":
|
||||||
try:
|
try:
|
||||||
self.deepl_client = deepl_Translator(authkey)
|
self.deepl_client = deepl_Translator(authkey)
|
||||||
self.deepl_client.translate_text(" ", target_lang="EN-US")
|
self.deepl_client.translate_text(" ", target_lang="EN-US")
|
||||||
self.translator_status[translator_name] = True
|
|
||||||
result = True
|
|
||||||
except:
|
except:
|
||||||
self.translator_status[translator_name] = False
|
result = False
|
||||||
case "Google":
|
|
||||||
self.translator_status[translator_name] = True
|
|
||||||
result = True
|
|
||||||
case "Bing":
|
|
||||||
self.translator_status[translator_name] = True
|
|
||||||
result = True
|
|
||||||
return result
|
return result
|
||||||
|
|
||||||
def translate(self, translator_name, source_language, target_language, message):
|
def translate(self, translator_name, source_language, target_language, message):
|
||||||
|
print(translator_name, source_language, target_language, message)
|
||||||
try:
|
try:
|
||||||
result = ""
|
result = ""
|
||||||
source_language=translation_lang[translator_name]["source"][source_language]
|
source_language=translation_lang[translator_name]["source"][source_language]
|
||||||
|
|||||||
Reference in New Issue
Block a user