Weiter zum Inhalt

Skripten / Logik

16.6k Themen 214.4k Beiträge

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

NEWS

Unterkategorien


  • Hilfe für Skripterstellung mit JavaScript

    3k 49k
    3k Themen
    49k Beiträge
    maxclaudiM
    @Daniel-8 sagte: Also habe ich das richtig interpretiert, das eine 8 Sekundenabfrage kein Problem darstellt Richtig. Es kann auch mit 6 Sek. gefahrlos getestet werden. Das Skript arbeitet mit einer Warteschlange (Queue). Das heißt, alle Anfragen (Watt lesen oder Werte schreiben) werden nacheinander abgearbeitet. Damit das stabil bleibt, müssen die Intervalle auf die Timeout-Zeit (2 Sek.) abgestimmt sein. Voraussetzung ist eine gute, stabile und nicht überlastete WLAN-Verbindung. Evtl. ein extra WLAN mit Access Point (AP) nur für Zendure-Gerät(e). Abfrage-Intervall (GET) const intervalGet = 8; Standard (Empfohlen): 8 Sekunden Technisches Minimum: 5 Sekunden @Daniel-8 sagte: und zwischen dem senden immer 5 Sekunden Pause sind? Richtig. Man kann zwar theoretisch schneller Befehle im ioBroker auslösen, aber das Skript lässt diese erst nach der eingestellten Pause, der Reihe nach, in die Warteschlange. Sende-Pause (POST) const minTimeBreakForSetDpSec = 5; Standard (Empfohlen): 5 Sekunden Technisches Minimum: 4 Sekunden Warum diese Mindestwerte? Stabilität. Die 2x-Timeout-Regel: Sobald Du einen Wert sendest (POST), schickt das Skript sofort eine Abfrage (GET) hinterher, um den Status zu aktualisieren. Im Fehlerfall (WLAN-Lag) dauert dieser Vorgang bis zu 4 Sekunden (2x 2 Sek. bei 2000ms Timeout). Die Sende-Pause muss also immer länger als diese 4 Sekunden sein, sonst stauen sich die Befehle in der Warteschlange.. Abfrage-Puffer: Das Abfrage-Intervall (GET) muss deutlich über dem Timeout liegen, damit das Skript Zeit hat, die Warteschlange nach einem Fehler sauber zu leeren. Wichtig: Bei schlechtem WLAN Wenn das WLAN nicht absolut stabil ist, sollte man die Zeiten nicht verringern, sondern eher erhöhen: intervalGet: auf 10–12 Sekunden minTimeBreak (Pause): auf 8 Sekunden Bei schlechtem Empfang laufen Anfragen evtl. oft in den 2-Sekunden-Timeout. Wenn man dann zu schnell neue Anfragen nachschiebt, "verstopft" die Kommunikation zum Zendure-Gerät komplett und der interne Prozessor (ESP) kommt nicht mehr hinterher. Könnte evtl. sogar die Kommunikation beenden. Nur so ist sichergestellt, dass über HTTP alles reibungslos funktioniert. Mir ist kein Weg bekannt, das auf andere Weise "sicherer" über HTTP zu gewährleisten. Mit den Standard-Einstellungen funktioniert es im Dauerbetrieb sehr zuverlässig.
  • Hilfe für Skripterstellung mit Blockly

    7k 80k
    7k Themen
    80k Beiträge
    Siggi0904S
    Okay. Final ist es dann so geworden. Muss jetzt noch die Variablen für die beiden Datumsangaben erstellen und anbinden. [image: 1775999789528-d1871f2f-799c-486d-adaa-1b85f15ff648-image.jpeg]
  • Hilfe für Skripterstellung mit Node-RED

    954 13k
    954 Themen
    13k Beiträge
    F
    Hallo ich habe ein Problem mit Nodered und Alexa Echo. Ich habe in Nodered die Wemo Emulation installiert und eine Wemo Steckdose emuliert um an einer Zigbeesteckdosenleiste einen Platz der Leiste zu schalten. "node-red-contrib-wemo-emulator" Das klappt auch wunderbar leider nicht länger als ein zwei Tage. Wenn ich dann den Echo der mit der emulierten Steckdose verbunden ist neu starte geht es wieder. Leider ist das sehr nervig. Hat schon mal jemand gehabt? Durch die Forumssuche habe ich leider nicht gefunden. Gruss Achim
  • [ESPEASY] Rules, Hysterese

    heating
    1
    0 Stimmen
    1 Beiträge
    434 Aufrufe
    Niemand hat geantwortet
  • Alexa Antwortet mit Satzzeichen

    Verschoben
    7
    1
    0 Stimmen
    7 Beiträge
    787 Aufrufe
    dslraserD
    @MyzerAT schau mal hier rein, vielleicht findest Du da was (ich bin noch im Urlaub, nur Handy...) https://forum.iobroker.net/topic/18693/austausch-zu-neuem-alexa2-alpha-2-1-ssml-feature
  • Alle Schedules auflisten

    javascript
    4
    0 Stimmen
    4 Beiträge
    833 Aufrufe
    paul53P
    @0018 sagte: alle derzeit laufenden Schedules im Javascript anzeigen Mit dem folgenden Skript kann man sehen, wieviele Schedules aktiv sind, aber nicht welche. [image: 1556011060373-scheduledjobs.jpg]
  • Ping in Blockly?

    Verschoben
    6
    0 Stimmen
    6 Beiträge
    3k Aufrufe
    MartinK.M
    bei mir taucht die ip adresse unter den Objekten dann auf ;-)
  • Rolladen m. Zeit, Astro und State

    blockly
    5
    1
    0 Stimmen
    5 Beiträge
    701 Aufrufe
    D
    @BBTown ...ahhh...OK, vielen Dank, ich glaube jetzt hab ich verstanden, was Du meinst. Super!!! Vielen Dank.
  • Zählerstand vom Youless LS auslesen

    javascript
    1
    0 Stimmen
    1 Beiträge
    234 Aufrufe
    Niemand hat geantwortet
  • höchste Windgeschwindigkeit der letzten 30 Min bekommen

    blockly javascript
    12
    0 Stimmen
    12 Beiträge
    1k Aufrufe
    M
    Ich habe es am Ende etwas anders gelöst. Wenn der Wind den Sturm-Wert überschreitet setze ich einfach einen neuen Zeitstempel in eine Variable. [image: 1555998692038-3c1c7080-1a74-4730-8c2c-b986e84467bb-grafik.png] Diese frage ich dann vor den rauf- oder runterfahren immer ab, und schuae ob sie älter als 30 Min ist. [image: 1555998782291-3038adaf-34c2-4fc8-a702-a7f57dab2339-grafik.png]
  • Ping Adapter Frage

    Verschoben
    2
    1
    0 Stimmen
    2 Beiträge
    340 Aufrufe
    D
    @4-Real Ich habe tatsächlich das selbe Problem mit dem Ping (TV im Standby, aber dennoch gibt es einen positiven Ping zurück). Habe mich schon immer gewundert, warum der Fernseher manchmal einfach von alleine an geht. Ich würde mich auch über eine Alternative freuen.
  • Kindersicherung durch Rechenaufgabe "CAPTCHA"

    javascript scenes communication
    3
    0 Stimmen
    3 Beiträge
    527 Aufrufe
    I
    Punkt 2 erinnerte mich spontan an die "alte" Jeopardy-Ratesendung, wo die Kandidaten zu einer vorgegebenen Antwort ("Steinmeier") die passenden Frage stellen mußten ("Alexa, wie heißt der aktuelle Bundespräsident?") Habe gut geschmunzelt! Und wer es schafft, Alexa das "Wort der Stunde" zu entlocken, gewinnt hierbei Zeit vor dem Fernseher.
  • ioBroker Objekte aus javascript object erzeugen

    javascript
    5
    0 Stimmen
    5 Beiträge
    3k Aufrufe
    dewenniD
    das passt! Danke!
  • Rollladen mit Helligkeitssensor für Beschattung

    Verschoben
    5
    0 Stimmen
    5 Beiträge
    1k Aufrufe
    C
    @kmxak OK, danke. Diese Seite hatte ich bereits. Dachte, es wäre evtl. eine weitere :-)
  • Mit Uhrzeit xx:xx aus Datenfeld rechnen, z.B. 120 Minuten abziehen

    blockly javascript node-red
    5
    0 Stimmen
    5 Beiträge
    693 Aufrufe
    thewhoboxT
    @iomountain Das liegt an dem Element "Datum/Zeit xx nach xx". Das berücksichtigt nicht die Sommerzeit beim umwandeln.
  • Heizungssteuerung mit Profilen und externen Trigger

    blockly
    1
    0 Stimmen
    1 Beiträge
    181 Aufrufe
    Niemand hat geantwortet
  • [gelöst] Mit Blockly Snapshot an Telegram Adapter

    blockly javascript
    13
    0 Stimmen
    13 Beiträge
    2k Aufrufe
    MartinK.M
    @rantanplan sagte in Mit Blockly Snapshot an Telegram Adapter: @MartinK sagte in Mit Blockly Snapshot an Telegram Adapter: Vielen Dank für die Hilfe! Dann bitte noch im ersten Beitrag [gelöst] im Betreff einfügen. Danke! Wird gemacht! ;-)
  • [Hinweis] Fehler in Blockly ASTRO

    Verschoben
    5
    2
    0 Stimmen
    5 Beiträge
    1k Aufrufe
    L
    @thewhobox gute Idee, werde ich gerade probieren. Bin noch neu dabei hier und hatte bisher so gut wie keine Fehler zu beheben :D
  • Capture Portal von Vodafone Homespot oder Hotspot mit ioBroker bedienen

    javascript
    2
    0 Stimmen
    2 Beiträge
    224 Aufrufe
    M
    Ich habe nightwatch gefunden. http://nightwatchjs.org Es erscheint mir möglich, das damit zu machen. Aber vielleicht gibt es auch einen einfacheren Ansatz.
  • State blockieren

    Verschoben
    6
    0 Stimmen
    6 Beiträge
    535 Aufrufe
    S
    Sorry für die späte Antwort, war lange nicht hier. Vielen Dank, werde es mal so versuchen. Gruß Marco
  • [gelöst]Das ein/aus schalten von Licht über icloud.0 ist Gegenverkehrt!

    blockly
    10
    4
    0 Stimmen
    10 Beiträge
    340 Aufrufe
    BBTownB
    @MyzerAT dann benötigst Du allerdings den gesamten "falls" Bereich nicht mehr, da Du diese Unterscheidung ja nun im Trigger selbst bereits abfängst :-)
  • [Frage] Blockly - Liste nutzen um Werte hinzuzufügen und zu prüfen

    blockly
    6
    1
    0 Stimmen
    6 Beiträge
    1k Aufrufe
    paul53P
    @siggi85 sagte: Vielleicht müsste ich doch für jedes Fenster einen eigene Trigger mit eigenem Timeout bauen. Das ist wohl die vernünftigste Lösung. Dann wäre da jedoch immernoch das Problem mit dem Icon auf der Lametric... Was hindert Dich daran, in einer gemeinsamen Funktion alle Timeout-Variablen zu prüfen ?
  • [gelöst]Immer doppelte Telegram Meldung ?!?!

    blockly
    8
    1
    0 Stimmen
    8 Beiträge
    767 Aufrufe
    MartinK.M
    @dslraser Vielen Dank für die netten Tips ! ... habe ich angepasst. Also der wert ist für das Objekt ist Zahl, das passt auch. Daran hat es leider auch nicht gelegen. ;-) Ich habe jetzt etwas anderes geändert, und zwar habe ich in meiner VIS für die Knöpfe AUF + ZU jetzt bei dem Objekt die States: open + close verwendet. [image: 1555048494677-jalosie_objekt.png] Ich hatte vorher auch für die Knöpfe in der VIS den State : Position - LEVEL verwendet, und den Wert für den Knopf dann mit 100 beschrieben.... komischerweise wurde auch in der VIS das Signalbild beim betätigen des AUF oder ZU Knopfes einmal kurz geöffnet und dann wieder geschlossen.... Erst wenn die Jalousie ganz geöffnet war, also auch der Wert auf 100 bekam ich die Nachricht: Jalousie offen.. ;-) Sehr seltsam das ganze...

407

Online

32.8k

Benutzer

82.7k

Themen

1.3m

Beiträge