Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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. ioBroker Allgemein
  4. simpleApi weiß nicht mehr welchen Typ er will

NEWS

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    11
    1
    539

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    1.9k

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    11
    1
    857

simpleApi weiß nicht mehr welchen Typ er will

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
22 Beiträge 5 Kommentatoren 1.7k Aufrufe 3 Beobachtet
  • Ä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.
  • K Online
    K Online
    klassisch
    Most Active
    schrieb am zuletzt editiert von
    #8

    In diesem Beispiel ist es derselbe ESP, der eben eine Temperatur ausgibt.
    Und er gibt z.B. 12.72 aus
    Und das schon seit Jahren. Bisher ohne Probleme.
    Das ist ja nur eine Zeichenfolge, die übers Lan eingeliefert wird. Da kann es keine Types geben. Kann man ja auch vom Browsr aus absenden.
    Der Typ steht in den Daten.
    Aber egal, was ich da hinterlege, es wird mit Verweis auf simpleApi angemeckert.

    HomoranH 1 Antwort Letzte Antwort
    0
    • K klassisch

      In diesem Beispiel ist es derselbe ESP, der eben eine Temperatur ausgibt.
      Und er gibt z.B. 12.72 aus
      Und das schon seit Jahren. Bisher ohne Probleme.
      Das ist ja nur eine Zeichenfolge, die übers Lan eingeliefert wird. Da kann es keine Types geben. Kann man ja auch vom Browsr aus absenden.
      Der Typ steht in den Daten.
      Aber egal, was ich da hinterlege, es wird mit Verweis auf simpleApi angemeckert.

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

      @klassisch sagte in simpleApi weiß nicht mehr welchen Typ er will:

      Da kann es keine Types geben.

      doch
      @Jey-Cee wird das sicher noch besser wissen, aber eine Dezimale mit Komma würde vom ioBroker definitiv als String identifiziert.
      Und die Wahrscheinlichkeit dass eine Ganzzahlige als Number durchgehenwird sehe ich auch

      dass es bisher "geklappt" hat lag daran, dss es keine Typprüfung gab

      kein Support per PN! - Fragen im Forum stellen -
      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
      Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton oben rechts. Danke!
      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      1 Antwort Letzte Antwort
      0
      • K klassisch

        SimpleApi dient mir seit Jahren beim Einliefern von Werten von meinen ESP8266 Sensoren. Bislang treu und klaglos.
        Die ESP-Sensoren senden ja ASCII Zeichen und wissen nichts von JS Typen.
        Die JS Typen sind in den Objekten hinterlegt.
        Bislang alles harmonisch und still.
        Jetzt habe ich als last follower eine Updaterunde aus dem Stable repository auf eine neue Serverinstanz gewagt:

            js-controller 3.3.22    
            Plattform: Windows
            Betriebssystem: win32
            Architektur: x64
            CPUs: 4
            Geschwindigkeit: 2496 MHz
            Modell: Intel(R) Core(TM) i5-6300U CPU @ 2.40GHz
            RAM: 7.3 GB
            System-Betriebszeit: 00:00:00
            Node.js: v14.18.2
            NPM: 6.14.15
            Adapter-Anzahl: 364
            Datenträgergröße: 166.5 GB
            Festplatte frei: 102.9 GB
            Betriebszeit: 1 T. 21:12:01
            Aktive Instanzen: 31
            Pfad: C:\Program Files\iobroker\ioBrMain036\
        

        SimpleApi v2.6.1
        Admin 5.2.2

        Mittlerweile bekomme ich im log ständig weiße info-Meldungen mit simple-api.0 als source, wie z.B.

        State value to set for "0_userdata.0.heating.Keller.Temp" has to be type "number" but received type "string" 
        

        Ok, hat vielleicht jemand das Control-Level hochgedreht.
        Eingeliefert wird ein String, was soll sonst auch übers Netzwerk kommen?

        Der Datenpunkt hat type Number, weil soll so als Numder weiter verarbeitet werden.
        Aber gut, dann typisieren wir den Datenpunkt mal händisch auf String um und erwarten dann halt eventuell eine Fehlermeldung, wenn das Datum per Script weiter verarbeitet wird.
        Ich brauche aber gar nicht so lange zu warten, denn jetzt heißt es:

        State value to set for "0_userdata.0.heating.Keller.Temp" has to be type "string" but received type "number" 
        

        Was will der simpleApi jetzt? Der ESP sendet noch immer im gleichen Format wie seit Jahren.

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

        @klassisch sagte: has to be type "number" but received type "string"

        Laut Quellcode sollte in eine Zahl gewandelt werden.

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: Asus PN 42 / N100 / 8 GB / 500 GB

        K 1 Antwort Letzte Antwort
        0
        • paul53P paul53

          @klassisch sagte: has to be type "number" but received type "string"

          Laut Quellcode sollte in eine Zahl gewandelt werden.

          K Online
          K Online
          klassisch
          Most Active
          schrieb am zuletzt editiert von
          #11

          @paul53 Das hätte ich auch erwartet.

          Schauen wir uns ein anderes Beispiel an:

          State value to set for "0_userdata.0.heating.Werkstatt.H-abs" has to be type "number" but received type "string" 
          

          Das Objekt hat Typ number

          {
            "from": "system.adapter.admin.0",
            "user": "system.user.admin",
            "ts": 1588573013258,
            "common": {
              "name": "H-abs",
              "role": "",
              "type": "number",
              "desc": "Manuell erzeugt",
              "unit": "g/m^3",
              "read": true,
              "write": true,
              "def": false,
          

          Der ESP sendet 6.20

          Jetzt ändere ich manuell in string

           "name": "H-abs",
              "role": "",
              "type": "string",
              "desc": "Manuell erzeugt",
              "unit": "g/m^3",
              "read": true,
              "write": true,
             
          

          und ich erhalte:

          State value to set for "0_userdata.0.heating.Werkstatt.H-abs" has to be type "string" but received type "number. 
          

          Jetzt gebe ich vom Browser aus ein:
          ...:8087/set/0_userdata.0.heating.Werkstatt.H-abs?value=6.30

          und erhalte im Browser die Antwort

          id	"0_userdata.0.heating.Werkstatt.H-abs"
          value	6.3
          val	6.3
          

          und im iobroker log

          State value to set for "0_userdata.0.heating.Werkstatt.H-abs" has to be type "string" but received type "number
          

          Und in den Objekten sehe ich 6,3

          Wo kommt jetzt das Komma her? Ich arbeite seit Jahr und Tag mit Punkt.

          Jey CeeJ 1 Antwort Letzte Antwort
          0
          • K Online
            K Online
            klassisch
            Most Active
            schrieb am zuletzt editiert von
            #12

            Aha, in den Systemeinstellungen steht FloaterTeiler "," statt "."

            Da hat das Update wohl was verstellt

            bahnuhrB 1 Antwort Letzte Antwort
            0
            • K klassisch

              Aha, in den Systemeinstellungen steht FloaterTeiler "," statt "."

              Da hat das Update wohl was verstellt

              bahnuhrB Online
              bahnuhrB Online
              bahnuhr
              Forum Testing Most Active
              schrieb am zuletzt editiert von
              #13

              @klassisch sagte in simpleApi weiß nicht mehr welchen Typ er will:

              Systemeinstellungen steht FloaterTeiler "," statt "."

              wo steht das ?
              welche Systemeinstellungen ?


              Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
              Danke.
              gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
              ScreenToGif :https://www.screentogif.com/downloads.html

              K 1 Antwort Letzte Antwort
              0
              • bahnuhrB bahnuhr

                @klassisch sagte in simpleApi weiß nicht mehr welchen Typ er will:

                Systemeinstellungen steht FloaterTeiler "," statt "."

                wo steht das ?
                welche Systemeinstellungen ?

                K Online
                K Online
                klassisch
                Most Active
                schrieb am zuletzt editiert von
                #14

                @bahnuhr 1a03782e-812e-4b1f-a052-2e50acdb4127-grafik.png

                1 Antwort Letzte Antwort
                0
                • Jey CeeJ Online
                  Jey CeeJ Online
                  Jey Cee
                  Developer
                  schrieb am zuletzt editiert von
                  #15

                  @klassisch nimm mal das folgende Skript pass die ID an und beobachte die Ausgaben wenn dein ESP Daten schickt.

                  on({id: '0_userdata.0.example_state'},
                      (obj) => {
                          log( `${typeof( obj.state.val )}, value: ${obj.state.val}` );
                      })
                  

                  @klassisch sagte in simpleApi weiß nicht mehr welchen Typ er will:

                  Aha, in den Systemeinstellungen steht FloaterTeiler "," statt "."

                  Das ist reine Kosmetik, intern wird immer noch mit "." gearbeitet.

                  Persönlicher Support
                  Spenden -> paypal.me/J3YC33

                  K 1 Antwort Letzte Antwort
                  0
                  • K Online
                    K Online
                    klassisch
                    Most Active
                    schrieb am zuletzt editiert von
                    #16

                    Habe jetzt den Datentyp wieder auf Number umgestellt, erhalte aber Fehler

                    State value to set for "0_userdata.0.heating.Werkstatt.H-abs" has to be type "number" but received type "string" 
                    
                    1 Antwort Letzte Antwort
                    0
                    • K klassisch

                      @paul53 Das hätte ich auch erwartet.

                      Schauen wir uns ein anderes Beispiel an:

                      State value to set for "0_userdata.0.heating.Werkstatt.H-abs" has to be type "number" but received type "string" 
                      

                      Das Objekt hat Typ number

                      {
                        "from": "system.adapter.admin.0",
                        "user": "system.user.admin",
                        "ts": 1588573013258,
                        "common": {
                          "name": "H-abs",
                          "role": "",
                          "type": "number",
                          "desc": "Manuell erzeugt",
                          "unit": "g/m^3",
                          "read": true,
                          "write": true,
                          "def": false,
                      

                      Der ESP sendet 6.20

                      Jetzt ändere ich manuell in string

                       "name": "H-abs",
                          "role": "",
                          "type": "string",
                          "desc": "Manuell erzeugt",
                          "unit": "g/m^3",
                          "read": true,
                          "write": true,
                         
                      

                      und ich erhalte:

                      State value to set for "0_userdata.0.heating.Werkstatt.H-abs" has to be type "string" but received type "number. 
                      

                      Jetzt gebe ich vom Browser aus ein:
                      ...:8087/set/0_userdata.0.heating.Werkstatt.H-abs?value=6.30

                      und erhalte im Browser die Antwort

                      id	"0_userdata.0.heating.Werkstatt.H-abs"
                      value	6.3
                      val	6.3
                      

                      und im iobroker log

                      State value to set for "0_userdata.0.heating.Werkstatt.H-abs" has to be type "string" but received type "number
                      

                      Und in den Objekten sehe ich 6,3

                      Wo kommt jetzt das Komma her? Ich arbeite seit Jahr und Tag mit Punkt.

                      Jey CeeJ Online
                      Jey CeeJ Online
                      Jey Cee
                      Developer
                      schrieb am zuletzt editiert von
                      #17

                      @klassisch sagte in simpleApi weiß nicht mehr welchen Typ er will:

                      Jetzt gebe ich vom Browser aus ein:
                      ...:8087/set/0_userdata.0.heating.Werkstatt.H-abs?value=6.30

                      Wenn du folgendes eingibst erhälst du einen String statt einer Number:

                      ...:8087/set/0_userdata.0.heating.Werkstatt.H-abs?value="6.30"
                      

                      Nochmal es macht einen Unterschied wie der ESP die Daten sendet, bedeutet es zählt was der Sendet und damit auch wie er intern mit den Werten umgeht.

                      Persönlicher Support
                      Spenden -> paypal.me/J3YC33

                      1 Antwort Letzte Antwort
                      0
                      • Jey CeeJ Jey Cee

                        @klassisch nimm mal das folgende Skript pass die ID an und beobachte die Ausgaben wenn dein ESP Daten schickt.

                        on({id: '0_userdata.0.example_state'},
                            (obj) => {
                                log( `${typeof( obj.state.val )}, value: ${obj.state.val}` );
                            })
                        

                        @klassisch sagte in simpleApi weiß nicht mehr welchen Typ er will:

                        Aha, in den Systemeinstellungen steht FloaterTeiler "," statt "."

                        Das ist reine Kosmetik, intern wird immer noch mit "." gearbeitet.

                        K Online
                        K Online
                        klassisch
                        Most Active
                        schrieb am zuletzt editiert von
                        #18

                        @jey-cee sagte in simpleApi weiß nicht mehr welchen Typ er will:

                        on({id: '0_userdata.0.example_state'},

                        Vielen Dank, daß Du Dich der Sache annimmst

                        Ich füttere simpleApi über Browser mit 6.15 und erhalte im log (unten nach oben)

                        simple-api.0
                        	2021-12-26 11:22:48.501	info	State value to set for "0_userdata.0.heating.Werkstatt.H-abs" has to be type "number" but received type "string"
                        javascript.0
                        	2021-12-26 11:22:42.388	info	script.js.tests.testSimpleApiTypeconfusion: number, value: 6.15
                        

                        Kurz drauf kommt der ESP und liefert ein:

                        javascript.0
                        	2021-12-26 11:23:48.512	info	script.js.tests.testSimpleApiTypeconfusion: string, value: 6.20
                        simple-api.0
                        	2021-12-26 11:23:48.507	info	State value to set for "0_userdata.0.heating.Werkstatt.H-abs" has to be type "number" but received type "string"
                        simple-api.0
                        	2021-12-26 11:23:48.506	info	State value to set for "0_userdata.0.heating.Werkstatt.H-rel" has to be type "number" but received type "string" 
                        

                        Objekt noch immer number

                        "name": "H-abs",
                            "role": "",
                            "type": "number",
                            "desc": "Manuell erzeugt",
                            "unit": "g/m^3",
                            "read": true,
                            "write": true,
                           
                        
                        paul53P Jey CeeJ 2 Antworten Letzte Antwort
                        0
                        • K klassisch

                          @jey-cee sagte in simpleApi weiß nicht mehr welchen Typ er will:

                          on({id: '0_userdata.0.example_state'},

                          Vielen Dank, daß Du Dich der Sache annimmst

                          Ich füttere simpleApi über Browser mit 6.15 und erhalte im log (unten nach oben)

                          simple-api.0
                          	2021-12-26 11:22:48.501	info	State value to set for "0_userdata.0.heating.Werkstatt.H-abs" has to be type "number" but received type "string"
                          javascript.0
                          	2021-12-26 11:22:42.388	info	script.js.tests.testSimpleApiTypeconfusion: number, value: 6.15
                          

                          Kurz drauf kommt der ESP und liefert ein:

                          javascript.0
                          	2021-12-26 11:23:48.512	info	script.js.tests.testSimpleApiTypeconfusion: string, value: 6.20
                          simple-api.0
                          	2021-12-26 11:23:48.507	info	State value to set for "0_userdata.0.heating.Werkstatt.H-abs" has to be type "number" but received type "string"
                          simple-api.0
                          	2021-12-26 11:23:48.506	info	State value to set for "0_userdata.0.heating.Werkstatt.H-rel" has to be type "number" but received type "string" 
                          

                          Objekt noch immer number

                          "name": "H-abs",
                              "role": "",
                              "type": "number",
                              "desc": "Manuell erzeugt",
                              "unit": "g/m^3",
                              "read": true,
                              "write": true,
                             
                          
                          paul53P Offline
                          paul53P Offline
                          paul53
                          schrieb am zuletzt editiert von paul53
                          #19

                          @klassisch sagte: script.js.tests.testSimpleApiTypeconfusion: string, value: 6.20

                          Zahlen haben keine 0 hinten. Vielleicht wird es deshalb als String erkannt ?

                          EDIT: Wenn ich im Browser eine 0 anhänge, wird es trotzdem in Zahl gewandelt:

                          Bild_2021-12-26_114723.png

                          Es muss also an der Formatierung im ESP liegen, dass es als String erkannt wird.

                          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                          Produktiv: Asus PN 42 / N100 / 8 GB / 500 GB

                          K 1 Antwort Letzte Antwort
                          0
                          • paul53P paul53

                            @klassisch sagte: script.js.tests.testSimpleApiTypeconfusion: string, value: 6.20

                            Zahlen haben keine 0 hinten. Vielleicht wird es deshalb als String erkannt ?

                            EDIT: Wenn ich im Browser eine 0 anhänge, wird es trotzdem in Zahl gewandelt:

                            Bild_2021-12-26_114723.png

                            Es muss also an der Formatierung im ESP liegen, dass es als String erkannt wird.

                            K Online
                            K Online
                            klassisch
                            Most Active
                            schrieb am zuletzt editiert von
                            #20

                            @paul53 Das scheint es nicht zu sein. Wenn ich per Browser 6.15 sende hatte ich das gleiche Problem

                            Hatte aber auch ein großes Win Update.
                            Und jetzt habe ich im Win wieder den Punkt und das Datumsformat yyyy-mm-dd eingsetellt, was anscheinend auch im Win vrstellt war.

                            Jetzt habe ich folgende Situation:
                            6.10 und 6.15 nacheinander über Browser eingegeben
                            Danach kam die 6.20 vom ESP

                            javascript.0
                            	2021-12-26 11:42:48.571	info	script.js.tests.testSimpleApiTypeconfusion: string, value: 6.20
                            simple-api.0
                            	2021-12-26 11:42:48.568	info	State value to set for "0_userdata.0.heating.Werkstatt.H-abs" has to be type "number" but received type "string"
                            javascript.0
                            	2021-12-26 11:42:31.848	info	script.js.tests.testSimpleApiTypeconfusion: number, value: 6.15
                            javascript.0
                            	2021-12-26 11:42:26.438	info	script.js.tests.testSimpleApiTypeconfusion: number, value: 6.1
                            

                            Die 6.1 und die 6.15 vom Browser werden nicht mehr angemeckert. die 6.20 vom ESP schon.
                            Was macht der Browser anders?
                            Ich teste mal Chrome statt FF
                            Gleiches Ergebnis auf 6.3:

                            javascript.0
                            	2021-12-26 11:47:04.677	info	script.js.tests.testSimpleApiTypeconfusion: number, value: 6.3 
                            
                            1 Antwort Letzte Antwort
                            0
                            • K klassisch

                              @jey-cee sagte in simpleApi weiß nicht mehr welchen Typ er will:

                              on({id: '0_userdata.0.example_state'},

                              Vielen Dank, daß Du Dich der Sache annimmst

                              Ich füttere simpleApi über Browser mit 6.15 und erhalte im log (unten nach oben)

                              simple-api.0
                              	2021-12-26 11:22:48.501	info	State value to set for "0_userdata.0.heating.Werkstatt.H-abs" has to be type "number" but received type "string"
                              javascript.0
                              	2021-12-26 11:22:42.388	info	script.js.tests.testSimpleApiTypeconfusion: number, value: 6.15
                              

                              Kurz drauf kommt der ESP und liefert ein:

                              javascript.0
                              	2021-12-26 11:23:48.512	info	script.js.tests.testSimpleApiTypeconfusion: string, value: 6.20
                              simple-api.0
                              	2021-12-26 11:23:48.507	info	State value to set for "0_userdata.0.heating.Werkstatt.H-abs" has to be type "number" but received type "string"
                              simple-api.0
                              	2021-12-26 11:23:48.506	info	State value to set for "0_userdata.0.heating.Werkstatt.H-rel" has to be type "number" but received type "string" 
                              

                              Objekt noch immer number

                              "name": "H-abs",
                                  "role": "",
                                  "type": "number",
                                  "desc": "Manuell erzeugt",
                                  "unit": "g/m^3",
                                  "read": true,
                                  "write": true,
                                 
                              
                              Jey CeeJ Online
                              Jey CeeJ Online
                              Jey Cee
                              Developer
                              schrieb am zuletzt editiert von
                              #21

                              @klassisch also der Wert vom ESP kommt als String im ioBroker an, das hatte ich ja schon vermutet.
                              Es liegt also definitv am ESP der die Zahl als String sendet. Was läuft den auf deinem ESP für eine Firmware?

                              Persönlicher Support
                              Spenden -> paypal.me/J3YC33

                              K 1 Antwort Letzte Antwort
                              0
                              • Jey CeeJ Jey Cee

                                @klassisch also der Wert vom ESP kommt als String im ioBroker an, das hatte ich ja schon vermutet.
                                Es liegt also definitv am ESP der die Zahl als String sendet. Was läuft den auf deinem ESP für eine Firmware?

                                K Online
                                K Online
                                klassisch
                                Most Active
                                schrieb am zuletzt editiert von
                                #22

                                @jey-cee selbstgefrickeltes Arduino. Teilweise schon mit Uptime von 1490 Tagen

                                1 Antwort Letzte Antwort
                                0

                                Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                                Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                                Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                                Registrieren Anmelden
                                Antworten
                                • In einem neuen Thema antworten
                                Anmelden zum Antworten
                                • Älteste zuerst
                                • Neuste zuerst
                                • Meiste Stimmen


                                Support us

                                ioBroker
                                Community Adapters
                                Donate
                                FAQ Cloud / IOT
                                HowTo: Node.js-Update
                                HowTo: Backup/Restore
                                Downloads
                                BLOG

                                360

                                Online

                                32.9k

                                Benutzer

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