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.
    • dslraser
      dslraser Forum Testing Most Active last edited by dslraser

      @Berlon
      @CrunkFX

      Ich nutze zum Alias erstellen das Script von @CruziX
      Das mit den Adaptern zur Alias Erstellung ist irgendwie noch nicht wirklich fertig, oder ich kapiere es einfach nicht.
      Mit dem Script kann man alle Alias, wenn gewünscht, auf einmal erstellen. Es ist nur einmal Arbeit das Script zu befüllen.
      Hier in diesem Beitrag im Spoiler Vorlagen Alias und dann im Spoiler Vorlage Alias erstellen habe ich ein Beispiel eingefügt.

      1 Reply Last reply Reply Quote 2
      • gelberlemmy
        gelberlemmy @CrunkFX last edited by

        @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é

        CrunkFX mickym 2 Replies Last reply Reply Quote 0
        • CrunkFX
          CrunkFX Forum Testing @gelberlemmy last edited by

          @gelberlemmy Was soll denn mit true und false gemacht werden?

          MFG
          CrunkFX

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

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

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

              @CrunkFX ich würde gern solch Dinge relativ gleich haben. In den Skripten zB würde ich gern immer den Weg mit true und false arbeiten.

              1 Reply Last reply Reply Quote 0
              • 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

                                        905
                                        Online

                                        31.9k
                                        Users

                                        80.1k
                                        Topics

                                        1.3m
                                        Posts

                                        alias
                                        8
                                        33
                                        5402
                                        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