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
    G
    @Waly_de da fehlt der Anfang irgendwie ;-) Schaue ich mir wie gesagt man an. Was nutzt Du sonst als "Entwicklungsumgebung"? Testest Du direkt in iobroker mit debug-Ausgaben oder gibt's da noch einen anderen Weg? ("echtes" debugging?)
  • Hilfe für Skripterstellung mit Blockly

    7k 79k
    7k Themen
    79k Beiträge
    T
    @ste_glei sagte in [Sonos Adapter // Radiosender // Lautstärke] nein, bei mir sind auch mehrere Favoriten in der Liste. Einfach aus der Liste den Sender kopieren (aufpassen auf das Leerzeichen davor). Ich würde nach der Prüfung mal einen DEGUG-output mit "SONOS" setzen und schauen ob deine Prüfung auch ein "wahr" ausgibt. Wenn ich die Wenn-Prüfung heraus nehme, scheint es zu funktionieren. Das würde ich aber gern verbessern, da der Radiosender nicht nochmals einstellt werden muss, wenn er bereits eingestellt worden ist. Wie meinst du das mit DEBUG-output mit "SONOS im Detail?
  • 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
  • [gelöst]Klingel lässt sich abschalten - wie verhindern?

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    352 Aufrufe
    ChaotC
    :o Oh Mann - ganz einfach! Danke dir. Irgendwie kann ich bei der Hitze nicht mehr richtig denken…...
  • Abwesendheit und benachrichtigung über Pushover

    Verschoben
    2
    1
    0 Stimmen
    2 Beiträge
    301 Aufrufe
    R
    Einfach in den „mache“ Bereich mit einfügen, dort wo du auch alle Geräte abschaltest.
  • Anwesenheit über Radar

    Verschoben
    5
    0 Stimmen
    5 Beiträge
    1k Aufrufe
    T
    Danke für die Optimierung. Werde da zukünftig drauf achten. MFG
  • Licht schaltet sich nicht mehr aus.

    Verschoben
    9
    1
    0 Stimmen
    9 Beiträge
    765 Aufrufe
    M
    Hallo BWM gefunden. Wusste das mit der 2. Instanz nicht. Danke! Dadurch wird nun das Licht sogar schneller geschaltet, als das Homematic Licht am Dimmer ;) AAABBBBER: Das PRoblem bleibt bestehen, dass das Licht nicht ausgeht. Ich habe auch das Script mal ein bisschen geändert. Hat dennoch keinen Erfolg. [image: 6072_2018-08-05_09_12_47-iobroker.admin.png]
  • Aktuelle Leistung berechnen aus Homematic IEC Stromzähler Adapter

    Verschoben
    1
    1
    0 Stimmen
    1 Beiträge
    584 Aufrufe
    Niemand hat geantwortet
  • [Gelöst]Einbindung von Nuki Smarthome Schloss über simple.api

    Verschoben
    24
    0 Stimmen
    24 Beiträge
    5k Aufrufe
    W
    @Schatn: Hallo! Mit "setValueFromBody" wird bei mir der Datenpunkt bei jeder Änderung geschrieben. Die Callback URL lautet: http://192.168.178.41:8080/callback/add?url=http%3A%2F%2F192.168.178.111%3A8080%2FsetValueFromBody%2Fjavascript.0.NukiStatus&token=XXXXXXX ```` ` Danke, probiere ich alsbald aus [emoji106] Gesendet von meinem COL-L29 mit Tapatalk
  • Http request

    Verschoben
    5
    0 Stimmen
    5 Beiträge
    688 Aufrufe
    L
    ESPEasy kann ich nicht verwenden. Es geht nicht nur um ein/aus schalten. Der ESP steuert die Rollos über ein proprietäres serielles Protokoll an. Ja, alles grün. Der Trigger wird ausgeführt. Ich hab testweise noch einen Variable in Fhem (läuft auf einem anderen Raspberry) ändern lassen, das hat funktioniert. Auch habe ich mal in "request" die URL vom PC zum "Packet Sender" eingegeben, dort ist es dann auch angekommen: Time: 7:48:56.673 TO: You:1313 From: 192.168.178.65:38246 Method: TCP Error: ASCII: GET /msg?msg=S HTTP/1.1\r\nhost: 192.168.178.37:1313\r\nauthorization: Basic YWRtaW46MTcwNzYx\r\nConnection: close\r\n\r\n HEX: 47 45 54 20 2F 6D 73 67 3F 6D 73 67 3D 53 20 48 54 54 50 2F 31 2E 31 0D 0A 68 6F 73 74 3A 20 31 39 32 2E 31 36 38 2E 31 37 38 2E 33 37 3A 31 33 31 33 0D 0A 61 75 74 68 6F 72 69 7A 61 74 69 6F 6E 3A 20 42 61 73 69 63 20 59 57 52 74 61 57 34 36 4D 54 63 77 4E 7A 59 78 0D 0A 43 6F 6E 6E 65 63 74 69 6F 6E 3A 20 63 6C 6F 73 65 0D 0A 0D 0A hier zum Vergleich die "Umleitung" wie sie von Fhem kommt und funktioniert: Time: 7:43:07.366 TO: You:1313 From: 192.168.178.25:59312 Method: TCP Error: ASCII: GET /msg?msg=S HTTP/1.0\r\nHost: 192.168.178.37:1313\r\nUser-Agent: fhem\r\nAuthorization: Basic YWRtaW46MTcwNzYx\r\n\r\n HEX: 47 45 54 20 2F 6D 73 67 3F 6D 73 67 3D 53 20 48 54 54 50 2F 31 2E 30 0D 0A 48 6F 73 74 3A 20 31 39 32 2E 31 36 38 2E 31 37 38 2E 33 37 3A 31 33 31 33 0D 0A 55 73 65 72 2D 41 67 65 6E 74 3A 20 66 68 65 6D 0D 0A 41 75 74 68 6F 72 69 7A 61 74 69 6F 6E 3A 20 42 61 73 69 63 20 59 57 52 74 61 57 34 36 4D 54 63 77 4E 7A 59 78 0D 0A 0D 0A Kann es sein, weil im ersten Fall "Connection: close" mitgesendet wird? Wie kann man das verhindern? Gruß Willi
  • Blocky verkleinern möglich ?

    Verschoben
    4
    1
    0 Stimmen
    4 Beiträge
    486 Aufrufe
    F
    Bin blutiger anfänger mit Blocky .. bei der CCU ist das alles Kinderleicht :roll: Da aber jetzt jeden Tag mittlerweile die CCU einmal abschmiert soll alles IO machen und die CCU nurnoch als Sende und Empfangsmodul herhalten .. :mrgreen: Danke für euere Tipps
  • Türgriffüberwachung HM-Sec-RHS

    Verschoben
    11
    2
    0 Stimmen
    11 Beiträge
    1k Aufrufe
    AFiA
    Hi, funktioniert, somit war es wohl ein Funkproblem, dass mich aus der Bahn geworfen hat. Gruß AFi
  • Sonnenuntergang, Xiaomi Türsensor, Blockly

    Verschoben
    6
    1
    0 Stimmen
    6 Beiträge
    891 Aufrufe
    paul53P
    Weshalb prüfts Du den Wert des Datenpunktes is opend doppelt: Einmal mit falls value und dann nochmal mit falls Wert vom Objekt ID is opend == wahr ?
  • Node Red kann keine iobroker Objekte ändern

    Verschoben
    11
    0 Stimmen
    11 Beiträge
    1k Aufrufe
    P
    Hallo Appollon, die Node properties sehen so aus: [image: 8198_node.jpg] Der Schieberegler sieht so aus: [image: 8198_node2.jpg] Die Node Settings sind jeweils leer Lg Philipp
  • Popup bei Anruf über Fritzbox

    Verschoben
    16
    0 Stimmen
    16 Beiträge
    2k Aufrufe
    smartboartS
    Nice, gut zu wissen. Danke für die Infos…
  • Jährlichen Geburtstag über Alexa beglückwünschen lassen

    Verschoben
    7
    1
    0 Stimmen
    7 Beiträge
    2k Aufrufe
    L
    Ja, du kannst auch einfach das Datum & Uhrzeit von Heute in 3 Minuten nehmen / dann musst du nicht bis Morgen warten Gesendet von iPhone mit Tapatalk
  • Objekt Array Index ansprechen & "Button" für bool Objekt

    Verschoben
    9
    0 Stimmen
    9 Beiträge
    3k Aufrufe
    S
    Hallo, kann mir jemand sagen, wie man das Vis Widget „json Table“ verwenden kann. Ich möchte mit Hilfe von JavaScript im Iobroker ein Json-Object erzeugen und mit setstate unter Objecte ablegen. Die Id dieses Objectes möchte ich gerne im Widget „json table“ zur Anzeige verwenden. Hat jemand vielleicht mal ein Beispiel, wie ich mit JavaScript ein solches Object baue und mit setstate schreibe?
  • JavaScript-Adapter 3.7.0 - Editor: andere Fehlerbehandlung und Programmier-Best-Practice

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    454 Aufrufe
    MicM
    Danke für Deine Info und Ausführungen, das hilft sehr!
  • Tagesbericht gibt falsche Werte aus

    Verschoben
    1
    1
    0 Stimmen
    1 Beiträge
    428 Aufrufe
    Niemand hat geantwortet
  • Skript per API starten

    Verschoben
    1
    0 Stimmen
    1 Beiträge
    235 Aufrufe
    Niemand hat geantwortet
  • [GELÖST] Fehler bei Werteänderung von Datenpunkt.

    Verschoben
    6
    0 Stimmen
    6 Beiträge
    639 Aufrufe
    VardaaranV
    @paul53: Es fehlt noch die Deklaration der Variablen forcecreation, oder übersehe ich was ? var forcecreation = false; ```` ` Das waren nur "Code-Auszüge". Hier der gesamte Code: ! ```` // Startvariablen: // ----------------------------------------------------------------------------- ! var logOn = false; // Skript Logausgabe ein- (true) / ausschalten (false). Fehler werden immer ausgegeben. var forecreation = false; // Default: false. true: Datenpunkte werden überschrieben (wenn z.B. Bezeichnungen geändert wurden) var http = require('http'); // Node Module http verwenden var RQoptions = { // URL, die abgefragt, bzw. gesendet werden soll host: 'ZENSIERT', path: '/params.json', port: 80, auth: 'ZENSIERT', method: 'GET', headers: { 'User-Agent' : 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36', 'content-Type': 'text/plain', 'Accept' : 'application/json, text/javascript' } }; var stringMARKERgesamt = "0000000000000000000000000000000000000000000000000000000000000000"; var MarkerWERT; // Wert LMAir1-Marker var ccuMarker; // Pfad-CCU-Variable. ! // Datenpunkte anlegen: // ----------------------------------------------------------------------------- // Marker: var idMarker1 = "variablen.lmair1.01_pc-101"; // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird createState(idMarker1, 0, forecreation, { // Datenpunkt wird angelegt name: 'LMAir Marker 01', desc: 'PC-101-Marker von LMair1', type: 'boolean', def: false, role: 'value' }); var idMarker2 = "variablen.lmair1.02_tv"; // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird createState(idMarker2, 0, forecreation, { // Datenpunkt wird angelegt name: 'LMAir Marker 02', desc: 'TV-Marker von LMair1', type: 'boolean', def: false, role: 'value' }); var idMarker3 = "variablen.lmair1.03_reboot"; // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird createState(idMarker3, 0, forecreation, { // Datenpunkt wird angelegt name: 'LMAir Marker 03', desc: 'Reboot-Marker von LMair1', type: 'boolean', def: false, role: 'value' }); var idMarker4 = "variablen.lmair1.04_nacht"; // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird createState(idMarker4, 0, forecreation, { // Datenpunkt wird angelegt name: 'LMAir Marker 04', desc: 'Nacht-Marker von LMair1', type: 'boolean', def: false, role: 'value' }); var idMarker5 = "variablen.lmair1.05_daemmerung"; // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird createState(idMarker5, 0, forecreation, { // Datenpunkt wird angelegt name: 'LMAir Marker 05', desc: 'Dämmerungs-Marker von LMair1', type: 'boolean', def: false, role: 'value' }); var idMarker6 = "variablen.lmair1.06_tageslicht"; // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird createState(idMarker6, 0, forecreation, { // Datenpunkt wird angelegt name: 'LMAir Marker 06', desc: 'Tageslicht-Marker von LMair1', type: 'boolean', def: false, role: 'value' }); var idMarker7 = "variablen.lmair1.07_ruhemodus-arbeitszimmer"; // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird createState(idMarker7, 0, forecreation, { // Datenpunkt wird angelegt name: 'LMAir Marker 07', desc: 'Ruhemodus-Arbeitszimmer-Marker von LMair1', type: 'boolean', def: false, role: 'value' }); var idMarker8 = "variablen.lmair1.08_ruhemodus-schlafzimmer"; // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird createState(idMarker8, 0, forecreation, { // Datenpunkt wird angelegt name: 'LMAir Marker 08', desc: 'Ruhemodus-Schlafzimmer-Marker von LMair1', type: 'boolean', def: false, role: 'value' }); var idMarker9 = "variablen.lmair1.09_stromausfall"; // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird createState(idMarker9, 0, forecreation, { // Datenpunkt wird angelegt name: 'LMAir Marker 09', desc: 'Ruhemodus-Schlafzimmer-Marker von LMair1', type: 'boolean', def: false, role: 'value' }); var idMarker10 = "variablen.lmair1.10_deckenlampe-schlafzimmer"; // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird createState(idMarker10, 0, forecreation, { // Datenpunkt wird angelegt name: 'LMAir Marker 10', desc: 'Schlafzimmer-Deckenlampe-Marker von LMair1', type: 'boolean', def: false, role: 'value' }); var idMarker11 = "variablen.lmair1.11_deckenzusatzlampen-schlafzimmer"; // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird createState(idMarker11, 0, forecreation, { // Datenpunkt wird angelegt name: 'LMAir Marker 11', desc: 'Schlafzimmer-Deckenzusatzlampen-Marker von LMair1', type: 'boolean', def: false, role: 'value' }); var idMarker12 = "variablen.lmair1.12_deckenlampe-arbeitszimmer"; // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird createState(idMarker12, 0, forecreation, { // Datenpunkt wird angelegt name: 'LMAir Marker 12', desc: 'Arbeitszimmer-Deckenlampe-Marker von LMair1', type: 'boolean', def: false, role: 'value' }); var idMarker13 = "variablen.lmair1.13_unwetter"; // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird createState(idMarker13, 0, forecreation, { // Datenpunkt wird angelegt name: 'LMAir Marker 13', desc: 'Unwetter-Marker von LMair1', type: 'boolean', def: false, role: 'value' }); ! // Manueller Button: var idButton = "alexa.lmair1-markerauslesen"; // Pfad und Name, unter dem in der Javascript-Instanz der Datenpunkte angelegt wird createState(idButton, 0, forecreation, { // Datenpunkt wird angelegt name: 'LMAir 1 Marker auslesen', desc: 'Marker von LMAir 1 auslesen', type: 'boolean', role: 'button'/, smartName: { de: 'LMAir 1 Marker auslesen' }/ }); ! // Funktionen: // ----------------------------------------------------------------------------- // Daten abfragen: function DatenAuslesen() { var req = http.get(RQoptions, function(res) { if(logOn) log('STATUS: ' + res.statusCode); // Statuscode if(logOn) log('HEADERS: ' + JSON.stringify(res.headers)); // Header (Rückmeldung vom Webserver) // Buffer the body entirely for processing as a whole. var bodyChunks = []; var chunkLine = 0; res.on('data', function(chunk) { chunkLine = chunkLine + 1; if(logOn) log("Zeilennummer: " + chunkLine+ " ,Inhalt: " + chunk); // Hier können die einzelnen Zeilen verarbeitet werden... bodyChunks.push(chunk); }).on('end', function() { if(logOn) log("ARRAY mit den einzelnen Zeilen: " + bodyChunks); if(logOn) log("ARRAY Länge: " + bodyChunks.length); ! var body = Buffer.concat(bodyChunks);// erhaltene Daten if(logOn) log('BODY: ' + body); // ...und/oder das Gesamtergebnis. DatenVerarbeiten(body); // Abrufen der Bearbeitungs-Funktion }); }); req.on('error', function(e) { // Fehler abfangen log('ERROR: ' + e.message,"warn"); return("error"); }); } ! // Daten verarbeiten: function DatenVerarbeiten(result) { var json = JSON.parse(result); if (json !== null) { stringMARKERgesamt = json["marker state"]; var wertMARKERvon = 1; var wertMARKERbis = 13; var stringMARKERkurz = stringMARKERgesamt.slice(wertMARKERvon-1, wertMARKERbis); var wertDURCHLAUF = 1; while (wertDURCHLAUF <= wertMARKERbis) { var wertMARKERaktuell = stringMARKERgesamt.slice(wertDURCHLAUF-1, wertDURCHLAUF); wertMARKERaktuell = parseFloat(wertMARKERaktuell); WertePruefen(wertMARKERaktuell, wertDURCHLAUF); wertDURCHLAUF++; } } else { log ("Fehler beim Einlesen der Daten."); } } ! // Werte überprüfen und anpassen: function WertePruefen (MarkerWERT, MarkerNR) { if (MarkerWERT === 1) { MarkerWERT = true; } else if (MarkerWERT === 0) { MarkerWERT = false; } else if (MarkerWERT === true || MarkerWERT === false) { MarkerWERT = MarkerWERT; } else { log ("Marker-Wert fehlerhaft = " + MarkerWERT); } var idMARKERaktuell; switch (MarkerNR) { case 1: idMARKERaktuell = "javascript.0." + idMarker1; // Marker 01 ccuMarker = "hm-rega.0.1239"/*LMAir1_Marker01*/; break; case 2: idMARKERaktuell = "javascript.0." + idMarker2; // Marker 02 ccuMarker = "hm-rega.0.1242"/*LMAir1_Marker02*/; break; case 3: idMARKERaktuell = "javascript.0." + idMarker3; // Marker 03 ccuMarker = "hm-rega.0.1248"/*LMAir1_Marker03*/; break; case 4: idMARKERaktuell = "javascript.0." + idMarker4; // Marker 04 ccuMarker = "hm-rega.0.1243"/*LMAir1_Marker04*/; break; case 5: idMARKERaktuell = "javascript.0." + idMarker5; // Marker 05 ccuMarker = "hm-rega.0.1244"/*LMAir1_Marker05*/; break; case 6: idMARKERaktuell = "javascript.0." + idMarker6; // Marker 06 ccuMarker = "hm-rega.0.1245"/*LMAir1_Marker06*/; break; case 7: idMARKERaktuell = "javascript.0." + idMarker7; // Marker 07 ccuMarker = "hm-rega.0.1246"/*LMAir1_Marker07*/; break; case 8: idMARKERaktuell = "javascript.0." + idMarker8; // Marker 08 ccuMarker = "hm-rega.0.1247"/*LMAir1_Marker08*/; break; case 9: idMARKERaktuell = "javascript.0." + idMarker9; // Marker 09 ccuMarker = "hm-rega.0.1249"/*LMAir1_Marker09*/; break; case 10: idMARKERaktuell = "javascript.0." + idMarker10; // Marker 10 ccuMarker = "hm-rega.0.1250"/*LMAir1_Marker10*/; break; case 11: idMARKERaktuell = "javascript.0." + idMarker11; // Marker 11 ccuMarker = "hm-rega.0.1251"/*LMAir1_Marker11*/; break; case 12: idMARKERaktuell = "javascript.0." + idMarker12; // Marker 12 ccuMarker = "hm-rega.0.1252"/*LMAir1_Marker12*/; break; case 13: idMARKERaktuell = "javascript.0." + idMarker13; // Marker 13 ccuMarker = "hm-rega.0.1255"/*LMAir1_Marker13*/; break; default: log ("fehlerhafter Marker"); break; } if (idMARKERaktuell !== null) { if (getState(idMARKERaktuell).val !== MarkerWERT) setState(idMARKERaktuell, MarkerWERT); if (ccuMarker !== "") { if (getState(ccuMarker).val !== MarkerWERT) setState(ccuMarker, MarkerWERT); } } else { log ("Markerpfad fehlerhaft"); } } ! // Abfrage Datenpunkte // ----------------------------------------------------------------------------- on({id: "javascript.0." + idMarker1, change:'any'}, function (dp) { MarkerWERT = dp.state.val; ccuMarker = "hm-rega.0.1239"/LMAir1_Marker01/; if (getState(ccuMarker).val !== MarkerWERT) WertePruefen(MarkerWERT, 1); }); on({id: "javascript.0." + idMarker2, change:'any'}, function (dp) { MarkerWERT = dp.state.val; ccuMarker = "hm-rega.0.1242"/LMAir1_Marker02/; if (getState(ccuMarker).val !== MarkerWERT) WertePruefen(MarkerWERT, 2); }); on({id: "javascript.0." + idMarker3, change:'any'}, function (dp) { MarkerWERT = dp.state.val; ccuMarker = "hm-rega.0.1248"/LMAir1_Marker03/; if (getState(ccuMarker).val !== MarkerWERT) WertePruefen(MarkerWERT, 3); }); on({id: "javascript.0." + idMarker4, change:'any'}, function (dp) { MarkerWERT = dp.state.val; ccuMarker = "hm-rega.0.1243"/LMAir1_Marker04/; if (getState(ccuMarker).val !== MarkerWERT) WertePruefen(MarkerWERT, 4); }); on({id: "javascript.0." + idMarker5, change:'any'}, function (dp) { MarkerWERT = dp.state.val; ccuMarker = "hm-rega.0.1244"/LMAir1_Marker05/; if (getState(ccuMarker).val !== MarkerWERT) WertePruefen(MarkerWERT, 5); }); on({id: "javascript.0." + idMarker6, change:'any'}, function (dp) { MarkerWERT = dp.state.val; ccuMarker = "hm-rega.0.1245"/LMAir1_Marker06/; if (getState(ccuMarker).val !== MarkerWERT) WertePruefen(MarkerWERT, 6); }); on({id: "javascript.0." + idMarker7, change:'any'}, function (dp) { MarkerWERT = dp.state.val; ccuMarker = "hm-rega.0.1246"/LMAir1_Marker07/; if (getState(ccuMarker).val !== MarkerWERT) WertePruefen(MarkerWERT, 7); }); on({id: "javascript.0." + idMarker8, change:'any'}, function (dp) { MarkerWERT = dp.state.val; ccuMarker = "hm-rega.0.1247"/LMAir1_Marker08/; if (getState(ccuMarker).val !== MarkerWERT) WertePruefen(MarkerWERT, 8); }); on({id: "javascript.0." + idMarker9, change:'any'}, function (dp) { MarkerWERT = dp.state.val; ccuMarker = "hm-rega.0.1249"/LMAir1_Marker09/; if (getState(ccuMarker).val !== MarkerWERT) WertePruefen(MarkerWERT, 9); }); on({id: "javascript.0." + idMarker10, change:'any'}, function (dp) { MarkerWERT = dp.state.val; ccuMarker = "hm-rega.0.1250"/LMAir1_Marker10/; if (getState(ccuMarker).val !== MarkerWERT) WertePruefen(MarkerWERT, 10); }); on({id: "javascript.0." + idMarker11, change:'any'}, function (dp) { MarkerWERT = dp.state.val; ccuMarker = "hm-rega.0.1251"/LMAir1_Marker11/; if (getState(ccuMarker).val !== MarkerWERT) WertePruefen(MarkerWERT, 11); }); on({id: "javascript.0." + idMarker12, change:'any'}, function (dp) { MarkerWERT = dp.state.val; ccuMarker = "hm-rega.0.1252"/LMAir1_Marker12/; if (getState(ccuMarker).val !== MarkerWERT) WertePruefen(MarkerWERT, 12); }); on({id: "javascript.0." + idMarker13, change:'any'}, function (dp) { MarkerWERT = dp.state.val; ccuMarker = "hm-rega.0.1255"/LMAir1_Marker13/; if (getState(ccuMarker).val !== MarkerWERT) WertePruefen(MarkerWERT, 13); }); ! // Start und Intervall: // -------------------------------------------------------------------------- setTimeout(DatenAuslesen, 1000); // Beim Skriptstart die Werte auslesen schedule('*/1 * * * *', DatenAuslesen); // alle 1 Minuten ! // Button-Aktivierung: on({id: "javascript.0." + idButton, change:'any'}, function (dp) { DatenAuslesen(); }); ! ````
  • [gelöst] Kann ich Gruppen in Scripten beliebig sortieren?

    Verschoben
    5
    1
    0 Stimmen
    5 Beiträge
    807 Aufrufe
    S
    Super, vielen Dank dafür. Gruß Sven
  • Delete me

    Gesperrt Verschoben
    6
    0 Stimmen
    6 Beiträge
    545 Aufrufe
    HomoranH
    Der Sinn eines Userforums ist seine Probleme UND Lösungen zu teilen! Wenn man ein Problem hat und dann auch noch die Lösung gefunden hat, letzteres nicht zu sagen und dann auch noch die Frage zu löschen ist definitiv nicht die feine Art. Schließlich wollen hier alle noch lernen. Gruß rainer

490

Online

32.7k

Benutzer

82.4k

Themen

1.3m

Beiträge