Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Text von Fenster offen Auswertung maskieren

    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

    Text von Fenster offen Auswertung maskieren

    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      Diamand2k22 last edited by

      Ich hab folgendes Problem, ich hab Fensterkontakte, die ich nun per AliasManager auf ein Alias gelegt habe.
      Bei der Abfrage der geöffneten Fenster über Blockly wir nun der komplette alias Name ausgegeben.
      Ich will nur den Namen des Raumes, in dem das Fenster geöffnet wurde ausgeben.
      Mein Blockly aktuell hierzu ist:

      ec0112a1-45af-4a9d-b460-0f93c1c159b4-image.png

      In der JS-Funktion steht aktuell:

      id = id.substring(0, id.lastIndexOf('.'));
      if(existsObject(id)) return getObject(id).common.name.replace('alias.0.Fensterkontakt', '');
      if(existsObject(id)) return getObject(id).common.name.replace('.opened', '');
      

      das funktioniert allerdings nicht und bei der Abfrage wird z.B. immer

      alias.0.Fensterkontakt Dachfenster OG.opened ausgegeben

      es soll aber nur: Dachfenster OG ausgeben werden

      Hat jemand eine Idee?

      Grüße

      paul53 1 Reply Last reply Reply Quote 0
      • paul53
        paul53 @Diamand2k22 last edited by paul53

        @diamand2k22 sagte: das funktioniert allerdings nicht

        Kann es auch nicht: Es fehlt der Funktionsaufruf.

        Blockly_temp.JPG

        Wie sieht der Name des Alias-Parent-Objektes oder des Alias-DP aus?
        Wenn nur der Teil aus der ID hinter "Fensterkontakt" ohne ".opened" genommen werden soll:

        id = id.substring(0, id.lastIndexOf('.'));
        return id.replace('alias.0.Fensterkontakt', '');
        
        D 1 Reply Last reply Reply Quote 0
        • D
          Diamand2k22 @paul53 last edited by

          @paul53

          danke, jetzt geht es, ich habe den Funktionsaufruf vergessen!
          Danke!

          D 1 Reply Last reply Reply Quote 0
          • D
            Diamand2k22 @Diamand2k22 last edited by

            @paul53

            eine Frage noch zu einem anderen Skript.
            Hier schickt er jeden Tag die Wettervorhersage per WhatsApp.
            Aktuell schickt er immer mit dem heutigen Datum.
            Es soll aber das Datum des nächsten Tages geschickt werden.
            wie kann man das am besten umsetzten?

            Danke!

            Gruß

            paul53 1 Reply Last reply Reply Quote 0
            • paul53
              paul53 @Diamand2k22 last edited by

              @diamand2k22 sagte: Es soll aber das Datum des nächsten Tages geschickt werden.

              Keine Ahnung, da ich die Datenpunkte der Wettervorhersage und das aktuelle Skript nicht kenne.

              D 1 Reply Last reply Reply Quote 0
              • D
                Diamand2k22 @paul53 last edited by

                @paul53

                344e752d-b080-4c8b-ba53-272b8f3108aa-image.png

                Soll eigt. nur immer aktuelles Datum + 1 sein. Wäre wohl mit einer Funktion besser?

                paul53 1 Reply Last reply Reply Quote 0
                • paul53
                  paul53 @Diamand2k22 last edited by paul53

                  @diamand2k22
                  Welche Datenpunkte von welchem Adapter?
                  Ist nur das Datum von heute oder sind es auch die Wetterwerte?

                  Datum von morgen:

                  Blockly_temp.JPG

                  D 1 Reply Last reply Reply Quote 0
                  • D
                    Diamand2k22 @paul53 last edited by

                    @paul53

                    danke dir!

                    1 Reply Last reply Reply Quote 0
                    • D
                      Diamand2k22 last edited by

                      @paul53 said in Text von Fenster offen Auswertung maskieren:

                      @diamand2k22 sagte: das funktioniert allerdings nicht

                      Kann es auch nicht: Es fehlt der Funktionsaufruf.

                      Blockly_temp.JPG

                      Wie sieht der Name des Alias-Parent-Objektes oder des Alias-DP aus?
                      Wenn nur der Teil aus der ID hinter "Fensterkontakt" ohne ".opened" genommen werden soll:

                      id = id.substring(0, id.lastIndexOf('.'));
                      return id.replace('alias.0.Fensterkontakt', '');
                      

                      @paul53

                      aktuell maskiere ich mit

                      id = id.substring(0, id.lastIndexOf('.'));
                      return id.replace('alias.0.Fensterkontakt', '');
                      

                      jetzt ist ein Türkontakt hinzugekommen.

                      wie kann ich zusätzlich zum Fensterkontakt das Wort Türkontakt maskieren?

                      paul53 1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @Diamand2k22 last edited by

                        @diamand2k22 sagte: zusätzlich zum Fensterkontakt das Wort Türkontakt maskieren?

                        Mit RegExp.

                        return id.replace(/^alias\.0\.(Fenster|Tuer)kontakt/, '')
                        
                        D 2 Replies Last reply Reply Quote 0
                        • D
                          Diamand2k22 @paul53 last edited by

                          @paul53

                          funktioniert perfekt, danke dir!

                          1 Reply Last reply Reply Quote 0
                          • D
                            Diamand2k22 @paul53 last edited by

                            @paul53

                            Hallo Paul, wie kann ich nur das Wort "Kontakt" maskieren? Tuer oder Fenster soll dieses mal als Wort stehen bleiben.

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

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            858
                            Online

                            31.9k
                            Users

                            80.3k
                            Topics

                            1.3m
                            Posts

                            2
                            12
                            463
                            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