fhem -> mqtt -> node-red dashboard -> mqtt -> fhem mit notify?

Begonnen von bgewehr, 26 Januar 2020, 11:50:14

Vorheriges Thema - Nächstes Thema

bgewehr

Hallo,

ich möchte per MQTT Befehle für fhem empfangen und hätte gern ein notify, welches mir das event


2020-01-26 11:37:13 MQTT_DEVICE node_red_dashboard Tannenbaum: off

umsetzt in


set Tannenbaum off


mein Notify ist derzeit


define n1 notify node_red_dashboard:.* set $EVTPART0 $EVTPART1


aber da $EVTPART0 immer den Doppelpunkt enthält, geht es so nicht. Ich brauche den devicename ohne Doppelpunkt für den einfachen set.

Gibt es eine simple Lösung dafür?
FritzBox 7590, Synology DS216+II mit Docker
Docker: FHEM mit hmlan, Homebridge, node-red, mosquitto, ems-collector für Buderus EMS mit AVR Net-IO
Gartenwasser über MQTT auf R/Pi A+
Volkszaehler.org auf R/Pi 2B mit Pi_Erweiterung
Raspberrymatic auf R/Pi 4B mit RPI-RF-MOD u. CUL868

bgewehr

#1
Ist das jetzt eher blöd oder elegant?


define n1 notify node_red_dashboard:.* {my @DEVICE = split /:/, $EVTPART0;fhem "set $DEVICE[0] $EVTPART1" }
FritzBox 7590, Synology DS216+II mit Docker
Docker: FHEM mit hmlan, Homebridge, node-red, mosquitto, ems-collector für Buderus EMS mit AVR Net-IO
Gartenwasser über MQTT auf R/Pi A+
Volkszaehler.org auf R/Pi 2B mit Pi_Erweiterung
Raspberrymatic auf R/Pi 4B mit RPI-RF-MOD u. CUL868

CoolTux

#2
Zitat von: bgewehr am 26 Januar 2020, 12:03:28
Ist das jetzt eher blöd oder elegant?


define n1 notify node_red_dashboard:.* {my @DEVICE = split /:/, $EVTPART0;fhem "set $DEVICE[0] $EVTPART1" }


Wenn es funktioniert ist es schon mal nicht blöd

define n1 notify node_red_dashboard:.* {my @DEVICE = split /:/, $EVTPART0;fhem "set $DEVICE[0] $EVTPART1" }

define n1 notify node_red_dashboard:.* { CommandSet(undef,split(':',($EVTPART0))[0] . ' ' . $EVTPART1) }
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

herrmannj

Moin,

geht. Ansonsten:
$EVTPART0 =~ s/:$// ;
löscht das ':' (wenn vorhanden)

Wenn ich Deine Frage so sehe... ich habe diese Woche ein Modul begonnen was (vorerst) "normale" fhem device in die Lage versetzt als MQTT publisher zu arbeiten. Use case ähnlich. MQTT Dashboards (für zb. Android gibt es einige) sollen fhem Sensoren anzeigen können. Der andere Weg, also MQTT -> "normale" FHEM device ist eine mögliche Erweiterung.

Hast Du Interesse? Das letzt gemeinsame Projekt ist ja schon etwas her :D ?

bgewehr

#4
Gern! Ich dachte im Moment noch daran, das durch einfache notifys zu machen...
FritzBox 7590, Synology DS216+II mit Docker
Docker: FHEM mit hmlan, Homebridge, node-red, mosquitto, ems-collector für Buderus EMS mit AVR Net-IO
Gartenwasser über MQTT auf R/Pi A+
Volkszaehler.org auf R/Pi 2B mit Pi_Erweiterung
Raspberrymatic auf R/Pi 4B mit RPI-RF-MOD u. CUL868

herrmannj

Ja, habe ich auch aktuell. Deren Anzahl steigt aber exponentiell. time to act ;)

bgewehr

