Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Die Alias funktion - Fragen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Die Alias funktion - Fragen

    This topic has been deleted. Only users with topic management privileges can see it.
    • gelberlemmy
      gelberlemmy @mickym last edited by

      @mickym super danke. Werde es einmal ausprobieren. Wäre super genial wenn das klappt. Danke

      mickym 1 Reply Last reply Reply Quote 0
      • mickym
        mickym Most Active @gelberlemmy last edited by mickym

        @gelberlemmy ich habs nochmal im Gesamtzusammenhang gepostet. Das Ganze muss unter alias unter common definiert werden. ggf. müssen die hochkommas bei der 22 weg, wenn man die Quelle als Zahl interpretieren kann.

        gelberlemmy 1 Reply Last reply Reply Quote 0
        • gelberlemmy
          gelberlemmy @mickym last edited by gelberlemmy

          @mickym ja die hochkommas müssen gelöscht werden bei mir. Was bedeutet eigentlich val === '22' eigentlich genau. Was passiert ist ja klar...

          mickym 1 Reply Last reply Reply Quote 0
          • mickym
            mickym Most Active @gelberlemmy last edited by mickym

            @gelberlemmy Da das Ganze als Zeichenkette (String) in doppelten Anführungszeichen ist, markieren die Hochkommas eine Zeichenkette in der Zeichenkette - bei Dir ist es aber tatsächlich eine Zahl - deshalb ohne Hochkommas. Im Prinizip gibst Du in dem String mit den doppelten Anführungszeichen Javascript code ein und "val" repräsentiert den Wert des Orginal-Datenpunktes.
            Im Prinzip wird einfach bei setzten des Wertes Deines Alias (Read) Datenpunktes (Wertes = val) den Conditional Operator genutzt. Somit bedeutet es nichts weiter als Dein Orginal hat den Wert 22, dann setze true anderenfalls false.

            gelberlemmy Troya 2 Replies Last reply Reply Quote 0
            • gelberlemmy
              gelberlemmy @mickym last edited by

              @mickym super danke für die Erklärung

              1 Reply Last reply Reply Quote 0
              • Troya
                Troya @mickym last edited by

                @mickym
                Moin, die Alias-Funktion scheint sich geändert zu haben und diese Methode schaltet bei mir nicht mehr das Alias.
                Wie muss es aktuell heißen?

                Admin 5.1.25
                Node.js v12.22.7
                NPM 6.14.15

                mickym 1 Reply Last reply Reply Quote 0
                • mickym
                  mickym Most Active @Troya last edited by

                  @troya Ehrlich gesagt weiß ich nicht, was Du meinst? Bei mir gabs keine Änderung. Installieren Dir doch mal den Alias Manager und schau mal ob Du das damit entsprechend hinbekommst:

                  fe240f26-7b28-4722-bddd-696033fe1284-image.png

                  1 Reply Last reply Reply Quote 0
                  • Troya
                    Troya @mickym last edited by Troya

                    @mickym sagte in Die Alias funktion - Fragen:

                    @gelberlemmy sagte in Die Alias funktion - Fragen:

                    @CrunkFX hallo, lese hier das Thema gerade mit. Ich habe ZWave Türsensoren die für "offen" 22 und geschlossen "23"ausgeben. Nun möchte ich per Alias für 22 = true und für 23 = false ausgeben.
                    Geht dies ? Was muss ich hierfür in RAW eingeben ?

                    Gruß André

                    {
                      "from": "....",
                      "user": "....",
                      "ts": ...,
                      "common": {
                        "name": "on",
                        "role": "",
                        "type": "boolean",
                        "desc": "Manuell erzeugt",
                        "read": true,
                        "write": false,
                        "def": false,
                        "alias": {
                          "id": "orginal.pfad",
                          "read": "val === '22' ? true : false"
                        }
                      },
                      "native": {},
                      "acl": {
                        "object": ....,
                        "owner": "system.user.admin",
                        "ownerGroup": "system.group.administrator",
                        "state": ....
                      },
                      "_id": "....",
                      "type": "state"
                    }
                    

                    Kann man noch ausweiten - aber im Prinzip langt ja 22 = true - alles andere false.

                    Die Funktion mit dem umwandeln von 22 auf true von damals. Aber ich schau mir morgen mal den Manager an, danke!

                    mickym 1 Reply Last reply Reply Quote 0
                    • mickym
                      mickym Most Active @Troya last edited by

                      @troya Das muss immer noch so funktionieren wie vorher - das hat auch nichts mit dem Adapter zu tun.

                      b4741773-ede1-4464-b17a-c8f3e8a531b3-image.png

                      Im Adapter kannst Du das nur jetzt direkt eintragen und musst nicht mehr die Definition des Alias-Datenpunktes bemühen.

                      Wenn da also irgendwas nicht funktioniert - dann gibts ein anderes Problem - da weiß ich aber auch nicht weiter, weil es meines Erachtens weiter so gehen muss.

                      1 Reply Last reply Reply Quote -1
                      • CrunkFX
                        CrunkFX Forum Testing last edited by

                        @troya sagte in Die Alias funktion - Fragen:

                        "read": "val === '22' ? true : false"

                        Hast du mal

                        "read": "val == '22' ? true : false"
                        

                        versucht?

                        Troya haus-automatisierung 2 Replies Last reply Reply Quote 0
                        • Troya
                          Troya @CrunkFX last edited by

                          @crunkfx
                          Danke, "val == '22' ? true : false" mit zwei Gleichzeichen hat jetzt funktioniert, komisch, versteh ich nicht.

                          @mickym
                          Danke, der Adapter erleichtert einiges!

                          CrunkFX 1 Reply Last reply Reply Quote 0
                          • CrunkFX
                            CrunkFX Forum Testing @Troya last edited by

                            @troya Du prüfst mit deinem Befehl auf den Typ String. Möglicherweise ist aber der auszuwertende Wert vom Typ number. Wenn du in JS mit == prüfst ist der auszuwertende Typ egal( Disclaimer: Ganz einfach erklärt, für vollständige Erklärung: Hier klicken .

                            LG
                            CrunkFX

                            1 Reply Last reply Reply Quote 2
                            • haus-automatisierung
                              haus-automatisierung Developer Most Active @CrunkFX last edited by

                              Weil ich hierzu gerade eine Frage per Mail bekommen habe: true und false auf die Art zurück zu geben ist redundant. Der Vergleich liefert ja bereits genau das, was man sucht.

                              Aktuell wäre es also: "falls Ergebnis gleich true gib true zurück, sonst gib false zurück":

                              val == 22 ? true : false
                              

                              Es reicht:

                              val == 22
                              

                              Mit ? : (also if else) würde man ja nur arbeiten, wenn man daraus wieder andere Datentypen / Wert machen möchte. z.B.

                              val == 22 ? 'jau' : 'nö'
                              
                              1 Reply Last reply Reply Quote 2
                              • First post
                                Last post

                              Support us

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

                              868
                              Online

                              31.8k
                              Users

                              79.9k
                              Topics

                              1.3m
                              Posts

                              alias
                              8
                              33
                              5203
                              Loading More Posts
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes
                              Reply
                              • Reply as topic
                              Log in to reply
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                              The ioBroker Community 2014-2023
                              logo