• Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
MagicMirror Forum
  • Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
A New Chapter for MagicMirror: The Community Takes the Lead
Read the statement by Michael Teeuw here.

MMM-Hotword (v2) - whole-new-built

Scheduled Pinned Locked Moved System
21 Posts 5 Posters 6.9k Views 5 Watching
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • ? Offline
    A Former User @smarthome
    last edited by A Former User Jul 17, 2019, 7:09 AM Jul 17, 2019, 7:07 AM

    @smarthome
    In some modules of mine (MMM-Clap and MMM-GroveGestures…) have commandsMode or commandSet for different command sets by condition, but not this. I think it could be considerable for your needs. But anyway, I’m quite busy nowadays, so cannot support it immediately.

    S 1 Reply Last reply Jul 18, 2019, 7:56 AM Reply Quote 0
    • S Offline
      smarthome @Guest
      last edited by smarthome Jul 18, 2019, 8:17 AM Jul 18, 2019, 7:56 AM

      @Sean
      Can I send double notificationExec to 2 Module with ony 1 hotword
      1st to MMM Page-Selector
      2nd to Assistant MK2 speaks about this action

      "open_news": {
      notificationExec: {	
      notification: "PAGE_SELECT",
      payload:1
      notification: "ASSISTANT_SAY",
      payload:"Open News page"
      restart:true,			
      				},
      

      Also combine

      "open_news": {
      				notificationExec: {			
      					notification: {"PAGE_SELECT","ASSISTANT_SAY"}
      					payload:(1,"Open News page"}				
      					},
      				restart:true,			
      				},
      

      But in real test, only ASSISTANT_SAY can be executed

      How can I do that for both?

      Tks!

      ? 1 Reply Last reply Jul 18, 2019, 8:13 AM Reply Quote 0
      • ? Offline
        A Former User @smarthome
        last edited by A Former User Jul 18, 2019, 8:20 AM Jul 18, 2019, 8:13 AM

        @smarthome
        With only notificationExec of MMM-Hotword, you can send only one notification.
        There are 2 solutions.

        1. Use MMM-NotificationTrigger, it can fire several notifications at a time by one trigger.
        2. You can use moduleExec to call inner methods directly.
        moduleExec: {
          module: [],
          exec: (module) => {
            if (module.name == "MMM-Page-Selector") {
              module.notificationRecieved("PAGE_SELECT", 1)
            }
            if (module.name == "MMM-AssistantMk2") {
              module.notificationRecieved("ASSISTANT_SAY", "Open News Page")
            }
          }
        }
        

        (not tested code, but you can catch the concept. You can use sendNotification from sender module instead using notificationReceived of target module)

        PS AMK2 has some TTS-like feature(ASSISTANT_SAY) but I recommend you to use dedicated TTS modules like MMM-TTS or MMM-GoogleTTS.

        S 1 Reply Last reply Jul 18, 2019, 9:11 AM Reply Quote 0
        • S Offline
          smarthome @Guest
          last edited by smarthome Jul 18, 2019, 9:13 AM Jul 18, 2019, 9:11 AM

          @Sean
          1/Could you give me the code in MMM Notification Trigger

          2/Your code with ModuleExec didn’t work

          3/I’m considering to use MMM TTS/Google TTS, but woud like to l try the simple solution first

          ? 1 Reply Last reply Jul 18, 2019, 9:18 AM Reply Quote 0
          • ? Offline
            A Former User @smarthome
            last edited by A Former User Jul 18, 2019, 9:18 AM Jul 18, 2019, 9:18 AM

            @smarthome

            {
              module: "MMM-NotificationTrigger",
              config: {
                triggers:[
                  {
                    trigger: "PAGE_SELECT_1",
                    fires: [
                      {
                        fire: "PAGE_SELECT",
                        payload: (pl) => {return 1}
                      },
                      {
                        fire: "ASSISTANT_SAY",
                        payload: (pl) => {return "ASSISTANT_SAY"}
                      }
                    ]
                  }
                ]
              }
            },
            

            PAGE_SELECT_1 from notificationExec of Hotword.

            S 1 Reply Last reply Jul 18, 2019, 1:22 PM Reply Quote 0
            • S Offline
              smarthome @Guest
              last edited by smarthome Jul 18, 2019, 1:23 PM Jul 18, 2019, 1:22 PM

              @Sean
              Your notification code didn’t work. Nothing happen :(
              Could you check it again, pls

              payload: (payload) => { //OPTIONAL. transform received payload to what your target module wants.
              

              You mean that: MMM Notification transform only, can not modify the payload then transform?

              ? 1 Reply Last reply Jul 18, 2019, 1:50 PM Reply Quote 0
              • ? Offline
                A Former User @smarthome
                last edited by Jul 18, 2019, 1:50 PM

                @smarthome
                Well, check the log. and tell me whether suspicious logs be there.

                  fire: "PAGE_SELECT",
                  payload: (pl) => {return 1}
                

                is equivalent to .sendNotification("PAGE_SELECT", 1). whatever pl would come, it will be transfomed(or modified, whatever you want to call) and the fired notification would have 1 as payload.

                S 1 Reply Last reply Jul 18, 2019, 2:29 PM Reply Quote 0
                • S Offline
                  smarthome @Guest
                  last edited by Jul 18, 2019, 2:29 PM

                  @Sean
                  Finally, it worked, many thank for your help!

                  S 1 Reply Last reply Jul 19, 2019, 2:38 AM Reply Quote 0
                  • S Offline
                    smarthome @smarthome
                    last edited by smarthome Jul 19, 2019, 2:55 AM Jul 19, 2019, 2:38 AM

                    @Sean

                    I created some hotwords by myself on https://snowboy.kitt.ai/ under .pmdl extension, then save to model folder in MMM Hotword
                    After configure MMM-Hotword in MMM config file to use these hotwords, MMM-Hotword auto detect hotwords and do the action, why no input voice signal to mic, only noise…
                    I tried to incrase hotword from 1 word to 2 words, one to multiple syllables, but cant not stop this issuse
                    I’ve check the configuration, everthing is normal.
                    What’s happen? How to fix that?

                    Tks!

                    ? 1 Reply Last reply Jul 19, 2019, 7:14 AM Reply Quote 0
                    • ? Offline
                      A Former User @smarthome
                      last edited by Jul 19, 2019, 7:14 AM

                      @smarthome
                      Did you use trainer.sh of the module to make your pmdl? or made it on snowboy website? pmdl is somewhat sensitive so, if you made it on another platform (e.g. your desktop pc) or other device(e.g different mic with your RPI’s), it might not work.
                      Anyway, How do you figure out `only noise?

                      G 1 Reply Last reply Jan 9, 2020, 4:00 AM Reply Quote 0
                      • 1
                      • 2
                      • 3
                      • 2 / 3
                      2 / 3
                      • First post
                        11/21
                        Last post
                      Enjoying MagicMirror? Please consider a donation!
                      MagicMirror created by Michael Teeuw.
                      Forum managed by Sam, technical setup by Karsten.
                      This forum is using NodeBB as its core | Contributors
                      Contact | Privacy Policy