Weiter zum Inhalt

Skripten / Logik

16.6k Themen 214.5k Beiträge

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

NEWS

Unterkategorien


  • Hilfe für Skripterstellung mit JavaScript

    3k 49k
    3k Themen
    49k Beiträge
    A
    @Dave69-CH Der e3dc-rscp Adapter liest diese Werte über die Schnittstelle aus. Wenn da nichts übermittelt wird hilft es dir nicht Werte manuell einzutragen, da diese Werte dann nicht aktualisiert werden. Hast du mal im LOG geprüft ob da eventuell ein Fehler angezeigt wird ?
  • Hilfe für Skripterstellung mit Blockly

    7k 80k
    7k Themen
    80k Beiträge
    hg6806H
    Danke für die Antworten. Der Adapter ist dafür etwas überdosiert, ist aber interessant, dass es sowas gibt. Das mit dem Zeitplan hatte ich mir auch schon überlegt, dachte es gibt was anderes oder besseres. Ich denke stündlich reicht in dem Fall.
  • Hilfe für Skripterstellung mit Node-RED

    955 13k
    955 Themen
    13k Beiträge
    mickymM
    @Tontechniker Man kann solche Filter aber auch OHNE neue Nodes zu installieren mit einfachen Standard-Switch Nodes realisieren: [image: 1776865319208-af3cab3c-2716-43f4-b7df-7f74e8bf051b-image.jpeg] ggf. einfach nochmal meinen alten Thread anschauen: https://forum.iobroker.net/topic/50086/datum-und-zeitverarbeitung-mit-nodered
  • Source-Quelle

    javascript
    3
    0 Stimmen
    3 Beiträge
    157 Aufrufe
    arteckA
    @Eggi was ???????????????????? und dann noch doppelpost .........
  • Source

    javascript
    1
    0 Stimmen
    1 Beiträge
    89 Aufrufe
    Niemand hat geantwortet
  • Variable an Cron übergeben

    javascript
    3
    0 Stimmen
    3 Beiträge
    271 Aufrufe
    dontobiD
    @paul53 Danke für die schnelle Antwort. Ich hatte das mit der Variable direkt im schedule schon getestet, aber die variable vorher nicht initialisiert. Vielleicht liegt es daran. Hab es gerade mal eingetragen und lasse es morgen testen.
  • Schalter Saugroboter mit HomeKit

    communication
    3
    0 Stimmen
    3 Beiträge
    160 Aufrufe
    S
    @Asgothian Danke schön für die Info! Haben wir für so einen Script ein Beispiel? Muss mir das mal anschauen. Bin absoluter Neuling :-)
  • IF .. THEN .. ELSE versus SWITCH .. CASE ..

    javascript
    17
    1
    0 Stimmen
    17 Beiträge
    2k Aufrufe
    AlCalzoneA
    @legro sagte in IF .. THEN .. ELSE versus SWITCH .. CASE ..: also auf die Welt an Programmiersprachen aus der ich komme 🎉🎉🎉 Diese Scriptsprache wird ja auch von ioBroker unterstützt und somit sollte ich mich ggf. auch hiermit einmal beschäftigen. Dann verweise ich dich mal auf https://forum.iobroker.net/topic/36493/09-09-20-30-einsteiger-cursus-demonstration-von-typescript und das TypeScript Handbook https://www.typescriptlang.org/docs/handbook/ welches übrigens auch einen guten Einstiegspunkt für Nicht-JS-Programmierer hat.
  • XOR über Byte Array - wie?

    javascript
    4
    0 Stimmen
    4 Beiträge
    495 Aufrufe
    S
    @paul53 Danke, funzt einwandfrei!
  • Alle objekte die xxx.color heißen mit Wert yyy belegen

    blockly
    10
    0 Stimmen
    10 Beiträge
    628 Aufrufe
    J
    @paul53 genau so gehts! vielen Dank, ich denk ich habe es nun kapiert
  • Wie Lautstärke regeln mit SayIt via Sonos?

    multimedia
    1
    0 Stimmen
    1 Beiträge
    158 Aufrufe
    Niemand hat geantwortet
  • Javascript Funktion triggert ungewollt, wie verhindern?

    javascript
    11
    0 Stimmen
    11 Beiträge
    853 Aufrufe
    M
    @spaceduck Kannst du dann bitte Deine Lösung hier dokumentieren. Danke.
  • [gelöst] Daten per Telnet abgreifen.

    communication
    2
    1
    0 Stimmen
    2 Beiträge
    238 Aufrufe
    capitaenzC
    Problem gelöst, habe diesen Code gefunden von www.letscontrolit.com Damit baut man einfach meine (ursprünglich) gewünschte Serial2MQTT Brücke auf. #include <ESP8266WiFi.h> #include <PubSubClient.h> const char* ssid = "SSID"; const char* password = "PWD"; const char* mqtt_server = "192.168.XXX.XXX"; const char* topic_rx = "uart/rx"; const char* topic_tx = "uart/tx"; const byte numChars = 100; char receivedChars[numChars]; // an array to store the received data boolean newData = false; WiFiClient espClient; PubSubClient client(espClient); void setup() { pinMode(BUILTIN_LED, OUTPUT); // Initialize the BUILTIN_LED pin as an output Serial.begin(9600); setup_wifi(); client.setServer(mqtt_server, 1885); client.setCallback(callback); } void setup_wifi() { delay(10); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); } } void callback(char* topic, byte* payload, unsigned int length) { for (int i = 0; i < length; i++) { Serial.print((char)payload[i]); } Serial.println(); } String macToStr(const uint8_t* mac) { String result; for (int i = 0; i < 6; ++i) { result += String(mac[i], 16); if (i < 5) result += ':'; } return result; } void reconnect() { String clientName; clientName += "esp8266-"; uint8_t mac[6]; WiFi.macAddress(mac); clientName += macToStr(mac); clientName += "-"; clientName += String(micros() & 0xff, 16); while (!client.connected()) { if (client.connect((char*) clientName.c_str())) { // random client id digitalWrite(BUILTIN_LED, LOW); // low = high, so this turns on the led client.subscribe(topic_rx); // callback: mqtt bus -> arduino } else { digitalWrite(BUILTIN_LED, HIGH); // high = low, so this turns off the led delay(5000); } } } void loop() { if (!client.connected()) { reconnect(); } client.loop(); recvWithEndMarker(); showNewData(); } void recvWithEndMarker() { static byte ndx = 0; char endMarker = '\n'; char rc; while (Serial.available() > 0 && newData == false) { rc = Serial.read(); if (rc != endMarker) { receivedChars[ndx] = rc; ndx++; if (ndx >= numChars) { ndx = numChars - 1; } } else { receivedChars[ndx] = '\0'; // terminate the string ndx = 0; newData = true; } } } void showNewData() { if (newData == true) { client.publish(topic_tx, receivedChars); // publish: arduino -> mqtt bus newData = false; } }
  • efergy API auslesen und in wert umwandeln

    monitoring
    9
    0 Stimmen
    9 Beiträge
    1k Aufrufe
    S
    @paul53 nach Neustart des Brokers funktioniert es . Dankeschön für die Hilfe.
  • Sonso Coordinator mittels Script setzen

    blockly javascript
    1
    1
    0 Stimmen
    1 Beiträge
    192 Aufrufe
    Niemand hat geantwortet
  • Anrufe auf FritzBox per Telegram auf Handy ankündigen

    blockly
    48
    1
    0 Stimmen
    48 Beiträge
    6k Aufrufe
    I
    Hallo Leute, da mir ja scheinbar keiner sagen kann, wie man (wenn überhaupt) die Anrufankündigungen für ein bestimmtes Telefonbuch (in dem Spamanrufer stehen) ausklammern kann: Wie kann ich sagen, daß Anrufe nur angekündigt werden, wenn im Anrufnamen nicht das Wort "Spam" vorkommt? Danke! EDIT: Habe es endlich hinbekommen. Wenn ich selbst oder einer derer Spammer, die ich in einem extra Telefonbuch in der FritzBox hinterlegt habe, und die alle mit "Arsch", gefolgt von einer Nummer, benamt wurden, bei meiner Mama auf Festnetz anrufen, bekomme ich keine Telegram-Meldung mehr: [image: 1605966324842-bildschirmfoto-2020-11-21-um-14.44.04.jpg]
  • On / Off Frage

    template
    7
    0 Stimmen
    7 Beiträge
    584 Aufrufe
    amg_666A
    @Homoran Auf die Idee muss man erstmal kommen :-)
  • Termine in Google Kalender eintragen

    multimedia javascript node-red
    3
    0 Stimmen
    3 Beiträge
    387 Aufrufe
    Gurke258G
    @MCU Ja hier -> https://developers.google.com/calendar/overview
  • Scripte einzeln oder lang/groß

    blockly javascript
    6
    2
    0 Stimmen
    6 Beiträge
    595 Aufrufe
    dslraserD
    @AlCalzone sagte in Scripte einzeln oder lang/groß: Monster-Blockly 😂✌🙋‍♂️
  • Anwesenheitsscript HZ bei offenem Fenster aussetzen

    heating
    6
    0 Stimmen
    6 Beiträge
    311 Aufrufe
    C
    @Fizh-Kopp Ich gehe davon aus, dass dein FK im iobroker ist. Dann gibt es einen State open, der auf true steht. Ausgehend von deinem Script, würde ich dein if-Statement wie folgt umschreiben... if FK.open.val Thermostat ausschalten else if deine if-statement gefolgt vom bisherigen else. Deinen Trigger wirst du aber auch nochmal überdenken müssen... Stand jetzt, kann das Fenster 4:59 offen sein, bevor der Cron wieder läuft und es erkennt. Auch bleibt dein Thermostat bei 16 stehen, wenn du um 23:00 Uhr das Fenster öffnest. Ich persönlich gehe etwas anders an solche Aufgaben ran. Ich nutze eigene States im iobroker. Mit den Scripten überwache ich diese dann auf Veränderung und reagiere entsprechend darauf. Beispiel: Angenommen es gibt einen State ZielTemperatur. Dann brauchst du ein Script, welche bei einer Änderung des States ZielTemperatur den neuen Wert an das Themostat übermittelt. (Damit ist deine Heizungssteuerung schon mal fast fertig.) Was jetzt noch fehlt, sind Scripte, welche den Wert von ZielTemperatur ändern, in Abhängigkeit von Ereignissen die Eintreten (Fenster offen, An-/Abwesenheit, Uhrzeit) Beispiel: Bei Änderung von ZielTemperatur, neuen Wert an das Thermostat const ZielTemp = "javascript.0.ZielTemperatur"; const idTarget = "fritzdect.0.Comet_14078017xxxx.targettemp"/Target Temp/; //Wohnzimmer on({id: ZielTemp,change:'ne'}, function (obj) { setState(idTarget, obj.state.val); });
  • Datenpunkt Update vor Änderung verarbeiten

    javascript node-red
    2
    0 Stimmen
    2 Beiträge
    231 Aufrufe
    paul53P
    @S84 sagte: Wie kann ich diese 100% verarbeiten/manipulieren BEVOR der Datenpunkt aktualisiert wird. Das ist nicht möglich, es sei denn, man kann den Adapter daran hindern, den Datenpunkt zu setzen. Andernfalls benötigt man einen weiteren Datenpunkt.
  • CRON Trigger

    blockly
    3
    0 Stimmen
    3 Beiträge
    307 Aufrufe
    K
    @paul53 Danke! Schade eigentlich.
  • Routine mit Alexa / Sonoff / Philips Hue / Yeelight

    multimedia javascript
    2
    0 Stimmen
    2 Beiträge
    351 Aufrufe
    M
    @badplay sagte in Routine mit Alexa / Sonoff / Philips Hue / Yeelight: Alternativen Firmware Was bedeutet alternative Firmware ? Tasmota? Welche Version? Wenn ja, dann Sonoff-Adapter installieren. Einstellungen für den Sonoff-Adapter müssen dann zu den einzelnen Steckdosen umgestellt werden. Für Yeelight Lampen gibt es den Yeelight-Controller-Adapter! (Habe ich nicht, weiß nicht, welche Einstellungen notwendig sind, meistens selbsterklärend)

535

Online

32.8k

Benutzer

82.8k

Themen

1.3m

Beiträge