Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Fragen / Antworten rund um die neue Alias Funktion

    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

    Fragen / Antworten rund um die neue Alias Funktion

    This topic has been deleted. Only users with topic management privileges can see it.
    • Codierknecht
      Codierknecht Developer Most Active @cdn last edited by

      @cdn
      e6e9fd19-4a0c-4400-89e6-bf082ef19fbe-image.png

      Man kann natürlich auch gleich alle im Editor eintragen und dann auf einen Schlag importieren.
      Macht's einfacher 😉

      1 Reply Last reply Reply Quote 0
      • Codierknecht
        Codierknecht Developer Most Active @cdn last edited by

        @cdn sagte in Fragen / Antworten rund um die neue Alias Funktion:

        Das wäre mal ne schöne Funktion....

        Mach ein Issue auf 😉

        1 Reply Last reply Reply Quote 0
        • Codierknecht
          Codierknecht Developer Most Active last edited by Codierknecht

          @cdn

          Wenn man in die description der einzelnen DP (auf, zu, stop) jeweils die ID des zu steuernden Ziel-DP einträgt, sollte das damit funktionieren:

          17292cbf-bb9a-4e0c-afdb-f9869af2c27e-image.png

          C 1 Reply Last reply Reply Quote 0
          • C
            cdn @Codierknecht last edited by

            @codierknecht klappt! Außer Open (=0) komischerweise noch nicht.

            Codierknecht 1 Reply Last reply Reply Quote 0
            • Codierknecht
              Codierknecht Developer Most Active @cdn last edited by

              @cdn sagte in Fragen / Antworten rund um die neue Alias Funktion:

              klappt

              Was klappt? Das zuletzt gezeigte generische Script mit dem Selektor?
              Hast Du dort die description passend hinterlegt?
              Gibt's eine Fehlermeldung?
              Klappt das, wenn Du in den Ziel-DP manuell eine 0 einträgst?

              C 2 Replies Last reply Reply Quote 0
              • C
                cdn @Codierknecht last edited by cdn

                @codierknecht
                Das Skript mit dem Selektro klappt. Keine Fehlermeldung. Wenn ich per Hand eine 0 eintrage klappt es.

                EDIT: Klappt nun. Da war noch eine Funktion hinterlegt. Super 🙂 Dann mache ich jetzt mal an die Arbeit!

                1 Reply Last reply Reply Quote 0
                • C
                  cdn @Codierknecht last edited by

                  @codierknecht Danke dir nochmal für deine Hilfe!

                  Codierknecht 1 Reply Last reply Reply Quote 0
                  • Codierknecht
                    Codierknecht Developer Most Active @cdn last edited by

                    @cdn
                    Gerne. Viel Erfolg!

                    1 Reply Last reply Reply Quote 0
                    • David G.
                      David G. last edited by

                      Habe auch mal eine kleine Frage zum Alias.
                      Kann man damit "nur" Zahlen konvertieren?

                      Hab jetzt schon einige Varianten versucht um einen bool in einen Text zu übersetzen, aber er meckert immer an, dass das Ergebnis keine Nummer ist.

                      Screenshot_20240308_192125_Chrome.jpg

                      paul53 1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @David G. last edited by

                        @david-g sagte: meckert immer an, dass das Ergebnis keine Nummer ist.

                        Dann ist der Alias vom Typ "Zahl", was auf jeden Fall falsch ist.
                        Du willst den "WINDOW_STATE" schreiben?

                        David G. 1 Reply Last reply Reply Quote 0
                        • David G.
                          David G. @paul53 last edited by David G.

                          @paul53

                          Glaube war wirklich in der falschen Zeile.
                          Bei lesen muss ich vermutlich hin?

                          Ich möchte, dass ich anstatt true = offen und anstatt false = geschlossen im. DP habe.

                          Also eher so
                          Screenshot_20240308_193131_Chrome.jpg

                          Alias habe ich ja viele, aber noch nie was konvertiert...

                          Edit
                          Jetzt hab ich den nochmal neu angelegt.
                          Meckert nicht, im. DP steht aber immer die Formel.

                          {
                            "type": "state",
                            "common": {
                              "name": "Koverttest",
                              "role": "value.window",
                              "type": "string",
                              "max": 1,
                              "read": true,
                              "write": true,
                              "alias": {
                                "id": "0_userdata.0.example_state",
                                "read": "\"val = true ? an : aus\" "
                              }
                            },
                            "_id": "alias.0.og.Thermostat_Wohnbereich.WINDOW_STATE_2",
                            "native": {},
                            "acl": {
                              "object": 1636,
                              "state": 1636,
                              "owner": "system.user.admin",
                              "ownerGroup": "system.group.administrator"
                            },
                            "from": "system.adapter.admin.0",
                            "user": "system.user.admin",
                            "ts": 1709923236321
                          }
                          
                          O paul53 2 Replies Last reply Reply Quote 0
                          • O
                            Oli @David G. last edited by

                            @david-g
                            Versuche es mal so:

                            val == true ? "an" : "aus"
                            
                            David G. 1 Reply Last reply Reply Quote 0
                            • David G.
                              David G. @Oli last edited by

                              @oli

                              Mag er auch nicht.
                              Hab jetzt mal noch ein paar Zeilen entfernt und nur das nötigste drinnen.
                              Aber der DP zeigt noch die Formel.

                              {
                                "type": "state",
                                "common": {
                                  "name": "Konverttest",
                                  "role": "state",
                                  "type": "string",
                                  "read": true,
                                  "write": true,
                                  "alias": {
                                    "id": "0_userdata.0.example_state",
                                    "read": "\"val == true ? an : aus\""
                                  }
                                },
                                "_id": "alias.0.og.Thermostat_Wohnbereich.WINDOW_STATE_2",
                                "native": {},
                                "acl": {
                                  "object": 1636,
                                  "state": 1636,
                                  "owner": "system.user.admin",
                                  "ownerGroup": "system.group.administrator"
                                },
                                "from": "system.adapter.admin.0",
                                "user": "system.user.admin",
                                "ts": 1709923909780
                              }
                              
                              1 Reply Last reply Reply Quote 0
                              • paul53
                                paul53 @David G. last edited by paul53

                                @david-g sagte: true = offen und anstatt false = geschlossen im. DP habe.

                                val ? 'offen' : 'geschlossen'
                                

                                Im JSON:

                                      "read": "val ? 'offen' : 'geschlossen'"
                                
                                David G. 1 Reply Last reply Reply Quote 2
                                • David G.
                                  David G. @paul53 last edited by

                                  @paul53

                                  Klappt, vielen Dank

                                  1 Reply Last reply Reply Quote 0
                                  • jahnbes
                                    jahnbes last edited by

                                    Hallo,
                                    ich habe ein Problem mit der Groß- und KLeinschreibung:

                                    zigbee-devices geben ihre Objekte im iobroker UNVERÄNDERBAR in Kleinbuchstaben an:

                                    zigbee.0.a4c138ef9eefc967.battery

                                    Versuche ich dieses Objekt durch einen Alias zur ersetzen, gibt mir der alias-Adapter zwingend dabei Großbuchstaben an:

                                    alias.0.Flur.Tuerklingel.BATTERY

                                    In Scripten ist das kein Problem, bei der Programmierung von Tabellen mittels ng-repeat

                                    <table class="table table-bordered" columns="2">
                                        <caption>&nbsp;&nbsp;&nbsp;Zigbee-Schalter&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Batteriezustand</caption>
                                        <div ng-app="" ng-init="geraete=[ 
                                        {raum:'Heizung-Eco (Flur)',adresse:'zigbee.0.0c4314fffe1e2d25.'},
                                        {raum:'Multi-Licht (Flur)',adresse:'zigbee.0.b4e3f9fffed1bd72.'},
                                        {raum:'Klingelkontakt (Flur)',adresse:'alias.0.Flur.Tuerklingel.'}
                                        ]">
                                            <tr>
                                                <th>Raum</th>
                                                <th>Prozent</th>
                                            </tr>
                                            <tr ng-repeat="x in geraete">
                                                <td>{{x.raum}}</td>
                                                <td ng-init="percentV=itemValue(x.adresse+'battery')" ng-class="{'alarm': percentV <= 45, 'attention': percentV > 45 && percentV <= 70}">
                                                    {{'%.0f' | sprintf:percentV}} %</td>
                                            </tr>
                                        </div>
                                    </table>
                                    

                                    bin ich aber zwingend auf die exakt gleiche Schreibweise angewiesen, um ng-repeat verwenden zu können.
                                    Allerdings kann ich weder im zigbee-Objekt, noch im alias-Objekt die Schreibweise ändern und somit anpassen. Ich brauche eine übereinstimmende Schreibweise, am Besten im alias-Objekt in Kleinbuchstaben.
                                    Eine Änderung der Property "Name" bringt nichts, es wird "ID" verwendet und diese ist nicht änderbar, bleibt in Großbuchstaben.
                                    Den langen, steinigen Weg, nun alle meine zigbee-Objekte mit einem Alias zu versehen, will ich -noch- nicht gehen.
                                    Gibt es einen Ausweg?
                                    Viele Grüße, jahnbes.

                                    apollon77 crunchip 2 Replies Last reply Reply Quote 0
                                    • apollon77
                                      apollon77 @jahnbes last edited by apollon77

                                      @jahnbes Was ist ng-repeat? generell klingt es nach einer limitierung von dieser Library/Tool/Whatever... vllt dort mal einen Feature-Request stellen hier auch grossbuchstaben zu erlauben?

                                      Warum: Weil das bei zigbee vllt immer so ist mit allem Kleinbuchstabeln, aber allein mit homematic ist das schon kaputt und andere Adapter nutzen wieder andere Mixe. Also iobroker ist hier "flexibel" und es gibt keine zwingende Vorgabe alles klein zu schreiben und es gibt viele Bestandsadapter die das auch nicht tun - also hier bei iobroker zu limitieren fühlt sich nach dem falschen Weg an.

                                      jahnbes 1 Reply Last reply Reply Quote 0
                                      • crunchip
                                        crunchip Forum Testing Most Active @jahnbes last edited by crunchip

                                        @jahnbes sagte in Fragen / Antworten rund um die neue Alias Funktion:

                                        Versuche ich dieses Objekt durch einen Alias zur ersetzen, gibt mir der alias-Adapter zwingend dabei Großbuchstaben an:

                                        Sicher?
                                        Ich kann die anlegen wie ich möchte
                                        Screenshot_20240411_092544.jpg

                                        jahnbes 1 Reply Last reply Reply Quote 0
                                        • jahnbes
                                          jahnbes @apollon77 last edited by

                                          @apollon77
                                          Hallo apollo 77, danke für Deine Antwort.
                                          ng-repeat ist eine Direktive in AngularJS. So ziemlich jede Anwendung, die mit Collections operiert, benötigt den Einsatz dieser Direktive, um die Sammlungen von Daten in einer View bequem ausgeben zu können. Ich benutzte sie, um Tabellen in HABPanel dynamisch gestalten zu können, das heißt, eine Zeile der Tabelle wird als Schablone programmiert, dann eine Liste der darzustellenden Elemente (z.B. ZigBee-Geräte) erstellt und mit Hilfe von ng-repeat diese Liste abgearbeitet und die Tabelle mit allen Zeilen (ZigBee-Geräte) erzeugt. Neben der einfacheren Programmierung der Tabelle (ich muss nur eine Zeile programmieren) hat das auch deutliche Vorteile, wenn Elemente (Zeilen) zur Tabelle hinzukommen oder entfallen. Ich muss im Code nur die Liste ändern, siehe das oben angeführte Beispiel.
                                          Hier die zugegebenermaßen kleine Tabelle, die der obige Code generiert:
                                          Tabelle_ng_repeat.jpg
                                          AngularJS ist ein clientseitiges JavaScript-Webframework zur Erstellung von Single-Page-Webanwendungen nach einem Model-View-ViewModel-Muster.

                                          Es geht aus meiner Sicht auch nicht darum, etwas zu limitieren, sondern zu flexibilisieren, soll heißen, ich sollte Klein- und Großbuchstaben verwenden können.
                                          Viele Grüße, jahnbes.

                                          apollon77 1 Reply Last reply Reply Quote 0
                                          • jahnbes
                                            jahnbes @crunchip last edited by

                                            @crunchip
                                            Hallo crunchip, danke für Deine Antwort. Die ist interessant. Wie hast die die Alias angelegt? Ich habe es über den iobroker gemacht (Wie sonst?) und da kamen zwangsweise starre Gropßbuchstaben raus.
                                            Jetzt bin ich mir nicht mehr sicher. Ich werde testen und mich melden.
                                            Viele Grüße, jahnbes.

                                            crunchip 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

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

                                            776
                                            Online

                                            31.9k
                                            Users

                                            80.2k
                                            Topics

                                            1.3m
                                            Posts

                                            alias js-controller
                                            87
                                            615
                                            141950
                                            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