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. Verständnisfrage Zeichenkette / String

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

Verständnisfrage Zeichenkette / String

Geplant Angeheftet Gesperrt Verschoben Blockly
8 Beiträge 3 Kommentatoren 617 Aufrufe 2 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.
  • T Offline
    T Offline
    Takahara
    schrieb am zuletzt editiert von
    #1

    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 Antwort Letzte Antwort
    0
    • T Takahara

      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 Offline
      R Offline
      Ralf 2
      schrieb am zuletzt editiert von
      #2

      @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.

      Gruß Ralf

      T 1 Antwort Letzte Antwort
      1
      • R Ralf 2

        @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 Offline
        T Offline
        Takahara
        schrieb am zuletzt editiert von
        #3

        @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 Antwort Letzte Antwort
        0
        • R Offline
          R Offline
          Ralf 2
          schrieb am zuletzt editiert von Ralf 2
          #4

          @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?

          Gruß Ralf

          T HomoranH 2 Antworten Letzte Antwort
          1
          • R 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 Offline
            T Offline
            Takahara
            schrieb am zuletzt editiert von Homoran
            #5

            @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

            HomoranH 1 Antwort Letzte Antwort
            0
            • T Takahara

              @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

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

              @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

              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
              1
              • R 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?
                HomoranH Nicht stören
                HomoranH Nicht stören
                Homoran
                Global Moderator Administrators
                schrieb am zuletzt editiert von Homoran
                #7

                @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

                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 -

                HomoranH 1 Antwort Letzte Antwort
                1
                • HomoranH 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

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

                  @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.

                  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
                  Antworten
                  • In einem neuen Thema antworten
                  Anmelden zum Antworten
                  • Älteste zuerst
                  • Neuste zuerst
                  • Meiste Stimmen


                  Support us

                  ioBroker
                  Community Adapters
                  Donate

                  648

                  Online

                  32.7k

                  Benutzer

                  82.3k

                  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