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.
    • CrunkFX
      CrunkFX Forum Testing @Berlon last edited by CrunkFX

      @Berlon Enum ist kein Datenpunkt sondern die Zuweisung in den IOBroker Aufzählungen. Die Werte kommen nach einem Update der Datenpunkte, dazu am einfachsten den Adapter einmal Neustart en. Nur was bei common steht hat relevanz. Ja es ist korrekt, dass bei nem Hardwaretausch nur die Adresse geändert werden muss. Das ist das große Konzept des Alias Systems. Der klassische Objekt Browser soll in Zukunft nur noch eine nebensächliche Rolle spielen und dafür das alias system ausgebaut werden.

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

                                          394
                                          Online

                                          31.7k
                                          Users

                                          79.9k
                                          Topics

                                          1.3m
                                          Posts

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