• 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-voice

Scheduled Pinned Locked Moved Utilities
voice control
329 Posts 55 Posters 880.5k Views 50 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.
  • S Offline
    strawberry 3.141 Project Sponsor Module Developer @dogfeet
    last edited by Apr 10, 2018, 9:30 PM

    @dogfeet try to set some logs, to see if you get the desired data or not,

    notificationReceived: function (notification, payload, sender) {
        console.log(notification, payload)
    

    then see if you get notification === "VOICE_HOW DO" and the payload contains look

    Please create a github issue if you need help, so I can keep track

    D 1 Reply Last reply Apr 11, 2018, 5:33 PM Reply Quote 0
    • D Offline
      dogfeet @strawberry 3.141
      last edited by dogfeet Apr 11, 2018, 6:40 PM Apr 11, 2018, 5:33 PM

      @strawberry-3.141 thanks. i put the log command in like so…

      notificationReceived: function (notification, payload, sender) {
          // 1. register module
          console.log(notification, payload);
          if(notification === "ALL_MODULES_STARTED"){
              this.sendNotification("REGISTER_VOICE_MODULE", {
                  mode: "HOW DO",
                  sentences: [
                      "I LOOK"
                  ]
              });
          }
      
          // 2. react on command
          if(notification === "VOICE_HOW DO" && sender.name === "MMM-voice"){
              if(/(LOOK)/g.test(payload)){
                  this.hide(1000);
                  this.updateDom(300);
                  // unhide the module,
                  // set a 10 sec timeout
                  // hide your module
              }
          }
      }
      

      so i ran this with npm start dev and found this at the bottom of the console tab…
      0_1523471955532_Capture.PNG
      it looks like it’s recognizing the command belongs to the compliments module, but the text isn’t exactly as you described. is this correct?

      S 1 Reply Last reply Apr 11, 2018, 10:42 PM Reply Quote 0
      • 4 Offline
        4lice @Mykle1
        last edited by Apr 11, 2018, 8:05 PM

        @Mykle1 youre awesome :*

        1 Reply Last reply Reply Quote 0
        • S Offline
          strawberry 3.141 Project Sponsor Module Developer @dogfeet
          last edited by Apr 11, 2018, 10:42 PM

          @dogfeet i don’t know why it is FALL instead of VOICE in your case?

          this is the code https://github.com/fewieden/MMM-voice/blob/master/MMM-voice.js#L203-L217

          the important parts are if (notification === 'VOICE') and this.sendNotification(${notification}_${payload.mode}, payload.sentence);

          how can notification be voice and a few lines later it is fall? did you modify any files?

          Please create a github issue if you need help, so I can keep track

          D 1 Reply Last reply Apr 12, 2018, 12:17 AM Reply Quote 0
          • D Offline
            dogfeet @strawberry 3.141
            last edited by dogfeet Apr 12, 2018, 12:18 AM Apr 12, 2018, 12:17 AM

            @strawberry-3.141 yes i did modify mmm-voice.js to suit my needs. to explain, i have a total of 5 commands. “fall” is the first mode and is native to the voice module, under which i have 2 commands, “asleep” and “wake up”. so i say “hey mirror” (my listen command), then “fall asleep” and it cuts out the monitor, then since it’s already in “fall” mode i just say “wake up” and it turns the display back on. the final commands are for the compliments module and they are “how do” (the mode) and “i look” which is where i’m having problems. fall asleep and wake up are working perfectly.
            so yes, i modified the lines that you highlighted such that the 2 places where it used to say ‘VOICE’ it now says ‘FALL’.
            should i not have done that? it seems to work. i had to make other minor changes of course to keep it working.

            S 1 Reply Last reply Apr 12, 2018, 5:52 AM Reply Quote 0
            • S Offline
              strawberry 3.141 Project Sponsor Module Developer @dogfeet
              last edited by Apr 12, 2018, 5:52 AM

              @dogfeet if you changed that, then you also have to apply your renamin here

              if(notification === "FALL_HOW DO" && sender.name === "MMM-voice"){
                      if(/(LOOK)/g.test(payload)){
                          this.hide(1000);
                          this.updateDom(300);
                          // unhide the module,
                          // set a 10 sec timeout
                          // hide your module
                      }
                  }
              

              Please create a github issue if you need help, so I can keep track

              D 1 Reply Last reply Apr 12, 2018, 7:31 PM Reply Quote 0
              • D Offline
                dogfeet @strawberry 3.141
                last edited by Apr 12, 2018, 7:31 PM

                @strawberry-3.141 i feel so stupid :facepalm:

                1 Reply Last reply Reply Quote 0
                • D Offline
                  dmwilsonkc
                  last edited by dmwilsonkc Apr 17, 2018, 12:26 AM Apr 17, 2018, 12:18 AM

                  So I must say the MMM-voice module (also with Mykle’s Hello-Lucy enhancements) works perfectly on my mirror… when I don’t have my Mycroft AI running at start as well. It’s an Error: resource busy/unavailable referring to the Microphone. When I stop Mycroft/restart mirror it works perfectly, but then Mycroft gets the same error. Any suggestions?

                  I am thinking about building a MagicMirror skill for Mycroft, but Mycroft is Python not Java, and not a module. Would it be possible to send the same commands as Hello-Lucy (i.e. ‘HIDE_CLOCK’ for example) only use Websocket-client for Mycroft and send commands to the MagicMirror via socket.io?

                  If so, what would handle the socketmessage? Would it be communicated to the right module/s. Would I also need to create a fork of the MMM-voice module with code to handle the socketmessages from Mycroft?

                  Any guidance would be much appreciated!

                  Sorry, I should have also said my mirror is running on a RPi 3b running Debian Jessie on a 16gb sd.

                  S 1 Reply Last reply Apr 17, 2018, 5:42 AM Reply Quote 1
                  • D Offline
                    dmwilsonkc
                    last edited by Apr 17, 2018, 12:21 AM

                    This post is deleted!
                    1 Reply Last reply Reply Quote 0
                    • S Offline
                      strawberry 3.141 Project Sponsor Module Developer @dmwilsonkc
                      last edited by Apr 17, 2018, 5:42 AM

                      @dmwilsonkc Error: resource busy/unavailable referring to the Microphone your microphone cannot be used by multiple processes at a time.

                      In your case I rather suggest to write an own module for mycroft instead of a fork, as you’re using a complete different stt engine.

                      If you’re interested in doing it via websockets you could have a look into mmm-mobile where i did something similar

                      Please create a github issue if you need help, so I can keep track

                      1 Reply Last reply Reply Quote 0
                      • 1
                      • 2
                      • 27
                      • 28
                      • 29
                      • 30
                      • 31
                      • 32
                      • 33
                      • 29 / 33
                      29 / 33
                      • First post
                        289/329
                        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