• Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
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 31.5k 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 Aug 28, 2016, 5:25 PM

    @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
    • S Offline
      strawberry 3.141 Project Sponsor Module Developer
      last edited by Aug 29, 2016, 2:06 PM

      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 Aug 29, 2016, 5:12 PM Reply Quote 0
      • D Offline
        dominic @strawberry 3.141
        last edited by Aug 29, 2016, 5:12 PM

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

        1 Reply Last reply Reply Quote 0
        • S Offline
          strawberry 3.141 Project Sponsor Module Developer
          last edited by strawberry 3.141 Aug 29, 2016, 7:59 PM Aug 29, 2016, 7:58 PM

          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 Aug 30, 2016, 1:27 PM Reply Quote 0
          • D Offline
            dominic @strawberry 3.141
            last edited by paviro Sep 11, 2016, 11:19 AM Aug 30, 2016, 1:27 PM

            @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
            • S Offline
              strawberry 3.141 Project Sponsor Module Developer
              last edited by Aug 30, 2016, 4:01 PM

              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 Aug 30, 2016, 4:37 PM Reply Quote 0
              • D Offline
                dominic @strawberry 3.141
                last edited by Aug 30, 2016, 4:37 PM

                @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 Aug 30, 2016, 4:46 PM

                  @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
                  • S Offline
                    strawberry 3.141 Project Sponsor Module Developer
                    last edited by strawberry 3.141 Aug 30, 2016, 7:48 PM Aug 30, 2016, 7:47 PM

                    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 Sep 2, 2016, 8:01 AM Reply Quote 0
                    • D Offline
                      dominic @strawberry 3.141
                      last edited by Sep 2, 2016, 8:01 AM

                      @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…

                      S 1 Reply Last reply Sep 2, 2016, 9:45 AM Reply Quote 0
                      • 1
                      • 2
                      • 3
                      • 4
                      • 5
                      • 6
                      • 1 / 6
                      1 / 6
                      • First post
                        9/59
                        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