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. Skripten / Logik
  4. Blockly
  5. [Erldigt/Erklärt] IDs vom Selektor erklären...

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.0k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    699

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.0k

[Erldigt/Erklärt] IDs vom Selektor erklären...

Geplant Angeheftet Gesperrt Verschoben Blockly
14 Beiträge 7 Kommentatoren 1.3k Aufrufe 4 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.
  • J Offline
    J Offline
    jensven
    schrieb am zuletzt editiert von jensven
    #1

    hallo zusammen.
    hoffe ich bin mit der Frage hier richtig anstatt im Blockly Unterforum

    Ich möchte alle meine Bewegungsdatenpunkte checken ob diese auf False stehen.
    Habe nun unter Aufzählung unter Functions die Kategorie "Bewegung" erstellt.
    Name: Bewegung
    Id bearbeiten: enmu_1 ( Standart ?)
    Hier habe ich dann alle Datenpunkte "presence" von den Sensoren reingepackt. Aber mit dem Blockly komm ich nun nicht weiter.
    Wie checke ich nun ob alle Datenpunkte auf false stehen? geht das überhaupt so?

    David G.D HomoranH 2 Antworten Letzte Antwort
    0
    • J jensven

      hallo zusammen.
      hoffe ich bin mit der Frage hier richtig anstatt im Blockly Unterforum

      Ich möchte alle meine Bewegungsdatenpunkte checken ob diese auf False stehen.
      Habe nun unter Aufzählung unter Functions die Kategorie "Bewegung" erstellt.
      Name: Bewegung
      Id bearbeiten: enmu_1 ( Standart ?)
      Hier habe ich dann alle Datenpunkte "presence" von den Sensoren reingepackt. Aber mit dem Blockly komm ich nun nicht weiter.
      Wie checke ich nun ob alle Datenpunkte auf false stehen? geht das überhaupt so?

      David G.D Offline
      David G.D Offline
      David G.
      schrieb am zuletzt editiert von David G.
      #2

      @jensven
      Am besten erstellt man anhand des Selektors eine Liste.
      Dann kann man das schön in einer Schleife zählen.
      Schaue grad mal, ob ich ein Beispiel von mir finde.

      EDIT:
      So zähle ich die Personen im Haushalt.
      Kann man ja eigentlich 1 zu 1 übertragen.
      Zähle eben ob der Wert "wahr" ist, musst bei der Bedienung einfach ein "nicht" rein machen, dann zählst du "false".

      Screenshot_20220325-101407_Chrome.jpg

      <block xmlns="https://developers.google.com/blockly/xml" type="on_ext" id="VcPB}Mo,3;h?eFz5y3,9" x="12" y="188">
       <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
       <field name="CONDITION">ne</field>
       <field name="ACK_CONDITION"></field>
       <value name="OID0">
         <shadow type="field_oid" id="D;~M|o)V,v~OJvu0z0*K">
           <field name="oid">default</field>
         </shadow>
         <block type="selector" id="dyB#r/MInVq,!oc3*~k:">
           <field name="TEXT">state[id=*](functions='person_anwesend')</field>
         </block>
       </value>
       <statement name="STATEMENT">
         <block type="variables_set" id="a-#j-C+dG39,;X9gc6~=">
           <field name="VAR" id="C+A8~N.7^hJE`LW7BTpW">zaehlen</field>
           <value name="VALUE">
             <block type="math_number" id=";}$}:oih~#:O4JFunr[3">
               <field name="NUM">0</field>
             </block>
           </value>
           <next>
             <block type="controls_forEach" id="Fk!M(04z(({2UHJ(9r%9">
               <field name="VAR" id="Pz{lULKJJMW5!LQk;3$g">i</field>
               <value name="LIST">
                 <block type="selector" id="?W-pDE84bSVxnrY-93P{">
                   <field name="TEXT">state[id=*](functions='person_anwesend')</field>
                 </block>
               </value>
               <statement name="DO">
                 <block type="controls_if" id="(nx#hiTP5}sd#}9c}y(=">
                   <value name="IF0">
                     <block type="get_value_var" id="n5em6T8A~*z^`:J!/*jw">
                       <field name="ATTR">val</field>
                       <value name="OID">
                         <shadow type="text" id="D;rQK7@5BeoZ!{J9^QVU">
                           <field name="TEXT"></field>
                         </shadow>
                         <block type="variables_get" id="k|;8sOR/EatWK!MAW~cu">
                           <field name="VAR" id="Pz{lULKJJMW5!LQk;3$g">i</field>
                         </block>
                       </value>
                     </block>
                   </value>
                   <statement name="DO0">
                     <block type="math_change" id="d=gM][C,2MsRZ,]D-/uo">
                       <field name="VAR" id="C+A8~N.7^hJE`LW7BTpW">zaehlen</field>
                       <value name="DELTA">
                         <shadow type="math_number" id="8_O9ZG7]Eaj;OpS)_+Ow">
                           <field name="NUM">1</field>
                         </shadow>
                         <block type="math_number" id=",N;;dtXG4gen(p:^#0xk">
                           <field name="NUM">1</field>
                         </block>
                       </value>
                     </block>
                   </statement>
                 </block>
               </statement>
               <next>
                 <block type="control" id="||DEM*2rLOKMq!wH+3?R">
                   <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                   <field name="OID">0_userdata.0.Anwesenheit.Anzahl_Personen_Home_Ping_Fence</field>
                   <field name="WITH_DELAY">FALSE</field>
                   <value name="VALUE">
                     <block type="variables_get" id="GA2F[@3~U08EwQSD5|p-">
                       <field name="VAR" id="C+A8~N.7^hJE`LW7BTpW">zaehlen</field>
                     </block>
                   </value>
                 </block>
               </next>
             </block>
           </next>
         </block>
       </statement>
      </block>
      

      Zeigt eure Lovelace-Visualisierung klick
      (Auch ideal um sich Anregungen zu holen)

      Meine Tabellen für eure Visualisierung klick

      1 Antwort Letzte Antwort
      1
      • arteckA Offline
        arteckA Offline
        arteck
        Developer Most Active
        schrieb am zuletzt editiert von
        #3

        guckstdu

        https://forum.iobroker.net/topic/53641/frage-zu-schleifen-und-listen/4?_=1648192032014

        zigbee hab ich, zwave auch, nuc's genauso und HA auch

        1 Antwort Letzte Antwort
        0
        • J jensven

          hallo zusammen.
          hoffe ich bin mit der Frage hier richtig anstatt im Blockly Unterforum

          Ich möchte alle meine Bewegungsdatenpunkte checken ob diese auf False stehen.
          Habe nun unter Aufzählung unter Functions die Kategorie "Bewegung" erstellt.
          Name: Bewegung
          Id bearbeiten: enmu_1 ( Standart ?)
          Hier habe ich dann alle Datenpunkte "presence" von den Sensoren reingepackt. Aber mit dem Blockly komm ich nun nicht weiter.
          Wie checke ich nun ob alle Datenpunkte auf false stehen? geht das überhaupt so?

          HomoranH Nicht stören
          HomoranH Nicht stören
          Homoran
          Global Moderator Administrators
          schrieb am zuletzt editiert von
          #4

          @jensven sagte in IDs vom Selektor erklären...:

          hoffe ich bin mit der Frage hier richtig anstatt im Blockly Unterforum

          frage ich mich gerade auch.

          Arbeiten mit einem Selector ist für mich nicht unbedingt Einsteigerniveau.

          kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

          der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

          1 Antwort Letzte Antwort
          0
          • J Offline
            J Offline
            jensven
            schrieb am zuletzt editiert von
            #5

            danke für die schnelle anregungen/hilfen
            @Homoran vllt. dann doch lieber in Blockly verschieben?

            @arteck @David-G

            einmal sehe ich

            channel[state.id=...]
            

            und einmal

            state[id=*]functions='.....')
            

            was ist da der unterschied?

            David G.D 1 Antwort Letzte Antwort
            1
            • J jensven

              danke für die schnelle anregungen/hilfen
              @Homoran vllt. dann doch lieber in Blockly verschieben?

              @arteck @David-G

              einmal sehe ich

              channel[state.id=...]
              

              und einmal

              state[id=*]functions='.....')
              

              was ist da der unterschied?

              David G.D Offline
              David G.D Offline
              David G.
              schrieb am zuletzt editiert von David G.
              #6

              @jensven

              Wenn ich mich nicht irre (verbessert mich), werden einmal die Funktionen abgefragt ( wie in meinem Beispiel oder wie du es vor hast).

              Im anderen Beispiel im Link wird direkt der Pfad zu den Datenpunkten (mit einem * als Platzhalter) angegeben.
              Das macht zB Sinn, wenn du von allen Homatic Geräten den Batteriestatus abfragen willst. Dann gibst du den Pfad zum Akkudatenpunkt an und beim Gerät ein *.
              zB

              hm-rpc.0.*.0.LOW_BAT
              

              So findet er den LOW_BAT von allen Geräten.

              Zeigt eure Lovelace-Visualisierung klick
              (Auch ideal um sich Anregungen zu holen)

              Meine Tabellen für eure Visualisierung klick

              J 1 Antwort Letzte Antwort
              0
              • David G.D David G.

                @jensven

                Wenn ich mich nicht irre (verbessert mich), werden einmal die Funktionen abgefragt ( wie in meinem Beispiel oder wie du es vor hast).

                Im anderen Beispiel im Link wird direkt der Pfad zu den Datenpunkten (mit einem * als Platzhalter) angegeben.
                Das macht zB Sinn, wenn du von allen Homatic Geräten den Batteriestatus abfragen willst. Dann gibst du den Pfad zum Akkudatenpunkt an und beim Gerät ein *.
                zB

                hm-rpc.0.*.0.LOW_BAT
                

                So findet er den LOW_BAT von allen Geräten.

                J Offline
                J Offline
                jensven
                schrieb am zuletzt editiert von
                #7

                @david-g
                verstehe ich das richtig dass ich dann mit

                channel[state.id=precense]
                

                alle Datenpunkte "precense" in meiner Datenbank durchsuche und nicht in der von mir erstellten Aufzählung

                und mit

                state[id=*]functions='Bewegung')
                

                werden nur die Datenpunkten abgefragt die ich auch in dieser Aufzählung drinne habe?

                David G.D 1 Antwort Letzte Antwort
                0
                • J jensven

                  @david-g
                  verstehe ich das richtig dass ich dann mit

                  channel[state.id=precense]
                  

                  alle Datenpunkte "precense" in meiner Datenbank durchsuche und nicht in der von mir erstellten Aufzählung

                  und mit

                  state[id=*]functions='Bewegung')
                  

                  werden nur die Datenpunkten abgefragt die ich auch in dieser Aufzählung drinne habe?

                  David G.D Offline
                  David G.D Offline
                  David G.
                  schrieb am zuletzt editiert von
                  #8

                  @jensven

                  Genau.
                  Wobei "alle" relativ ist. Eben unter dem Pfad den du angegeben hast.
                  Ob man da einfach nur *.precense eingeben kann und er das überall findet weiß ich nicht. Müsste man testen.

                  Zeigt eure Lovelace-Visualisierung klick
                  (Auch ideal um sich Anregungen zu holen)

                  Meine Tabellen für eure Visualisierung klick

                  1 Antwort Letzte Antwort
                  0
                  • dslraserD Offline
                    dslraserD Offline
                    dslraser
                    Forum Testing Most Active
                    schrieb am zuletzt editiert von dslraser
                    #9

                    ich habe das z.B. so (für eine Aufzählung)

                    9460804B-5DB4-415C-B17A-F4FB876E3059.jpeg

                    9CFE3725-F457-4A47-8141-B6A28D032224.jpeg

                    wobei die Schreibweise (groß/klein) übereinstimmen muss. (der Teil hinter enum.functions. ist der gesuchte)

                    1 Antwort Letzte Antwort
                    0
                    • J Offline
                      J Offline
                      jensven
                      schrieb am zuletzt editiert von jensven
                      #10

                      Ich habe jetzt mal folgendes versucht:
                      state[id].jpg
                      functions.jpg
                      Aber es kam nie zu nem debug output.
                      Hab natürlich nen sensor zum auslösen jedes mal gebracht.

                      ich hab das ja so richtig gemacht oder?
                      Die direkten datenpunkte von precense rein gemacht
                      aufzaehlung.jpg

                      paul53P David G.D N 3 Antworten Letzte Antwort
                      0
                      • J jensven

                        Ich habe jetzt mal folgendes versucht:
                        state[id].jpg
                        functions.jpg
                        Aber es kam nie zu nem debug output.
                        Hab natürlich nen sensor zum auslösen jedes mal gebracht.

                        ich hab das ja so richtig gemacht oder?
                        Die direkten datenpunkte von precense rein gemacht
                        aufzaehlung.jpg

                        paul53P Offline
                        paul53P Offline
                        paul53
                        schrieb am zuletzt editiert von paul53
                        #11

                        @jensven sagte: es kam nie zu nem debug output.

                        Javascript-Instanz neu starten.
                        Im ersten Fall ist im Trigger ein Hochkomma zu viel oder zu wenig.

                        *.presence(functions=bewegung_alle)
                        

                        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                        J 1 Antwort Letzte Antwort
                        1
                        • J jensven

                          Ich habe jetzt mal folgendes versucht:
                          state[id].jpg
                          functions.jpg
                          Aber es kam nie zu nem debug output.
                          Hab natürlich nen sensor zum auslösen jedes mal gebracht.

                          ich hab das ja so richtig gemacht oder?
                          Die direkten datenpunkte von precense rein gemacht
                          aufzaehlung.jpg

                          David G.D Offline
                          David G.D Offline
                          David G.
                          schrieb am zuletzt editiert von
                          #12

                          @jensven

                          Und beim oberen Trigger fehlt ein Anführungszeichen oder?

                          Zeigt eure Lovelace-Visualisierung klick
                          (Auch ideal um sich Anregungen zu holen)

                          Meine Tabellen für eure Visualisierung klick

                          1 Antwort Letzte Antwort
                          0
                          • J jensven

                            Ich habe jetzt mal folgendes versucht:
                            state[id].jpg
                            functions.jpg
                            Aber es kam nie zu nem debug output.
                            Hab natürlich nen sensor zum auslösen jedes mal gebracht.

                            ich hab das ja so richtig gemacht oder?
                            Die direkten datenpunkte von precense rein gemacht
                            aufzaehlung.jpg

                            N Offline
                            N Offline
                            Nordischerjung
                            schrieb am zuletzt editiert von Nordischerjung
                            #13

                            @jensven war quatsch von mir

                            Gruß Nordischerjung

                            sonnige Grüße von der Ostsee

                            1 Antwort Letzte Antwort
                            0
                            • paul53P paul53

                              @jensven sagte: es kam nie zu nem debug output.

                              Javascript-Instanz neu starten.
                              Im ersten Fall ist im Trigger ein Hochkomma zu viel oder zu wenig.

                              *.presence(functions=bewegung_alle)
                              
                              J Offline
                              J Offline
                              jensven
                              schrieb am zuletzt editiert von jensven
                              #14

                              @paul53
                              das mit dem

                              *.
                              

                              war es dann. Ich hatte ja die ganze Zeit

                              id=presence
                              

                              drinnen stehen (c und s hatte ich dabei auch vertauscht)

                              Unbenannt.jpg

                              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

                              750

                              Online

                              32.6k

                              Benutzer

                              82.0k

                              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