NEWS
Fully Kiosk - Nachtabschaltung
-
Ich habe ein Samsaung Tablet und da drauf läuft der Fully Kiosk Browser in der kostenlosen Version (ohne PLUS). Nun möchte ich den Bildschirm des Tablets nachts abschalten und finde irgendwie die passende Einstellung nicht. Welche Möglichkeiten gibt es denn, nachts entweder den Bildschirmschoner einzuschalten oder vielleicht sogar das ganze Tablet?
-
@erich-1
Dann einfach ein Blokly schreiben das er Nachts da display ausschalten soll. -
@erich-1 sagte in Fully Kiosk - Nachtabschaltung:
oder vielleicht sogar das ganze Tablet
So mache ich das mit meinen Tabs da ich nachts keinen Sinn sehe dass diese laufen und zumal der Bildschirmschoner (bei mir schwarz) trotzdem eine gewisse "Leuchtkraft" hat.
Dazu gibt es in den Androideinstellungen die Option "Geplantes Ein- und Ausschalten".
Wo das genau "versteckt" ist musst Du suchen da die Einstellungsstrukturen von der Version des Android abhängt. -
@djmarc75 said in Fully Kiosk - Nachtabschaltung:
@erich-1 sagte in Fully Kiosk - Nachtabschaltung:
oder vielleicht sogar das ganze Tablet
Dazu gibt es in den Androideinstellungen die Option "Geplantes Ein- und Ausschalten".
Wo das genau "versteckt" ist musst Du suchen da die Einstellungsstrukturen von der Version des Android abhängt.Das kling gut, das werde ich mal suchen ...
-
@erich-1 In Fully gibt es auch eine Einstellung, dass bei Erkennung von Dunkelheit das Display abschalten soll. Ist glaub irgendwo bei den Kameraeinstellungen. Ob es funktioniert und auch wieder korrekt einschaltet hängt wohl vom jeweiligen Gerät ab, habe ich (noch) nicht getestet.
Gruss, Jürgen
-
@wildbill
Motion Detection -> Turn Screen Off in Darkness . Dafür wirdPLUS
benötigt. Das möchte er ja nicht.
Mit PLUS könnte man ja auch im FullyBrowser-Adapter den DP nutzen.
fullybrowser.0.192_168_178_XXX.Commands.screenOff
-
Ich schalte auch per Skript mein Display aus was auch wunderbar funktioniert. Nur am Morgen muss ich das tablet mit einem dopppel tap mit dem Finger manuell aufwecken. Ein automatisches Einschalten ist mir noch nicht gelungen
-
@feuersturm MIt welchem Script? Und wird dafür die PLUS Variante benötgt?
-
@mcu schreibe ich dir heute abend. Bin gerade nicht am Rechner.
-
@mcu
Ich habe die Plus Lizenz vor vielen Jahren erworben daher kann ich dir nicht mehr auswendig sagen wofür man sie genau braucht ;-).
Wenn ich mir hier die Übersicht ansehe https://www.fully-kiosk.com/en/#features dann braucht man für "React on different events like Screen On/Off" aber die Plus LizenzHier ist mein Skript welches ich nutze. Ich verwende auch den Datenpunkt
fully-tablet-control.0.device.wandtablet.commands.screenOff
um den Bildschrim auszuschalten.
Mit der Funktion isTimeInRage bekomme ich ein True zurück, wenn der Zeitbereich zwischen Uhrzeit strLower und strUpper gerade aktiv ist.
Der Cron Job ruft zyklisch die Funktion DisplayOff auf und wenn ich nach 22 uhr doch nochmal kurz am Tablet war wird das Display spätestens nach 5 min wieder ausgeschaltet.function currentDate() { var d = new Date(); return new Date(d.getFullYear(), d.getMonth(), d.getDate()); } function addTime(strTime) { var time = strTime.split(':'); var d = currentDate(); d.setHours(time[0]); d.setMinutes(time[1]); d.setSeconds(time[2]); return d; } function isTimeInRange(strLower, strUpper) { var now = new Date(); var lower = addTime(strLower); var upper = addTime(strUpper); var inRange = false; if (upper > lower) { // opens and closes in same day inRange = (now >= lower && now <= upper) ? true : false; } else { // closes in the following day inRange = (now >= upper && now <= lower) ? false : true; } return inRange; } //Funkion schaltet das Display im gewaehlten Zeitbereich aus function DisplayOff(){ if (isTimeInRange('22:00:00', '05:00:00')) { setState('fully-tablet-control.0.device.wandtablet.commands.screenOff', true ); } } schedule("*/5 * * * *", function () { // mit */5 werden alle 5 Minuten die Funktionen aufgerufen DisplayOff(); });
-
Hallo
Weiss jemand Bescheid über Fully Kiosk und Amazon Echo Show 15?
Ist das wirklich so, das der Fullybrowser Adapter nicht mit Amazon Echo reagiert? Wenn ich einen Befehl anwähle in den Objekten, dann reagiert es nicht.
Habe es mit Screen on und Screen off versucht.
-
@feuersturm sagte in Fully Kiosk - Nachtabschaltung:
function isTimeInRange(strLower, strUpper) { var now = new Date(); var lower = addTime(strLower); var upper = addTime(strUpper); var inRange = false; if (upper > lower) { // opens and closes in same day inRange = (now >= lower && now <= upper) ? true : false; } else { // closes in the following day inRange = (now >= upper && now <= lower) ? false : true; } return inRange; } //Funkion schaltet das Display im gewaehlten Zeitbereich aus function DisplayOff(){ if (isTimeInRange('22:00:00', '05:00:00')) { setState('fully-tablet-control.0.device.wandtablet.commands.screenOff', true ); } } schedule("*/5 * * * *", function () { // mit */5 werden alle 5 Minuten die Funktionen aufgerufen DisplayOff(); });
Guten Morgen!
Ich habe dein Skript importiert und durch meinen "Screen Off" Datenpunkt ersetzt aber leider passiert nix!
Hast Du eine Idee was ich falsch mache?
Wenn ich das Objekt manuell drücke funktioniert die Screenabschaltung!
Liebe Grüße
Jürgen
-
@jwedenig ```
function isTimeInRange(strLower, strUpper) {
var now = new Date();
var lower = addTime(strLower);
var upper = addTime(strUpper);
var inRange = false;
if (upper > lower) {
// opens and closes in same day
inRange = (now >= lower && now <= upper) ? true : false;
} else {
// closes in the following day
inRange = (now >= upper && now <= lower) ? false : true;
}
return inRange;
}//Funkion schaltet das Display im gewaehlten Zeitbereich aus
function DisplayOff(){
if (isTimeInRange('09:24:00', '05:00:00')) {
setState('fullybrowser.0.192_168_1_218.Commands.screenOff', true );
}
}schedule("*/5 * * * *", function () { // mit */5 werden alle 5 Minuten die Funktionen aufgerufen
DisplayOff();
}); -
15.10.2023, 09:23:26.372 [info ]: javascript.0 (638) Stop script script.js.Weldscripts.Screen.Screen_off 15.10.2023, 09:23:26.378 [info ]: javascript.1 (3500263) Stop script script.js.Weldscripts.Screen.Screen_off 15.10.2023, 09:23:26.545 [info ]: javascript.0 (638) Start javascript script.js.Weldscripts.Screen.Screen_off 15.10.2023, 09:23:26.552 [info ]: javascript.0 (638) script.js.Weldscripts.Screen.Screen_off: registered 0 subscriptions, 1 schedule, 0 messages, 0 logs and 0 file subscriptions 15.10.2023, 09:25:00.047 [error]: javascript.0 (638) at isTimeInRange (script.js.Weldscripts.Screen.Screen_off:4:17) 15.10.2023, 09:25:00.047 [error]: javascript.0 (638) at DisplayOff (script.js.Weldscripts.Screen.Screen_off:20:9) 15.10.2023, 09:25:00.047 [error]: javascript.0 (638) at Object.<anonymous> (script.js.Weldscripts.Screen.Screen_off:27:5)
-
@jwedenig Ich habe da wohl was von den Funktionen vergessen
Füge bitte mal diese beiden Funktionen vor der FunktionisTimeInRange
ein. Ich werde es oben im Code auch noch ergänzen.function currentDate() { var d = new Date(); return new Date(d.getFullYear(), d.getMonth(), d.getDate()); } function addTime(strTime) { var time = strTime.split(':'); var d = currentDate(); d.setHours(time[0]); d.setMinutes(time[1]); d.setSeconds(time[2]); return d; }
Die Funktion DisplayOff wird dann über den
schedule
(ganz unten) alle 5 Minuten aufgerufen. Bei Skriptstart musst du also diese 5 min abwarten bevor etwas passieren kann.Edit:
P.S: Wenn du deinen Code in Codetags packst, ist er besser lesbar -
@feuersturm
super, ich probiers mal -
Dein Skript:
function isTimeInRange(strLower, strUpper) { var now = new Date(); var lower = addTime(strLower); var upper = addTime(strUpper); var inRange = false; if (upper > lower) { // opens and closes in same day inRange = (now >= lower && now <= upper) ? true : false; } else { // closes in the following day inRange = (now >= upper && now <= lower) ? false : true; } return inRange; } //Funkion schaltet das Display im gewaehlten Zeitbereich aus function DisplayOff(){ function currentDate() { var d = new Date(); return new Date(d.getFullYear(), d.getMonth(), d.getDate()); } function addTime(strTime) { var time = strTime.split(':'); var d = currentDate(); d.setHours(time[0]); d.setMinutes(time[1]); d.setSeconds(time[2]); return d; } if (isTimeInRange('16:55:00', '05:00:00')) { setState('fullybrowser.0.192_168_1_218.Commands.screenOff', true ); } } schedule("*/5 * * * *", function () { // mit */5 werden alle 5 Minuten die Funktionen aufgerufen DisplayOff(); });
Meine Fehlermeldung:
15.10.2023, 16:50:00.042 [error]: javascript.0 (638) at isTimeInRange (script.js.Weldscripts.Screen.Screen_off:3:17) 15.10.2023, 16:50:00.042 [error]: javascript.0 (638) at DisplayOff (script.js.Weldscripts.Screen.Screen_off:32:9) 15.10.2023, 16:50:00.042 [error]: javascript.0 (638) at Object.<anonymous> (script.js.Weldscripts.Screen.Screen_off:39:5)
-
@jwedenig da ist dir beim zusammen kopieren ein Fehler unterlaufen. Du hast die currentdate und displayoff Funktion falsch zusammengestellt
Hier ist das vollständige Skript https://forum.iobroker.net/topic/63415/fully-kiosk-nachtabschaltung/9
-
das stimmt hier?
ich versuche es mal, dankefunction currentDate() { var d = new Date(); return new Date(d.getFullYear(), d.getMonth(), d.getDate()); } function addTime(strTime) { var time = strTime.split(':'); var d = currentDate(); d.setHours(time[0]); d.setMinutes(time[1]); d.setSeconds(time[2]); return d; } function isTimeInRange(strLower, strUpper) { var now = new Date(); var lower = addTime(strLower); var upper = addTime(strUpper); var inRange = false; if (upper > lower) { // opens and closes in same day inRange = (now >= lower && now <= upper) ? true : false; } else { // closes in the following day inRange = (now >= upper && now <= lower) ? false : true; } return inRange; } //Funkion schaltet das Display im gewaehlten Zeitbereich aus function DisplayOff(){ if (isTimeInRange('22:00:00', '05:00:00')) { setState('fully-tablet-control.0.device.wandtablet.commands.screenOff', true ); } } schedule("*/5 * * * *", function () { // mit */5 werden alle 5 Minuten die Funktionen aufgerufen DisplayOff(); });