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. Skripten / Logik
  4. Blockly
  5. [gelöst] places Adapter: type "number" but received type

NEWS

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

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    10
    1
    380

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    972

[gelöst] places Adapter: type "number" but received type

Geplant Angeheftet Gesperrt Verschoben Blockly
14 Beiträge 4 Kommentatoren 878 Aufrufe 4 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.
  • lobomauL lobomau

    Ich möchte mal mit diesen Warnungen aufräumen. Bin mir nicht sicher ob es am Adapter liegt (issue auf Github) oder am SCript oder sonst was anderem?

    So sieht das Blockly aus:
    6604ea25-eebf-4033-a6a8-18f15d7ca969-image.png
    ALs Javascript so:

    on({id: 'iot.0.services.custom_lat', change: "any", ack: true}, async function (obj) {
      var value = obj.state.val;
      var oldValue = obj.oldState.val;
      setState("places.0.lobomau.latitude"/*latitude*/, parseFloat(getState("iot.0.services.custom_lat").val));
      setState("places.0.lobomau.longitude"/*longitude*/, parseFloat(getState("iot.0.services.custom_lon").val));
    });
    

    raw von iot.0.services.custom_lat, stört hier vielleicht type "mixed"?

    {
      "_id": "iot.0.services.custom_lat",
      "type": "state",
      "common": {
        "name": "Service for lat",
        "write": false,
        "read": true,
        "type": "mixed",
        "role": "value"
      },
      "native": {},
      "from": "system.adapter.iot.0",
      "user": "system.user.admin",
      "ts": 1646218871311,
      "acl": {
        "object": 1636,
        "state": 1636,
        "owner": "system.user.admin",
        "ownerGroup": "system.group.administrator"
      }
    }
    

    log Info:

    
    places.0
    2022-03-22 08:20:03.851	info	State value to set for "places.0.lobomau.longitude" has to be type "number" but received type "string"
    
    places.0
    2022-03-22 08:20:03.849	info	State value to set for "places.0.lobomau.latitude" has to be type "number" but received type "string"
    
    Ralla66R Offline
    Ralla66R Offline
    Ralla66
    Most Active
    schrieb am zuletzt editiert von
    #2

    @lobomau

    habe ich auch immer mit Blockly wenn der Type mixed ist.
    Ändere dann immer den DP weils am einfachsten ist.

    lobomauL 1 Antwort Letzte Antwort
    0
    • Ralla66R Ralla66

      @lobomau

      habe ich auch immer mit Blockly wenn der Type mixed ist.
      Ändere dann immer den DP weils am einfachsten ist.

      lobomauL Offline
      lobomauL Offline
      lobomau
      schrieb am zuletzt editiert von
      #3

      @ralla66 probiere ich mal aus.
      Das Problem habe ich noch wo anders. Da ist es aber string und number. Und da hatte es nichts gebracht das Umstellen.

      Host: NUC8i3 mit Proxmox:

      • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
      • Slave: Pi4
      lobomauL 1 Antwort Letzte Antwort
      0
      • lobomauL lobomau

        @ralla66 probiere ich mal aus.
        Das Problem habe ich noch wo anders. Da ist es aber string und number. Und da hatte es nichts gebracht das Umstellen.

        lobomauL Offline
        lobomauL Offline
        lobomau
        schrieb am zuletzt editiert von
        #4

        @lobomau log bleibt nach Änderung zu number :-(

        {
          "_id": "iot.0.services.custom_lat",
          "type": "state",
          "common": {
            "name": "Service for lat",
            "write": false,
            "read": true,
            "type": "number",
            "role": "value"
          },
          "native": {},
          "acl": {
            "object": 1636,
            "state": 1636,
            "owner": "system.user.admin",
            "ownerGroup": "system.group.administrator"
          },
          "from": "system.adapter.admin.0",
          "user": "system.user.admin",
          "ts": 1647942354775
        }
        
        
        places.0
        2022-03-22 10:50:05.308	info	State value to set for "places.0.lobomau.latitude" has to be type "number" but received type "string"
        

        Host: NUC8i3 mit Proxmox:

        • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
        • Slave: Pi4
        haus-automatisierungH 1 Antwort Letzte Antwort
        0
        • lobomauL lobomau

          @lobomau log bleibt nach Änderung zu number :-(

          {
            "_id": "iot.0.services.custom_lat",
            "type": "state",
            "common": {
              "name": "Service for lat",
              "write": false,
              "read": true,
              "type": "number",
              "role": "value"
            },
            "native": {},
            "acl": {
              "object": 1636,
              "state": 1636,
              "owner": "system.user.admin",
              "ownerGroup": "system.group.administrator"
            },
            "from": "system.adapter.admin.0",
            "user": "system.user.admin",
            "ts": 1647942354775
          }
          
          
          places.0
          2022-03-22 10:50:05.308	info	State value to set for "places.0.lobomau.latitude" has to be type "number" but received type "string"
          
          haus-automatisierungH Offline
          haus-automatisierungH Offline
          haus-automatisierung
          Developer Most Active
          schrieb am zuletzt editiert von
          #5

          @lobomau sagte in places Adapter: type "number" but received type "string":

          @lobomau log bleibt nach Änderung zu number

          Es geht um den Datentyp im Ziel-State. Also places.0.lobomau.latitude. Wenn Du iot.0.services.custom_lat zu number änderst, dann hilft das nichts.

          🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
          🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
          📚 Meine inoffizielle ioBroker Dokumentation

          lobomauL 1 Antwort Letzte Antwort
          0
          • AlCalzoneA Offline
            AlCalzoneA Offline
            AlCalzone
            Developer
            schrieb am zuletzt editiert von
            #6

            Da die Meldung mit places.0 versehen ist und das Skript oben korrekterweise eine Zahl schreibt (parseFloat) gehe ich grade davon aus, dass das ein Bug im places Adapter ist und nicht im Skript.

            Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

            1 Antwort Letzte Antwort
            0
            • haus-automatisierungH haus-automatisierung

              @lobomau sagte in places Adapter: type "number" but received type "string":

              @lobomau log bleibt nach Änderung zu number

              Es geht um den Datentyp im Ziel-State. Also places.0.lobomau.latitude. Wenn Du iot.0.services.custom_lat zu number änderst, dann hilft das nichts.

              lobomauL Offline
              lobomauL Offline
              lobomau
              schrieb am zuletzt editiert von lobomau
              #7

              @haus-automatisierung da hatte ich auch geschaut. Da ist die ganze Zeit numbers. Dann können wir das ja ausschließen!?
              Also vermutlich ein Fehler im places-Adapter wie @AlCalzone meint!?
              Nur komisch... hab nur ich den Fehler und den Adapter in Betrieb? Den issue hatte ich vor einiger Zeit erstellt.

              places.0.lobomau.latitude:

              {
                "type": "state",
                "common": {
                  "name": "latitude",
                  "role": "value.gps.latitude",
                  "type": "number",
                  "read": true,
                  "write": true,
                  "custom": {
                    "influxdb.0": {
                      "enabled": true,
                      "changesOnly": true,
                      "debounce": "1000",
                      "retention": "31536000",
                      "changesRelogInterval": 0,
                      "changesMinDelta": 0,
                      "storageType": "",
                      "aliasId": ""
                    }
                  }
                },
                "native": {},
                "from": "system.adapter.places.0",
                "user": "system.user.admin",
                "ts": 1545598159836,
                "_id": "places.0.lobomau.latitude",
                "acl": {
                  "object": 1636,
                  "owner": "system.user.admin",
                  "ownerGroup": "system.group.administrator",
                  "state": 1636
                }
              }
              

              Host: NUC8i3 mit Proxmox:

              • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
              • Slave: Pi4
              haus-automatisierungH 1 Antwort Letzte Antwort
              0
              • lobomauL lobomau

                @haus-automatisierung da hatte ich auch geschaut. Da ist die ganze Zeit numbers. Dann können wir das ja ausschließen!?
                Also vermutlich ein Fehler im places-Adapter wie @AlCalzone meint!?
                Nur komisch... hab nur ich den Fehler und den Adapter in Betrieb? Den issue hatte ich vor einiger Zeit erstellt.

                places.0.lobomau.latitude:

                {
                  "type": "state",
                  "common": {
                    "name": "latitude",
                    "role": "value.gps.latitude",
                    "type": "number",
                    "read": true,
                    "write": true,
                    "custom": {
                      "influxdb.0": {
                        "enabled": true,
                        "changesOnly": true,
                        "debounce": "1000",
                        "retention": "31536000",
                        "changesRelogInterval": 0,
                        "changesMinDelta": 0,
                        "storageType": "",
                        "aliasId": ""
                      }
                    }
                  },
                  "native": {},
                  "from": "system.adapter.places.0",
                  "user": "system.user.admin",
                  "ts": 1545598159836,
                  "_id": "places.0.lobomau.latitude",
                  "acl": {
                    "object": 1636,
                    "owner": "system.user.admin",
                    "ownerGroup": "system.group.administrator",
                    "state": 1636
                  }
                }
                
                haus-automatisierungH Offline
                haus-automatisierungH Offline
                haus-automatisierung
                Developer Most Active
                schrieb am zuletzt editiert von
                #8

                @lobomau Warum setzt Du die States eigentlich direkt? Laut Doku müsstest Du doch mit messages / sendTo arbeiten um die Position zu aktualisieren?!

                🧑‍🎓 Autor des beliebten ioBroker-Master-Kurses
                🎥 Tutorials rund um das Thema DIY-Smart-Home: https://haus-automatisierung.com/
                📚 Meine inoffizielle ioBroker Dokumentation

                lobomauL 1 Antwort Letzte Antwort
                0
                • haus-automatisierungH haus-automatisierung

                  @lobomau Warum setzt Du die States eigentlich direkt? Laut Doku müsstest Du doch mit messages / sendTo arbeiten um die Position zu aktualisieren?!

                  lobomauL Offline
                  lobomauL Offline
                  lobomau
                  schrieb am zuletzt editiert von lobomau
                  #9

                  @haus-automatisierung ok... dann hat wohl jemand die Doku nicht gelesen :man-raising-hand:
                  Mal schauen ob ich das verstehe und umsetzen kann...

                  Edit.: ok.. man kann Adapter auswälhen bei sendTo ;-)

                  082b49f7-1791-4e62-816f-ceb99db3932d-image.png

                  Host: NUC8i3 mit Proxmox:

                  • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
                  • Slave: Pi4
                  lobomauL 1 Antwort Letzte Antwort
                  0
                  • lobomauL lobomau

                    @haus-automatisierung ok... dann hat wohl jemand die Doku nicht gelesen :man-raising-hand:
                    Mal schauen ob ich das verstehe und umsetzen kann...

                    Edit.: ok.. man kann Adapter auswälhen bei sendTo ;-)

                    082b49f7-1791-4e62-816f-ceb99db3932d-image.png

                    lobomauL Offline
                    lobomauL Offline
                    lobomau
                    schrieb am zuletzt editiert von
                    #10

                    @lobomau ich hatte doch die Doku gelesen und habe es auch im Einsatz. Aber nur im Vorschritt. Die GPS Daten kommen vom iot-Adapter und dieser schickt es zu places. Hier liegt vermutlich der Hund begraben. Denn hier wird ein string verarbeitet.
                    Oh Mann ... den Gedanken hatte ich bereits vor einigen Wochen. Ich wollte hier schon fragen wie ich das unten anpassen muss, damit ein number da raus kommt:

                    on({id: "iot.0.services.custom_geo", change: "ne"}, function (obj) 
                    {
                        var LocationString = obj.state.val;
                        var res = LocationString.split(",");
                        var lat = res[0];
                        var lon = res[1];
                        sendTo('places.0', 
                        {
                            user:       "lobomau", 
                            latitude:   lat, 
                            longitude:  lon, 
                            timestamp:  obj.state.ts
                        }, function (res) { log(JSON.stringify(res)); });
                    });
                    

                    Host: NUC8i3 mit Proxmox:

                    • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
                    • Slave: Pi4
                    AlCalzoneA 1 Antwort Letzte Antwort
                    0
                    • lobomauL lobomau

                      @lobomau ich hatte doch die Doku gelesen und habe es auch im Einsatz. Aber nur im Vorschritt. Die GPS Daten kommen vom iot-Adapter und dieser schickt es zu places. Hier liegt vermutlich der Hund begraben. Denn hier wird ein string verarbeitet.
                      Oh Mann ... den Gedanken hatte ich bereits vor einigen Wochen. Ich wollte hier schon fragen wie ich das unten anpassen muss, damit ein number da raus kommt:

                      on({id: "iot.0.services.custom_geo", change: "ne"}, function (obj) 
                      {
                          var LocationString = obj.state.val;
                          var res = LocationString.split(",");
                          var lat = res[0];
                          var lon = res[1];
                          sendTo('places.0', 
                          {
                              user:       "lobomau", 
                              latitude:   lat, 
                              longitude:  lon, 
                              timestamp:  obj.state.ts
                          }, function (res) { log(JSON.stringify(res)); });
                      });
                      
                      AlCalzoneA Offline
                      AlCalzoneA Offline
                      AlCalzone
                      Developer
                      schrieb am zuletzt editiert von
                      #11

                      wie oben auch:

                          var lat = parseFloat(res[0]);
                          var lon = parseFloat(res[1]);
                      

                      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                      lobomauL 1 Antwort Letzte Antwort
                      0
                      • AlCalzoneA AlCalzone

                        wie oben auch:

                            var lat = parseFloat(res[0]);
                            var lon = parseFloat(res[1]);
                        
                        lobomauL Offline
                        lobomauL Offline
                        lobomau
                        schrieb am zuletzt editiert von
                        #12

                        @alcalzone kannst du mir noch etwas helfen? Javascript ist nicht meine Welt. Ich weiß schon mal wie es nicht geht:

                        on({id: "iot.0.services.custom_geo", change: "ne"}, function (obj) 
                        {
                            //var LocationString = obj.state.val;
                            //var res = LocationString.split(",");
                            var lat = parseFloat(res[0]);
                            var lon = parseFloat(res[1]);
                            sendTo('places.0', 
                            {
                                user:       "lobomau", 
                                latitude:   lat, 
                                longitude:  lon, 
                                timestamp:  obj.state.ts
                            }, function (res) { log(JSON.stringify(res)); });
                        });
                        

                        Fehlermeldung:

                        
                        javascript.0
                        2022-03-22 12:30:03.620	error	at processImmediate (internal/timers.js:464:21)
                        
                        javascript.0
                        2022-03-22 12:30:03.619	error	at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.js:5909:56)
                        
                        javascript.0
                        2022-03-22 12:30:03.619	error	at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:562:29)
                        
                        javascript.0
                        2022-03-22 12:30:03.618	error	at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1160:38)
                        
                        javascript.0
                        2022-03-22 12:30:03.617	error	at Object.<anonymous> (script.js.common.Anwesendheit.iot-places:5:26)
                        
                        javascript.0
                        2022-03-22 12:30:03.616	error	Error in callback: ReferenceError: res is not defined
                        

                        Try & error Versuch 2 geht auch nicht:

                        on({id: "iot.0.services.custom_geo", change: "ne"}, function (obj) 
                        {
                            //var LocationString = obj.state.val;
                            var res = LocationString.split(",");
                            var lat = parseFloat(res[0]);
                            var lon = parseFloat(res[1]);
                            sendTo('places.0', 
                            {
                                user:       "lobomau", 
                                latitude:   lat, 
                                longitude:  lon, 
                                timestamp:  obj.state.ts
                            }, function (res) { log(JSON.stringify(res)); });
                        });
                        

                        Host: NUC8i3 mit Proxmox:

                        • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
                        • Slave: Pi4
                        AlCalzoneA 1 Antwort Letzte Antwort
                        0
                        • lobomauL lobomau

                          @alcalzone kannst du mir noch etwas helfen? Javascript ist nicht meine Welt. Ich weiß schon mal wie es nicht geht:

                          on({id: "iot.0.services.custom_geo", change: "ne"}, function (obj) 
                          {
                              //var LocationString = obj.state.val;
                              //var res = LocationString.split(",");
                              var lat = parseFloat(res[0]);
                              var lon = parseFloat(res[1]);
                              sendTo('places.0', 
                              {
                                  user:       "lobomau", 
                                  latitude:   lat, 
                                  longitude:  lon, 
                                  timestamp:  obj.state.ts
                              }, function (res) { log(JSON.stringify(res)); });
                          });
                          

                          Fehlermeldung:

                          
                          javascript.0
                          2022-03-22 12:30:03.620	error	at processImmediate (internal/timers.js:464:21)
                          
                          javascript.0
                          2022-03-22 12:30:03.619	error	at Immediate._onImmediate (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.js:5909:56)
                          
                          javascript.0
                          2022-03-22 12:30:03.619	error	at Object.stateChange (/opt/iobroker/node_modules/iobroker.javascript/main.js:562:29)
                          
                          javascript.0
                          2022-03-22 12:30:03.618	error	at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1160:38)
                          
                          javascript.0
                          2022-03-22 12:30:03.617	error	at Object.<anonymous> (script.js.common.Anwesendheit.iot-places:5:26)
                          
                          javascript.0
                          2022-03-22 12:30:03.616	error	Error in callback: ReferenceError: res is not defined
                          

                          Try & error Versuch 2 geht auch nicht:

                          on({id: "iot.0.services.custom_geo", change: "ne"}, function (obj) 
                          {
                              //var LocationString = obj.state.val;
                              var res = LocationString.split(",");
                              var lat = parseFloat(res[0]);
                              var lon = parseFloat(res[1]);
                              sendTo('places.0', 
                              {
                                  user:       "lobomau", 
                                  latitude:   lat, 
                                  longitude:  lon, 
                                  timestamp:  obj.state.ts
                              }, function (res) { log(JSON.stringify(res)); });
                          });
                          
                          AlCalzoneA Offline
                          AlCalzoneA Offline
                          AlCalzone
                          Developer
                          schrieb am zuletzt editiert von
                          #13

                          @lobomau Na jetzt hast du die Variablen auskommentiert, auf die der Code sich bezieht. Ich meinte nur dass du Zeile 5 und 6 anpassen musst wie gezeigt.

                          Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                          lobomauL 1 Antwort Letzte Antwort
                          0
                          • AlCalzoneA AlCalzone

                            @lobomau Na jetzt hast du die Variablen auskommentiert, auf die der Code sich bezieht. Ich meinte nur dass du Zeile 5 und 6 anpassen musst wie gezeigt.

                            lobomauL Offline
                            lobomauL Offline
                            lobomau
                            schrieb am zuletzt editiert von
                            #14

                            @alcalzone das war ja einfach! Geht jetzt :-)

                            Host: NUC8i3 mit Proxmox:

                            • ioBroker CT Debian 13, npm 10.9.4, nodejs 22.21.0
                            • Slave: Pi4
                            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

                            480

                            Online

                            32.8k

                            Benutzer

                            82.8k

                            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