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.

    .txt file include

    Scheduled Pinned Locked Moved Troubleshooting
    59 Posts 6 Posters 34.9k Views 6 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.
    • D Offline
      dominic @strawberry 3.141
      last edited by

      @strawberry-3.141 Thanks for the fast answer :)

      I did it , just as you said it. on the mirror is displayed : NO DATA

      Here is the code from the nodehelper:
      Is the path specified correctly or I need to change something?

      • readData: function(){
        //to read a file to do the following
        fs.readFile(‘/home/pi/MagicMirror/Test-temp.txt’, (err, data) => {
        if (err) throw err;
        this.sendSocketNotification(‘DATA’, data);
        });
      1 Reply Last reply Reply Quote 0
      • strawberry 3.141S Offline
        strawberry 3.141 Project Sponsor Module Developer
        last edited by

        i think this should do the job

        fs.readFile('Test-temp.txt', (err, data) => {
        

        Please create a github issue if you need help, so I can keep track

        D 1 Reply Last reply Reply Quote 0
        • D Offline
          dominic @strawberry 3.141
          last edited by

          @strawberry-3.141
          hi, now i get " [object ArryBuffer]"
          what did i worng?

          1 Reply Last reply Reply Quote 0
          • strawberry 3.141S Offline
            strawberry 3.141 Project Sponsor Module Developer
            last edited by strawberry 3.141

            sry wasn’t aware of that a buffer gets returned instead of a string if there is no encoding specified

            fs.readFile('Test-temp.txt', 'utf8', (err, data) => {
            

            Please create a github issue if you need help, so I can keep track

            D 1 Reply Last reply Reply Quote 0
            • D Offline
              dominic @strawberry 3.141
              last edited by paviro

              @strawberry-3.141 said in .txt file include:

              fs.readFile(‘Test-temp.txt’, ‘utf8’, (err, data) => {

              Hi, sorry.
              It didn´t work :/

              Here is the node_helper.js code

              const NodeHelper = require("node_helper");
              const fs= require("fs");
              
              module.exports = NodeHelper.create({
                  //here comes the part of the nodehelper after the 3 dots as posted above
              	
              	socketNotificationReceived: function(notification, payload) {
                  if(notification === 'START'){
                      this.config = payload;
                      this.readData();
                      setInterval(() => {
                          this.readData();
                      }, this.config.updateInterval);
                  }
              },
              
              readData: function(){
                  //to read a file to do the following
                 fs.readFile('Test-temp.txt', 'utf8', (err, data) => {
                      if (err) throw err;
                      this.sendSocketNotification('DATA', data);
                  });
              }
              });
              
              
              
              and here is the sensor.js code: 
              
              Module.register("sensor",{
                 defaults: {
                  updateInterval: 30*60*1000 //reads the file every 30 mins
              },
              
              start: function(){
                  this.sendSocketNotification('START', this.config);
              },
              
              socketNotificationReceived: function(notification, payload) {
                  if(notification === 'DATA'){
                      this.dataFile = payload;
                      this.updateDom();
                  }
              },
              
              getDom: function(){
                  var wrapper = document.createElement('div');
                  if(this.dataFile){
                      wrapper.innerHTML = this.dataFile;
                  } else {
                      wrapper.innerHTML = 'No data';
                  }
                  return wrapper;
              }
              });
              

              Waht did i wrong? :D
              I hope you can help me.


              Note from admin: Please use Markdown on code snippets for easier reading!

              1 Reply Last reply Reply Quote 0
              • strawberry 3.141S Offline
                strawberry 3.141 Project Sponsor Module Developer
                last edited by

                this works for me you had everywhere weird quotes and the updateinterval was also wrong

                Module.register("sensor",{
                	defaults: {
                		updateInterval: 30 * 60 * 1000 //reads the file every 30 mins
                	},
                
                	start: function(){
                		this.sendSocketNotification("START", this.config);
                	},
                
                	socketNotificationReceived: function(notification, payload) {
                		if(notification === "DATA"){
                			this.dataFile = payload;
                			this.updateDom();
                		}
                	},
                
                	getDom: function(){
                		var wrapper = document.createElement("div");
                		if(this.dataFile){
                			wrapper.innerHTML = this.dataFile;
                		} else {
                			wrapper.innerHTML = "No data";
                		}
                		return wrapper;
                	}
                });
                
                const NodeHelper = require("node_helper");
                const fs= require("fs");
                
                module.exports = NodeHelper.create({
                //here comes the part of the nodehelper after the 3 dots as posted above
                
                	socketNotificationReceived: function(notification, payload) {
                		if(notification === "START"){
                			this.config = payload;
                			this.readData();
                    			setInterval(() => {
                        			this.readData();
                    			}, this.config.updateInterval);
                		}
                	},
                
                	readData: function(){
                		//to read a file to do the following
                		fs.readFile("Test-temp.txt", "utf8", (err, data) => {
                			if (err) throw err;
                			this.sendSocketNotification("DATA", data);
                		});
                	}
                });
                

                Please create a github issue if you need help, so I can keep track

                D 2 Replies Last reply Reply Quote 0
                • D Offline
                  dominic @strawberry 3.141
                  last edited by

                  @strawberry-3.141
                  Mh… than i don´t know…
                  i have copy your code but it doesen´t work…
                  I need to change anything els?

                  And thank you for your patience :)

                  1 Reply Last reply Reply Quote 0
                  • D Offline
                    dominic @strawberry 3.141
                    last edited by

                    @strawberry-3.141 1_1472575446381_sensor.js 0_1472575446381_node_helper.js 0_1472575579268_config.js

                    Here are my code files. Maybe this can help?

                    1 Reply Last reply Reply Quote 0
                    • strawberry 3.141S Offline
                      strawberry 3.141 Project Sponsor Module Developer
                      last edited by strawberry 3.141

                      do you get any error in the console or in the electron console (cmd+shift+I)

                      did you place your Test-temp.txt in ~/MagicMirror or somewhere else?

                      Please create a github issue if you need help, so I can keep track

                      D 1 Reply Last reply Reply Quote 0
                      • D Offline
                        dominic @strawberry 3.141
                        last edited by

                        @strawberry-3.141
                        Sorry i hade no time the last days.

                        I put the Test-temp.txt in ~/MagicMirror and for tests ind~/MagicMirror/modules/sensor.
                        But nothing happens.

                        I get only an error about the weatherforecast bu nothing els…

                        strawberry 3.141S 1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 3
                        • 4
                        • 5
                        • 6
                        • 1 / 6
                        • 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