👍️[Update] Main/Controller : エンドポイントの検証用のテストコードを追加(途中)

This commit is contained in:
misyaguziya
2024-08-09 19:11:08 +09:00
parent 8bb5b27e9f
commit d4d68d17cf
3 changed files with 248 additions and 102 deletions

View File

@@ -963,7 +963,10 @@ class Config:
self._VERSION = "2.2.5"
self._ENABLE_SPEAKER2CHATBOX = False # Speaker2Chatbox
self._ENABLE_SPEAKER2CHATBOX_PASS_CONFIRMATION = "VRCT=0YEN"
self._PATH_LOCAL = os_path.dirname(sys.executable)
if getattr(sys, 'frozen', False):
self._PATH_LOCAL = os_path.dirname(sys.executable)
else:
self._PATH_LOCAL = os_path.dirname(os_path.abspath(__file__))
self._PATH_CONFIG = os_path.join(self._PATH_LOCAL, "config.json")
self._PATH_LOGS = os_path.join(self._PATH_LOCAL, "logs")
os_makedirs(self._PATH_LOGS, exist_ok=True)

View File

@@ -48,12 +48,12 @@ def callbackRestartSoftware(*args, **kwargs) -> dict:
model.reStartSoftware()
return {"status":200}
def callbackFilepathLogs():
def callbackFilepathLogs(*args, **kwargs) -> dict:
print(json.dumps({"log": "callbackFilepathLogs"}), flush=True)
Popen(['explorer', config.PATH_LOGS.replace('/', '\\')], shell=True)
return {"status":200}
def callbackFilepathConfigFile():
def callbackFilepathConfigFile(*args, **kwargs) -> dict:
print(json.dumps({"log": "callbackFilepathConfigFile"}), flush=True)
Popen(['explorer', config.PATH_LOCAL.replace('/', '\\')], shell=True)
return {"status":200}
@@ -95,7 +95,7 @@ class MicMessage:
def send(self, message: Union[str, bool]) -> None:
if isinstance(message, bool) and message is False:
self.action("error_device", {
"status":404,
"status":400,
"result": {
"message":"No mic device detected."
}
@@ -120,7 +120,7 @@ class MicMessage:
if success is False:
changeToCTranslate2Process()
self.action("error_translation_engine", {
"status":404,
"status":400,
"result": {
"message":"translation engine limit error"
}
@@ -203,7 +203,7 @@ class SpeakerMessage:
def receive(self, message):
if isinstance(message, bool) and message is False:
self.action("error_device",{
"status":404,
"status":400,
"result": {
"message":"No mic device detected."
},
@@ -219,7 +219,7 @@ class SpeakerMessage:
if success is False:
changeToCTranslate2Process()
self.action("error_translation_engine", {
"status":404,
"status":400,
"result": {
"message":"translation engine limit error"
}
@@ -314,7 +314,7 @@ class ChatMessage:
if success is False:
changeToCTranslate2Process()
self.action("error_translation_engine", {
"status":404,
"status":400,
"result":{
"message":"translation engine limit error"
}
@@ -645,27 +645,42 @@ def callbackSetUiLanguage(data, *args, **kwargs) -> dict:
config.UI_LANGUAGE = data
return {"status":200, "result":config.UI_LANGUAGE}
def callbackSetEnableRestoreMainWindowGeometry(data, *args, **kwargs) -> dict:
print(json.dumps({"log": "callbackSetEnableRestoreMainWindowGeometry", "data":data}), flush=True)
config.ENABLE_RESTORE_MAIN_WINDOW_GEOMETRY = data
def callbackEnableRestoreMainWindowGeometry(data, *args, **kwargs) -> dict:
print(json.dumps({"log": "callbackEnableRestoreMainWindowGeometry"}), flush=True)
config.ENABLE_RESTORE_MAIN_WINDOW_GEOMETRY = True
return {"status":200, "result":config.ENABLE_RESTORE_MAIN_WINDOW_GEOMETRY}
def callbackDisableRestoreMainWindowGeometry(*args, **kwargs) -> dict:
print(json.dumps({"log": "callbackDisableRestoreMainWindowGeometry"}), flush=True)
config.ENABLE_RESTORE_MAIN_WINDOW_GEOMETRY = True
return {"status":200, "result":config.ENABLE_RESTORE_MAIN_WINDOW_GEOMETRY}
# Translation Tab
def callbackSetUseTranslationFeature(data, *args, **kwargs) -> dict:
print(json.dumps({"log": "callbackSetUseTranslationFeature", "data":data}), flush=True)
config.USE_TRANSLATION_FEATURE = data
if config.USE_TRANSLATION_FEATURE is True:
if model.checkCTranslatorCTranslate2ModelWeight():
config.IS_RESET_BUTTON_DISPLAYED_FOR_TRANSLATION = False
def callback():
model.changeTranslatorCTranslate2Model()
th_callback = Thread(target=callback)
th_callback.daemon = True
th_callback.start()
else:
config.IS_RESET_BUTTON_DISPLAYED_FOR_TRANSLATION = True
else:
def callbackEnableUseTranslationFeature(*args, **kwargs) -> dict:
print(json.dumps({"log": "callbackEnableTranslationFeature"}), flush=True)
config.USE_TRANSLATION_FEATURE = True
if model.checkCTranslatorCTranslate2ModelWeight():
config.IS_RESET_BUTTON_DISPLAYED_FOR_TRANSLATION = False
def callback():
model.changeTranslatorCTranslate2Model()
th_callback = Thread(target=callback)
th_callback.daemon = True
th_callback.start()
else:
config.IS_RESET_BUTTON_DISPLAYED_FOR_TRANSLATION = True
return {"status":200,
"result":{
"feature":config.USE_TRANSLATION_FEATURE,
"reset":config.IS_RESET_BUTTON_DISPLAYED_FOR_TRANSLATION,
},
}
def callbackDisableUseTranslationFeature(*args, **kwargs) -> dict:
print(json.dumps({"log": "callbackDisableTranslationFeature"}), flush=True)
config.USE_TRANSLATION_FEATURE = False
config.IS_RESET_BUTTON_DISPLAYED_FOR_TRANSLATION = False
return {"status":200,
"result":{
"feature":config.USE_TRANSLATION_FEATURE,
@@ -694,7 +709,7 @@ def callbackSetCtranslate2WeightType(data, *args, **kwargs) -> dict:
def callbackSetDeeplAuthKey(data, *args, **kwargs) -> dict:
print(json.dumps({"log": "callbackSetDeeplAuthKey", "data":data}), flush=True)
status = 404
status = 400
if len(data) == 36 or len(data) == 39:
result = model.authenticationTranslatorDeepLAuthKey(auth_key=data)
if result is True:
@@ -742,16 +757,21 @@ def callbackSetMicDevice(data, *args, **kwargs) -> dict:
def callbackSetMicEnergyThreshold(data, *args, **kwargs) -> dict:
print(json.dumps({"log": "callbackSetMicEnergyThreshold", "data":data}), flush=True)
status = 404
status = 400
data = int(data)
if 0 <= data <= config.MAX_MIC_ENERGY_THRESHOLD:
config.INPUT_MIC_ENERGY_THRESHOLD = data
status = 200
return {"status": status, "result": config.INPUT_MIC_ENERGY_THRESHOLD}
def callbackSetMicDynamicEnergyThreshold(data, *args, **kwargs) -> dict:
print(json.dumps({"log": "callbackSetMicDynamicEnergyThreshold", "data":data}), flush=True)
config.INPUT_MIC_DYNAMIC_ENERGY_THRESHOLD = data
def callbackEnableMicDynamicEnergyThreshold(*args, **kwargs) -> dict:
print(json.dumps({"log": "callbackEnableMicDynamicEnergyThreshold"}), flush=True)
config.INPUT_MIC_DYNAMIC_ENERGY_THRESHOLD = True
return {"status":200, "result":config.INPUT_MIC_DYNAMIC_ENERGY_THRESHOLD}
def callbackDisableMicDynamicEnergyThreshold(*args, **kwargs) -> dict:
print(json.dumps({"log": "callbackDisableMicDynamicEnergyThreshold"}), flush=True)
config.INPUT_MIC_DYNAMIC_ENERGY_THRESHOLD = False
return {"status":200, "result":config.INPUT_MIC_DYNAMIC_ENERGY_THRESHOLD}
class ProgressBarEnergy:
@@ -781,7 +801,7 @@ def callbackSetMicRecordTimeout(data, *args, **kwargs) -> dict:
else:
raise ValueError()
except Exception:
response = {"status":404, "result":{"message":"Error Mic Record Timeout"}}
response = {"status":400, "result":{"message":"Error Mic Record Timeout"}}
else:
response = {"status":200, "result":config.INPUT_MIC_RECORD_TIMEOUT}
return response
@@ -795,7 +815,7 @@ def callbackSetMicPhraseTimeout(data, *args, **kwargs) -> dict:
else:
raise ValueError()
except Exception:
response = {"status":404, "result":{"message":"Error Mic Phrase Timeout"}}
response = {"status":400, "result":{"message":"Error Mic Phrase Timeout"}}
else:
response = {"status":200, "result":config.INPUT_MIC_PHRASE_TIMEOUT}
return response
@@ -809,7 +829,7 @@ def callbackSetMicMaxPhrases(data, *args, **kwargs) -> dict:
else:
raise ValueError()
except Exception:
response = {"status":404, "result":{"message":"Error Mic Max Phrases"}}
response = {"status":400, "result":{"message":"Error Mic Max Phrases"}}
else:
response = {"status":200, "result":config.INPUT_MIC_MAX_PHRASES}
return response
@@ -864,14 +884,19 @@ def callbackSetSpeakerEnergyThreshold(data, *args, **kwargs) -> dict:
else:
raise ValueError()
except Exception:
response = {"status":404, "result":{"message":"Error Set Speaker Energy Threshold"}}
response = {"status":400, "result":{"message":"Error Set Speaker Energy Threshold"}}
else:
response = {"status":200, "result":config.INPUT_SPEAKER_ENERGY_THRESHOLD}
return response
def callbackSetSpeakerDynamicEnergyThreshold(data, *args, **kwargs) -> dict:
print(json.dumps({"log": "callbackSetSpeakerDynamicEnergyThreshold", "data":data}), flush=True)
config.INPUT_SPEAKER_DYNAMIC_ENERGY_THRESHOLD = data
def callbackEnableSpeakerDynamicEnergyThreshold(*args, **kwargs) -> dict:
print(json.dumps({"log": "callbackEnableSpeakerDynamicEnergyThreshold"}), flush=True)
config.INPUT_SPEAKER_DYNAMIC_ENERGY_THRESHOLD = True
return {"status":200, "result":config.INPUT_SPEAKER_DYNAMIC_ENERGY_THRESHOLD}
def callbackDisableSpeakerDynamicEnergyThreshold(*args, **kwargs) -> dict:
print(json.dumps({"log": "callbackDisableSpeakerDynamicEnergyThreshold"}), flush=True)
config.INPUT_SPEAKER_DYNAMIC_ENERGY_THRESHOLD = False
return {"status":200, "result":config.INPUT_SPEAKER_DYNAMIC_ENERGY_THRESHOLD}
def callbackEnableCheckSpeakerThreshold(data, action, *args, **kwargs) -> dict:
@@ -894,7 +919,7 @@ def callbackSetSpeakerRecordTimeout(data, *args, **kwargs) -> dict:
else:
raise ValueError()
except Exception:
response = {"status":404, "result":{"message":"Error Speaker Record Timeout"}}
response = {"status":400, "result":{"message":"Error Speaker Record Timeout"}}
else:
response = {"status":200, "result":config.INPUT_SPEAKER_RECORD_TIMEOUT}
return response
@@ -908,7 +933,7 @@ def callbackSetSpeakerPhraseTimeout(data, *args, **kwargs) -> dict:
else:
raise ValueError()
except Exception:
response = {"status":404, "result":{"message":"Error Speaker Phrase Timeout"}}
response = {"status":400, "result":{"message":"Error Speaker Phrase Timeout"}}
else:
response = {"status":200, "result":config.INPUT_SPEAKER_PHRASE_TIMEOUT}
return response
@@ -922,24 +947,20 @@ def callbackSetSpeakerMaxPhrases(data, *args, **kwargs) -> dict:
else:
raise ValueError()
except Exception:
response = {"status":404, "result":{"message":"Error Speaker Max Phrases"}}
response = {"status":400, "result":{"message":"Error Speaker Max Phrases"}}
else:
response = {"status":200, "result":config.INPUT_SPEAKER_MAX_PHRASES}
return response
# Transcription (Internal AI Model)
def callbackSetUserWhisperFeature(data, *args, **kwargs) -> dict:
print(json.dumps({"log": "callbackSetUserWhisperFeature", "data":data}), flush=True)
config.USE_WHISPER_FEATURE = data
if config.USE_WHISPER_FEATURE is True:
if model.checkTranscriptionWhisperModelWeight() is True:
config.IS_RESET_BUTTON_DISPLAYED_FOR_WHISPER = False
config.SELECTED_TRANSCRIPTION_ENGINE = "Whisper"
else:
config.IS_RESET_BUTTON_DISPLAYED_FOR_WHISPER = True
config.SELECTED_TRANSCRIPTION_ENGINE = "Google"
else:
def callbackEnableUseWhisperFeature(*args, **kwargs) -> dict:
print(json.dumps({"log": "callbackEnableUserWhisperFeature"}), flush=True)
config.USE_WHISPER_FEATURE = True
if model.checkTranscriptionWhisperModelWeight() is True:
config.IS_RESET_BUTTON_DISPLAYED_FOR_WHISPER = False
config.SELECTED_TRANSCRIPTION_ENGINE = "Whisper"
else:
config.IS_RESET_BUTTON_DISPLAYED_FOR_WHISPER = True
config.SELECTED_TRANSCRIPTION_ENGINE = "Google"
return {"status":200,
"result":{
@@ -949,6 +970,19 @@ def callbackSetUserWhisperFeature(data, *args, **kwargs) -> dict:
},
}
def callbackDisableUseWhisperFeature(*args, **kwargs) -> dict:
print(json.dumps({"log": "callbackDisableUserWhisperFeature"}), flush=True)
config.USE_WHISPER_FEATURE = False
config.IS_RESET_BUTTON_DISPLAYED_FOR_WHISPER = False
config.SELECTED_TRANSCRIPTION_ENGINE = "Google"
return {"status":200,
"result":{
"feature":config.USE_WHISPER_FEATURE,
"transcription_engine":config.SELECTED_TRANSCRIPTION_ENGINE,
"reset":config.IS_RESET_BUTTON_DISPLAYED_FOR_WHISPER,
},
}
def callbackSetWhisperWeightType(data, *args, **kwargs) -> dict:
print(json.dumps({"log": "callbackSetWhisperWeightType", "data":data}), flush=True)
config.WHISPER_WEIGHT_TYPE = str(data)
@@ -1049,14 +1083,24 @@ def callbackSetOverlaySmallLogSettingsZRotation(data, *args, **kwargs) -> dict:
return {"status":200, "result":config.OVERLAY_SMALL_LOG_SETTINGS["z_rotation"]}
# Others Tab
def callbackSetEnableAutoClearMessageBox(data, *args, **kwargs) -> dict:
print(json.dumps({"log": "callbackSetEnableAutoClearMessageBox", "data":data}), flush=True)
config.ENABLE_AUTO_CLEAR_MESSAGE_BOX = data
def callbackEnableAutoClearMessageBox(*args, **kwargs) -> dict:
print(json.dumps({"log": "callbackEnableAutoClearMessageBox"}), flush=True)
config.ENABLE_AUTO_CLEAR_MESSAGE_BOX = True
return {"status":200, "result":config.ENABLE_AUTO_CLEAR_MESSAGE_BOX}
def callbackSetEnableSendOnlyTranslatedMessages(data, *args, **kwargs) -> dict:
print(json.dumps({"log": "callbackSetEnableSendOnlyTranslatedMessages", "data":data}), flush=True)
config.ENABLE_SEND_ONLY_TRANSLATED_MESSAGES = data
def callbackDisableAutoClearMessageBox(*args, **kwargs) -> dict:
print(json.dumps({"log": "callbackDisableAutoClearMessageBox"}), flush=True)
config.ENABLE_AUTO_CLEAR_MESSAGE_BOX = False
return {"status":200, "result":config.ENABLE_AUTO_CLEAR_MESSAGE_BOX}
def callbackEnableSendOnlyTranslatedMessages(*args, **kwargs) -> dict:
print(json.dumps({"log": "callbackEnableSendOnlyTranslatedMessages"}), flush=True)
config.ENABLE_SEND_ONLY_TRANSLATED_MESSAGES = True
return {"status":200, "result":config.ENABLE_SEND_ONLY_TRANSLATED_MESSAGES}
def callbackDisableSendOnlyTranslatedMessages(*args, **kwargs) -> dict:
print(json.dumps({"log": "callbackDisableSendOnlyTranslatedMessages"}), flush=True)
config.ENABLE_SEND_ONLY_TRANSLATED_MESSAGES = False
return {"status":200, "result":config.ENABLE_SEND_ONLY_TRANSLATED_MESSAGES}
def callbackSetSendMessageButtonType(data, *args, **kwargs) -> dict:
@@ -1157,17 +1201,17 @@ def callbackSetOscPort(data, *args, **kwargs) -> dict:
config.OSC_PORT = int(data)
return {"status":200, "result":config.OSC_PORT}
def getListLanguageAndCountry():
return model.getListLanguageAndCountry()
def getListLanguageAndCountry(*args, **kwargs) -> dict:
return {"status":200, "result": model.getListLanguageAndCountry()}
def getListInputHost():
return model.getListInputHost()
def getListInputHost(*args, **kwargs) -> dict:
return {"status":200, "result": model.getListInputHost()}
def getListInputDevice():
return model.getListInputDevice()
def getListInputDevice(*args, **kwargs) -> dict:
return {"status":200, "result": model.getListInputDevice()}
def getListOutputDevice():
return model.getListOutputDevice()
def getListOutputDevice(*args, **kwargs) -> dict:
return {"status":200, "result": model.getListOutputDevice()}
def init():
print(json.dumps({"log": "Start Initialization"}), flush=True)

View File

@@ -97,8 +97,8 @@ controller_mapping = {
"/controller/list_mic_host": controller.getListInputHost,
"/controller/list_mic_device": controller.getListInputDevice,
"/controller/list_speaker_device": controller.getListOutputDevice,
"/controller/callback_update_software": controller.callbackUpdateSoftware,
"/controller/callback_restart_software": controller.callbackRestartSoftware,
# "/controller/callback_update_software": controller.callbackUpdateSoftware,
# "/controller/callback_restart_software": controller.callbackRestartSoftware,
"/controller/callback_filepath_logs": controller.callbackFilepathLogs,
"/controller/callback_filepath_config_file": controller.callbackFilepathConfigFile,
# "/controller/callback_enable_easter_egg": controller.callbackEnableEasterEgg,
@@ -129,15 +129,18 @@ controller_mapping = {
"/controller/callback_set_message_box_ratio": controller.callbackSetMessageBoxRatio,
"/controller/callback_set_font_family": controller.callbackSetFontFamily,
"/controller/callback_set_ui_language": controller.callbackSetUiLanguage,
"/controller/callback_set_enable_restore_main_window_geometry": controller.callbackSetEnableRestoreMainWindowGeometry,
"/controller/callback_set_use_translation_feature": controller.callbackSetUseTranslationFeature,
"/controller/callback_enable_restore_main_window_geometry": controller.callbackEnableRestoreMainWindowGeometry,
"/controller/callback_disable_restore_main_window_geometry": controller.callbackDisableRestoreMainWindowGeometry,
"/controller/callback_enable_use_translation_feature": controller.callbackEnableUseTranslationFeature,
"/controller/callback_disable_use_translation_feature": controller.callbackDisableUseTranslationFeature,
"/controller/callback_set_ctranslate2_weight_type": controller.callbackSetCtranslate2WeightType,
"/controller/callback_set_deepl_auth_key": controller.callbackSetDeeplAuthKey,
"/controller/callback_clear_deepl_auth_key": controller.callbackClearDeeplAuthKey,
"/controller/callback_set_mic_host": controller.callbackSetMicHost,
"/controller/callback_set_mic_device": controller.callbackSetMicDevice,
"/controller/callback_set_mic_energy_threshold": controller.callbackSetMicEnergyThreshold,
"/controller/callback_set_mic_dynamic_energy_threshold": controller.callbackSetMicDynamicEnergyThreshold,
"/controller/callback_enable_mic_dynamic_energy_threshold": controller.callbackEnableMicDynamicEnergyThreshold,
"/controller/callback_disable_mic_dynamic_energy_threshold": controller.callbackDisableMicDynamicEnergyThreshold,
"/controller/callback_enable_check_mic_threshold": controller.callbackEnableCheckMicThreshold,
"/controller/callback_disable_check_mic_threshold": controller.callbackDisableCheckMicThreshold,
"/controller/callback_set_mic_record_timeout": controller.callbackSetMicRecordTimeout,
@@ -147,13 +150,15 @@ controller_mapping = {
"/controller/callback_delete_mic_word_filter": controller.callbackDeleteMicWordFilter,
"/controller/callback_set_speaker_device": controller.callbackSetSpeakerDevice,
"/controller/callback_set_speaker_energy_threshold": controller.callbackSetSpeakerEnergyThreshold,
"/controller/callback_set_speaker_dynamic_energy_threshold": controller.callbackSetSpeakerDynamicEnergyThreshold,
"/controller/callback_enable_speaker_dynamic_energy_threshold": controller.callbackEnableSpeakerDynamicEnergyThreshold,
"/controller/callback_disable_speaker_dynamic_energy_threshold": controller.callbackDisableSpeakerDynamicEnergyThreshold,
"/controller/callback_enable_check_speaker_threshold": controller.callbackEnableCheckSpeakerThreshold,
"/controller/callback_disable_check_speaker_threshold": controller.callbackDisableCheckSpeakerThreshold,
"/controller/callback_set_speaker_record_timeout": controller.callbackSetSpeakerRecordTimeout,
"/controller/callback_set_speaker_phrase_timeout": controller.callbackSetSpeakerPhraseTimeout,
"/controller/callback_set_speaker_max_phrases": controller.callbackSetSpeakerMaxPhrases,
"/controller/callback_set_use_whisper_feature": controller.callbackSetUserWhisperFeature,
"/controller/callback_enable_use_whisper_feature": controller.callbackEnableUseWhisperFeature,
"/controller/callback_disable_use_whisper_feature": controller.callbackDisableUseWhisperFeature,
"/controller/callback_set_whisper_weight_type": controller.callbackSetWhisperWeightType,
"/controller/callback_set_overlay_settings_opacity": controller.callbackSetOverlaySettingsOpacity,
"/controller/callback_set_overlay_settings_ui_scaling": controller.callbackSetOverlaySettingsUiScaling,
@@ -165,8 +170,10 @@ controller_mapping = {
"/controller/callback_set_overlay_small_log_settings_x_rotation": controller.callbackSetOverlaySmallLogSettingsXRotation,
"/controller/callback_set_overlay_small_log_settings_y_rotation": controller.callbackSetOverlaySmallLogSettingsYRotation,
"/controller/callback_set_overlay_small_log_settings_z_rotation": controller.callbackSetOverlaySmallLogSettingsZRotation,
"/controller/callback_set_enable_auto_clear_chatbox": controller.callbackSetEnableAutoClearMessageBox,
"/controller/callback_set_send_only_translated_messages": controller.callbackSetEnableSendOnlyTranslatedMessages,
"/controller/callback_enable_auto_clear_chatbox": controller.callbackEnableAutoClearMessageBox,
"/controller/callback_disable_auto_clear_chatbox": controller.callbackDisableAutoClearMessageBox,
"/controller/callback_enable_send_only_translated_messages": controller.callbackEnableSendOnlyTranslatedMessages,
"/controller/callback_disable_send_only_translated_messages": controller.callbackDisableSendOnlyTranslatedMessages,
"/controller/callback_set_send_message_button_type": controller.callbackSetSendMessageButtonType,
"/controller/callback_enable_notice_xsoverlay": controller.callbackEnableNoticeXsoverlay,
"/controller/callback_disable_notice_xsoverlay": controller.callbackDisableNoticeXsoverlay,
@@ -271,15 +278,6 @@ def main():
f.write(f"received_data: {received_data}\n")
if received_data:
# response_data = {
# "status": 200,
# "id": received_data["id"],
# "data": received_data["data"],
# }
# response = json.dumps(response_data)
# time.sleep(2)
# print(response, flush=True)
endpoint = received_data.get("endpoint", None)
data = received_data.get("data", None)
@@ -311,23 +309,124 @@ def main():
print(response, flush=True)
if __name__ == "__main__":
# endpoint = "/controller/list_mic_host"
# data = None
# response_data, status = handleControllerRequest(endpoint, data)
# response = {
# "status": status,
# "endpoint": endpoint,
# "data": response_data,
# }
# response = json.dumps(response)
# print(response, flush=True)
response_test = True
if response_test:
for endpoint, value in config_mapping.items():
response_data, status = handleConfigRequest(endpoint)
response = {
"status": status,
"endpoint": endpoint,
"result": response_data,
}
response = json.dumps(response)
print(response, flush=True)
try:
controller.init()
print(json.dumps({"log": "Initialization from Python."}), flush=True)
while True:
main()
except Exception:
import traceback
with open('error.log', 'a') as f:
traceback.print_exc(file=f)
for endpoint, value in controller_mapping.items():
print("endpoint: ", endpoint)
match endpoint:
case "/controller/callback_messagebox_press_key_enter":
data = "テスト"
case "/controller/set_your_language_and_country":
data = {"language": "English", "country": "Hong Kong"}
case "/controller/set_target_language_and_country":
data = {"language": "Japanese", "country": "Japan"}
case "/controller/callback_set_transparency":
data = 0.5
case "/controller/callback_set_appearance":
data = "Dark"
case "/controller/callback_set_ui_scaling":
data = 1.5
case "/controller/callback_set_textbox_ui_scaling":
data = 1.5
case "/controller/callback_set_message_box_ratio":
data = 0.5
case "/controller/callback_set_font_family":
data = "Yu Gothic UI"
case "/controller/callback_set_ui_language":
data = "ja"
case "/controller/callback_set_ctranslate2_weight_type":
data = "Small"
case "/controller/callback_set_deepl_auth_key":
data = "35eb1ccf-e36e-6ed2-ccf7-b0463defd962:fx"
case "/controller/callback_set_mic_host":
data = "MME"
case "/controller/callback_set_mic_device":
data = "マイク (Realtek High Definition Audio)"
case "/controller/callback_set_mic_energy_threshold":
data = 0.5
case "/controller/callback_set_mic_record_timeout":
data = 5
case "/controller/callback_set_mic_phrase_timeout":
data = 5
case "/controller/callback_set_mic_max_phrases":
data = 5
case "/controller/callback_set_mic_word_filter":
data = "test0, test1, test2"
case "/controller/callback_delete_mic_word_filter":
data = "test1"
case "/controller/callback_set_speaker_device":
data = "スピーカー (Realtek High Definition Audio)"
case "/controller/callback_set_speaker_energy_threshold":
data = 0.5
case "/controller/callback_set_speaker_record_timeout":
data = 5
case "/controller/callback_set_speaker_phrase_timeout":
data = 5
case "/controller/callback_set_speaker_max_phrases":
data = 5
case "/controller/callback_set_use_whisper_feature":
data = True
case "/controller/callback_set_whisper_weight_type":
data = "base"
case "/controller/callback_set_overlay_settings_opacity":
data = 0.5
case "/controller/callback_set_overlay_settings_ui_scaling":
data = 1.5
case "/controller/callback_set_overlay_small_log_settings_x_pos":
data = 0
case "/controller/callback_set_overlay_small_log_settings_y_pos":
data = 0
case "/controller/callback_set_overlay_small_log_settings_z_pos":
data = 0
case "/controller/callback_set_overlay_small_log_settings_x_rotation":
data = 0
case "/controller/callback_set_overlay_small_log_settings_y_rotation":
data = 0
case "/controller/callback_set_overlay_small_log_settings_z_rotation":
data = 0
case "/controller/callback_set_send_message_button_type":
data = "show"
case "/controller/callback_set_send_message_format":
data = "[message]"
case "/controller/callback_set_send_message_format_with_t":
data = "[message]([translation])"
case "/controller/callback_set_received_message_format":
data = "[message]"
case "/controller/callback_set_received_message_format_with_t":
data = "[message]([translation])"
case "/controller/callback_set_osc_ip_address":
data = "127.0.0.1"
case "/controller/callback_set_osc_port":
data = 8000
case _:
data = None
response_data, status = handleControllerRequest(endpoint, data)
response = {
"status": status,
"endpoint": endpoint,
"result": response_data,
}
response = json.dumps(response)
print(response, flush=True)
else:
try:
controller.init()
print(json.dumps({"log": "Initialization from Python."}), flush=True)
while True:
main()
except Exception:
import traceback
with open('error.log', 'a') as f:
traceback.print_exc(file=f)