Weiter zum Inhalt

JavaScript

2.5k Themen 49.2k Beiträge

Hilfe für Skripterstellung mit JavaScript

NEWS

  • Anfänger: const vs var; übergreifend möglich [solved]

    Verschoben javascript
    6
    1
    0 Stimmen
    6 Beiträge
    601 Aufrufe
    T
    @paul53 sagte in Anfänger: const vs var; übergreifend möglich [solved]: @ticaki sagte: dass die Deklaration nicht beim ersten Aufruf erfolgen muß: Das gilt nur für var, nicht aber für const/let. Und wieder was gelernt.
  • Datenpunkte aus enum löschen und hinzufügen

    3
    0 Stimmen
    3 Beiträge
    256 Aufrufe
    Alexander PeterA
    @paul53 danke! funktioniert perfekt
  • python script starten und wieder stoppen

    15
    0 Stimmen
    15 Beiträge
    2k Aufrufe
    I
    So, nach etwas längerem Rumprobieren habe ich jetzt eine Lösung gefunden, die bisher zu funktionieren scheint. So ganz gefällt mir das nicht, dass ich auf die child_proc.pid immer 1 draufaddieren muss, aber besser bekomme ich es jetzt erstmal nicht hin: // Python-Skript auf Systemebene ausführen const child_proc = exec("python3 Skriptpfad.py", function(err, stdout, stderr) { if(err) log('Exec-Fehler: '+ stderr, 'error'); }); var child_pid = child_proc.pid + 1; // die PID des Python Skripts ist eine größer als die Shell console.log(`Die PID ist ${child_pid}`); // PID in Konsole ausgeben // Wenn das js-Skript beendet wird, soll das Python-Skript ebenfalls beendet werden (entspricht Strg+C) onStop(() => { exec(`kill -2 ${child_pid}`); // Child Prozess beenden mit Signal -2 (entspricht SIGINT) console.log("Skript beendet!"); }); Vielen Dank allen Helfern!
  • last change timestamp javascript (für node-red)

    8
    0 Stimmen
    8 Beiträge
    1k Aufrufe
    F
    @marc-berg Hi Marc Thank you for quick response. it works this is my code thank you for helping: (two different formats for testing) // --- sensor.neulcT = (new Date(msg.payload[i].lc)).toLocaleTimeString(); sensor.neulc = (new Date(msg.payload[i].lc)).toLocaleString();
  • HomematicIP Gerätenamen auslesen [gelöst]

    6
    1
    0 Stimmen
    6 Beiträge
    406 Aufrufe
    S
    @paul53 ja!!! jetzt hab ichs! super, vielen lieben Dank!
  • Jeden ersten Samstag des Monats

    javascript
    15
    0 Stimmen
    15 Beiträge
    1k Aufrufe
    amg_666A
    @homoran ich habe ja nicht gesagt, dass der Ausdruck Sinn macht (macht er ja auch nicht wenn ich einmal sage "Tage 1-7" und dann noch sage "jeden Donnerstag"
  • Fehlermeldung 490 in alle Scripten

    7
    0 Stimmen
    7 Beiträge
    784 Aufrufe
    HomoranH
    @sokomoto Ach so! Das Verzeichnis hatte ich natürlich nicht auf dem Schirm.
  • Scheduled Loop with setIntervall (gelöst)

    3
    0 Stimmen
    3 Beiträge
    134 Aufrufe
    U
    @sborg boah.. vielen dank für die schnelle Hilfe. wieder etwas gelernt. Vielen vielen Dank!
  • Ochsner Web2Com Adapter

    Verschoben
    3
    1 Stimmen
    3 Beiträge
    799 Aufrufe
    M
    @jarek Hi, Ja läuft schon bei mir. Habs irgendwie nicht hinbekommen mich am Ochsner Terminal anzumelden mit selbst geschriebenen Script. Jetzt läuft halt auf dem ioBroker Rechner zusätzlich a nginx Server wo besagtes Script aufgerufen wird. Den eigentlich aufruf mache ich dann per ioBroker JS Script zum abrufen aller Daten. Ein 2. kleines Blockly hab ich auch probiert, zum Aussentemperatur lesen und auf den KNX Bus schreiben. Läuft eigentlich sehr stabil... Maxx
  • JS XML Enigma Timers import

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    315 Aufrufe
    R
    @paul53 hast du eine Kaffee Adresse? Den hast du dir verdient Das geht 😊 Danke für die Hilfe
  • setTimeout Verständnisproblem

    7
    0 Stimmen
    7 Beiträge
    389 Aufrufe
    SokomotoS
    @jmeister79 sagte in setTimeout Verständnisproblem: Ich habe es ejtzt so umgebaut, Ich bin als Anfänger mit dem SetTimeout() und Cron auch schon schwer gegen die Wand gelaufen. Deshalb habe ich mir für mein Waschhaus eine Routine gebaut ohne diese zwei Timer. Ist allerdings nicht die schönste Technik. :-) // Pause Timer in Sekunden function Pause(ms=1) { ms=ms*1000; // Millisekunden return new Promise(resolve => setTimeout(resolve, ms)); } async function Waschhaus(){ While (true){ // Endlosschleife code..... await Pause(600); // hier wird dann der Code angehalten für 10 Minuten code.... await Pause(10); // stop 10 Sekunden usw... } } // Start Waschhaus(); tschuess
  • Error by canceling scheduled job

    1
    0 Stimmen
    1 Beiträge
    155 Aufrufe
    Niemand hat geantwortet
  • Ultraschallsensor sk04/ MQTT / Übertragung

    Verschoben
    7
    1
    0 Stimmen
    7 Beiträge
    451 Aufrufe
    paul53P
    @matti1993 sagte: nehme ich da den Datenpunkt „Sensor“ ? Für den Trigger den Datenpunkt "tasmota/SENSOR". Für das Ergebnis einen selbst erstellten Datenpunkt vom Typ "number" unter "0_userdata.0".
  • Zugriffsrechte auf erstellten DP Ordner

    7
    1
    0 Stimmen
    7 Beiträge
    667 Aufrufe
    SokomotoS
    @paul53 sagte in Zugriffsrechte auf erstellten DP Ordner: @sokomoto sagte: Gibt es jetzt eine Möglichkeit mit createState den Ordner richtig anzulegen, oder nicht. Nein. Um ein Objekt, das kein Datenpunkt ist, zu erstellen, benötigt man setObject(). Jetzt habe ich es begriffen, danke :-) tschuess
  • Bereich "global" fehlt?

    javascript
    17
    1
    0 Stimmen
    17 Beiträge
    1k Aufrufe
    HomoranH
    @kbrausew sagte in Bereich "global" fehlt?: Zu Upload: Den Hinweis findet man ab und an beim HeatingController bei verschiedentlichen Problemen den findet man auch in der Doku und wäre mein nächster Versuch gewesen. Bei einem "drüberinstallieren" wäre aber ein upload mit drin gewesen
  • Vorlage/Code snippet Alexa Lautstärke limitieren

    javascript
    1
    2
    1 Stimmen
    1 Beiträge
    220 Aufrufe
    Niemand hat geantwortet
  • [Gelöst] Einzelwert aus Array-Objekt?

    3
    0 Stimmen
    3 Beiträge
    244 Aufrufe
    frank2604F
    @mickym Ja, funktioniert. Vielen Dank! refresh(); function refresh() { let targetDP = '0_userdata.0.Strom.Heizung.Heizung_Energie_gestern'; let value = 0; sendTo('influxdb.0', 'query', 'from(bucket: "iobroker") \ |> range(start: -24h) \ |> filter(fn: (r) => r["_measurement"] == "Strom.Heizung.Energie_in_der_letzten_Stunde") \ |> drop(columns: ["_field", "ack", "from", "q"]) \ |> aggregateWindow(every: 1w, fn: sum, createEmpty: false) \ |> limit(n:1) \ ', function (query) { if (query.error) { console.error(query.error); } else { // Ergebnis in Datenpunkt console.log('Row: ' + JSON.stringify(query)); value = query.result[0][0]._value console.log("value: " + value); setState(targetDP, value, true); } }) };
  • [Vorlage] Skript: Erstellen von User-Datenpunkten

    86
    8 Stimmen
    86 Beiträge
    20k Aufrufe
    dslraserD
    @passuff sagte in [Vorlage] Skript: Erstellen von User-Datenpunkten: "def": "0" "def": "0" Die 0 ist Text...(lass mal die Anführungsstriche weg) "def": 0
  • Javascript variablen verschieben, Pfad ändern

    2
    1
    0 Stimmen
    2 Beiträge
    284 Aufrufe
    arteckA
    @pi_noob15 na so einfach ist es nicht.. ich habe auch noch unzählige unter den einzelnen javascript instanzen liegen... meine Empfehlung.. lass es so .
  • (gelöst) mehrere Datenpunkte mit einem Befehl schalten

    javascript
    7
    0 Stimmen
    7 Beiträge
    434 Aufrufe
    C
    @percy Danke!!! Genau danach habe ich gesucht. Herzlichen Dank

456

Online

32.8k

Benutzer

82.7k

Themen

1.3m

Beiträge