Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Funktionen und Räume stärker nutzen

    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

    Funktionen und Räume stärker nutzen

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

      Hi,

      ich möchte gerne die Aufzählungen / Gruppierungen von Funktionen und Räume besser nutzen.

      Zwei Beispiele:

      1. Überwachte WLAN Geräte. Es gibt bestimmt WLAN Geräte, wo ich per Telegram mitbekommen, ob die Geräte mit dem WLAN verbunden sind, sprich an. Im Moment habe ich dafür ein Blockly Script was ich erweitere, wenn es neues Gerät hinzukommt. Ich würde dafür gerne die von mir gebaute Gruppe unter Funktionen nutzen.

      2. Lichsteuerung: Ich habe ein Skript, was über erkennt, in welchen Raum (spricht welcher Echo) den Befehl Licht erhalten hat und über das Skript auch klar ist, welches Licht dann geschaltet werden soll. Dafür würde ich gerne den Echo + den Schalter in einen Raum werfen.

      Ich habe für die Beispiele Screenshots angehangen, damit man versteht, wie das ganze aktuell funktioniert und wie ich es gerne nutzen möchte. Im Moment muss ich halt ständig an den Skripten rumfrickeln und Copy&Paste machen, damit ich eine neues Licht bzw. ein neues WLAN-Gerät steuern kann.

      Ich würde sehr gerne weiter Blockly nutzen, da die Scripte besser lesbar sind. Ich habe allerdings auch schon einige JavaScripte im Einsatz. Was meint ihr: Lässt sich das nur mit JavaScript oder auch mit Blockly lösen? Habt ihr evtl. CodeSchnipsel?
      8437_blocky_skript_lichsteuerung.png
      8437_r_ume.png
      8437__berwachte_wlan_ger_te.png
      8437_funktionieren.png

      1 Reply Last reply Reply Quote 0
      • Mic
        Mic Developer last edited by

        @Mitch:

        2. Lichsteuerung: Ich habe ein Skript, was über erkennt, in welchen Raum (spricht welcher Echo) den Befehl Licht erhalten hat und über das Skript auch klar ist, welches Licht dann geschaltet werden soll. Dafür würde ich gerne den Echo + den Schalter in einen Raum werfen. `

        Hi Mitch,

        ich nutze ausschließlich Javascript, verstehe daher vielleicht die Fragestellung nicht.

        Was meinst Du mit "den Echo + den Schalter in einen Raum werfen"?

        Ich sag halt bei mir z.B. im großen Wohnzimmer zur Alexa "Licht an" (oder drücke den Lichtschalter, hinter dem ein Shelly 1 verbaut ist), dann schaltet sie 4 LED-Gruppen (via Magic Light) sowie etliche Philips-Hue-Birnen an, und zwar voreingestellt nach "Szene". D.h. sage ich das um 13:00 Uhr, dann kommt ein anderes Licht (eher kalt) als Abends (warm) mit jeweils unterschiedlicher Helligkeit.

        Meinst Du so etwas?

        1 Reply Last reply Reply Quote 0
        • M
          Mitch last edited by

          Na ja,

          ich bin bei Blockly schon einige Male an Probleme gestossen, weil ich dort nicht mit Platzhaltern, nur mit Objekten arbeiten kann. Ich kann z.B. nicht per Blockly Script eine Deviceliste unter zigbee.0 abfragen und dann sagen gehe alle Zigbee-Devices durch und mache etwas, wenn Du auf darunter opened=true findest. Das Script würde ja so ziemlich kurz werden, unter Blockly würde ich alle Abfragen gegen jedes einzelne Device über einen Trigger abfragen und dann etwas tun. Praktisch zwar immmer das selbe, aber so werden meine Blockly Script sehr groß.

          Geht das unter Blockly, oder eher nicht.

          Zu deiner zweiten Frage:

          Im Moment erkennt hierüber das Script, dass ich immer Wohnzimmer bin und schaltet dann das Device im Skript an oder aus. Wenn ich das Echo-Device und den Schalter in einem Raum werfen würde (unter Aufzählungen), dann könnte das Script vielleicht sehr kurz werden. z.B. er schaut nacht in welchem Raum das Echo-Device steht und sendet dann an das Licht-Element zu schalten. Der Vorteil ist dann, ich brauche dass Script bei einem neuen Raum nicht mehr anfassen. Ich würde nur einen neuen Raum einpflegen und das Echo-Device und das Licht-Element zu Raum zuordnen.

          Da das Javascript (oder evtl. doch Blockly) dan universell unter Räumen nachsieht, braucht das Script nicht mehr angepasst zu werden.

          1 Reply Last reply Reply Quote 0
          • Mic
            Mic Developer last edited by

            Ok, jetzt verstehe ich Deine Frage, sorry, hattest eigentlich oben schon gut erklärt.

            Zu Blockly können sicherlich andere deutlich besser helfen.

            Mit "Aufzählungen" habe ich bislang auch noch nicht gearbeitet, kann daher da auch nicht weiter helfen.

            Verstehe aber absolut Deine Fragestellung, würde es mit den "Aufzählungen" deutlich einfacher machen, ohne dass man immer Anpassungen vornehmen muss. Muss ich mal gelegentlich damit beschäftigen.

            Daher sollen bitte andere hier ran und Dir helfen 😄

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

              Habe nicht alles gelesen, zur Frage geht das mit blockly : grundsätzlich ja den auch in blockly kan man mit Javascript arbeiten dafür gibt es eine Funktion.

              Also was nicht mit blockly geht nimmt man nen ausstapser nach JavaScript und gibt die Werte zurück an Blockly

              Sent from my iPhone using Tapatalk

              1 Reply Last reply Reply Quote 0
              • Jey Cee
                Jey Cee Developer last edited by

                Also soweit ich das jetzt durch kurze suche herausfinden konnte ist das mit Blockly nicht möglich.

                Mit JS hab ich etwas in der Art realisiert für Abwesenheit. Da wird alles was in der Aufzählung Anwesenheit ist abgeschaltet.

                Hab gerade kein Zugriff darauf, aber du brauchst $ - Selector und for in.

                Hier mal der Link zur Funktionsbeschreibung des Selector: http://www.iobroker.net/docu/?page_id=5 … 1_Selector

                Gesendet von meinem HTC U11 mit Tapatalk

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

                  Wieso ? Man kann doch hetEnum per JavaScript Abfrage und in einer function zurückgeben

                  Sent from my iPhone using Tapatalk

                  1 Reply Last reply Reply Quote 0
                  • Jey Cee
                    Jey Cee Developer last edited by

                    Ja schon aber mit selector kann man auch gleichzeitig alle Objekte subscriben. Er möchte ja auf die Änderung bestimmter Objekte reagieren ohne jedesmal im Skript festlegen zu müssen welche Objekte genau das sind.

                    Bei dieser Methode muss nur das Skript neu gestartet werden wenn ein neuer Auslöser dazu kommt.

                    Das schien mir die Aufgabenstellung zu sein.

                    Die Verarbeitung der daraus resultierenden Information ist dann der Zweite Schritt.

                    Gesendet von meinem HTC U11 mit Tapatalk

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

                      Auch Dan könnte man doch die Funktion des selectors beim Script Start ausführen und das Resultat als Variable im Trigger verarbeiteten oder hab ich jetzt nen Denkfehler zur blockly Logic im Vergleich mit Javascript?

                      Ich würde den selector als Funktion bauen in blockly und daraus mit Rückgabe die gewünschte Routine auslösen.

                      Hmm alles Theorie muss Mal testen sollte aber so gehen

                      Sent from my iPhone using Tapatalk

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

                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      890
                      Online

                      31.9k
                      Users

                      80.2k
                      Topics

                      1.3m
                      Posts

                      4
                      9
                      823
                      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