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. Fehlermeldung "Wrong type of…: "string"

NEWS

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.1k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.0k

Fehlermeldung "Wrong type of…: "string"

Geplant Angeheftet Gesperrt Verschoben Skripten / Logik
12 Beiträge 2 Kommentatoren 2.2k Aufrufe
  • Ä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.
  • paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von
    #2
    getState("weatherunderground.0.forecast.0d.tempMax").val
    

    liefert einen String, der in eine Zahl gewandelt werden muss.

    parseFloat(getState("weatherunderground.0.forecast.0d.tempMax").val)
    

    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
    0
    • K Offline
      K Offline
      Kunibert
      schrieb am zuletzt editiert von
      #3

      Komischerweise benutze ich aber einfach diese Standard-Blockly-Funktion und es wird ja auch nicht bei jeder Variablen angemerkt:
      1129_2018-08-22_11_15_20-window.png

      Hier die Quell-Variable:

      {
        "from": "system.adapter.weatherunderground.0",
        "ts": 1534497303725,
        "common": {
          "name": "high temperature",
          "type": "number",
          "unit": "°C",
          "role": "value.temperature.max.forecast.0",
          "read": true,
          "write": false
        },
        "native": {
          "id": "forecast.0d.high.celsius"
        },
        "acl": {
          "object": 1636,
          "owner": "system.user.admin",
          "ownerGroup": "system.group.administrator",
          "state": 1636
        },
        "_id": "weatherunderground.0.forecast.0d.tempMax",
        "type": "state"
      }
      

      Einen Wert aus einer Variablen (Typ: Number) in ein anderes Variablen-Feld (Typ Number) schreiben muss doch auch via Blockly ohne Skripting funktionieren, oder nicht?

      1 Antwort Letzte Antwort
      0
      • paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von
        #4

        @Kunibert:

        Einen Wert aus einer Variablen (Typ: Number) in ein anderes Variablen-Feld (Typ Number) schreiben muss doch auch via Blockly ohne Skripting funktionieren, oder nicht? `
        Ja, aber nur dann, wenn der Quell-Datenpunkt tatsächlich einen Wert vom Typ "number" enthält. Das ist nicht in jedem Fall sicher.

        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
        0
        • K Offline
          K Offline
          Kunibert
          schrieb am zuletzt editiert von
          #5

          In diesem Fall sind jedoch Quell-Datenpunkt und Ziel-Datenpunkt identisch vom Typ "number" > siehe Screenshot. Daher verstehe ich die Meldung auch nicht.

          1 Antwort Letzte Antwort
          0
          • paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von
            #6

            Wo "number" drauf steht muss nicht "number" drin sein. Einige Adapter sind recht schlampig programmiert. Überprüfe was drin ist:

            log(typeof getState("weatherunderground.0.forecast.0d.tempMax").val);
            

            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
            0
            • K Offline
              K Offline
              Kunibert
              schrieb am zuletzt editiert von
              #7

              @paul53:

              Wo "number" drauf steht muss nicht "number" drin sein. Einige Adapter sind recht schlampig programmiert. Überprüfe was drin ist:

              log(typeof getState("weatherunderground.0.forecast.0d.tempMax").val);
              ```` `  
              

              Die Ausgabe ergibt:
              > script.js.Status.test: getState(id=weatherunderground.0.forecast.0d.tempMax, timerId=1210) => {"val":"30","ack":true,"ts":1534932909441,"q":0,"from":"system.adapter.weatherunderground.0","lc":1534932

              Kannst du daraus erkennen, welcher Variablentyp es ist? Auf jeden Fall scheint das Feld ja den Inhalt "30" und damit klar eine Nummer zu haben.

              1 Antwort Letzte Antwort
              0
              • paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von
                #8

                Das ist nicht die Log-Ausgabe.
                @Kunibert:

                Auf jeden Fall scheint das Feld ja den Inhalt "30" und damit klar eine Nummer zu haben. `
                Nein, der Wert kann 30 (number) oder "30" (string) sein. In der Log-Ausgabe des Wertes kann man es nicht unterscheiden. Deshalb

                log(typeof getState("weatherunderground.0.forecast.0d.tempMax").val);
                

                wird die Logausgabe wahrscheinlich sein

                string
                

                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
                0
                • K Offline
                  K Offline
                  Kunibert
                  schrieb am zuletzt editiert von
                  #9

                  Danke, du hast es vorhergesehen :-)

                  Das Log sagt String. Komisch, wo doch die Variable in der Definition "number" ist. Macht es Sinn das auf Github als Fehler zu melden?

                  Und bekomme ich das mit Blockly dennoch gelöst oder muss ich dann ein Javascript daraus bauen? Blockly wäre schön :)

                  1 Antwort Letzte Antwort
                  0
                  • paul53P Offline
                    paul53P Offline
                    paul53
                    schrieb am zuletzt editiert von
                    #10

                    @Kunibert:

                    Und bekomme ich das mit Blockly dennoch gelöst oder muss ich dann ein Javascript daraus bauen? Blockly wäre schön `
                    Ja, Konvertierung: nach Zahl

                    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
                    0
                    • paul53P Offline
                      paul53P Offline
                      paul53
                      schrieb am zuletzt editiert von
                      #11

                      @Kunibert:

                      Macht es Sinn das auf Github als Fehler zu melden? `
                      Ja, es ist ein Fehler, wenn common.type: "number" und der Wert als String übergeben wird.

                      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
                      0
                      • K Offline
                        K Offline
                        Kunibert
                        schrieb am zuletzt editiert von
                        #12

                        Vielen Dank für deine Hilfe! Ich teste teste das mal mit Blockly und eröffne bei Github einen Issue.

                        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

                        478

                        Online

                        32.4k

                        Benutzer

                        81.5k

                        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