Zitat von: herrmannj am 26 Januar 2020, 12:57:24
Ja, habe ich auch aktuell. Deren Anzahl steigt aber exponentiell. time to act ;)
Verstehe. Bin dabei!
FritzBox 7590, Synology DS216+II mit Docker
Docker: FHEM mit hmlan, Homebridge, node-red, mosquitto, ems-collector für Buderus EMS mit AVR Net-IO
Gartenwasser über MQTT auf R/Pi A+
Volkszaehler.org auf R/Pi 2B mit Pi_Erweiterung
Raspberrymatic auf R/Pi 4B mit RPI-RF-MOD u. CUL868

bgewehr

FritzBox 7590, Synology DS216+II mit Docker
Docker: FHEM mit hmlan, Homebridge, node-red, mosquitto, ems-collector für Buderus EMS mit AVR Net-IO
Gartenwasser über MQTT auf R/Pi A+
Volkszaehler.org auf R/Pi 2B mit Pi_Erweiterung
Raspberrymatic auf R/Pi 4B mit RPI-RF-MOD u. CUL868

bgewehr

FritzBox 7590, Synology DS216+II mit Docker
Docker: FHEM mit hmlan, Homebridge, node-red, mosquitto, ems-collector für Buderus EMS mit AVR Net-IO
Gartenwasser über MQTT auf R/Pi A+
Volkszaehler.org auf R/Pi 2B mit Pi_Erweiterung
Raspberrymatic auf R/Pi 4B mit RPI-RF-MOD u. CUL868

Beta-User

Erfüllt denn MQTT_GENERIC_BRIDGE diese Anforderung nicht bereits?
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

bgewehr

FritzBox 7590, Synology DS216+II mit Docker
Docker: FHEM mit hmlan, Homebridge, node-red, mosquitto, ems-collector für Buderus EMS mit AVR Net-IO
Gartenwasser über MQTT auf R/Pi A+
Volkszaehler.org auf R/Pi 2B mit Pi_Erweiterung
Raspberrymatic auf R/Pi 4B mit RPI-RF-MOD u. CUL868

herrmannj

Zitat von: Beta-User am 26 Januar 2020, 13:17:52
Erfüllt denn MQTT_GENERIC_BRIDGE diese Anforderung nicht bereits?
ja, im Detail dann Funktionsunterschiede

bgewehr

Zitat von: herrmannj am 26 Januar 2020, 12:57:24
Ja, habe ich auch aktuell. Deren Anzahl steigt aber exponentiell. time to act ;)
Müsste nicht ein notify reichen, welches auf die diversen devices reagiert? Oder gibt es da eine Obergrenze?
FritzBox 7590, Synology DS216+II mit Docker
Docker: FHEM mit hmlan, Homebridge, node-red, mosquitto, ems-collector für Buderus EMS mit AVR Net-IO
Gartenwasser über MQTT auf R/Pi A+
Volkszaehler.org auf R/Pi 2B mit Pi_Erweiterung
Raspberrymatic auf R/Pi 4B mit RPI-RF-MOD u. CUL868

herrmannj

Klar.

Je nach use-case. Hast Du viele topics, unterschiedlichen playload (json, plain) wird es unübersichtlich.

bgewehr

#14
@jörg, wie hast Du die Benachrichtigung der Statuswechsel der fhem devices aus fhem an den MQTT broker gesendet ("getter")? Ein notify-Beispiel würde mir helfen, bin da noch nicht wieder tief genug drin. Den Rückweg, den "setter" habe ich schon.
FritzBox 7590, Synology DS216+II mit Docker
Docker: FHEM mit hmlan, Homebridge, node-red, mosquitto, ems-collector für Buderus EMS mit AVR Net-IO
Gartenwasser über MQTT auf R/Pi A+
Volkszaehler.org auf R/Pi 2B mit Pi_Erweiterung
Raspberrymatic auf R/Pi 4B mit RPI-RF-MOD u. CUL868