NEWS
[gelöst] RegEx Hilfe
-
Ich bräuchte mal bitte Unterstützung.
Ich hol mal etwas aus…
Es gibt das "LowBat Script". Das hab ich auch im Einsatz, aber ich habe in kleines Problem damit.
Bei den batteriebetriebenen Geräten gibt es seit einiger Zeit 2 LOWBAT Datenpunkte (LOWBAT und LOWBAT_ALARM)
Folglich habe ich im Script immer die doppelte Menge denn beide Datenpunkte werden ermittelt.
!
javascript.0 2017-02-08 20:26:36.274 info script.js.System.SYSTEM_LowBat: Geräte Nr. 44: 200_30_HAUSTUER:1.LOWBAT: false javascript.0 2017-02-08 20:26:36.274 info script.js.System.SYSTEM_LowBat: Geräte Nr. 43: 200_30_HAUSTUER:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.274 info script.js.System.SYSTEM_LowBat: Geräte Nr. 42: 120_30_TUER:1.LOWBAT: false javascript.0 2017-02-08 20:26:36.274 info script.js.System.SYSTEM_LowBat: Geräte Nr. 41: 120_30_TUER:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.274 info script.js.System.SYSTEM_LowBat: Geräte Nr. 40: 120_30_FENSTER_RECHTS:1.LOWBAT: false javascript.0 2017-02-08 20:26:36.274 info script.js.System.SYSTEM_LowBat: Geräte Nr. 39: 120_30_FENSTER_RECHTS:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.274 info script.js.System.SYSTEM_LowBat: Geräte Nr. 38: 120_30_FENSTER_LINKS:1.LOWBAT: false javascript.0 2017-02-08 20:26:36.274 info script.js.System.SYSTEM_LowBat: Geräte Nr. 37: 120_30_FENSTER_LINKS:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.274 info script.js.System.SYSTEM_LowBat: Geräte Nr. 36: 110_30_FENSTER_EINZELN:1.LOWBAT: false javascript.0 2017-02-08 20:26:36.274 info script.js.System.SYSTEM_LowBat: Geräte Nr. 35: 110_30_FENSTER_EINZELN:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.274 info script.js.System.SYSTEM_LowBat: Geräte Nr. 34: 110_30_FENSTER_SCHIEBE:1.LOWBAT: false javascript.0 2017-02-08 20:26:36.274 info script.js.System.SYSTEM_LowBat: Geräte Nr. 33: 110_30_FENSTER_SCHIEBE:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.274 info script.js.System.SYSTEM_LowBat: Geräte Nr. 32: 100_30_FENSTER_EINZELN:1.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 31: 100_30_FENSTER_EINZELN:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 30: 100_30_FENSTER_GR_RECHTS:1.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 29: 100_30_FENSTER_GR_RECHTS:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 28: 100_30_FENSTER_GR_LINKS:1.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 27: 100_30_FENSTER_GR_LINKS:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 26: 100_30_FENSTER_KL_RECHTS:1.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 25: 100_30_FENSTER_KL_RECHTS:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 24: 100_30_FENSTER_KL_LINKS:1.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 23: 100_30_FENSTER_KL_LINKS:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 22: 130_30_FENSTERKONTAKT:1.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 21: 130_30_FENSTERKONTAKT:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 20: 130_20_THERMOSTAT_NEU:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 19: 310_30_Fensterkontakt:1.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 18: 310_30_Fensterkontakt:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 17: 110_20_THERMOSTAT_SOFA:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 16: 310_20_THERMOSTAT_NEU:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 15: 320_40_SCHALTER:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 14: 300_20_THERMOSTAT_NEU:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 13: 330_10_LICHT:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 12: 100_50_TASTER6FACH:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 11: 330_50_TASTER_HZG:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 10: 300_30_DREHGRIFF_1.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 9: 300_30_DREHGRIFF:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 8: 110_20_THERMOSTAT_KAMIN:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 7: 200_20_AUSSENSENSOR:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 6: 100_20_STELLANTRIEB_KUECHE:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 5: 110_20_STELLANTRIEB_FENSTER:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 4: 100_20_THERMOSTAT:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 3: 110_20_THERMOSTAT:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 2: 100_20_STELLANTRIEB_MITTE:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 1: 100_20_STELLANTRIEB_FENSTER:0.LOWBAT: false javascript.0 2017-02-08 20:26:36.259 info script.js.System.SYSTEM_LowBat: Geräte Nr. 0: 110_20_STELLANTRIEB_TUER:0.LOWBAT: false !
Jetzt würde ich gerne mit "on" subscriben und dabei RegEx und Wildcards nutzen, ich habe aber keine Ahnung wie ich das anstelle.Die Datenpunkte haben alle eines gemeinsam:
ID = "hm-rpc.0.XXXXXXXXXX.0.LOWBAT"
Nur die XXXXXXXXXX ist immer unterschiedlich und müsste durch Wildcard ersetzt werden.
Geht das überhaupt? Oder bin ich total auf dem falschen Weg?
Ich hoffe ich konnte mich verständlich ausdrücken und mir kann jemand helfen…
-
Jetzt würde ich gerne mit "on" subscriben und dabei RegEx und Wildcards nutzen, … `
Versuche es mal so:on(/^hm-rpc\.0\.*\.0\.LOWBAT$/, function(dp) { -
on(/^hm-rpc\.0\.*\.0\.LOWBAT$/, function(dp) { log('XGWSTRE ' + JSON.stringify(dp)); });war leider nicht erfolgreich.
Ich hab den Datenpunkt per script geändert, das Lowbat-Script hat ausgelöst, aber das o.a. leider nicht.
-
> Wenn es um die pattern selbst geht bietet sich die Seite regex101.com an.
Echt nicht schlecht…Zumindest habe ich herausgefunden, dass der "*" das Problem ist.
Aber weiter bin ich leider nicht
-
Versuche es mal mit:
^hm-rpc.0..+:0.LOWBAT$
…oder
^hm-rpc.0..+.0.LOWBAT$
...falls es wirklich ein Punkt vor dem 0.LOWBAT ist. Im Text war es ja ein Doppelpunkt, wenn ich das richtig verstanden habe.
Edit: Da habe ich mir mit der Antwort wohl zu viel Zeit gelassen :)
-
` > …oder
^hm-rpc.0..+.0.LOWBAT$ `
der funktioniert auch…DANKE
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden