Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Prüfung mehrerer Bedingungen

    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

    Prüfung mehrerer Bedingungen

    This topic has been deleted. Only users with topic management privileges can see it.
    • ?
      A Former User last edited by

      Hallo zusammen,

      ich möchte mit einem Blockly verschiedene Bedingungen bei der Mediaweidergabe mit emby prüfen und in Abhängigkeit davon Licht schalten.

      Konkret: Wenn es nach 20 Uhr ist und der Wiedergabe Status des Medienplayers auf Wiedergabe (playing) ist und im Genre Objekt "Horror" steht, soll das Licht Rot werden. Im Fall, dass dort nicht "Horror" steht soll es Blau leuchten. Irgendwo scheint noch ein Fehler zu sein, da zwar Licht angeht, aber nicht korrekt nach Genre. Hat jemand einen Tipp?

      e64eb788-6919-4763-ad8a-84741a938d18-image.png

      Armilar paul53 2 Replies Last reply Reply Quote 0
      • Armilar
        Armilar Most Active Forum Testing @Guest last edited by Armilar

        @apachelance

        Wäre dann einfacher, wenn du den typischen Aufbau und Wert des Objektes "Genres" mal sendest.

        Ansonsten alle Bedingungen mal einzeln checken...

        ? 1 Reply Last reply Reply Quote 0
        • ?
          A Former User @Armilar last edited by

          @armilar So schaut er aus:

          88a9e734-b350-4353-9a57-7adfd5566365-image.png

          ? Codierknecht 2 Replies Last reply Reply Quote 0
          • ?
            A Former User @Guest last edited by

            Wenn ich nur auf Uhrzeit und Wiedergabe-Status prüfe ohne weitere Bedingungen funktioniert das Schalten des Lichtes in eine Farbe.

            Armilar 1 Reply Last reply Reply Quote 0
            • Codierknecht
              Codierknecht Developer Most Active @Guest last edited by

              @apachelance
              Den "Aufbau". Also im Expertenmodus auf den Stift klicken und die Objektdaten posten (in Code-Tags </>).

              ? 1 Reply Last reply Reply Quote 0
              • Armilar
                Armilar Most Active Forum Testing @Guest last edited by Armilar

                @apachelance

                nimm mal das > 0 raus und konvertiere "nach Logikwert"

                7bf9b4af-f0b5-4e94-ac68-aae7571db1db-image.png

                aus dem "sonst falls" nimmst du die Genreprüfung gänzlich raus

                EDIT: nicht das es falsch verstanden wird. Du prüfst natürlich nicht den Wert des Triggers... Hier kommt es auf den "nach Logikwert" an.

                1 Reply Last reply Reply Quote 0
                • ?
                  A Former User @Codierknecht last edited by

                  @codierknecht Anbei:

                  {
                    "type": "state",
                    "common": {
                      "name": "Genres",
                      "role": "state",
                      "type": "string",
                      "read": true,
                      "write": false
                    },
                    "native": {},
                    "from": "system.adapter.emby.0",
                    "user": "system.user.admin",
                    "ts": 1700242129505,
                    "_id": "emby.0.9978dbe503e74d4ab65de44921021f49.media.genres",
                    "acl": {
                      "object": 1636,
                      "state": 1636,
                      "owner": "system.user.admin",
                      "ownerGroup": "system.group.administrator"
                    }
                  }
                  
                  Codierknecht Armilar 3 Replies Last reply Reply Quote 0
                  • Codierknecht
                    Codierknecht Developer Most Active @Guest last edited by

                    @apachelance
                    Den Wert von "Genres" solltest Du zunächst in eine Variable einlesen und damit weiterarbeiten.
                    Dann muss der Wert nicht 2x gelesen werden.

                    Und bau mal ein paar Debug-Blöcke ein, um zu sehen was wo drin steht.

                    Armilar 1 Reply Last reply Reply Quote 0
                    • Armilar
                      Armilar Most Active Forum Testing @Codierknecht last edited by

                      @codierknecht

                      denke es ist ein simpler String der irgendwann und irgendwo das Wort "Horror" enthält. Wenn Horror einmal geprüft wird, dann reicht das doch.

                      Die restliche Zeit soll doch wenn die Kiste läuft das Licht sowieso nur blau sein 😉

                      1 Reply Last reply Reply Quote 0
                      • Armilar
                        Armilar Most Active Forum Testing @Guest last edited by

                        @apachelance

                        Falls du nicht weißt, was wir meinen, dann sende mal kurz das Blockly...

                        Nachbauen macht so wenig Spaß bei der Baustein-Sprache...

                        1 Reply Last reply Reply Quote 0
                        • Codierknecht
                          Codierknecht Developer Most Active @Guest last edited by

                          @apachelance
                          Wie sehen eigentlich die Objektdaten zu "State of the client" aus?
                          Ist das tatsächlich ein String oder vielleicht eine Zahl?

                          Armilar 1 Reply Last reply Reply Quote 0
                          • paul53
                            paul53 @Guest last edited by

                            @apachelance
                            Der Trigger-Datenpunkt enthält wirklich einen String (z.B. "playing")?
                            Man vermeidet doppelte Vergleiche:

                            Blockly_temp.JPG

                            1 Reply Last reply Reply Quote 0
                            • Armilar
                              Armilar Most Active Forum Testing @Codierknecht last edited by

                              @codierknecht

                              Nun das wäre ein Ding, wenn da nicht "playing" oder so etwas wie "stop" oder "pause" drin stehen würde... 😊

                              Codierknecht 1 Reply Last reply Reply Quote 0
                              • Codierknecht
                                Codierknecht Developer Most Active @Armilar last edited by

                                @armilar
                                Mich würde es wundern, wenn es drin stehen würde 😉

                                Armilar ? Codierknecht 3 Replies Last reply Reply Quote 1
                                • Armilar
                                  Armilar Most Active Forum Testing @Codierknecht last edited by

                                  @codierknecht

                                  Bin gespannt, ob das Rätsel geknackt wird 😉

                                  1 Reply Last reply Reply Quote 0
                                  • ?
                                    A Former User @Codierknecht last edited by

                                    Ich hab es jetzt so umgebaut:

                                    9527a1b1-3d82-436d-a988-388f05b7a7d3-image.png

                                    Das Seltsame ist, dass es mit der Wiedergabe vom PC Player (emby) funktioniert, wohingegen es vom Mediaplayer mit emby-Client die Farben nicht korrekt wechselt und immer nur rot anzeigt. Dabei ändere ich nur das "State of the Client" Objekt - einmal PC, einmal Mediaplayer.

                                    So sieht das State Objekt aus:

                                    {
                                      "type": "state",
                                      "common": {
                                        "name": "State of the Client",
                                        "role": "media.state",
                                        "type": "string",
                                        "read": true,
                                        "write": true,
                                        "states": {
                                          "idle": "Idle",
                                          "paused": "Paused",
                                          "playing": "Playing"
                                        }
                                      },
                                      "native": {},
                                      "from": "system.adapter.emby.0",
                                      "user": "system.user.admin",
                                      "ts": 1700242129505,
                                      "_id": "emby.0.9978dbe503e74d4ab65de44921021f49.media.state",
                                      "acl": {
                                        "object": 1636,
                                        "state": 1636,
                                        "owner": "system.user.admin",
                                        "ownerGroup": "system.group.administrator"
                                      }
                                    }
                                    
                                    Armilar Codierknecht paul53 3 Replies Last reply Reply Quote 0
                                    • Armilar
                                      Armilar Most Active Forum Testing @Guest last edited by

                                      @apachelance

                                      Schätze mal, dass du das Wort "Playing" groß schreiben solltest

                                      paul53 ? 2 Replies Last reply Reply Quote 0
                                      • paul53
                                        paul53 @Armilar last edited by

                                        @armilar sagte: Schätze mal, dass du das Wort "Playing" groß schreiben solltest

                                        Nein, der Wert steht links unter common.states.

                                        1 Reply Last reply Reply Quote 0
                                        • Codierknecht
                                          Codierknecht Developer Most Active @Codierknecht last edited by

                                          @codierknecht sagte in Prüfung mehrerer Bedingungen:

                                          Mich würde es wundern, wenn es drin stehen würde

                                          Dinge gibt's ... ts, ts, ts 😁

                                          1 Reply Last reply Reply Quote 0
                                          • ?
                                            A Former User @Armilar last edited by

                                            @armilar Nein, muss klein sein.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            715
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            4
                                            45
                                            1309
                                            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