Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Verständnisfrage Zeichenkette / String

    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

    Verständnisfrage Zeichenkette / String

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

      Hallo Community,

      ich versuche ein Datenpunkt vom Typ String/ Zeichenkette einzulesen und auszuwerten. "HeatingMode".

      2025-06-07 07_10_31-javascript - smarthomeraspi.png

      Ist es richtig umgesetzt, das ich erst die interne Variable "heatingMode" setze mit dem Wert des Datenpunktes "heatingMode" und dann den Vergleich anstelle "heatingMode" ungleich "summer"?

      2025-06-07 07_11_32-objects - smarthomeraspi.png

      Mit dem Script möchte ich meine Heizung zwischen Sommer-/Winterbetrieb umschalten.

      R 1 Reply Last reply Reply Quote 0
      • R
        Ralf 2 @Takahara last edited by

        @takahara
        Du brauchst eigentlich nicht zuerst den Datenpunkt in eine Variable sichern, sondern kannst unten auch direkt mit dem Datenpunkt arbeiten. Du zeigst die einstellung von einem State unter 0_userdata, den hast du ja selber erstellt. Bist du dir aber sicher, das der originale Datenpunkt ebenfalls vom Typ String ist? Zumeist sind diese DP vom Typ Number, oder mit unter Mixed und trotzdem kommt eine Zahl rein. Dann wird unter States der Menschenlesbare Wert als String hinterlegt.

        Z.B.:

        {
          "_id": "ems-esp.0.heatingCircuits.hc1.hpmode",
          "type": "state",
          "common": {
            "id": "thermostat.hc1.hpmode",
            "name": "ems:HK1 WP-Modus (thermostat)",
            "type": "mixed",
            "read": true,
            "write": true,
            "role": "level",
            "states": {
              "0": "Heizen",
              "1": "Kühlen",
              "2": "Heizen & Kühlen"
            }
          },
          "native": {
            "ems_enum": [
              "Heizen",
              "Kühlen",
              "Heizen & Kühlen"
            ],
            "ems_type": "enum",
            "visible": true,
            "ems_command": "hpmode",
            "ems_device": "thermostat",
            "ems_id": "hc1",
            "ems_api": "3.7.2"
          },
          "from": "system.adapter.ems-esp.0",
          "user": "system.user.admin",
          "ts": 1749044767370,
          "acl": {
            "object": 1638,
            "state": 1638,
            "owner": "system.user.admin",
            "ownerGroup": "system.group.administrator"
          }
        }
        

        Ich müßte hier für Heizen eine 0 in den State schreiben, für Heizen und Kühlen eine 2. Schau dir deinen orginalen Datenpunkt einmal genauer an.

        T 1 Reply Last reply Reply Quote 1
        • T
          Takahara @Ralf 2 last edited by

          @ralf-2 said in Verständnisfrage Zeichenkette / String:

          Du brauchst eigentlich nicht zuerst den Datenpunkt in eine Variable sichern, sondern kannst unten auch direkt mit dem Datenpunkt arbeiten. Du zeigst die einstellung von einem State unter 0_userdata, den hast du ja selber erstellt. Bist du dir aber sicher, das der originale Datenpunkt ebenfalls vom Typ String ist?
          Schau dir deinen orginalen Datenpunkt einmal genauer an.

          Was kann ich anders machen um den Datenpunkt zu erstellen?

          2025-06-07 08_57_59-objects - smarthomeraspi.png

          VG Takahara

          1 Reply Last reply Reply Quote 0
          • R
            Ralf 2 last edited by Ralf 2

            @takahara
            Welchen Datenpunkt willst du denn steuern?
            Ein Datenpunkt unter 0_Userdata steuert ja kein Gerät. Zeige mal bitte den orginalen Datenpunkt. Dazu oben auf den Kopf klicken um in den Expertenmodus zu kommen
            98b2fb5a-6ede-4bf2-b2ac-7550745e661f-image.png
            Dann beim zu steuernden Datenpunkt auf den Stift klicken 1f2eb8f9-5fc9-4d88-8155-943391fdfd98-image.png
            Dann das was du unter Objektdaten siehst in die Zwischenablage kopieren
            3647ba2d-dca5-4628-b4fa-4f36e178abe9-image.png
            und hier in Codetags einfügen
            7179c1b2-52f8-4eb2-927f-da1ff8af7465-image.png

            Was ich jedoch immer noch nicht verstehe:

            • Du willst einen Datenpunkt unter 0_Userdata erstellen
            • Du willst mit einem Blockly diesen Datenpunkt steuern
            • Wie soll das aber mit der Heizung in Bezug stehen? Wie ist die Heizung selber in IOBroker integriert?
            T Homoran 2 Replies Last reply Reply Quote 1
            • T
              Takahara @Ralf 2 last edited by Homoran

              @ralf-2 said in Verständnisfrage Zeichenkette / String:

              Welchen Datenpunkt willst du denn steuern?

              Ich möchte den selbst erzeugten Datenpunkt "heatingMode" schreiben und lesen können. Der Datenpunkt soll zwei Werte annehmen können (winter/summer). Es soll auch möglich sein, eine Wenn-Bedingung zu Prüfen. Z.B. "wenn Datenpunkt heatingMode gleich "summer", dann...

              und hier in Codetags einfügen

              {
              >   "common": {
              >     "name": "heatingMode",
              >     "desc": "Manuell erzeugt",
              >     "role": "state",
              >     "type": "string",
              >     "read": true,
              >     "write": true,
              >     "def": "",
              >     "custom": {
              >       "influxdb.0": {
              >         "enabled": true,
              >         "storageType": "",
              >         "aliasId": "",
              >         "debounceTime": 0,
              >         "blockTime": 0,
              >         "changesOnly": false,
              >         "changesRelogInterval": 3600,
              >         "changesMinDelta": 0,
              >         "ignoreBelowNumber": "",
              >         "disableSkippedValueLogging": false,
              >         "enableDebugLogs": false,
              >         "debounce": 0
              >       }
              >     }
              >   },
              >   "type": "state",
              >   "native": {},
              >   "_id": "0_userdata.0.Heizung.heatingMode",
              >   "acl": {
              >     "object": 1636,
              >     "state": 1636,
              >     "owner": "system.user.admin",
              >     "ownerGroup": "system.group.administrator"
              >   },
              >   "from": "system.adapter.admin.0",
              >   "user": "system.user.admin",
              >   "ts": 1749271061052
              > }
              > 
              > Was ich jedoch immer noch nicht verstehe:
              >  - Du willst einen Datenpunkt unter 0_Userdata erstellen Takahara said: Korrekt
              > - Du willst mit einem Blockly diesen Datenpunkt steuern Takahara said: steuern und lesen. 
              > - Wie soll das aber mit der Heizung in Bezug stehen? Wie ist die Heizung selber in IOBroker integriert?
              

              MOD-EDIT: Code in code-tags gesetzt!

              Ich habe ein Homematic IP System und möchte in Abhängigkeit vom Wert des Datenpunktes "heatingMode" die Heizungsventile in den Sommer-/Winterbetrieb schalten.
              2025-06-07 10_16_06-javascript - smarthomeraspi.png

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

                @takahara sagte in Verständnisfrage Zeichenkette / String:

                Der Datenpunkt soll zwei Werte annehmen können (winter/summer)

                Das wäre ein typischer Fall für einen Bool

                Datenpunkt "Sommer" true oder false

                1 Reply Last reply Reply Quote 1
                • Homoran
                  Homoran Global Moderator Administrators @Ralf 2 last edited by Homoran

                  @ralf-2 sagte in Verständnisfrage Zeichenkette / String:

                  Dann beim zu steuernden Datenpunkt auf den Stift klicken

                  @Takahara
                  das wäre der HmIP Datenpunkt!
                  zeig uns bitte da von einem die Objektdaten in code-tags

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

                    @homoran sagte in Verständnisfrage Zeichenkette / String:

                    @ralf-2 sagte in Verständnisfrage Zeichenkette / String:

                    Dann beim zu steuernden Datenpunkt auf den Stift klicken

                    @Takahara
                    das wäre der HmIP Datenpunkt!
                    zeig uns bitte da von einem die Objektdaten in code-tags

                    @Takahara kommt das noch?

                    bei nochmaligem Ansehen fiel mehr leider jetzt erst auf, dass du auch bei eigenen Datenpunkten fälschlicherweise "steuere" verwendest, obwohl diese Datenpunkte nichts steuern.

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

                    Support us

                    ioBroker
                    Community Adapters
                    Donate

                    882
                    Online

                    31.8k
                    Users

                    80.0k
                    Topics

                    1.3m
                    Posts

                    3
                    8
                    236
                    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