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-GooglePhotos

    Scheduled Pinned Locked Moved Entertainment
    294 Posts 56 Posters 296.4k Views 59 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 @teitlebot
      last edited by

      @teitlebot yes but… image itself will not be rotated by frames direction. It should be rotated again by direction. Think about it. It is totally different work.

      1 Reply Last reply Reply Quote 0
      • ? Offline
        A Former User @teitlebot
        last edited by A Former User

        @teitlebot
        There could be some issues.

        Just rotation will not be what you expect

        0_1552636901030_t.png

        Unfortunately, as far as I know GooglePhotos remove all your EXIF and it’s metadata has no direction info. So cannot catch the photo direction.

        With local stored original photos (or in Dropbox), it might be able to be done.
        But it would be totally different program.

        T 1 Reply Last reply Reply Quote 0
        • T Offline
          teitlebot @Guest
          last edited by

          @Sean cant you also catch the direction by height/width?

          ? 1 Reply Last reply Reply Quote 0
          • ? Offline
            A Former User @teitlebot
            last edited by A Former User

            @teitlebot
            impossible only with width/height. Imagine some pictures in your mind and rotate it. :D
            Or…

            0_1552665928446_DSCN0873.jpg
            Which direction should this photo be rotated? clockwise? counterclockwise? How can we know the direction with only width/height?

            T 1 Reply Last reply Reply Quote 0
            • T Offline
              teitlebot @Guest
              last edited by

              @Sean Interesting but Google Photos already rotates the picture correctly for us before it sends it to the mirror. So assuming it shows correct in the google photos album it will be correct in the mirror. Now take any picture that is width/height >1 and rotate the picture one way and rotate the screen in the opposite direction and it should work.

              ? 1 Reply Last reply Reply Quote 0
              • ? Offline
                A Former User @teitlebot
                last edited by

                @teitlebot
                If so, you can do that without notification. Just add eventlistener to target photo container element and check whether src be changed. Then you can activate xmlHTTPrequest to send request to your IFTTT server.

                T 1 Reply Last reply Reply Quote 0
                • T Offline
                  teitlebot @Guest
                  last edited by

                  @Sean Thank You. Will learn up on this and see if I can do it myself

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

                    Brilliant module - thanks for the development.

                    I am trying to get two instances of this module running on one magic mirror, so I can show one photo at the top and one at the bottom.

                    I have copied the module into a different folder, renaming it (and in the CSS files as necessary). I also set up a separate google API project and separate authorisation to see if that was an issue.

                    Both modules run, but the photos get loaded one on top of the other despite having different positions:

                    modules: [
                    
                    {
                      module: "MMM-GooglePhotos",
                      position: "top_center",
                      config: {
                        albumId: "blanked for posting", // your album id(s) from result of `auth_and_test.js`
                        refreshInterval: 1000*20,  
                        scanInterval: 1000*60*10, // too many scans might cause API quota limit also.
                        //note(2018-07-29). It is some weird. API documents said temporal image url would live for 1 hour, but it might be broken shorter. So, per 10 min scanning could prevent dead url.
                    
                        sort: "random", //'time', 'reverse', 'random'
                        showWidth: "800px", // how large the photo will be shown as. (e.g;'100%' for fullscreen)
                        showHeight: "400px",
                        originalWidthPx: 1024, // original size of loaded image. (related with image quality)
                        originalHeightPx: 728, // Bigger size gives you better quality, but can give you network burden.
                        mode: "hybrid", // "cover" or "contain" (https://www.w3schools.com/cssref/css3_pr_background-size.asp)
                        //ADDED. "hybrid" : if you set as "hybrid" it will change "cover" and "contain" automatically by aspect ratio.
                      }
                    },
                    
                    
                    
                    {
                      module: "MMM-GooglePhotos2",
                      position: "bottom_left",
                      config: {
                        albumId: "blanked for posting", // your album id(s) from result of `auth_and_test.js`
                        refreshInterval: 1000*15,  
                        scanInterval: 1000*60*10, // too many scans might cause API quota limit also.
                        //note(2018-07-29). It is some weird. API documents said temporal image url would live for 1 hour, but it might be broken shorter. So, per 10 min scanning could prevent dead url.
                    
                        sort: "random", //'time', 'reverse', 'random'
                        showWidth: "1024px", // how large the photo will be shown as. (e.g;'100%' for fullscreen)
                        showHeight: "728px",
                        originalWidthPx: 1024, // original size of loaded image. (related with image quality)
                        originalHeightPx: 728, // Bigger size gives you better quality, but can give you network burden.
                        mode: "hybrid", // "cover" or "contain" (https://www.w3schools.com/cssref/css3_pr_background-size.asp)
                        //ADDED. "hybrid" : if you set as "hybrid" it will change "cover" and "contain" automatically by aspect ratio.
                      }
                    },
                    
                    
                    ]
                    
                    };
                    
                    

                    Any ideas where I have gone wrong? Thanks!

                    ? 1 Reply Last reply Reply Quote 0
                    • ? Offline
                      A Former User @mirrorman2
                      last edited by A Former User

                      @mirrorman2
                      Each instance would be rendering different doms but they have same “Id”. That would make this behavior. Sorry, I haven’t considered duplicated instances on development.
                      If you want duplicated instances, modify source where “id” is used.
                      By example;
                      wrapper.id = “GPHOTO”

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

                        This post is deleted!
                        ? 1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 9
                        • 10
                        • 11
                        • 12
                        • 13
                        • 29
                        • 30
                        • 11 / 30
                        • 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