Weiter zum Inhalt

Skripten / Logik

16.6k Themen 214.5k Beiträge

Hilfe zu JavaScript, Blockly, TypeScript, Node-RED, Scenes und text2command

NEWS

Unterkategorien


  • Hilfe für Skripterstellung mit JavaScript

    3k 49k
    3k Themen
    49k Beiträge
    D
    @mcu Hi, hab heute die drei !!! beim Alexa Skript https://mcuiobroker.gitbook.io/jarvis-infos/jarvis-v3/system-effektprog./jsontable-alexa-horspiele zum Array hinzugefügt aber es wird kein Cover angezeigt und es werden die drei ??? Kids abgespielt. Kannst Du da bitte mal drüber schauen. Danke [image: 1777493818776-bildschirmfoto-2026-04-29-um-22.16.41-resized.png]
  • Hilfe für Skripterstellung mit Blockly

    7k 80k
    7k Themen
    80k Beiträge
    M
    @Jannik1808 In meiner Doku habe ich ein Script gefunden. Habe es aber nie gebraucht. Weiß also nicht ob es funktioniert. #!/bin/bash export XDG_RUNTIME_DIR=/run/user/1000 WAYLAND_DISPLAY=wayland-0 wlr-randr --output HDMI-A-1 --off
  • Hilfe für Skripterstellung mit Node-RED

    956 13k
    956 Themen
    13k Beiträge
    S
    Hallo Zusammen, ich bin gerade am überlegen, wie ich folgende Aufgabe umsetzen könnte: Ein true an einer (Trigger)Node lässt einen Zähler laufen und setzt einen eigenen Ausgang auf true. Ein false der Trigger Node stoppt den Zähler setzt diesen aber nicht auf false. Ein true lässt den Zähler einfach weiterlaufen... Nach Ablauf der Zeit im Zähler wird der Ausgang des Zählers auf false gesetzt. Mehr soll nicht passieren. Ein separater Eingang am Zähler setzt diesen auf 0 zurück. Was ich damit anfangen möchte: Die Laufzeit der Poolpumpe wird auf eine Mindestlaufzeit von bspw. 4h überwacht -kann aber manuell bedient bei Bedarf länger laufen. Ein Trigger um 00:01Uhr setzt die Laufzeit zurück. Die Zählernode gilt hier als "Anforderung Pumpe wegen Mindestlaufzeit unterschritten". Ich habe noch keine brauchbaren Ideen, wie ich dass sauber und mit wenig Aufwand umsetzen könnte... Vielen Dank und VG Torsten
  • PV Überschuss Wallbox

    3
    0 Stimmen
    3 Beiträge
    390 Aufrufe
    paul53P
    @u66 sagte: Wärmepumpe, der ebenfalls mit Script gesteuert wird automatisch auszuschalten beim anstecken des Fahrzeugs an die Wallbox ? // IDs eintragen! const idConnect = ''; const idSoc = ''; const idPrio = '0_userdata.0.Wallbox.Ladeprio'; // Datenpunkt in Überschusssteuerung für WP prüfen! const idWP = 'tuya.0.46778228e09806828487.1'; var connect = getState(idConnect).val; var soc = getState(idSoc).val; function setPrio() { setState(idPrio, connect && soc < 95, true); // Grenzwert anpassen! } setPrio(); // Skriptstart on(idConnect, function(dp) { connect = dp.state.val; setPrio(); }); on(idSoc, function(dp) { soc = dp.state.val; setPrio(); }); on({id: idPrio, change: 'gt'}, function() { setState(idWP, false); });
  • [Vorlage] Anwesenheitssimulation - Script

    Verschoben
    271
    1
    1 Stimmen
    271 Beiträge
    72k Aufrufe
    L
    Hi, die Funktionalität des Scriptes ist soweit ausentwickelt. (für den Moment) Ich habe noch ein bischen Sanitäres gemacht im Coding, das Logging verbessert und eine check routine eingeführt, falls die Gruppen Definitionen inkonsistent eingestellt werden. Es gibt dann eine harte Fehlermeldung und Programmabbruch. Die Version 1.20 ist hochgeladen und steht im ersten Post zum Download bereit. vG Looxer
  • Liste aller CRON Jobs (2024)

    6
    0 Stimmen
    6 Beiträge
    490 Aufrufe
    Rene55R
    @liv-in-sky Ok. Bevor ich dann jemandem unnötig Arbeit aufhalse, lasse ich das mit dem Issue sein. Ich habs gerade in einem frischen Browser getestet. Hatte ich bisher tatsächlich noch nie so festgestellt.
  • [gelöst] getHistory - aggregate macht nichts?

    3
    1
    0 Stimmen
    3 Beiträge
    311 Aufrufe
    haus-automatisierungH
    @bananajoe sagte in getHistory - aggregate macht nichts?: Und kann mir - vermutlich selbst - die Frage beantworten: Ich muss auch die Schrittgröße step passend angeben? Genau. Damit definiert man die Größe der Bereiche für die Aggregierungs-Funktion.
  • Schreiben von Datenpunkten [gelöst]

    7
    2
    0 Stimmen
    7 Beiträge
    525 Aufrufe
    CodierknechtC
    @randyandy sagte in Schreiben von Datenpunkten [gelöst]: Ich dachte immer aktualisieren nimmt man bei Variablen und steuern bei Objekten die ewas ausführen. Variablen schreibt man mit "Setze ... auf". "Aktualisiere" nimmt man bei eigenen DP, "Steuere" bei DP die einem Adapter gehören. https://forum.iobroker.net/topic/70481/blockly-for-dummies-starthilfe-und-tipps/6
  • Skript Shelly 3EM zu Shelly 3EM Pro Messungen aufzeichnen

    4
    0 Stimmen
    4 Beiträge
    408 Aufrufe
    stefu87_CHS
    @paul53 ok dann werde ich mal den Adapter anschauen und mich da mal einlesen.
  • Blockly: Garagentor automatisch schließen lassen

    11
    1
    0 Stimmen
    11 Beiträge
    928 Aufrufe
    L
    @lastactionhero nach nun 2 Wochen testen habe ich das Script noch um den Fall erweitert, dass bspw. bei Dunkelheit oder Dämmerung der Bewegungssensor gar keine Bewegung bei Öffnung des Tores erkannt hat. Damit funktioniert das Script ziemlich gut! Für alle, die es kopieren wollen, hier der Export: <xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable type="timeout" id="timeout_garagentor">timeout_garagentor</variable> </variables> <block type="on_ext" id="Rc,RDdc5.6wG*^S365kb" x="63" y="213"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="2"></mutation> <field name="CONDITION">any</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="8hnUfm/?(yNLdqZYZioq"> <field name="oid">hm-rpc.1.000920C99B440F.1.MOTION</field> </shadow> </value> <value name="OID1"> <shadow type="field_oid" id="8AnIbRH(B2Z0mq*E[{%["> <field name="oid">hm-rpc.1.002420C995C575.1.DOOR_STATE</field> </shadow> </value> <statement name="STATEMENT"> <block type="timeouts_cleartimeout" id="T?qf2^:iUp,w(UT*ZQz;"> <field name="NAME">timeout_garagentor</field> <next> <block type="controls_if" id="Mn:.=S/[gc[Thv5A|uXj"> <value name="IF0"> <block type="logic_multi_and" id="bfL7b$l[:-;i~hIrK|wL"> <mutation xmlns="http://www.w3.org/1999/xhtml" items="3"></mutation> <value name="AND0"> <block type="logic_compare" id="*W{+nK5#|V!oF:.8L*s+"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="[r~|BdaEIVXhiu6{JM5X"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Garage_Autoclose</field> </block> </value> <value name="B"> <block type="logic_boolean" id="q=1%9$-8B}Z0U8%28k#)"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <value name="AND1"> <block type="logic_compare" id="Qq5B,Q|db2el8:aKjBWq"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="nx62AQcvUCmy#c@$Asax"> <field name="ATTR">val</field> <field name="OID">hm-rpc.1.000920C99B440F.1.MOTION</field> </block> </value> <value name="B"> <block type="logic_boolean" id="e1x]U3dj#0ZIAq`Xk+Gd"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <value name="AND2"> <block type="logic_compare" id="_7d#`#s};ypO29N9upu6"> <field name="OP">NEQ</field> <value name="A"> <block type="get_value" id="mS]!-(O0uD9,u}`A#`td"> <field name="ATTR">val</field> <field name="OID">hm-rpc.1.002420C995C575.1.DOOR_STATE</field> </block> </value> <value name="B"> <block type="math_number" id="BV9G(8uj+VE?A.^me=a5"> <field name="NUM">0</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="comment" id="JQ!5`+_8gzc?@iT^Mi|C"> <field name="COMMENT">Nach 5 min ohne Bewegung automatisch schließen</field> <next> <block type="comment" id="BP05f8xMWyF:n[eD!g7H"> <field name="COMMENT">2 min davon vorgegeben vom Bewegungsmelder</field> <next> <block type="timeouts_settimeout" id="w?3#}$|H,rD_$OA}6lO="> <field name="NAME">timeout_garagentor</field> <field name="DELAY">3</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="control" id="eyPVpw@h|Otg_5=%p_iG"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">hm-rpc.1.002420C995C575.1.DOOR_COMMAND</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="math_number" id="5O?]J$QiwJydKxtg5!`Q"> <field name="NUM">3</field> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> </xml>
  • Blockly mit Liste funktioniert nicht (Warnungen)

    blockly javascript
    2
    1
    0 Stimmen
    2 Beiträge
    251 Aufrufe
    paul53P
    @oberfragger sagte: wo ist mein Fehler...? Die Variable i enthält keine Datenpunkt-ID, sondern den Vergleichstext. Anstelle der Schleife würde ich den Block "suche" verwenden. [image: 1722013697613-blockly_temp.jpg]
  • Script per URL Ausführen mit Variable

    9
    0 Stimmen
    9 Beiträge
    833 Aufrufe
    A
    @codierknecht Danke für Deine Erläuterungen!
  • Zeit seit letztem Regen für Rasenroboter [gelöst]

    26
    1
    0 Stimmen
    26 Beiträge
    2k Aufrufe
    HomoranH
    @dr-bakterius sagte in Zeit seit letztem Regen für Rasenroboter [gelöst]: gibt es schon "ewig". das hat mir Paul auch schon gesagt. @paul53 sagte in Zeit seit letztem Regen für Rasenroboter [gelöst]: @homoran sagte: letzte Änderung ohne Trigger! Wie oft hätte ich das gebraucht "Letzte Änderung" gab es an der Stelle schon immer. Hinzugekommen sind nur Attribute des statischen Objektes unter getObject(id).common.
  • Kein "Mülleimer" um Scripte zu löschen...?

    5
    1
    0 Stimmen
    5 Beiträge
    492 Aufrufe
    S
    @paul53 ja, habe auch was selektiert... das Issue scheint dann mich zu betreffen.... habe schon öfters nen Skript gelöscht, habe schon gedacht ich wäre bl** :) Danke :-)
  • Hue Push API für Hue Adapter

    164
    8 Stimmen
    164 Beiträge
    41k Aufrufe
    cashC
    @antimon wenn es nicht 100% funkitionieren würde, würde ich es nicht nutzen. Das meiste halt per Bewegungsmelder. Beim Schalter würde man eine Verzögerung von ein paar ms mehr eh nicht merken. Ich kann aber auch keine Verzögerung ggü der Zuordnung von Bewegungsmelder und Lampe aus der Hue App erkennen. Der Unterschied ist halt das ich mit Script mehr machen kann und die Hue Bridge nicht belastet wird und man so mehr Komponenten an die Bridge hängen kann. Alles in Javascript geschrieben. Nutze ein Synology mit 16MB Speicher. ioBroker läuft im Docker.
  • Blockly-Editor: Datenpunkt-Auswahl kaputt?

    14
    1
    0 Stimmen
    14 Beiträge
    569 Aufrufe
    MartinPM
    @thomas-braun said in Blockly-Editor: Datenpunkt-Auswahl kaputt?: Zwei unterschiedliche Versionen des gleichen Adapters installiert haben? Natürlich nicht - jetzt habe ich wieder alles auf 8.3.1 zurückgebaut, mit Deinem Befehlsschnipsel iob update iob upgrade ADAPTER@VERSION Mir ist auch wieder eingefallen, warum ich das umgebaut hatte: https://github.com/ioBroker/ioBroker.javascript/issues/1633 Um einen Issue zu erstellen, soll man das Verhalten auch mit dem letzten Beta aus dem github testen, sonst besteht die Gefahr, dass der Issue kommentarlos geschlossen wird ... Meine Motivation, Issues zu schreiben, ist durch dieses Langzeiterlebnis nicht gerade gestiegen ... Bevor ich mir nicht eine Spielwiese Iobroker-Installation gebastelt habe (es steht noch ein ggfs. geeigneter alter PC ohne Betriebssystem in der Ecke herum (Core2Duo 6600 - den möchte ich aber aus Stromverbrauchsgründen nicht durchlaufen lassen...). Vielleicht investiere ich in eine 250 GB SATA SSD .... alles andere sollte so lauffähig sein...
  • Chromecast url2play - hat sich was geändert ?

    1
    1
    0 Stimmen
    1 Beiträge
    177 Aufrufe
    Niemand hat geantwortet
  • Gelöst: Licht-Skript mit Sensor funktioniert nicht mehr

    15
    1
    0 Stimmen
    15 Beiträge
    816 Aufrufe
    ?
    @paul53 ja genau. Weil in jeder Jahreszeit sollte es um 16.00 Uhr eigentlich noch Hell genug also >80 Lux sein. Den DP setze ich am Anfang des Skripts zurück: [image: 1721205593075-b4f573c6-d3bf-4235-a30d-6511f38d7c0d-image.png]
  • Trigger wenn neues SubObjekt angelegt wurde?

    12
    0 Stimmen
    12 Beiträge
    1k Aufrufe
    A
    @paul53 Danke - tut so als "CSV": script.js.common.WLAN-NewDeviceNotify: wlanids init:unifi.0.default.clients.XX:XX:XX:XX:XX:XX.mac,unifi.0.default.clients.YY:YY:YY:YY:YY:YY.mac, ...
  • Blockly mehrere Geräte zusammenfassen

    blockly
    7
    0 Stimmen
    7 Beiträge
    572 Aufrufe
    C
    Perfekt. Vielen Dank für eure Unterstützung. Ich habe es per Szenen konfiguriert.
  • Instar 9408 MQTT unnötige Einträge im logfile

    6
    0 Stimmen
    6 Beiträge
    506 Aufrufe
    R
    @arteck sagte in Instar 9408 MQTT unnötige Einträge im logfile: ja kann man.. Mir ist das nicht gelungen. Ich habe das Thema hier diskutiert: https://forum.iobroker.net/topic/72715/mqtt-topics-ignorieren und hier ein Issue angelegt: https://github.com/ioBroker/ioBroker.mqtt/issues/429 @Jensemann200 Hat das Herausfiltern der MQTT Topics bei dir jetzt geklappt?
  • Umsetzung Go-e Controller, PV Ertrag- Daten Darstellung

    12
    0 Stimmen
    12 Beiträge
    672 Aufrufe
    T
    Versuche den go-e Controller dazu zu bewegen das er Überschulssladen ohne das zusätzliche go-e Modul regelt. Wo sollten denn die Werte in den Datenpunkten dargestellt werden wenn Überschussleistung vorhanden ist?
  • Shelly Plus 2PM Rolladen Skript (Yahka)

    blockly climate
    2
    1
    0 Stimmen
    2 Beiträge
    534 Aufrufe
    N
    @ionar Hallo! Super cool, dass du deine Arbeit hier geteilt hast, vielen Dank dafür! Ich habe die letzten Monate immer wieder versucht die Rollladen über den Shelly 2 PM in yahka zu bekommen und bin kläglich gescheitert. EDIT Nach etwas Probiererei habe ich es geschafft, dein Skript soweit einzurichten :) Allerdings wird dauerhaft angezeigt "wird geöffnet". Kannst du sagen, was ich hier ggf. falsch gemacht habe? "EDIT-2* Ich habe jetzt den Datenpunkten den initialen Wert "open" gegeben - danach lief alles :) Ganz vielen Dank nochmal für das Bereitstellen dieser tollen Lösung! Vielen Dank vorab! Nick

325

Online

32.8k

Benutzer

82.8k

Themen

1.3m

Beiträge