Weiter zum Inhalt

Skripten / Logik

16.7k Themen 215.9k Beiträge

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

NEWS

Unterkategorien


  • Hilfe für Skripterstellung mit JavaScript

    3k 50k
    3k Themen
    50k Beiträge
    maxclaudiM
    @Daniel-8 sagte: Aber beides braucht man ja eigentlich nicht... Richtig, beides benötigt man nicht. @Daniel-8 sagte: ....oder gibt es da einen Vorteil? Vorteile mit Cloud-Ersatz-Broker MQTT: MQTT ist komfortabler und schneller, weil es dann nicht reglementiert ist, wie das offizielle lokale MQTT. Es bietet viel mächtigere Möglichkeiten. (Was auch eine Gefahr birgt, wenn man nicht weiß, welche Topics beschrieben werden, was sie als Antwort erwarten usw.) MQTT ist schneller, weil nicht gepollt werden muss. Wenn Werte sich ändern, wird es automatisch published. Man muss nur Änderungen triggern und nicht alle x Sek. die Werte abfragen. WiFi / HTTP(S) wird entlastet. Man bekommt alle wahren Topics und kann Werte setzen, die sonst nicht gesetzt werden können. (Birgt auch eine Gefahr in sich, wenn man wild experimentiert oder Werte setzt, die normaler Weise für Funktionen bestimmt sind, die die Cloud nur im HEMS setzen würde. Am besten man nutzt nur zum Schreiben "properties" wie mit zenSDK.) Vorteil von zenSDK mit Cloud-Ersatz-Broker: Bei der Umstellung erst mal alles bleiben kann wie es ist und läuft dann wirklich lokal. Schneller wie bisher, weil es keine Cloud gibt, die permanent irgendwas abfragen, senden oder "dazwischen funken" kann. zenSDK prüft immer wieder, ob die Verbindung zur Cloud besteht. Das ist sie ja – in Form eines lokalen Brokers. Kann ich es riskieren mit dem direkten mqtt Adapter vom iobroker den Speicher auf lokal umzustellen? Müsste man erst testen. Ich verwende nur mosquitto. Ausgereift, zuverlässig, schlank, ressourcenarm und schnell.. @Daniel-8 sagte: Aber dafür muss ich mir mal Zeit nehmen. Das geht nicht mehr vor dem Urlaub. Schönen Urlaub Deiner Familie und Dir.
  • Hilfe für Skripterstellung mit Blockly

    7k 80k
    7k Themen
    80k Beiträge
    W
    erledigt
  • Hilfe für Skripterstellung mit Node-RED

    964 13k
    964 Themen
    13k Beiträge
    A
    @OliverIO ich kopiere morgen mal die Meldungen die mir Node-Red auswirft. Es steht meistens, ....ist kein String....
  • (gelöst) Über Java ( Blockly ) im Multiost datei auf dem zweiten Pi öffnen

    Verschoben
    5
    0 Stimmen
    5 Beiträge
    1k Aufrufe
    D
    Knutsch ich danke dir vielmals. ich hatte es so ähnlich leihen haft versucht. Mit dementsprechenden nicht erfolg ^^ vor allem auch noch mit Fehler Antwort ist das Cool ^^ Danke createState('LedringPi2ALAN', false, { type: 'boolean', read: true, write: true }); on({id: 'LedringPi2ALAN', val: true}, function(dp) { exec('python3 /home/pi/codes/ledring.py ALAN', function(err, stderr, stdout) { if(err) log('Fehler Pythonstart: ' + stderr, 'error'); else log('Ergebnis: ' + stdout); setState(dp.id, false); }); });
  • [gelöst]_Blockly Script - Fehlermeldung im Log

    Verschoben
    53
    1
    0 Stimmen
    53 Beiträge
    10k Aufrufe
    BBTownB
    @BBTown: @rantanplan: @BBTown: Das ist Hintergrund meiner "Log-Level" Philosophie und Argumentation. 8-) Wir bleibe trotzdem Freunde! :D 8-) Aber 100%ig :lol: ` ich kann ja deine Sorge bzgl. zusätzlichem support bei unbedachten Einstellungen/Änderungen gut verstehen !!!
  • Status von Aufzählung in JS Regelmäßig abfragen

    Verschoben
    4
    2
    0 Stimmen
    4 Beiträge
    2k Aufrufe
    N
    Und hier noch mein halbfertiger Code für die Nachwelt ;) Mein Schädel brummt - reicht für heute :lol: createState('Fensterkontakt.Offen.Anzahl', 0); createState('Fensterkontakt.Offen.Text', ''); createState('Fensterkontakt.Gekippt.Anzahl', 0); createState('Fensterkontakt.Gekippt.Text', ''); var fensterkontakt = $('state(functions="fensterkontakt")'); setInterval(function () { var AnzahlOffen = 0; var TextOffen = 'Folgende Fenster sind offen: '; var AnzahlGekippt = 0; var TextGekippt = 'Folgende Fenster sind gekippt: '; fensterkontakt.each(function(id) { // 0 = Geschlossen // 1 = Offen // 2 = Gekippt var val = getState(id).val; var obj = getObject(id); if(val > 0) { if(val == 1) { AnzahlOffen++; TextOffen = TextOffen + obj.common.name + ', '; } else if(val == 2) { AnzahlGekippt++; TextGekippt = TextGekippt + obj.common.name + ', '; } } }); setState("Fensterkontakt.Offen.Anzahl", AnzahlOffen); setState("Fensterkontakt.Offen.Text", TextOffen.substring(0, TextOffen.length - 2)); setState("Fensterkontakt.Gekippt.Anzahl", AnzahlGekippt); setState("Fensterkontakt.Gekippt.Text", TextGekippt.substring(0, TextGekippt.length - 2)); }, 1000);
  • JSON File Auswerten

    Verschoben
    12
    0 Stimmen
    12 Beiträge
    3k Aufrufe
    dietlmanD
    @ALLE Vielen Dank für eure Hilfe. Funktioniert perfekt jetzt, hab wieder etwas dazugelernt :-) LG Duke
  • [Gelöst] Blockly Lampen nach Dämmerungswert schalten "HM-Sen-MDIR-O"

    Verschoben
    15
    0 Stimmen
    15 Beiträge
    2k Aufrufe
    K
    wollte kurz noch hier Erfolg vermelden.. :mrgreen: Ich habe noch ein Zeitglied eingebaut! EDIT: den Heligkeitswert stelle ich noch auf 140 um. 1526_unbenannt1.png
  • Licht AN Warnung (Script Hilfe)

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    1k Aufrufe
    D
    Läuft nun seit Tagen DANKE!!!!!
  • [gelöst] Blockly Anfängerfrage - Scripte starten nicht

    Verschoben
    5
    1
    0 Stimmen
    5 Beiträge
    2k Aufrufe
    lobomauL
    @weimaraner: Darf ich mich hier mal mit einer Frage einklinken? Wo ist eigentlich der Unterschied bei den beiden triggern? Welche Vor- oder Nachteile haben die zueinander? Machen die nicht das Selbe? Ich wollte das immer schonmal fragen. Grüße Andreas ` Ja, machen das gleiche. Ich nehme immer die linke Version, da kann man es schnell um weitere Trigger erweitern.
  • Blockly nested trigger und die stop Funktion

    Verschoben
    9
    1
    0 Stimmen
    9 Beiträge
    4k Aufrufe
    D
    Hi Jungs, @rantanplan: Richtig: Falls (Wert von presence… = unwahr) und (Wert von lenovo... = unwahr) ` DAS WARS … wie dämlich von mir! :roll: :oops: Danke! :) [image: 3143_blockly_trigger_4.png] @BBTown: Kannst Du die 4 von dir verwendeten Objekte einmal kurz beschreiben? was ist "movement"? >>> Mein Bewegungssensor was ist "HM-Sec …"? >>> Mein Türsensor was ist "Lenovo …"? >>> Mein Handy via Ping was ist "presence …"? >>> Mein RFID Reader Wofür benötigst/willst Du das "timeout" ? >>> Nur damit ich nicht zugespamt werde ` Das debugging werde ich dann wohl des öfteren mal zu rate ziehen. Grüße
  • Neuling braucht hilfe :D

    Verschoben
    2
    0 Stimmen
    2 Beiträge
    832 Aufrufe
    BuZZyB
    Herzlich Willkommen du Neuling.. Jeder hat mal klein angefangen! ;) Als erstes solltest du als Überschrift immer etwas "Aussagekräftiges" wählen. "Neuling braucht hilfe" ist keine gute Überschrift. ;) So wie du es in diesem Thread gemacht hast: "mit ioBroker PS4 einschalten" http://forum.iobroker.net/viewtopic.php?f=8&t=7715 P.s.: in ioBroker/Javascript kannst mit mit dem einfachen Befehl```` exec('befehl'); ein Befehl auf der Kommandozeile ausführen lassen. ;) Gruß
  • Blockly - Falls Bewegung nochmal erkannt, dann erneut runterzählen

    Verschoben
    23
    1
    0 Stimmen
    23 Beiträge
    4k Aufrufe
    K
    so schlimm ist es nicht… es ist deshalb in meinem Fall so kompliziert, da ich den Sonoff über den vorhandenen Wandschalter schalten möchte. Wenn das Teil so wie Homematic fest verdrahtet were, so ist es genau so Problemlos wie bei den Homematic Komponenten. Ich hätte noch einen Homematic Wandsender dazu verwenden können, dies were auch gegangen. Ich müßte nur noch den vorhandenen Wandtaster gegen den HM-PB-2-WM55 tauschen müßen. Ein Script hätte den Rest getan. Dafür habe ich keine weiteren Kosten gehabt :D
  • Achtung! NPM-Modul pi-temperature wurde geändert

    Verschoben
    1
    0 Stimmen
    1 Beiträge
    615 Aufrufe
    Niemand hat geantwortet
  • [Frage] erste blockly Schritte LED schaltet aber nicht

    Verschoben
    21
    2
    0 Stimmen
    21 Beiträge
    3k Aufrufe
    HomoranH
    @weimaraner: daß man Dank des ständigen triggers das Licht auch nicht mehr ausschalten kann ` Naja, wenn du das gut triffst bleibt das Licht immerhin 59 Sekunden aus :lol: Gruß Rainer
  • [gelöst] Blockly - Stehlampe (Hue) einschalten + Anwesenheit + Sunset

    Verschoben
    15
    1
    0 Stimmen
    15 Beiträge
    5k Aufrufe
    rantanplanR
    Prima. Setzt Du bitte ein [gelöst] in den Betreff Deines ersten Eintrags. Grüße
  • Zeit der letzten Aktualisierung

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    782 Aufrufe
    F
    Ok danke. Ich dachte man könnte als was mit dem on Befehl und dem time stamp machen. Der Gefrierschrank läuft nur wenn PV Oder bhkw läuft oder wenn zu warm.
  • Adresse in Längen und Breitengraden umwandeln

    Verschoben
    8
    0 Stimmen
    8 Beiträge
    3k Aufrufe
    H
    Vielen Dank für die schnelle Hilfe. Das hat schon mal super geklappt.
  • Schalter von Visu ins Script

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    910 Aufrufe
    N
    Moin, du kannst bei den Objekten einfach mit dem "+" Symbol einen neuen Datenpunkt erstellen. Den kannst du dann beliebig verwenden. Zur besseren Übersicht haben ich solche selbst erzeigten Datenpunkte in einem extra Ordner erstellt.
  • IF Schleife vorzeitig abbrechen

    Verschoben
    15
    0 Stimmen
    15 Beiträge
    3k Aufrufe
    bahnuhrB
    Ist eigentlich logisch, dass der PC dann wieder runter fährt, denn der Ping wechselt ja auf true. Ich glaube ich weiß langsam wo dein Problem liegt. Du willst doch den HTPC ein- und ausschalten, richtig ? Und das willst du doch per Script erreichen. Nun musst du noch einen Auslöser basteln der dann von ein auf aus, etc. wechselt. Dies kann aber nicht der Ping für den PC sein !!!!! Denn (wie du oben ja schreibst) läuft das script (true) ja wenn du manuell den pc einschaltest. Ist ja auch richtig denn der ping wechsel ja dann auf true. Du brauchst eine unabhängige Variable ! Folgende Vorgehensweise: 1. Erstelle bei objekte eine Variable, z.B. "javascript.0.Status.HTPC" von Typ boolean (also true und false). 2. In vis legst du dann ein widget z.B. vom Typ "basic-bulb on/off" an. Dieses widget zeigt dir dann den Zustand true und false an. Und dieses kannst du dann in vis per Maus umschalten. 3. o.g. Script ändern bei on Und zwar in Zeile 1 nicht der ping sondern die neue Variable. on({id: 'javascript.0.Status.HTPC', change: 'ne'}, function(obj) { … Dann gehts. mfg
  • Briefkasten Anzeige VIS mit Xiaomi Tür-Magnetkontakt

    Verschoben
    10
    0 Stimmen
    10 Beiträge
    3k Aufrufe
    F
    Fotos bitte ;)
  • Fehler beim Starten eines Java Scripts Hilfe.

    Verschoben
    2
    0 Stimmen
    2 Beiträge
    953 Aufrufe
    K
    Hat sich erledigt. Hier ist eine Lösung zu finden! http://forum.iobroker.net/viewtopic.php?t=7556
  • Frage an Java Experten zum Script.

    Verschoben
    12
    0 Stimmen
    12 Beiträge
    2k Aufrufe
    AlCalzoneA
    @knopers1: Du hast ein Beispiel jetzt mit sieben Stellen angegeben. Stimmt das? ` Nein, da ist kein Leerzeichen zwischen "*", "/" und "5": 4 */5 * * * * ^ ^ ^ ^ ^ 5 Leerzeichen, 6 Stellen

231

Online

33.0k

Benutzer

83.6k

Themen

1.3m

Beiträge