Read the statement by Michael Teeuw here.
Almost done need to active my mirror by Phrase
-
@otto
module: []
will point all modules.
if you want, you can add specific module names in it. likemodule:["clock", "calendar"]
Your attempt is right. Wish you good luck.
If you have trouble, contact me via these;- mail : eouia0819@gmail.com
- Telegram : @eouia
Or github issue board.
-
The way I did it is by using MMM-Assistantmk2, hotword and google voice reco. There is an already build ‘recipe’ in Assistantmk2 that do what you want.
The module is hide_and_show_all_modules.js
var recipe = { transcriptionHook: { "HIDE_ALL_MODULES": { pattern: "Go to sleep", command: "HIDEMODULES" }, "SHOW_ALL_MODULES": { pattern: "Wake up", command: "SHOWMODULES" }, }, command: { "HIDEMODULES": { moduleExec: { module:()=>{ return [] }, exec: (module, params, key) => { module.hide(1000, null, {lockString:"AMK2"}) } } }, "SHOWMODULES": { moduleExec: { module:()=>{ return [] }, exec: (module, params, key) => { module.show(1000, null, {lockString:"AMK2"}) } } }, }, } exports.recipe = recipe
In your config.js file , within the MMM-AssistantMk2 section, there is a line where you have to put all your ‘recipes’
recipes: ["hide_and_show_all_modules.js","playlist.js","volume.js"],
When I say ‘Jarvis Go to sleep’ my screen goes black and then when I say ‘Jarvis Wake up’ all my modules appear.
For the record I’m french :smiling_face: so the phrases there are not the one I’m using, it may need some test so you don’t use google reserved words.
-
yes i am doing almost the same, i found the hide_and show all… i did make new hotword, and have edit the recipes… so all i have left now, was to start it and see it work but, cant some error in the config…
-
i cant post my code, the forum is saying its spam:/
position: "top_right", config: { recipes: ["hiden_show_all.js",] chimeOnFinish: null, mic: { recordProgram: "arecord", device: "plughw:1" }, models: [ { hotwords : "smart_mirror", file : "smart_mirror.umdl", sensitivity : "0.5", }, ], commands: { "smart_mirror": { notificationExec: { notification: "ASSISTANT_ACTIVATE", payload: (detected, afterRecord) => { return {profile:"default"} } }, restart:false, afterRecordLimit:0 ``` i am geting error on **chimeOnFinish: null,**
-
@otto
First, you should confirm how it works; With MMM-Hotword itself? or With MMM-AssistantMk2? both are slightly different. I think you have some confusing at this moment. -
@Sean dont relly understand you post. and dont rely know what i sholde do next, this is the first boot up afteri have create hotword, recipes, dont know if its wrong in my config or in my files,
this is my config:
https://pastebin.com/bw4QpXnLit feels like my config is a bit messy?
-
@smassy can u post your config, whant to see whear u add the recipes line,
-
so i got some time over today, to test it all,
if i say: hide all module it dosent work
but it if i say :Smart mirror hide all modules it works
but mirror mirror on the wall i just get some saying from it, not show the modules.
i need to say :smart mirror show all module it workscan i some way change so i dont need to say smart mirror, just hide all module?
i now need to trying found out what is wrong…dont know wher to start, i guees the .pdl i a good one
-
@otto
You can use MMM-Hotword standalone without MMM-AsistantMk2 just to call simple Hotword as a command.
Make your own .pmdl(“hide modules”). Then make a command of MMM-Hotword to be executed when “hide modules” be called. -
In config.js
{ module: "MMM-AssistantMk2", position: "top_right", config: { // --- ESSENTIALS / modifying for your environment might be needed. deviceLocation: { coordinates: { // set the latitude and longitude of the device to get localized information like weather or time. (ref. mygeoposition.com) latitude: 45.6307, // -90.0 - +90.0 longitude: -72.9563, // -180.0 - +180.0 }, }, recipes: ["hide_and_show_all_modules.js","playlist.js","volume.js"], defaultProfile: "default", // If you have several profiles and want to set one of them as default profile, describe here. profiles: { "default" : { // profile name. profileFile: "default.json", // profile file name. lang: "fr-CA" //currently available (estimation, not all tested): // de-DE, en-AU, en-CA, en-GB, en-US, en-IN // fr-CA, fr-FR, it-IT, ja-JP, es-ES, es-MX, ko-KR, pt-BR // https://developers.google.com/assistant/sdk/reference/rpc/languages }, /* Add your other profiles here, if exists. "other_profile" : { profileFile: "other.json", lang: "de-DE" } */ }, record: { // Full values are in `FOR EXPERTS` section. recordProgram: "arecord", // Defaults to "arecord" - also supports "rec" and "sox" device: "plughw:1" // recording device (e.g.: "plughw:1") }, notifications: { ASSISTANT_ACTIVATED: "HOTWORD_PAUSE", ASSISTANT_DEACTIVATED: "HOTWORD_RESUME", }, play: { // Full values are in `FOR EXPERTS` section. playProgram: "mpg321", // recommended. }, // --- OPTIONAL / not important but customizable for your usage responseVoice: true, // If available, Assistant will response with her voice. responseScreen: true, // If available, Assistant will response with some rendered HTML responseAlert: true, // If available, Assistant will response with Alert module of MM // Sometimes, any response might not be returned. responseAlert is useful for displaying error. screenZoom: "80%", // Adjust responseScreen to your mirror size. screenDuration: 0, // milliseconds. How long responseScreen will be shown after speech. //If you set 0, Screen Output will be closed after Response speech finishes ASAP. youtubeAutoplay: true, //If set as true, found Youtube video will be played automatically. pauseOnYoutube:true, //If set as true, You cannot activate Assistant during youtube playing. //Recommended for the performance (Because permanent hotword detecting might make performance lower) youtubePlayerVars: { // You can set youtube playerVars for your purpose, but should be careful. "controls": 0, "loop": 1, "rel": 0, }, youtubePlayQuality: "default", //small, medium, large, hd720, hd1080, highres or default useWelcomeMessage: "", //Try "brief today" as this value. You can use this value to check module working when MM is starting. onIdle: { //timer: 1000*60*30, // if you don't want to use this feature, just set timer as `0` or command as "" //command: "HIDEMODULES", timer: 0, command: null, }, onActivate: { timer: 0, //command: "SHOWMODULES" command: null, }, }, },