Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. Fully Kiosk - Nachtabschaltung

    NEWS

    • Neues Video über Aliase, virtuelle Geräte und Kategorien

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    Fully Kiosk - Nachtabschaltung

    This topic has been deleted. Only users with topic management privileges can see it.
    • E
      Erich 1 @DJMarc75 last edited by

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

      W 1 Reply Last reply Reply Quote 0
      • W
        Wildbill @Erich 1 last edited by

        @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

        1 Reply Last reply Reply Quote 0
        • M
          MCU last edited by MCU

          @wildbill
          Motion Detection -> Turn Screen Off in Darkness . Dafür wird PLUS 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

          1 Reply Last reply Reply Quote 1
          • Feuersturm
            Feuersturm last edited by

            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

            M 1 Reply Last reply Reply Quote 0
            • M
              MCU @Feuersturm last edited by

              @feuersturm MIt welchem Script? Und wird dafür die PLUS Variante benötgt?

              Feuersturm 1 Reply Last reply Reply Quote 0
              • Feuersturm
                Feuersturm @MCU last edited by

                @mcu schreibe ich dir heute abend. Bin gerade nicht am Rechner.

                1 Reply Last reply Reply Quote 1
                • Feuersturm
                  Feuersturm last edited by Feuersturm

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

                  Hier 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();
                  });
                  
                  J 1 Reply Last reply Reply Quote 1
                  • S
                    stefu87_CH last edited by stefu87_CH

                    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.

                    1 Reply Last reply Reply Quote 0
                    • J
                      jwedenig Most Active @Feuersturm last edited by

                      @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
                      Bildschirmfoto 2023-10-15 um 09.24.19.png

                      J 1 Reply Last reply Reply Quote 0
                      • J
                        jwedenig Most Active @jwedenig last edited by

                        @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();
                        });

                        J 1 Reply Last reply Reply Quote 0
                        • J
                          jwedenig Most Active @jwedenig last edited by

                          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)
                          
                          Feuersturm 1 Reply Last reply Reply Quote 0
                          • Feuersturm
                            Feuersturm @jwedenig last edited by Feuersturm

                            @jwedenig Ich habe da wohl was von den Funktionen vergessen
                            Füge bitte mal diese beiden Funktionen vor der Funktion isTimeInRange 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 😉

                            J 1 Reply Last reply Reply Quote 0
                            • J
                              jwedenig Most Active @Feuersturm last edited by

                              @feuersturm
                              super, ich probiers mal

                              J 1 Reply Last reply Reply Quote 0
                              • J
                                jwedenig Most Active @jwedenig last edited by

                                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)
                                
                                Feuersturm 1 Reply Last reply Reply Quote 0
                                • Feuersturm
                                  Feuersturm @jwedenig last edited by

                                  @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

                                  J 1 Reply Last reply Reply Quote 0
                                  • J
                                    jwedenig Most Active @Feuersturm last edited by jwedenig

                                    @feuersturm

                                    das stimmt hier?
                                    ich versuche es mal, danke

                                    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();
                                    });
                                    
                                    
                                    1 Reply Last reply Reply Quote 0
                                    • First post
                                      Last post

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    692
                                    Online

                                    32.0k
                                    Users

                                    80.5k
                                    Topics

                                    1.3m
                                    Posts

                                    8
                                    19
                                    1527
                                    Loading More Posts
                                    • Oldest to Newest
                                    • Newest to Oldest
                                    • Most Votes
                                    Reply
                                    • Reply as topic
                                    Log in to reply
                                    Community
                                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                    The ioBroker Community 2014-2023
                                    logo