Weiter zum Inhalt

Skripten / Logik

16.6k Themen 214.5k 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
    D
    Ich logge gerade die Variable pass mit. Irgendwie schaltet die so ziemlich oft am Tag. In der früh ist das ja noch ok. Aber ab ca. 10 Uhr hat der Akku eigentlich genug SOC das der Speicher nicht in den Bypass schalten muss. Ich bin mir auch nicht sicher ob der Wirklich schaltet oder das nur ein Anzeigefehler ist. Hat jemand ein ähnliches Verhalten. Ich habe einen 800Pro 0 = Bypass aus 2 = Bypass ein Die Zahl dazwischen ist nur eine addierte Zahl, das ich sehe wie oft er geschalten hat [image: 1777318055753-cf4f54c0-7176-482a-95e6-5e320dcb4e06-image.jpeg]
  • Hilfe für Skripterstellung mit Blockly

    7k 80k
    7k Themen
    80k Beiträge
    HomoranH
    @Berlon sagte: wieso gibt es bei true und false kleiner und größer? Zusätzlich zu der Info von @paul53 Binär ist false=0 und true=1. EDIT: @asgothian war schneller und genauer
  • Hilfe für Skripterstellung mit Node-RED

    956 13k
    956 Themen
    13k Beiträge
    S
    Hallo Zusammen, ich bin gerade am überlegen, wie ich folgende Aufgabe umsetzen könnte: Ein true an einer (Trigger)Node lässt einen Zähler laufen und setzt einen eigenen Ausgang auf true. Ein false der Trigger Node stoppt den Zähler setzt diesen aber nicht auf false. Ein true lässt den Zähler einfach weiterlaufen... Nach Ablauf der Zeit im Zähler wird der Ausgang des Zählers auf false gesetzt. Mehr soll nicht passieren. Ein separater Eingang am Zähler setzt diesen auf 0 zurück. Was ich damit anfangen möchte: Die Laufzeit der Poolpumpe wird auf eine Mindestlaufzeit von bspw. 4h überwacht -kann aber manuell bedient bei Bedarf länger laufen. Ein Trigger um 00:01Uhr setzt die Laufzeit zurück. Die Zählernode gilt hier als "Anforderung Pumpe wegen Mindestlaufzeit unterschritten". Ich habe noch keine brauchbaren Ideen, wie ich dass sauber und mit wenig Aufwand umsetzen könnte... Vielen Dank und VG Torsten
  • Adapter Fahrplan json-Daten als Tabelle in Jarvis

    3
    2
    0 Stimmen
    3 Beiträge
    488 Aufrufe
    A
    @mcu Hallo, danke mit Deiner Lösung hast Du mir sehr geholfen. Es funktioniert jetzt so wie ich es wollte.
  • Blockly sudo mit Passworteingabe

    5
    0 Stimmen
    5 Beiträge
    434 Aufrufe
    M
    @haus-automatisierung Das war vorher: drwxr-xr-x 7 iobroker iobroker Jetzt: drwxrwxr-x 7 iobroker iobroker Der Ordner wird via NFS, ggf auch wieder über CIFS / SMB geteilt. Der Ordner wird von einer externen Kamera via FTPd gefüllt. Es gibt nur den Benutzer iobroker. Kein anderer soll Zugriff haben. Siehst du eine Möglichkeit Berechtigungen zu reduzieren, wenn ja auch was (750)?
  • Bitfield übersetzen/konvertieren

    javascript
    19
    1
    0 Stimmen
    19 Beiträge
    2k Aufrufe
    wendy2702W
    @darkbrain85 sagte in Bitfield übersetzen/konvertieren: Hi! Ich habe ein kniffeliges Problem, bei dem ihr mir sicher behilflich sein könnte. Ich lese meine Waterkotte Wärmepumpe per Modbus aus. Dabei erhalte ich auch diverse Werte. Funktioniert sehr gut. Den Zustand einzelner Komponenten kann ich allerdings nur als bitfield in einem gemeinsamen Register abrufen. Hier erhalte ich einen Integer Wert den ich entsprechend interpretieren müsste. Hier mal die Liste aus der Doku: [image: 1578511613103-521d80f2-9fb9-4fa1-8e78-15e4b396b5bb-image.png] Ich müsste also den Integer Wert übersetzen und dann die einzelnen Zustände zuordnen. Beim Betrieb der Heizungsumwälzpumpe erhalte ich z.B. den Wert 2. Gibt es dafür irgendwo ein Beispiel, oder kann mir da jemand auf die Sprünge helfen? Danke Euch jetzt schon! Ist zwar schon was älter aber gerade erst gesehen. Kannst du mir sagen welche WP das ist, welches Register und wie eingestellt im Adapter? Hast du eine Übersicht über alle Register die man lesen/schreiben kann?
  • iobroker mit Waterkotte Ecotouch 5029 Ai

    6
    0 Stimmen
    6 Beiträge
    802 Aufrufe
    K
    @wendy2702 nee das hatte ich alles probiert. Entweder hat Waterkotte die Register geändert oder deren eigene Software berechnet die Energiebilanzen einfach selber. Meine Vermutung ist, dass sich lediglich bei dem Modell die Leistungsdaten auslesen lassen (das funktioniert übrigens) und ggf. von einem eigenem Script aufintegriert werden müssen, um die Energiewerte zu erhalten.
  • Blockly: Timeout/Intervall - einmaliges Ausführen

    3
    1
    0 Stimmen
    3 Beiträge
    164 Aufrufe
    S
    @paul53 Danke dir für deine Tipps! Ich werde es gleich ausprobieren.
  • Datenpunkt in der Vergangenheit schreiben

    2
    0 Stimmen
    2 Beiträge
    345 Aufrufe
    paul53P
    @achim_m sagte: Gibt es eine Möglichkeit, beim Schreiben eines Datenpunktes einen Timestamp anzugeben? on(idSrc, function(dp) { let ts = 7200000 * Math.floor(dp.state.ts / 7200000); // Abrunden auf gerade Stunden UTC setState(idDst, {val: dp.state.val, ack: dp.state.ack, ts: ts}); });
  • [gelöst] Skript Funktion wiederverwendbar machen

    14
    1
    0 Stimmen
    14 Beiträge
    1k Aufrufe
    PackElendP
    @init5 ich stehe vor einer ähnlichen Herausforderung. Ich habe 9 Jalousien zum ansteuern, das Skript ist immer das gleiche. Wenn ich es richtig verstehe, können Skripte nicht instanziert werden, sprich wenn der Timer läuft aber das Skript von einem anderen Trigger (bei dir Fenster auf), startet der Timer von neuem?
  • [Gelöst] CPU Temperatur von Proxmox VM

    monitoring javascript blockly
    129
    1
    0 Stimmen
    129 Beiträge
    30k Aufrufe
    arteckA
    @sherlock sagte in [Gelöst] CPU Temperatur von Proxmox VM: Außerdem sollte man auf keinem Fall iobroker in einem LXC installieren! das ist deine Assage.. ohne jegliche weitere Erklärung.. was hat das mit einem Profi oder Leien zu tun .. nopes... wenn du solche Aussage in die Welt setzt solltest du auch erklären warum nicht... es gibt auch andere Gründe als die von dir genannte... ein LXC ist nicht migrationsfähig..als Beispiel.. hat abe nix damit zu tun dass man im LXC keine iobroker installieren sollte... und ja ich gebe dir recht USB Geräte sind einfacher in eine VM zu durchreichen.. trotzdem läuft iobroker genausogut in einem LXC (vielleicht sogar besser da Ressourcen schonender)
  • DP Strucktur zur Lichtsteuerung

    3
    0 Stimmen
    3 Beiträge
    357 Aufrufe
    I
    Das heißt das du für jeden raum /Lampe ein separates Skript hast? Ja man hat dann viele Datenpunkte. Man könnte sich ja überlegen das man die Datenpunkte nur anlegt, wenn die Funktion benötigt wird und sonst nichts. Damit lässt sich bestimmt die Menge halbieren. Ich persönlich finde es sehr schön wenn meine skripte so geschrieben sind das ich wenn ich z.b. eine neue Lampe habe an den Skripten nichts geändert werden muss (maximal ein neustart). So das es reicht ein paar alias anzulegen und alles ist gut. Ich werde mal versuchen meine Struktur genauer auszuarbeiten und in einem Testsystem zu implementieren. Mal schauen wie gut das ganze klappt.
  • pvforecast script zu solcast.com und mehreren Ausrichtungen

    1
    2
    1 Stimmen
    1 Beiträge
    438 Aufrufe
    Niemand hat geantwortet
  • SSH Befehl auf Synology ausführen

    4
    1
    0 Stimmen
    4 Beiträge
    483 Aufrufe
    OliverIOO
    @steffensammet Warum führst du das Skript nicht per crontab regelmäßig aus? Dann bleiben die Abhängigkeiten begrenzt. Der Grund warum du das root Passwort eingeben musst kann natürlich sein, das die Rechte für das Skript nicht richtig gesetzt worden sind oder der Nutzer generell kein recht hat Python Skripte auszuführen. Das hat erstmal nix generelles mit Python zu tun sondern mit rechteverwaltung unter linux. Wer ist den den owner Gruppe und user der Skript Datei? Ist dieser User sa2 Mitglied der python Gruppe? Wenn das Skript abstürzt erzeugt es Fehlermeldungen?
  • Überwachung Internetverbindung Fritzbox

    3
    0 Stimmen
    3 Beiträge
    455 Aufrufe
    MatzebhvM
    @w00dy Ja, da habe ich auch schon drauf rumgedacht. Das ist dann zwar etwas hintenrum gelöst, sollte aber funktionieren. Die Boxen können das tatsächlich schon lange. Anleitung Matze
  • Parser: TV-Sender Fußball [Closed]

    25
    0 Stimmen
    25 Beiträge
    3k Aufrufe
    OliverIOO
    dann so @digi-bit sagte in Parser: TV-Sender Fußball [Closed]: const cheerio = require('cheerio'); const axios = require('axios'); const dp = "0_userdata.0.test1"; async function getFussball() { const response = await axios.get('https://www.fussball-im-tv.com/team/colonia'); const $ = cheerio.load(response.data); let datum = $('#utcRelativeContent > table:nth-child(2) > tbody > tr.cabeceraTabla > td').text(); let uhr = $('#utcRelativeContent > table:nth-child(2) > tbody > tr:nth-child(2) > td.hora').text(); let lokal = $('#utcRelativeContent > table:nth-child(2) > tbody > tr:nth-child(2) > td.local span').text(); let visitor = $('#utcRelativeContent > table:nth-child(2) > tbody > tr:nth-child(2) > td.visitante span').text(); let tv = $('#utcRelativeContent > table:nth-child(2) > tbody > tr:nth-child(2) > td.canales > ul li').toArray().map(el=>$(el).text()).join(", "); setState(dp,lokal + " - " + visitor + " | " + datum + " um " + uhr + " | " + tv); console.log(lokal + " - " + visitor + " | " + datum + " um " + uhr + " | " + tv); } getFussball();
  • Zigbee Device Default nach Stromausfall

    15
    0 Stimmen
    15 Beiträge
    2k Aufrufe
    M
    @meister-mopper Das ging ja fix. Dankeschön
  • Direkt nach createState setState aufrufen

    4
    0 Stimmen
    4 Beiträge
    422 Aufrufe
    manuxiM
    @ticaki Funktioniert! Vielen Dank!
  • Heizung: Gebäudedämpfung simulieren

    13
    0 Stimmen
    13 Beiträge
    1k Aufrufe
    HomoranH
    @axmlm sagte in Heizung: Gebäudedämpfung simulieren: dass ohne Innentermometern die WP nicht weiß, dass der Boden zu warm ist doch! sollte sie wissen! Anhand des Verhältnisses Vor zu Rücklauf. Wenn diese Spreozung wegen zu hoher Rücklauftemperatur immer geringer wird, sollte die WP erkennen, dass die Wärme nicht mehr abgegeben werden Kann. Daikin arbeitet genau so (mit anderen Schwächen) Das jetzt beschriebene klingt wie mein Problem! Der WP wird ein überschwingen erlaubt, weil sie sonst zuviel takten würde. Hier bei einer Außentemperatur von 12 °C sollte die VLT bei 25 Grad liegen, hat gerade während des Screenshots aber auf 27.3 moduliert [image: 1707933380078-screenshot_20240214-185433_firefox.jpg]
  • Script zum Auslösen für Sonoff SNZB-02 Luftfeuchtigkeitswert

    6
    1
    0 Stimmen
    6 Beiträge
    452 Aufrufe
    paul53P
    @mico sagte: Script nur einmal am Tag ausgeführt wird. Zu einer bestimmten Uhrzeit? [image: 1707927409616-blockly_temp.jpg]
  • (Gelöst) Blockly für Zeitverzögerung

    10
    0 Stimmen
    10 Beiträge
    415 Aufrufe
    haus-automatisierungH
    @jspallek Ja, auf das Zahnrad klicken und einen weiteren Objekt-ID Baustein nach rechts rüber ziehen. Grundlagen anschauen! :)
  • setState eines Arrays (Liste) erzeugt Warnung

    3
    0 Stimmen
    3 Beiträge
    301 Aufrufe
    haus-automatisierungH
    @olterion sagte in setState eines Arrays (Liste) erzeugt Warnung: Wenn ich nun folgenden js code ausführe, dann wird eine Warnung erzeugt, die Funktion ist aber gegeben. setState('0_userdata.0.Lüftungsanlage.Lüftungsstufe', 1, true); Du schreibst ja auch kein Array, sondern nur den numerischen Wert 1. Ein array wäre: setState('0_userdata.0.Lüftungsanlage.Lüftungsstufe', [1], true); Aber das ist wahrscheinlich nicht das, was Du suchst. Wie @MCU schon schreibt, sollte der Datentyp wahrscheinlich number sein. Zumindest sieht dein states Mapping danach aus.
  • Meldung Internetausfall

    25
    1
    0 Stimmen
    25 Beiträge
    2k Aufrufe
    S
    @martinp Ein Pferdefuß ist, dass ja kaum ein User eine wirklich feste IP hat, da wird wohl auch ein gewisser Pflegeaufwand nötig sein, wenn die IP-Adressen beim Provider durchgerührt werden ... Im Ping Adapter lässt sich auch eine Dyn DNS / Hostname Adresse eintragen. Wenn ich das richtig getestet habe funktioniert das auch.

506

Online

32.8k

Benutzer

82.8k

Themen

1.3m

Beiträge