diff --git a/controller.py b/controller.py index f713ff9b..7f4a0db4 100644 --- a/controller.py +++ b/controller.py @@ -23,6 +23,23 @@ def callbackFilepathConfigFile(): print("callbackFilepathConfigFile", config.LOCAL_PATH.replace('/', '\\')) Popen(['explorer', config.LOCAL_PATH.replace('/', '\\')], shell=True) +def messageFormatter(format_type:str, translation, message): + if format_type == "RECEIVED": + FORMAT_WITH_T = config.RECEIVED_MESSAGE_FORMAT_WITH_T + FORMAT = config.RECEIVED_MESSAGE_FORMAT + elif format_type == "SEND": + FORMAT_WITH_T = config.SEND_MESSAGE_FORMAT_WITH_T + FORMAT = config.SEND_MESSAGE_FORMAT + else: + 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) + else: + osc_message = FORMAT.replace("[message]", message) + return osc_message + # func transcription send message def sendMicMessage(message): if len(message) > 0: @@ -41,11 +58,7 @@ def sendMicMessage(message): if config.ENABLE_TRANSCRIPTION_SEND is True: if config.ENABLE_SEND_MESSAGE_TO_VRC is True: - if len(translation) > 0: - osc_message = config.SEND_MESSAGE_FORMAT_WITH_T.replace("[message]", message) - osc_message = osc_message.replace("[translation]", translation) - else: - osc_message = config.SEND_MESSAGE_FORMAT.replace("[message]", message) + osc_message = messageFormatter("SEND", translation, message) model.oscSendMessage(osc_message) view.printToTextbox_SentMessage(message, translation) @@ -105,21 +118,13 @@ def receiveSpeakerMessage(message): if config.ENABLE_TRANSCRIPTION_RECEIVE is True: if config.ENABLE_NOTICE_XSOVERLAY is True: - if len(translation) > 0: - xsoverlay_message = config.RECEIVED_MESSAGE_FORMAT_WITH_T.replace("[message]", message) - xsoverlay_message = xsoverlay_message.replace("[translation]", translation) - else: - xsoverlay_message = config.RECEIVED_MESSAGE_FORMAT.replace("[message]", message) + xsoverlay_message = messageFormatter("RECEIVED", translation, message) model.notificationXSOverlay(xsoverlay_message) # ------------Speaker2Chatbox------------ # send OSC message if config.ENABLE_SEND_RECEIVED_MESSAGE_TO_VRC is True: - if len(translation) > 0: - osc_message = config.RECEIVED_MESSAGE_FORMAT_WITH_T.replace("[message]", message) - osc_message = osc_message.replace("[translation]", translation) - else: - osc_message = config.RECEIVED_MESSAGE_FORMAT.replace("[message]", message) + osc_message = messageFormatter("RECEIVED", translation, message) model.oscSendMessage(osc_message) # ------------Speaker2Chatbox------------ @@ -182,11 +187,7 @@ def sendChatMessage(message): # send OSC message if config.ENABLE_SEND_MESSAGE_TO_VRC is True: - if len(translation) > 0: - osc_message = config.SEND_MESSAGE_FORMAT_WITH_T.replace("[message]", message) - osc_message = osc_message.replace("[translation]", translation) - else: - osc_message = config.SEND_MESSAGE_FORMAT.replace("[message]", message) + osc_message = messageFormatter("SEND", translation, message) model.oscSendMessage(osc_message) # update textbox message log (Sent)