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
    P
    Hi @Schimi , danke für das Skript. Ich glaube, es gibt einen kleinen Bug bei den stündlichen Daten. Die Werte für die ersten beiden Stunden des Tages werden falsch zugeordnet. Zum Debuggen habe ich das Skript angepasst und den Datenpunkt "from" mitschreiben lassen. Da ergibt sich folgendes Bild: 0_userdata.0.wetter_com.day_0.hourly.23.from = 2026-04-25T21:00:00Z 0_userdata.0.wetter_com.day_1.hourly.00.from = 2026-04-26T22:00:00Z 0_userdata.0.wetter_com.day_1.hourly.01.from = 2026-04-26T23:00:00Z 0_userdata.0.wetter_com.day_1.hourly.02.from = 2026-04-26T00:00:00Z Die TImestamps sind ja UTC, also 2h Versatz zu Deutschland. Die Uhrzeiten sind alle ok, aber bei 00:00 und 01:00 Uhr stimmt das Datum nicht. Da müsste als Tag der 25. drin stehen.
  • Hilfe für Skripterstellung mit Blockly

    7k 80k
    7k Themen
    80k Beiträge
    M
    Gestern war bei VolMax 3,54V Ladeende 100%, das Entladen stoppt halt dann doch relativ bald wenn ich bei Volmin 3,16V stoppe, aber wird wohl Sinn machen. Damit es ein bisschen hinausgezögert wird habe ich aber aktuell schon von 40% (500W) bis 10% verlaufend das Entladelimmit bis zu nur noch maximal 200W runtergesetzt.
  • Hilfe für Skripterstellung mit Node-RED

    955 13k
    955 Themen
    13k Beiträge
    mickymM
    @Tontechniker Man kann solche Filter aber auch OHNE neue Nodes zu installieren mit einfachen Standard-Switch Nodes realisieren: [image: 1776865319208-af3cab3c-2716-43f4-b7df-7f74e8bf051b-image.jpeg] ggf. einfach nochmal meinen alten Thread anschauen: https://forum.iobroker.net/topic/50086/datum-und-zeitverarbeitung-mit-nodered
  • Datenwert aus Userdate auslesen

    4
    2
    0 Stimmen
    4 Beiträge
    382 Aufrufe
    arteckA
    @captainchaos666 ich will jetzt nicht pingellig sein aber "Datenwert aus Userdate auslesen " was den für userdate... --> userdata
  • [Vorlage] Wetterdatenempfänger USB-WDE1-2 von ELV

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    863 Aufrufe
    S
    @sigi234 Vielen Dank für die Hilfe, das war ein erster Denkanstoß. Das Thema ist jetzt für mich persönlich etwas komplizierter geworden als gedacht. Ich habe einen neuen Faden eröffnet, ich hoffe das ist so in Ordnung. ELV Raumklimastation RS 500 bzw. dnt RoomLogg Pro
  • Iobroker daten per Script auslesen

    javascript
    4
    0 Stimmen
    4 Beiträge
    1k Aufrufe
    T
    Danke für die Idee! Hat bei mir auch nicht 1:1 funktioniert, hab's auf das hier angepasst (und um die GPU Temperatur erweitert): const Frequenz = 'vcgencmd measure_clock arm'; // | tr -d "frequency(45)=" const Temperatur = 'cat /sys/class/thermal/thermal_zone0/temp'; const GPU_temp = 'vcgencmd measure_temp | tr -d "temp=\'C"' const CPU_Last = 'load=$(cat /proc/loadavg) ; printf "%s\n" "${load%% *}"'; const Pi_in_Volt = 'vcgencmd measure_volts | tr -d "volt=V"'; // | tr -d "V" const Variable = '0_userdata.0.pi4-stats.'; createState(Variable + 'CPU_Frequenz' , 0.0, {name: 'CPU Frequenz' , type: 'number', unit: 'MHZ'}); createState(Variable + 'CPU_Temperatur', 0.0, {name: 'CPU Temperatur', type: 'number', unit: '°C'}); createState(Variable + 'GPU_Temperatur', 0.0, {name: 'GPU Temperatur', type: 'number', unit: '°C'}); createState(Variable + 'CPU_Last' , 0.0, {name: 'CPU Last' , type: 'number', unit: '%'}); createState(Variable + 'Pi_in_Volt' , 0.0, {name: 'Pi_in_Volt' , type: 'number', unit: 'V'}); function Systemlogger() { exec(Frequenz, function (error, stdout, stderr) { var temp = parseInt(stdout.substring(14, stdout.length - 1)) / 1000000; setState(Variable + 'CPU_Frequenz', temp); //log(temp + 'MHZ - from: ' + stdout); }); exec(Temperatur, function (error, stdout, stderr) { var temp = parseInt(stdout.substring(0, stdout.length - 1)) / 1000; setState(Variable + 'CPU_Temperatur', temp); //log(temp + '°C'); }); exec(GPU_temp, function (error, stdout, stderr) { var temp = parseFloat(stdout.substring(0, stdout.length - 1)); setState(Variable + 'GPU_Temperatur', temp); //log("GPU_Temperatur = "+temp + '°C'); }); exec(CPU_Last, function (error, stdout, stderr) { var temp = parseFloat(stdout.substring(0, 4)) * 100; setState(Variable + 'CPU_Last', temp); //log("load = " + temp + '% - src: ' + stdout); }); exec(Pi_in_Volt, function (error, stdout, stderr) { var temp = parseFloat(stdout.substring(0, stdout.length - 1)); // / 1000000; setState(Variable + 'Pi_in_Volt', temp); //log(temp + 'V'); }); } var Generator = setInterval(function() {Systemlogger()} ,3000);
  • Datenpunkt aktualisieren über Name [gelöst]

    5
    1
    0 Stimmen
    5 Beiträge
    264 Aufrufe
    liv-in-skyL
    @starlord42 es gibt auch die möglichkeit, das alles über eine "function" (aufzählung) zu steuern - beispiel: https://www.machs-smart.de/iobroker-blockly-geraete-aufzahlung-steuern/ wenn man über eine schleife arbeitet , könnte man das auch mit einer liste (array) von dp machen, wobei man das array einfach mit den dp vordefiniert
  • Blockly - Astro - Versatz

    4
    1
    0 Stimmen
    4 Beiträge
    330 Aufrufe
    HomoranH
    @gerhard-0 sagte in Blockly - Astro - Versatz: Entweder stimmt das mit dem Versatz von -30 min nicht oder es gibt einen anderen Bug ... oder deine Geoposition stimmt nicht oder deine Systemzeit deines Servers stimmt nicht oder... oder....
  • Script wird verzögert ausgeführt (Zigbee, HmIP)

    2
    1
    0 Stimmen
    2 Beiträge
    247 Aufrufe
    ArmilarA
    @edelhauer sagte in Script wird verzögert ausgeführt (Zigbee, HmIP): Hallo zusammen, ich habe bereits seit einiger Zeit verschiedene HmIP Produkte im Einsatz und habe diese jetzt durch den Einsatz eines Raspberry4 / 4GB) mit Conbee Stick und Zigbee Steckdosen erweitert. Auf dem Raspberry läuft neben dem ioBroker auch piHole und ein Unfi Controller. Nun zu meinen Problem / Frage: Ich habe ein einfaches Blocky-Script erstellt, welches bei Tastendruck auf einen HmIP Schalter jeweils eine HmIP Schaltsteckdose und eine Zigbee Steckdose (LEDvance / Osram) an bzw. ausschalten sollten. Das Script funktioniert soweit auch, jedoch schalten die Steckdosen sehr langsam (ca. 10 sec. Verzögerung). Wenn ich die Steckdosen, bzw. den Schalter über die "Objekte" schalte, schalten diese ohne Verzögerung. Nachfolgend mein Script: [image: 1665679495047-d8264955-8410-4fba-9a0a-34c585ebabdd-image.png] Trotz intensiver Suche konnte ich hierzu nur "Polling" finden, welches aber bei dem Stick nicht eingestellt werden kann. Ich hoffe, Ihr könnt hier helfen. Besten Dank edelhauer Für mich sieht das wie eine Dauerschleife aus. Der Trigger auf der Lampe meldet "false" --> Dann steuerst du "on" mit false --> der Trigger bekommt auf on ein false --> usw. bis in alle Ewigkeit. Eigentlich sollte der Schalter Switch (ich denke das soll der HmIP sein) der Trigger sein. Etwa so: [image: 1665787028330-e1bf4a65-4705-49db-95d5-a20c3b8cc98b-image.png]
  • [Vorlage] Betriebsstundenzähler & Verbrauchsrechner

    Verschoben javascript
    333
    3
    0 Stimmen
    333 Beiträge
    99k Aufrufe
    N
    Bei mir lief javascript in Version 6.0.3. Nach längerer Zeit wollte ich im Script ein Gerät hinzufügen. Beim Speicherm ist iobroker komplett abgestürzt. Nach downgrade auf javascript 5.8.10 konnte ich das Script speichern und der Zähler für das neue Gerät funktioniert. Gibt es Inkompalitäten mit der neuen Java-Version?
  • [GELÖST] Zeitdifferenz berechnen

    7
    0 Stimmen
    7 Beiträge
    772 Aufrufe
    peterk34P
    @paul53 Dankeschööön
  • Rules nicht mehr editierbar

    6
    0 Stimmen
    6 Beiträge
    332 Aufrufe
    ?
    @fredf Habe tatsächlich Telegram installiert und hätte nicht gedacht, dass das an einem anderen Adapter liegen kann. Ok, mal schauen, ob sich das mit der nächsten Telegram Version erledigen wird. Vielen Dank für die Info.
  • Bitte löschen

    1
    0 Stimmen
    1 Beiträge
    94 Aufrufe
    Niemand hat geantwortet
  • Mondphase in der VIS anzeigen

    3
    2
    0 Stimmen
    3 Beiträge
    240 Aufrufe
    mickymM
    Vollmond und Neumond ist jeweils nur an einem Tag. Das was Du siehst ist ein abnehmender Dreiviertelmond - du siehst ja die rechte untere Ecke fehlt bereits. Generell sind Voll, Neu- und Halbmondphasen immer genau für einen Tag definiert - siehe Mondkalender: https://www.timeanddate.de/mond/phasen/deutschland/berlin
  • Steuerung Hörmann SupraMatic 3 mit HMip-MOD-HO?

    javascript
    66
    1
    0 Stimmen
    66 Beiträge
    10k Aufrufe
    L
    @feuersturm [image: 1665430281711-bildschirmfoto-2022-10-10-um-21.26.28.png] Der IST-Zustand ist mit dem Basic image 8 umgesetzt. Die zusätzliche Schrift des Status ist mit: Basic valuelist HTML Style umgesetzt. [image: 1665431019199-bildschirmfoto-2022-10-10-um-21.42.37.png] Die Rotation für die Pfeile war da noch nicht drin.
  • HTML-Tabelle Bool anzeigen

    6
    1
    0 Stimmen
    6 Beiträge
    460 Aufrufe
    S
    @liv-in-sky sagte in HTML-Tabelle Bool anzeigen: wenn ein script das ganze erzeugt, steht die tabelle in einem datenpunkt. das html widget muss also ein binding für diesen dp haben. das erzeugt ein binding in einem binding - wird wohl nicht funktionieren im Nachhinein betrachtet war mein Brett vorm Kopf schon ziemlich dick ;-) nun - was soll's. Ich habe es entsprechend umgebaut - erst Status ermitteln und diesen im HTML unterbringen. Vielen Dank für den Hinweis !
  • Anzahl der Pushover Nachrichten begrenzen

    23
    1
    0 Stimmen
    23 Beiträge
    561 Aufrufe
    mickymM
    @damrak2022 Das blaue Quadrat zeigt an, dass die trigger node aktiv ist. Mach halt debug nodes dran und prüfe . Wenn von Deinem Drucker immer neue Nachrichten kommen, dann mach doch eine Delay Node mit den Einstellungen dran, lass aber die msg.reset Node ebenfalls dran und verkabel die mit der Delay Node - so dass diese wenn der Tintenstand wieder >20% ist sofort zurückgesetzt wird.
  • [Gelöst] Ölvorrat Enddatum berechnen

    Verschoben
    26
    0 Stimmen
    26 Beiträge
    805 Aufrufe
    B
    @paul53 Hat geklappt indem ich einen neuen Datenpunkt für die Durchschnittsverbräuche angelegt habe! Herzlichen Dank!
  • Datenpunkt Werte umgekehrt

    10
    1
    0 Stimmen
    10 Beiträge
    440 Aufrufe
    R
    du hast mir sehr weiter geholfen, ich hab jetzt noch einen eigenen Datenpunkt erstellt, jetzt funktioniert es. Danke!!!!!
  • SQL Server abfragen

    3
    0 Stimmen
    3 Beiträge
    232 Aufrufe
    H
    @bananajoe Sehr gut, danke. sqlcmd ist genau mein Ding - funktioniert! Sieht dann aktuell bei mir so aus: [image: 1665137711178-screenshot-7474.png] wobei ich dann das "result" noch gefiltert habe um nur eine Zahl in den Datenpunkt zu schreiben. Danke nochml für's einnorden. ;-) PS. die Parameter beim sqlcmd haben mich ne halbe Stunde gekostet, die sind case sensitive. Beispiel: /opt/mssql-tools/bin/sqlcmd -S 192.168.200.85 -U sa -P "123456789" -Q "Select count(Auftraege.Auftragsnummer) As Summe From Datenbank.dbo.Auftraege Where Auftraege.fkKunde = 1"
  • Status Backofen über Blockly abfragen

    5
    1
    0 Stimmen
    5 Beiträge
    589 Aufrufe
    C
    @nikoxx said in Status Backofen über Blockly abfragen: @christobal0815 Trage mal das "BSH.Common.EnumType.OperationState.Run" als Wert ein. So klappt es bei mir zumindest. Wenn ich nur das "run" abfrage passiert nichts. Danke! DAS hat mein Problem gelöst. Klasse Forum hier :)
  • Briefkasten Visualisierung VIS mit enocean Fensterkontakten

    7
    0 Stimmen
    7 Beiträge
    334 Aufrufe
    B
    @paul53 Funktioniert !!!! mal wieder vielen Dank !
  • Ordner "global" wird nicht angezeigt - gelöst

    23
    0 Stimmen
    23 Beiträge
    2k Aufrufe
    DJMarc75D
    OT start Grundsatzdiskussion WER WIE WO WAS WANN WARUM Common übersetzt - "gemeinsam, haüfig, üblich" Üblicherweisse mache ich häufig und gemeinsam mit meiner Frau alles zusammen - stetig sogar OT ende

452

Online

32.8k

Benutzer

82.8k

Themen

1.3m

Beiträge