MyRobotLab / InMoov

inmoov repo
http://myrobotlab.org
91 stars 65 forks source link

finnish translation #167

Open henrikmyl opened 6 years ago

henrikmyl commented 6 years ago

Hello,

I like to make new translation (finnish), but that's was not so simple what i first imagine. I can translate aim- files etc. but how can add new support language in AZURE TRANSLATOR FILE? I think, i can't add new language manually in that file? Azure api needs updating?

I found Italian translation roadmap, so that helps me, but still i need more information..

Thanks.

hairygael commented 6 years ago

Hello, AZURE TRANSLATOR FILE is not what you want to look for. (Anthony correct me if I am wrong) This file links to a AZURE account which uses the Microsoft commercial feature to do the translation. This feature will translate what is requested, but the bot doesn't have the chatbot function to respond in Finnish. For ex: you say: "translate in Finnish my car is red" robot say:"auto on punainen"

What needs to be translated is the EN chatbot folder which contains the AIML and more. For that matter, I updated the inmoov2-develop to be worky for Finnish, but I also updated the zip file available on InMoov website because it needed to have the Italian update anyway. The version on the InMoov site is running the Manticore 1.0.2693 and it is fully working. The version inmoov2-develop is to be compatible with Nixie 1.1.xxxx which is a work in progress.

If you proceed with translating the AIML and more, you can push them to inmoov2-develop branch for the Next release of MRL. But you also can test them with the Manticore version. Hopefully this is clear enough. :)

henrikmyl commented 6 years ago

Okei, thanks for the additional information. Now I know how to go ahead. I will test my translations before push them develop branch.

henrikmyl commented 6 years ago

The tests did not succeed because I did not get the VoiceRss API to work. I try apiKey1=[a00xxxxx], but that not work.

How that apikey should be written in service_5_Mouth.config file?

Windows 10 speech recognition does not support Finnish, so i can't use LocalSpeech.

Translated:

generalAPPS.lang Errors.lang general.lang StartingActions.lang

*_inmoovChatbot.aiml

hairygael commented 6 years ago

Hello, I do not have apiKey for VoiceRSS. So I cannot test. Try to run this script in myrobotlab python tab.

speech = Runtime.start("speech", "VoiceRss") speech.setKey("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx") speech.setLanguage("fi-fi") speech.setRate(0) speech.speakBlocking("se toimii, kyllä uskon, että se tapahtuu")

Remember that VoiceRSS is a bit slow, but the good side is that it's caching the sentence once downloaded.

Gael Langevin Creator of InMoov InMoov Robot http://www.inmoov.fr @inmoov http://twitter.com/inmoov

2018-06-10 8:37 GMT+02:00 henrikmyl notifications@github.com:

The tests did not succeed because I did not get the VoiceRss API to work. I try apiKey1=[a00xxxxx], but that not work.

How that apikey should be written in service_5_Mouth.config file?

Windows 10 speech recognition does not support Finnish, so i can't use LocalSpeech.

Translated:

generalAPPS.lang Errors.lang general.lang StartingActions.lang

*_inmoovChatbot.aiml

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/MyRobotLab/inmoov/issues/167#issuecomment-396024756, or mute the thread https://github.com/notifications/unsubscribe-auth/AIF2xyCyBGaqeXVU3H32_1rRLgIj6uxIks5t7L6hgaJpZM4UhQcg .

henrikmyl commented 6 years ago

Hello, That script work fine.

When i save VoiceRSS api in service_5_Mouth.config file and press start_inmoov, Myrobotlab give error: VoiceRSS error ( api key ? ):


My service_5_Mouth.config file:

[TTS]

Speechengine=VoiceRss

; you can use : ;MarySpeech : open source TTS : http://myrobotlab.org/service/MarySpeech ;LocalSpeech : Local operating system TTS : http://myrobotlab.org/service/LocalSpeech ;Polly : [NEED API KEY AccessKey (apiKey1) and SecretKey (apiKey2)] http://myrobotlab.org/service/Polly ;VoiceRss : [NEED API KEY (apiKey1)] Free cloud service : http://myrobotlab.org/service/VoiceRss ;IndianTts : [NEED API KEY (apiKey1) and userid (apiKey2)] Hindi support : http://myrobotlab.org/service/IndianTts

