Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. [Gelöst] Abfrage "Sind Sie sicher?" Ja/Nein

    NEWS

    • Neues Video "KI im Smart Home" - ioBroker plus n8n

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

    • Wir empfehlen: Node.js 22.x

    [Gelöst] Abfrage "Sind Sie sicher?" Ja/Nein

    This topic has been deleted. Only users with topic management privileges can see it.
    • P
      pix last edited by

      Hallo Tobo,

      bleibt doch bitte im ioBroker Terminus. Ich weiß sonst nicht, was du meinst. Frames = Views oder Widgets? Was ist VB?

      Es reicht auch eine Variable für die Sichtbarkeit. Wenn irgendeine der drei Tasten gedrückt (alle drei ändern das gleiche Objekt, nämlich diese Variable "Sicherheitsfrage"), dann "Sicherheitsfrage" = true.

      Wenn "Sicherheitsfrage" = true, dann alle Widgets, die unter der Bedingung "Sicherheitsfrage" = true eingeblendet werden sollen, anzeigen. Dann nach zB 5s "Sicherheitsfrage" = false;

      Kannst aber auch für jede Funktion eine Variable erstellen.

      So habe ich das im meinem Smartphone-Projekt gemacht. Mein Wandtablet Projekt öffnet einfach nur einen Dialog.

      Gruß

      Pix

      1 Reply Last reply Reply Quote 0
      • T
        tempestas last edited by

        VB dürfte Visual Basic sein?

        Frames nehme ich an sind Dialoge.

        Wenn ich mich an dieser Stelle kurz mit zwei Fragen einklinken dürfte, da sie auch zu Dialogen passen:

        1. schließt du (Pix) deinen Dialog dann über das x rechts oben, oder hast du eine Lösung, dass der Dialog nach der auswahl automatisch schließt?

        2. Steuerst du, und wenn ja wie, wo dein Dialogfenster sich öffnet? Bei mir ist das Problem, dass einige Dialogfenster mittig auf dme Screen sich öffnen (wunderbar), andere aber teilweise so, dass der Rahmen außerhalb des Screens liegt und ich dann keine Chance habe, diese mit "x" zu schließen?

        1 Reply Last reply Reply Quote 0
        • T
          TOBO last edited by

          Was ist bitte ein Dialogfenster und wie erstelle ich so eines.

          Sorry Pix. Ich dachte diese Begriffe sind für Programmierer gängige Praxis. VB ist Visual Basic und ein Frame ein Rahmen, in dem man etwas anzeigen kann. Also in diesem Fall besagtes Dialogfenster.

          1 Reply Last reply Reply Quote 0
          • T
            tempestas last edited by

            Dialoge sind wohl deine "Frames", in denen du nach klick auf einen Button (widget habe ich nicht auswendig im Kopf, können aber mehrere) eine andere View anzeigen lassen kannst.

            Rechts in den Widget Einstellungen findest du neben Allgemein, Sichtbarkeit usw eben bei einigen auch "Dialog"; dort dann die anzusprechende View eintragen und die Größe des Dialogs (z.B. 200 x 100 px).

            1 Reply Last reply Reply Quote 0
            • T
              TOBO last edited by

              Noch eine Frage zu der Triggervariable. Kann ich in IOBroker eine globale Systemvariable anlegen, die ich dazu verwenden kann ? Wenn ja, wie und wo ?

              1 Reply Last reply Reply Quote 0
              • P
                pix last edited by

                Hallo,

                "globale" Systemvariablen kann man anlegen. Im Reiter Objekte können Objekte angelegt werden. Alternativ im Javascript Adapter mit einem Skript. Bitte in der Javascript Adapter Doku nach createStates() und setStates() nachsehen.

                Global habe ich oben in Haken gesetzt, da das Wort im Zusammenhang mit ioBroker Scripts eine andere Bedeutung hat, als hier.

                Zum Dialog:

                Es gibt ein Skript, das Dialoge nach X Zeit schließen kann (http://forum.iobroker.net/viewtopic.php … ßen#p38378)

                Du kannst aber auch einen eigenen Dialog bauen. Die Funktion "Sichtbarkeit" in VIS ist dazu perfekt geeignet.

                Gruß

                Pix

                1 Reply Last reply Reply Quote 0
                • T
                  TOBO last edited by

                  @pix:

                  Im Reiter Objekte können Objekte angelegt werden. `

                  Ist das so richtig ? Unter Admin.0 ein neues Objekt anlegen ?

                  2287_neues_objekt.png

                  1 Reply Last reply Reply Quote 0
                  • T
                    TOBO last edited by

                    Da ich bisher keine Antwort auf meine vorherige Frage bekommen habe und ich nix kaputt machen will, habe ich die Variablen in der HomeMatic als Systemvariablen angelegt.

                    So sieht das jetzt bei mir aus.
                    2287_screenshot.png

                    Wenn eine der drei Tasten geklickt wird, werden diese und die Back Taste sofort ausgeblendet und mit 400ms Verzögerung die Sicherheitsabfrage eingeblendet.
                    2287_abfrage.png

                    Hier ist mein Code. Funktioniert alles ganz Prima 🙂

                    var idJa = "hm-rega.0.2334"; //Button Ja
                    var idNein = "hm-rega.0.2335"; //Button Nein
                    var idJN = "hm-rega.0.2333"; //1 = aufschließen / 2 = zuschließen / 3 = Tür öffnen
                    var idPause = "hm-rega.0.2336" //Trigger einblenden Abfrage verzögert
                    
                    // Script start alles Reset
                    setState(idJa, false);
                    setState(idNein, false);
                    setState(idPause, false);
                    setState(idJN, 0);
                    
                    //Abfrage einblenden
                    on(idJN, function(dp) {  // Triggern bei Änderung
                    
                    if (getState(idJN).val !== 0 )
                    {
                     setStateDelayed(idPause, true,  400);
                     }
                    });
                    
                    //Bestätigung Nein
                    on(idNein, function(dp) {  // Triggern bei Änderung
                    if (getState(idNein).val == "1" )
                    {
                      setState(idNein, false); 
                      setState(idJa, false);
                      setState(idPause, false);
                      setStateDelayed(idJN, 0,  400);
                      }
                    });
                    
                    //Bestätigung Ja - Tür zu
                    on(idJa, function(dp) {  // Triggern bei Änderung
                    if (getState(idJa).val == "1" && getState(idJN).val == 2)
                    {
                      setState(idNein, false); 
                      setState(idJa, false);
                      setState(idPause, false);
                      setStateDelayed(idJN, 0,  400);
                      setState("hm-rpc.0.OEQ0119854.2.PRESS_SHORT", true);
                      }
                    });
                    
                    //Bestätigung Ja - Tür auf
                    on(idJa, function(dp) {  // Triggern bei Änderung
                    if (getState(idJa).val == "1" && getState(idJN).val == 1)
                    {
                      setState(idNein, false); 
                      setState(idJa, false);
                      setState(idPause, false);
                      setStateDelayed(idJN, 0,  400);
                      setState("hm-rpc.0.OEQ0119854.1.PRESS_SHORT", true);
                      }
                    });
                    
                    //Bestätigung Ja - Tür Öffnen
                    on(idJa, function(dp) {  // Triggern bei Änderung
                    if (getState(idJa).val == "1" && getState(idJN).val == 3)
                    {
                      setState(idNein, false); 
                      setState(idJa, false);
                      setState(idPause, false)
                      setStateDelayed(idJN, 0,  400);
                      setState("hm-rpc.0.OEQ0119854.4.PRESS_SHORT", true);
                      }
                    });
                    
                    

                    PS: Falls jemand wissen möchte, warum ich 400ms Verzögerung beim Ein und Ausblenden der Abfrage habe. Auf dem PC geht das ohne super. Da klickt man mit der Maus. Auf dem Handy nicht. Weil die Buttons der Abfrage genau über den mittleren Button Tür Zu liegen, wird beim Handy, sofort der Ja, oder Nein Button betätigt wenn die Abfrage eingeblendet wird. Komisch, ist aber so. Die Umschaltung geht so superschnell.

                    Gruss.

                    ToBo

                    1 Reply Last reply Reply Quote 0
                    • T
                      tempestas last edited by

                      Danke fürs teilen;

                      Als Idee:

                      Du könntest die Buttos noch sachlogisch anzeigen lassen. Sprich lock nur, wenn die Tür auch geschlossen ist. Unlock nur, wenn Tür gelockt ist. Tür auf nur, wenn wenn unlocked.

                      Ist mehr optisch; aber ich persönlich bin immer ein Freund davon, nur das anzuzeigen, was auch aktiv umgesetzt werden kann.

                      LG

                      1 Reply Last reply Reply Quote 0
                      • T
                        TOBO last edited by

                        Hallo,

                        darüber hab ich noch gar nicht nachgedacht. Danke, ist keine schlechte Idee.

                        Gruss.

                        ToBo

                        1 Reply Last reply Reply Quote 0
                        • D
                          dwm last edited by

                          Da muss ich kurz einhaken, ich hab da nämlich ein "verwandtes" Problem.

                          Grundsätzlich steuerst Du ja die UI über system-globale Variablen.

                          Das heisst wenn Du hier was machst, wird das auf JEDER Instanz, die grad auf vis zugreift, gleich angezeigt.

                          Das kann jetzt gut oder schlecht sein 🙂

                          Manchmal wärs schlauer, so eine Variable die die UI "steuert" nur für die Browser Instanz zu haben.

                          Gibts da eine Lösung?

                          Wie gesagt, wenn grad zwei Leute auf diesen Screen schauen und einer drückt "öffnen", sehen beide das "Bist Du sicher" …

                          CU

                          Werner

                          1 Reply Last reply Reply Quote 0
                          • T
                            TOBO last edited by

                            So ist es. Ist mir auch schon aufgefallen. Hat mich aber nicht so stark gestört, weil sehr unwahrscheinlich das bei uns zwei Leute das zur gleichen Zeit machen wollen.

                            1 Reply Last reply Reply Quote 0
                            • First post
                              Last post

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            461
                            Online

                            32.0k
                            Users

                            80.6k
                            Topics

                            1.3m
                            Posts

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