NEWS
[GELÖST]javascript zum herunterfahren und rebooten entfernter singlboard computer / Raspi
-
Hallo, ich möchte mittes script einen entfernten Raspberrypi herunterfahren oder neustarten.
Dazu habe ich entsprechende Server auf dem pi installiert ( php / apache2 ) und jeweils eine php Datei mit dem entsprechenden exec command hinterlegt.
Das Script für IoBroker sieht folgendeemaßen aus…
Leider taste ich mich gerade erst an http und url via Script heran...Bei Ausführung des Script mach der entfernte Raspi was er soll, fährt herunter oder startet neu... Leider hängt sich der javascript Adapter dabei auf und startet wieder durch...
der Teil mit dem Request.get ist mit Sicherheit falsch, weis aber nicht wie es richtig aussehen muss...
Kann jemand helfen?
<code>//http://192.168.1.43/reboot.php //http://192.168.1.43/shutdown.php //states createState('javascript.1.Sprachsteuerung.Wohnzimmer.snips.reboot', {def: 'false', type: 'boolean', read: true, write: true, name: 'reboot'}); createState('javascript.1.Sprachsteuerung.Wohnzimmer.snips.shutdown', {def: 'false', type: 'boolean', read: true, write: true, name: 'shutdown'}); const reboot = 'javascript.1.Sprachsteuerung.Wohnzimmer.snips.reboot'; const shutdown = 'javascript.1.Sprachsteuerung.Wohnzimmer.snips.shutdown'; var logging = true; // reboot function snipsreboot() { if (logging)log ('Raspberry Snips Befehl zum neustarten durch ioBroker gesetzt'); request.get({url: 'http://192.168.1.43/reboot.php'}); setState(reboot,false); } // shutdown function snipsshutdown() { if (logging)log ('Raspberry Snips Befehl zum herunterfahren durch ioBroker gesetzt'); request.get({url: 'http://192.168.1.43/shutdown.php'}); setState(shutdown,false); } // Trigger reboot on({id:"javascript.1.Sprachsteuerung.Wohnzimmer.snips.reboot", val: true, change: 'ne'},function(obj){ //on(reboot,function(dp){ snipsreboot(); }); // Trigger shutdown on({id:"javascript.1.Sprachsteuerung.Wohnzimmer.snips.shutdown", val: true, change: 'ne'},function(obj){ //on(shutdown,function(dp){ snipsshutdown(); });</code>
-
Hallo,
wie man ein Bash-Skript startet kannst dir beim Backitup Skript abgucken: https://github.com/peoples0815/backitup … .2.js#L288
Schlagwort: exec()
Gruß
Pix
Edit: Du kannst dir also dann die php-Datei sparen. Ich geh davon aus, dass du ioBroker korrekt herunterfährst beim Shutdown.
-
Ich möchte eine php Datei auf einem anderen Reaspberry auf dem kein IOBroker läuft ausführen…Ich glaube das ist nicht das was ich suche...Oder ich stehe auf dem Schaluch...
Im Prinzip muss das Script nur eine Adress Eingabe in einem Browser simulieren...
-
Siehe z.B. hier: viewtopic.php?t=11575#p122481
-
Perfekt, danke…
dachte mir das es was ganz lapidares sein muss...
` > //http://192.168.1.43/reboot.php
//states
createState('javascript.1.Sprachsteuerung.Wohnzimmer.snips.reboot', {def: 'false', type: 'boolean', read: true, write: true, name: 'reboot'});
createState('javascript.1.Sprachsteuerung.Wohnzimmer.snips.shutdown', {def: 'false', type: 'boolean', read: true, write: true, name: 'shutdown'});
const reboot = 'javascript.1.Sprachsteuerung.Wohnzimmer.snips.reboot';
const shutdown = 'javascript.1.Sprachsteuerung.Wohnzimmer.snips.shutdown';
var logging = true;
// reboot
function snipsreboot() {
if (logging)log ('Raspberry Snips Befehl zum neustarten durch ioBroker gesetzt');
request('http://192.168.1.43/reboot.php', function (error, response){
});
setState(reboot,false);
}
// shutdown
function snipsshutdown() {
if (logging)log ('Raspberry Snips Befehl zum herunterfahren durch ioBroker gesetzt');
request('http://192.168.1.43/shutdown.php', function (error, response){
});
setState(shutdown,false);
}
// Trigger reboot
on({id:"javascript.1.Sprachsteuerung.Wohnzimmer.snips.reboot", val: true, change: 'ne'},function(obj){
//on(reboot,function(dp){
snipsreboot();
});
// Trigger shutdown
on({id:"javascript.1.Sprachsteuerung.Wohnzimmer.snips.shutdown", val: true, change: 'ne'},function(obj){
//on(shutdown,function(dp){
snipsshutdown();
}); `