Läuft: zigbee2mqtt mit MQTT2_SERVER und MQTT2_DEVICE

Begonnen von supernova1963, 23 September 2018, 19:17:21

Vorheriges Thema - Nächstes Thema

rudolfkoenig

ZitatHat man einen friendly name, mit muß man vermutlich erst noch die devicelist abfragen
Devicelist sagt mir nichts. Kannst du bitte hier eine anhaengen?

Und kannst du mir bitte zu deinen MQTT2_DEVICE Instanzen CID und readingsList zeigen? CID reicht vermutlich nicht, weil das man per Regexp beliebig kuerzen und umbauen kann. Ich hoffe, dass man im readingList fuendig wird. setList/getList ist vermutlich nicht optimal, da nicht immer vorhanden. Ich habe auch kein Problem damit, falls die Daten (auch) jemand sonst liefert, nur bitte immer mit passenden graphviz.

Weiss jemand, wieso zwischen mark79 und Beta-Users graphvis Formatunterschiede gibt?
Z.Bsp. im Detail und Vorhandensein von {}
Zitat"0x90fd9ffffe65db16" [label="0x90fd9ffffe65db16 (online)"];
vs.
"0x90fd9ffffe0e11b3" [label="{0x90fd9ffffe0e11b3|Router|IKEA TRADFRI LED bulb E26/E27 950 lumen, dimmable, white spectrum, clear (LED1546G12)|online}"];

