Weiter zum Inhalt

Blockly

6.6k Themen 79.8k Beiträge

Hilfe für Skripterstellung mit Blockly

NEWS

  • Dieses Thema wurde gelöscht!

    0
    0 Stimmen
    0 Beiträge
    12 Aufrufe
    Niemand hat geantwortet
  • Speichern von Ertragprognosen (Tag und +1 Tag), korrekt so?

    Verschoben
    8
    1
    0 Stimmen
    8 Beiträge
    553 Aufrufe
    T
    @bahnuhr said in Speichern von Ertragprognosen (Tag und +1 Tag), korrekt so?: @topsurfer von welcher Seite hast du die Prognosen ? Die hab ich direkt von Fronius (Premium-Paket), über Solarweb [image: 1749802058477-screenshot_20250613_100603_solarweb.jpg]
  • Pool Wärmepumpe & PV Überschuss + PV Speicherfüllstand

    26
    4
    0 Stimmen
    26 Beiträge
    2k Aufrufe
    paul53P
    @jonas5492 sagte: werde jetzt mal schauen was mit den neuen debug rauskommt Packe die Debug-Blöcke besser in den Trigger von "Pumpe Ein/Aus": [image: 1749748769937-blockly_temp.jpg]
  • Skript Motorschloss

    32
    0 Stimmen
    32 Beiträge
    3k Aufrufe
    B
    @paul53 So funktioniert es Exakt !! Ich lass des mal im täglichen betrieb jetzt laufen. Vielen Vielen Dank !! mal wieder !! Grüße Balu
  • Bewegungsmelder mit Timer

    24
    1
    0 Stimmen
    24 Beiträge
    2k Aufrufe
    O
    Was haltet ihr davon: [image: 1749422653772-064904c6-1631-46b1-b3b3-4c23a419159a-image.png]
  • Verständnisfrage Zeichenkette / String

    8
    2
    0 Stimmen
    8 Beiträge
    634 Aufrufe
    HomoranH
    @homoran sagte in Verständnisfrage Zeichenkette / String: @ralf-2 sagte in Verständnisfrage Zeichenkette / String: Dann beim zu steuernden Datenpunkt auf den Stift klicken @Takahara das wäre der HmIP Datenpunkt! zeig uns bitte da von einem die Objektdaten in code-tags @Takahara kommt das noch? bei nochmaligem Ansehen fiel mehr leider jetzt erst auf, dass du auch bei eigenen Datenpunkten fälschlicherweise "steuere" verwendest, obwohl diese Datenpunkte nichts steuern.
  • Verständnisfrage Datentyp || Temp/Min/Max

    7
    3
    0 Stimmen
    7 Beiträge
    461 Aufrufe
    AsgothianA
    @takahara sagte in Verständnisfrage Datentyp || Temp/Min/Max: @homoran said in Verständnisfrage Datentyp || Temp/Min/Max: Es sieh beim Blockly allerdings so aus, als ob du die aktuellen Werte nur bei Skriptstart eingelesen werden. Natürlich hast du recht. Danke :) :) :( VG Takahara Die effizienteste Lösung ist: die Variable ActTemp entfernen, sie wird nicht gebraucht an Stelle der Variable ActTemp (überall wo sie im Skript auftaucht) den Baustein [image: 1749294056234-screenshot-2025-06-07-at-13.00.53.png] nutzen. (auf Deutsch steht da Wert drin. Dieser Baustein enthält den Wert der den Trigger ausgelöst hat. A. Nachtrag: Das zurücksetzen von minTemp und maxTemp erscheint mir seltsam. So wie du es setzt kann die minimale Temperatur grösser als -50 sein, sowie die maximale nie kleiner als 50. Das sieht seltsam aus. A.
  • frage zu Blockly (Datenpunkt und Ändernung)

    9
    1
    0 Stimmen
    9 Beiträge
    629 Aufrufe
    D4vED
    @padrino sagte in frage zu Blockly (Datenpunkt und Ändernung): @d4ve Auch wenn man mich wohl ignoriert, im ersten Beitrag war doch Status schon auf "Änderung", hätte es doch klappen müssen... nein nein sry. hab dein Beitrag gelesen. nur ich hab schon öfter mit Paul geschrieben. und er könnte mir bis her immer zu 100% helfen daher bin ich direkt auf seine Nachricht eingegangen. das war absolut nicht gegen dich. danke dir auch.
  • Zeitplan, jeden zweiten Tag, Probleme..

    23
    3
    0 Stimmen
    23 Beiträge
    2k Aufrufe
    S
    @codierknecht @paul53 Vielen Dank für Eure Hilfe, hab es nun erstellt!
  • Alexa Lautstärke auf 0 setzen

    javascript blockly
    7
    0 Stimmen
    7 Beiträge
    678 Aufrufe
    padrinoP
    @arteck sagte in Alexa Lautstärke auf 0 setzen: alexa2.0.Echo-Devices.xxxxx.Player.volume ja, da werden die einzelnen Dosen auf das volume der Gruppe gesetzt und dan nur wenn muke läuft..sonst nicht Also, die Geräte werden auch auf "0" gesetzt, wenn keine Musik spielt. Das Problem ist nur, ist ein Gerät auf "0" und es erfolgt danach eine neue Ausgabe, dann wird das Gerät automatisch auf 1 (also 10% gestellt). Sprich ein dauerhaftes Stummschalten für zukünftige Ereignisse geht mit "Volume 0" nicht. bei alexa2.0.Echo-Devices.xxxx.Commands.speak-volume eben nicht.. Das meinte ich gar nicht, mit meinem Hinweis auf "speak". Was ich meinte, als ich mal mein Problem schilderte, dass ein alexa2.0.Echo-Devices.gruppenID.Commands.speak nicht immer auf allen Geräten ankomme, bekam ich die Antwort, dass ein "speak" auf Gruppen von Amazon nicht vorgesehen sei und daher sich der Adapter drum kümmere, die einzelnen Geräte per "speak" anzusteuern (daher kann es auch zu Verzögerungen kommen und nicht alle Geräte sprechen 100% zu selben Zeit). Meiner Vermutung war also, es könnte mit "Gruppen Volume" ähnlich sein, mehr wollte ich damit nicht sagen, sprich, eigentlich ist es für das Ergebnis eher egal, ob nun wirklich amazon die Gruppe auf "0" stellt, oder der Adapter jedes Gerät manuell.
  • Erl.: State Enums setzen ..

    2
    2
    0 Stimmen
    2 Beiträge
    165 Aufrufe
    MartinPM
    Selbst gefunden, durch mehr Logging - man kann einfach die Zahl in Klammern hernehmen .... [image: 1749134901636-auswahl_023.png] Also [image: 1749135012152-dbd8e69d-aa81-45c0-97e5-f4f824b800e5-grafik.png]
  • Zeitplan Probleme

    Verschoben
    57
    2
    0 Stimmen
    57 Beiträge
    5k Aufrufe
    AsgothianA
    @codierknecht sagte in Zeitplan Probleme: übersehen, dass hier Timeout und nicht Intervall Teufel, Detail, Offene Fragen :)
  • Blockly für Sturmerkennung so korrekt ?

    11
    1
    0 Stimmen
    11 Beiträge
    860 Aufrufe
    Q
    @paul53 Vielen Dank für deine Hilfe! Lässt sich der Mehrverbrauch an Ressourcen durch diese "nicht optimale" Art Skripte quantifizieren ?
  • Script auf mehrere Objekte + Wert Parent-Ordners auslesen

    8
    0 Stimmen
    8 Beiträge
    512 Aufrufe
    A
    hier übrigens das script für alle, die daran interessiert sind. AP von 10.1.1.1 entsprechend auf euren AP setzen: var url, TagMini1, jsonMini1; async function encodeURL(url) { url = encodeURIComponent(url); return url; } on({ id: [].concat(new RegExp('0_userdata\\.0\\.vars\\.etags\\..+\\.json')), change: 'ne' }, async (obj) => { let value = obj.state.val; let oldValue = obj.oldState.val; jsonMini1 = await encodeURL(String((obj.state ? obj.state.val : ''))); httpPost('http://10.1.1.1/jsonupload', (['mac=',obj.channelName,'&json=',jsonMini1].join('')), { timeout: 15000, responseType: 'text' }, async (err, response) => { }); });
  • Blocky Lichtsteuerung klappt irgendwie nicht.

    Verschoben
    20
    1
    0 Stimmen
    20 Beiträge
    1k Aufrufe
    CodierknechtC
    @realrob Tu Dir einen Gefallen und ändere den Zeitplan für 02:00 Uhr in einen CRON. Das läuft stabiler. [image: 1748985880615-4ee4eb71-a6c3-4781-a9ec-8a0afc107465-grafik.png] Mal ganz davon abgesehen dass das auch jeder lesen kann statt diesem abgeschnittenen Kauderwelsch ;-)
  • [gelöst] Summe über Liste mit enum.functions

    4
    4
    0 Stimmen
    4 Beiträge
    200 Aufrufe
    A
    Ein großes Danke an @paul53. Du bist (mal wieder) mein Blockly-Held! Funktioniert einwandfrei! Auf diese Lösung wäre ich nie gekommen! Vielen Dank! Gruß Alchemi
  • [solved] bei httpGet auf timeout reagieren?

    2
    2
    0 Stimmen
    2 Beiträge
    186 Aufrufe
    C
    habe es mit [image: 1748944324616-da9aea2f-abca-4caa-922d-b905ea9da899-grafik.png] hinbekommen...
  • Geigerzähler GQ Electronics GMC 320+ V5

    blockly communication
    3
    0 Stimmen
    3 Beiträge
    648 Aufrufe
    S
    @sborg @JamesFrosch007 falls das Thema noch wen interessiert: ich hab das mit Node-Red relativ einfach gelöst. zusätzliches npm package node-red-node-serialport installiert Node-Red-Flow [ { "id": "7f40fabab7ea23c0", "type": "serial in", "z": "c241f527b52bd10a", "name": "GMC-320", "serial": "15ad7491d36bd43d", "x": 220, "y": 100, "wires": [ [ "222a8e8215c110c6" ] ] }, { "id": "222a8e8215c110c6", "type": "function", "z": "c241f527b52bd10a", "name": "function 4", "func": "//@superflip - 2025-03-25\n\nif (msg.payload && Buffer.isBuffer(msg.payload) && msg.payload.length > 0) {\n //read Buffer and write to local variable\n let buffer = msg.payload;\n let cpm = buffer.readUInt8(0);\n\n // check, if counter already exists\n if (!context.counterCPM) {\n context.counterCPM = 0; // Initialisiere den Zähler\n //first buffer is sometimes set to 128\n if (cpm == 128) {\n cpm=0;\n }\n }\n\n // calculate time since last reset\n let currentTime = new Date().getTime();\n if (!context.lastResetTime) {\n context.lastResetTime = currentTime;\n }\n\n //add new value to counter\n context.counterCPM += cpm;\n\n // if 60s are over\n if (currentTime - context.lastResetTime >= 60000) {\n // write msg.payload.total for further processing\n msg.payload = { total: context.counterCPM};\n // reset counter\n context.counterCPM = 0;\n context.lastResetTime = currentTime;\n }\n\n} \n\nreturn msg;\n", "outputs": 1, "timeout": 0, "noerr": 0, "initialize": "", "finalize": "", "libs": [], "x": 400, "y": 100, "wires": [ [ "72e83dc1246866b4" ] ] }, { "id": "72e83dc1246866b4", "type": "switch", "z": "c241f527b52bd10a", "name": "", "property": "payload.total", "propertyType": "msg", "rules": [ { "t": "nnull" } ], "checkall": "true", "repair": false, "outputs": 1, "x": 550, "y": 100, "wires": [ [ "755b9544f295d10a" ] ] }, { "id": "427bfe4a2025d94e", "type": "ioBroker out", "z": "c241f527b52bd10a", "name": "CPM schreiben", "topic": "0_userdata.0.test.radioactivity", "ack": "true", "autoCreate": "false", "stateName": "", "role": "", "payloadType": "", "readonly": "", "stateUnit": "", "stateMin": "", "stateMax": "", "x": 940, "y": 100, "wires": [] }, { "id": "755b9544f295d10a", "type": "change", "z": "c241f527b52bd10a", "name": "", "rules": [ { "t": "set", "p": "payload", "pt": "msg", "to": "payload.total", "tot": "msg" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 730, "y": 100, "wires": [ [ "427bfe4a2025d94e" ] ] }, { "id": "15ad7491d36bd43d", "type": "serial-port", "name": "", "serialport": "/dev/ttyUSB0", "serialbaud": "115200", "databits": "8", "parity": "none", "stopbits": "1", "waitfor": "", "dtr": "none", "rts": "none", "cts": "none", "dsr": "none", "newline": "0x80", "bin": "bin", "out": "char", "addchar": "", "responsetimeout": "10000" } ]
  • Datenpunkt ( Schalter ) nur eine Sekunde Auf True.

    13
    1
    0 Stimmen
    13 Beiträge
    650 Aufrufe
    B
    @paul53 OK es klappt. Ich war im IO Brocker trotz speichern 3 Programierschritte zurück. Gestern Abend hatte ich auch etwas gespeichert was heute weg war. Kennt Ihr das Phänomen ? Auf jeden Fall danke Euch Vielmals !!!!!!
  • Blockly für Einspeisung

    12
    1
    0 Stimmen
    12 Beiträge
    1k Aufrufe
    CodierknechtC
    @premo Wo ist dabei das Problem? [image: 1748862773495-2bf8ffa8-c92c-42c9-a9ba-7ee83cea0676-image.png] Hast Du Min- oder Maxwerte im State konfiguriert?

325

Online

32.8k

Benutzer

82.7k

Themen

1.3m

Beiträge