Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. [Script] Fully Kiosk Browser steuern und Informationen in Datenpunkten

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.8k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.2k

[Script] Fully Kiosk Browser steuern und Informationen in Datenpunkten

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
22 Beiträge 10 Kommentatoren 6.2k Aufrufe 11 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • JB_SullivanJ Offline
    JB_SullivanJ Offline
    JB_Sullivan
    schrieb am zuletzt editiert von
    #5

    Ich habe es mal installiert und es funktioniert :!:

    Wie kann ich aber z.B. den Batteriestand als unterschiedliche Icon`s (4-5 stufig) im VIS darstellen? Sorry für die vielleicht blöde Frage, aber ich stehe noch sehr weit am Anfang mit iobroker.

    ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

    1 Antwort Letzte Antwort
    0
    • ChaotC Offline
      ChaotC Offline
      Chaot
      schrieb am zuletzt editiert von
      #6

      Herzlichen Dank für das geniale Script.

      Rein zum Laden des Akkus ist es zwar recht groß, aber es funktioniert tadellos.

      Wer eine schlanke Variante sucht kann das auch direkt abrufen.

      Auslesen "nur" des Akkustands:

      var request = require('request');
      var link = "http://IPdesTablet:2323/?cmd=deviceInfo&type=json&password=xxxx";
      var state = "javascript.0.Allgemein.Akku_Tablet"/*Akku_Tablet*/;
      
      function fully() {
          request(link, function(error,response, body) {
              if(error) log('Fehler request: ' + error, 'error');
              else {
                  objects = JSON.parse(body);
                  bat = objects.batteryLevel;
                  setState(state, bat);
                  log ("batteryLevel = " + bat);
              }    
          });
      }
      
      fully();
      schedule('*/10 * * * *', fully);
      

      In Zeile 2 mus die IP Adresse und das Passwort eingetragen werden.

      …und für die Steuerung der Schaltsteckdose und die VIS-Ladestandsanzeige werden dann für das View8 Widget noch die Datenpunkte benötigt:

      const idBatt = 'javascript.0.Allgemein.Akku_Tablet'; // Batterielevel in %
      const idPlug = 'sonoff.0.Ladestecker.POWER'; // Ladegerät ein
      const idVis = 'Vis.Batterieanzeige'; // Für Vis
      
      createState(idVis, 0, {
      type: 'number',
      min: 0,
      max: 7,
      role: 'level',
      states: {
      0: 'leer',
      1: '20 %',
      2: '40 %',
      3: '60 %',
      4: '80 %',
      5: 'voll',
      6: 'Ladegerät'
      } 
      });
      
      var level = getState(idBatt).val;
      var plug = getState(idPlug).val;
      
      function batt() {
      var state = 5; // full 80 %
      if(level <= 79) state = 4; // 79 %
      if(level <= 60) state = 3; // 60 %
      if(level <= 40) state = 2; // 40 %
      if(level <= 30) state = 1; // 20 %
      if(level <= 22) state = 0; // empty 20 %
      if(plug) state = 6; // Ladegerät ein
      setState(idVis, state, true);
      if(level >= 90 && plug) setState(idPlug, false);
      if(level <= 30 && !plug) setState(idPlug, true);
      }
      
      batt(); // Skriptstart
      
      on(idBatt, function(dp) {
      level = dp.state.val;
      batt();
      });
      
      on(idPlug, function(dp) {
      plug = dp.state.val;
      batt();
      });
      

      Ich halte meinen Akku zwischen 30 und 90%. Das kann man in Zeile 33 und 34 ändern.

      ioBroker auf NUC unter Proxmox; VIS: 12" Touchscreen und 17" Touch; Lichtsteuerung, Thermometer und Sensoren: Tasmota (39); Ambiente Beleuchtung: WLED (9); Heizung: DECT Thermostate (9) an Fritz 6690; EMS-ESP; 1 Echo V2; 3 Echo DOT; 1 Echo Connect; 2 Echo Show 5; Unifi Ap-Ac Lite.

      1 Antwort Letzte Antwort
      0
      • MicM Offline
        MicM Offline
        Mic
        Developer
        schrieb am zuletzt editiert von
        #7

        @Manolo:

        Ist es möglich das Javascript Interface einzubinden? Damit ließe sich noch viel mehr auslesen und bedienen.

        z.B. wäre es dann auch möglich die Helligkeit des Tabs über ein ioBroker Script zu steuern, oder Bewegungserkennungen aufzuzeichnen. `

        Also lt. https://www.ozerov.de/fully-kiosk-brows … ntegration ist das wohl nur über eine Webseite zu machen, und nicht per ioBroker-Script. D.h. wenn dann müsste man dies direkt im VIS einbauen, aber das ist dann außerhalb des Scopes meines Scripts.

        Lasse mich aber gerne eines besseren belehren.

        1 Antwort Letzte Antwort
        0
        • JB_SullivanJ Offline
          JB_SullivanJ Offline
          JB_Sullivan
          schrieb am zuletzt editiert von
          #8

          @Chaot

          Ich bekomme bei Verwendung deiner beiden Skripte immer diese beiden Fehlermeldungen. Irgend eine Idee was mir das sagen soll?

          18:28:21.698	[warn]	javascript.0 at script.js.common.Batterie_Level:21:13
          18:30:22.324	[warn]	javascript.0 at Request._callback (script.js.common.KioskBatterie:11:13)
          

          EDIT: Ich glaube ich weiß woran das liegen kann. Vermutlich muss dieser Datenpunkt von Hand angelegt werden oder?

          var state = "javascript.0.Allgemein.Akku_Tablet"/*Akku_Tablet*/;
          

          der ist nämlich nicht da - aber wie macht man sowas?

          ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

          1 Antwort Letzte Antwort
          0
          • MicM Offline
            MicM Offline
            Mic
            Developer
            schrieb am zuletzt editiert von
            #9

            @JB_Sullivan:

            Wie kann ich aber z.B. den Batteriestand als unterschiedliche Icons (4-5 stufig) im VIS darstellen? Sorry für die vielleicht blöde Frage, aber ich stehe noch sehr weit am Anfang mit iobroker.

            Es gibt hier im Forum mindestens ein Script, welches das macht, es legt States an (z.B. Ladezustand 0-10% -> Bild 1, 20-30% -> Bild 2). Musst mal danach suchen.

            Man kann es auch noch anders lösen, wie ich finde eleganter:

            1. Ein Batteriesymbol im VIS einfügen

            2. Darüber ein Widget basic - Bar. Dieses Widget muss man dann von der Größe her so anpassen, dass es genau "in" die Batterie passt, dann vergibt man noch eine andere Farbe, z.B. ein grün. Als Objekt-ID wählt man dann javascript.0.mic.FullyBrowser.Info.batteryLevel

            Dadurch wird der Ladezustand stets anhand des Balkens exakt angezeigt.

            1 Antwort Letzte Antwort
            0
            • ChaotC Offline
              ChaotC Offline
              Chaot
              schrieb am zuletzt editiert von
              #10

              Das klingt so als wäre der Datenpunkt nicht angelegt.

              Den musst du (wenn ich mich richtig erinnere) manuell anlegen.

              ioBroker auf NUC unter Proxmox; VIS: 12" Touchscreen und 17" Touch; Lichtsteuerung, Thermometer und Sensoren: Tasmota (39); Ambiente Beleuchtung: WLED (9); Heizung: DECT Thermostate (9) an Fritz 6690; EMS-ESP; 1 Echo V2; 3 Echo DOT; 1 Echo Connect; 2 Echo Show 5; Unifi Ap-Ac Lite.

              1 Antwort Letzte Antwort
              0
              • JB_SullivanJ Offline
                JB_SullivanJ Offline
                JB_Sullivan
                schrieb am zuletzt editiert von
                #11

                Ich habe es gerade selber bemerkt - siehe oben.

                Wie macht man sowas - Datenpunkt per Hand anlegen? Sorry aber wie bereits gesagt ich bin absoluter Anfänger.

                So Datenpunkt habe ich hin bekommen - naja so halbwegs. Es wird mir zwar der aktuelle Wert vom Tablet dort reingeschrieben, jedoch steht im Log

                javascript.0	2018-12-09 19:50:01.090	warn	at process._tickCallback (internal/process/next_tick.js:181:9)
                javascript.0	2018-12-09 19:50:01.090	warn	at _combinedTickCallback (internal/process/next_tick.js:139:11)
                javascript.0	2018-12-09 19:50:01.090	warn	at endReadableNT (_stream_readable.js:1064:12)
                javascript.0	2018-12-09 19:50:01.090	warn	at IncomingMessage.emit (events.js:208:7)
                javascript.0	2018-12-09 19:50:01.090	warn	at emitNone (events.js:111:20)
                javascript.0	2018-12-09 19:50:01.090	warn	at Object.onceWrapper (events.js:313:30)
                javascript.0	2018-12-09 19:50:01.090	warn	at IncomingMessage. <anonymous>(C:\ioBroker\node_modules\iobroker.javascript\node_modules\request\request.js:1083:12)
                javascript.0	2018-12-09 19:50:01.090	warn	at Request.emit (events.js:211:7)
                javascript.0	2018-12-09 19:50:01.090	warn	at emitOne (events.js:116:13)
                javascript.0	2018-12-09 19:50:01.090	warn	at Request. <anonymous>(C:\ioBroker\node_modules\iobroker.javascript\node_modules\request\request.js:1161:10)
                javascript.0	2018-12-09 19:50:01.090	warn	at Request.emit (events.js:214:7)
                javascript.0	2018-12-09 19:50:01.090	warn	at emitTwo (events.js:126:13)
                javascript.0	2018-12-09 19:50:01.090	warn	at Request.self.callback (C:\ioBroker\node_modules\iobroker.javascript\node_modules\request\request.js:185:22)
                javascript.0	2018-12-09 19:50:01.090	warn	at Request._callback (script.js.common.KioskBatterie:11:13)
                javascript.0	2018-12-09 19:50:01.090	warn	Wrong type of javascript.0.Allgemein.Akku_Tablet: "number". Please fix, while deprecated and will not work in next versions.</anonymous></anonymous>
                

                Was auch immer das zu bedeuten hat, ich vermute das dass der Grund dafür ist, das die Auswertung immer ein "Ladegerät(6)" liefert, obwohl der Akkustand bei 71% liegt. An welchen Schrauben muss ich jetzt noch drehen, damit es funktioniert?

                ioBroker auf Intel Core i3-5005U NUC und Windwos10 Pro

                1 Antwort Letzte Antwort
                0
                • MicM Offline
                  MicM Offline
                  Mic
                  Developer
                  schrieb am zuletzt editiert von
                  #12

                  <size size="150">Update - Script-Version 0.3</size>

                  Der Fully-Browser wird aktiv weiterentwickelt und es kommen wohl regelmäßig neue Info-States hinzu, wie zuletzt locationLatitude, locationLongitude, etc.). Ich habe daher das Script so umgestellt, dass neu hinzukommende Infos automatisch als States angelegt werden.

                  https://github.com/Mic-M/iobroker.fully-kiosk-browser-script/blob/master/fully-kiosk-browser-script.js

                  1 Antwort Letzte Antwort
                  0
                  • CKMartensC Offline
                    CKMartensC Offline
                    CKMartens
                    schrieb am zuletzt editiert von
                    #13

                    Hallo,

                    ich hab das Script heute mal testen wollen. Leider kommt im Log nur der Fehler und es werden keine Datenpunkte angelegt.

                    JavaScript.js.Vis.Steuerung_Fully-Browser: Fully Browser: Folgender Fehler bei http-Request aufgetreten: Error: ETIMEDOUT
                    
                    1 Antwort Letzte Antwort
                    0
                    • MicM Offline
                      MicM Offline
                      Mic
                      Developer
                      schrieb am zuletzt editiert von
                      #14

                      @CKMartens:

                      ich hab das Script heute mal testen wollen. Leider kommt im Log nur der Fehler und es werden keine Datenpunkte angelegt.

                      JavaScript.js.Vis.Steuerung_Fully-Browser: Fully Browser: Folgender Fehler bei http-Request aufgetreten: Error: ETIMEDOUT
                      ```` `  
                      

                      Wird gerade auf Github behandelt, daher verweise ich, damit nicht doppelt geschrieben werden muss:

                      https://github.com/Mic-M/iobroker.fully … t/issues/1

                      1 Antwort Letzte Antwort
                      0
                      • ChaotC Offline
                        ChaotC Offline
                        Chaot
                        schrieb am zuletzt editiert von
                        #15

                        @JB_Sullivan:

                        Was auch immer das zu bedeuten hat, ich vermute das dass der Grund dafür ist, das die Auswertung immer ein "Ladegerät(6)" liefert, obwohl der Akkustand bei 71% liegt. An welchen Schrauben muss ich jetzt noch drehen, damit es funktioniert? `

                        Poste doch mal deine Veränderung am Script. Vielleicht ist es dort zu erkennen.

                        ioBroker auf NUC unter Proxmox; VIS: 12" Touchscreen und 17" Touch; Lichtsteuerung, Thermometer und Sensoren: Tasmota (39); Ambiente Beleuchtung: WLED (9); Heizung: DECT Thermostate (9) an Fritz 6690; EMS-ESP; 1 Echo V2; 3 Echo DOT; 1 Echo Connect; 2 Echo Show 5; Unifi Ap-Ac Lite.

                        1 Antwort Letzte Antwort
                        0
                        • arteckA Offline
                          arteckA Offline
                          arteck
                          Developer Most Active
                          schrieb am zuletzt editiert von
                          #16

                          ich habe angefangen dies ganze in einen Adapter zu pressen.. ich sag bescheid

                          zigbee hab ich, zwave auch, nuc's genauso und HA auch

                          1 Antwort Letzte Antwort
                          0
                          • arteckA Offline
                            arteckA Offline
                            arteck
                            Developer Most Active
                            schrieb am zuletzt editiert von
                            #17

                            fettisch

                            viewtopic.php?f=36&t=19466

                            zigbee hab ich, zwave auch, nuc's genauso und HA auch

                            1 Antwort Letzte Antwort
                            0
                            • MicM Offline
                              MicM Offline
                              Mic
                              Developer
                              schrieb am zuletzt editiert von
                              #18

                              Top! Dachte mir auch, das wäre ideal für einen Adapter, danke noch mal Arteck dass Du Dich dem annimmst!

                              1 Antwort Letzte Antwort
                              0
                              • B Offline
                                B Offline
                                Buddinski88
                                schrieb am zuletzt editiert von
                                #19

                                @Chaot:

                                Herzlichen Dank für das geniale Script.

                                Rein zum Laden des Akkus ist es zwar recht groß, aber es funktioniert tadellos.

                                Wer eine schlanke Variante sucht kann das auch direkt abrufen.

                                Auslesen "nur" des Akkustands:

                                var request = require('request');
                                var link = "http://IPdesTablet:2323/?cmd=deviceInfo&type=json&password=xxxx";
                                var state = "javascript.0.Allgemein.Akku_Tablet"/*Akku_Tablet*/;
                                
                                function fully() {
                                    request(link, function(error,response, body) {
                                        if(error) log('Fehler request: ' + error, 'error');
                                        else {
                                            objects = JSON.parse(body);
                                            bat = objects.batteryLevel;
                                            setState(state, bat);
                                            log ("batteryLevel = " + bat);
                                        }    
                                    });
                                }
                                
                                fully();
                                schedule('*/10 * * * *', fully);
                                

                                In Zeile 2 mus die IP Adresse und das Passwort eingetragen werden.

                                …und für die Steuerung der Schaltsteckdose und die VIS-Ladestandsanzeige werden dann für das View8 Widget noch die Datenpunkte benötigt:

                                const idBatt = 'javascript.0.Allgemein.Akku_Tablet'; // Batterielevel in %
                                const idPlug = 'sonoff.0.Ladestecker.POWER'; // Ladegerät ein
                                const idVis = 'Vis.Batterieanzeige'; // Für Vis
                                
                                createState(idVis, 0, {
                                type: 'number',
                                min: 0,
                                max: 7,
                                role: 'level',
                                states: {
                                0: 'leer',
                                1: '20 %',
                                2: '40 %',
                                3: '60 %',
                                4: '80 %',
                                5: 'voll',
                                6: 'Ladegerät'
                                } 
                                });
                                
                                var level = getState(idBatt).val;
                                var plug = getState(idPlug).val;
                                
                                function batt() {
                                var state = 5; // full 80 %
                                if(level <= 79) state = 4; // 79 %
                                if(level <= 60) state = 3; // 60 %
                                if(level <= 40) state = 2; // 40 %
                                if(level <= 30) state = 1; // 20 %
                                if(level <= 22) state = 0; // empty 20 %
                                if(plug) state = 6; // Ladegerät ein
                                setState(idVis, state, true);
                                if(level >= 90 && plug) setState(idPlug, false);
                                if(level <= 30 && !plug) setState(idPlug, true);
                                }
                                
                                batt(); // Skriptstart
                                
                                on(idBatt, function(dp) {
                                level = dp.state.val;
                                batt();
                                });
                                
                                on(idPlug, function(dp) {
                                plug = dp.state.val;
                                batt();
                                });
                                

                                Ich halte meinen Akku zwischen 30 und 90%. Das kann man in Zeile 33 und 34 ändern. `

                                Vielen Dank dafür! Auch an den Ersteller des Skripts :-)

                                1 Antwort Letzte Antwort
                                0
                                • A Offline
                                  A Offline
                                  aleks-83
                                  schrieb am zuletzt editiert von
                                  #20

                                  Super !
                                  Vielen Dank für das Script.
                                  Läuft 1a.

                                  Ich würde jetzt gerne noch die Bildschirmhelligkeit steuern.
                                  Hat das schon jemand geschafft?

                                  Im Javascript gibt es ja offenbar die Möglichkeit mit

                                  void fully.setScreenBrightness(float level)
                                  

                                  = Dell Optiplex Micro - 10GB RAM - 200GB SSD - Debian VM =
                                  = Node.js v20.18.3 = NPM 10.2.3 = JS Controller 7.0.6 =

                                  Ubiquiti UAP-AC-LR - UAP-AC-Lite - Synology DS716+II - Fritz!Box 7490
                                  Glasfaser 400

                                  1 Antwort Letzte Antwort
                                  0
                                  • MicM Offline
                                    MicM Offline
                                    Mic
                                    Developer
                                    schrieb am zuletzt editiert von
                                    #21

                                    Es gibt in der Zwischenzeit einen Adapter, am besten stellst Du dort noch mal die Frage: https://forum.iobroker.net/topic/17359/aufruf-fullybrowser-adapter/222

                                    Wobei ich gestehen muss, dass ich bisher zu faul war, diesen zu installieren, weil mein Script so zuverlässig läuft...

                                    1 Antwort Letzte Antwort
                                    0
                                    • A Offline
                                      A Offline
                                      AndreasE112
                                      schrieb am zuletzt editiert von
                                      #22

                                      Hallo mit dem neuesten Update von JS müsste glaub ich das ACK flack gesetzt werden...
                                      ich bekomme nun immer diese Fehlermeldungen:

                                      	Read-only state "javascript.0.mic.FullyBrowser.Info.appFreeMemory" has been written without ack-flag with value "90088816"
                                      javascript.0
                                      	2021-10-12 18:06:00.466	warn	Read-only state "javascript.0.mic.FullyBrowser.Info.kioskLocked" has been written without ack-flag with value "false"
                                      javascript.0
                                      	2021-10-12 18:06:00.465	warn	Read-only state "javascript.0.mic.FullyBrowser.Info.SSID" has been written without ack-flag with value ""FRITZ!Box 7362 SL""
                                      javascript.0
                                      	2021-10-12 18:06:00.463	warn	Read-only state "javascript.0.mic.FullyBrowser.Info.screenBrightness" has been written without ack-flag with value "25"
                                      javascript.0
                                      	2021-10-12 18:06:00.462	warn	Read-only state "javascript.0.mic.FullyBrowser.Info.locationProvide" has been written without ack-flag with value "network"
                                      javascript.0
                                      	2021-10-12 18:06:00.461	warn	Read-only state "javascript.0.mic.FullyBrowser.Info.currentTabIndex" has been written without ack-flag with value "0"
                                      javascript.0
                                      	2021-10-12 18:06:00.460	warn	Read-only state "javascript.0.mic.FullyBrowser.Info.displayWidthPixels" has been written without ack-flag with value "1280"
                                      javascript.0
                                      	2021-10-12 18:06:00.459	warn	Read-only state "javascript.0.mic.FullyBrowser.Info.androidSdk" has been written without ack-flag with value "19"
                                      javascript.0
                                      	2021-10-12 18:06:00.458	warn	Read-only state "javascript.0.mic.FullyBrowser.Info.lastAppStart" has been written without ack-flag with value "12.10.2021 02:00:39"
                                      javascript.0
                                      	2021-10-12 18:06:00.457	warn	Read-only state "javascript.0.mic.FullyBrowser.Info.isDeviceAdmin" has been written without ack-flag with value "true"
                                      javascript.0
                                      	2021-10-12 18:06:00.456	warn	Read-only state "javascript.0.mic.FullyBrowser.Info.screenOrientation" has been written without ack-flag with value "90"
                                      javascript.0
                                      	2021-10-12 18:06:00.454	warn	Read-only state "javascript.0.mic.FullyBrowser.Info.isInForcedSleep" has been written without ack-flag with value "false"
                                      javascript.0
                                      	2021-10-12 18:06:00.453	warn	Read-only state "javascript.0.mic.FullyBrowser.Info.isPlugged" has been written without ack-flag with value "true"
                                      

                                      könnte man das vielleicht anpassen ?
                                      Ansonsten ein Super Script :+1:

                                      viele Grüße

                                      Andreas

                                      1 Antwort Letzte Antwort
                                      0
                                      Antworten
                                      • In einem neuen Thema antworten
                                      Anmelden zum Antworten
                                      • Älteste zuerst
                                      • Neuste zuerst
                                      • Meiste Stimmen


                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      643

                                      Online

                                      32.4k

                                      Benutzer

                                      81.5k

                                      Themen

                                      1.3m

                                      Beiträge
                                      Community
                                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                      ioBroker Community 2014-2025
                                      logo
                                      • Anmelden

                                      • Du hast noch kein Konto? Registrieren

                                      • Anmelden oder registrieren, um zu suchen
                                      • Erster Beitrag
                                        Letzter Beitrag
                                      0
                                      • Home
                                      • Aktuell
                                      • Tags
                                      • Ungelesen 0
                                      • Kategorien
                                      • Unreplied
                                      • Beliebt
                                      • GitHub
                                      • Docu
                                      • Hilfe