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.

    Hi, there is a new Alexa Module

    Scheduled Pinned Locked Moved General Discussion
    98 Posts 13 Posters 69.4k Views 15 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.
    • rubenixR Offline
      rubenix
      last edited by

      Im reading a lot of documentation about all three modules in use (MMM-Pages, MMM-CalendarExt2 & Alexa Control).
      That’s what i found in another thread about MMM-Pages & MMM-CalendarExt2; written by @Sean :

      I just looked inside MMM-Pages(edward-shen/MMM-pages) shortly, It has no feature to emit notifications about current page sequence to other modules. It has PAGE_NUMBER_IS but it is only as the response of QUERY_PAGE_NUMBER. So there is no way to recognize which page at that moment. So CalendarExt2 cannot know what scene to show.
      

      And this from MMM-pages doc:

      This module sends one notification, MAX_PAGES_CHANGED to assist display modules with how many pages they should display. However, this module does not enforce what page other modules should indicate. This is intentional, because any other module that needs a page change notification should be receiving from the notification system.
      
      Finally, if you want to know what page you're currently on, send a QUERY_PAGE_NUMBER notification. The module will respond with a PAGE_NUMBER_IS notification, with the payload of the current page number.
      

      So will leave it for now unless @edward-shen can point me to the right direction here (or somebody else of course)

      So thanks @JoChef2 nothing to do with AlexaControl.

      il leave config and putting Calext2 in the first page in order to make that little trick I commented on earliers post…(refresh MM when changing page to Calendar’s one ) :face_with_cold_sweat:

      J 1 Reply Last reply Reply Quote 0
      • J Offline
        JoChef2 Module Developer @rubenix
        last edited by

        @rubenix Hi, I think I have good news for you. I tested the MMM-CalenderExt2 and I had problems with my module, too. I found on the link I send you the solution. The only thing you have to do is add a notification. I added this to your config and I hope it works.

        {
          module: 'MMM-CalendarExt2',
          position: "middle_center",
          config: {
            rotateInterval: 0,
            updateInterval: 1000 * 60 * 60,
            calendars : [
              {
                name: "Family",
                url: "mycalendar.ics",        //obviously my correct ics address here
              },
            ],
            views: [
              {
                name: "VIEW1",
                mode: "month",
        		position: "middle_center",
        		locale: "es_ES",
                slotCount: 1,
                calendars: ["Family"],
              },
            ],
            scenes: [
              {
                name: "PAGE1",
                views:["VIEW1"],
                className: "fakeScene"
              },
        	  {
                name: "PAGE2",
                views:["VIEW1"],
              },
              {
                name: "PAGE3",
                views:["VIEW1"],
                className: "fakeScene"
              },
        	  {
                name: "PAGE4",
                views:["VIEW1"],
                className: "fakeScene"
              },
        	  {
                name: "PAGE5",
                views:["VIEW1"],
                className: "fakeScene"
              },
            ],
            notifications: {
              "PAGE_INCREMENT" : {
                exec: "sceneNext",
              },
              "PAGE_DECREMENT" : {
                exec: "scenePrevious",
              },
              "PAGE_CHANGED" : {
                exec: "changeSceneById",
                payload: (payload) => {return payload}
              } 
            },
          },
        },
        
        1 Reply Last reply Reply Quote 0
        • rubenixR Offline
          rubenix
          last edited by

          Hey man!! many thanks will try it asap and tell you how it goes.
          I found another solution to show my google calendar using an iframe (had to make it public tho and do not want this)

          So pretty good news if I make it to work.

          Many thanks!!!

          1 Reply Last reply Reply Quote 0
          • rubenixR Offline
            rubenix
            last edited by

            Yehaaaa. Got it working with no issues at all.
            I think I tried before as per your link instructions but I think I put it without the notifications of page increment and page decrement. I made a fatal mix indeed…and thats why mirror was doing weird things…

            Thanks so much, I’ve been in touch with MMM-Page developer but yours it has been the best indication indeed.
            I’ve been playing with MMM-Notification-Trigger as I needed for interact with a groove sensor to fire QUERY_PAGE_NUMBER and got it working too. Very productive weekened indeed :face_savouring_delicious_food:

            So now pages rotates by itself ; I can change them by AlexaControl and with a gesture too!!! Lovely
            Thats what I wanted; reverting back calendar as private!!!

            Thanks so much @JoChef2 I owe you a beer:clinking_beer_mugs:

            1 Reply Last reply Reply Quote 0
            • rubenixR Offline
              rubenix
              last edited by

              Hello again! I’ve another question…
              I want to power off USB power at the same time I power off monitor from alexa module.

              I’ve seen on line 199 of node_helper.js the following:

               exec("vcgencmd display_power 0", opts, (error, stdout, stderr) =>
              

              Tried to add the command: echo ‘1-1’ |sudo tee /sys/bus/usb/drivers/usb/unbind (cut power from usb ports)
              like that:

               exec("vcgencmd display_power 0 && echo '1-1' |sudo tee /sys/bus/usb/drivers/usb/unbind", opts, (error, stdout, stderr) =>
              

              Command does not work (I think theres a syntax error) monitor powers off but usb power still on.
              Command works from commandline.
              Also tried to put it on a separate exec function without succeed.

              Can you give me a hand with this @JoChef2

              Thanks!

              1 Reply Last reply Reply Quote 0
              • rubenixR Offline
                rubenix
                last edited by

                Also created a couple of scripts (monitor_on.sh & monitor_off.sh) --> with 2 commands I mentioned before on them.
                Both works from bash but cannot execute them from node_helper.js
                any thoughts? sorry about asking but am not a coder & cannot find an answer anywere…

                Thanks!

                S J 2 Replies Last reply Reply Quote 0
                • S Do not disturb
                  sdetweil @rubenix
                  last edited by

                  @rubenix what do the scripts look like? if u replaced the vcgencmd strin with the scripts, they should work…

                  where are the scripts? they MUST be on the path, or have the full path specified in the command too

                  Sam

                  How to add modules

                  learning how to use browser developers window for css changes

                  1 Reply Last reply Reply Quote 0
                  • J Offline
                    JoChef2 Module Developer @rubenix
                    last edited by

                    @rubenix Hi, I don’t really know why it doesn’t work. The syntax seems to be right. That’s the hole edit part around line 199. Maybe it helps. I tested this and it works great.

                     device.handler = function(action) {     
                        if(action === 1){
                            exec("vcgencmd display_power 1 && echo '1-1' |sudo tee /sys/bus/usb/drivers/usb/bind", opts, (error, stdout, stderr) => {
                                _this.checkForExecError(error, stdout, stderr); 
                            });
                        }if(action === 0){
                            exec("vcgencmd display_power 0 && echo '1-1' |sudo tee /sys/bus/usb/drivers/usb/unbind", opts, (error, stdout, stderr) => {
                                _this.checkForExecError(error, stdout, stderr); 
                            });
                        }
                    }
                    
                    S 1 Reply Last reply Reply Quote 0
                    • S Do not disturb
                      sdetweil @JoChef2
                      last edited by

                      @JoChef2 its because the exec() is launching A program… but the program is NOT a shell (sh., bash etc), and only THEY understand the | and && syntax… vcgencmd does not… it executes what it knows ‘display_power 1’ ,and ignores the rest

                      now, you CAN execute a script directly as long as it contains the processor name at the front
                      #!/bin/sh or #!/bin/bash

                      exec(“/home/pi/MagicMirror/modules/MMM-AlexaControl/scriptname”)

                      or the script has to be in the path environment varible.
                      (unlike windows, the ‘current directory’ is NOT included in the path (for security reasons))

                      if the script does NOT contain the processor path&name
                      then you have to launch the shell

                      exec(“/bin/bash -c "command string with pipe and logic chars"”)

                      Sam

                      How to add modules

                      learning how to use browser developers window for css changes

                      1 Reply Last reply Reply Quote 0
                      • rubenixR Offline
                        rubenix
                        last edited by

                        got it working thanks!

                        if(action === 1){
                                    exec('/home/pi/monitor_on.sh');
                                    }if(action === 0){
                                    exec('/home/pi/monitor_off.sh');                         
                        

                        forgot to put the path :confounded_face:

                        Thanks buds!

                        1 Reply Last reply Reply Quote 0
                        • M Offline
                          minomit
                          last edited by

                          Hi, mmm-alexacontrol is ok, i’m change pages,etc.
                          Can I ask alexa for something and alexa replies in the compliments module?
                          thanks

                          J 1 Reply Last reply Reply Quote 0
                          • J Offline
                            JoChef2 Module Developer @minomit
                            last edited by

                            @minomit Hi, no that’s not directly possible with my module because it emulates only smart home devices and haven’t anything to do with the speech of Alexa. It’s possible that you add to the compliments module notification support and then you can create devices with my module that sends notifications to the compliments module. You can complete this with routines in the Alexa app. So then you have a few sentences. But I think that’s not the thing you asked for. If you want to see all the answers of Alexa you should use MMM-awesome-alexa. I’m not sure if my module works with it but that’s the only way I see to realize that. Maybe someone else have a better idea.

                            S 1 Reply Last reply Reply Quote 0
                            • S Offline
                              sgarg15 @JoChef2
                              last edited by

                              @JoChef2 Will this module work with a google home mini?

                              J 1 Reply Last reply Reply Quote 0
                              • J Offline
                                JoChef2 Module Developer @sgarg15
                                last edited by

                                @sgarg15 Hi, I don’t know if it works with a google home mini because I don’t have one. But I think the wemos devices I emulate should work with a google home. So test it. You could use the default config and test the preconfigured devices. Let me know if it works.

                                S 1 Reply Last reply Reply Quote 0
                                • S Offline
                                  sgarg15 @JoChef2
                                  last edited by

                                  @JoChef2 I dont think it works, i downloaded it and did npm install, and my config is like this

                                      {
                                        module: 'MMM-AlexaControl',
                                        position: 'middle_center',
                                        config:{
                                          image: false,
                                          pm2ProcessName: "MagicMirror",
                                          vcgencmd: "vcgencmd",
                                        }
                                      },
                                  

                                  and my google home mini is unable to detect the magic mirror

                                  S 1 Reply Last reply Reply Quote 0
                                  • S Do not disturb
                                    sdetweil @sgarg15
                                    last edited by

                                    @sgarg15 how do u discover devices w a mini?

                                    Sam

                                    How to add modules

                                    learning how to use browser developers window for css changes

                                    1 Reply Last reply Reply Quote 0
                                    • S Offline
                                      sgarg15
                                      last edited by

                                      @sdetweil you usually go into the app and then click set up new device and it searches for a device and for me when it searches it cant find any device

                                      S 1 Reply Last reply Reply Quote 0
                                      • S Do not disturb
                                        sdetweil @sgarg15
                                        last edited by sdetweil

                                        @sgarg15 is it looking for a particular device type? These look like wemo, now Belkin plugs

                                        Sam

                                        How to add modules

                                        learning how to use browser developers window for css changes

                                        1 Reply Last reply Reply Quote 0
                                        • S Offline
                                          Stevent
                                          last edited by

                                          Hello, sorry for my bad english, all work perfectly, but i can not change the pages with alexa, the app only find: -restart -refresh -stop -display off
                                          that work fine, but i can not find page change, please help me, here is my configuration:

                                                      module: 'MMM-AlexaControl',
                                                      position: 'middle_center',
                                                      config: {
                                                      image: false,
                                                      pm2ProcessName: "mm",
                                                      monitorToggle: true,
                                                      vcgencmd: "vcgencmd",
                                                      deviceName: "Spiegel",
                                          	    pages: '2'
                                                      }
                                                  }, 
                                          	{
                                                  module: 'MMM-pages',
                                                  config: {
                                                          modules:
                                                              [[ "MMM-OpenmapWeather","weatherforecast","newsfeed","calendar", "compliments"],
                                                               [ "MMM-OpenmapWeather","calendar", "compliments" ]],
                                                          fixed: ["clock", "currentweather", "MMM-AlexaControl", "MMM-page-indicator"],
                                                          }
                                                  },
                                                  {
                                                  module: 'MMM-page-indicator',
                                                  position: 'bottom_bar',
                                                  config: {
                                                      pages: 2,
                                                          }
                                                  },
                                          
                                          J 1 Reply Last reply Reply Quote 0
                                          • J Offline
                                            JoChef2 Module Developer @Stevent
                                            last edited by

                                            @Stevent Hi, you made one mistake in your config. The apostrophes for the option pages are wrong. You have to write only a number there.
                                            pages: 2

                                            1 Reply Last reply Reply Quote 0

                                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                            With your input, this post could be even better 💗

                                            Register Login
                                            • 1
                                            • 2
                                            • 3
                                            • 4
                                            • 5
                                            • 5 / 5
                                            • First post
                                              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