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. Error/Bug
  4. Alias Fehler "Cannot read properties of null"

NEWS

  • wichtiges UPDATE für controller 7.2.2 im stable
    HomoranH
    Homoran
    9
    1
    803

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    16
    1
    3.2k

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

Alias Fehler "Cannot read properties of null"

Geplant Angeheftet Gesperrt Verschoben Error/Bug
alias
13 Beiträge 3 Kommentatoren 369 Aufrufe 1 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.
  • M Marty56

    @codierknecht Nein, da hast Du meine Beschreibung nicht ganz verstanden.
    Das Thermometer gibt 80 aus, für alle Werte unter -20

    Ich hätte auch val == 80 ? -20 : val schreiben können.

    Aber das war nicht meine Frage, sondern es ging mir um die Fehlermeldung.

    CodierknechtC Online
    CodierknechtC Online
    Codierknecht
    Developer Most Active
    schrieb am zuletzt editiert von Codierknecht
    #4

    @marty56
    OK, ist noch zu früh ...

    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

    Proxmox 9.1.1 LXC|8 GB|Core i7-6700
    HmIP|ZigBee|Tasmota|Unifi
    Zabbix Certified Specialist
    Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

    M 1 Antwort Letzte Antwort
    0
    • CodierknechtC Codierknecht

      @marty56
      OK, ist noch zu früh ...

      M Offline
      M Offline
      Marty56
      schrieb am zuletzt editiert von
      #5

      @codierknecht Bitte einen Vorschlag, wie der tenäre Ausdruck sein müsste.

      HW:NUC (16 GB Ram)
      OS: Debian Bullseye, Promox V7, node v16.x npm 8.19.3

      M 1 Antwort Letzte Antwort
      0
      • M Marty56

        @codierknecht Bitte einen Vorschlag, wie der tenäre Ausdruck sein müsste.

        M Offline
        M Offline
        Marty56
        schrieb am zuletzt editiert von
        #6

        Ich habe auch schon "(val > 60) ? -20" : val versucht, aber das hat auch nicht geändert.

        HW:NUC (16 GB Ram)
        OS: Debian Bullseye, Promox V7, node v16.x npm 8.19.3

        CodierknechtC 1 Antwort Letzte Antwort
        0
        • M Marty56

          Ich habe auch schon "(val > 60) ? -20" : val versucht, aber das hat auch nicht geändert.

          CodierknechtC Online
          CodierknechtC Online
          Codierknecht
          Developer Most Active
          schrieb am zuletzt editiert von Codierknecht
          #7

          @marty56
          Hab's mal eben für einen Testwert eingerichtet.
          Funktioniert im Prinzip fehlerfrei.

          087da5a3-7923-489e-9c23-a806937f0b7f-image.png

          Bei einem aktuellen Wert im DP von 0.66 wird wie erwartet 1000.66 angezeigt

          "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

          Proxmox 9.1.1 LXC|8 GB|Core i7-6700
          HmIP|ZigBee|Tasmota|Unifi
          Zabbix Certified Specialist
          Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

          CodierknechtC 1 Antwort Letzte Antwort
          0
          • CodierknechtC Codierknecht

            @marty56
            Hab's mal eben für einen Testwert eingerichtet.
            Funktioniert im Prinzip fehlerfrei.

            087da5a3-7923-489e-9c23-a806937f0b7f-image.png

            Bei einem aktuellen Wert im DP von 0.66 wird wie erwartet 1000.66 angezeigt

            CodierknechtC Online
            CodierknechtC Online
            Codierknecht
            Developer Most Active
            schrieb am zuletzt editiert von
            #8

            @codierknecht
            Ist der Original-DP denn numerisch?

            "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

            Proxmox 9.1.1 LXC|8 GB|Core i7-6700
            HmIP|ZigBee|Tasmota|Unifi
            Zabbix Certified Specialist
            Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

            1 Antwort Letzte Antwort
            0
            • M Marty56

              Hallo,

              Ich habe ein Homematic Thermometer und einen Alias definiert, der den Bug des HM Thermometer, dass bei Temperaturen unter -20 Grad immer 80 Grad angezeigt wird, kompensiert.

              Dazu ist folgender Alias definiert.

              {
                "common": {
                  "name": "Thermometer in Gefrierschrank",
                  "alias": {
                    "id": "hm-rpc.0.LEQ0567580.1.TEMPERATURE",
                    "read": "val > 60 ? -20 : val"
                  },
                  "type": "number",
                  "role": "value.temperature",
                  "min": -40,
                  "max": 80,
                  "unit": "°C",
                  "custom": {
                    "influxdb.0": {
                      "enabled": true,
                      "storageType": "",
                      "aliasId": "",
                      "debounceTime": 0,
                      "blockTime": 0,
                      "changesOnly": true,
                      "changesRelogInterval": 0,
                      "changesMinDelta": 0,
                      "ignoreBelowNumber": "",
                      "disableSkippedValueLogging": false,
                      "enableDebugLogs": false,
                      "debounce": 1000
                    }
                  }
                },
                "native": {},
                "type": "state",
                "from": "system.adapter.javascript.0",
                "user": "system.user.admin",
                "ts": 1667660078432,
                "_id": "alias.0.K2_Thermo_TEMPERATURE",
                "acl": {
                  "object": 1636,
                  "state": 1636,
                  "owner": "system.user.admin",
                  "ownerGroup": "system.group.administrator"
                }
              }
              

              Jedesmal, wenn die Bedingung "val > 60 ? -20 : val" ausgeführt wird, bekomme ich Fehler. Das Thermometer funktioniert störungsfrei.

              	2022-11-09 07:06:15.538	error	Invalid read function for undefined: val > 60 ? -20 : val => Cannot read properties of null (reading 'type')
              
              admin.0
              2022-11-09 07:06:15.529	error	Invalid read function for undefined: val > 60 ? -20 : val => Cannot read properties of null (reading 'type')
              

              User Error oder Bug?

              HomoranH Offline
              HomoranH Offline
              Homoran
              schrieb am zuletzt editiert von
              #9

              @marty56 sagte in Alias Fehler "Cannot read properties of null":

              "id": "hm-rpc.0.LEQ0567580.1.TEMPERATURE"

              sollte

              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 -

              CodierknechtC 1 Antwort Letzte Antwort
              0
              • HomoranH Homoran

                @marty56 sagte in Alias Fehler "Cannot read properties of null":

                "id": "hm-rpc.0.LEQ0567580.1.TEMPERATURE"

                sollte

                CodierknechtC Online
                CodierknechtC Online
                Codierknecht
                Developer Most Active
                schrieb am zuletzt editiert von
                #10

                Ich habe kein HM-Thermometer, kann das also nur bedingt nachstellen.
                Mit der Temperatur im Rollladenaktor funktioniert das aber auch wie erwartet.

                {
                  "common": {
                    "name": "Test",
                    "type": "number",
                    "read": true,
                    "write": false,
                    "def": 0,
                    "alias": {
                      "id": "hm-rpc.0.00111D8994D7A3.0.ACTUAL_TEMPERATURE",
                      "read": "(val > 20) ? -20 : val"
                    },
                    "min": -20,
                    "max": 80,
                    "unit": "°C"
                  },
                  "type": "state",
                  "native": {},
                  "_id": "alias.0.Test",
                  "acl": {
                    "object": 1636,
                    "state": 1636,
                    "owner": "system.user.admin",
                    "ownerGroup": "system.group.administrator"
                  },
                  "from": "system.adapter.admin.1",
                  "user": "system.user.admin",
                  "ts": 1667982471112
                }```
                [/s]

                "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                HmIP|ZigBee|Tasmota|Unifi
                Zabbix Certified Specialist
                Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                M 1 Antwort Letzte Antwort
                0
                • CodierknechtC Codierknecht

                  Ich habe kein HM-Thermometer, kann das also nur bedingt nachstellen.
                  Mit der Temperatur im Rollladenaktor funktioniert das aber auch wie erwartet.

                  {
                    "common": {
                      "name": "Test",
                      "type": "number",
                      "read": true,
                      "write": false,
                      "def": 0,
                      "alias": {
                        "id": "hm-rpc.0.00111D8994D7A3.0.ACTUAL_TEMPERATURE",
                        "read": "(val > 20) ? -20 : val"
                      },
                      "min": -20,
                      "max": 80,
                      "unit": "°C"
                    },
                    "type": "state",
                    "native": {},
                    "_id": "alias.0.Test",
                    "acl": {
                      "object": 1636,
                      "state": 1636,
                      "owner": "system.user.admin",
                      "ownerGroup": "system.group.administrator"
                    },
                    "from": "system.adapter.admin.1",
                    "user": "system.user.admin",
                    "ts": 1667982471112
                  }```
                  [/s]
                  M Offline
                  M Offline
                  Marty56
                  schrieb am zuletzt editiert von Marty56
                  #11

                  @codierknecht
                  Die Funktion funktioniert auch bei mir, aber ab und zu gibt es eine Fehlermeldung. Es funktioniert aber trotzdem.

                  Da der Admin bzgl. der Aliases nicht so ganz stabil ist, es gibt ja auch noch diese Fehlerbursts, wo alle Definitionen (bei mir sind das ca. 300 + ) als fehlerhaft geloggt werden, hatte ich gedacht, dass es eventuell ein Hinweis ist, wo die Alias Implementierung noch grundsätzliche Schwächen hat.

                  HW:NUC (16 GB Ram)
                  OS: Debian Bullseye, Promox V7, node v16.x npm 8.19.3

                  1 Antwort Letzte Antwort
                  0
                  • M Marty56

                    Hallo,

                    Ich habe ein Homematic Thermometer und einen Alias definiert, der den Bug des HM Thermometer, dass bei Temperaturen unter -20 Grad immer 80 Grad angezeigt wird, kompensiert.

                    Dazu ist folgender Alias definiert.

                    {
                      "common": {
                        "name": "Thermometer in Gefrierschrank",
                        "alias": {
                          "id": "hm-rpc.0.LEQ0567580.1.TEMPERATURE",
                          "read": "val > 60 ? -20 : val"
                        },
                        "type": "number",
                        "role": "value.temperature",
                        "min": -40,
                        "max": 80,
                        "unit": "°C",
                        "custom": {
                          "influxdb.0": {
                            "enabled": true,
                            "storageType": "",
                            "aliasId": "",
                            "debounceTime": 0,
                            "blockTime": 0,
                            "changesOnly": true,
                            "changesRelogInterval": 0,
                            "changesMinDelta": 0,
                            "ignoreBelowNumber": "",
                            "disableSkippedValueLogging": false,
                            "enableDebugLogs": false,
                            "debounce": 1000
                          }
                        }
                      },
                      "native": {},
                      "type": "state",
                      "from": "system.adapter.javascript.0",
                      "user": "system.user.admin",
                      "ts": 1667660078432,
                      "_id": "alias.0.K2_Thermo_TEMPERATURE",
                      "acl": {
                        "object": 1636,
                        "state": 1636,
                        "owner": "system.user.admin",
                        "ownerGroup": "system.group.administrator"
                      }
                    }
                    

                    Jedesmal, wenn die Bedingung "val > 60 ? -20 : val" ausgeführt wird, bekomme ich Fehler. Das Thermometer funktioniert störungsfrei.

                    	2022-11-09 07:06:15.538	error	Invalid read function for undefined: val > 60 ? -20 : val => Cannot read properties of null (reading 'type')
                    
                    admin.0
                    2022-11-09 07:06:15.529	error	Invalid read function for undefined: val > 60 ? -20 : val => Cannot read properties of null (reading 'type')
                    

                    User Error oder Bug?

                    CodierknechtC Online
                    CodierknechtC Online
                    Codierknecht
                    Developer Most Active
                    schrieb am zuletzt editiert von
                    #12

                    @marty56 sagte in Alias Fehler "Cannot read properties of null":

                    Das hörte sich zunächst aber anders an.

                    Jedesmal, wenn die Bedingung "val > 60 ? -20 : val" ausgeführt wird, bekomme ich Fehler.

                    Was ist denn, wenn Du zunächst mal hingehst und den Wert explizit per parseFloat(val) konvertierst?
                    Auch wenn das

                    ... => Cannot read properties of null (reading 'type')
                    

                    vermuten lässt, dass die Ursache eine andere ist. Wobei ich gerade auch keine Idee habe, warum er hier type anmeckert.
                    Nur mal so in's Blaue gedacht:

                    isNaN(val) ? -99 : parseFloat(val) > 60 ? -20 : parseFloat(val)
                    

                    Hast Du den Alias mal gelöscht und komplett neu aufgesetzt?
                    Tritt das Problem nur bei diesem Alias auf, oder passiert das auch mal in anderen Konstellationen?

                    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand." (Martin Fowler, "Refactoring")

                    Proxmox 9.1.1 LXC|8 GB|Core i7-6700
                    HmIP|ZigBee|Tasmota|Unifi
                    Zabbix Certified Specialist
                    Konnte ich Dir helfen? Dann benutze bitte das Voting unten rechts im Beitrag

                    M 1 Antwort Letzte Antwort
                    0
                    • CodierknechtC Codierknecht

                      @marty56 sagte in Alias Fehler "Cannot read properties of null":

                      Das hörte sich zunächst aber anders an.

                      Jedesmal, wenn die Bedingung "val > 60 ? -20 : val" ausgeführt wird, bekomme ich Fehler.

                      Was ist denn, wenn Du zunächst mal hingehst und den Wert explizit per parseFloat(val) konvertierst?
                      Auch wenn das

                      ... => Cannot read properties of null (reading 'type')
                      

                      vermuten lässt, dass die Ursache eine andere ist. Wobei ich gerade auch keine Idee habe, warum er hier type anmeckert.
                      Nur mal so in's Blaue gedacht:

                      isNaN(val) ? -99 : parseFloat(val) > 60 ? -20 : parseFloat(val)
                      

                      Hast Du den Alias mal gelöscht und komplett neu aufgesetzt?
                      Tritt das Problem nur bei diesem Alias auf, oder passiert das auch mal in anderen Konstellationen?

                      M Offline
                      M Offline
                      Marty56
                      schrieb am zuletzt editiert von Marty56
                      #13

                      @codierknecht Ja, das stimmt, das Wort "jedesmal" war falsch. Besser wäre "manchmal" gewesen.

                      Die Aliases lege ich per Script an und deshalb habe ich sie schon sehr oft neu aufgesetzt.

                      Und was komisch ist, ist das Wort "null" in der Fehlermeldung.

                      Es sieht so aus, als ob der Alias Adapter einen undefinierten Wert vom dem Sensor bekommt. Vielleicht eine Race Condition, wo die Info, das sich etwas geändert hat, vor dem eigentlich Bereitstellen des geänderten Werts kommt.
                      Ich glaube nicht, dass das parseflot() was bringt.

                      HW:NUC (16 GB Ram)
                      OS: Debian Bullseye, Promox V7, node v16.x npm 8.19.3

                      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

                      392

                      Online

                      33.0k

                      Benutzer

                      83.3k

                      Themen

                      1.3m

                      Beiträge
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                      ioBroker Community 2014-2026
                      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