Skip to content

Skripten / Logik

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

16.6k Topics 213.6k Posts

NEWS

Subcategories


  • Hilfe für Skripterstellung mit JavaScript

    2k 49k
    2k Topics
    49k Posts
    A
    @Dave69-CH sagte in E3DC Hauskraftwerk steuern: Oder was hast Du da reingemacht? Die Objekt iDs haben sich geändert. Ist aber bereits länger her, weiß schon gar nicht mehr, mit welcher Version :-) Das sollte jetzt so aussehen: [image: 1771696284744-3e7b5969-f68c-4ea4-ac9d-95dc36c01efd-grafik.png] Im Editor den Text und die Objekt-ID 0_userdata.0.Charge_Control.Allgemein.EigenverbrauchDurchschnitt eintragen, dann sollte es wieder stimmen. Prüfe auch die Objekt-ID "aktuell erzeugte Energie" dort sollte die Objekt-ID 0_userdata.0.Charge_Control.Allgemein.IstPvErtragLM0_kWh eingetragen sein.
  • Hilfe für Skripterstellung mit Blockly

    7k 79k
    7k Topics
    79k Posts
    paul53P
    @13patrick37 sagte: Habe es jetzt so gemacht: Der Trigger auf die Szenen muss auf "ist wahr" reagieren. Wert und manuellein müssen anders ausgewertet werden. [image: 1771708375656-blockly_temp.jpg] @13patrick37 sagte in Beleuchtungssteurung//Zeit + Präsenzmelder: die Szenen, auf welche ich trigger, sollten vermutlich nicht die sein, die der BWM auslöst, oder? Es sollten die Szenen sein, die manuell aktiviert werden sollen. @13patrick37 sagte in Beleuchtungssteurung//Zeit + Präsenzmelder: "Abschalten" ist einfach eine Hue Szene Poste mal die komplette ID einer Szene für die Bildung eines Selektors, der alle Szenen eines Raumes erfasst.
  • Hilfe für Skripterstellung mit Node-RED

    953 13k
    953 Topics
    13k Posts
    Marc BergM
    Es gibt in der Verson 1.3.0 einen neuen Node: iob-setObject (Stand 10.02.26 noch beta) Mit dem neuen Node kann man ioBroker-Objektdefinitionen (Metadaten) direkt schreiben und ändern. Hauptfunktionen: Instanz-Konfigurationen ändern - z.B. MQTT publish-Pattern, Intervalle, etc. Objekt-Eigenschaften aktualisieren - Namen, Rollen, Einheiten, Min/Max-Werte ändern es gibt zwei Modi: Merge-Modus : Ändert nur die angegebenen Eigenschaften, alle anderen bleiben erhalten Replace-Modus: Überschreibt das komplette Objekt Typischer Workflow: Objekt mit iob-getobject holen Mit Change-Node gewünschte Properties ändern Mit iob-setobject zurückschreiben
  • Java Script schalten sonoff nicht

    Moved
    2
    0 Votes
    2 Posts
    426 Views
    apollon77A
    Versuch mal setState(„…“, true, false); Also noch ein Parameter dran mir false.
  • [Blocky] Objekt2 abhängig von Objekt1 schalten

    Moved
    6
    1
    0 Votes
    6 Posts
    837 Views
    BBTownB
    na, geht doch …
  • [gelöst] Erstes Script

    Moved
    4
    0 Votes
    4 Posts
    700 Views
    M
    Cool, vielen Dank :D Kaum macht man es richtig, klappt es auch schon. Musste nur noch naheliegenderweise die Objekt ID auf```` avascript.0.EntfeuchterVoll
  • [Blockly] Trockner ist fertig mit Entscheidungswert

    Moved
    37
    4
    0 Votes
    37 Posts
    4k Views
    R
    ja stimmt… dacht ich häng mich hier einfach mit dran. Dann schreib ich lieber das ganze im dem waschmaschinen vorlage thread weiter, sorry :?
  • Pushover beim Besuch im Katzenklo ;-)

    Moved
    2
    0 Votes
    2 Posts
    502 Views
    P
    Hallo, da ich kein Blockly kann, kommt hier nur ein Tipp zu Vorgehensweise: Ein Timer "sperrt" das Melden der Klappenbewegung. Erst wenn Klappe auf true UND Timer undefiniert, wird eine Meldung geschickt. Nach der ersten Meldung wird aber der Timer für 5s auf definiert gesetzt (so lange kann nix gemeldet werden) und erst nach Ablauf wird er wieder auf undefiniert gesetzt. // ungefähr so: var katzentimer; on(idKatzenklappe, function (obj) { if (!katzentimer && obj.state.val) { katzentimer = true; setTimeout(function() { katzentimer = undefined; }, 5 * 1000); // hier Meldung absetzen } }); Gruß Pix
  • Javascript Verzeichnis ist weg

    Moved
    8
    0 Votes
    8 Posts
    994 Views
    apollon77A
    Am einfachsten sind die eigenen Datenpunkte unter javascript.0 weilst sie da per Skript anlegen kannst. Wenn du die außerhalb haben willst dann musst du alle States manuell anlegen.
  • [Frage] Anrufe in Abwesenheit per Telegram Nachricht

    Moved
    10
    0 Votes
    10 Posts
    2k Views
    N
    Fritzbox
  • Javascript-Editor: Scripte ins Nirwana verschoben

    Moved
    8
    0 Votes
    8 Posts
    1k Views
    P
    Tja, hat alles nicht genützt: Ich habe die Skripte manuell aus dem Objects.json wieder übertragen. Ich konnte diese Datei allerdings nur mit dem JSON-Editor lesen, Notepad++ und VI waren überfordert mit der einen, aber recht langen Zeile… Wäre es nicht sinnvoller, die Daten etwas stärker zu partitionieren (Skripte, Flows, etc.) ? Oder kann Objects.json auch mehrzeilig geschrieben werden ?
  • 0 Votes
    3 Posts
    417 Views
    M
    Hallo Paul53, danke Dir für die Antwort. Schaut gut aus. Ich teste mal in Ruhe weiter! Viele Grüße Martin
  • E-Mail Versand Fehler, Host/IP doesn't match

    Moved
    20
    3
    0 Votes
    20 Posts
    6k Views
    A
    Hat jetzt schon mal jemand den versand der Mails mit Outlook Hinbekommen? Bei kommen nur Fehlermeldungen …. :cry:
  • Blockly Schleife am GPIO Pin vom RPI.

    Moved
    19
    0 Votes
    19 Posts
    3k Views
    K
    @rantaplan DANKE, läuft Top ohne wenn und aber….
  • [GELÖST]SQL Abfrage wo nur die ersten 3 Buchstaben übereinstimmen müssen

    Moved
    20
    0 Votes
    20 Posts
    4k Views
    J
    Ok, und nochmals sorry für das Missverständnis!
  • [GELÖST] Innr LED-Lampe mit Lightify

    Moved
    3
    0 Votes
    3 Posts
    591 Views
    S
    Danke, funktioniert. Nach einem Neustart habe ich jetzt auch alle Objekte wie bei der Osramlampe. lg Hans
  • TCP/IP Steuerung von Samsung QM75F Smart Signage Display

    Moved
    6
    0 Votes
    6 Posts
    3k Views
    B
    Soooo. Habs nun hinbekommen mit dem net.socket das Script sieht nun volgendermaßen aus: var client = new net.Socket(); client.connect(1515, '192.168.2.100', function() { console.log("I'm connected!"); var hex_data = [0xFF,0xF1,0xAF]; var data = Buffer.from(hex_data); client.write(data); console.log("sent: "+ data) }); Wobei man die Verbindung auch einmalig als Globales Script ausführen kann und dann nur noch die Daten schicken kann. Thread ist also gelöst. :D
  • Blockly und tr-064 Adapter

    Moved
    5
    2
    0 Votes
    5 Posts
    1k Views
    4
    Hmm..Das ist doch blöd.. Dann werde ich es doch anders machen müssen.. Okay, trotzdem danke für die Tipps!
  • JSON Wert auslesen. Hilfe

    Moved
    9
    1
    0 Votes
    9 Posts
    3k Views
    paul53P
    var pos = body.indexOf('{', 6); // ermittelt Position von { ab Position 6, damit die erste { nicht zum Ergebnis führt var str2 = body.substr(pos); // extrahiert Zeichenkette str2 aus Zeichenkette body ab Postion pos Ich schaue meist in https://wiki.selfhtml.org/wiki/JavaScript/Objekte/String nach.
  • LED Ansteuerung über iobroker?

    Moved
    11
    0 Votes
    11 Posts
    1k Views
    W
    @knopers1: ich habe mir dein Screan angeschaut. Laut Bild hast Du die RGB Werte bereits im IOBroker mit 255 drin. Demnach sollte bereits die Diode weiß leuchten. Hast Du sie richtig rum angeschlossen? Es gibt welche mit gemeisamer Kathode und Anode… meist das längere Beinchen etweder plus ode minus. Für Rot müßtest Du nur die den D1 Pin mit 255 ansteuern, D2 & D3 mit 0. Dann hast Du dein Rot als Beispiel. Evtl. könntest Du messen D1,D2,D3 gegen GND ob da ca. 3.3V anliegen. Vorher aber die Diode abklemmen! ` Ja, sie leuchtet schon weiß mit der Vorgabe 255, 255, 255 vom Script. Mein Problem ist, dass ich sie über den iobroker ansteuern möchte, aber nicht weiß, wie und ob das überhaupt funktioniert. Wie übergebe ich beispielsweise rgb 255,0,0 aus dem iobroker an die Diode? Über den Json String gehts nicht, das hab ich schon versucht.
  • Mit Blockly überschüssige PV Energie effizient nutzen

    Moved
    6
    2
    0 Votes
    6 Posts
    2k Views
    K
    Hier https://iobroker.blogspot.de/2017/07/so … -tank.html gibt es übrigens eine Beschreibung eines ähnlichen Anwendungsfalls mit zugehörigem Skript. Vielleicht bringt das noch ein paar weitere Anregungen.
  • [Frage] Sende Email bei Wert Unterschreitung

    Moved
    17
    0 Votes
    17 Posts
    2k Views
    T
    Habe das noch mal geändert. In der ersten Version habe ich bei jeder zweiten Temp Änderung eine Mail bekommen, weil das Flag dann wieder durch die Else Bedingung auf false gesetzt wurde. Jetzt bekomme ich eine Mail, wenn die Temperatur <=14 °C ist und wenn sie wieder über 14 °C gestiegen ist. var idTemp = "hm-rpc.0.MEQ1571251.1.TEMPERATURE"; // var idTemp = "s7.0.DBs.DB1.Dimmer_Ailin"; Zum Testen var idFlag = "javascript.0.Flag_Mail_TempWerkstatt"; var msg ="Temperatur Werkstatt <14°C" on(idTemp, function(dp) { if ((getState(idFlag).val === false) && (getState(idTemp).val) <= 14) { setState(idFlag, true); msg = " Temperatur Werkstatt <= 14 °C" sendTo('email.0', msg); } if ((getState(idFlag).val === true) && (getState(idTemp).val) > 14) { setState(idFlag, false); msg = " Temperatur Werkstatt = 14 °C" sendTo('email.0', msg); } }); // Script start setState(idFlag, false);
  • Blockly- Licht EIN/AUS bei Zeit und Dämmerung schalten.

    Moved
    15
    1
    0 Votes
    15 Posts
    10k Views
    B
    Hallo, warscheinlich wurde das schon zu hauf diskutiert aber ich finde die Lösung nicht! Ich schalte eine Funksteckdose mit diesem Blocky [image: 4663_2018_01_30_22_01_36_pi_192.168.1.45_22_bitvise_sftp.png] wie ist es möglich diese Steckdose um 19uhr einzuschalten und um 22uhr wieder auszuschalten? Funktioniert das auch mit der Astrofunktion? vielen dank

599

Online

32.7k

Users

82.4k

Topics

1.3m

Posts