Weiter zum Inhalt

Skripten / Logik

16.7k Themen 215.8k Beiträge

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

NEWS

Unterkategorien


  • Hilfe für Skripterstellung mit JavaScript

    3k 50k
    3k Themen
    50k Beiträge
    maxclaudiM
    @Daniel-8 Datenverkehr geloggt: App <> Gerät Cloud <> Gerät Wichtige Zeitpunkte gefiltert, entschlüsselt und analysiert. Windows-Konsolen-Programm ist fertig: zendureURLtool.exe Das Tool ist stabiler und schneller als die App :-) Credits für die genutzte Bluetooth-Bibliothek gehen an Henrik Blidh: https://github.com/hbldh/bleak Man füllt in der config.ini nur 3 Felder aus, speichert ab und los geht's mit Doppelklick auf "zendureURLtool.exe"... [image: 1785779136981-00.png] entweder zu lokalem Broker wechseln: [image: 1785779157871-01.png] oder zurück zur Cloud: [image: 1785779165583-02.png] geht alles sehr schnell. Selbst bei einem Hyper "ohne" stromlos machen. Nicht mal Trennung von BT am Rechner war nötig. Nur APP muss vollständig beendet sein. Am besten in der Zeit zusätzlich BT am Smartphone ausgeschaltet lassen. [image: 1785779990840-04.png] [image: 1785779205314-05.png] [image: 1785779218429-06.png] [image: 1785779228056-07.png] Bei einem Hyper habe ich für 3x IP wechseln nur ca. 2 min benötigt. Er war jedesmal sofort verbunden. Am längsten dauerte das Aufstehen, den Button zu drücken und zu warten, dass er im Kopplungsmodus ist. Es haben sich beim Analysieren noch mehr Wege geöffnet. Allerdings sind die für mich aktuell unnötig und stehen – wenn überhaupt – ganz hinten an.
  • Hilfe für Skripterstellung mit Blockly

    7k 80k
    7k Themen
    80k Beiträge
    tiobbT
    @Homoran sagte: Genau das was @paul53 schreibt 😉 Dann für GANZ doofe 🫣😊 @Homoran sagte: Vor dem trigger muss "Setze luefter auf Wert von 'SET'" Gesetzt werden @paul53 sagte: @tiobb [image: 1785691373377-blockly_temp.jpg] Ich danke Euch! 👍👍👍
  • Hilfe für Skripterstellung mit Node-RED

    962 13k
    962 Themen
    13k Beiträge
    Marc BergM
    @Thomas-Braun sagte: In der Konfigurationsdatei von Node Red, also in der settings.js, kann durch hinzufügen der Zeitzone das Problem behoben werden. Wenn man den Adapter nutzt, werden Änderungen in der settings.js immer wieder überschrieben. Das bringt nichts. @taddy81 Was konkret ist denn das Problem? Lösen die inject Nodes falsch aus? Oder geht es nur um diese Meldung, bei der niemand weiß, woher sie kommt? @Taddy81 sagte: Auszug: 7/26/2026, 11:15:23 AMnode: debug 3msg.payload : string[24]
  • [Frage] ack true via simpleAPI möglich?

    communication
    1
    0 Stimmen
    1 Beiträge
    249 Aufrufe
    Niemand hat geantwortet
  • Addieren von 3 Objekten

    blockly
    24
    1
    0 Stimmen
    24 Beiträge
    7k Aufrufe
    HomoranH
    @bunni Nicht nur bei dir [image: 1552598002491-screenshot_20190314-221227_iobrokervis.jpg]
  • Piko 5.5 Wechselrichter (alte Firmware) auslesen

    javascript
    1
    0 Stimmen
    1 Beiträge
    256 Aufrufe
    Niemand hat geantwortet
  • Array erstellen aus Datenpunkten in javascript

    javascript
    12
    0 Stimmen
    12 Beiträge
    2k Aufrufe
    R
    @paul53 Ja, ich muss noch viel lernen. Aber das ist ein schönes praktisches Beispiel womit ich zum Verständnis was rumprobieren kann . Danke dir erst mal so weit. Wenn noch Fragen sind, werde ich noch mal nachhaken.
  • Elektroauto nur mit PV Überschuss laden

    javascript
    6
    0 Stimmen
    6 Beiträge
    3k Aufrufe
    smileS
    Das ist ein sehr spannendes Thema, wenn ich mich hier einmal einklinken darf. Wir planen aktuell 2 Ladesäulen an unserer Firma, und eine PV Anlage. Es ist auch genau unser Anielgen, die E Autos nach Möglichkeit mit dem PV Überschuss zu laden, weil sich dadurch der Ertrag der PV Anlage natürlich deutlich verbessert. So wie ich sehen kann gibt es bereits einen iobroker Adapter für Keba Ladesäulen sowie für Fronius PV Wechselrichter, weshalb ich derzeit auf dem Stand bin eine Keba Ladesäule zu erwerben. Oder habt ihr andere Infos, dass z.B. auch die Integration einer Alfen Eve Ladesäule über OCPP 1.5 / 1.6 angebunden werden kann? Laut Hersteller soll darüber hinaus ab Mai die Kommunkation mit anderen Energiemanagementsystemen Via Modbus TCP/IP (per Ethernet) möglich sein. Ich würde nämlich eigentlich lieber die Alfen Eve Ladesäulen nehmen, aber wenn die Konnektivität zu iobroker mit den Keba Ladesäulen einfacher ist, dann wäre das ein starkes Argument für Keba.
  • [gelöst] Problem mit Abfallkalenderskript

    Verschoben
    30
    6
    0 Stimmen
    30 Beiträge
    3k Aufrufe
    opossumO
    Hallo, danke für den Hinweis, musste ich mir erst selber zusammenreimen. Aber jetzt ist das ok. Gruß Egbert
  • Bewegungsmelder schaltet Licht

    javascript blockly
    17
    0 Stimmen
    17 Beiträge
    2k Aufrufe
    S
    Probier mal so: <xml xmlns="http://www.w3.org/1999/xhtml"> <variables> <variable type="undefined" id="timeoutWz">timeoutWz</variable> </variables> <block type="comment" id="X,*.}*tPzsA.Vda~~gpz" x="-462" y="63"> <field name="COMMENT">Trigger auf motion</field> <next> <block type="on_ext" id="0ZRal3s;tUmp9/Bj~$5Q"> <mutation items="1"></mutation> <field name="CONDITION">true</field> <field name="ACK_CONDITION"></field> <value name="OID0"> <shadow type="field_oid" id="OqgM$PjlbUi9gN.11if9"> <field name="oid">hm-rpc.0.NEQ1702891.1.MOTION</field> </shadow> </value> <statement name="STATEMENT"> <block type="controls_if" id="eF?+Gupjz8*p#z.A|t7H"> <mutation else="1"></mutation> <value name="IF0"> <block type="logic_operation" id="!HEVg+~}vmbHq!a}Ku{[" inline="false"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="DX(uvjzED/QeqMBthM)X"> <field name="OP">LTE</field> <value name="A"> <block type="get_value" id="zoH}akd2i-#s%?KY_s,`"> <field name="ATTR">val</field> <field name="OID">hm-rpc.0.NEQ1702891.1.BRIGHTNESS</field> </block> </value> <value name="B"> <block type="math_number" id="-6HGm{FG+hzPA5NY~J2Q"> <field name="NUM">50</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id="6YG()hB_PpfhE2fU/f^;"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="JuT/Fk{t#}jq0YmjJo?("> <field name="ATTR">val</field> <field name="OID">yeelight-2.0.Beleuchtung_Waschkueche.control.power</field> </block> </value> <value name="B"> <block type="logic_boolean" id="|=N|r{4_x`Z3t/VlRy-s"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="debug" id="o)`Zmjz]1,}ehoOW0DdK"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="DWT|Q;*)BlPssB4XSTBo"> <field name="TEXT">Bewegung Waschkueche erkannt.</field> </shadow> </value> <next> <block type="debug" id=".wPwO*n3h_LqPIW#0KhB"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="W%3!N+Ed4,yCq+b$]|,U"> <field name="TEXT">Lampe Waschkueche ist eingeschalten!</field> </shadow> </value> <next> <block type="timeouts_cleartimeout" id="U!.Gh4s?s*5kxB8F@~p1"> <field name="NAME">timeoutWz</field> <next> <block type="control" id="ha(8Z9;8JUd`E;IB2pr:"> <mutation delay_input="false"></mutation> <field name="OID">yeelight-2.0.Beleuchtung_Waschkueche.control.power</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="?h!WA0PXtly#.B79[`gx"> <field name="BOOL">TRUE</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </statement> <statement name="ELSE"> <block type="timeouts_cleartimeout" id="+Wd9ysblJ?W%Mb}sh[3s"> <field name="NAME">timeoutWz</field> <next> <block type="timeouts_settimeout" id="^l|Y=q!x+X4cjdG*hS`)"> <field name="NAME">timeoutWz</field> <field name="DELAY">1</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="control" id="W`)[QB~ug_28U!tnReMZ"> <mutation delay_input="false"></mutation> <field name="OID">yeelight-2.0.Beleuchtung_Waschkueche.control.power</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="?A`mJ^prP5L~-c35c+3L"> <field name="BOOL">FALSE</field> </block> </value> <next> <block type="debug" id="uuC1M0ECXOBrA*(nJfQi"> <field name="Severity">log</field> <value name="TEXT"> <shadow type="text" id="/S}Za#4OBs1Qt=b?bl}4"> <field name="TEXT">Lampe Waschkueche ist ausgeschalten!</field> </shadow> </value> </block> </next> </block> </statement> </block> </next> </block> </statement> </block> </statement> </block> </next> </block> </xml> In Blockly einfügen. Bei mir funktioniert es so.
  • Frage zu "regex" (ist doch ganz schön komplex)

    javascript
    25
    1
    0 Stimmen
    25 Beiträge
    1k Aufrufe
    bahnuhrB
    @Homoran sagte in Frage zu "regex" (ist doch ganz schön komplex): Wenn ich mal wieder auf die Kuppe komme Gerne, jederzeit.
  • 0 Stimmen
    15 Beiträge
    1k Aufrufe
    AsgothianA
    @Daniel1103 Also.. ein Script in Blockly zusammenbauen kann ich dir leider nicht. Ich würde das über eine Scriptverkettung in JS lösen. Das geht wahrscheinlich irgendwie auch als Blockly, nur das kann ich noch weniger gut hier schreiben. Durch die Aufspaltung in kleinere Funktionseinheiten wird es besser skalierbare und einfacher zu handeln. Mein Aufbau sähe so aus: var timeout = null; var script_active = false; var activationDelay = 100; on ({id:'datenpunkt_aktivierung_durch_vis', change:'ne'}, function() { if (obj.newState.val) { setTimeout(function() { script_active = true; },activationDelay); } else script_active=false; }); function Activate() { if (timeout == null && script_active) { timeout = setTimeout(function() { timeout = null; }, 100); // Hier deine Aktion machen } } on ({ id: 'datenpunkt_sensor_1', change: 'gt'} Activate); on ({ id: 'datenpunkt_sensor_2', change: 'gt'}, Activate); ... on ({ id: 'datenpunkt_sensor_N', change: 'gt'}, Activate); dazu noch ein paar Warnhinweise ich bin im Büro, kann die Syntax also nicht checken - es können Tippfehler drin sein die Variable ActivationDelay gibt an wieviel zeit zwischen Aktivierung im Vis und Scharf gehen vergeht. Die Datenpunkte musst du natürlich korrekt setzen, ich kenne deine Objektstruktur nicht. Du brauchst für jeden Sensor den du überwachen willst ein "on" statement Durch das "change:'gt'" triggert der "on" Befehl nur auf Änderungen von false auf true, nicht umgekehrt Durch das "change:'ne" triggert der erste "on" Befehl nur auf Änderungen, nicht auf Aktualisierungen des Status Was du bei // Hier deine Aktion machen rein kopieren musst kannst Du dir aus dem Quelltext des Blocklys das du oben hast heraus kopieren. Ich kenne die Syntax für Pushover leider nicht. Ich hoffe das Gibt Dir ein paar Hinweise.
  • Problem mit eigenem Datenpunkt , schaltet nicht

    blockly
    10
    4
    0 Stimmen
    10 Beiträge
    721 Aufrufe
    A
    @Homoran Danke für Deine Nachricht, Ich habe den Fehler gerade gefunden. Es war ein falscher Datenpunkt eingetragen. Da der Hand/Auto-Schalter jetzt wie gewünscht schaltet möchte ich das Blockly dahin gehend erweitern, das wenn der Schalter auf Auto steht ich die Pumpe durch anklicken des Pumpenicons nicht ausschalten kann. Bei Stellung Hand soll es aber möglich sen. Ist diese Konstellation möglich? Gruß Michael
  • E-Mail Vorlage mit Spracheingabe senden

    multimedia monitoring communication
    3
    0 Stimmen
    3 Beiträge
    406 Aufrufe
    sigi234S
    Nein, ich verstehe deine Frage nicht wirklich was du möchtest?
  • [Frage] Meldung Senden Telegram erfolgreich?

    monitoring
    8
    0 Stimmen
    8 Beiträge
    958 Aufrufe
    iomountainI
    da res bei mir immer 0 ist und ich JavaScript nicht wirklich kann hab ich weiter geforscht: wenn ich Internet habe und ein sendTo('telegram.0' mache ändert sich die telegram.0.communicate.botSendMessageId +1 wenn ich kein Internet habe bleibt Sie auf dem alten Wert. Beispiel in Blockly: [image: 1552256559223-fa55578a-2088-464b-bb63-16783944e1ba-image.png] Für mich reicht die Lösung, bin aber für Verbesserungsvorschläge offen Danke Ralph
  • Frage: Wie trägere ich einen Button state mit JS

    javascript
    4
    1
    0 Stimmen
    4 Beiträge
    328 Aufrufe
    AsgothianA
    @stimezo Danke dafuer. Ich hatte es dann doch einfach probiert und es ist nichts explodiert.. also mach ich es so wie oben beschrieben weiter. A.
  • Bild von URL abrufen und per Mail senden

    Verschoben
    10
    0 Stimmen
    10 Beiträge
    3k Aufrufe
    AlCalzoneA
    @metaxa sagte in Bild von URL abrufen und per Mail senden: Ich vermute, dass der "Install-Fixer" von @AlCalzone daran beiteiligt ist oder war. Richtig vermutet. Der User iobroker hat jetzt immer Vollzugriff aufs Installationsverzeichnis. Damit ist sudo nicht mehr nötig und sollte nicht verwendet werden.
  • [Frage] [Blockly/JavaScript] v.4.1.12 Alles etwas langsamer?

    javascript blockly
    6
    0 Stimmen
    6 Beiträge
    860 Aufrufe
    paul53P
    @rantanplan sagte in [Frage] [Blockly/JavaScript] v.4.1.12 Alles etwas langsamer?: Aber bei "aktualisiere" funktionierte es. Das war dann Zufall !
  • Blockly - Pushover & Attachment

    Verschoben
    45
    0 Stimmen
    45 Beiträge
    9k Aufrufe
    M
    @dan11hh sagte in Blockly - Pushover & Attachment: @dtp: Also ohne Blockly funktioniert es auf jeden Fall schon mal mit der Version 1.2.0 von pushover-notifications. ` Vielen Dank für das Script. Als nicht Script mächtiger, kann ich da schon mal etwas rumfummeln. Würde eigentlich gerne mein Klingel Skript anpassen und meine Türkamera einen Snapshot pushen lassen. Hab nur leider keine Ahnung wie ich das ohne Blockly hinbekommen soll. Der Snapshot wird über folgende URL abgerufen: http://192.168.2.119/cgi-bin/api.cgi?cm … ord=123456 Wie bekomm ich das nun in ioBroker? :oops: Hallo. Ich habe bei mir genau das selbe vor. Möchte gern bei auslösen des Bewegungssensor das ein Snapshot per Pushover versendet wird. Bist du mit deinem Vorhaben schon weiter gekommen? Meine Suche im Netz war bisher erfolglos. Gruß Markus
  • Camshot von Fully Kiosk über Telegram senden

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    898 Aufrufe
    E
    @Novak Ist es auch möglich, ein Snap von einem Video zu erstellen und dieses zu versenden? Meine Cam bietet leider kein Snap Link.
  • Sonoff TH16 neustarten

    heating blockly
    12
    1
    0 Stimmen
    12 Beiträge
    2k Aufrufe
    Ralla66R
    Kannst ja mal im Browser Mozilla oder IE eingeben : http://dein Sonoff/cm?cmnd=Status 10 oder http://dein Sonoff/cm?cmnd=Status %10
  • (gelöst) Status Kontakte über Telegramm

    Verschoben
    5
    0 Stimmen
    5 Beiträge
    796 Aufrufe
    D
    @Svemo Habe den Script auf meine Komponenten angepasst. Passt auch soweit. Ich bekomme nur bei der Auswahl für alle Kontakte folgende Fehlermeldung im LOG. [image: 1552123939694-bildschirmfoto-2019-03-09-um-10.26.32.png] Gibt es eine Begrenzung bei der Anzahl der Anzeige und kann man die nicht abschalten. Da ich nicht so viel Ahnung habe vom Scripten, bin ich auf eure Hilfe angewiesen. pdulles
  • [VORLAGE] GoogleHome spechen lassen TTS

    Verschoben
    24
    0 Stimmen
    24 Beiträge
    7k Aufrufe
    blauholstenB
    Hallo, Da bist du hier eigentlich verkehrt. Geh Mal auf die readme seite des sayit Adapters, dort ist es denke ich beschrieben. Alternativ hier im Forum Mal suchen. Nur auf die schnelle, du musst mittels blocky o.ä. den Datenpunkte des sayit Adapters mit deinem gewünschten Text beschreiben.

201

Online

33.0k

Benutzer

83.5k

Themen

1.3m

Beiträge