Zitatwas wiederum auf so hübsche Bilder gemappt werden könnte wie bei ZWave
Gibt es fuer Zigbee irgendwo auch eine Datenbank, wie bei ZWave? (https://products.z-wavealliance.org)
Sonst muessten wir uns Gedanken machen, wie man eine Eigene aufbaut.

mark79

Zitat von: rudolfkoenig am 19 Dezember 2018, 16:08:19
Weiss jemand, wieso zwischen mark79 und Beta-Users graphvis Formatunterschiede gibt?
Z.Bsp. im Detail und Vorhandensein von {}Gibt es fuer Zigbee irgendwo auch eine Datenbank, wie bei ZWave? (https://products.z-wavealliance.org)
Sonst muessten wir uns Gedanken machen, wie man eine Eigene aufbaut.

Das sieht schon mal gut aus, gut gemacht! :)

Warum das bei beta-user anders aussieht weiß ich auch nicht. Vielleicht liegt es daran, das er es aus einem Fhem Log her raus kopiert hat, oder aus Fhem Event Manager? Ich hatte das mal versucht nachzustellen, erhalte aber keine Nachricht darüber. Ich hatte es wie gesagt, direkt aus der SSH Console raus kopiert.
Vielleicht kann beta-user das in der Console ausführen: "mosquitto_sub -h localhost -C 1 -t zigbee2mqtt/bridge/networkmap/graphviz" und dann den Graphiz Befehl absetzen.... und den Output aus der Console posten.

Eine Datenbank so wie bei ZWave kenne ich nicht, aber Zigbee2mqtt hat eine Datenbank wo alle Devices drin stehen. Wenn auch etwas chaotisch und teilweise doppelt bis dreifach. Und halt den Wiki Eintrag, welche Geräte unterstützt werden: https://github.com/Koenkk/zigbee2mqtt/blob/master/docs/information/supported_devices.md
Rock64 4GB mit Debian Strech, FHEM im LXC, Sonoff Switches/Touch, HM Thermostate, HMUART/Zigbee2MQTT@MapleCUN, ESP RGBWW Wifi Controller, ESP8266 Door Sensor/Briefkastenwächter, BT CSL Stick, BT iTags, Alexa, FireTV, RPi2 mit Kodi, Xiaomi Vacuum v1/Smarthome Komponenten

rudolfkoenig

ZitatVielleicht liegt es daran, das er es aus einem Fhem Log her raus kopiert hat, oder aus Fhem Event Manager?
Nein, Inhalte werden da nicht verfaelscht, und in dieser Weise schon gar nicht.

Zitataber Zigbee2mqtt hat eine Datenbank wo alle Devices drin stehen
Wenn Du mir noch sagst, wie ich "algorithmisch" von graphviz zum Bild komme, dann baue ich die Bilder auch ein.

OdfFhem

MQTT-Antwort für zigbee2mqtt/bridge/networkmap graphviz

digraph G {
node[shape=record];
  "0x00689b0018ed1421" [label="{0x00689b0018ed1421|Coordinator|No model information available|online}"];
  "0x00689b0018ed1421" -> "0x7adf5eaa000c3b81" [label="20"]
  "0x00378b0001ce4211" [label="{dimmerSwitch1|EndDevice|Philips Hue dimmer switch (324131092621)|offline}"];
  "0x00378b0001ce4211" -> "0x7adf5eaa000c3b81" [label="42"]
  "0x0028580103178983" [label="{motionSensor1|EndDevice|Philips Hue motion sensor (9290012607)|online}"];
  "0x0028580103178983" -> "0x7adf5eaa000c3b81" [label="12"]
  "0x0011030878a425e8" [label="{dimmerSwitch2|EndDevice|Philips Hue dimmer switch (324131092621)|offline}"];
  "0x0011030878a425e8" -> "0x7adf5eaa000c3b81" [label="68"]
  "0x00127d00025810d4" [label="{thpSensor1|EndDevice|Xiaomi Aqara temperature, humidity and pressure sensor (WSDCGQ11LM)|online}"];
  "0x00127d00025810d4" -> "0x00689b0018ed1421" [label="118"]
  "0x001783e60108bc9b" [label="{dimmerSwitch3|EndDevice|Philips Hue dimmer switch (324131092621)|offline}"];
  "0x001783e60108bc9b" -> "0x7adf5eaa000c3b81" [label="48"]
  "0x00173c0002d583bc" [label="{thpSensor2|EndDevice|Xiaomi Aqara temperature, humidity and pressure sensor (WSDCGQ11LM)|online}"];
  "0x00173c0002d583bc" -> "0x00689b0018ed1421" [label="47"]
  "0x0015872702d00eae" [label="{thpSensor3|EndDevice|Xiaomi Aqara temperature, humidity and pressure sensor (WSDCGQ11LM)|online}"];
  "0x0015872702d00eae" -> "0x00689b0018ed1421" [label="54"]
  "0x001237d0081d5e73" [label="{thpSensor4|EndDevice|Xiaomi Aqara temperature, humidity and pressure sensor (WSDCGQ11LM)|online}"];
  "0x001237d0081d5e73" -> "0x00689b0018ed1421" [label="29"]
  "0x0019e80002d851d4" [label="{cubeController1|EndDevice|Xiaomi Mi smart home cube (MFKZQ01LM)|online}"];
  "0x0019e80002d851d4" -> "0x00689b0018ed1421" [label="111"]
  "0x7adf5eaa000c3b81" [label="{smartPlug1|Router|OSRAM Smart+ plug (AB3257001NJ)|offline}"];
  "0x7adf5eaa000c3b81" -> "0x00689b0018ed1421" [label="7"]
  "0x00271d00051d08f9" [label="{cubeController2|EndDevice|Xiaomi Mi smart home cube (MFKZQ01LM)|online}"];
  "0x00271d00051d08f9" -> "0x00689b0018ed1421" [label="42"]
  "0x0046580103e7701e" [label="{dimmerSwitch4|EndDevice|Philips Hue dimmer switch (324131092621)|offline}"];
  "0x0046580103e7701e" -> "0x7adf5eaa000c3b81" [label="44"]
}


MQTT-Antwort für zigbee2mqtt/bridge/config/devices

{"type":"devices",
"message":[{"ieeeAddr":"0x00378b0001ce4211","type":"EndDevice","model":"324131092621","friendly_name":"dimmerSwitch1"},
            {"ieeeAddr":"0x0028580103178983","type":"EndDevice","model":"9290012607","friendly_name":"motionSensor1"},
    {"ieeeAddr":"0x0011030878a425e8","type":"EndDevice","model":"324131092621","friendly_name":"dimmerSwitch2"},
    {"ieeeAddr":"0x00127d00025810d4","type":"EndDevice","model":"WSDCGQ11LM","friendly_name":"thpSensor1"},
    {"ieeeAddr":"0x001783e60108bc9b","type":"EndDevice","model":"324131092621","friendly_name":"dimmerSwitch3"},
    {"ieeeAddr":"0x00173c0002d583bc","type":"EndDevice","model":"WSDCGQ11LM","friendly_name":"thpSensor2"},
            {"ieeeAddr":"0x0015872702d00eae","type":"EndDevice","model":"WSDCGQ11LM","friendly_name":"thpSensor3"},
    {"ieeeAddr":"0x001237d0081d5e73","type":"EndDevice","model":"WSDCGQ11LM","friendly_name":"thpSensor4"},
    {"ieeeAddr":"0x0019e80002d851d4","type":"EndDevice","model":"MFKZQ01LM","friendly_name":"cubeController1"},
    {"ieeeAddr":"0x7adf5eaa000c3b81","type":"Router","model":"AB3257001NJ","friendly_name":"smartPlug1"},
            {"ieeeAddr":"0x00271d00051d08f9","type":"EndDevice","model":"MFKZQ01LM","friendly_name":"cubeController2"},
    {"ieeeAddr":"0x0046580103e7701e","type":"EndDevice","model":"324131092621","friendly_name":"dimmerSwitch4"}]}

Hinweis: falls der friendly_name nicht explizit modifiziert wurde, entspricht er der ieeeAddr.

Liste der CIDs

zigbee_cubeController1
zigbee_dimmerSwitch1
zigbee_motionSensor1
zigbee_smartPlug1
zigbee_thpSensor1

Die CID folgt gemäß template-Festlegung immer dem Muster zigbee_<friendly_name>.

aktuell verfügbare Image-Links - gemäß der model-Bezeichnung aus devices-JSON

https://koenkk.github.io/zigbee2mqtt/images/devices/F7C033.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/AV2010-22.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/421786.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/4256251-RZHAC.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/PSS-23ZBS.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/53170161.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/CC2530.ROUTER.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/DNCKATSW001.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/DNCKATSW002.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/DNCKATSW003.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/DNCKATSW004.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/Mega23M12.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/PLUG-EDP-RE-DY.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/22670.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/45852GE.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/45857GE.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/GL-C-008.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/HS1SA.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/HS3SA.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/HS1DS.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/HS1WL.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/HALIGHTDIMWWE27.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/LED1545G12.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/LED1546G12.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/LED1623G12.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/LED1537R6.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/LED1650R5.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/LED1536G5.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/LED1622G12.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/LED1624G9.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/LED1649C5.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/ICTC-G-1.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/ICPSHC24-10EU-IL-1.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/ICPSHC24-30EU-IL-1.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/L1527.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/L1529.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/L1528.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/E1603.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/RB-185-C.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/BY-185-C.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/RB-285-C.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/RB-165.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/RB-175-W.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/RS-125.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/RS-128-T.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/RB-145.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/RB-248-T.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/BY-165.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/PL-110.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/ST-110.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/UC-110.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/DL-110-N.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/DL-110-W.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/SL-110-N.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/SL-110-M.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/SL-110-W.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/SP-120.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/3210-L.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/3326-L.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/3320-L.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/K2RGBW01.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/KS-SM001.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/NL08-0800.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/Z809A.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/FB56+ZSW05HG1.2.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/MG-AUWS01.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/4058075816718.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/AA69697.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/AC03645.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/AC03642.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/AA70155.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/AA68199.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/AB32840.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/4058075816794.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/AC03641.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/4052899926158.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/AB401130055.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/AB3257001NJ.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/4052899926110.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/4058075036185.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/4058075036147.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/AB35996.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/AC08562.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/AC01353010G.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/50045.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/50049.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/7299760PH.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/7146060PH.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/433714.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/9290011370.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/8718696449691.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/7299355PH.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/915005106701.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/9290012573A.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/9290002579A.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/8718696485880.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/915005733701.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/8718696695203.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/8718696598283.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/8718696548738.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/3261030P7.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/3216331P5.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/7199960PH.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/324131092621.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/9290012607.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/E11-G13.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/E11-G23-E11-G33.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/Z01-CIA19NAE26.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/Z01-A19NAE26.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/E11-N1EA.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/STSS-MULT-001.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/STS-PRS-251.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/73742.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/73740.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/73693.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/74283.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/74696.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/72922-A.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/74282.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/ZLED-2709.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/WXKG01LM.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/WXKG11LM.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/WXKG12LM.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/WXKG03LM.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/WXKG02LM.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/QBKG04LM.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/QBKG11LM.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/QBKG03LM.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/QBKG12LM.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/WSDCGQ01LM.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/WSDCGQ11LM.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/RTCGQ01LM.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/RTCGQ11LM.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/MCCGQ01LM.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/MCCGQ11LM.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/SJCGQ11LM.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/MFKZQ01LM.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/ZNCZ02LM.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/QBCZ11LM.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/JTYJ-GD-01LM-BW.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/JTQJ-BF-01LM-BW.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/A6121.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/DJT11LM.jpg
https://koenkk.github.io/zigbee2mqtt/images/devices/900008-WW.jpg


Beta-User

Zitat von: rudolfkoenig am 19 Dezember 2018, 16:08:19
Devicelist sagt mir nichts. Kannst du bitte hier eine anhaengen?
Gemeint war das, was bei der aktuellen get <zigbee-bridge> devicelist-Anfrage zurückkommt, raw-Definitionen zu allem im Anhang, da stehen dann auch die Werte drin
ZitatWeiss jemand, wieso zwischen mark79 und Beta-Users graphvis Formatunterschiede gibt?
Ich würde mal auf unterschiedliche SW-Versionen tippen. Ich hatte den Dienst "damals" (vor einigen Monaten) installiert und seither auch nicht aktualisiert. Das letzte update stammt aber von Anfang Dez. => mark79 ist vermutlich aktueller.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

rudolfkoenig

#245
ZitatDie CID folgt gemäß template-Festlegung immer dem Muster zigbee_<friendly_name>.
Wie ich oben geschrieben habe, das ist mir zu unsicher, wenn moeglich, dann wuerde ich diese Fehlerquelle (Benutzer modifiziert bridgeRegexp) eliminieren.
Koenntest du auch noch deine readingLists zeigen?

Zitataktuell verfügbare Image-Links - gemäß der model-Bezeichnung aus devices-JSON
Gibt es eine Moeglichkeit diese Liste selbst herunterzuladen?

Aktueller Stand siehe Anhang mit Infos von OdfFhem (verwendet CID).
Die Bilder benoetigen deviceList mit dem Format von mark79/OdfFhem

rudolfkoenig

"Show neighbor map" setzt bei den FHEM Geraeten, wo man ein Bild zuordnen konnte, das imageLink Attribut, und das wird beim Aufruf des Geraetes auch angezeigt (analog zu ZWave).

Beta-User

...sieht so aus, als sollte ich dem Pi ein update gönnen :( . Wird dauern, aber sonst erst mal *thumbs up*!!!!

Bezüglich der Reading-Namen und dem template: das sollte also "graphviz" sein, oder?

Also so:

name:L_01_zigbee2mqtt_bridge
desc:The zigbee2mqtt bridge device <br>NOTE: JSON of networkmap raw will not be expanded! <br>If you want that, change readingList accordingly, "get <device> networkmap raw" will lead to an empty afterwards.
filter:TYPE=MQTT2_DEVICE
par:BASE_TOPIC;base topic set in configuration.yaml of the zigbee2mqtt bridge;{ AttrVal("DEVICE","readingList","") =~ m,[^:]+:([^/]+)[/].*:, ? $1 : undef }
attr DEVICE bridgeRegexp\
BASE_TOPIC/([A-Za-z0-9]*)[/]?.*:.* "zigbee_$1"
attr DEVICE getList\
  devicelist:noArg log BASE_TOPIC/bridge/config/devices\
  networkmap:raw networkmap_raw BASE_TOPIC/bridge/networkmap $EVTPART1\
  networkmap_graphviz graphviz BASE_TOPIC/bridge/networkmap graphviz
attr DEVICE readingList\
  BASE_TOPIC/bridge/state:.* state\
  BASE_TOPIC/bridge/config/devices:.* {}\
  BASE_TOPIC/bridge/config/log_level:.* log_level\
  BASE_TOPIC/bridge/config/permit_join:.* permit_join\
  BASE_TOPIC/bridge/config/rename:.* { json2nameValue($EVENT, 'rename_') }\
  BASE_TOPIC/bridge/log:.* log\
  BASE_TOPIC/bridge/networkmap:.* {}\
  BASE_TOPIC/bridge/networkmap/graphviz:.* graphviz\
  BASE_TOPIC/bridge/networkmap/raw:.* networkmap_raw
attr DEVICE setList\
  log_level:debug,info,warn,error BASE_TOPIC/bridge/config/log_level $EVTPART1\
  permit_join:true,false BASE_TOPIC/bridge/config/permit_join $EVTPART1\
  remove:textField BASE_TOPIC/bridge/config/remove $EVTPART1\
  rename:textField BASE_TOPIC/bridge/config/rename  {"old":"$EVTPART1","new":"$EVTPART2"}
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

OdfFhem

Zitat
Gibt es eine Moeglichkeit diese Liste selbst herunterzuladen?
Ich habe bislang keinen Link zu einer herunterladbaren Liste gefunden. Meine Liste stammt aus der Auswertung von https://koenkk.github.io/zigbee2mqtt/information/supported_devices.html.

ZitatKoenntest du auch noch deine readingLists zeigen?
Ich verwende aktuell konsequent das Feature zur Festlegung eines individuellen friendly_name via zigbee2mqtt-Funktionalität. Alle MQTT-Meldungen verwenden den festgelegten friendly_name als Topic ...

attr MQTT2_zigbee_dimmerSwitch1 readingList zigbee2mqtt/dimmerSwitch1:.* { json2nameValue($EVENT) }


Hat man selbst keinen friendly_name festgelegt, gibt es trotzdem einen friendly_name und dieser entspricht der eindeutigen ID des ZigBee-Gerätes (ieeeAddr). MQTT-Meldungen verwenden auch in diesem Fall den friendly_name als Topic ...

attr MQTT2_zigbee_dimmerSwitch1 readingList zigbee2mqtt/0x00378b0001ce4211:.* { json2nameValue($EVENT) }

OdfFhem

Zitat
Gibt es eine Moeglichkeit diese Liste selbst herunterzuladen?
Basierend auf https://github.com/Koenkk/zigbee-shepherd-converters/blob/master/devices.js wird mit https://github.com/Koenkk/zigbee2mqtt/blob/master/docgen/supported-devices.js die Übersichtsseite der unterstützten Geräte generiert.

Aufs "Wesentliche" reduzierte Schnellansicht von supported-devices.js ...

/* This script generates the supported devices page. */

const devices = require('zigbee-shepherd-converters').devices;
const replaceByDash = [new RegExp('/', 'g'), new RegExp(':', 'g'), new RegExp(' ', 'g')];
const imageBase = '../images/devices/';

devices = new Map(devices.map((d) => [d.model, d]));
devices.forEach((d) => {
    let image = d.model;
    replaceByDash.forEach((r) => image = image.replace(r, '-'));
    image = imageBase + `${image}.jpg`;
});

rudolfkoenig

Ich pruefe jetzt auch readingList nach zigbee2mqtt/(.*): um friendly_name nach FHEM Instanznamen mappen zu koennen.

Die model => Bildnamen-Umwandlung habe ich uebernommen.
supported-devices.js waehlt eine interessante Regexp-Alternative zu d.model.replace(/[\/: ]/g,' ').

OdfFhem

@Beta-User
Wegen der erfreulichen Entwicklungen im Bereich networkmap sollten wir überlegen, folgende Änderungen am Template L_01_zigbee2mqtt_bridge vorzunehmen ...

statt (---)

attr DEVICE getList\
  devicelist:noArg log BASE_TOPIC/bridge/config/devices\
---  networkmap:raw networkmap_raw BASE_TOPIC/bridge/networkmap $EVTPART1\
---  networkmap_graphviz graphviz BASE_TOPIC/bridge/networkmap graphviz
attr DEVICE readingList\
  BASE_TOPIC/bridge/state:.* state\
  BASE_TOPIC/bridge/config/devices:.* {}\
  BASE_TOPIC/bridge/config/log_level:.* log_level\
  BASE_TOPIC/bridge/config/permit_join:.* permit_join\
  BASE_TOPIC/bridge/config/rename:.* { json2nameValue($EVENT, 'rename_') }\
  BASE_TOPIC/bridge/log:.* log\
  BASE_TOPIC/bridge/networkmap:.* {}\
---  BASE_TOPIC/bridge/networkmap/graphviz:.* graphviz\
---  BASE_TOPIC/bridge/networkmap/raw:.* networkmap_raw


eher (+++)

attr DEVICE getList\
  devicelist:noArg log BASE_TOPIC/bridge/config/devices\
+++  networkmap_raw:noArg raw BASE_TOPIC/bridge/networkmap raw\
+++  networkmap_graphviz:noArg graphviz BASE_TOPIC/bridge/networkmap graphviz
attr DEVICE readingList\
  BASE_TOPIC/bridge/state:.* state\
  BASE_TOPIC/bridge/config/devices:.* {}\
  BASE_TOPIC/bridge/config/log_level:.* log_level\
  BASE_TOPIC/bridge/config/permit_join:.* permit_join\
  BASE_TOPIC/bridge/config/rename:.* { json2nameValue($EVENT, 'rename_') }\
  BASE_TOPIC/bridge/log:.* log\
  BASE_TOPIC/bridge/networkmap:.* {}\
+++  BASE_TOPIC/bridge/networkmap/graphviz:.* graphviz\
+++  BASE_TOPIC/bridge/networkmap/raw:.* raw


Desweiteren wäre vielleicht noch ein Hinweis hilfreich, dass man bei einer nachträglichen Änderung des bridgeRegexp auf jeden Fall auch die readingList "retten" sollte. Es sei denn, man kann irgendwie verhindern, dass die readingList bei einer solchen Änderung platt gemacht wird.


@rudolfkoenig
Zunächst einmal vielen Dank für die äußerst praktische Implementation der graphviz-Darstellung. Anbei einige Anmerkungen:

  • Bei der label-Übernahme wird das abschließende } nicht entfernt
  • Wäre es möglich, die Teile aus dem Label zu entfernen, die bereits durch Visualisierung kenntlich gemacht wurden. Dazu zähle ich den 1.Eintrag (friendly_name) und den 2.Eintrag (Coordinator,Router,EndDevice)?
  • Wäre es möglich, den Coordinator noch farblich von einem Router zu unterscheiden?
  • Desweiteren wäre es sicherlich praktisch, wenn das | (Pipe) durch ein anderes Trennzeichen bzw. Trennzeichenkette (z.B. " --- ") für die Übernahme ersetzt würde. Aktuell geht das Trennzeichen verloren und wird nicht dargestellt.
  • Kann die Signalqualität (eine Richtung sollte vermutlich reichen) noch in das Label aufgenommen werden?
  • Kann der Layout-Modus (zumindest temporär) ausgeschaltet werden, so das man durch Klick auf ein Element in das entsprechende FHEM-Device gelangt?
  • Die FHEM-Devices werden korrekt zugeordnet, aber es werden keine Bilder dargestellt ...

Viele Punkte - ich weiss; aber es ist ja auch "Jammern" auf hohem Niveau und selbst  wenn keiner der Punkte umgesetzt würde, vermittelt das Feature in seiner jetzigen Form schon einen hohen Integrationsgrad.

Beta-User

OK, die network-map Änderungen sind eingecheckt, die anderen Variante habe ich gekürzt (und dann noch ein 4ch-Test-Tasmota dazugepackt).

Was die Änderungen der bridge-regexp angeht, ist das kein eigentliches Problem der templates, oder? Wenn, dann gehört es in die cref (falls es dort nicht sogar schon steht). Oder gibt es dazu Vorschläge?
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

OdfFhem

Die bridgeRegexp-Thematik ist kein eigentliches Problem der templates und die Funktionsweise steht auch in der cref. Aber gerade beim bridge-Device ist es besonders verheerend, wenn die readingList zerstört wird. Daher dachte ich, ein kleiner Hinweis kann ja nicht schaden ... war aber auch nur so eine Idee ...

rudolfkoenig

Zitatnetworkmap_raw:noArg raw BASE_TOPIC/bridge/networkmap raw
Ach. Sowas gibt es auch? Wie schaut dessen output aus?
ZitatBei der label-Übernahme wird das abschließende } nicht entfernt
Dazu brauche ein Beispiel.

