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.

    read csv-data and put it in an array

    Scheduled Pinned Locked Moved Utilities
    313 Posts 3 Posters 440.1k 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
      sdetweil @Perlchamp
      last edited by

      @Perlchamp u can redirect the output of npm start to a file, npm start >somefile

      u can minimize the window with alt-spacebar, n

      u can open the developers window ( for the modulename,js debugging) npm start dev
      or if mirror already running use f12 or ctrl-shift-i on the keyboard

      I debug from my PC, ssh connected to pi, or I run MM on my PC… and debug there

      Sam

      How to add modules

      learning how to use browser developers window for css changes

      1 Reply Last reply Reply Quote 0
      • PerlchampP Offline
        Perlchamp
        last edited by

        what do you use for debugging on pc ?
        do you have x64 or arm-based pc ?

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

          @Perlchamp x64, run linux or windows (today on linux), doesn’t matter… same debug process… look at console or browser window
          if I need to debug modulename.js on pi, I open browser from PC to the mirror URL and do it there

          Sam

          How to add modules

          learning how to use browser developers window for css changes

          1 Reply Last reply Reply Quote 0
          • PerlchampP Offline
            Perlchamp
            last edited by

            AND:
            thanks a lot for YOUR time. i hope it will not been wasted … i will working hard to get some results …

            1 Reply Last reply Reply Quote 0
            • PerlchampP Offline
              Perlchamp
              last edited by

              @sdetweil said in read csv-data and put it in an array:

              I open browser from PC to the mirror URL and do it there
              I debug from my PC, ssh connected to pi, or I run MM on my PC… and debug there

              how ?

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

                @Perlchamp on MagicMirror, in config, set address:“0.0.0.0”,
                And ipWhitelist:[],

                Then u can connect to the mm url from anywhere in your house/office.
                http://ipaddress:port

                Then f12 or ctrl-shift-i on the browser keyboard to open the developers window.

                Sam

                How to add modules

                learning how to use browser developers window for css changes

                1 Reply Last reply Reply Quote 0
                • PerlchampP Offline
                  Perlchamp
                  last edited by

                  ok thank.
                  if i want to test

                      readCSV: fs.readFile('birthdaylist.csv', 'utf8', function (err, data) {
                  	var dataArray = data.split(/\r?\n/);
                  	Log.log(dataArray);
                  
                  

                  or

                  readList: function() {
                  	var JFile=require('jfile');
                  	var myF=new JFile("MMM-birthday.txt");
                  	myF.lines // ["first line","second line"]
                  

                  i have to do this in node_helper right? and first i have to require them and of course to install them … something i forgot ?

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

                    @Perlchamp Log.log is ONLY in the browser, but fs. Is not usable in browser

                    U can test it w node to make sure it works. Then for mm it has to be in node_helper

                    Install library, so that you CAN require

                    Sam

                    How to add modules

                    learning how to use browser developers window for css changes

                    1 Reply Last reply Reply Quote 0
                    • PerlchampP Offline
                      Perlchamp
                      last edited by

                      hallo sam :-)
                      i have now this in my node_helper.js:

                      var NodeHelper = require("node_helper");
                      
                      // add require of other javascripot components here
                      // var xxx = require('yyy'); here
                      const csv = require("csvtojson");
                      const csvFilePath = this.path + 'birthdaylist.csv';
                      
                      
                      module.exports = NodeHelper.create({
                      
                      	init(){
                      		console.log("init module helper perlchamp");
                      	},
                      
                      	start() {
                      		console.log("Starting module helper: ${this.name}");
                      		console.log("dieser Pfad: ${this.path}");
                      		
                      		csv()
                      		.fromFile(csvFilePath)
                      		.then((jsonObj)=>{
                      			console.log(jsonObj);
                      		})
                      
                      	},
                      
                      /*
                      	stop(){
                      		console.log(`Stopping module helper: ${this.name}`);
                      	},
                      */
                      	// handle messages from our module// each notification indicates a different messages
                      	// payload is a data structure that is different per message.. up to you to design this
                      	socketNotificationReceived(notification, payload) {
                      		console.log(this.name + " received a socket notification: " + notification + " - Payload: " + payload);
                      		// if config message from module
                      		if (notification === "CONFIG") {
                      			// save payload config info
                      			this.config=payload
                      			// wait 15 seconds, send a message back to module
                      			setTimeout(()=> { this.sendSocketNotification("message_from_helper"," this is a test_message")}, 15000)
                      		}
                      		else if(notification === "????2") {
                      		}
                      
                      	},
                      
                      });
                      

                      terminal says:

                      Unhandled rejection Error: File does not exist. Check to make sure the file path to your csv is correct.
                          at /home/dirk/MagicMirror/node_modules/csvtojson/v2/Converter.js:81:37
                          at suppressedCallback (fs.js:209:5)
                          at FSReqCallback.oncomplete (fs.js:153:23)
                      

                      it’s from your SampleModule …

                      1. how can i see the console.log statements in the browser, starting MM ?
                      2. did i enter the code in the right place?
                      3. if I enter the following into the terminal window:
                        node console.log (‘path: $ {this.path}’)
                        i got an error message:
                        bash: Syntaxerror unexpected word `(’
                        what am I doing wrong ?

                      many thanks in advance

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

                        @Perlchamp said in read csv-data and put it in an array:

                        • how can i see the console.log statements in the browser, starting MM ?
                          cannot see node_helper messages in browser, must look in the terminal window where u did npm start
                          you can redirect those messages to a file
                          npm start >somefile
                          and then look at somefile live with editor

                        • did i enter the code in the right place?
                          const csvFilePath = this.path + ‘birthdaylist.csv’;
                          u have this.path outside the NodeHelper.create, at that time ‘this’ does not exist
                          ‘this’ means ‘instance of’, and u are outside the thing that creates the instance

                        • if I enter the following into the terminal window:

                        because u are not running in magic mirror , ‘this’ does not exist
                        node console.log (‘path: $ {this.path}’)

                        • i got an error message:
                        • bash: Syntaxerror unexpected word `(’
                          what am I doing wrong…
                          bash would not see any ( unless u put it on the line with node

                        node (something)
                        that is a command to bash (the terminal window program, he has his own rules about parens, and other special characters (* means ALL filenames in this folder for example!)

                        I never ever use $ in node_helper (or anywhere else)
                        I would do this
                        console.log (‘path: '+ this.path)

                        Sam

                        How to add modules

                        learning how to use browser developers window for css changes

                        1 Reply Last reply Reply Quote 0
                        • 1
                        • 2
                        • 21
                        • 22
                        • 23
                        • 24
                        • 25
                        • 31
                        • 32
                        • 23 / 32
                        • 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