Weiter zum Inhalt

Blockly

6.6k Themen 80.4k Beiträge

Hilfe für Skripterstellung mit Blockly

NEWS

  • Problem mit Heizungsblockly

    17
    1
    0 Stimmen
    17 Beiträge
    829 Aufrufe
    MyzerATM
    @BBTown Da hast du sicherlich Recht , ich denke aber immer vorher nach, bevor ich einen Problem Poste! Der Status Fenster offen oder geschlossen hatte damit ja nichts zu tun! Außerdem hatte der sich nicht geändert, daher wollte ich diesen Trigger auch nicht erwähnen um es übersichtlicher zu halten und habe nur vom Problem Trigger einen Scrennshot erstellt! Den, an dem Script hängen noch viele weitere Scripte, würde ich diese alle erwähnen, wäre es für jene die die Steuerung dahinter nicht kennen unübersichtlich geworden und trägt ja zur eigentlichen Problemlösung nichts bei! @all jetzt bin ich mal gespannt ob es funktioniert, danke euch allen, wie immer seit ihr SPITZE!
  • Grünbeck Objectid umwandeln in liter

    4
    0 Stimmen
    4 Beiträge
    741 Aufrufe
    paul53P
    @slkschlumpf sagte: In Home Assistant kann man eine neue Variable mit einem anderen Namen machen und die z.b. mit 1000 multiplizieren. Das kann man in ioBroker auch, allerdings auf verschiedenen Wegen: Mit eigenem Datenpunkt (unter javascript.0 oder unter 0_userdata.0) und einem Skript, das umwandelt. Oder mit einem Alias-Datenpunkt (ab js-controller-Version 2.x), der die Umwandlung ohne Skript macht, wenn man ihn richtig konfiguriert. // Original-Datenpunkt const idOrigin = 'gruenbeck.0.info.D_A_1_2'; // Alias-Datenpunkt const idAlias = 'gruenbeck.restkapazitaet'; const typeNew = null; // 'boolean', 'number', keine Typwandlung: null function createAlias(idSrc, idDst, typeAlias) { if(getObject('alias.0.' + idDst)) log ('Alias schon vorhanden !', 'warn'); else { var obj = {}; obj.type = 'state'; obj.common = getObject(idSrc).common; if(typeAlias) obj.common.type = typeAlias; obj.common.alias = {}; obj.common.alias.id = idSrc; obj.common.alias.read = 'val * 1000'; // Umwandlung m³ --> l obj.common.unit = 'l'; // Umwandlung in l obj.common.role = 'value'; // Korrektur Rolle obj.common.def = 0; // Korrektur Default setObject('alias.0.' + idDst, obj); } } createAlias(idOrigin, idAlias, typeNew); Das Skript braucht nur einmal kurz gestartet werden, um den Alias-Datenpunkt zu erstellen.
  • Slider auswerten

    3
    0 Stimmen
    3 Beiträge
    151 Aufrufe
    S
    @paul53 cool, danke Paul
  • [Gelöst]Nachricht nicht wie im Script

    16
    2
    0 Stimmen
    16 Beiträge
    527 Aufrufe
    crunchipC
    @BBTown praktisch👍 nun ist meine Frage damit auch beantwortet, wie Animationen gemacht werden können
  • Probleme mit Exec

    13
    1
    0 Stimmen
    13 Beiträge
    2k Aufrufe
    AlCalzoneA
    @UncleB Das Problem ist andersherum. Du benötigst keinen User iobroker auf dem Zielrechner. Der User iobroker auf dem aktuellen Host benötigt die Zertifikate/whatever für root auf dem Zielhost.
  • Steuere Objekt wird nicht ausgeführt.

    7
    1
    0 Stimmen
    7 Beiträge
    590 Aufrufe
    HomoranH
    @paul53 Hast ja recht - andersrum klappts nicht
  • Wörter als Blacklist für Alexa

    Ungelöst blockly security
    7
    0 Stimmen
    7 Beiträge
    867 Aufrufe
    NegaleinN
    @CKMartens Hab jetzt mal etwas rumgetestet. Wenn ich zB den Pupsgenerator starte und gleich "Alea Stopp" sage, wird der Pups_Dings sofort abgebrochen. Aber wenn ich den Stopp im Alexa2 Adapter starte, wird er nicht abgebrochen. Hmmmm, gäb es noch eine andere Möglichkeit?
  • iCal Termine in der Vergangenheit

    blockly
    5
    0 Stimmen
    5 Beiträge
    524 Aufrufe
    StM47S
    Ich bin folgendermaßen vorgegangen und gespannt ob es funktioniert. Als erstes habe ich 3 Datenpunkte erstellt. [image: 1574364698077-bildschirmfoto-2019-11-21-um-20.31.28.png] -nachtschicht -nachtschicht1 -tagschicht Anschließend habe ich folgendes Blockly Script erstellt: [image: 1574364885206-bildschirmfoto-2019-11-21-um-20.33.51-resized.png] Hierbei werden zwei Termine aus iCal gertriggert. NW Nachtdienst 🌒 für die 8h Schicht und N1W Nachtschicht 🔦 für die 12h Schicht Wenn einer der beiden Termine in iCal auftaucht, wird der Datenpunkt "nachtschicht" im ersten Teil des Blocklys auf true gesetzt, wenn nicht auf false. [image: 1574366814683-bildschirmfoto-2019-11-21-um-20.39.01.png] Im nächsten Teil des Blockly Scripts wird bei Änderung des Datenpunktes "Nachtschicht" geprüft, ob der Datenpunkt auf false steht. Wenn ja, wird der Datenpunkt "Nachtschicht1" auf true gesetzt. Der Hintergrund ist hierbei folgender. iCal prüft alle 30 Minuten, ob sich ein Ereignis im Kalender geändert hat. Wenn ich meine letzte Nachtschicht habe, wird ab 0:00 Uhr in den nächsten 30 Minuten von iCal erkannt, dass keiner der beiden Termine NW Nachtdienst 🌒 N1W Nachtschicht 🔦 mehr im Kalender steht und somit wird der Datenpunkt "nachtschicht" auf false gesetzt. Das Bolckly sollte dies nun im zweiten Teil erkennen und den Datenpunkt "nachtschicht1" auf true setzen. [image: 1574365984512-bildschirmfoto-2019-11-21-um-20.52.55.png] Im unteren Teil des Blockly Scriptes wird der Datenpunkt "nachtschicht1" getriggert. Steht dieser auf true, dann startet ein Timeout mit 1500 Minuten, dass sind 25 Stunden. Wenn diese Zeit abgelaufen ist, sollte der State von "nachtschicht1" wieder auf false gesetzt werden und der Datenpunkt "tagschicht" auf true. [image: 1574366444111-bildschirmfoto-2019-11-21-um-20.55.30.png] In einem weiterem Blockly Script werden dann über die Datenpunkte -nachtschicht -nachtschicht1 -tagschicht die FritzDect Schaltvorlagen in der Fritzbox für die Heizungsthermostate geschaltet. [image: 1574366617774-bildschirmfoto-2019-11-21-um-21.03.24-resized.png] Ich bin gespannt, ob dass so funktioniert. Vielleicht, kann der Eine oder Andere Spezialist hier, sich die Blockly Scripte mal anschauen!?
  • 2 Werte addieren

    37
    0 Stimmen
    37 Beiträge
    4k Aufrufe
    HomoranH
    @BBTown sagte in 2 Werte addieren: @Homoran was das für Auswirkungen hat, ist mir dabei nur nicht klar Mir auch nur teilweise ;-) Das offensichtliche (aber unbedeutende) ist, dass Werte in rot bleiben, wenn steuere benutzt wird, wo kein Adapter den Wert abholt, umsetzt und dann bestätigt. Umgekehrt wird ein Adapter nie auf eine Änderung reagieren, die mit aktualisiere geschickt wurde. Das ACK-Flag ist bereits true und der Adapter sieht sich nicht genötigt da etwas zu tun. Wo zu es noch wichtig ist sieht man (in der unglücklichen Übersetzung) im Trigger bei Blockly. Die Bezwichnung "anerkannt" bezieht sich auf diesen ACK(nowledge) Flag. Hier kann man also triggern, ob ein Adapter auch tatsächlich auf die Änderung reagiert hat.
  • Stromverbrauch - Homematic Visualisieren

    27
    0 Stimmen
    27 Beiträge
    8k Aufrufe
    sigi234S
    @TG70 sagte in Stromverbrauch - Homematic Visualisieren: Sehr Cool ... vielen lieben DANK. Das einzige was mir jetzt noch fehlt - ich weiß aus den Datensätzen dann nicht mehr welcher Tag bzw. welches Datem der Datensatz (TAG1-15) war. Möchte so ein Monat darstellen können. Das Widget ist sehr Mächtig, du musst experimentieren. Schau dir auch die Line Chart an.
  • Dimm Skript Error

    4
    1
    0 Stimmen
    4 Beiträge
    508 Aufrufe
    marcusklM
    @paul53 Vielen Dank dafür, funktioniert perfekt
  • Was kann Nodered was Blockly nicht kann?

    19
    0 Stimmen
    19 Beiträge
    2k Aufrufe
    J
    @Hamudulu Sieht doch ganz gut aus, auch die Funktion sinnvoll verwendet. Dann noch der standard Hinweis, bei falls ist =wahr nicht nötig, da Grundfunktion des Block.
  • Aktualisierte Zeit von Objekt kleiner als

    blockly
    2
    0 Stimmen
    2 Beiträge
    273 Aufrufe
    W
    Konnte es bereits lösen: "Aktuelle Zeit als Datumsopbjekt" minus "Zeitstempel von Objekt ID"
  • [gelöst] String zu Datum konvertieren?

    blockly
    1
    0 Stimmen
    1 Beiträge
    496 Aufrufe
    Niemand hat geantwortet
  • [gelöst] Blockly Licht bei Dämmerung automatich an

    blockly
    10
    1
    0 Stimmen
    10 Beiträge
    3k Aufrufe
    J
    @StM47 sagte in [gelöst] Blockly Licht bei Dämmerung automatich an: @ITCrowd Eigentlich logisch. Bei meinem Blockly wird zur Abenddämmerung getriggerrt und hierbei geprüft, ob es 01:00 Uhr ist. Da es zur Dämmerung natürlich nicht 01:00 Uhr ist bleibt die Funzel an. Danke für deine Erleuchtung! Falsch, Dein Ausschalte Block hat gar kein Trigger und wird nur einmalig beim Script Start getriggert, danach ist er funktionslos, deshalb geht da nichts aus So wie das ITCrowd gezeigt hat, ist der Trigger der Cron und schaltet wie gewünscht aus.
  • Hue Skript Idee?

    24
    0 Stimmen
    24 Beiträge
    3k Aufrufe
    A
    Also ich hatte damals mal für meinen Dachboden ein gleiches Problem gelöst. Leider habe ich das Blockly nicht mehr. Aber prinzipiell hatte ich es so gelöst: "Trigger " schaltet bei erkannter Bewegung Licht an . "CRON" prüft jede Minute ob Licht im Raum an ist. Wenn ja, erhöhe Zähler (Datenpunkt oder Variable) um 1. Wenn Zähler>15 (Minuten), schalte Licht aus und setze Zähler auf 0. Wenn nein, setzte Zähler auf 0.
  • Passender Trigger gesucht

    blockly
    4
    1
    0 Stimmen
    4 Beiträge
    433 Aufrufe
    S
    @paul53 Wie versprochen, hier die getestete Lösung, falls jemand genau so sparsam kuckt wie ich. [image: 1574234297817-funktion-anspringen.png] Der größte Stolperstein dabei ist, dass der Baustein [image: 1574234610487-oder.png] ODER erst auftaucht, nachdem man eine [image: 1574234868603-erstfunktion.png] Funktion mit dem Namen "ODER" angelegt hat. Ich hatte zunächst keinen sonderlich intelligenten Gesichtsausdruck... Danke für die Hilfe! Ich hatte so einige AHA-Effekte. SBPoly
  • Licht geht häufig nicht aus

    7
    1
    0 Stimmen
    7 Beiträge
    528 Aufrufe
    J
    @maxpd Ich hatte ein ähnliches Problem und da ging das Ding nicht an. Der DP wurde aber auf true gesetzt. Ändert sich bei Dir der DP auf false, oder kommt das gar nicht an?
  • Alarm wenn letzte änderung zu lange her ist

    blockly
    4
    0 Stimmen
    4 Beiträge
    2k Aufrufe
    C
    coole ideen da werd ich mich mal dran versuchen. DANKE
  • Bewegungsmelder/Lampe einschalten Frage

    5
    1
    0 Stimmen
    5 Beiträge
    1k Aufrufe
    PeoplesP
    Bei Blocky kann ich dir da leider nicht helfen, habe aber damals ein Script genau dafür geschrieben. https://forum.iobroker.net/topic/21226/vorlage-automatisches-licht

251

Online

33.0k

Benutzer

83.5k

Themen

1.3m

Beiträge