diff --git a/modules/translator/index.py b/modules/translator/index.py new file mode 100644 index 0000000..56999ca --- /dev/null +++ b/modules/translator/index.py @@ -0,0 +1,34 @@ +command = self.MESSAGE['text'].split(" ", 2) +command_length = len(command) + +if (command[0] in self.aliases) and (1 <= command_length <= 3): + try: + import requests + + if command_length == 1: + chosen_model = "auto-uk" + else: + chosen_model = command[1] + + source, target = chosen_model.split("-") + + if command_length == 3: + text_to_translate = command[2] + else: + text_to_translate = self.MESSAGE['reply_to_message']['text'] + + data = {"q": text_to_translate, + "source": source, + "target": target, + "format": "text"} + + res = requests.post("http://127.0.0.1:5000/translate", data = data) + result = json.loads(res.text) + + if source == "auto": + self.RESPONSE = f"Результат ({result['detectedLanguage']['language']} - {result['detectedLanguage']['confidence']}%): {result['translatedText']}" + else: + self.RESPONSE = f"Результат: {result['translatedText']}" + + except Exception as e: + print(f"[translit-decoder] Got exception: {e}") diff --git a/modules/translator/meta.json b/modules/translator/meta.json new file mode 100644 index 0000000..bd8c6a0 --- /dev/null +++ b/modules/translator/meta.json @@ -0,0 +1,7 @@ +{ + "version": 1, + "index_file": "index.py", + "start_on_boot": true, + "alias": "translator", + "predefine": "predefine.py" +} diff --git a/modules/translator/predefine.py b/modules/translator/predefine.py new file mode 100644 index 0000000..7cd4b2e --- /dev/null +++ b/modules/translator/predefine.py @@ -0,0 +1 @@ +self.aliases = ["!translate", "!t"]