Weiter zum Inhalt

JavaScript

2.5k Themen 49.7k 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
    730 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
    307 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
    492 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
    890 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
    165 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
    855 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
    448 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
    565 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
    183 Aufrufe
    Niemand hat geantwortet
  • Ultraschallsensor sk04/ MQTT / Übertragung

    Verschoben
    7
    1
    0 Stimmen
    7 Beiträge
    545 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
    877 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
    2k 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
    241 Aufrufe
    Niemand hat geantwortet
  • [Gelöst] Einzelwert aus Array-Objekt?

    3
    0 Stimmen
    3 Beiträge
    303 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
    23k 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
    324 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
    526 Aufrufe
    C
    @percy Danke!!! Genau danach habe ich gesucht. Herzlichen Dank

552

Online

33.0k

Benutzer

83.4k

Themen

1.3m

Beiträge