Skip to content

Skripten / Logik

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

16.5k Themen 213.2k Beiträge

NEWS

Unterkategorien


  • Hilfe für Skripterstellung mit JavaScript

    2k 49k
    2k Themen
    49k Beiträge
    P
    @arnod Leider ist das Problem immer noch vorhanden. Welchen Hysteresewert muss ich denn bei mir anpassen, damit ich mein Problem abmindern kann? Ich habe gesehen, dass es mehrere Hysteresewerte im Script gibt.
  • Hilfe für Skripterstellung mit Blockly

    7k 79k
    7k Themen
    79k Beiträge
    OliverIOO
    @IceD112 Das Lesen eines Datenpunkte sollte eigentlich keinen API Call auslösen. Wenn, dann musst du dem Adapter sagen, dass er nicht so oft abfragen soll
  • Hilfe für Skripterstellung mit Node-RED

    953 13k
    953 Themen
    13k Beiträge
    S
    welche Palette hast du installiert, damit du den "AND" Baustein hast?
  • Danke und ne Frage zum Bluetoothscanner…. von ruhr70

    Verschoben
    5
    0 Stimmen
    5 Beiträge
    1k Aufrufe
    S
    OK Danke. Dachte mir schon, dass es auf eine Lösung in dieser Richtung hinaus laufen wird.. Schönen Sonntag noch.
  • HM 6fach-Taster als Pinnummernfeld für Alarmanlage

    Verschoben
    1
    0 Stimmen
    1 Beiträge
    899 Aufrufe
    Niemand hat geantwortet
  • Einfache oder Doppelte Hochkomma in Skripten?

    Verschoben
    5
    0 Stimmen
    5 Beiträge
    1k Aufrufe
    F
    Okay, dann halte ich mich auch an einfache Hochkomma, damit es halbwegs durchgängig bleibt!
  • Fehler in Scripte die schon funktionierten!!!

    Verschoben
    13
    0 Stimmen
    13 Beiträge
    2k Aufrufe
    W
    Schlechte Nachricht… Jetzt ist mein System komplett abgeschmiert....werde erstmal wieder zurück auf Raspi umstellen und mein Backup auf den Cubox einspielen. Probiere dann dein Eintrag unter Zustände. Wird ein weilchen dauern , würde mich morgen mit meinen Ergebnissen melden. Danke erstmal paul53 für deine Hilfe. Schönen Abend Sebastian
  • Script Hilfe: Pushover bei Variablen Wechsel

    Verschoben
    8
    0 Stimmen
    8 Beiträge
    2k Aufrufe
    D
    Hallo Solear, eigentlich hast du Recht. Da ich dieses Variable auch noch auf dem Display im Flur anzeige, sollte ich die Variable patchen. Mir ist das hin und her wechseln der Anzeige in der Vergangenheit nie aufgefallen 8-). Wieder ein Fehler beseitigt. Ich erzeuge die Variable in der CCU2. (Das bekomme ich recht leicht hin). Da habe ich jetzt eine Verzögerung eingesetzt. Danke. Aber auch an Paul Danke. Ich denke ich werde das Script noch an vielen anderen Stellen nutzen!!!
  • Hinweis: JS ON{… change:'ne'...} doch nicht default

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    5k Aufrufe
    BluefoxB
    @Fitti: @paul53: change: 'ne' ist nur default, wenn das Muster kein Objekt ist, sondern die ID als String: ` Ich wusste nicht, dass man hier kein id: nutzen muss. :shock: Worin besteht denn bitte der technische Unterschied, ob ich es mit id: oder ohne schreibe? Was ist anders, wann muss ich welche Variante verwenden? Woher wisst ihr das alles? Respekt ` Ich bin nicht auf der Idee gekommen, dass jemand on({id:"hm-rpc.0.MEQ011111.1.STATE"}, besser findet, als on("hm-rpc.0.MEQ011111.1.STATE", Und deswegen ist das unter der Tisch gefallen. Hast du recht, man muss konsequent bleiben und mit {id:"hm-rpc.0.MEQ011111.1.STATE"} auch "ne" als default verwenden. ich glaube es gibt sogar einen Vorschlag auf dem git.
  • Zustand einer Variable wird dauerhaft per Telegram gesendet

    Verschoben
    4
    0 Stimmen
    4 Beiträge
    1k Aufrufe
    paul53P
    @Bluefox: So sollte gehen: on("hm-rega.0.1237"/*Anwesenheit.Klaus*/, function(obj) { if (obj.state.val) sendTo('telegram', "Klaus ist zu Hause"); }); ```` ` oder so: on({id:"hm-rega.0.1237"/*Anwesenheit.Klaus*/, val: true, change: "ne"}, function() { sendTo('telegram', "Klaus ist zu Hause"); });
  • HUE Script like Sonos Script (6 face Schalter)

    Verschoben
    7
    0 Stimmen
    7 Beiträge
    1k Aufrufe
    D
    Hallo und guten Morgen, klappt! Danke
  • Intervallskript / Bewaesserungsskript

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    911 Aufrufe
    P
    Wenn es jemand einsetzt würde ich mich sehr über die Erfahrungen freuen. Anregungen oder Ideen zur Anpassung versuche auch gerne zu realisieren. Gesendet von meinem Nexus 6P mit Tapatalk
  • Nodejs und telegram

    Verschoben
    2
    0 Stimmen
    2 Beiträge
    1k Aufrufe
    W
    node-red neu installiert und es klappt…. *blub lg
  • Xml2js - Fehlermeldungen im Log

    Verschoben
    1
    0 Stimmen
    1 Beiträge
    708 Aufrufe
    Niemand hat geantwortet
  • Einführung in Skripting

    Verschoben
    5
    0 Stimmen
    5 Beiträge
    1k Aufrufe
    paul53P
    @Pumbadinho: Die größten Probleme macht mir momentan der Zugriff auf die Objekte. Ich versuche per Skript meinen Samsung-Fernseher umzuschalten. ` Das JS-Statement müsste sicherlich lauten (Groß-/Kleinschreibung beachten): setState("samsung.0.Channel.Channel Up", true); Ein neuerer Samsung-TV wird wahrscheinlich nicht darauf reagieren.
  • Wake iPhone, ioBroker und Homematic CCU2

    Verschoben
    2
    0 Stimmen
    2 Beiträge
    796 Aufrufe
    blauholstenB
    Hi, Bin zwar ein Rookie, Aber probier doch mal nach dem on(….., eine if Abfrage mit if(obj.newState.val === false). Das könnte theoretisch deinen Wunsch erfüllen. on("hm-rpc.0.MEQ0662742.1.STATE", function (obj) { if(obj.newState.val === false) { checkPresence(); } });
  • Warn: Wrong type…

    Verschoben
    3
    0 Stimmen
    3 Beiträge
    749 Aufrufe
    A
    @paul53: Das wurde http://forum.iobroker.de/viewtopic.php?f=21&t=2915&sid=79e97c9e7fea67b201dba0df173f21d5 schon einmal diskutiert. ` DANKESCHÖN:)! Hab ich nicht gesehen;)…
  • IoBroker input node löst nicht aus :(

    Verschoben
    3
    1
    0 Stimmen
    3 Beiträge
    1k Aufrufe
    H
    Danke.. Du bist mein Held.. Stundenlang versucht und dann diesen Fehler hier gefunden. Gruß Holger
  • Mit on() auf Sensoren in einem Gewerk triggern

    Verschoben
    17
    0 Stimmen
    17 Beiträge
    2k Aufrufe
    S
    So, jetzt habe ich mir auch ein kleines Alarmscript (irgendeine Fensteröffnung = Pushovermeldung) gebastelt, welches die Besonderheit hat, dass es die beiden Kellerfenstersensoren nicht meldet, sofern diese beiden Fenster vom Entfeuchtungsscript automatisch geöffnet/geschlossen worden sind. Außerdem sendet es nur eine Meldung, wenn die Personenanzahl weniger als 1 ist (also niemand zuhause ist). Das habe ich über den Geofence Adapter gelöst. Es scheint so zu klappen alles, vielleicht nicht elegant, aber ich kann denn Code nachvollziehen. // Forum: http://forum.iobroker.net/viewtopic.php?f=21&t=2473 // Horcht an allen Gewerken (functions) unter "Alarm" und sendet bei Statusänderung // Schließt die beiden Kellerfenster vom Alarm aus, sofern das Lüftungsscript die Öffnung/Schließung angestoßen hat: // wenn Jalousieaktorstatus (= Aktor für die Fenstermotoren) auf WORKING steht, dann werden die Kellerfenster ausgeschlossen! // IDs deklarieren var jemandzuhauseid = "geofency.0.atHomeCount"/*atHomeCount*/; var kellerscriptsiid = "hm-rpc.0.MEQ03xxxxx.1.WORKING"/*Fensteröffner Keller Sicherungsraum:1.WORKING*/; // liest den Jalousieaktor aus, WORKING = in Arbeit var kellerscriptwaid = "hm-rpc.0.MEQ05xxxxx.1.WORKING"/*Fensteröffner Keller Waschraum:1.WORKING*/; $('channel(functions=Alarm)[state.id=*.STATE]').on(function (event) { // An "Alarm"-Gewerke nach Statusänderungen prüfen var _obj = getObject(event.id, 'functions'); log("---------------------------------------------------"+ event.channelName, "info"); var jemandzuhause = getState(jemandzuhauseid).val; // IDs auslesen var kellerscriptsi = getState(kellerscriptsiid).val; var kellerscriptwa = getState(kellerscriptwaid).val; if((event.channelName !== 'Fenstersensor Keller Sicherungsraum' && kellerscriptsi !== true) || // Ausschluss Kellerfenster bei automatischer Öffnung/Schließung (event.channelName !== 'Fenstersensor Keller Waschraum' && kellerscriptwa !== true)) { if (jemandzuhause < 1) // Prüft ob jemand Zuhause ist { sendTo("pushover", {message: 'ALARM: ' + event.channelName + ' hat angeschlagen!', priority: 1}); // wenn nein, Alarmnachricht //setState(sayit_vol, 100); //setState(sayit_txt, "Der "+ event.channelName +" hat angeschlagen."); } } });
  • CCU2 Fensterkontakt und ibroker script

    Verschoben
    8
    0 Stimmen
    8 Beiträge
    2k Aufrufe
    I
    Ja das stimmt, sind schon mehrerer Themen :-) iobroker : 0.9.0 homematic-rega : 1.1.1 homematic-rpc : 1.1.3 JavaScript engine : 2.1.8 Bei scripts, ID einfügen sehe ich alle homematic Objekte. Ich denke, dass da grundsätzlich ein Problem mit JavaScript besteht, das folgende cmd geht in der RasPi Konsole : pi@raspberrypi01:~$ sudo hping3 -2 -c 2 -p 5353,62078 192.168.xxx.xxx -q HPING 192.168.1.144 (wlan0 192.168.xxx.xxx): udp mode set, 28 headers + 0 data bytes –- 192.168.xxx.xxx hping statistic --- 2 packets transmitted, 0 packets received, 100% packet loss round-trip min/avg/max = 0.0/0.0/0.0 ms Dasselbe aus dem script exec("sudo hping3 -2 -c 2 -p 5353,62078 192.168.xxx.xxx -q",function(err,stdout,stderr) {log(err,stdout,stderr)}); javascript.0 script.js.MyScripts.Script1: Unknown severity level "HPING 192.168.xxx.xxx (wlan0 192.168.xxx.xxx): udp mode set, 28 headers + 0 data bytes " by log of [Error: Command failed: /bin/sh -c[/color] sudo hping3 -2 -c 2 -p 5353,62078 192.168.xxx.xxx –- 192.168.xxx.xxx hping statistic --- 2 packets transmitted, 0 packets received, 100% packet loss round-trip min/avg/max = 0.0/0.0/0.0 ms ] Die Statusänderung auf dem Fensterkontakt ergibt nichts in iobroker, keine logeinträge on({id:"hm-rega.0.3335.state", val:true}, function(err,stdout,stderr) {log(err,stdout,stderr)}); I konw, just a beginner :-)
  • Simulation PV-Anlagen Größe

    Verschoben
    1
    2
    0 Stimmen
    1 Beiträge
    536 Aufrufe
    Niemand hat geantwortet
  • Usertreffen - Wetter E-Mail

    Verschoben
    12
    0 Stimmen
    12 Beiträge
    2k Aufrufe
    P
    Steht in der Doku von iobroker.email https://github.com/ioBroker/ioBroker.em … /README.md Email im HTML Format Gruß Pix Gesendet mit Tapatalk
  • IoBroker und Homematic CCU2

    Verschoben
    6
    0 Stimmen
    6 Beiträge
    2k Aufrufe
    I
    Bin einen Schritt weiter, lösche den arp Eintrag mit arp -d IP, wecke dann das iPhone und pinge 20x. Danach den arp cache auslesen und die mac Adresse ist wieder drin, wenn iPhone Antwort gegeben hat. Wie kann ich nun den arp cache prüfen, ob die aus dem Array drin ist ? –> function checkArpEntry(), dann eine CCU2 Systemvariable setzen und das script noch ausführen, wenn ein Homematic Fensterkontakt an der Türe anspricht. :-) var listIphones = [ { "name": "user1", "ip":"192.168.xxx.xx4", "mac":"c0:1a:xx:xx:xx:xx" }, { "name": "user2", "ip":"192.168.xxx.xx3", "mac":"f0:dc:xx:xx:xx:xx" }, { "name": "user3", "ip":"192.168.xxx.xx0", "mac":"d8:bb:xx:xx:xx:xx" } ]; function wakeIphone(ip) { exec("sudo hping3 -2 -c 15 -p 5353 " + ip + " -q", function(err, stdout, stderr) { if (err) { log(err); return; } //log(stdout) ; }); } function pingIphone(ip) { exec("sudo ping " + ip + " -c 20 -i 0.5", function(err, stdout, stderr) { if (err) { log(err); return; } log(stdout) ; }); } function deleteArpEntry(ip) { exec("sudo arp -d " + ip, function(err, stdout, stderr) { if (err) { log(err); return; } //log(stdout) ; }); } function checkArpEntry(ip) { exec("sudo arp -a", function(err, stdout, stderr) { if (err) { log(err); return; } log(stdout) ; // mac in arp table ?? }); } function checkPresence() { for (var i = 0; i < listIphones.length; i++) { deleteArpEntry(listIphones__.ip); //arp table, delete mac from iphone wakeIphone(listIphones__.ip); pingIphone(listIphones__.ip); checkArpEntry(__.ip); //arp table, check mac from iphone } } // main checkPresence();________

553

Online

32.6k

Benutzer

82.2k

Themen

1.3m

Beiträge