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.

    CORS, MotionEye & MMM-Remote-Control

    Scheduled Pinned Locked Moved Bug Hunt
    13 Posts 4 Posters 4.7k Views 4 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
      SdeGeata
      last edited by

      So this is not so much of a bug as a conflict within the system. It seems that since verson 2.17, CORS is preventing MMM-MotionEye from loading an image. I just get a broken image icon. If I change address: "0.0.0.0", to address: "localhost",, I get an image, but can no-longer run it from the web interface or command line. Further, MMM-Remote-Control requires address: "0.0.0.0", be set in config.js.

      I have messed with all kinds of ip whitelist stuff to no avail, as well as played with all kinds of options in motion.conf and motioneye.conf. Nothing seems to work.

      Does anyone here have a solution or work-around? I can’t get any answer back on the MotionEye Git Hub.

      Any help would be greatly appreciated! I need this module to work!

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

        @SdeGeata try the real ip address of the pi in the address:“???”

        192.168.??.??

        this I consider to be a NETWORKING error…

        if I am listening on all interfaces, (0,0,0,0) and I send a request out… it should USE one of them
        not send 0.0.0.0 to the remote site…

        Sam

        How to add modules

        learning how to use browser developers window for css changes

        S 1 Reply Last reply Reply Quote 0
        • S Offline
          SdeGeata @sdetweil
          last edited by

          @sdetweil Hello Sam;

          In playing with the address, I have discovered that MotionEye does seem to display an image using address: "192.168.1.200", (the direct URL of the Magic Mirror, and running MotionEye). However, Motion Webhooks show the image then won’t hide anymore. They just stay onscreen.

          Currently, I have my config set as so:

          address: "0.0.0.0",
          

          …

          ipWhitelist: ["::1", "::ffff:192.168.1.200", "::ffff:192.168.1.1/120", "127.0.0.1", "::ffff:127.0.0.1", "::ffff:192.168.1.42", "::ffff:192.168.1.23", "::ffff:192.168.1.69", "::ffff:192.168.1.100"],
          

          trying to cover all bases here. The Mirror still shows a broken image icon, but if I log into the web portal of the mirror, that show’s the camera feed no problem. How can I fix this??>

          S S 2 Replies Last reply Reply Quote 0
          • S Offline
            SdeGeata @SdeGeata
            last edited by

            I did notice that MotionEye and the Mirror are both listening on “0.0.0.0”. Is that normal? Could that be my conflict? Can i set MotionEye to listen on another ip, if so, which one???

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

              @SdeGeata turn off the ipWhitelist til you get it all working. then play with the filter

              Sam

              How to add modules

              learning how to use browser developers window for css changes

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

                @SdeGeata the cors check is at the server.

                they check the IP address/name of the client making the request.

                localhost is inside the same system
                192.168 or 10. or 172. are non routablebip addresses, so sekfvcontainedvsyatens like localhost

                0.0.0.0 is undetermined… and is mostly rejected .

                as I said, it’s not a valid IP address, so it should never be sent to the other side as part of the request

                Sam

                How to add modules

                learning how to use browser developers window for css changes

                S 1 Reply Last reply Reply Quote 0
                • S Offline
                  SdeGeata @sdetweil
                  last edited by

                  @sdetweil

                  I turned off the ipWhitelist, I was unable to connect MMM-Remote-Control or send any command line to the MM.

                  1 Reply Last reply Reply Quote 0
                  • S Offline
                    SdeGeata @sdetweil
                    last edited by

                    @sdetweil said in CORS, MotionEye & MMM-Remote-Control:

                    they check the IP address/name of the client making the request.
                    localhost is inside the same system
                    192.168 or 10. or 172. are non routablebip addresses, so sekfvcontainedvsyatens like localhost
                    0.0.0.0 is undetermined… and is mostly rejected .
                    as I said, it’s not a valid IP address, so it should never be sent to the other side as part of the request

                    Its funny though, it is only since MM v.2.17 I have been having issues with MMM_MotionEye and the address: "0.0.0.0" issue. It was fine before. I don’t know what changed other than CORS.

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

                      @SdeGeata we updated libraries we use, so it could be anywhere.

                      Sam

                      How to add modules

                      learning how to use browser developers window for css changes

                      S 1 Reply Last reply Reply Quote 0
                      • S Offline
                        SdeGeata @sdetweil
                        last edited by

                        @sdetweil So what would you suggest? Is there another address I can have MotionEye listen on while leaving the Magic Mirror address on 0.0.0.0? I see an option to configure that in MotionEye.conf. I just don’t know what to set it to.

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

                          @SdeGeata the physical adapter ip address
                          the command

                          ip addr
                          

                          will give you the configured addesses

                          Sam

                          How to add modules

                          learning how to use browser developers window for css changes

                          1 Reply Last reply Reply Quote 0
                          • karsten13K Offline
                            karsten13 @SdeGeata
                            last edited by

                            @SdeGeata

                            Its funny though, it is only since MM v.2.17 I have been having issues with MMM_MotionEye

                            MM is an electron app and electron uses chromium as browser. All browsers are more and more restrictive concerning cors when releasing new versions.

                            I tested MMM-Motioneye with my setup and was not able to get it running.

                            Another approach is to use MMM-iFrame instead which worked on my side.

                            S 1 Reply Last reply Reply Quote 0
                            • S Offline
                              SdeGeata @karsten13
                              last edited by SdeGeata

                              @karsten13 Yeah, I was messing with that a little today. I couldn’t find an iframe that was reliable enough.

                              I ended up installing a Home Assistant add-on called go2rtc to serve the video and on the magic mirror, I installed the MMM-WebView module. It works a lot like an iFrame but more stable.

                              So far, it seems to be working. I have MotionEye and SecuritySpy sending command line webhooks upon motion triggers to Home Assistant that in turn shows and hides the module on the magic mirror. I would have liked to get MotionEye working, but this actually sems faster and more stable.

                              Thanks so much for your help though, to both of you.

                              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 / 1
                              • 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