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
    @azzkikrboy Ich denke eher das in deinem Fall aus irgendeinem Grund der Timer mehrfach gesetzt wurde. Das kann durch häufige Neustarts z. B., Passieren, dass Timer nicht sauber gelöscht werden. Ich schaue mal wie ich das absichern kann, wenn du das Skript stoppst und etwas wartest bevor du es wieder startest, sollte das Problem erstmal gelöst sein.
  • Hilfe für Skripterstellung mit Blockly

    7k 79k
    7k Topics
    79k Posts
    B
    @redbull2906 Ich würde sagen, dass man sich da nicht selbst kümmern muss, das sollte das BMS des Akkus regeln, so ist zumindest meine Sicht der Dinge.
  • 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
  • [geloest] Loeschen von States -

    Moved
    13
    0 Votes
    13 Posts
    3k Views
    blauholstenB
    @Bluefox: @blauholsten: Hi, das mit der each…. klappt! Danke. Aber deleteState klappt nicht. Es kommt immer ....cannot delete State "…..", not exists obwohl das State definitiv existiert. Versuch mal von github die neue Version. Hi, habe jetzt die Version 2.03 JS. Das mit delete klappt trotzdem nicht! Diesmal aber als Warnung und nicht als Error. Kann das jemand bestätigen?
  • Flow für WeatherUnderground

    Moved
    5
    1
    0 Votes
    5 Posts
    3k Views
    OstfrieseUnterwegsO
    Prima.
  • Rechnen mit 2 Objekten

    Moved
    9
    0 Votes
    9 Posts
    1k Views
    P
    Tausend Dank euch allen! Ich hab es jetzt mit Schedule eingebunden Ist das so in Ordnung? createState("sdcard_root_free",0); function memBerechnen(){ var sdcard_root_free = getState("rpi.0.sdcard.sdcard_root_total"/*rpi.0.sdcard.sdcard_root_total*/).val - getState("rpi.0.sdcard.sdcard_root_used"/*rpi.0.sdcard.sdcard_root_used*/).val; log("sdcard_root_free: " + sdcard_root_free); setState("sdcard_root_free",sdcard_root_free); } schedule('*/10 * * * *', memBerechnen); 10-Min Rythmus reicht mir vollkommen! Gruß Johnny
  • Sayit-Script + Schedule

    Moved
    5
    0 Votes
    5 Posts
    1k Views
    coyoteC
    Ich häng mich hier mal kurz rein. Also ich verstehe nicht ganz warum du am Ende setState ("sonos.0.root.192_168_178_218.favorites_set", 'Radio'); machst, du speicherst doch vorher den aktuellen Sender, da schreib ihn doch einfach wieder rein. Ich mach das z.B. so var idSonosfav = getState("sonos.0.root.192_168_66_40.favorites_set").val; var idSonosplay = getState ("sonos.0.root.192_168_66_40.state_simple").val; if (obj.newState.val ==="green" && idSonosplay === true) { setState (idSayIt, "Alles in Ordnung, der CO2 Gehalt liegt bei" + getState('hm-rega.0.1968').val); setTimeout(function () { setState ("sonos.0.root.192_168_66_40.favorites_set", idSonosfav); }, 9000); });
  • Variable Zeit/Schedule Funktion

    Moved
    7
    0 Votes
    7 Posts
    4k Views
    coyoteC
    Ja ich werde mir dein Script nochmal genauer ansehen. Hab da noch nicht so den Durchblick ;-) Ich probiere einfach mal aus Gesendet von meinem Nexus 5X mit Tapatalk
  • Probleme seit update

    Moved
    4
    0 Votes
    4 Posts
    1k Views
    N
    Ich würde erstmal node-red in der aktuellen Version drüber installierten. Unter Linux geht das mit den folgenden Kommandos cd /opt/iobroker/node_modules/iobroker.node-red iobroker stop node-red.0 npm install –unsafe-perm node-red iobroker start node-red.0 Gesendet von meinem SM-G900F mit Tapatalk
  • Länge/Breite in Javascript Adapter einbinden

    Moved
    25
    0 Votes
    25 Posts
    4k Views
    ruhr70R
    @Bluefox: Du hast es nicht ganz verstanden. Asynchron heißt: es wird als Auftrag gespeichert und irgendwann später ausgeführt. Und wenn es fertig ist, dann wird die ready Funktion ausgeführt. "Irgendwann später" heißt, wenn er nichts zu tun haben wird und bei dir muss er was tun, nämlich, log ausgeben. ` Ich danke Dir für Deine Erklärung. Das Ergebnis spielt sich ja auch im Log wieder. Das bedeutet aber doch, dass ich um eine setTimeout() Funktion nicht drumherum komme, wenn ich den geschriebenen Datenpunkt im weiteren Verlauf benötige oder? Mit setTimeout() habe ich das jetzt realisiert. Hatte die Hoffnung, dass es auch "eleganter" geht.
  • Funktion wird bei Scriptstart ausgeführt, warum?

    Moved
    3
    0 Votes
    3 Posts
    676 Views
    R
    dankeschön
  • Script beenden

    Moved
    4
    0 Votes
    4 Posts
    5k Views
    BluefoxB
    @paul53: Eine JS-Funktion kann mit https://developer.mozilla.org/de/docs/Web/JavaScript/Reference/Statements/break beendet werden. ` Mit break kann es nicht funktionieren. Weil break nur in den Schleifen funktioniert. ruhr70 hat gute Lösung vorgeschlagen.
  • Email bei Tür wird geöffnet

    Moved
    5
    0 Votes
    5 Posts
    878 Views
    C
    super danke , hat geklappt
  • [gelöst] Globale Scripte

    Moved
    9
    0 Votes
    9 Posts
    2k Views
    OstfrieseUnterwegsO
    Danke, so mache ich das.
  • Programmierphilosophie - wie geh ich's an?

    Moved
    10
    1
    0 Votes
    10 Posts
    2k Views
    P
    Eine Riesenerleichterung! Danke! :lol: Gruß Pix
  • Hilfe beim skripten

    Moved
    47
    0 Votes
    47 Posts
    7k Views
    R
    Ich meinte zum testen hatte ich eine true/false variable verwendet Gesendet von meinem HUAWEI CRR-L09 mit Tapatalk
  • oder Verknüpfung

    Moved Solved javascript
    6
    0 Votes
    6 Posts
    1k Views
    paul53P
    @stephan61: buegeleisen und trigger haben den Wert 0 oder 1 ` Dann sollte auch das funktionieren (implizite Typwandlung): if (buegeleisen || trigger) { setState(idSayIt, "Achtung Bügeleisen ist an "); }
  • Javascript.0.scriptEnable ?

    Moved
    2
    0 Votes
    2 Posts
    678 Views
    P
    Hallo Stephan, das ist richtig. Genau dafür ist das gedacht. Du kannst Skripte damit aktivieren/deaktivieren (zB aus VIS oder per Skript oder Szenenadapter). Beispiele: Skript zur Kontrolle des Rollladens Balkontür abschalten, während die Balkontür offen steht (Aussperrschutz). Skript zur Überwachung der Fenster und Türen einschalten, wenn Abwesenheit Theoretisch lässt sich das alles auch innerhalb des Skriptes programmieren. Für Einsteiger ist ScriptEnable aber sicher der übersichtlichere Weg, vor allem, da Skripte per VIS-Widget aktiviert/Deaktiviert werden können. Gruß Pix
  • Gelösst Ansage Fenster offen

    Moved
    3
    0 Votes
    3 Posts
    1k Views
    S
    habe den Fehler gefunden ich habe die text Datei vom Script Fenster zählen genommen in dieser Textdatei werden zwischen den textestellen ein als zeilenumbruch eingefügt das führte zu der komischen Ansage . Habe nun in dem Script Fenster eine 2 textdatei erzeugt mit einem Und als trenner und jetzt ist die Ansage in Ordnung Gruß Stephan
  • Widget schaltet HTTP GET Befehl

    Moved
    5
    0 Votes
    5 Posts
    2k Views
    BluefoxB
    @akamia: Geht. Setze ich zur direkten Steuerung meines DENON Verstärkers ein. Z.B.: http://192.168.xxx.yyy/goform/formiPhon … ?1+MuteOff Widget: jqui - Icon Http Get Die 433 MHz billig Funksteckdosen hatte ich auch über das Mediola Gateway gesteuert. ` Es sit empfohlen die Skriptversion zu nutzen, weil Widget Lösung funktioniert nur von zuhause. Falls man unterwegs ist, landen die HTTP Befehle in Nirvana. Und dann noch, falls man HTTPS einschaltet, kann man die Requests auch nicht machen, weil die Browser weigern von HTTPS auf HTTP zu greifen. Falls man von Zuhause und nur über HTTP vis laufen lässt, dann kann man die widgets auch benutzen.
  • [gelöst] Reaktion auf Kalendereintrag

    Moved
    13
    0 Votes
    13 Posts
    2k Views
    S
    Merci, Ich schaue morgen mal und werde berichten…danke!
  • Node-Red Deployment Probleme *** Gelöst ***

    Moved
    11
    0 Votes
    11 Posts
    6k Views
    T
    Hallo, hab nun die die aktuelle Node-red Version 0.13.2 installiert. Damit sind meine Deployment-Probleme mit "Error: connection to server lost" auch endlich gelöst. cd /opt/iobroker/node_modules/iobroker.node-red iobroker stop node-red.0 npm i --unsafe-perm node-red@0.13.2 iobroker start node-red.0 Es läuft nun alles stabil…. :) :) :)
  • Einschaltdauer

    Moved
    6
    1
    0 Votes
    6 Posts
    2k Views
    P
    Hey Pix, danke für die Tipps :D Ich bin für jeden Tipp dankbar. Gerade wenn diese einem das Leben langfristig erleichtern. Werde meine Scripte demnächst mal umbauen. Gruß Phantomio

550

Online

32.7k

Users

82.3k

Topics

1.3m

Posts