Read the statement by Michael Teeuw here.
MM and Kalliope: make Kalliope speaking
-
@npx78
I have no experience with Kalliope so I’m not sure…
I think this is showing what you needs - https://kalliope-project.github.io/kalliope/rest_api/#run-a-synapse-from-an-order
So, by just calling Kalliope API with curl to run yourreply synapse
from your module after it’s job, couldn’t be done? -
@sean Very good idea. Thank you.
I look for it this evening.
Currently : call the API REST with a synapse “repeat afer me …” : OK
I have some problem to call the curl into javascript module.I use the XMLHttpRequest, but I have a beautiful: “400 (BAD REQUEST)” :)
After a night, my brain would be better :).
I will give you some news tomorrow.
-
Hello everybody
Good night for my brain :) .
I solved my problem.I will put the solution this evening (and will turn this post to solve)
Thanh you a lot to everybody in particular Sean.
Regards
Nicolas
-
:::
Spoiler Text
:::
Hello
So my solution.
:::
Kalliope Side :
:::
//-- settings.yml file # --------------------------- # Rest API # --------------------------- rest_api: active: True port: 5000 password_protected: False login: admin password: secret allowed_cors_origin: "*"
active:True allows using the Rest API
password_protected: False allows anonymous connections
allowed_cors_origin: allows connections from other sites. This option is mandatory because the MM site is localhost:8080 and kalliope 127.0.0.1:5000Concerning the brain.yml file
- name: "repeat" signals: - order: "repeat after me {{sentence}}" neurons: - say: message: "{{sentence}}"
This synapse allows Kalliope repeat a sentence.
:::
Magic Mirror side :
:::
The following lines could be inserted in a module file
//-- Create the Request object. const Http = new XMLHttpRequest(); //-- Url to call fo our synapse. const url = 'http://localhost:5000/synapses/start/id/repeat'; //-- Build our data to send as parameters of our request. var sent = 'This is the text I want Kalliope repeat'; //-- You can modify it var data = {"parameters" : {'sentence':sent}}; var dataJson = JSON.stringify(data); //-- Launch the request. Http.open("POST",url); Http.setRequestHeader("Content-type","application/json"); Http.send(dataJson);
I hope to be clear :)
I mark the post as Solved.Thank you a lot for your time and ideas.
Regards
Nicolas
-
@npx78 very cool… thank you for sharing and helping others…