Skip to content

Skripten / Logik

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

16.4k Themen 211.7k Beiträge

NEWS

Unterkategorien


  • Hilfe für Skripterstellung mit JavaScript

    2k 48k
    2k Themen
    48k Beiträge
    Ro75R
    Ich habe das Skript aktualisiert. Neuer Stand: 1.0.17. Aktueller Code, Beispiel, Archiv, Code aus meiner Umgebung und Parameterbeschreibung >> ALLES in Post 1. Ro75.
  • Hilfe für Skripterstellung mit Blockly

    6k 78k
    6k Themen
    78k Beiträge
    H
    Für die vis1 gibt es das Universal Widget von vis-inventwo wo mal den Blinkintervall einstellen kann. Unter vis2 funktioniert dieses auch. Mittlerweile gibt es vis2-inventwo, habe aber damit noch nicht gearbeitet
  • Hilfe für Skripterstellung mit Node-RED

    952 13k
    952 Themen
    13k Beiträge
    HomoranH
    @fiddle sagte in [Gelöst]: Adapter per {Node Red | JS} (de)aktivieren: Ok, nicht als "Wert" schreiben, sondern als "Befehl". Dann scheint ihn das zu beeindrucken. du zeigst ja nichts, aber es geht mit true/false [image: 1763416200051-screenshot_20251117-224854_firefox.jpg] gesteuert über eigenen DP vom typ Bool
  • Flow für IP-Cam

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    3k Aufrufe
    F
    Hi, das mit dem Flow hab ich mal probiert, hat aber leider net funktioniert…..
  • Node red für Anfänger/ NOOBs (wie mich) / Sammlung der Funktionen für nodes

    Verschoben
    6
    1
    0 Stimmen
    6 Beiträge
    13k Aufrufe
    M
    so… jetzt stellen wir uns mal vor wir bekommen den Flur mit Zellen =(Array) und benötigen eine oder die andere zelle nicht... Dann wird Flur (array) auch kleiner.... aus unserem oberen Beispiel: [ [ "mqtt/0/DOino<>MQTT/0/58/1/0/0" ], "42.27", [ "mqtt/0/DOino<>MQTT/0/20/1/0/0" ], "-127.00" ] Zelle 0 :"mqtt/0/DOino<>MQTT/0/58/1/0/0" Zelle 1 :"42.27" Zelle 2 : "mqtt/0/DOino<>MQTT/0/20/1/0/0" Zelle 3 :"-127.00" und wollen z.B. alle Zellen mit dem Inhalt```` "mqtt/0/DOino<>MQTT/0/58/1/0/0" dafür wird ein Funktionsnode Benötigt mit folgenden code: var outputMsgs = msg.payload; var i; while ((i = outputMsgs.indexOf("mqtt/0/DOino<>MQTT/0/58/1/0/0")) != -1) { outputMsgs.splice(i, 1); } var msgNEWarray={payload: outputMsgs} return [msgNEWarray]; mit indexOf wird die Zelle gesucht, und wenn wir die Adresse der Zelle kennen, diese Zelle entfernt! hier noch ein beispiel mit entfernen von zellen mit "," oder "}" [{"id":"5bb24327.748f4c","type":"function","name":"clean array","func":"var outputMsgs = msg.payload;\n var i;\n while ((i = outputMsgs.indexOf(":")) != -1) \n {\n outputMsgs.splice(i, 1);\n }\n while ((i = outputMsgs.indexOf(",")) != -1) \n {\n outputMsgs.splice(i, 1);\n }\n while ((i = outputMsgs.indexOf("{")) != -1) \n {\n outputMsgs.splice(i, 1);\n }\n while ((i = outputMsgs.indexOf("}")) != -1) \n {\n outputMsgs.splice(i, 1);\n }\nvar msgNEWarray={payload: outputMsgs}\nreturn [msgNEWarray];","outputs":"1","noerr":0,"x":252,"y":494,"z":"bc3e7d10.9bc388","wires":[[]]}] [933_2016-01-10_16_39_57-.jpg](/assets/uploads/files/933_2016-01-10_16_39_57-.jpg)
  • [gelöst]Homepilot JSON einlesen

    Verschoben
    8
    0 Stimmen
    8 Beiträge
    3k Aufrufe
    A
    Hallo Pix, Danke, der Heftrücken hat noch gefehlt in der Beschreibung nun bekomme ich eine Position ermittelt allerdings stimmt die nicht. Er zeigt mir 100% an obwohl 80 oder 0 sind und das auch noch 5 min. später , hast du da eine Idee an was das liegt
  • [gelöst ]UDP Message senden

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    3k Aufrufe
    M
    Hallo soef, Danke, genau das wars. Funktioniert jetzt wie es soll. Gruss, mayer
  • [erledigt]createState

    Verschoben
    6
    0 Stimmen
    6 Beiträge
    1k Aufrufe
    blauholstenB
    So heute nochmal getestet, und es geht wieder! :roll:
  • Text Nachrichten per Twiter versenden

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    2k Aufrufe
    N
    Die Logik darüber, welche Informationen zum Senden führen sollen, muss ja irgendwo her kommen… Diese Filterung kannst du auch in Node-Red machen. Entweder in einem Function-Node (per if und einfach kein msg per return senden, wenn nicht gesendet werden soll) oder die Prüfung in einen switch-Node einbauen. Der Text im function Node müsse in etwa so aussehen: if (msg.payload===true || msg.payload=="true") { msg.payload="xxx"; return msg; } else return null; Die Abfrage sowohl für Typ boolean als auch für string ist deshalb drin, weil es manchmal Probleme mit der automatischen Typkonvertierung gab.
  • [gelöst] Home24 Mediaplayer request senden

    Verschoben
    2
    0 Stimmen
    2 Beiträge
    1k Aufrufe
    etvE
    Hallo Andy, @AndyUM61: Hat sich erledigt: __var Url = ""; Url = 'http://[meine IP]:50000/track=silence.ogg'; request(Url);__ ` bei mir tut sich da gar nix, außer diese Meldung javascript-0 2016-01-06 20:38:10 error at script.js.Test_Home24_Player_ansprechen:3:1 javascript-0 2016-01-06 20:38:10 error ReferenceError: request is not defined javascript-0 2016-01-06 20:38:10 error ^ javascript-0 2016-01-06 20:38:10 error request(Url); javascript-0 2016-01-06 20:38:10 error script.js.Test_Home24_Player_ansprechen: script.js.Test_Home24_Player_ansprechen:3 und wenn ich diesen Teil davor stelle var http = require('http'); und danach dann den Request mit http.request(Url); schreibe, dann hab ich zwar keinen Fehler mehr, aber auch keinen Ton aus dem Handy ;) Funktionieren tut es grundsätzlich, denn via CCU oder Browser kann ich den Befehl absetzen… Grüße etv 2858_iobroker.2018-12-04_alexa_2_0.log
  • [gelöst] Daten eine Temperatursensors in eione .txt Datei schreiben

    Verschoben
    13
    0 Stimmen
    13 Beiträge
    7k Aufrufe
    L
    ja, absolut korrekt. hatte ich uebersehen, weil nicht getestet aber es entspricht auch der Erklaerung. Da bin ich ja teilweise gerettet :oops:
  • [Gelöst] Addieren des Stromverbrauches von L1 L2 L3

    Verschoben
    12
    0 Stimmen
    12 Beiträge
    6k Aufrufe
    H
    Ich habe eben gerade den ersten Eintrag um meine Lösung erweitert. Vielleicht kann es ja jemand brauchen.
  • Funk Schalter PRESS_LONG Wert erhöhen

    Verschoben
    1
    0 Stimmen
    1 Beiträge
    2k Aufrufe
    Niemand hat geantwortet
  • [gelöst] Zeilenumbruch in Text

    Verschoben
    6
    0 Stimmen
    6 Beiträge
    4k Aufrufe
    H
    Danke Pix….. Gesendet von meinem Lenovo TAB 2 A10-70L mit Tapatalk
  • [gelöst] Aus Skript ein weiteres Skript starten

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    2k Aufrufe
    H
    Hey Jey Cee… Danke für den Tipp. Also direkter Start ist nicht möglich. Dafür einfach einen virtuellen Schaler setzen, welcher dann dass andere Skript startet. Gesendet von meinem Lenovo TAB 2 A10-70L mit Tapatalk
  • POPUP bei ALARM

    Verschoben
    2
    0 Stimmen
    2 Beiträge
    2k Aufrufe
    P
    Hallo Manuel, ist das eine Homematic-Variable? Dann so: /* Pushmeldung bei Änderung der Variable ALARM */ var idAlarm = 'hm-rega.0.12345'; // REGA Alarmvariable vom Homematic eintragen on({ id: idAlarm, val: true }, function(obj) { var status = 'Tür offen', betreff = 'ioBroker Alarm', prio: '1', // ansage = betreff + '!' + ' ' + status + '.'; sendTo('pushover', { message: status, title: betreff, priority: prio }); // optional auch Ansage // setState("sayit.0.tts.text"/*Text to speech*/, ansage); }); Optional mit Sayit - Ansage. Dann bitte "//" in Zeile 10 und 19 löschen. Gruß Pix EDIT: VIS Popup kannst du über die Sichtbarkeit machen. Ein Textfenster (zB HTML Basic) mit großem Z-Index erstellen und Alarmtext reinschreiben. Dann in den Einstellungen die Sichtbarkeit auf true stellen bei ID hm-rega.0.12345. Dann wird das Fenster nur angezeigt, wenn die hm-rega.0.12345 auf true geht.
  • Happy New Year

    Verschoben
    2
    0 Stimmen
    2 Beiträge
    628 Aufrufe
    V
    Danke, kann ich nur beipflichten! Gesendet von meinem iPhone mit Tapatalk
  • Neuling?

    Verschoben
    22
    0 Stimmen
    22 Beiträge
    4k Aufrufe
    paul53P
    So sieht die Javascript-Lösung für die Aufgabenstellng aus: var request = require('request'); var url = 'http://api.openweathermap.org/data/2.5/weather?q=Strehla,DE&units=metric&APPID=e5de2c3e2339a69b6d181c0cb9d2e5d8'; var wetter = {}; // alle 15 Minuten schedule("*/15 * * * *", function () { request(url, function(error, response, body) { if (!error && response.statusCode == 200) { wetter = JSON.parse(body); setState("hm-rega.0.4764",wetter.main.temp.toFixed(2) + " °C"); setState("hm-rega.0.4765",wetter.main.pressure.toFixed(1) + " hPa"); setState("hm-rega.0.4766",wetter.main.humidity;.toFixed(0) + " %"); setState("hm-rega.0.4767",wetter.wind.speed.toFixed(1) + " m/s"); setState("hm-rega.0.4768",wetter.wind.deg.toFixed(0) + " °"); } }); });
  • Abfrage von Datenpunkten

    Verschoben
    10
    0 Stimmen
    10 Beiträge
    9k Aufrufe
    paul53P
    @paul53: Die verkürzte Schreibweise on(eins, status()); funktioniert leider nicht. Richtig: on(eins, function() {status();}); on(zwei, function() {status();}); on(drei, function() {status();}); on(vier, function() {status();}); ```` ` oder so: on(eins, status); on(zwei, status); on(drei, status); on(vier, status);
  • Xml2js Probleme bis zum javascript restart…

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    815 Aufrufe
    etvE
    sch…. - danke dir, das war's! Man sollte nicht am Abend und ohne Lesebrille programmieren :) Grüße etv
  • Script optimieren - Frage an Experten mit einem Beispiel

    Verschoben
    9
    0 Stimmen
    9 Beiträge
    2k Aufrufe
    etvE
    …danke nochmal an paul53 und pix für ihre genialen Beispiele! Hab beide Versionen ausprobiert - sie funktionieren! Im Einsatz hab ich nun die Version von paul53, weil's noch einen Tick kürzer ist.... Beide Scripte haben sehr interessanten code drinnen, der mir bei meinen weiteren Projekte sicher weiter helfen wird! Grüße etv
  • Taster in Java Script träge?

    Verschoben
    4
    4
    0 Stimmen
    4 Beiträge
    1k Aufrufe
    H
    Hallo zusammen. Ich hatte bis vor geraumer Zeit exakt das selbe Phänomen. Ich schalte meine hue leuchten über ein tcl Script, welches auf der ccu2 liegt. Verzögerung nach dem drücken des Schalters jeweils 4-6 Sekunden. Eine Optimierung der Skripte, Umstellung von einzelleuchten auf Gruppen hat alles nichts gebracht. Ich konnte das Problem letztlich lösen, indem ich die Parameter des Schalters auf der Ccu selbst geändert habe. Vielleicht hilfts ja. 253_image.png
  • Rollläden gemeinsam fahren

    Verschoben
    1
    0 Stimmen
    1 Beiträge
    883 Aufrufe
    Niemand hat geantwortet

678

Online

32.4k

Benutzer

81.4k

Themen

1.3m

Beiträge