Autor Thema: Modul-Vorstellung: MQTT_GENERIC_BRIDGE  (Gelesen 2166 mal)

Offline ergerd

  • Full Member
  • ***
  • Beiträge: 129
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #45 am: 16 September 2018, 19:08:28 »
Hallo aisberg,

ja, "stopic" verwende ich auch. Zusätzlich hat ein Schalter hat bei mir auch immer ein Publish:

defmod wz_schrank FS20 af5f 05
attr wz_schrank userattr lightSceneParamsToSave lightSceneRestoreOnlyIfChanged:1,0 mqttAlias:textField-long mqttDefaults:textField-long mqttDisable:both,incoming,outgoing mqttPublish:textField-long mqttSubscribe:textField-long
attr wz_schrank DbLogExclude .*
attr wz_schrank IODev CUNO
attr wz_schrank alexaName schrank
attr wz_schrank alexaRoom alexa
attr wz_schrank alias schrank
attr wz_schrank genericDeviceType switch
attr wz_schrank group _Steckdose_
attr wz_schrank model fs20st
attr wz_schrank mqttPublish *:topic={"/SmartHome/$device/$reading"}
attr wz_schrank mqttSubscribe state:stopic={"/SmartHome/$device/set"}
attr wz_schrank room 01_wohnzimmer,alexa

Grüße
Rainer
FHEM auf RasPi 3 und B+, FHEM2FHEM, CUNO, FS20, 1Wire2WLAN, DS2423, C-Control II, Buderus KM200, nanoCUL433, LaCrosseGateway, PCA301, LIGHTIFY, alexa-fhem, LuftdatenInfo

Offline aisberg

  • Jr. Member
  • **
  • Beiträge: 55
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #46 am: 16 September 2018, 19:17:32 »
@SamNitro
was so ein kleines "s" für set doch ausmacht - perfekt!
Vielen Dank!!

Offline hexenmeister

  • Developer
  • Hero Member
  • ****
  • Beiträge: 4002
    • tech_LogBuch
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #47 am: 16 September 2018, 19:56:51 »
topic / stopic / atopic... wieso habe ich denn nur so fleißig die Texte für Commandref geschrieben  ??? ;)
Übrigens, es können auch 'verständlichere' Namen verwendet werden:
topic  = readings-topic
stopic = set-topic
atopic = attr-topic
(Diesbezüglich muss ich die Doku noch anpassen).
In Verwendung: HM, EnOcean, 1wire, Firmata, MySensors, ESPEasy, MQTT*, NodeRED, Alexa, Telegram,..
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy
Kaffeekasse: https://www.paypal.me/s6z

Offline hexenmeister

  • Developer
  • Hero Member
  • ****
  • Beiträge: 4002
    • tech_LogBuch
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #48 am: 16 September 2018, 20:03:58 »
defmod tempGefrierschrank dummy
attr tempGefrierschrank userattr mqttAlias:textField-long mqttDefaults:textField-long mqttDisable:both,incoming,outgoing mqttPublish:textField-long mqttSubscribe:textField-long
attr tempGefrierschrank genericDeviceType thermometer
attr tempGefrierschrank mqttSubscribe state:topic={"/Esp1wire@14211345/28.ff9b3b811402.f1/Temperature"}

Offensichtlich gibt es eine Unschärfe wenn ein Ampersand im Topic verwendet wird. Kann ich das selbst korrigieren ohne meine Esp's neu flashen  zu müssen?

Moin!
Du verwendest {} im Topic. Das ist ein Hinweis für das Modul, das Topic kein Text, sondern eine Perl-Expression ist. Daher kommt auch das Problem. Man könnte das Zeichen Maskieren (mit \), aber in Deinem Fall gibt es da nichts zu interpretieren. Entferne die Klammern und auch die Anführungzeichen.

In Verwendung: HM, EnOcean, 1wire, Firmata, MySensors, ESPEasy, MQTT*, NodeRED, Alexa, Telegram,..
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy
Kaffeekasse: https://www.paypal.me/s6z

Offline ergerd

  • Full Member
  • ***
  • Beiträge: 129
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #49 am: 16 September 2018, 20:31:30 »
Danke hexenmeister!

Du machst deinem Namen alle Ehre :-)

Ich liebe dieses Modul!

Grüße
Rainer
FHEM auf RasPi 3 und B+, FHEM2FHEM, CUNO, FS20, 1Wire2WLAN, DS2423, C-Control II, Buderus KM200, nanoCUL433, LaCrosseGateway, PCA301, LIGHTIFY, alexa-fhem, LuftdatenInfo

