Skip to content

Skripten / Logik

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

16.4k Themen 211.7k Beiträge

NEWS

Unterkategorien


  • Hilfe für Skripterstellung mit JavaScript

    2k 48k
    2k Themen
    48k Beiträge
    Ro75R
    Ich habe das Skript aktualisiert. Neuer Stand: 1.0.17. Aktueller Code, Beispiel, Archiv, Code aus meiner Umgebung und Parameterbeschreibung >> ALLES in Post 1. Ro75.
  • Hilfe für Skripterstellung mit Blockly

    6k 78k
    6k Themen
    78k Beiträge
    skvarelS
    @hoschi2007 sagte in PNG zum "blinken bringen", mittels Blockly-Pause ... (?): Für die vis1 gibt es das Universal Widget von vis-inventwo wo mal den Blinkintervall einstellen kann. Unter vis2 funktioniert dieses auch. Mittlerweile gibt es vis2-inventwo, habe aber damit noch nicht gearbeitet Ja, auch bei unseren VIS2 Widgest gibt es das Blinken [image: 1763790792215-d4c72f65-87c8-40db-be68-1b97f46e6e72-image.png]
  • Hilfe für Skripterstellung mit Node-RED

    952 13k
    952 Themen
    13k Beiträge
    HomoranH
    @fiddle sagte in [Gelöst]: Adapter per {Node Red | JS} (de)aktivieren: Ok, nicht als "Wert" schreiben, sondern als "Befehl". Dann scheint ihn das zu beeindrucken. du zeigst ja nichts, aber es geht mit true/false [image: 1763416200051-screenshot_20251117-224854_firefox.jpg] gesteuert über eigenen DP vom typ Bool
  • [GELÖST]Blocky Tür auf/zu Meldung Telegra

    Verschoben
    7
    2
    0 Stimmen
    7 Beiträge
    719 Aufrufe
    M
    Super :D :D Danke so funktioniert es wunderbar ! Ich sehe ich muss mich unbedingt in das Thema Blocky einlesen… Aber trotzdem ist es schön zwischendurch einen Erfolg zu bekommen :) auch mit Hilfe von anderen Usern ... :D
  • [GELÖST] JSON String für Arduino aus ioBroker Objekten erstellen

    Verschoben
    2
    0 Stimmen
    2 Beiträge
    623 Aufrufe
    rudikxR
    Ich hab die Lösung falls es jemanden interessiert ;) [ { "id": "5ec56b41.f215c4", "type": "serial out", "z": "aca75de6.d3a82", "name": "Pool", "serial": "c6e3ab46.9b7588", "x": 1417.773754119873, "y": 644.7422542572021, "wires": [] }, { "id": "70af1a43.93aee4", "type": "ioBroker in", "z": "aca75de6.d3a82", "name": "Change_KollektorStart", "topic": "admin.0.Eigene.Pool.Change_KollektorStart", "payloadType": "value", "onlyack": "", "func": "all", "gap": "", "x": 187.7736053466797, "y": 586.4064445495605, "wires": [ [ "5bd55717.1388d8" ] ] }, { "id": "45d396a5.ecbb98", "type": "ioBroker in", "z": "aca75de6.d3a82", "name": "Change_KollektorStop", "topic": "admin.0.Eigene.Pool.Change_KollektorStop", "payloadType": "value", "onlyack": "", "func": "all", "gap": "", "x": 187.02349853515625, "y": 649.0391654968262, "wires": [ [ "5bd55717.1388d8" ] ] }, { "id": "9406678e.0446a8", "type": "debug", "z": "aca75de6.d3a82", "name": "", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "false", "x": 1431.773494720459, "y": 739.7502040863037, "wires": [] }, { "id": "880909c2.bc7478", "type": "function", "z": "aca75de6.d3a82", "name": "Daten sammel", "func": "out=context.data ||{}\nnode.log(\"start\" + msg.payload);\nnode.log(\"start stored\" + context.data);\ntopic=msg.topic;\nnode.log(topic);\n\nif (msg.payload==\"send\")\n{\n msg.payload=context.data;\n msg.out=\"Sent data to \" +out.house;\n msg.topic=\"pool/settings\";\n context.data=null;\n return [msg];\n}\n\nelse \n{\n out[topic]=msg.payload;\n context.data=out;\n node.log(\"stored\" + context.data);\n return null;\n}\n\nreturn msg;", "outputs": 1, "noerr": 0, "x": 712.0234756469727, "y": 645.0391654968262, "wires": [ [ "c8d42c65.ffb99" ] ] }, { "id": "7c5156c5.da5478", "type": "inject", "z": "aca75de6.d3a82", "name": "", "topic": "pool/settings", "payload": "send", "payloadType": "str", "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "x": 587.0234298706055, "y": 1158.0392265319824, "wires": [ [ "880909c2.bc7478" ] ] }, { "id": "5bd55717.1388d8", "type": "change", "z": "aca75de6.d3a82", "name": "", "rules": [ { "t": "change", "p": "topic", "pt": "msg", "from": "admin/0/Eigene/Pool/Change_", "fromt": "str", "to": "", "tot": "str" } ], "action": "", "property": "", "from": "", "to": "", "reg": false, "x": 474.02344512939453, "y": 773.0391502380371, "wires": [ [ "880909c2.bc7478" ] ] }, { "id": "63fa34f5.6bc9cc", "type": "ioBroker in", "z": "aca75de6.d3a82", "name": "Change_Automatik", "topic": "admin.0.Eigene.Pool.Change_Automatik", "payloadType": "value", "onlyack": "", "func": "all", "gap": "", "x": 193.0234375, "y": 523.0390739440918, "wires": [ [ "5bd55717.1388d8" ] ] }, { "id": "cc0f415c.25d71", "type": "ioBroker in", "z": "aca75de6.d3a82", "name": "Change_P2PoolPumpe", "topic": "admin.0.Eigene.Pool.Change_P2PoolPumpe", "payloadType": "value", "onlyack": "", "func": "all", "gap": "", "x": 181.0234375, "y": 764.0390625, "wires": [ [ "5bd55717.1388d8" ] ] }, { "id": "18454efa.588f31", "type": "ioBroker in", "z": "aca75de6.d3a82", "name": "Change_PoolSollTemp", "topic": "admin.0.Eigene.Pool.Change_PoolSollTemp", "payloadType": "value", "onlyack": "", "func": "all", "gap": "", "x": 185.27333068847656, "y": 818.6717948913574, "wires": [ [ "5bd55717.1388d8" ] ] }, { "id": "4a86fdf1.13acb4", "type": "ioBroker in", "z": "aca75de6.d3a82", "name": "Change_P1SolarPumpe", "topic": "admin.0.Eigene.Pool.Change_P1SolarPumpe", "payloadType": "value", "onlyack": "", "func": "all", "gap": "", "x": 174.2732696533203, "y": 709.6717185974121, "wires": [ [ "5bd55717.1388d8" ] ] }, { "id": "39a7e1ea.0064ee", "type": "ioBroker in", "z": "aca75de6.d3a82", "name": "Change_minMessungenAnzahl", "topic": "admin.0.Eigene.Pool.Change_minMessungenAnzahl", "payloadType": "value", "onlyack": "", "func": "all", "gap": "", "x": 171.0234375, "y": 930.0390739440918, "wires": [ [ "5bd55717.1388d8" ] ] }, { "id": "630e44a.891eabc", "type": "ioBroker in", "z": "aca75de6.d3a82", "name": "Change_minimaldifferenz", "topic": "admin.0.Eigene.Pool.Change_minimaldifferenz", "payloadType": "value", "onlyack": "", "func": "all", "gap": "", "x": 185.27333068847656, "y": 986.6717948913574, "wires": [ [ "5bd55717.1388d8" ] ] }, { "id": "9ba23aa1.01fe68", "type": "ioBroker in", "z": "aca75de6.d3a82", "name": "Change_SollSperTakte", "topic": "admin.0.Eigene.Pool.Change_SollSperTakte", "payloadType": "value", "onlyack": "", "func": "all", "gap": "", "x": 194.2732696533203, "y": 870.6717643737793, "wires": [ [ "5bd55717.1388d8" ] ] }, { "id": "c8d42c65.ffb99", "type": "json", "z": "aca75de6.d3a82", "name": "", "property": "payload", "action": "str", "pretty": false, "x": 976.0195693969727, "y": 635.753927230835, "wires": [ [ "a1920200.7f4e4" ] ] }, { "id": "a1920200.7f4e4", "type": "function", "z": "aca75de6.d3a82", "name": "\\n - Line Feed anfügren", "func": "msg.payload = msg.payload+\"\\n\"; \nreturn msg;", "outputs": 1, "noerr": 0, "x": 1170.8906631469727, "y": 710.648458480835, "wires": [ [ "9406678e.0446a8", "5ec56b41.f215c4" ] ] }, { "id": "c6e3ab46.9b7588", "type": "serial-port", "z": "", "serialport": "/dev/ttyUSB0", "serialbaud": "19200", "databits": "8", "parity": "none", "stopbits": "1", "newline": "\\n", "bin": "false", "out": "char", "addchar": false } ]
  • Stromverbrauch "Smartmeter" -> SonOff -> Anzeige Vis

    Verschoben
    1
    4
    0 Stimmen
    1 Beiträge
    746 Aufrufe
    Niemand hat geantwortet
  • Blitzer auslesen von https://osthessen-blitzer.de/

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    689 Aufrufe
    bahnuhrB
    Hat denn keiner eine Idee wie man dies machen könnte. mfg Dieter
  • Globale "instance" Variable

    Verschoben
    5
    0 Stimmen
    5 Beiträge
    445 Aufrufe
    blauholstenB
    Ja ist aktiv. Iobroker wurde vorhin komplett neu gestartet, nachdem mir das auffiel. Wollte eigentlich das feuchte Skript Mal ausprobieren, dabei viel mir durch die Errors logs auf das das anscheinend nicht geht.
  • Objekte in Blockly und JS erzeugen

    Verschoben
    7
    0 Stimmen
    7 Beiträge
    6k Aufrufe
    umbmU
    Danke, jetzt ist es gelöst! Und diese Funktionen und Blöcke bekommt man nur durch Import des "Quellcodes" in Blockly eingebunden, oder?
  • [Erledigt] Aktuellen Tag des Jahres errechnen

    Verschoben
    7
    0 Stimmen
    7 Beiträge
    2k Aufrufe
    Z
    Danke, dann schaue ich mal bei mir
  • Frage: weitere Nodes installieren

    Verschoben
    5
    0 Stimmen
    5 Beiträge
    2k Aufrufe
    A
    Hallo Pix, das Thema ist zwar schon ein paar Tage alt allerdings komm ich einfach nicht weiter wie ich bei Fitbit eine App erstelle. Ich befürchte ich suche einfach nach den falschen Key Words. Im Node habe ich Fitbit hinzugefügt und hänge jetzt bei der Verbindung mit dem Fitbit Account. Kannst du mir einen Tipp geben wie du es damals realisiert hast. Danke Gruß Ralf
  • Bat Datei ausführen möglich?

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    815 Aufrufe
    G
    Ja, geht. Ich mache das mit dem exec-Node. Da kannst Du den Konsolenbefehl direkt eingeben. Je nachdem wo sich die exe oder bat Datei befindet musst Du ggf. noch den Pfad mit eintragen. [image: 3639_screen1.jpg] [image: 3639_screen2.jpg]
  • Werte von Webseite speichern

    Verschoben
    9
    1
    0 Stimmen
    9 Beiträge
    1k Aufrufe
    B
    Bin jetzt eigentlich am Ziel. Ich bin jetzt wieder auf die XML Variante direkt vom RMV gewechselt, aber erstmal bei node red geblieben. Das Ergebniss: [image: 1446_node_red_rmv.png] [ { "id": "c2e8a228.ce75a", "type": "inject", "z": "6214dd4e.ed2b74", "name": "manueller Start", "topic": "", "payload": "", "payloadType": "date", "repeat": "", "crontab": "", "once": false, "onceDelay": 0.1, "x": 160, "y": 200, "wires": [ [ "9748880f.17aa98" ] ] }, { "id": "9b30d083.a4886", "type": "xml", "z": "6214dd4e.ed2b74", "name": "XML -> Objects", "property": "payload", "attr": "", "chr": "", "x": 600, "y": 200, "wires": [ [ "5a537dae.e837a4", "11667978.787987", "956de415.5de428", "c997de37.9d9bd", "fa59f000.66649", "7f6fef3e.45c23", "2a81bd77.3b4fa2" ] ] }, { "id": "5a537dae.e837a4", "type": "function", "z": "6214dd4e.ed2b74", "name": "Abfahrt 0", "func": "msg.payload = msg.payload.ResC.SBRes[0].JourneyList[0].Journey[0].MainStop[0].BasicStop[0].Dep[0].Time\nreturn msg;", "outputs": 1, "noerr": 0, "x": 860, "y": 60, "wires": [ [ "2d94d037.f99f1" ] ] }, { "id": "11667978.787987", "type": "function", "z": "6214dd4e.ed2b74", "name": "Abfahrt 1", "func": "msg.payload = msg.payload.ResC.SBRes[0].JourneyList[0].Journey[1].MainStop[0].BasicStop[0].Dep[0].Time\nreturn msg;", "outputs": 1, "noerr": 0, "x": 860, "y": 120, "wires": [ [ "899471ca.19f5b" ] ] }, { "id": "956de415.5de428", "type": "function", "z": "6214dd4e.ed2b74", "name": "Abfahrt 2", "func": "msg.payload = msg.payload.ResC.SBRes[0].JourneyList[0].Journey[2].MainStop[0].BasicStop[0].Dep[0].Time\nreturn msg;", "outputs": 1, "noerr": 0, "x": 860, "y": 180, "wires": [ [ "b46de57a.c2c608" ] ] }, { "id": "9748880f.17aa98", "type": "http request", "z": "6214dd4e.ed2b74", "name": "Abfrage RMV", "method": "GET", "ret": "txt", "url": "https://www.rmv.de/auskunft/bin/jp/stboard.exe/dn?L=vs_anzeigetafel&cfgfile=FrankfurtM_3001501_2055304888&outputMode=xml&start=yes&output=xml&", "tls": "", "x": 360, "y": 200, "wires": [ [ "9b30d083.a4886" ] ] }, { "id": "2d94d037.f99f1", "type": "ioBroker out", "z": "6214dd4e.ed2b74", "name": "Richtung Konstablerwache 0", "topic": "javascript.0.RMV.Departure.Guenthersburgpark.to_Konstablerwache.Departure0", "ack": "true", "autoCreate": "false", "x": 1200, "y": 60, "wires": [] }, { "id": "899471ca.19f5b", "type": "ioBroker out", "z": "6214dd4e.ed2b74", "name": "Richtung Konstablerwache 1", "topic": "javascript.0.RMV.Departure.Guenthersburgpark.to_Konstablerwache.Departure1", "ack": "true", "autoCreate": "false", "x": 1200, "y": 120, "wires": [] }, { "id": "b46de57a.c2c608", "type": "ioBroker out", "z": "6214dd4e.ed2b74", "name": "Richtung Konstablerwache 2", "topic": "javascript.0.RMV.Departure.Guenthersburgpark.to_Konstablerwache.Departure2", "ack": "true", "autoCreate": "false", "x": 1200, "y": 180, "wires": [] }, { "id": "c997de37.9d9bd", "type": "function", "z": "6214dd4e.ed2b74", "name": "Verspätung 0", "func": "msg.payload = msg.payload.ResC.SBRes[0].JourneyList[0].Journey[0].MainStop[0].BasicStop[0].Dep[0].Delay\nreturn msg;", "outputs": 1, "noerr": 0, "x": 870, "y": 240, "wires": [ [ "639eab37.461804" ] ] }, { "id": "fa59f000.66649", "type": "function", "z": "6214dd4e.ed2b74", "name": "Verspätung 1", "func": "msg.payload = msg.payload.ResC.SBRes[0].JourneyList[0].Journey[1].MainStop[0].BasicStop[0].Dep[0].Delay\nreturn msg;", "outputs": 1, "noerr": 0, "x": 870, "y": 300, "wires": [ [ "929155a7.7af118" ] ] }, { "id": "7f6fef3e.45c23", "type": "function", "z": "6214dd4e.ed2b74", "name": "Verspätung 2", "func": "msg.payload = msg.payload.ResC.SBRes[0].JourneyList[0].Journey[2].MainStop[0].BasicStop[0].Dep[0].Delay\nreturn msg;", "outputs": 1, "noerr": 0, "x": 870, "y": 360, "wires": [ [ "e5362d2f.4c73e", "c391efa6.a63cd" ] ] }, { "id": "639eab37.461804", "type": "ioBroker out", "z": "6214dd4e.ed2b74", "name": "Richtung Konstablerwache Verspätung 0", "topic": "javascript.0.RMV.Departure.Guenthersburgpark.to_Konstablerwache.Delay0", "ack": "true", "autoCreate": "false", "x": 1240, "y": 240, "wires": [] }, { "id": "929155a7.7af118", "type": "ioBroker out", "z": "6214dd4e.ed2b74", "name": "Richtung Konstablerwache Verspätung 1", "topic": "javascript.0.RMV.Departure.Guenthersburgpark.to_Konstablerwache.Delay1", "ack": "true", "autoCreate": "false", "x": 1240, "y": 300, "wires": [] }, { "id": "e5362d2f.4c73e", "type": "ioBroker out", "z": "6214dd4e.ed2b74", "name": "Richtung Konstablerwache Verspätung 2", "topic": "javascript.0.RMV.Departure.Guenthersburgpark.to_Konstablerwache.Delay2", "ack": "true", "autoCreate": "false", "x": 1240, "y": 360, "wires": [] }, { "id": "2a81bd77.3b4fa2", "type": "debug", "z": "6214dd4e.ed2b74", "name": "alles als Objekte / Arrays", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "x": 910, "y": 520, "wires": [] }, { "id": "c391efa6.a63cd", "type": "debug", "z": "6214dd4e.ed2b74", "name": "nur Wert Verspätung 2", "active": true, "tosidebar": true, "console": false, "tostatus": false, "complete": "payload", "x": 1180, "y": 520, "wires": [] } ] Funktioniert einwandfrei. Mal schauen ob ich noch Lust habe es als JavaScript zu versuchen… Grüße, Balu
  • (Blocky) Trigger aktualisiert oder Ist wahr

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    520 Aufrufe
    DutchmanD
    Wie gesagt es kommt drauf an was du triggerst.. Soll ein timer ausgelöst werden welche sich resetet wenn der Wert fals wird Oder eine lampe bei Bewegung an, und bei keiner Bewegung nach x Zeit aus ? Dan benötigst du sowohl den Wert true als false in deiner If Abfrage im Script und musst du auf aktualisiere triggern. Willst du nur einmal was auslösen reicht triggeren auf wahr Sent from my iPhone using Tapatalk
  • Blockly Chromecast-> Sonoff

    Verschoben
    2
    1
    0 Stimmen
    2 Beiträge
    414 Aufrufe
    LurchiL
    Habs, Merci für die Hilfe! 7688_unbenannt.png
  • Error meldung mitkriegen

    Verschoben
    7
    0 Stimmen
    7 Beiträge
    676 Aufrufe
    wendy2702W
    Hi, hat hier vielleicht jemand eine Lösung zu gefunden? Ich müsste von Zeit zu Zeit meinen Javascript Adapter neu starten weil der Serial Port sich weg hängt.
  • Script SONOFF 10A - SONOFF Touch - Alexa

    Verschoben
    13
    1
    0 Stimmen
    13 Beiträge
    946 Aufrufe
    J
    Wenn man Java Script verstanden hat, dann sollte Blockly eigentlich Kindergarten sein, aber bist ja auch schon selber drauf gekommen, dass man das einfach beliebig erweitern kann :lol:
  • Broadlink Steckdose

    Verschoben
    4
    1
    0 Stimmen
    4 Beiträge
    497 Aufrufe
    E
    Top danke.
  • IoBroker Zeitschaltung über VIS (meine Idee, der Gedanke dazu)

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    618 Aufrufe
    A
    Hey thomasSC, Hey Brati, erstmal danke für eure Links. Schaue ich mir dann gleich mal in Ruhe an. Was möchte ich Steuern: Tja ja, einige Sonoff Aktoren, AVM Fritz DECT, Homematic und Fibaro Z-Wave Zwischenstecker. Also die Bunte Palette. Na Logisch, ist für "uns" ist die Admin Oberfläche da. Aber andere SmartHome Hersteller haben Android Apps. Die so einiges an Funktionen über die Cloud beherschen. Ich möchte den leichten Umgang den anderen ioBroker Usern nicht vorenthalten. VIS ist für die Informationsausgabe da, aber auch zur einfachen (manuellen) Steuerung. Schalttimer und Schaltzeituhr fehlen da irgendwie noch. Alle anderen Komplexeren Aufgaben sollten auch im Admin Backend bleiben. Irgendwie möchte ich auch, trotz geringer Freizeit, dies verdammt gute Projekt (ioBroker) unterstützen. Mal schauen, wenn ich etwas brauchbares entwickle, dann landet es früher oder später auch hier im Forum. Ich gebe mir mühe… Ein rießen RESPEKT an alle fleißigen Entwickler. Die hier echt Herzblut und Liebe investieren. Fehlt nur noch die Marktverdrängung der Konkurenten. lach
  • Sonnenschutz funzt nicht, warum?(Blockly)

    Verschoben
    27
    1
    0 Stimmen
    27 Beiträge
    2k Aufrufe
    totocotonioT
    Hallo, so ich habe mal jetzt eure Tipps umgesetzt. Den Debug umgesetzt. Die Temperatur ist die Max Temperatur. Den Versatz habe ich jetzt mal auf -60min gesetzt. Mal sehen was morgen passiert. Hoffentlich wird es warm, obwohl es ja im Moment nicht so aussieht.
  • Ganz einfache Abschaltverzögerung für Anfänger

    Verschoben
    1
    0 Stimmen
    1 Beiträge
    330 Aufrufe
    Niemand hat geantwortet
  • Bitte um kleines Testscript

    Verschoben
    13
    0 Stimmen
    13 Beiträge
    1k Aufrufe
    F
    Hallo Paul53 Vielen Dank für deine Geduld und vor allem danke für das Skript. Habe es einfach nicht verstanden. Jetzt wo es funktioniert kann ich versuchen es zu verstehen was es macht. Gruß aus Keltern Fränki
  • [gelöst] Zum Schedule-Befehl

    Verschoben
    2
    0 Stimmen
    2 Beiträge
    329 Aufrufe
    BuZZyB
    ioBroker verwendet das NPM Paket node-schedule.. Dementsprechend kannst du hier Infos diesbezüglich finden: https://www.npmjs.com/package/node-sche … scheduling Gruß

168

Online

32.4k

Benutzer

81.4k

Themen

1.3m

Beiträge