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.

    Compliments: RemoteFile Configuration

    Scheduled Pinned Locked Moved Troubleshooting
    complimentsremotefileconfiguration
    8 Posts 5 Posters 1.7k Views 5 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.
    • lavolp3L Offline
      lavolp3 Module Developer @jacktar
      last edited by lavolp3

      @jacktar Here is the underlying function

      	/* complimentFile(callback)
      	 * Retrieve a file from the local filesystem
      	 */
      	complimentFile: function (callback) {
      		var xobj = new XMLHttpRequest(),
      			isRemote = this.config.remoteFile.indexOf("http://") === 0 || this.config.remoteFile.indexOf("https://") === 0,
      			path = isRemote ? this.config.remoteFile : this.file(this.config.remoteFile);
      		xobj.overrideMimeType("application/json");
      		xobj.open("GET", path, true);
      		xobj.onreadystatechange = function () {
      			if (xobj.readyState === 4 && xobj.status === 200) {
      				callback(xobj.responseText);
      			}
      		};
      		xobj.send(null);
      	},
      

      Whenever you use a “http://” or “https://” path it takes the path as you have provided. If not it converts it to an absolute path using the this.file(this.config.remoteFile) method. This method uses the modules directory (like you can see in my post above) and appends the path you have given

      How to troubleshoot modules
      MMM-soccer v2, MMM-AVStock

      S J 2 Replies Last reply Reply Quote 0
      • S Offline
        sdetweil @lavolp3
        last edited by

        @lavolp3 another thing to say is

        the MagicMirror provided web server assumes

        modules is the root
        express is listening/watching for modules as the base path

        http://localhost:8080/modules/…

        the file can be anywhere further down

        Sam

        How to add modules

        learning how to use browser developers window for css changes

        1 Reply Last reply Reply Quote 0
        • J Offline
          jacktar @lavolp3
          last edited by

          Ok, thanks. Got that sorted now :)
          Hopefully this will help others with the same dilemma.
          I had read a post referencing the use of file://
          notation which, apparently, is a red-herring.

          Just for clarity to others, a local compliments.json
          file should be located in /pi/MagicMirror/modules/default/compliments/ directory and referenced using only the file name in the config file.

          e.g. remoteFile: 'compliments.json'

          kayakbabeK 1 Reply Last reply Reply Quote 0
          • kayakbabeK Offline
            kayakbabe @jacktar
            last edited by

            @jacktar said in Compliments: RemoteFile Configuration:

            Just for clarity to others, a local compliments.json
            file should be located in /pi/MagicMirror/modules/default/compliments/ directory and referenced using only the file name in the config file.
            e.g. remoteFile: ‘compliments.json’

            So… what happens if we update the compliments module? Do our customizations in the compliments.json file get wiped out?
            can we put the compliments.json somewhere else to protect it?

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

              @kayakbabe yes they will be lost.
              .NEVER edit the source files we provide.

              the design is that all your setting go in config.js
              and custom.css for colors etc.

              module :"compliments",
              position:"....",
              config:{
                  compliments:{
                             morning:[],
                              afternoon:[],
                            etc
                   }
              }
              

              Sam

              How to add modules

              learning how to use browser developers window for css changes

              1 Reply Last reply Reply Quote 0
              • AssassinsA Offline
                Assassins
                last edited by

                You can look here

                1 Reply Last reply Reply Quote 0
                • 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