Offline Billy

  • Sr. Member
  • ****
  • Beiträge: 998
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #50 am: 18 September 2018, 20:02:17 »
@Hexenmeister
Habe mir heute deine neueste Version $Id: 10_MQTT_GENERIC_BRIDGE.pm 17363 2018-09-17 12:58:39Z hexenmeister $
eingespielt.
Vorab, läuft hervorragend, die Ansteuerung meiner Sonoff klappt. :)

Ich musste allerdings die userattr zum Device von Hand anlegen. Habe also
mqttAlias:textField-long mqttDefaults:textField-long mqttDisable:both,incoming,outgoing mqttPublish:textField-long mqttSubscribe:textField-longeinfach in userattr des Device reinkopiert.
Vermutlich liegt das aber an mir, da ich die global userattr gelöscht hatte.
Das also nur am Rande.
Ich vermute, dass das bei einer kompletten Neuanlage funktioniert oder habe ich da was übersehen?

Vielen Dank für deine Arbeit, jetzt ist das ziemlich rund.

Gruß Billy
« Letzte Änderung: 18 September 2018, 20:04:20 von Billy »
FHEM immer akt. auf 3 BeagleBoneBlack: 2xHMLAN 2xJeelink 13x PCA 301;10x HM-CC-TC, 13x HM-CC-VD, 1x HM-ES-PMSw1-Pl, 1x KFM100, 3x HM-LC-SW1-PL2, ESP8266, Sonoff

Offline Billy

  • Sr. Member
  • ****
  • Beiträge: 998
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #51 am: 19 September 2018, 10:27:16 »
Was ich jetzt bezüglich userattr nachstellen konnte sieht so aus.
Wenn ich die Bridge z.B. mit
defmod mqttGeneric MQTT_GENERIC_BRIDGE mqtt myTest1 myTest2definiere

wird nur beim ersten Device das userattr angelegt.
userattr mqttAlias:textField-long mqttDefaults:textField-long mqttDisable:both,incoming,outgoing mqttPublish:textField-long mqttSubscribe:textField-long

mit defmod mqttGeneric MQTT_GENERIC_BRIDGE mqtt myTest2kann ich dann auch für das Device myTest2 das userattr   anlegen.
Ist das so gewollt?
Billy
FHEM immer akt. auf 3 BeagleBoneBlack: 2xHMLAN 2xJeelink 13x PCA 301;10x HM-CC-TC, 13x HM-CC-VD, 1x HM-ES-PMSw1-Pl, 1x KFM100, 3x HM-LC-SW1-PL2, ESP8266, Sonoff

Offline hexenmeister

  • Developer
  • Hero Member
  • ****
  • Beiträge: 4002
    • tech_LogBuch
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #52 am: 19 September 2018, 19:38:55 »
Das soll natürlich nicht sein. Ich sehe mir das an.
Workaround bis dahin: gar keine Geräte angeben (dann wird im global definiert), oder eben per Hand erstellen.
In Verwendung: HM, EnOcean, 1wire, Firmata, MySensors, ESPEasy, MQTT*, NodeRED, Alexa, Telegram,..
Maintainer: MQTT_GENERIC_BRIDGE, SYSMON, SMARTMON, systemd_watchdog, MQTT, MQTT_DEVICE, MQTT_BRIDGE
Contrib: dev_proxy
Kaffeekasse: https://www.paypal.me/s6z

Offline Billy

  • Sr. Member
  • ****
  • Beiträge: 998
Antw:Modul-Vorstellung: MQTT_GENERIC_BRIDGE
« Antwort #53 am: 19 September 2018, 21:12:26 »
Das soll natürlich nicht sein. Ich sehe mir das an.
Workaround bis dahin: gar keine Geräte angeben (dann wird im global definiert), oder eben per Hand erstellen.

Ich für mich bevorzuge das Erstellen per Hand ab dem 2ten Device im userattr.
Dann habe ich mehr Übersicht.
Ansonsten wie schon erwähnt bin ich mit der Funktionalität sehr zufrieden. :)
FHEM immer akt. auf 3 BeagleBoneBlack: 2xHMLAN 2xJeelink 13x PCA 301;10x HM-CC-TC, 13x HM-CC-VD, 1x HM-ES-PMSw1-Pl, 1x KFM100, 3x HM-LC-SW1-PL2, ESP8266, Sonoff