VoiceName=0

; MarySpeech voices - take HSMM ones - http://myrobotlab.org/content/marytts-multi-language-support ; LocalSpeech : use local windows voices/macOs ( 0,1,2 etc ) print mount.getVoices() ; amazon polly : http://docs.aws.amazon.com/polly/latest/dg/voicelist.html

[API_KEY] apiKey1=[a00*****] apiKey2=

hairygael commented 6 years ago

Ok, I generated a apiKey for VoiceRSS to test and it works on my side using the simple script.

I found an error in the 5_Mouth.py , you need to modify:

if tmplanguage=="it":tmplanguage="fi-fi"

with:

if tmplanguage=="fi":tmplanguage="fi-fi"

Gael Langevin Creator of InMoov InMoov Robot http://www.inmoov.fr @inmoov http://twitter.com/inmoov

2018-06-10 18:05 GMT+02:00 gael langevin hairygael@gmail.com:

Hello, I do not have apiKey for VoiceRSS. So I cannot test. Try to run this script in myrobotlab python tab.

speech = Runtime.start("speech", "VoiceRss") speech.setKey("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx") speech.setLanguage("fi-fi") speech.setRate(0) speech.speakBlocking("se toimii, kyllä uskon, että se tapahtuu")

Remember that VoiceRSS is a bit slow, but the good side is that it's caching the sentence once downloaded.

Gael Langevin Creator of InMoov InMoov Robot http://www.inmoov.fr @inmoov http://twitter.com/inmoov

2018-06-10 8:37 GMT+02:00 henrikmyl notifications@github.com:

The tests did not succeed because I did not get the VoiceRss API to work. I try apiKey1=[a00xxxxx], but that not work.

How that apikey should be written in service_5_Mouth.config file?

Windows 10 speech recognition does not support Finnish, so i can't use LocalSpeech.

Translated:

generalAPPS.lang Errors.lang general.lang StartingActions.lang

*_inmoovChatbot.aiml

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/MyRobotLab/inmoov/issues/167#issuecomment-396024756, or mute the thread https://github.com/notifications/unsubscribe-auth/AIF2xyCyBGaqeXVU3H32_1rRLgIj6uxIks5t7L6hgaJpZM4UhQcg .

hairygael commented 6 years ago

Try to write your key like this:

[API_KEY] apiKey1=a00***** apiKey2=

Gael Langevin Creator of InMoov InMoov Robot http://www.inmoov.fr @inmoov http://twitter.com/inmoov

2018-06-10 18:44 GMT+02:00 henrikmyl notifications@github.com:

Hello, That script work fine.

When i save VoiceRSS api in service_5_Mouth.config file and press start_inmoov, Myrobotlab give error: VoiceRSS error ( api key ? ):

My service_5_Mouth.config file:

[TTS]

Speechengine=VoiceRss

; you can use : ;MarySpeech : open source TTS : http://myrobotlab.org/service/MarySpeech ;LocalSpeech : Local operating system TTS : http://myrobotlab.org/service/ LocalSpeech ;Polly : [NEED API KEY AccessKey (apiKey1) and SecretKey (apiKey2)] http://myrobotlab.org/service/Polly ;VoiceRss : [NEED API KEY (apiKey1)] Free cloud service : http://myrobotlab.org/service/VoiceRss ;IndianTts : [NEED API KEY (apiKey1) and userid (apiKey2)] Hindi support : http://myrobotlab.org/service/IndianTts

VoiceName=0

; MarySpeech voices - take HSMM ones - http://myrobotlab.org/content/ marytts-multi-language-support ; LocalSpeech : use local windows voices/macOs ( 0,1,2 etc ) print mount.getVoices() ; amazon polly : http://docs.aws.amazon.com/polly/latest/dg/voicelist.html

