Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Verbesserungsvorschläge für ein Script

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    852

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

Verbesserungsvorschläge für ein Script

Geplant Angeheftet Gesperrt Verschoben Blockly
5 Beiträge 2 Kommentatoren 239 Aufrufe 1 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • S Offline
    S Offline
    Stefan341
    schrieb am zuletzt editiert von Stefan341
    #1

    Hallo,
    ich hatte ja schon seit längerem vor, meine Sonoff TX Ultimate etwas zu pimpen. Nachdem ich etwas in einer "Sackgasse" steckte und versucht habe undefinierbare Zahlenkombinationen des Matter-Adapters die die Farbe des Backlights definieren zu entschlüsseln, habe ich mich nun entschieden einen anderen Weg, unwahr den über die URL des Schalters, zu gehen.

    Herausgekommen ist folgendes Blockly mit dem ich den geschalteten Channel am Schalter durch rote LEDs visualisiere.

    Ich spare mir erstmal die Mühe und erkläre die einzelnen Schritte. Ich denke das relevante ist zu erkennen. Darum werfe ich einfach mal so das Blockly "in den Raum"
    Bildschirmfoto 2025-12-20 um 21.37.03.png

    Bildschirmfoto 2025-12-20 um 21.38.04.png

    Wenn irgendwas nicht so ersichtlich ist, bitte fragen.

    Ich habe zwei Fragen an die Blockly-Experten unter euch:

    1. Kann man das Script vereinfachen oder ist es so optimiert genug? Das ist mein erstes Script in der Größenordnung. Darum hätte ich gerne eine Einschätzung ob es so sinnvoll aufgebaut ist.

    2. Das Script bezieht sich ja nur auf einen Schalter. Ich habe nur leider mehrere von den Schaltern verbaut. Das Ziel ist es natürlich, alle Schalter so zu optimieren. Es sind sowohl 1Ch-, 2Ch- und auch weitere 3Ch vorhanden. Lassen sich die anderen in das vorhandene Script "integrieren" oder muss ich für jeden Schalter ein eigenes Script erstellen?

    paul53P 1 Antwort Letzte Antwort
    0
    • S Stefan341

      Hallo,
      ich hatte ja schon seit längerem vor, meine Sonoff TX Ultimate etwas zu pimpen. Nachdem ich etwas in einer "Sackgasse" steckte und versucht habe undefinierbare Zahlenkombinationen des Matter-Adapters die die Farbe des Backlights definieren zu entschlüsseln, habe ich mich nun entschieden einen anderen Weg, unwahr den über die URL des Schalters, zu gehen.

      Herausgekommen ist folgendes Blockly mit dem ich den geschalteten Channel am Schalter durch rote LEDs visualisiere.

      Ich spare mir erstmal die Mühe und erkläre die einzelnen Schritte. Ich denke das relevante ist zu erkennen. Darum werfe ich einfach mal so das Blockly "in den Raum"
      Bildschirmfoto 2025-12-20 um 21.37.03.png

      Bildschirmfoto 2025-12-20 um 21.38.04.png

      Wenn irgendwas nicht so ersichtlich ist, bitte fragen.

      Ich habe zwei Fragen an die Blockly-Experten unter euch:

      1. Kann man das Script vereinfachen oder ist es so optimiert genug? Das ist mein erstes Script in der Größenordnung. Darum hätte ich gerne eine Einschätzung ob es so sinnvoll aufgebaut ist.

      2. Das Script bezieht sich ja nur auf einen Schalter. Ich habe nur leider mehrere von den Schaltern verbaut. Das Ziel ist es natürlich, alle Schalter so zu optimieren. Es sind sowohl 1Ch-, 2Ch- und auch weitere 3Ch vorhanden. Lassen sich die anderen in das vorhandene Script "integrieren" oder muss ich für jeden Schalter ein eigenes Script erstellen?

      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von paul53
      #2

      @Stefan341 sagte: Lassen sich die anderen in das vorhandene Script "integrieren" oder muss ich für jeden Schalter ein eigenes Script erstellen?

      Sie lassen sich in ein Skript integrieren, es ist aber übersichtlicher, jeweils eigene Skripte vorzusehen.

      @Stefan341 sagte in Verbesserungsvorschläge für ein Script:

      ist es so optimiert genug?

      Nein.
      Werte, die mehr als einmal verwendet werden, setzt man in Variablen und verwendet anschließend nur die Variablen.
      "httpGet" führt man nur einmal zum Schluss aus und übergibt per Variable die URL, die abhängig von den Bedingungen konstruiert wird. Ich nehme an, dass jeweils nur eine URL gesendet werden soll?

      Prinzip:

      Blockly_temp.JPG

      Wo wird die Variable Schalterfarbe gesetzt?

      EDIT: Wird bei "nicht tx" immer die gleiche URL erzeugt? In dem Fall ließe sich die Logik vereinfachen.

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      S 1 Antwort Letzte Antwort
      0
      • paul53P paul53

        @Stefan341 sagte: Lassen sich die anderen in das vorhandene Script "integrieren" oder muss ich für jeden Schalter ein eigenes Script erstellen?

        Sie lassen sich in ein Skript integrieren, es ist aber übersichtlicher, jeweils eigene Skripte vorzusehen.

        @Stefan341 sagte in Verbesserungsvorschläge für ein Script:

        ist es so optimiert genug?

        Nein.
        Werte, die mehr als einmal verwendet werden, setzt man in Variablen und verwendet anschließend nur die Variablen.
        "httpGet" führt man nur einmal zum Schluss aus und übergibt per Variable die URL, die abhängig von den Bedingungen konstruiert wird. Ich nehme an, dass jeweils nur eine URL gesendet werden soll?

        Prinzip:

        Blockly_temp.JPG

        Wo wird die Variable Schalterfarbe gesetzt?

        EDIT: Wird bei "nicht tx" immer die gleiche URL erzeugt? In dem Fall ließe sich die Logik vereinfachen.

        S Offline
        S Offline
        Stefan341
        schrieb am zuletzt editiert von Stefan341
        #3

        @paul53
        Danke erstmal für deine Verbesserungen.

        @paul53 sagte in Verbesserungsvorschläge für ein Script:

        Werte, die mehr als einmal verwendet werden, setzt man in Variablen und verwendet anschließend nur die Variablen.
        "httpGet" führt man nur einmal zum Schluss aus und übergibt per Variable die URL, die abhängig von den Bedingungen konstruiert wird.

        Das werde ich mal versuchen zu optimieren.

        @paul53 sagte in Verbesserungsvorschläge für ein Script:

        Ich nehme an, dass jeweils nur eine URL gesendet werden soll?

        Für jeden Channel wird eine bestimmte URL gesendet wenn er eingeschaltet wird, und eine andere (aber auch für jeden Channel individuelle) wenn er ausgeschaltet wird.
        (Das wäre die Funktionsweise tagsüber)

        Nachts läuft grundsätzlich ein Animationslicht im Schalter, aber nur wenn alle Channel aus sind. Wann es läuft, wird durch den Datenpunkt "TX Ultimate BG-Bel EG" bestimmt. Wenn 1 -> Animation an, wenn 0 ->Animation aus.
        Wenn jetzt ein Channel auf 1 geht, muss Ch4 mit 0 gesteuert werden um die Animation zu beenden und danach die individuelle URL (wie tagsüber) aufgerufen werden.

        Wenn alle Channel 0 sind, wird eine andere URL gesendet, um die Animation wieder zu starten.

        @paul53 sagte in Verbesserungsvorschläge für ein Script:

        Wo wird die Variable Schalterfarbe gesetzt?

        Ganz oben im Script. Das ist aber nur ein "Setze Variable Schalterfarbe auf FF0000".

        paul53P 1 Antwort Letzte Antwort
        0
        • S Stefan341

          @paul53
          Danke erstmal für deine Verbesserungen.

          @paul53 sagte in Verbesserungsvorschläge für ein Script:

          Werte, die mehr als einmal verwendet werden, setzt man in Variablen und verwendet anschließend nur die Variablen.
          "httpGet" führt man nur einmal zum Schluss aus und übergibt per Variable die URL, die abhängig von den Bedingungen konstruiert wird.

          Das werde ich mal versuchen zu optimieren.

          @paul53 sagte in Verbesserungsvorschläge für ein Script:

          Ich nehme an, dass jeweils nur eine URL gesendet werden soll?

          Für jeden Channel wird eine bestimmte URL gesendet wenn er eingeschaltet wird, und eine andere (aber auch für jeden Channel individuelle) wenn er ausgeschaltet wird.
          (Das wäre die Funktionsweise tagsüber)

          Nachts läuft grundsätzlich ein Animationslicht im Schalter, aber nur wenn alle Channel aus sind. Wann es läuft, wird durch den Datenpunkt "TX Ultimate BG-Bel EG" bestimmt. Wenn 1 -> Animation an, wenn 0 ->Animation aus.
          Wenn jetzt ein Channel auf 1 geht, muss Ch4 mit 0 gesteuert werden um die Animation zu beenden und danach die individuelle URL (wie tagsüber) aufgerufen werden.

          Wenn alle Channel 0 sind, wird eine andere URL gesendet, um die Animation wieder zu starten.

          @paul53 sagte in Verbesserungsvorschläge für ein Script:

          Wo wird die Variable Schalterfarbe gesetzt?

          Ganz oben im Script. Das ist aber nur ein "Setze Variable Schalterfarbe auf FF0000".

          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von paul53
          #4

          @Stefan341 sagte: durch den Datenpunkt "TX Ultimate BG-Bel EG" bestimmt

          So wie es programmiert ist, steuert dieser DP auch, ob die LEDs tagsüber eingeschaltet werden. Ist das so gewollt?

          Ich würde nur die LEDs steuern, die zum Kanal gehören, der gerade triggert. Die Konstruktion der passenden URL würde ich für Kanäle 1 und 3 in einer Schleifen-Funktion machen.

          Blockly_temp.JPG

          Ich hoffe, dass "%3B" (Semikolon) vor der ersten LED nicht stört?

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          S 1 Antwort Letzte Antwort
          0
          • paul53P paul53

            @Stefan341 sagte: durch den Datenpunkt "TX Ultimate BG-Bel EG" bestimmt

            So wie es programmiert ist, steuert dieser DP auch, ob die LEDs tagsüber eingeschaltet werden. Ist das so gewollt?

            Ich würde nur die LEDs steuern, die zum Kanal gehören, der gerade triggert. Die Konstruktion der passenden URL würde ich für Kanäle 1 und 3 in einer Schleifen-Funktion machen.

            Blockly_temp.JPG

            Ich hoffe, dass "%3B" (Semikolon) vor der ersten LED nicht stört?

            S Offline
            S Offline
            Stefan341
            schrieb am zuletzt editiert von Stefan341
            #5

            @paul53

            Danke erstmal soweit ich probiere mal etwas.

            1 Antwort Letzte Antwort
            0
            Antworten
            • In einem neuen Thema antworten
            Anmelden zum Antworten
            • Älteste zuerst
            • Neuste zuerst
            • Meiste Stimmen


            Support us

            ioBroker
            Community Adapters
            Donate

            598

            Online

            32.6k

            Benutzer

            82.1k

            Themen

            1.3m

            Beiträge
            Community
            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
            ioBroker Community 2014-2025
            logo
            • Anmelden

            • Du hast noch kein Konto? Registrieren

            • Anmelden oder registrieren, um zu suchen
            • Erster Beitrag
              Letzter Beitrag
            0
            • Home
            • Aktuell
            • Tags
            • Ungelesen 0
            • Kategorien
            • Unreplied
            • Beliebt
            • GitHub
            • Docu
            • Hilfe