Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. [gelöst] Frage zu langer Wenn/Dann Abfrage

    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

    [gelöst] Frage zu langer Wenn/Dann Abfrage

    This topic has been deleted. Only users with topic management privileges can see it.
    • Claus1985
      Claus1985 @MCU last edited by Claus1985

      @mcu danke für den Tipp, das passt allerdings noch nicht komplett auf meinen Usecase.
      Vielleicht nochmal den ganzen Ablauf um nachvollziehen zu können wofür ich überhaupt was verwenden will:

      • Ich scanne eine RFID Karte an einem Arduino ein (jede Karte steht für einen Gegenstand, z.B. Milch)
      • Die Karte hat eine eindeutige ID, diese wird per RFID ausgelesen und per MQTT an ioBroker gesendet
      • ioBroker schreibt die ID in einen Userwert rein
      • Nachdem dieser Userwert verändert wurde soll die ID verwendet werden um in einer fix definierten Liste (lege ich nur einmal an und nehme max. alle paar Monate eine Änderung vor) die passende Entsprechungen rauszusuchen
      • Diese Entsprechung sende ich dann über den ToDoist Adapter an ToDoist um einen neuen Eintrag in einer Einkaufsliste anzulegen

      Beim testen ist mir gerade aufgefallen, dass ich ToDoist zwei Variablen mitgeben muss:

      • Den Inhalt der Task / den Text den er in der Liste anlegen soll
      • Den Namen der Liste (in meinem Fall z.B. Supermarkt, Drogerie, Sonstige).

      D.h. in der Liste müsste das dann z.B. so aussehen:

      [{"ZAHL":"810235440","TEXT":"1 x Nutella | max. 2,90€/750g", "LISTE":"Einkaufsliste_Supermarkt},{"ZAHL":"2","TEXT":"Test", "LISTE":"Einkaufsliste_Drogerie"}]
      

      Wenn ich Dein Blockly richtig verstehe, wird die Liste/Variable "JSON_DP" aktuell autom. aus einem Userstate angelegt oder?
      Wie könnte ich die Liste fix in einem Code hinterlegen so, dass das Skript sie anschließend durchsuchen kann?

      Danke und Gruß,

      Claus

      M 1 Reply Last reply Reply Quote 0
      • M
        MCU @Claus1985 last edited by MCU

        @mcu Du kannst die Liste auch direkt als TEXT anlegen. Aber wichtig ein vergessenes " und es ist keine JSON-Liste mehr!

        cbcd02fd-649d-40c1-8ca9-562359c7930e-image.png

        c940c91f-3fad-4be1-bfae-eabdadc26778-image.png
        Was musst du denn dann an ToDoist übergeben?

        Also bis jetzt:
        5f452407-85a1-44be-8a20-22b2d898798e-image.png

        Claus1985 1 Reply Last reply Reply Quote 0
        • Claus1985
          Claus1985 @MCU last edited by

          @mcu ToDoist hat ein eigenes Blockly und benötigt zwei Dinge:
          e875ffeb-346e-48f2-b8ac-d5db409359fc-image.png

          Den Baustein würde ich dann nach der Schleife mit den Variablen aus der Schleife füttern und damit den neuen Eintrag in ToDoist anlegen.

          M 1 Reply Last reply Reply Quote 0
          • M
            MCU @Claus1985 last edited by MCU

            @claus1985 Dann kann das ja direkt vor die SCHLEIFE abbrechen.
            Projekt ist dann jsonata(LISTE) anwenden auf i.
            Aufgabe ist dann jsonata(TEXT) anwenden auf i.

            Der Wert von RFID wird an MQTT übermittelt und den nutzt du als Trigger für das Script.

            d533f529-8127-472e-acb7-82a09f7af1b8-image.png

            Falls mal öfter Deine RFID für das gleiche Produkt nutzt, musst du auf wurde aktualisiert ändern.
            Und dann ist MQTT-Nummer = WERT:
            a7642b7b-ad00-44c6-a14f-c7910a7fbb3b-image.png

            adb0421a-7877-441d-a912-43694a056e42-image.png

            ObjectID-> WERT auswählen

            Claus1985 1 Reply Last reply Reply Quote 1
            • Claus1985
              Claus1985 @MCU last edited by Claus1985

              @mcu Habe das mal entsprechend aufgebaut. Allerdings passiert bei mir nichts.
              Kann es sein, dass die Variable i in der Schleife hochgezählt werden muss damit etwas passiert?
              Bei mir zeigt er nichts was innerhalb der Schleife sitzt an.

              0946560d-9de7-4a2e-8955-da4c88b6f0e1-image.png
              0a3fa994-4dc4-4fd4-a972-4435c2345fe7-image.png

              M 1 Reply Last reply Reply Quote 0
              • M
                MCU @Claus1985 last edited by MCU

                @claus1985 Soweit ich das erkennen kann, hast du die Kommas vergessen.
                0e5be777-a3e7-4ec4-bde2-cb0a340e07bd-image.png
                ab dem zweiten ein Komma vor {

                Claus1985 1 Reply Last reply Reply Quote 1
                • Claus1985
                  Claus1985 @MCU last edited by

                  @mcu Ah ok d.h. am Ende jedes Listeneintrags muss ein Komma rein?

                  M 1 Reply Last reply Reply Quote 0
                  • M
                    MCU @Claus1985 last edited by

                    @claus1985 Ich würde es davor machen dann kannst du es auch erkennen.

                    Claus1985 1 Reply Last reply Reply Quote 0
                    • Claus1985
                      Claus1985 @MCU last edited by

                      @mcu danke für den Tipp, teste ich direkt aus!

                      M 1 Reply Last reply Reply Quote 0
                      • M
                        MCU @Claus1985 last edited by

                        @claus1985
                        0b07cfd0-dff2-4827-9a03-3c83ee9e2789-image.png
                        setze RFID_ID = WERT siehe oben (Trigger/ObjectID -> ändern auf WERT)

                        Claus1985 1 Reply Last reply Reply Quote 0
                        • Claus1985
                          Claus1985 @MCU last edited by

                          @mcu Hat funktioniert!
                          Bzgl. aktualisiert / wurde geändert lasse ich es auf wurde geändert. Wenn versehentlich die gleiche Karte 2 x gescannt wird löst er so nicht doppelt aus.

                          M 1 Reply Last reply Reply Quote 1
                          • M
                            MCU @Claus1985 last edited by

                            @claus1985 Dann bitte oben im ersten Post die Überschrift anpassen auf [gelöst] ...

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

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            749
                            Online

                            31.9k
                            Users

                            80.2k
                            Topics

                            1.3m
                            Posts

                            2
                            14
                            637
                            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