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.

    Client wont keep Modules up-to-date

    Scheduled Pinned Locked Moved Unsolved Troubleshooting
    21 Posts 3 Posters 7.3k Views 3 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.
    • C Offline
      codac
      last edited by

      @karsten13
      yes and using pm2 to start this command:

      DISPLAY=:0 node clientonly --address 192.168.0.13 --port 8080
      

      And yes I have errors, it seems as if there is a problem using the 127.0.0.1 address and port 8080:

      0|mm       | [13.07.2021 13:19.37.499] [ERROR] Error: listen EADDRINUSE: address                                                                                                                                           already in use 127.0.0.1:8080
      0|mm       |     at Server.setupListenHandle [as _listen2] (net.js:1313:16)
      0|mm       |     at listenInCluster (net.js:1361:12)
      0|mm       |     at GetAddrInfoReqWrap.doListen [as callback] (net.js:1498:7)
      0|mm       |     at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:68:8) {
      0|mm       |   code: 'EADDRINUSE',
      0|mm       |   errno: 'EADDRINUSE',
      0|mm       |   syscall: 'listen',
      0|mm       |   address: '127.0.0.1',
      0|mm       |   port: 8080
      0|mm       | }
      0|mm       | [13.07.2021 13:19.37.506] [ERROR] MagicMirror will not quit, but it                                                                                                                                           might be a good idea to check why this happened. Maybe no internet connection?
      0|mm       | [13.07.2021 13:19.37.510] [ERROR] If you think this really is an is                                                                                                                                          sue, please open an issue on GitHub: https://github.com/MichMich/MagicMirror/iss                                                                                                                                          ues
      
      

      and I wonder why there is an error catching the newsfeed, as the stated feed is the one from the client, not the server:

      0|mm       | /home/pi/MagicMirror/node_modules/electron/dist/electron exited wit                                                                                                                                          h signal SIGINT
      0|mm       | [13.07.2021 19:59.53.918] [ERROR] Newsfeed Error. Could not fetch n                                                                                                                                          ewsfeed:  https://rss.nytimes.com/services/xml/rss/nyt/HomePage.xml FetchError:                                                                                                                                           request to https://rss.nytimes.com/services/xml/rss/nyt/HomePage.xml failed, rea                                                                                                                                          son: getaddrinfo EAI_AGAIN rss.nytimes.com
      0|mm       |     at ClientRequest.<anonymous> (/home/pi/MagicMirror/node_modules                                                                                                                                          /node-fetch/lib/index.js:1461:11)
      0|mm       |     at ClientRequest.emit (events.js:315:20)
      0|mm       |     at TLSSocket.socketErrorListener (_http_client.js:426:9)
      0|mm       |     at TLSSocket.emit (events.js:315:20)
      0|mm       |     at emitErrorNT (internal/streams/destroy.js:92:8)
      0|mm       |     at emitErrorAndCloseNT (internal/streams/destroy.js:60:3)
      0|mm       |     at processTicksAndRejections (internal/process/task_queues.js:8                                                                                                                                          4:21) {
      0|mm       |   type: 'system',
      0|mm       |   errno: 'EAI_AGAIN',
      0|mm       |   code: 'EAI_AGAIN'
      0|mm       | }
      0|mm       | [13.07.2021 19:59.56.921] [ERROR] Calendar Error. Could not fetch c                                                                                                                                          alendar:  http://www.calendarlabs.com/ical-calendar/ics/76/US_Holidays.ics Fetch                                                                                                                                          Error: request to http://www.calendarlabs.com/ical-calendar/ics/76/US_Holidays.i                                                                                                                                          cs failed, reason: getaddrinfo EAI_AGAIN www.calendarlabs.com
      0|mm       |     at ClientRequest.<anonymous> (/home/pi/MagicMirror/node_modules                                                                                                                                          /node-fetch/lib/index.js:1461:11)
      
      
      S karsten13K 2 Replies Last reply Reply Quote 0
      • S Do not disturb
        sdetweil @codac
        last edited by

        @codac said in Client wont keep Modules up-to-date:

        EAI_AGAIN

        is a name server problem

        the api request could not resolve the name

        see this a lot with local pihole servers doing DNS filtering

        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 @codac
          last edited by

          @codac

          it seems as if there is a problem using the 127.0.0.1 address and port 8080:

          yes, port 8080 on your client is already in use.
          You can try another port in the client config.js but I don’t know if this works.

          I wonder why there is an error catching the newsfeed, as the stated feed is the one from the client, not the server:

          then remove this stuff from the client config …

          I’m not familiar with the clientonly setup and I think this is not used very often and therefore maybe contains some bugs.

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

            @karsten13 said in Client wont keep Modules up-to-date:

            I’m not familiar with the clientonly setup

            it just launches electron pointing at the server, same as u would do with chromium.

            doesn’t use the config.js

            Sam

            How to add modules

            learning how to use browser developers window for css changes

            1 Reply Last reply Reply Quote 0
            • C Offline
              codac
              last edited by

              I figured out that is was due to several reasons.

              1. The reported error messages from the client side were old ones from the time when I set up the client and before I switched to clientonly mode. So they are supposed to be ignored.
              2. The calendar module was able to receive the events from all calendars except for one calendar that runs on my NAS system where I forgot to add the port number to the calendar url.
              3. the module MMM-Tankerkoenig is not up to date as there is an error message regarding the identifier that was not found. As far as I can see the code has an error and therefore the module wont update correctly.
              4. the module MMM-Formula1 (wrongly called it MMM-SocerLiveScore) module has a ReloadInterval which was just wrongly set up and far to long.

              @karsten13
              In the Docker on the server side is there anything adequate to the command pm2 logs --lines 300 mm ?

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

                @codac said in Client wont keep Modules up-to-date:

                In the Docker on the server side is there anything adequate to the command pm2 logs --lines 300 mm ?

                wouldnt you just

                 docker exec container_id pm2 logs.....
                

                to execute the command inside the container?

                to clear the logs

                docker exec container_id pm2 flush

                Sam

                How to add modules

                learning how to use browser developers window for css changes

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

                  @sdetweil

                  there is no pm2 in the container …

                  The command is docker logs <containername or id>, so if you use my docker-compose setup docker logs mm.

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

                    @karsten13 so I have to restart the container after making config changes?

                    Sam

                    How to add modules

                    learning how to use browser developers window for css changes

                    C 1 Reply Last reply Reply Quote 0
                    • C Offline
                      codac @sdetweil
                      last edited by

                      @sdetweil yes, you should do that.

                      1 Reply Last reply Reply Quote 0
                      • C Offline
                        codac
                        last edited by

                        I have still not fixed this.

                        Servers IP: 192.168.0.23 (local Port 8036, container-port: 8080)

                        On the client I get the following error:

                        Unable to connect to server: (Error: Unable to read config from server (http://192.168.0.23:8036/config/ (connect ECONNREFUSED 192.168.0.23:8036)
                        

                        The servers config is set to:

                                address: "0.0.0.0",
                        	port: 8080,
                        	basePath: "/", 	
                        	ipWhitelist: ['0.0.0.0/0', '127.0.0.1', '::ffff:127.0.0.1', '::1', '192.168.0.0/24', '172.17.0.0/24'], 
                        

                        Any ideas why the client wont get the servers config?

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

                          @codac first, remove the ipWhitelist , set to []

                          then try
                          .and the IP address used is the docker host IP address, right.

                          never use the containers direct address for any code not running ON the docker host machine

                          where is client running?

                          if mm rejected the connection due to whitelist you should have seen it in the mm messages

                          i see a message like this

                          Access denied to IP address: 192.168.2.106
                          

                          my config

                          	address: "192.168.2.106", 	// Address to listen on, can be:
                          							// - "localhost", "127.0.0.1", "::1" to listen on loopback interface
                          							// - another specific IPv4/6 to listen on a specific interface
                          							// - "0.0.0.0", "::" to listen on any interface
                          							// Default, when address config is left out or empty, is "localhost"
                          	port: 8090,
                          	basePath: "/", 	// The URL path where MagicMirror is hosted. If you are using a Reverse proxy
                          					// you must set the sub path here. basePath must end with a /
                          	ipWhitelist: ["127.0.0.1"], 
                          

                          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 @codac
                            last edited by

                            @codac

                            may you must open the additional port in the docker setup and add the line with 8036 (untested) in your docker-compose.yml:

                                ports:
                                  - "8080:8080"
                                  - "8036:8036"
                            
                            S 1 Reply Last reply Reply Quote 0
                            • S Do not disturb
                              sdetweil @karsten13
                              last edited by

                              @karsten13 said in Client wont keep Modules up-to-date:

                              ports:
                                - "8080:8080"
                                - "8036:8036"
                              

                              why wouldn’t

                                   ports:
                                         "8036:8080"
                              

                              be enough?

                              Sam

                              How to add modules

                              learning how to use browser developers window for css changes

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

                                @sdetweil think you are right …

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

                                  @karsten13 actually I think you were closer…

                                  I know a module that uses the port number in a url it presents…
                                  (MMM-Config in the QR code)

                                  8080 won’t work, but if the mapping was added

                                  so

                                       ports:
                                             "8036:8080"
                                             "8080:8080"
                                  

                                  would be needed

                                  and if u need to do that, then 8080 on the docker host needs to be used, so then no need for 8036

                                       ports:
                                             "8080:8080"
                                  

                                  but can’t run two container instances

                                  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 @sdetweil
                                    last edited by

                                    @sdetweil also, my MM uses 8090 not to collide with another app.

                                    Sam

                                    How to add modules

                                    learning how to use browser developers window for css changes

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

                                      @codac

                                      Servers IP: 192.168.0.23 (local Port 8036, container-port: 8080)

                                      if I read this correctly your setup is

                                      ports:
                                        - "8036:8080"
                                      

                                      So mm should be reachable under 192.168.0.23:8036.

                                      If not the client ip is may not white listed, I would try ipWhitelist: [], in the server config for testing.

                                      Another question: Is 192.168.0.23:8036 not reachable in general (e.g. in a browser) or only not reachable running the clientonly command?

                                      1 Reply Last reply Reply Quote 0
                                      • C Offline
                                        codac
                                        last edited by

                                        The client is a raspberry pi.
                                        192.168.0.23:8036 is reachable without problems.

                                        First try seems to work
                                        I’ve changed to:

                                        ipWhitelist: [],
                                        

                                        and

                                        ports: "8036:8080"
                                        

                                        I will check that and come back if there is still an issue.

                                        Thank you guys!

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