[API_KEY] apiKey1=[a00*****] apiKey2=

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/MyRobotLab/inmoov/issues/167#issuecomment-396063244, or mute the thread https://github.com/notifications/unsubscribe-auth/AIF2x2EbBbeM8Sj15gpNdN0H7V5Nl7VOks5t7UzqgaJpZM4UhQcg .

henrikmyl commented 6 years ago

Thanks a lot, now works! I noticed that 5_Mouth.py lines 139 - 142 need also updated?

Current:

if i01.RobotIsStarted:

if 'oui ' in text or 'yes ' in text or ' oui' in text or 'ja ' in text or text=="yes" or text=="oui":Yes()
if 'non ' in text or 'no ' in text or 'nicht ' in text or 'neen ' in text or text=="no" or text=="non":No()

After the update:

if i01.RobotIsStarted:

if 'oui ' in text or 'yes ' in text or ' oui' in text or 'ja ' in text or text=="yes" or text=="kyllä":Yes()
if 'non ' in text or 'no ' in text or 'nicht ' in text or 'neen ' in text or text=="no" or text=="ei":No()
hairygael commented 6 years ago

Good!! You are correct I will update that line as well.

Gael Langevin Creator of InMoov InMoov Robot http://www.inmoov.fr @inmoov http://twitter.com/inmoov

2018-06-10 19:07 GMT+02:00 henrikmyl notifications@github.com:

Thanks a lot, now works! I noticed that 5_Mouth.py lines 139 - 142 need also updated?

Current:

if i01.RobotIsStarted:

if 'oui ' in text or 'yes ' in text or ' oui' in text or 'ja ' in text or text=="yes" or text=="oui":Yes() if 'non ' in text or 'no ' in text or 'nicht ' in text or 'neen ' in text or text=="no" or text=="non":No()

After the update:

if i01.RobotIsStarted:

if 'oui ' in text or 'yes ' in text or ' oui' in text or 'ja ' in text or text=="yes" or text=="kyllä":Yes() if 'non ' in text or 'no ' in text or 'nicht ' in text or 'neen ' in text or text=="no" or text=="ei":No()

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/MyRobotLab/inmoov/issues/167#issuecomment-396064944, or mute the thread https://github.com/notifications/unsubscribe-auth/AIF2x61hGkUXs_sR6qDVMQarRw15V45rks5t7VJYgaJpZM4UhQcg .

hairygael commented 6 years ago

Do you have the _inmoovChatbot.aiml translated, so I can test it?

Gael Langevin Creator of InMoov InMoov Robot http://www.inmoov.fr @inmoov http://twitter.com/inmoov

2018-06-10 19:31 GMT+02:00 gael langevin hairygael@gmail.com:

Good!! You are correct I will update that line as well.

Gael Langevin Creator of InMoov InMoov Robot http://www.inmoov.fr @inmoov http://twitter.com/inmoov

2018-06-10 19:07 GMT+02:00 henrikmyl notifications@github.com:

Thanks a lot, now works! I noticed that 5_Mouth.py lines 139 - 142 need also updated?

Current:

if i01.RobotIsStarted:

if 'oui ' in text or 'yes ' in text or ' oui' in text or 'ja ' in text or text=="yes" or text=="oui":Yes() if 'non ' in text or 'no ' in text or 'nicht ' in text or 'neen ' in text or text=="no" or text=="non":No()

After the update:

if i01.RobotIsStarted:

if 'oui ' in text or 'yes ' in text or ' oui' in text or 'ja ' in text or text=="yes" or text=="kyllä":Yes() if 'non ' in text or 'no ' in text or 'nicht ' in text or 'neen ' in text or text=="no" or text=="ei":No()

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/MyRobotLab/inmoov/issues/167#issuecomment-396064944, or mute the thread https://github.com/notifications/unsubscribe-auth/AIF2x61hGkUXs_sR6qDVMQarRw15V45rks5t7VJYgaJpZM4UhQcg .

henrikmyl commented 6 years ago

Almost, but that file still requires work. I added it to develop branch..

hairygael commented 6 years ago

Argh, Anthony is renaming the develop-branch and moving directories around. Can't find the file anymore.

Gael Langevin Creator of InMoov InMoov Robot http://www.inmoov.fr @inmoov http://twitter.com/inmoov

