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. JavaScript
  5. Benötige Hilfe bei KlingelScript

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

Benötige Hilfe bei KlingelScript

Geplant Angeheftet Gesperrt Verschoben JavaScript
6 Beiträge 4 Kommentatoren 502 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.
  • B Offline
    B Offline
    backons
    schrieb am zuletzt editiert von
    #1

    Hallo,

    ich habe aktuell folgendes Script mir erschlossen.

    on({id: 'doorbird.0.Doorbell.1.trigger', change: "any"}, function (obj) {
        
        
        setState("vis.0.control.instance", 'FFFFFFFF');
        setState("vis.0.control.data",     'Viewname_Klingel');
        setState("vis.0.control.command",  'changeView');         
        
        setTimeout(function () {
           setState("vis.0.control.instance", 'FFFFFFFF');
           setState("vis.0.control.data",     'Standartview');
           setState("vis.0.control.command",  'changeView');    
        },9000);
    });
    

    Nachdem meine Klingel gedrückt wurde soll soll auf einen View gewechselt werden. Und nach einer Zeit soll dann wieder zurück zu einem anderen View gewechselt werden. Das funktioniert auch alles wie es soll bis auf die Zeit. Egal welchen Wert ( z.B. 9000 oder 90000 oder 900000 ) ich am Ende eingebe der Wechsel auf den Standartview zurück geschieht immer nach circa 6 Sekunden. Ich hätte eigentlich gerne eine Zeit von 2-3 Minuten.
    Was mache ich falsch ?

    madjack84M T 2 Antworten Letzte Antwort
    0
    • B backons

      Hallo,

      ich habe aktuell folgendes Script mir erschlossen.

      on({id: 'doorbird.0.Doorbell.1.trigger', change: "any"}, function (obj) {
          
          
          setState("vis.0.control.instance", 'FFFFFFFF');
          setState("vis.0.control.data",     'Viewname_Klingel');
          setState("vis.0.control.command",  'changeView');         
          
          setTimeout(function () {
             setState("vis.0.control.instance", 'FFFFFFFF');
             setState("vis.0.control.data",     'Standartview');
             setState("vis.0.control.command",  'changeView');    
          },9000);
      });
      

      Nachdem meine Klingel gedrückt wurde soll soll auf einen View gewechselt werden. Und nach einer Zeit soll dann wieder zurück zu einem anderen View gewechselt werden. Das funktioniert auch alles wie es soll bis auf die Zeit. Egal welchen Wert ( z.B. 9000 oder 90000 oder 900000 ) ich am Ende eingebe der Wechsel auf den Standartview zurück geschieht immer nach circa 6 Sekunden. Ich hätte eigentlich gerne eine Zeit von 2-3 Minuten.
      Was mache ich falsch ?

      madjack84M Offline
      madjack84M Offline
      madjack84
      schrieb am zuletzt editiert von
      #2

      @backons hast du mal einen debugtext ausgegeben ob dein timeout für die Rückschaltung verantwortlich ist? Evtl kommt das aus einer andren Richtung?
      Kannst du das mal testen?

      nuc i3, Proxmox, raspimatic (PI3), 15 shellies, shelly 4pro/25/RGB, wled sonoff, 7x xiaomi sensoren, 4xEchos, 4 Tasmota Steckdosen, motionEye, nspanel, Ring, hoymiles usw

      1 Antwort Letzte Antwort
      0
      • B backons

        Hallo,

        ich habe aktuell folgendes Script mir erschlossen.

        on({id: 'doorbird.0.Doorbell.1.trigger', change: "any"}, function (obj) {
            
            
            setState("vis.0.control.instance", 'FFFFFFFF');
            setState("vis.0.control.data",     'Viewname_Klingel');
            setState("vis.0.control.command",  'changeView');         
            
            setTimeout(function () {
               setState("vis.0.control.instance", 'FFFFFFFF');
               setState("vis.0.control.data",     'Standartview');
               setState("vis.0.control.command",  'changeView');    
            },9000);
        });
        

        Nachdem meine Klingel gedrückt wurde soll soll auf einen View gewechselt werden. Und nach einer Zeit soll dann wieder zurück zu einem anderen View gewechselt werden. Das funktioniert auch alles wie es soll bis auf die Zeit. Egal welchen Wert ( z.B. 9000 oder 90000 oder 900000 ) ich am Ende eingebe der Wechsel auf den Standartview zurück geschieht immer nach circa 6 Sekunden. Ich hätte eigentlich gerne eine Zeit von 2-3 Minuten.
        Was mache ich falsch ?

        T Offline
        T Offline
        tempestas
        schrieb am zuletzt editiert von tempestas
        #3

        @backons

        Aktuell wird da ständig ein neuer timeout erstellt, da du ja auch Change any hast.
        Dh , du löst einen timeout aus, wenn die Klingel gedrückt wird und wenn sie losgelassen wird.
        Wenn dann jemand mehrfach klingelt wird es ganz wild.

        Du solltest prüfen, ob der Trigger true ist (damit nicht auch bei loslassen erneut ausgelöst wird), ob bereits die View eingestellt ist und ob ein timeout läuft. Wenn beides nein, dann führe aus ..

        <size="85">ioBroker | 21 Adapter | Ubuntu Server | intel NUC | Homematic CCU2 | Hue | Osram Lightify| Sonos | 2x Instar Cam | Samsung Tab A 2016 im Holzrahmen| 3x Echo dot | 1x Echo | Neato Botvac D5</size>

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

          @backons sagte in Benötige Hilfe bei KlingelScript:

          on({id: 'doorbird.0.Doorbell.1.trigger', change: "any"}, function (obj) {

          Probier mal:

          on({id: 'doorbird.0.Doorbell.1.trigger', change: "ne", val: true}, function (obj) {
          

          Voraussetzung natürlich ist, dass deine id true und false hat; ansonsten halt der Wert der auslösen soll.

          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
          • T tempestas

            @backons

            Aktuell wird da ständig ein neuer timeout erstellt, da du ja auch Change any hast.
            Dh , du löst einen timeout aus, wenn die Klingel gedrückt wird und wenn sie losgelassen wird.
            Wenn dann jemand mehrfach klingelt wird es ganz wild.

            Du solltest prüfen, ob der Trigger true ist (damit nicht auch bei loslassen erneut ausgelöst wird), ob bereits die View eingestellt ist und ob ein timeout läuft. Wenn beides nein, dann führe aus ..

            madjack84M Offline
            madjack84M Offline
            madjack84
            schrieb am zuletzt editiert von
            #5

            @tempestas oder de. Timeout global definieren und immer zuvor stop timeout aufrufen.

            Ansonsten: Bekommt man die Referenz auf den getriggerten timeout?

            nuc i3, Proxmox, raspimatic (PI3), 15 shellies, shelly 4pro/25/RGB, wled sonoff, 7x xiaomi sensoren, 4xEchos, 4 Tasmota Steckdosen, motionEye, nspanel, Ring, hoymiles usw

            1 Antwort Letzte Antwort
            0
            • B Offline
              B Offline
              backons
              schrieb am zuletzt editiert von
              #6

              Danke für die Hilfe !!!!
              Hatte in einem anderen Script den selben Datenpunkt und dort das kurze Timeout... Nach deaktivieren des anderen Scriptes funktioniert es nun

              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

              758

              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