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. [gelöst] Script: Wand-Display ein/aus nach Bewegungsmelder

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    14
    1
    187

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.4k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.3k

[gelöst] Script: Wand-Display ein/aus nach Bewegungsmelder

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
44 Beiträge 19 Kommentatoren 9.3k Aufrufe 2 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.
  • P Offline
    P Offline
    pix
    schrieb am zuletzt editiert von
    #19

    @RobS:

    Hallo zusammen,

    ich habe versucht das obige Skript von Bluefox zur Aktivierung des Wandtablets für meine Zwecke anzupassen:

    // Script zum Schalten des Wand-Displays nach Bewegungsmelder
    
    // Datenpunkt-ID
    var idBewegung = "hm-rpc.1.MEQ1849126.3.MOTION"/*Bewegungsmelder Flur:3.MOTION*/;
    
    // Variablendeklaration und Initialisierung bei Scriptstart
    var display_on = ("hm-rpc.1.MEQ0201171.1.STATE"/*iPad-Starter:1.STATE*/,false);
    var display_off = ("hm-rpc.1.MEQ0201171.1.STATE"/*iPad-Starter:1.STATE*/,true);
    var request = require('request');
    var timer = null;
    
    // Aufruf der Funktion bei Änderung
    on(idBewegung, function(dp) {
        if (timer) {
          clearTimeout(timer);
          timer = null;
       }
    
       if (dp.newState.val) {
          request (display_on); 
       } else {
          timer = setTimeout(function() {
             timer = null;
             request (display_off);
            }, 15 * 60000);
       }
    });
    
    

    leider habe ich hiermit nur einen Haufen Fehlermeldungen im Log und einen Absturz der Javascriptinstanz erreicht.

    Ich habe allerdings auch nicht verstanden, was es mit dem Timer (der Global sein muss) auf sich hat. Verstehe das so, dass da ein extra Skript erforderlich ist!? Habe im Forum nichts konkretes gefunden…

    Ich habe übrigens die stromlose Statusanszeige als Starter des IPads im Einsatz. Nicht wundern "false" ist an und "true" aus. Über die Homematic-Direktverknüpfung funktioniert es auch einwandfrei, nur halt nicht mit einem Timer, der bei erneuter ewegung zurückgesetzt wird. Will außerdem möglichst viele Funktionen auf ioBroker übertragen.

    Vielen Dank für jede Hilfe,

    Beste Grüße, Rob `

    Nee, da kommt einiges durcheinander. Mach lieber so:

    // Script zum Schalten des Wand-Displays nach Bewegungsmelder
    
    // Datenpunkt-ID
    var idBewegung = "hm-rpc.1.MEQ1849126.3.MOTION"/*Bewegungsmelder Flur:3.MOTION*/;
    
    // Variablendeklaration und Initialisierung bei Scriptstart
    var idDisplay = ("hm-rpc.1.MEQ0201171.1.STATE"/*iPad-Starter:1.STATE*/);
    
    var timer = null;
    
    // Aufruf der Funktion bei Änderung
    on(idBewegung, function(dp) {
        if (timer) { // wenn Timer läuft, wird er auf null gesetzt
          clearTimeout(timer);
          timer = null;
       }
    
       if (dp.newState.val) { // wenn erstmals Bewegung 
          setState(idDisplay, false);  // StromloseStatusanzeige kriegt false, also bei dir an
       } else { // wenn erstmals keine Bewegung wird timer gestartet
          timer = setTimeout(function() {
             timer = null;
             setState(idDisplay, true);  // Stausanzeige kriegt ein true, also bei dir aus
            }, 15 * 60 * 1000); // nach 15 * 60s, also 15 Minuten
       }
    });
    
    

    Ein globales Skript brauchst du nicht. Das geht alles hier.

    Gruß

    Pix

    ioBroker auf Ubuntu in Proxmox (früher Mac mini (bis OS X 10.12.6 Sierra), VIS via iOS; angeschlossen: Homematic CCU2, Homepilot 1, ConBee II, einige Wemos, Sonos, Unifi CK+Protect, Homekit, Homebridge; KEIN blockly! Github-Profil

    1 Antwort Letzte Antwort
    0
    • R Offline
      R Offline
      RobS
      schrieb am zuletzt editiert von
      #20

      Super Pix, vielen Dank!

      Es funktioniert einwandfrei.

      Habe übrigens auch dein Skript zum Aktualisieren von Vis im Einsatz und seit vorhin auch die Sayit-Ansage mit Datum, Wetter und Geburtstag.

      Vielen Dank auch dafür, hast mir schon sehr oft geholfen!

      Grüße, Rob

      1 Antwort Letzte Antwort
      0
      • S Offline
        S Offline
        Sven2013
        schrieb am zuletzt editiert von
        #21

        Hallo,

        Ich wollte dieses Script nutzen um mein Wandtablet bei Bewegung des Innenbewegungsmelders für bestimmte Zeit einzuschalten. Bisher mache ich das per Tasker.

        Geht dieses Script dafür?

        Ich weiß nämlich nicht woher ich die 2 variable nehmen muss. (Für das Tablet)

        Wie löst ihr das?

        Gruß Sven

        Gesendet von iPhone mit Tapatalk

        1 Antwort Letzte Antwort
        0
        • S Offline
          S Offline
          Superdad
          schrieb am zuletzt editiert von
          #22

          Hallo,

          ich würde auch gerne wissen, woher ihr

          var display_on = ("hm-rpc.1.MEQ0201171.1.STATE"/iPad-Starter:1.STATE/,false);

          var display_off = ("hm-rpc.1.MEQ0201171.1.STATE"/iPad-Starter:1.STATE/,true);

          nehmt?

          Geht das auch mit einem anderen Tablett?

          Gruss Superdad

          CCU3

          iOBroker auf IntelNUC Proxmox

          1 Antwort Letzte Antwort
          0
          • andreA Offline
            andreA Offline
            andre
            Developer
            schrieb am zuletzt editiert von
            #23

            Der Inhalt der variablen "Display_on" und "Display_off" hängen von den verwendeten Systemen ab. Darin enthalten ist der Aufruf der das Display ein bzw. aus schaltet.

            In meinem Fall habe ich seinerzeit unter Linux auf dem Raspi einen Webserver genutzt und über den Aufruf eines CGI-Scripts per Kommandozeile den HDMI-Ausgang geschaltet.

            Unter Windows 10 nutze ich aktuell EventGhost um ebenfalls über den Aufruf einer URL das Display in den sleep Modus zu bringen.

            In meinem Script wird die URL zum Schalten per request() aufgerufen.

            Im letztendlichen Script von pix für RobS ist es anders gelöst, weil das Display ein Ipad ist. Wie das ein- und ausschalten da funktioniert kann ich aufgrund meiner "Obstallergie" aber nicht sagen. :)

            MfG, André

            Gesendet mit Tapatalk.

            Bitte keine Support-Fragen per PN! Nutzt die öffentliche Kanäle damit auch andere von den Antworten profitieren können!

            1 Antwort Letzte Antwort
            0
            • Alex1808A Offline
              Alex1808A Offline
              Alex1808
              schrieb am zuletzt editiert von
              #24

              Übrigens, falls Android-tablet verwendet, es gibt bei Fully browser ein "Motion" Funktion (funktioniert auch im Hintergrund ;) )

              1 Antwort Letzte Antwort
              0
              • S Offline
                S Offline
                Superdad
                schrieb am zuletzt editiert von
                #25

                Vielen Dank für die Antworten.

                Werde Fully Browser mal testen.

                Gruss Superdad

                CCU3

                iOBroker auf IntelNUC Proxmox

                1 Antwort Letzte Antwort
                0
                • A Offline
                  A Offline
                  andyb
                  schrieb am zuletzt editiert von
                  #26

                  Ich würde auch gerne das script nutzen um mein Wandtablet (android) ein zuschalten.

                  Ich bin Anfänger :mrgreen:

                  Bewegungsmelder ist am Start und mir klar.

                  Auf dem Tablet hab ich "Woli Android" http://woli.asp1.at/ installiert, damit bräuchte ich nur einen UDP Befehl ans Tablet schicken (KNX würde auch gehen.

                  Wie krieg ich den den entsprechenden UDP von iobroker an das Tablet geschickt? Mag mir einer helfen?

                  1 Antwort Letzte Antwort
                  0
                  • bahnuhrB Online
                    bahnuhrB Online
                    bahnuhr
                    Forum Testing Most Active
                    schrieb am zuletzt editiert von
                    #27

                    Klar gibt es die Möglichkeit mit tasker, motion….

                    Aber warum so kompliziert.

                    Einfach Strom an/aus und das Bild ist da.

                    Funktioniert 100%.

                    Also:

                    HM BWM erkennt Bewegung.

                    Script schaltet Aktor beim Tablet an/aus oder umgedreht und das Tablet geht an.

                    Habe ich bei mehreren Tablets so.

                    Und das Tablet dann so einstellen, dass es z.B. nach 15 MIn automatisch aus geht.

                    Fertig.

                    mfg


                    Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                    Danke.
                    gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
                    ScreenToGif :https://www.screentogif.com/downloads.html

                    1 Antwort Letzte Antwort
                    0
                    • F Offline
                      F Offline
                      Fitti
                      schrieb am zuletzt editiert von
                      #28

                      Würde gerne diese Frage noch einmal aufrufen.

                      Woli funktioniert bei mir nicht mehr richtig. Nachdem es Jahre funktionierte, scheint hier nun irgendwo der Wurm drinnen zu sein. Ein Update auf die neueste Version zeigt zwar im Logging die UDP Pakete und Werte an, aber es gibt keine daraus resultierende Funktion. Die Doku ist dazu auch unzureichend.

                      Sei es drum.

                      Die FullyBrowser Motion Funktion geh bei mir im Dunkeln nicht. Also auch sinnfrei hier extra die Prolizenz zu kaufen.

                      Das einfache an und ausschalten gefällt mir - hab es mal ausprobiert und das geht.

                      So, jetzt aber zu meiner Frage: Eigentlich muss das doch jeder als "Problem" haben. Wie steuert ihr denn so per CCU/iobroker euer Android Tabelet?

                      Ich denke hier auch an Lautstärkesteuerung bei Bedarf (Alarme sollen immer laut sein - in der Nacht der Rest aber leise oder aus, usw.), Display-Helligkeiten, usw und sofort.

                      VIele Grüße,

                      Fitti

                      "Es wird die Zeit kommen, da ihr euch entscheiden müsst zwischen dem, was richtig ist, und dem, was bequem ist."
                      Plural von Status ist auch Status!

                      1 Antwort Letzte Antwort
                      0
                      • F Offline
                        F Offline
                        Fitti
                        schrieb am zuletzt editiert von
                        #29

                        Das Problem liegt wohl doch an der CCU2 - warum auch immer.

                        Es zeigte sich, dass sich der Kiosk FullyBrowser prima entwickelt hat. Mit der REST Schnittstelle gibt es auch ein Display on.

                        iobroker und FullyKiosk sind somit jetzt ein unschlagbares Team geworden.

                        Ich benötige eine App weniger auf dem Tablet. Und die App kostet auch nur noch knapp 5€. Gekauft und gut!

                        "Es wird die Zeit kommen, da ihr euch entscheiden müsst zwischen dem, was richtig ist, und dem, was bequem ist."
                        Plural von Status ist auch Status!

                        1 Antwort Letzte Antwort
                        0
                        • 0 Offline
                          0 Offline
                          0018
                          schrieb am zuletzt editiert von
                          #30

                          @Fitti:

                          Mit der REST Schnittstelle gibt es auch ein Display on. `

                          Kannst du kurz beschreiben mit welchen Befehl ich das Display ein bzw ausschalten kann? Bekomme es nicht hin….

                          Danke.

                          Mfg
                          0018

                          1 Antwort Letzte Antwort
                          0
                          • F Offline
                            F Offline
                            Fitti
                            schrieb am zuletzt editiert von
                            #31

                            Klar, gerne.

                            Hier mal meine Funktion:

                            Die IP-Adresse 192.168.123.123 musst Du mit der IP-Adresse des Tablets natürlich anpassen, ist hier nur ein Beispiel.

                            Ebenso das Passwort abcde, welches ich in der App gesetzt habe.

                            callTablet('Off'); //schaltet mein Tablet aus
                            callTablet('On'); //schaltet mein Tablet AN
                            // Die beiden Befehle hintereinander ergeben natürlich keinen Sinn, nehme dass, was Du gerade benötigst. :-)
                            
                            function callTablet(switchTo) {
                            
                                request('http://192.168.123.123:2323/?cmd=screen' + switchTo + '&password=abcde&type=json', function (error, response, body) {
                                    if (error) {log("Fehler beim Zugriff auf das Flur-Tablet: " + error, 'error');}
                                    else {
                                        //console.log("Return: " + body);  //hier drinnen ist die json Rückgabe. Z. B. {"statustext":"Switching the screen on","status":"OK"}
                                        my_obj = JSON && JSON.parse(body) || $.parseJSON(body);
                                        console.log("Status: " + my_obj.statustext + " => " + my_obj.status);
                                    }
                                });
                            }
                            

                            Du kannst es erst einmal in irgendeinem Browser testen:

                            Einschalten:

                            http://192.168.123.123:2323/?cmd=screen … &type=json

                            AUSschalten:

                            http://192.168.123.123:2323/?cmd=screen … &type=json

                            Versuchs mal.

                            PS: Fürs Tablet empfehle ich per FritzBox oder ähnlich immer eine Feste IP -Adresse zu Vergeben!

                            "Es wird die Zeit kommen, da ihr euch entscheiden müsst zwischen dem, was richtig ist, und dem, was bequem ist."
                            Plural von Status ist auch Status!

                            1 Antwort Letzte Antwort
                            0
                            • A Offline
                              A Offline
                              aldoa1
                              schrieb am zuletzt editiert von
                              #32

                              Danke für den super Tipp.

                              Die App ist fast perfekt.

                              Nur ein Problem:

                              Wenn die Haustür klingelt, geht das Display an und der view im vis wechselt auf die Kamera-Ansicht. Nach 60 Sekunden wechselt vis wieder auf das Start-View.

                              Hier kommt es dann zu einem weissen Bildschirm.

                              Was könnte man das Problem lösen?

                              und noch eine Frage:

                              MotionDetection funktioniert nicht. Wie kann ich prüfen, ob es an der fehlenden Kamera-Freigabe liegt? Ich kann in den Einstellungen auch eine ID eintragen. Welche ist das (habe nur die Standard-Kamera des Lenovo Tablet)?

                              1 Antwort Letzte Antwort
                              0
                              • F Offline
                                F Offline
                                Fitti
                                schrieb am zuletzt editiert von
                                #33

                                @aldoa1:

                                Nur ein Problem:

                                Wenn die Haustür klingelt, geht das Display an und der view im vis wechselt auf die Kamera-Ansicht. Nach 60 Sekunden wechselt vis wieder auf das Start-View.

                                Hier kommt es dann zu einem weissen Bildschirm.

                                Was könnte man das Problem lösen? `
                                Hier würde mich sehr interessieren, wie du das gemacht hast - das möchte ich auch noch machen.

                                <u>Aber ich habe zwei Ideen:</u>

                                1.) Lasse doch einfach mal von Fully Kiosk den Cache löschen, wenn eine neue Seite aufgerufen wird. FullyKiosk hat ja eine Web-Adminseite, die du nur mit ip-adresse:2323 erreichst. Dann oben links mit dem Pallettenmenu in die Admin-Settings
                                578_2017-12-28_00_14_21-fully_remote_admin.png
                                Oder du schickst auch per API einen Clearbefehl:

                                http://192.168.123.123:2323/?cmd=clearCache&password=[pass]
                                

                                2.) Wenn das ein Skript macht, dann mache doch einfach ein Reload der Startpage durch FullyKiosk.

                                http://192.168.123.123:2323/?cmd=loadStartURL&password=[pass]
                                

                                Oder rufst die Webseite direkt auf```
                                .../?cmd=loadURL&url=[url]&password=[pass]

                                [quote]
                                und noch eine Frage:

                                MotionDetection funktioniert nicht. Wie kann ich prüfen, ob es an der fehlenden Kamera-Freigabe liegt? Ich kann in den Einstellungen auch eine ID eintragen. Welche ist das (habe nur die Standard-Kamera des Lenovo Tablet)?
                                Meines Verständnis nach ist die ID Dein vergebenes Passwort (welches Du unbedingt vergeben musst!) und Du benötigst die Voll_Version - oder die Standardversion in der Test-Vollversion.
                                578_2017-12-28_00_21_08-fully_remote_admin.png

                                Jedoch: Bei mir ging die Kamera im Dunkeln nicht. Also als es dann doch schon ziemlich dämmrig im Flur war, hatte er nichts mehr gesehen und somit auch nicht freigeschaltet.[/url]

                                "Es wird die Zeit kommen, da ihr euch entscheiden müsst zwischen dem, was richtig ist, und dem, was bequem ist."
                                Plural von Status ist auch Status!

                                1 Antwort Letzte Antwort
                                0
                                • A Offline
                                  A Offline
                                  aldoa1
                                  schrieb am zuletzt editiert von
                                  #34

                                  vielen Dank für Deine Hilfe.

                                  Bewegungsmelder funktioniert nun. Es lag noch am tasker. Den hatte ich vorher mit dem motiondetector. Der Fully Kiosk macht das aber besser.

                                  Der weisse Bildschirm ist zur Zeit weg. Falls es noch Probleme gibt, werde ich Deine Ratschläge umsetzen.

                                  Vielen Dank noch mal für die Hilfe und den tollen Tipp mit dem genialen Fully Kiosk Browser!

                                  1 Antwort Letzte Antwort
                                  0
                                  • A Offline
                                    A Offline
                                    aldoa1
                                    schrieb am zuletzt editiert von
                                    #35

                                    Hier noch mal meine Vorgehensweise mit der Klingel:

                                    Ich habe ein Objekt (Zeichenfolge) angelegt:

                                    createState('States.DoorPi',false);

                                    //Türklingel

                                    on({id:"javascript.0.States.DoorPi"/States.DoorPi/,val: true}, function (obj) {

                                    if (obj.newState.val === true) {

                                    log("Es klingelt an der Haustür");

                                    // Nach 10 Sekunden den Zustand wieder zurücksetzen

                                    setStateDelayed("javascript.0.States.DoorPi"/States.DoorPi/,false,10000);

                                    }

                                    });

                                    Ein Script prüft, ob dieses Objekt geändert wird und macht den Wechsel.

                                    function view_wechsel () {

                                    setState("vis.0.control.command", '{"instance": "FFFFFFFF", "command": "changeView", "data": "03_kamera"}');

                                    // oder

                                    //setState("vis.0.control.instance", 'FFFFFFFF');

                                    //setState("vis.0.control.data", 'DemoView');

                                    //setState("vis.0.control.command", 'changeView'); // muss immer letzte sein

                                    // Nach 50 Sekunden, zeige wieder Start View

                                    setTimeout(function () {

                                    setState("vis.0.control.command", '{"instance": "FFFFFFFF", "command": "changeView", "data": "01_Main"}');

                                    }, 50000);

                                    }

                                    // Gerät überwachen

                                    on({id: 'javascript.0.States.DoorPi', change: "any"}, function (obj) {

                                    if (obj.newState.val === true || obj.newState.val === "true") view_wechsel();

                                    });

                                    Einse sh Datei beim Doorpi wird beim klingeln aufgerufen.

                                    Inhalt:

                                    curl -s -k "http://192.168.167.122:2323/?cmd=screen … &type=json"

                                    curl -s -k "http://192.168.167.2:8087/set/javascrip ... ubscribe=1"

                                    Diese führt den view Wechsel aus. Das script oben wechselt nach 50 Sekunden wieder zum Start-View.

                                    Zusätzlich gibt es ein blockly Script und ruft (wenn javascript.0.States.DoorPi = true) die URL http://192.168.167.122:2323/?cmd=textToSpeech&text=es klingelt an der Haustür&password=xxx&type=json

                                    Dann sagt das Tablet auch noch, dass es geklingelt hat.

                                    MIt Deinen Anmerkungen oben, hätte man es auch einfacher machen können...

                                    H 1 Antwort Letzte Antwort
                                    0
                                    • F Offline
                                      F Offline
                                      Fitti
                                      schrieb am zuletzt editiert von
                                      #36

                                      Ahh, danke. Immer gut zu sehen, wie andere eine Situation lösen.

                                      Ja, Fully Kiosk ist einfach nur genial. Die Sprachausgabe, Screendumps, Sound, WebcamShots, Programmierschnittstelle, Emailbenachrichtigung,… alles was man will. Damit wird iobroker nochmal aufgewertet!

                                      So long,

                                      Fitti

                                      "Es wird die Zeit kommen, da ihr euch entscheiden müsst zwischen dem, was richtig ist, und dem, was bequem ist."
                                      Plural von Status ist auch Status!

                                      1 Antwort Letzte Antwort
                                      0
                                      • M Offline
                                        M Offline
                                        mayer
                                        schrieb am zuletzt editiert von
                                        #37

                                        Bevor ich jetzt das Geld für die Vollversion von Fully investiere hätte ich noch eine Frage: Schaltet Fully die Beleuchtung des Bildschirmes komplett aus oder wird nur voll gedimmt so das im Dunkeln noch die laufende Hintergrundbeleuchtung zu sehen ist?

                                        Danke, mayer

                                        1 Antwort Letzte Antwort
                                        0
                                        • 0 Offline
                                          0 Offline
                                          0018
                                          schrieb am zuletzt editiert von
                                          #38

                                          Du kannst das Display ein/ausschalten über

                                          http://IP_Tablet:2323/?cmd=screenOn&password=xxxx
                                          http://IP_Tablet:2323/?cmd=screenOff&password=xxxx
                                          

                                          Kennt jemand den dazugehörigen Befehl um die Brightness auf einen bestimmten Wert zu setzen?

                                          Mfg
                                          0018

                                          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

                                          475

                                          Online

                                          32.7k

                                          Benutzer

                                          82.4k

                                          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