2018-06-10 23:11 GMT+02:00 henrikmyl notifications@github.com:

Almost, but that file still requires work. I added it to develop branch..

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/MyRobotLab/inmoov/issues/167#issuecomment-396082307, or mute the thread https://github.com/notifications/unsubscribe-auth/AIF2xyrJYpATBv286vw2fcNN4r1bGLe_ks5t7YtwgaJpZM4UhQcg .

moz4r commented 6 years ago

here is the new place ( useful to share aiml mods only and update language stuff , inmoov2 not yet worky ... ) https://github.com/MyRobotLab/inmoov/tree/develop/InMoov2/languagePack/fi-FI

hairygael commented 6 years ago

Thanks Anthony. Henrikmil, can you push again your translated _inmoovChatbot.aiml because during renaming I think it got lost.

Gael Langevin Creator of InMoov InMoov Robot http://www.inmoov.fr @inmoov http://twitter.com/inmoov

2018-06-10 23:49 GMT+02:00 Anthony notifications@github.com:

here is the new place ( useful to share aiml mods only and update language stuff , inmoov2 not yet worky ... ) https://github.com/MyRobotLab/inmoov/tree/develop/InMoov2/ languagePack/fi-FI

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/MyRobotLab/inmoov/issues/167#issuecomment-396084648, or mute the thread https://github.com/notifications/unsubscribe-auth/AIF2xy3wIScsrl4xUMzW_OJD3lKqolr9ks5t7ZRugaJpZM4UhQcg .

henrikmyl commented 6 years ago

Github environment is new to me, but maybe you can see now what i have done? I don't have write permission in https://github.com/MyRobotLab/inmoov/tree/develop/InMoov2/languagePack/fi-FI

So i edit that file in my own fork and make pull request. Maybe that is not the right way to act?

LunDev commented 6 years ago

No, that's one of the best ways to do it!

As soon as you're done, submit a pull-request to get your changes merged back into the project. Then somebody will review your changes and either merge them or request changes. You might also be asked to rebase your commits, but let's leave that for when the time comes round : )

henrikmyl commented 6 years ago

Hello,

LunDev thanks for the answer.

Hairygael any ideas what caused problem? FIRSTINIT start, but when i will answer the question "Hello, This is my first initialisation. I need some informations, I am listening, what is my name ?" Script will not proceed...

When i use english language script works. For some reason, it compares the given name to the contents of the learnf.aiml file.

Picture attached:

error_firstinit

hairygael commented 6 years ago

Hello, The aiml files work as whole with other files. Currently you are trying to run a single aiml which needs many other files to work. The "sets" and "config" files have a lot to do with the learning system because it is where new information are stored.

Gael Langevin Creator of InMoov InMoov Robot http://www.inmoov.fr @inmoov http://twitter.com/inmoov

2018-06-12 6:21 GMT+02:00 henrikmyl notifications@github.com:

Hello,

LunDev thanks for the answer.

Hairygael any ideas what caused problem? FIRSTINIT start, but when i will answer the question "Hello, This is my first initialisation. I need some informations, I am listening, what is my name ?" Script will not proceed...

When i use english language script works. For some reason, it compares the given name to the contents of the learnf.aiml file.

Picture attached:

[image: error_firstinit] https://user-images.githubusercontent.com/40103915/41269940-0e2d9e1c-6e11-11e8-82d0-d100d74095d0.png

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/MyRobotLab/inmoov/issues/167#issuecomment-396461233, or mute the thread https://github.com/notifications/unsubscribe-auth/AIF2x10gdw9akC7eNweWs4vKGFWkmwjpks5t70HIgaJpZM4UhQcg .

henrikmyl commented 6 years ago

Okei, now i think i understand a bit about how this works :) Thanks for help.

moz4r commented 6 years ago

Hi ! you can now get the first initialization presentations works , added also default answers , as a sample

https://github.com/MyRobotLab/inmoov/tree/develop/InMoov2/chatBot/bots/fi-FI/aiml

for live testing after editing an aiml, you can use this button, so no need to restart every time

image