ZitatWäre es möglich, die Teile aus dem Label zu entfernen, die bereits durch Visualisierung kenntlich gemacht wurden. Dazu zähle ich den 1.Eintrag (friendly_name) und den 2.Eintrag (Coordinator,Router,EndDevice)?
Dazu brauche ich ein Screenshot. Irgendetwas laeuft bei dir schief.

ZitatWäre es möglich, den Coordinator noch farblich von einem Router zu unterscheiden?
Doch, ich war nur zu faul am .css was zu aendern (bei Aenderung muss ich _alle_ Style-Css Dateien anfassen).

ZitatKann die Signalqualität (eine Richtung sollte vermutlich reichen) noch in das Label aufgenommen werden?
Wo kriege ich diese Daten her?

ZitatKann der Layout-Modus (zumindest temporär) ausgeschaltet werden, so das man durch Klick auf ein Element in das entsprechende FHEM-Device gelangt?
Sicher, es braucht nur eine Idee (wie man es ausschaltet) und Arbeit :)

ZitatDie FHEM-Devices werden korrekt zugeordnet, aber es werden keine Bilder dargestellt ...
Liegt am fehlenden/unvollstaendigen devices Reading.
Steht im commandref, aber richtig versteckt:
ZitatdevPos value
used internally by the "Show neighbor map" visualizer in FHEMWEB. This function is active if the graphviz and devices readings are set, usually in the zigbee2mqtt bridge device.