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. Visualisierung
  4. Pincode Eingabe Alarmanlage

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    328

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.5k

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

Pincode Eingabe Alarmanlage

Geplant Angeheftet Gesperrt Verschoben Visualisierung
56 Beiträge 25 Kommentatoren 14.5k 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.
  • SmarthomeMFS Offline
    SmarthomeMFS Offline
    SmarthomeMF
    schrieb am zuletzt editiert von
    #7

    Hallo zusammen

    Habe eine Frage die nicht ganz, sondern nur teilweise mit der Sache hier zu tun hat.

    Ich möchte eine Pin Abfrage für den Türöffner machen.

    Dafür werde ich ein Script brauchen.

    kann man das auf einen Teil eures Scriptes aufbauen? (Pin Abfrage)

    Bin kein Programmierer und kenne mich nur bedingt mit Scripete aus.

    Daher meine bitte an euch ob mir da wer helfen kann.

    Danke

    Max

    ioBroker auf einem NUC ,16GB RAM, 120GB SSD) mit Proxmox
    Cloud Pro, iot, Alexa, Sonos, sonoff, Fronius, Harmony, Doorbird, Shelly, Hue, Loxone, Mihome, …

    1 Antwort Letzte Antwort
    0
    • PeoplesP Offline
      PeoplesP Offline
      Peoples
      schrieb am zuletzt editiert von
      #8

      Hi,

      wenn ich dich richtig verstanden habe möchtest du aus dem Script oben den Teil rausnehmen der die Zahlenkombi abfragt und bei richtiger Eingabe dann den Türöffner betätigt?

      Wenn dem so ist kann ich das mit ja beantworten das würde gehen ob es sicher ist sei aber mal dahin gestellt :D

      Gruß

      Steffen

      Ich beantworte keine Fragen zu Themen via PN

      1 Antwort Letzte Antwort
      0
      • SmarthomeMFS Offline
        SmarthomeMFS Offline
        SmarthomeMF
        schrieb am zuletzt editiert von
        #9

        Hallo

        Danke für die rasche Antwort.

        Ja ich möchte, wenn ich auf den Taster für die Tür drücke das dann eine Pin Abfrage gemacht wird.

        Es soll nur eine kleine Sicherheit sein das das nicht jeder machen kann.

        Aber in erster Linie soll es davor schützen das man unabsichtlich auf den Taster kommt und dann die Tür aufmacht.

        Wenn du mir dabei helfen würdest wäre ich sehr froh.

        Danke

        Max

        ioBroker auf einem NUC ,16GB RAM, 120GB SSD) mit Proxmox
        Cloud Pro, iot, Alexa, Sonos, sonoff, Fronius, Harmony, Doorbird, Shelly, Hue, Loxone, Mihome, …

        1 Antwort Letzte Antwort
        0
        • rantanplanR Offline
          rantanplanR Offline
          rantanplan
          schrieb am zuletzt editiert von
          #10

          Hallo SmarthomeMF

          Schau mal hier.http://forum.iobroker.net/viewtopic.php … pin#p47264

          Vielleicht geht das als Grundlage.

          Grüße

          Rantanplan

          CCU3 / MS Server 2019(VM) / Scripten mit Blockly

          1 Antwort Letzte Antwort
          0
          • SmarthomeMFS Offline
            SmarthomeMFS Offline
            SmarthomeMF
            schrieb am zuletzt editiert von
            #11

            danke für den Tipp

            Max

            ioBroker auf einem NUC ,16GB RAM, 120GB SSD) mit Proxmox
            Cloud Pro, iot, Alexa, Sonos, sonoff, Fronius, Harmony, Doorbird, Shelly, Hue, Loxone, Mihome, …

            1 Antwort Letzte Antwort
            0
            • PeoplesP Offline
              PeoplesP Offline
              Peoples
              schrieb am zuletzt editiert von
              #12

              Hi,

              hab mal das was nicht benötigt wird rausgelöscht. So sollte es gehen habs aber nicht getestet:

              // -----------------------------------------------------------------------------
              // allgemeine Variablen
              // -----------------------------------------------------------------------------
              var logging = true;                                                        // Logging on/off
              var instanz = 'javascript.0';  instanz = instanz + '.';                     // 
              
              var pfad0 =     'Tueroeffner.Pin.';                        // Pfad innerhalb der Instanz 
              
              // -----------------------------------------------------------------------------
              // Variablen für Pin-Abfrage
              // -----------------------------------------------------------------------------
              var PinReturn = 0;                  // Status der Returntaste (0 - #-Taste sichtbar || 1 - Returntaste sichtbar)
              var PinTast = "";                   // Inhalt der Eingabe
              var PinTemp ="";                    // Puffer für eingegebe Ziffern
              var PinLae = 0;                     // Pin-Länge bei Eingabe
              
              var PinState = false ;              // Eingabestatus - Eingabe beginnt nach Taste '#' und wird mit Taste '#' abgeschlossen
              var PinFehl =false;                 // Statusflag für fehlerhafte Eingabe
              var PinAnz = "";                    // Angezeiger 'Displaytext' z.B. ****
              var PinAnzStat = 0;                 // Status der PinAnzeige im Display (0-Ruhe | 1-Start [grau] | 2-richtig [gruen] | 3-falsch [rot])
              
              var PinSoll = 1111;                 // Pin die zur Deaktivierung der Alarmanlage benötigt wird
              
              // -----------------------------------------------------------------------------
              // Variablen für Alarmstatus
              // -----------------------------------------------------------------------------
              var logging = true; 
              
              // -----------------------------------------------------------------------------
              // Objekte
              // -----------------------------------------------------------------------------
              
              // Objekte für Pin-Eingabe
              createState(pfad0 + 'PinSelect', "" , {name: 'Pin-Eingabe'});
              createState(pfad0 + 'Pin', '0000' ,  {name: 'Pin'});
              createState(pfad0 + 'PinFehler', false ,  {name: 'Pin-Fehler'});
              createState(pfad0 + 'PinAnzStat', 0 ,  {name: 'PinAnzeigeStatus'});
              createState(pfad0 + 'PinAnz', '' ,  {name: 'Pin-Anzeige'});
              createState(pfad0 + 'PinReturn', '' ,  {name: 'Pin-ReturnTaste'});
              
              // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
              // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
              // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
              // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
              
              // #############################################################################
              // #                                                                           #
              // #  Pin-Abfrage                                                              #
              // #                                                                           #
              // #############################################################################
              
              on((instanz + pfad0 + 'PinSelect'), function (dp) {
                  if (dp.newState.val === 0 || dp.newState.val === 1 || dp.newState.val === 2 || dp.newState.val === 3 || dp.newState.val === 4 || dp.newState.val === 5 || dp.newState.val === 6 || dp.newState.val === 7 || dp.newState.val === 8 || dp.newState.val === 9) {
                      PinTast = dp.newState.val;
                      PinEingabe();
                  }  
                  if (dp.newState.val === 'E') {
                      PinPruef();
                  }      
                  if (dp.newState.val === 'R') {
                      PinReset();  
                  }      
              });
              
              function PinEingabe () {
                  PinTemp = (PinTemp + PinTast);
                  PinAnz = (PinAnz + '*');
                  setState(pfad0 + 'PinAnz',PinAnz);
                  PinLae = (PinLae +1) ;
              }
              
              function unscharf(){
                  setState(pfad0 + 'PinAnzStat', PinAnzStat);
                  setState(pfad0 + 'PinReturn', PinReturn);
              ///////////////////////////////////////////////////// Hier musst du dann deinen Türöffner auf machen reinschreiben    
              }
              
              function PinPruef() {
                  if (PinTemp == PinSoll) {
                      if(logging) log('PinEingabe erfolgreich');
                      PinAnzStat = 2;
                      PinReturn = 3;
                      unscharf();
              
                      setTimeout(function() {
              
                          PinReset();
                      }, 5 * 1000);
              
                  } else {
                      if(logging) log('PinEingabe Fehler');
                      PinReset();
                  }
              }    
              
              function PinReset() {
                      PinReturn = 0;
                      PinLae=0;
                      PinAnzStat=0;
                      PinAnz="";
                      PinTemp="";
                      setState(pfad0 + 'PinAnz', PinReturn);
                      setState(pfad0 + 'PinAnzStat', PinAnzStat);
                      setState(pfad0 + 'PinAnz', PinAnz);
                      setState(pfad0 + 'PinReturn', PinReturn);      
              }
              

              Bei unscharf musst du dann deine auszulösende Aktion reinschreiben ala' "Tür Auf!"

              Gruß

              Steffen

              Ich beantworte keine Fragen zu Themen via PN

              1 Antwort Letzte Antwort
              0
              • M Offline
                M Offline
                maxx1976
                schrieb am zuletzt editiert von
                #13

                Hallo peoples

                Ich finde deine Visualisierung sehr ansprechend und möchte sie gerne bei mir verwenden.

                Leider lässt sich die View nicht installieren. Es kommt immer die Fehlermeldung "Cannot render view vAlarmanlage. Invalid settings"

                Woran kann das liegen hast du eine Idee?

                Danke

                Maxx

                1 Antwort Letzte Antwort
                0
                • Homer.J.H Offline
                  Homer.J.H Offline
                  Homer.J.
                  schrieb am zuletzt editiert von
                  #14

                  Ist kein View sondern ein Widget.

                  Grüße

                  1 Antwort Letzte Antwort
                  0
                  • smartboartS Offline
                    smartboartS Offline
                    smartboart
                    schrieb am zuletzt editiert von
                    #15

                    Hallo, hat das Script mal jemand getestet und für funktionsfähig befunden?

                    Z.B wird diese Variable nicht verarbeitet und der State für die Fehlerhafte Pineingabe auch nicht gestezt.

                    var PinFehl

                    function PinPruef() {
                        if (PinTemp == PinSoll) {
                            if(logging) log('PinEingabe erfolgreich');
                            PinAnzStat = 2;
                            PinReturn = 3;
                            unscharf();
                    
                            setTimeout(function() {
                    
                                PinReset();
                            }, 5 * 1000);
                    
                        } else {
                            if(logging) log('PinEingabe Fehler');
                            PinReset();
                        }
                    }   
                    
                    1 Antwort Letzte Antwort
                    0
                    • M Offline
                      M Offline
                      maxx1976
                      schrieb am zuletzt editiert von
                      #16

                      Danke, damit hat es jetzt geklappt.

                      Allerdings hat das script bei mir einen Fehler. Bei einer Pineingabe wird die Zahl immer 2x eingelesen. Das liegt daran, dass die Funktion PinEingabe zuerst durchlaufen wird und danach erst die eigenliche Pinabfrage.

                      Wie kann ich das lösen?

                      lg

                      Maxx

                      1 Antwort Letzte Antwort
                      0
                      • smartboartS Offline
                        smartboartS Offline
                        smartboart
                        schrieb am zuletzt editiert von
                        #17

                        Habe es jetzt so zum laufen gebracht..

                        // -----------------------------------------------------------------------------
                        // allgemeine Variablen
                        // -----------------------------------------------------------------------------
                        var logging = true;                                                        // Logging on/off
                        var instanz = 'javascript.0';  instanz = instanz + '.Alarm';                     // 
                        
                        var pfad0 =     'alarm.Pin.';                        // Pfad innerhalb der Instanz 
                        
                        // -----------------------------------------------------------------------------
                        // Variablen für Pin-Abfrage
                        // -----------------------------------------------------------------------------
                        var PinTast = "";                   // Inhalt der Eingabe
                        var PinTemp ="";                    // Puffer für eingegebe Ziffern
                        var PinLae = 0;                     // Pin-Länge bei Eingabe
                        
                        var PinState = false ;              // Eingabestatus - Eingabe beginnt nach Taste '#' und wird mit Taste '#' abgeschlossen
                        var PinFehl =false;                 // Statusflag für fehlerhafte Eingabe
                        var PinAnz = "";                    // Angezeiger 'Displaytext' z.B. ****
                        var PinAnzStat = 0;                 // Status der PinAnzeige im Display (0-Ruhe | 1-Start [grau] | 2-richtig [gruen] | 3-falsch [rot])
                        
                        var PinSoll = 1111;                 // Pin die zur Deaktivierung der Alarmanlage benötigt wird
                        
                        // -----------------------------------------------------------------------------
                        // Objekte
                        // -----------------------------------------------------------------------------
                        
                        // Objekte für Pin-Eingabe
                        createState(pfad0 + 'PinSelect', "" , {name: 'Pin-Eingabe'});
                        createState(pfad0 + 'Pin', '0000' ,  {name: 'Pin'});
                        createState(pfad0 + 'PinFehler', false ,  {name: 'Pin-Fehler'});
                        createState(pfad0 + 'PinAnzStat', 1 ,  {name: 'PinAnzeigeStatus'});
                        createState(pfad0 + 'PinAnz', '' ,  {name: 'Pin-Anzeige'});
                        createState(pfad0 + 'VisKeyPad', '' ,  {name: 'State für Vis Keypad Sichtbar'}); //State für Vis Keypad Sichtbar wird von Button in Vis beschrieben und bei unscharf zurück gesetzt
                        
                        // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                        // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                        // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                        // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                        
                        // #############################################################################
                        // #                                                                           #
                        // #  Pin-Abfrage                                                              #
                        // #                                                                           #
                        // #############################################################################
                        
                        on('javascript.0.alarm.Pin.PinSelect', function (dp) {
                            if (dp.newState.val === 0 || dp.newState.val === 1 || dp.newState.val === 2 || dp.newState.val === 3 || dp.newState.val === 4 || dp.newState.val === 5 || dp.newState.val === 6 || dp.newState.val === 7 || dp.newState.val === 8 || dp.newState.val === 9) {
                                PinTast = dp.newState.val;
                                PinEingabe();
                            }  
                            if (dp.newState.val === 'E') {
                                PinPruef();
                            }      
                            if (dp.newState.val === 'R') {
                                PinReset();  
                            }      
                        });
                        
                        function PinEingabe () {
                            PinTemp = (PinTemp + PinTast);
                            PinAnz = (PinAnz + '*');
                            setState('javascript.0.alarm.Pin.PinAnz', PinAnz);
                            PinLae = (PinLae +1) ;
                        }
                        
                        function unscharf(){
                            setState('javascript.0.alarm.Pin.PinAnzStat',1);
                            setState('javascript.0.alarm.in.disable', true);
                            setState('javascript.0.alarm.Pin.VisKeyPad', false);
                             if(logging) log('Deaktivierung / Pineingabe erfolgreich');
                        ///////////////////////////////////////////////////// Hier musst du dann deinen Türöffner auf machen reinschreiben    
                        }
                        
                        function PinPruef() {
                            if (PinTemp == PinSoll) {
                                if(logging) log('PinEingabe erfolgreich');
                                PinAnzStat = 1;
                                unscharf();
                        
                                setTimeout(function() {
                        
                                    PinReset();
                                }, 10 * 1000);
                        
                            } else {
                                if(logging) log('PinEingabe Fehler');
                                PinAnzStat = 2;
                                setState('javascript.0.alarm.Pin.PinAnzStat', 2);
                                setState('javascript.0.alarm.Pin.PinFehler', true);
                                PinReset();
                            }
                        }    
                        
                        function PinReset() {
                                PinLae=0;
                                PinAnzStat=2;
                                PinAnz="";
                                PinTemp="";
                                setState('javascript.0.alarm.Pin.PinAnzStat', 2);
                                setState('javascript.0.alarm.Pin.PinAnz', PinAnz);
                        }
                        
                        1 Antwort Letzte Antwort
                        0
                        • sigi234S Online
                          sigi234S Online
                          sigi234
                          Forum Testing Most Active
                          schrieb am zuletzt editiert von
                          #18

                          Hallo,

                          was ist hm-rega.0.1234

                          2858_screenshot__611_.png

                          Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                          Immer Daten sichern!

                          1 Antwort Letzte Antwort
                          0
                          • DutchmanD Offline
                            DutchmanD Offline
                            Dutchman
                            Developer Most Active Administrators
                            schrieb am zuletzt editiert von
                            #19

                            Eine Systemvariable im der ccu

                            Sent from my iPhone using Tapatalk

                            1 Antwort Letzte Antwort
                            0
                            • smartboartS Offline
                              smartboartS Offline
                              smartboart
                              schrieb am zuletzt editiert von
                              #20

                              So siehts bei mir aus…Hab alles raus geschmissen was ich nicht brauch..

                              funktioniert einwandfrei

                              Hab das Pin Pad 2 mal .. einmal für stop bzw. rücksetzen während Auslösung und einmal zum deaktivieren.

                              // -----------------------------------------------------------------------------
                              // allgemeine Variablen
                              // -----------------------------------------------------------------------------
                              var logging = true;                                                        // Logging on/off
                              var instanz = 'javascript.0';  instanz = instanz + '.Alarm';                     // 
                              
                              var pfad0 =     'alarm.Pin.Disable.';                        // Pfad innerhalb der Instanz 
                              
                              // -----------------------------------------------------------------------------
                              // Variablen für Pin-Abfrage
                              // -----------------------------------------------------------------------------
                              var PinTast = "";                   // Inhalt der Eingabe
                              var PinTemp ="";                    // Puffer für eingegebe Ziffern
                              var PinLae = 0;                     // Pin-Länge bei Eingabe
                              
                              var PinState = false ;              // Eingabestatus - Eingabe beginnt nach Taste '#' und wird mit Taste '#' abgeschlossen
                              var PinFehl =false;                 // Statusflag für fehlerhafte Eingabe
                              var PinAnz = "";                    // Angezeiger 'Displaytext' z.B. ****
                              
                              var PinSoll = 1111;                 // Pin die zur Deaktivierung der Alarmanlage benötigt wird
                              
                              // -----------------------------------------------------------------------------
                              // Objekte
                              // -----------------------------------------------------------------------------
                              
                              // Objekte für Pin-Eingabe
                              createState(pfad0 + 'PinSelect', "" , {name: 'Pin-Eingabe'});
                              createState(pfad0 + 'Pin', '0000' ,  {name: 'Pin'});
                              createState(pfad0 + 'PinFehler', false ,  {name: 'Pin-Fehler'});
                              createState(pfad0 + 'PinAnz', '' ,  {name: 'Pin-Anzeige'});
                              createState(pfad0 + 'VisKeyPad', '' ,  {name: 'State für Vis Keypad Sichtbar'}); //State für Vis Keypad Sichtbar wird von Button in Vis beschrieben und bei unscharf zurück gesetzt
                              
                              // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                              // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                              // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                              // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                              
                              // #############################################################################
                              // #                                                                           #
                              // #  Pin-Abfrage                                                              #
                              // #                                                                           #
                              // #############################################################################
                              
                              on('javascript.0.alarm.Pin.Disable.PinSelect', function (dp) {
                                  if (dp.newState.val === 0 || dp.newState.val === 1 || dp.newState.val === 2 || dp.newState.val === 3 || dp.newState.val === 4 || dp.newState.val === 5 || dp.newState.val === 6 || dp.newState.val === 7 || dp.newState.val === 8 || dp.newState.val === 9) {
                                      PinTast = dp.newState.val;
                                      PinEingabe();
                                  }  
                                  if (dp.newState.val === 'E') {
                                      PinPruef();
                                  }      
                                  if (dp.newState.val === 'R') {
                                      PinReset();  
                                  }      
                              });
                              
                              function PinEingabe () {
                                  PinTemp = (PinTemp + PinTast);
                                  PinAnz = (PinAnz + '*');
                                  setState('javascript.0.alarm.Pin.Disable.PinAnz', PinAnz);
                                  PinLae = (PinLae +1) ;
                              }
                              
                              function unscharf(){
                                  setState('javascript.0.alarm.in.disable', true);
                                  setState('javascript.0.alarm.Pin.Disable.VisKeyPad', false);
                                   if(logging) log('Deaktivierung der Alarmanlage durch Pineingabe erfolgreich');
                              ///////////////////////////////////////////////////// Hier musst du dann deinen Türöffner auf machen reinschreiben    
                              }
                              
                              function PinPruef() {
                                  if (PinTemp == PinSoll) {
                                      if(logging) log('PinEingabe Disable erfolgreich');
                                      unscharf();
                              
                                      setTimeout(function() {
                              
                                          PinReset();
                                      }, 10 * 1000);
                              
                                  } else {
                                      if(logging) log('Pin Eingabe Disable falscher Pin');
                                      setState('javascript.0.alarm.Pin.Disable.PinFehler', true);
                                      PinReset();
                                  }
                              }    
                              
                              function PinReset() {
                                      PinLae=0;
                                      PinAnz="";
                                      PinTemp="";
                                      setState('javascript.0.alarm.Pin.Disable.PinAnz', PinAnz);
                              }
                              

                              ![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201809 ... 7cd9df.jpg">https://uploads.tapatalk-cdn.com/20180908/edecb9375e9d54b22520a997817cd9df.jpg</link_text>" />![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201809 ... 2886a3.jpg">https://uploads.tapatalk-cdn.com/20180908/e94274682ddb4ab61a195dbe022886a3.jpg</link_text>" />~~~~ 6558_unbenannt.png
                              6558_unbenannt1.png

                              1 Antwort Letzte Antwort
                              0
                              • Homer.J.H Offline
                                Homer.J.H Offline
                                Homer.J.
                                schrieb am zuletzt editiert von
                                #21

                                Hallo Smartboard,

                                wie Integriere ich jetzt die Pin Eingabe in die Alarmanlage hab das Script und das Widget am laufen.

                                Grüße

                                1 Antwort Letzte Antwort
                                0
                                • smartboartS Offline
                                  smartboartS Offline
                                  smartboart
                                  schrieb am zuletzt editiert von
                                  #22

                                  Wie gesagt habe es 2 mal am laufen . Ich beschreibe mit der pineingabe das state für disable und mit der 2. Pineingabe das state für stop..

                                  Die button dafür aus der alarmanlage setzen den state aus dem pinpad welches ich für vis eingefügt habe…

                                  Sobald also der button deaktiviern oder stop gedrückt wird , öffnet sich das pin pad .sobald der code richtig eingegeben wurd wird der state disable oder stop beschrieben und das pad verschwindet.

                                  function unscharf(){

                                  setState('javascript.0.alarm.in.disable', true);

                                  setState('javascript.0.alarm.Pin.Disable.VisKeyPad', false);

                                  if(logging) log('Deaktivierung der Alarmanlage durch Pineingabe erfolgreich');

                                  Gesendet von meinem SM-G800F mit Tapatalk

                                  ![](</s><URL url=)<link_text text="https://uploads.tapatalk-cdn.com/201809 ... 0fd20f.jpg">https://uploads.tapatalk-cdn.com/20180908/ac0f04bfb882b922ff039b653a0fd20f.jpg</link_text>" />

                                  1 Antwort Letzte Antwort
                                  0
                                  • Homer.J.H Offline
                                    Homer.J.H Offline
                                    Homer.J.
                                    schrieb am zuletzt editiert von
                                    #23

                                    Setze ich es nur ins Logik Script mit ein, ? ich habe keinen Ansatz wie ich es jetzt umsetzen soll.

                                    1 Antwort Letzte Antwort
                                    0
                                    • smartboartS Offline
                                      smartboartS Offline
                                      smartboart
                                      schrieb am zuletzt editiert von
                                      #24

                                      Also ganz einmfach …

                                      Hier das Beispiel der Einstellungen des PinPad und der Deaktivieren Taste.

                                      Das Pinpad habe ich gruppiert als ein Widget.

                                      Bei Sichtbarkeit so einstellen, das es nur sichtbar ist wenn deaktivieren gedrückt wird.

                                      Der deaktivieren Button setz den State

                                      setState('javascript.0.alarm.Pin.Disable.VisKeyPad', true);

                                      Dieser macht das Pinpad Sichtbar.

                                      Das Script Pinbutton eretzt nun den den Buton für Deaktivieren, da es nun den State beschreibt welcher zuvor durch den Deaktivieren Button gestezt wurde.

                                      Siehe Fotos.

                                      Script 1 für deaktivieren / disable:

                                      // -----------------------------------------------------------------------------
                                      // allgemeine Variablen
                                      // -----------------------------------------------------------------------------
                                      var logging = true;                                                        // Logging on/off
                                      var instanz = 'javascript.0';  instanz = instanz + '.Alarm';                     // 
                                      
                                      var pfad0 =     'alarm.Pin.Disable.';                        // Pfad innerhalb der Instanz 
                                      
                                      // -----------------------------------------------------------------------------
                                      // Variablen für Pin-Abfrage
                                      // -----------------------------------------------------------------------------
                                      var PinTast = "";                   // Inhalt der Eingabe
                                      var PinTemp ="";                    // Puffer für eingegebe Ziffern
                                      var PinLae = 0;                     // Pin-Länge bei Eingabe
                                      
                                      var PinState = false ;              // Eingabestatus - Eingabe beginnt nach Taste '#' und wird mit Taste '#' abgeschlossen
                                      var PinFehl =false;                 // Statusflag für fehlerhafte Eingabe
                                      var PinAnz = "";                    // Angezeiger 'Displaytext' z.B. ****
                                      
                                      var PinSoll = 1111;                 // Pin die zur Deaktivierung der Alarmanlage benötigt wird
                                      
                                      // -----------------------------------------------------------------------------
                                      // Objekte
                                      // -----------------------------------------------------------------------------
                                      
                                      // Objekte für Pin-Eingabe
                                      createState(pfad0 + 'PinSelect', "" , {name: 'Pin-Eingabe'});
                                      createState(pfad0 + 'Pin', '0000' ,  {name: 'Pin'});
                                      createState(pfad0 + 'PinFehler', false ,  {name: 'Pin-Fehler'});
                                      createState(pfad0 + 'PinAnz', '' ,  {name: 'Pin-Anzeige'});
                                      createState(pfad0 + 'VisKeyPad', '' ,  {name: 'State für Vis Keypad Sichtbar'}); //State für Vis Keypad Sichtbar wird von Button in Vis beschrieben und bei unscharf zurück gesetzt
                                      
                                      // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                                      // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                                      // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                                      // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                                      
                                      // #############################################################################
                                      // #                                                                           #
                                      // #  Pin-Abfrage                                                              #
                                      // #                                                                           #
                                      // #############################################################################
                                      
                                      on('javascript.0.alarm.Pin.Disable.PinSelect', function (dp) {
                                          if (dp.newState.val === 0 || dp.newState.val === 1 || dp.newState.val === 2 || dp.newState.val === 3 || dp.newState.val === 4 || dp.newState.val === 5 || dp.newState.val === 6 || dp.newState.val === 7 || dp.newState.val === 8 || dp.newState.val === 9) {
                                              PinTast = dp.newState.val;
                                              PinEingabe();
                                          }  
                                          if (dp.newState.val === 'E') {
                                              PinPruef();
                                          }      
                                          if (dp.newState.val === 'R') {
                                              PinReset();  
                                          }      
                                      });
                                      
                                      function PinEingabe () {
                                          PinTemp = (PinTemp + PinTast);
                                          PinAnz = (PinAnz + '*');
                                          setState('javascript.0.alarm.Pin.Disable.PinAnz', PinAnz);
                                          PinLae = (PinLae +1) ;
                                      }
                                      
                                      function unscharf(){
                                          setState('javascript.0.alarm.in.disable', true);
                                          setState('javascript.0.alarm.Pin.Disable.VisKeyPad', false);
                                           if(logging) log('Deaktivierung der Alarmanlage durch Pineingabe erfolgreich');
                                      ///////////////////////////////////////////////////// Hier musst du dann deinen Türöffner auf machen reinschreiben    
                                      }
                                      
                                      function PinPruef() {
                                          if (PinTemp == PinSoll) {
                                              if(logging) log('PinEingabe Disable erfolgreich');
                                              unscharf();
                                      
                                              setTimeout(function() {
                                      
                                                  PinReset();
                                              }, 10 * 1000);
                                      
                                          } else {
                                              if(logging) log('Pin Eingabe Disable falscher Pin');
                                              setState('javascript.0.alarm.Pin.Disable.PinFehler', true);
                                              PinReset();
                                          }
                                      }    
                                      
                                      function PinReset() {
                                              PinLae=0;
                                              PinAnz="";
                                              PinTemp="";
                                              setState('javascript.0.alarm.Pin.Disable.PinAnz', PinAnz);
                                      }
                                      

                                      Script 2 für Alarm in stop

                                      // -----------------------------------------------------------------------------
                                      // allgemeine Variablen
                                      // -----------------------------------------------------------------------------
                                      var logging = true;                                                        // Logging on/off
                                      var instanz = 'javascript.0';  instanz = instanz + '.Alarm';                     // 
                                      
                                      var pfad0 =     'alarm.Pin.Stop.';                        // Pfad innerhalb der Instanz 
                                      
                                      // -----------------------------------------------------------------------------
                                      // Variablen für Pin-Abfrage
                                      // -----------------------------------------------------------------------------
                                      var PinTast = "";                   // Inhalt der Eingabe
                                      var PinTemp ="";                    // Puffer für eingegebe Ziffern
                                      var PinLae = 0;                     // Pin-Länge bei Eingabe
                                      
                                      var PinState = false ;              // Eingabestatus - Eingabe beginnt nach Taste '#' und wird mit Taste '#' abgeschlossen
                                      var PinFehl =false;                 // Statusflag für fehlerhafte Eingabe
                                      var PinAnz = "";                    // Angezeiger 'Displaytext' z.B. ****
                                      
                                      var PinSoll = 1111;                 // Pin die zur Deaktivierung der Alarmanlage benötigt wird
                                      
                                      // -----------------------------------------------------------------------------
                                      // Objekte
                                      // -----------------------------------------------------------------------------
                                      
                                      // Objekte für Pin-Eingabe
                                      createState(pfad0 + 'PinSelect', "" , {name: 'Pin-Eingabe'});
                                      createState(pfad0 + 'Pin', '0000' ,  {name: 'Pin'});
                                      createState(pfad0 + 'PinFehler', false ,  {name: 'Pin-Fehler'});
                                      createState(pfad0 + 'PinAnz', '' ,  {name: 'Pin-Anzeige'});
                                      createState(pfad0 + 'VisKeyPad', '' ,  {name: 'State für Vis Keypad Sichtbar'}); //State für Vis Keypad Sichtbar wird von Button in Vis beschrieben und bei unscharf zurück gesetzt
                                      
                                      // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                                      // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                                      // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                                      // $$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
                                      
                                      // #############################################################################
                                      // #                                                                           #
                                      // #  Pin-Abfrage                                                              #
                                      // #                                                                           #
                                      // #############################################################################
                                      
                                      on('javascript.0.alarm.Pin.Stop.PinSelect', function (dp) {
                                          if (dp.newState.val === 0 || dp.newState.val === 1 || dp.newState.val === 2 || dp.newState.val === 3 || dp.newState.val === 4 || dp.newState.val === 5 || dp.newState.val === 6 || dp.newState.val === 7 || dp.newState.val === 8 || dp.newState.val === 9) {
                                              PinTast = dp.newState.val;
                                              PinEingabe();
                                          }  
                                          if (dp.newState.val === 'E') {
                                              PinPruef();
                                          }      
                                          if (dp.newState.val === 'R') {
                                              PinReset();  
                                          }      
                                      });
                                      
                                      function PinEingabe () {
                                          PinTemp = (PinTemp + PinTast);
                                          PinAnz = (PinAnz + '*');
                                          setState('javascript.0.alarm.Pin.Stop.PinAnz', PinAnz);
                                          PinLae = (PinLae +1) ;
                                      }
                                      
                                      function unscharf(){
                                          setState('javascript.0.alarm.in.stop', true);
                                          setState('javascript.0.alarm.Pin.Stop.VisKeyPad', false);
                                           if(logging) log('Stoppen der Alarmanlage durch Pineingabe erfolgreich');
                                      ///////////////////////////////////////////////////// Hier musst du dann deinen Türöffner auf machen reinschreiben    
                                      }
                                      
                                      function PinPruef() {
                                          if (PinTemp == PinSoll) {
                                              if(logging) log('PinEingabe Stop erfolgreich');
                                              unscharf();
                                      
                                              setTimeout(function() {
                                      
                                                  PinReset();
                                              }, 10 * 1000);
                                      
                                          } else {
                                              if(logging) log('Pin Eingabe Stop falsche Pin');
                                              setState('javascript.0.alarm.Pin.Stop.PinFehler', true);
                                              PinReset();
                                          }
                                      }    
                                      
                                      function PinReset() {
                                              PinLae=0;
                                              PinAnz="";
                                              PinTemp="";
                                              setState('javascript.0.alarm.Pin.Stop.PinAnz', PinAnz);
                                      }
                                      

                                      6558_2.png 6558_1.png

                                      1 Antwort Letzte Antwort
                                      0
                                      • Homer.J.H Offline
                                        Homer.J.H Offline
                                        Homer.J.
                                        schrieb am zuletzt editiert von
                                        #25

                                        Cool Danke dir funktioniert.

                                        Wünsch dir noch einen schönen Abend

                                        Grüße Steffen

                                        1 Antwort Letzte Antwort
                                        0
                                        • M Offline
                                          M Offline
                                          Mr.Oz
                                          schrieb am zuletzt editiert von
                                          #26

                                          Hallo zusammen,

                                          ist mein erster Beitrag aber irgendwann muss man ja anfangen :D

                                          Bin neu in der ioBroker und Java Welt und lerne noch.

                                          Habe zum Pad eine frage.

                                          Ist es möglich, dass die Angabe der Pins ohne kommunikation mit den Adapter funktioniert? Also im internen "Script"-Reiter in VIS. Also das jeder Button eine variable und das Textfeld füllt und erst bei Bestätigung der PinSelect angesprochen wird mit dem Wert der Variable.

                                          Ich betreibe den ioBroker an einem Raspberry und irgendwie sind die Antwortzeite zwischen Vis -> Js Script -> Vis bei der Eingabe langsam.

                                          Gruß

                                          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

                                          421

                                          Online

                                          32.5k

                                          Benutzer

                                          81.7k

                                          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