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. JavaScript
  5. Datentyp eines Boolean Datenpunktes ist String?

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    22
    1
    1.1k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.4k

Datentyp eines Boolean Datenpunktes ist String?

Geplant Angeheftet Gesperrt Verschoben JavaScript
7 Beiträge 4 Kommentatoren 443 Aufrufe 3 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.
  • I Offline
    I Offline
    iob69
    schrieb am zuletzt editiert von
    #1

    Hallo,
    hab einen Datenpunkt vom Typ boolean angelegt:

    {
      "common": {
        "name": "TestBoolean",
        "desc": "Manuell erzeugt",
        "role": "state",
        "type": "boolean",
        "read": true,
        "write": true,
        "def": false
      },
      "type": "state",
      "native": {},
      "from": "system.adapter.admin.0",
      "user": "system.user.admin",
      "ts": 1747227630695,
      "_id": "0_userdata.0.Steuerzentrale.SettingsHaus.TestBoolean",
      "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
      }
    }
    

    Nach langem debuggen hab ich dann herausgefunden, dass getState des datentyps plötzlich String ergibt:

    console.log(typeof(getState('0_userdata.0.TestBoolean').val));
    

    Ausgabe:

    javascript.0	16:31:02.431	info	script.js.Eigene_Scripte.Run.Test: string?!
    

    Weiss jemand ob ich was falsch mache, oder wie man das richtig stellen kann? Liegt das Problem beim Datenpunkt oder bei getState()?

    M paul53P OliverIOO 3 Antworten Letzte Antwort
    0
    • I iob69

      Hallo,
      hab einen Datenpunkt vom Typ boolean angelegt:

      {
        "common": {
          "name": "TestBoolean",
          "desc": "Manuell erzeugt",
          "role": "state",
          "type": "boolean",
          "read": true,
          "write": true,
          "def": false
        },
        "type": "state",
        "native": {},
        "from": "system.adapter.admin.0",
        "user": "system.user.admin",
        "ts": 1747227630695,
        "_id": "0_userdata.0.Steuerzentrale.SettingsHaus.TestBoolean",
        "acl": {
          "object": 1636,
          "state": 1636,
          "owner": "system.user.admin",
          "ownerGroup": "system.group.administrator"
        }
      }
      

      Nach langem debuggen hab ich dann herausgefunden, dass getState des datentyps plötzlich String ergibt:

      console.log(typeof(getState('0_userdata.0.TestBoolean').val));
      

      Ausgabe:

      javascript.0	16:31:02.431	info	script.js.Eigene_Scripte.Run.Test: string?!
      

      Weiss jemand ob ich was falsch mache, oder wie man das richtig stellen kann? Liegt das Problem beim Datenpunkt oder bei getState()?

      M Online
      M Online
      MCU
      schrieb am zuletzt editiert von
      #2

      @iob69 Da passt aber etwas nicht.
      Du zeigt die Objekt-Eigenschaften vom DP "0_userdata.0.Steuerzentrale.SettingsHaus.TestBoolean"

      Und die Ausgabe von einem anderen DP '0_userdata.0.TestBoolean'
      Um welchen DP geht es denn?

      NUC i7 64GB mit Proxmox ---- Jarvis Infos Aktualisierungen der Doku auf Instagram verfolgen -> mcuiobroker Instagram
      Wenn Euch mein Vorschlag geholfen hat, bitte rechts "^" klicken.

      I 1 Antwort Letzte Antwort
      1
      • I iob69

        Hallo,
        hab einen Datenpunkt vom Typ boolean angelegt:

        {
          "common": {
            "name": "TestBoolean",
            "desc": "Manuell erzeugt",
            "role": "state",
            "type": "boolean",
            "read": true,
            "write": true,
            "def": false
          },
          "type": "state",
          "native": {},
          "from": "system.adapter.admin.0",
          "user": "system.user.admin",
          "ts": 1747227630695,
          "_id": "0_userdata.0.Steuerzentrale.SettingsHaus.TestBoolean",
          "acl": {
            "object": 1636,
            "state": 1636,
            "owner": "system.user.admin",
            "ownerGroup": "system.group.administrator"
          }
        }
        

        Nach langem debuggen hab ich dann herausgefunden, dass getState des datentyps plötzlich String ergibt:

        console.log(typeof(getState('0_userdata.0.TestBoolean').val));
        

        Ausgabe:

        javascript.0	16:31:02.431	info	script.js.Eigene_Scripte.Run.Test: string?!
        

        Weiss jemand ob ich was falsch mache, oder wie man das richtig stellen kann? Liegt das Problem beim Datenpunkt oder bei getState()?

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

        @iob69 sagte: Liegt das Problem beim Datenpunkt oder bei getState()?

        Weder ... noch. Du schreibst irgendwo einen String in den Datenpunkt. Es wird zwar gewarnt, dass der Typ nicht stimmt, aber es wird nicht verhindert.

        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

        1 Antwort Letzte Antwort
        1
        • I iob69

          Hallo,
          hab einen Datenpunkt vom Typ boolean angelegt:

          {
            "common": {
              "name": "TestBoolean",
              "desc": "Manuell erzeugt",
              "role": "state",
              "type": "boolean",
              "read": true,
              "write": true,
              "def": false
            },
            "type": "state",
            "native": {},
            "from": "system.adapter.admin.0",
            "user": "system.user.admin",
            "ts": 1747227630695,
            "_id": "0_userdata.0.Steuerzentrale.SettingsHaus.TestBoolean",
            "acl": {
              "object": 1636,
              "state": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
            }
          }
          

          Nach langem debuggen hab ich dann herausgefunden, dass getState des datentyps plötzlich String ergibt:

          console.log(typeof(getState('0_userdata.0.TestBoolean').val));
          

          Ausgabe:

          javascript.0	16:31:02.431	info	script.js.Eigene_Scripte.Run.Test: string?!
          

          Weiss jemand ob ich was falsch mache, oder wie man das richtig stellen kann? Liegt das Problem beim Datenpunkt oder bei getState()?

          OliverIOO Offline
          OliverIOO Offline
          OliverIO
          schrieb am zuletzt editiert von OliverIO
          #4

          @iob69
          Was steht den genau im datenpunkt aktuell drin?

          Wenn der datenpunkt zuvor ein anderer Datentyp war und du den auf Boolean umstellt, führ iobroker keine automatische Konvertierung aus. Nur bei der Eingabe würd die Gültigkeit überprüft.

          Gültig ist auch nur true und false, beides klein geschrieben. Wobei bei der Eingabe in der Objektivität das eh über ein Schalter passiert, bei der man keinen Fehler machen kann.

          Ich glaube gelegentlich gibt es bei vis noch Probleme. Da muss man dann tatsächlich auf String prüfen. Kann aber sein, das das I. Neueren Versionen oder vis2 verbessert wurde.

          Meine Adapter und Widgets
          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
          Links im Profil

          1 Antwort Letzte Antwort
          1
          • M MCU

            @iob69 Da passt aber etwas nicht.
            Du zeigt die Objekt-Eigenschaften vom DP "0_userdata.0.Steuerzentrale.SettingsHaus.TestBoolean"

            Und die Ausgabe von einem anderen DP '0_userdata.0.TestBoolean'
            Um welchen DP geht es denn?

            I Offline
            I Offline
            iob69
            schrieb am zuletzt editiert von
            #5

            @mcu
            Ich hab den Pfad in der Frage extra gekürzt, um die Frage einfacher zu gestalten, allerdings hat sich das jetzt als Boomerang erwiesen, sorry. Aber das ist der selbe DP.

            @paul53
            Ich schreibe selbst nichts rein, aber das hat mich auf das Problem gebracht:
            Ich hab den Datenpunkt dem Widget Radiobuttons Valuelist angegeben. Und dort kann man für die entsprechenden Werte was angeben, und das ist ja offensichtlich ein String. Da hab ich beim eintragen nicht daran gedacht und dort:
            548b3ef8-0b65-4ba8-a050-11db01540250-grafik.png
            eingegeben.
            Da kommt für mich die Frage auf: Könnte man das dort gleich als Boolean casten? Wahrscheinlich nicht.
            Das Problem war ja schon, mit dem normalen Radio-Button, welches 1 oder 0 in den Datenpunkt schreibt. Für ein oder aus wäre aber boolean das korrekte und nicht 0 oder 1 oder 3...
            Aber ich sehe jetzt wo der Fehler liegt. Danke

            paul53P 1 Antwort Letzte Antwort
            0
            • I iob69

              @mcu
              Ich hab den Pfad in der Frage extra gekürzt, um die Frage einfacher zu gestalten, allerdings hat sich das jetzt als Boomerang erwiesen, sorry. Aber das ist der selbe DP.

              @paul53
              Ich schreibe selbst nichts rein, aber das hat mich auf das Problem gebracht:
              Ich hab den Datenpunkt dem Widget Radiobuttons Valuelist angegeben. Und dort kann man für die entsprechenden Werte was angeben, und das ist ja offensichtlich ein String. Da hab ich beim eintragen nicht daran gedacht und dort:
              548b3ef8-0b65-4ba8-a050-11db01540250-grafik.png
              eingegeben.
              Da kommt für mich die Frage auf: Könnte man das dort gleich als Boolean casten? Wahrscheinlich nicht.
              Das Problem war ja schon, mit dem normalen Radio-Button, welches 1 oder 0 in den Datenpunkt schreibt. Für ein oder aus wäre aber boolean das korrekte und nicht 0 oder 1 oder 3...
              Aber ich sehe jetzt wo der Fehler liegt. Danke

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

              @iob69 sagte: Widget Radiobuttons Valuelist

              Der ordnet Zahlenwerten Texte zu. Es gibt doch auch einen Radiobutton für boolesche Werte (Radiobuttons On/Off)?

              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

              I 1 Antwort Letzte Antwort
              0
              • paul53P paul53

                @iob69 sagte: Widget Radiobuttons Valuelist

                Der ordnet Zahlenwerten Texte zu. Es gibt doch auch einen Radiobutton für boolesche Werte (Radiobuttons On/Off)?

                I Offline
                I Offline
                iob69
                schrieb am zuletzt editiert von iob69
                #7

                @paul53
                Ja, aber wie ich geschrieben hab, ordnet der wahr/falsch eben 1/0 zu und nicht true/false.

                Bin gerade am überlegen, ob ich auf vis2 oder webui wechsle. Die Controls in vis fühlen sich ziemlich gebastelt an und sind nicht standardisiert. (jqui-widgets haben alle andere Grössen und Stile, mal kann man jQuery style rausnehmen, mal nicht usw).
                Aber ich weiss nicht wie aufwendig es ist, meine rund 30 Seiten auf ein anderes gui umzustellen....

                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

                390

                Online

                32.5k

                Benutzer

                81.6k

                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