Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. IoBroker Szene mit Wenn+Dann Funktion?

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    IoBroker Szene mit Wenn+Dann Funktion?

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

      Hallo,

      ich steuere unter anderem auch meinen Onkyio Receiver über VIS mit einer Szene. Jetzt muss ich allerdings immer schleifen einbauen. Daher 45 Sekunden später den Befehl wiederholen lassen, damit die Szene auch funktioniert, wenn der Receiver gerade erst eingeschalten wurde.

      Das gleiche Problem habe ich auch beim Squeezebox adapter. Hier würde ich gerne die vorhandenen Datenpunkte: onkyo.0.connected und squeezebox.0.SB_Wohnzimmer.power nutzen.

      Wenn diese anzeigen, dass die jeweilige Instanz online ist, soll sofort umgeschalten werden, ansonsten erst solange gewartet werden.

      Gibt es eine solche Wenn Dann Funktion in IOBroker? Szene ?

      Wenn da jemand mit einer Idee aushelfen könnte, wäre das echt klasse.

      Gruß Enrico

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

        Hallo,

        mir fällt da nur die Javascript Lösung ein.

        Wenn noch nicht installiert, dann javascript-Adapter installieren und Instanz starten.

        Dann Skript erstellen (im Javascript Reiter)

        on('onkyo.0.connected', function (obj) {
          if (obj.state.val) {
              log('Onkyo geht auf true, Szene wird gestartet');
              setState('scene.0.szenenname', true); // Szene starten
          }
        });
        
        

        Speichern.

        Gruß

        Pix

        1 Reply Last reply Reply Quote 0
        • H
          Heinzelmaennchen last edited by

          Hallo auch,

          Ich glaube schon, dass sich Dein Problem über den Szenenadapter lösen ließe. Da ja eine Szene als eingangskriterium nicht nur eine benutzeraktion auswerten kann, sondern praktische jede Statusänderung eines datenpunktes überwachen kann um dann im folgenden verschiedenen Aktionen auszulösen.

          Will sagen, Szene 1 schaltet bei Dir den onkyo Receiver ein. Der fährt hoch und bewirkt, dass nach einer gewissen Zeit abhängige datenpunkte, bei Dir also .connected oder .power auf true on on oder was auch immer gesetzt werden.

          Nun müsstest du, glaube ich, nur eine szene 2 einrichten, die diesen .power dp überwacht, also in der scene configuration die TriggerID xxx.power == true/on … Hat und also erst startet, wenn dieser dp den Wert angenommen hat. Alle dann gewünschten Aktionen (Kanal wechseln, Licht ausschalten, Rollladen runter etc.) kommen danach dann in diese Szene rein.

          Mir hat es schon oft geholfen, die gewünschte Aktion in mehrere teilabschnitte zu teilen und einzeln anzugehen. Bei Dir heißt das, erst einschalten (szene1) und dann wenn der Zustand erreicht ist, das nächste problem(szene2) angehen.

          Vielleicht hilfts ja.

          PS: im Grunde macht mein Vorschlag auch nichts anderes als der von pix, nur eben ohne JavaScript. Da ich das nämlich nicht kann, versuche ich so weit als möglich die bordmittel des Szenenadapters auszunutzen.

          1 Reply Last reply Reply Quote 0
          • R
            riconr1 last edited by

            Danke, das hört sich im Moment jedoch nach einer Einbahnstraße an.

            Ich verstehe das so, wenn der Receiver meldet (ich bin online), dann läuft automatisch ein Skript, oder eine Szene. (z.B: schalte auf Eingang "Sat").

            Diese kann doch aber nicht mehr beeinflussen oder?

            Wenn ich also "Radio an" starte, wird zwar alles eingeschaltet, jedoch wird automatisch der Eingang "Sat" gewählt, statt des Eingangs "Sqeezebox".

            Und das Ursprungs Problem besteht weiter. Wenn alles schon an ist, z.B. auf "Radio" steht. Dann soll über den weiteren Button auch auf "Sat"geschalten werden. Hier würde das ja gar nicht mehr funktionieren.

            Oder habe ich hier einen Denkfehler? Die Szene oder das Skript, was Ihr mir vorgeschlagen habt, startet doch immer wenn Onkyo "online" meldet. Oder?

            Grüße

            Enrico

            1 Reply Last reply Reply Quote 0
            • Homoran
              Homoran Global Moderator Administrators last edited by

              Was sollte denn deine Szene (mit oder ohne Schleife) genau machen?

              Was war der Trigger, was das "Endziel"?

              Gruß

              Rainer

              1 Reply Last reply Reply Quote 0
              • R
                riconr1 last edited by

                Meine Szene ist so aufgebaut. (wird direkt über einen Button auf Tablet gestartet)

                Radio an:

                schalte Receiver ein "Onkyo an" (falls er aus war, ansonsten läuft der Befehl ins leere)

                schalte TV aus (falls der TV an war, ansonsten läuft der Befehl …..)

                schalte Onkyo auf "Game", (falls Onkyo schon an war, z.B. zuvor TV gesehen wurde)

                schalte Squeezebox ein

                schalte Radiosender in Sqeezebox ein. (falls Squeezebox schon an war, läuft auf FireTV und über diesen gucken wir auch Filme)

                45 Sekunden später:

                schalte Onkyo auf "Game" (falls Onkyo zuvor noch nicht an war)

                schalte Radiosender auf Squeezebox um (falls Squeezebox zuvor noch nicht an war)

                Und so sind andere Szenen auch aufgebaut. TV schauen, FireTV gucken, BlueRay gucken, alles aus.

                Funktioniert in soweit prima. Jedoch gibt es zwei Situationen, die manchmal stören. So wird nach umstellen des Radios und dann weiterschalten auf einen anderen Sender, 45 Sekunden später auch der ursprüngliche Sender eingeschalten. Dass passiert doch schon häufiger mal. Und es kann sein, dass Onkyo oder aber Squeezebox nicht innerhalb 45 Sekunden im Netzwerk erreichbar waren, dann passiert halt auch nichts.

                Hier hatte ich gehofft, dass mir die Statusmeldungen der beiden Geräte helfen könnten, den Befehl wenn die Geräte schon "an" sind sofort zu senden und wenn die Geräte den Status "aus" haben solange gewartet werden kann, biss diese den Status "an" haben. Um dann auch erst den Befehl zu senden.

                Grüße

                Enrico

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

                Support us

                ioBroker
                Community Adapters
                Donate
                FAQ Cloud / IOT
                HowTo: Node.js-Update
                HowTo: Backup/Restore
                Downloads
                BLOG

                935
                Online

                31.9k
                Users

                80.3k
                Topics

                1.3m
                Posts

                4
                6
                2582
                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