Skip to content

Skripten / Logik

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

16.6k Themen 213.7k Beiträge

NEWS

Unterkategorien


  • Hilfe für Skripterstellung mit JavaScript

    2k 49k
    2k Themen
    49k Beiträge
    Pedder007P
    @Schimi Danke, läuft nun auch bei mir :-)
  • Hilfe für Skripterstellung mit Blockly

    7k 79k
    7k Themen
    79k Beiträge
    B
    Vielen Dank für die ausführliche Erklärung und die Links
  • Hilfe für Skripterstellung mit Node-RED

    953 13k
    953 Themen
    13k Beiträge
    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
  • Probleme mit Ausführen von Python Skript

    javascript
    4
    0 Stimmen
    4 Beiträge
    1k Aufrufe
    apollon77A
    @mrFenyx siehe Github issue Meross ... vllt hast Du ja zeit dennoch noch mitzuhelfen es in iobroker hinzubekommen
  • Gosund per Blockly steuern

    blockly
    8
    0 Stimmen
    8 Beiträge
    471 Aufrufe
    harrymH
    @SirSpielALot na dann ist ja alles gut ;)
  • Nach Update funkt. vergl. auf true nicht zigbee available

    javascript
    5
    0 Stimmen
    5 Beiträge
    258 Aufrufe
    AlCalzoneA
    @jmeister79 Oder noch einfacher: if (j) { ... }
  • [gelöst] Zufälliges Album/Hörspiel von Spotify abspielen

    javascript blockly multimedia
    5
    0 Stimmen
    5 Beiträge
    953 Aufrufe
    I
    Hallo @maddingamer, kannst Du vielleicht genauer erklären, wie Du das umgesetzt hast? Wie erstellst Du die Liste und spielst dann einen aus dieser Liste ab? Wo müssen welche Anpassungen vorgenommen werden? VG Max
  • [gelöst] JSON Attribute ermitteln

    javascript
    3
    2
    0 Stimmen
    3 Beiträge
    599 Aufrufe
    M
    @paul53 Hab es hinbekommen! Danke für die Hilfe.
  • [Gelöst] Widget String zu Alias

    multimedia blockly
    4
    0 Stimmen
    4 Beiträge
    461 Aufrufe
    waschbaerbauch75W
    Da der Adapter es nicht hergibt und ich kein Widget gefunden habe wird es nun über einen eigenen Datenpunkt und einem Blockly Skript gelöst. Danke an @d-mio ;)
  • [gelöst] Objektinhalt wird ungewollt überschrieben

    javascript
    3
    0 Stimmen
    3 Beiträge
    194 Aufrufe
    PeoplesP
    @paul53 Das wars! Ist mein erstes Script das ich auf userdata umstelle deswegen war es wahrscheinlich auch neu für mich :-) Update gemacht und alles passt. Danke Paul!
  • Broadlink im iobroker <-> Rückmeldung CCU ?

    node-red
    3
    1
    0 Stimmen
    3 Beiträge
    444 Aufrufe
    tr1plxT
    @paul53 Vielen lieben Dank. Funktioniert perfekt. Das fertige Skript sieht nun so aus: // Script - Deckenventilator über CCU/CloudMatic/Pocketcontrol // Forum-Thread: https://forum.iobroker.net/topic/36138/broadlink-im-iobroker-r%C3%BCckmeldung-ccu/2 // const idLicht = 'hm-rega.0.21674'/*Deckenventilator Licht*/; const idStufe = 'hm-rega.0.21675'/*Deckenventilator Stufe*/; on(idLicht, function(dp) { if(dp.state.val) setState('broadlink2.0.RM:RMPROPLUS-00-b8-e2.L.Deckenventilator Licht an'/*Deckenventilator Licht an*/, true); // Licht an else setState('broadlink2.0.RM:RMPROPLUS-00-b8-e2.L.Deckenventilator Licht aus'/*Deckenventilator Licht aus*/, true); // Licht aus }); on(idStufe, function(dp) { if(dp.state.val == 1) setState('broadlink2.0.RM:RMPROPLUS-00-b8-e2.L.Deckenventilator Stufe 1'/*Deckenventilator Stufe 1*/, true); // Stufe 1 else if(dp.state.val == 2) setState('broadlink2.0.RM:RMPROPLUS-00-b8-e2.L.Deckenventilator Stufe 2'/*Deckenventilator Stufe 2*/, true); // Stufe 2 else if(dp.state.val == 3) setState('broadlink2.0.RM:RMPROPLUS-00-b8-e2.L.Deckenventilator Stufe 3'/*Deckenventilator Stufe 3*/, true); // Stufe 3 else setState('broadlink2.0.RM:RMPROPLUS-00-b8-e2.L.Deckenventilator aus'/*Deckenventilator aus*/, true); // Aus }); Die Anbindung an CloudMatic und damit an Alexa funktioniert für die Variable "Deckenventilator Licht", weil sie boolean ist (true/false). Damit lässt sich also schon mal das Licht mit "Alexa, schalte Deckenventilator Licht ein/aus" schalten. Die Variable Deckenventilator Stufe taucht nicht auf, weil sie die Werteliste 0-3 enthält - ich habe mir hier mit einem Trick beholfen: Auf der CCU 4 Programme angelegt: [image: 1598378743792-a11aab5c-5b59-4d77-bc1c-3a9ec93eeff0-grafik.png] Die anderen Stufen analog. Nun kann man sagen "Alexa, schalte Deckenventilator Stufe 3 an" und die Systemvariable wird entsprechend befüllt. Da man beim Ausschalten (Stufe 0) aber nicht sagen will "Alexa, schalte Deckenventilator Stufe 0 ein" habe ich den Namen nur Deckenventilator genannt. So wird das Programm auch getriggert, wenn ich nun sage "Alexa, schalte Deckenventilator aus" Das wäre evtl. eleganter gegangen, aber ich bin nun am Ziel und alles funktioniert :-) Vielen Dank nochmal für die Hilfe [image: 1598378932839-412e8ec7-7d3f-40fd-acf0-cfec6ce791bc-grafik.png]
  • Verzweifele an einem Alias

    javascript
    17
    0 Stimmen
    17 Beiträge
    723 Aufrufe
    paul53P
    @haselchen sagte: Wäre value.power eine Möglichkeit für role? Da die Masseinheit "A" ist, sollte role value.current sein.
  • Script einmalig ausführen bei dem Druck eines Buttons

    blockly
    5
    1
    0 Stimmen
    5 Beiträge
    516 Aufrufe
    R
    @AlCalzone Danke für den Hinweis.
  • I-Cal Eintrag an den Kalender schicken!?

    blockly communication
    3
    0 Stimmen
    3 Beiträge
    364 Aufrufe
    M
    @Homoran said in I-Cal Eintrag an den Kalender schicken!?: Nein Vielen dank für deine schnelle Anwort Homoran. Ist das nicht gewollt? oder wo steckt das Problem? Kann ich nicht auf meinem Rasp, wo iobroker läuft, irgendein Kalenderapp installieren und über diesen einen Eintrag senden? liebe grüße
  • Bewegungsmelder teilweise ohne Funktion

    blockly
    23
    1
    0 Stimmen
    23 Beiträge
    3k Aufrufe
    Z
    @rom23 said in Bewegungsmelder teilweise ohne Funktion: Hallo, danke noch mal für eure Bemühung. Ich habe noch einmal mein Script überarbeitet und habe eine Lösung gefunden. Habe einen virtuellen Schalter mit eingebaut, weil ich noch einen zweiten Kontakt zum Schalten gebraucht habe. Den Xiaomi Bewegungsmelder habe ich laut Anleitung auch noch umgebaut. Jetzt klappt es wunderbar. So hier nochmal mein Blockly: [image: 1581618959728-unbenannt.jpg] Hallo, das mit dem virtuellen schalter verstehe ich nicht, wozu wird der in deinem script benötigt??
  • [gelöst] kann Javascript Engine nicht aktualisieren

    javascript
    6
    0 Stimmen
    6 Beiträge
    562 Aufrufe
    GlasfaserG
    @keinstein77 sagte in kann Javascript Engine nicht aktualisieren: hat super funktioniert DANKE!! sehr gerne ;) dann setze das Thema auf gelöst .
  • Blockly Textbereiche ausschneiden

    Verschoben
    9
    1
    0 Stimmen
    9 Beiträge
    2k Aufrufe
    M
    @nik82 Ok. Sorry, hätte ich auch selber drauf kommen können.
  • aufeinander folgende HTTP Abfragen mit request

    javascript
    3
    0 Stimmen
    3 Beiträge
    289 Aufrufe
    moelskiM
    @Jey-Cee Ok habe ich mir mal kurz angesehen. Das scheint genau meine Lösung zu sein. Danke für den Tip! Grüße Dominik
  • [gelöst] Unifi Voucher per Telegram senden

    blockly javascript communication
    8
    0 Stimmen
    8 Beiträge
    789 Aufrufe
    M
    @liv-in-sky Megageil! Vielen, vielen Dank! Das tut genau das, was ich haben wollte!!!
  • Digitaluhr Anpassungen (s. Bild), teilweise gelöst.

    template
    6
    1
    0 Stimmen
    6 Beiträge
    686 Aufrufe
    M
    @Soundy Also die Feinheiten beherrsche ich noch nicht. Somit kann ich da nicht weiterhelfen.
  • [gelöst] Subscription auf Sub-Channel Änderung?

    javascript
    6
    0 Stimmen
    6 Beiträge
    479 Aufrufe
    moelskiM
    Hmm ok, dann macht es eher Sinn wenn ich die Liste einfach alle 10 Minuten neu erstellen lasse. Denn die wichtigen Devices in der Spotify Liste sind eh fest. Es geht mir nur um das entfernen der Browser Devices wenn die nicht mehr verfügbar sind. Die Lösung wäre dann diese: ListScheduler = schedule('*/10 * * * *', refreshDeviceList); Nicht ganz so elegant, aber für meine Zwecke ausreichend. Danke trotzdem für die Hilfe. Grüße Dominik
  • getState().val

    javascript
    3
    0 Stimmen
    3 Beiträge
    1k Aufrufe
    arteckA
    @kottdie sagte in getState().val: let test = getState('tradfri.0.B-65541.batteryPercentage').val; //definieren wir eine variable und setzten diese direkt setState('0_userdata.0.testwert', test ); // setzte diese in ein state ein console.log(test); // schreibe es auf die konsole
  • Wie Änderungen bei Stromzufuhr erkennen/triggern?

    javascript
    3
    0 Stimmen
    3 Beiträge
    387 Aufrufe
    paul53P
    @Dado sagte: deconz.0.Lights.xx.reachable aber das scheint nicht immer aktuell zu sein, sprich ist true auch wenn die Funzel ausgeschaltet wurde. Eigentlich sollte "reachable" dafür da sein ? Was passiert mit "ack" von "reachable" nach setState("deconz.0.Lights.15.reachable", true); im Falle von stromlos und im Falle von "unter Strom" ?

618

Online

32.7k

Benutzer

82.4k

Themen

1.3m

Beiträge