Read the statement by Michael Teeuw here.
MMM-Remote-Control API Questions
-
@sdetweil If possible could you please give me an example of how i would do it, i dont know much about js. and i looked at the MMM-Swipe but i couldnt understand much
-
@sgarg15 swipe isn’t a good example after all, uses a library which hides all that… nor PIR…
your python script needs to run forever and put out messages for each movement it sees…
then you use the nodejs Python_Shell library to launch it
import {PythonShell} from 'python-shell'; let pyshell = new PythonShell('my_script.py'); // < --- whatever your script name, in the module folder // the .on handler gets called each time the pythin script writes a message to stdout pyshell.on('message', function (message) { // received a message sent from the Python script (a simple "print" statement) console.log(message); // send info up to modulename.js this.sendSocketNotification("movement", message) }); -
@sdetweil This may be a stupid question, but is there any way i can test this on my laptop, without the raspberry pi?
-
@sgarg15 of course. See my comments in .txt file include
https://forum.magicmirror.builders/topic/555/txt-file-include/57Not the actual node_helper but the code inside. Of course u can install mm on your PC as well
-
This post is deleted! -
var dataFile=["Archer S01E02Someshow.tv", "Archer S01E03Someshow .tv", "Archer S01e02Someshow .tv", "Archer S01E04Someshow .tv", "Archer S01E05someshow .tv", "Archer s01E02Someshow .tv", "Archer S01E09Someshow .tv", ] var counter1=10 if(dataFile){ var output_list= []; // should make this a config variable by adding to module defaults // then would be this.config.counter // get display limit, 10 if not specified in defaults var counter=counter1 || 10 // setup regex, no i no g (only once, and case sensitive) var splitRegExp = /.*[S][(0-9)]+[E][(0-9)]+/; // loop thru the list of filenames for(filename of dataFile) { // if the name is not zero length (split could have returned for just linefeed if(filename.length >0 && counter >0) { // get the filename prefix var split = splitRegExp.exec(filename); // save name to the output list, as a table entry // remove space after the ->< , the forum hides everything after unless a space // table has a row, output_list.push("<tr><td>") // with data if(split) output_list.push(split) else output_list.push('name not matched '+ filename) // end of data and row output_list.push("</td></tr>") counter--; } } } // insert the table into the wrapper console.log( "<table>" + output_list.join('')+ "</table>");This correct?
-
@sdetweil Also how do i make it so that the python file is always running?
-
@sgarg15 that was the example of running a little js app on the command line node js_filename
The exact code here doesn’t help you, but the prior code I posted is what u want to try. Altho I don’t know how u will hook it to the sensors on your pc
-
@sgarg15 your python PGM has to loop somehow. I don’t do python
-
@sdetweil so, i have my python script running in the background, and in my nodeHelper.js i would have
import {PythonShell} from 'python-shell'; let pyshell = new PythonShell('Swiping.py'); // < --- whatever your script name, in the module folder // the .on handler gets called each time the pythin script writes a message to stdout pyshell.on('message', function (message) { // received a message sent from the Python script (a simple "print" statement) console.log(message); // send info up to modulename.js this.sendSocketNotification("movement", message) });could you explain what movement and message mean in the
sendSocketNotification? -
If you could help me achieve this, or give me some info that could help me do this i would really appreciate it
-
@ertopps do what?
-
I am stuck due to similar issues. And now I need some professional developers with Python knowledge and good programming skills. I am from the US, check this out. And you need to be able during my working hours, it will be a great advantage for fruitful cooperation. Send me a message to my private box for more details. I do hope to find someone here with your assistance.
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