Verständnisfrage(n) MQTT-"Bridging"

Begonnen von vbs, 08 Februar 2023, 13:09:35

Vorheriges Thema - Nächstes Thema

vbs

Hi Ihr,

ich betreibe schon länger ein paar zigbee2mqtt-Geräte und die sind auch in FHEM eingebunden und das klappt auch. Hab ich vor einiger Zeit mal eingerichtet (vor Jahren?) und heute verstehe ich nicht mehr so richtig, wie es funktioniert bzw. warum  :-\. Ich hab schon einige Wiki-Seiten und Foren-Posts gelesen, aber ein paar Sachen sind noch unklar. Vielleicht darf ich da einfach mal ein paar Fragen stellen?

Kurz zu meinem Setup: Ich habe einen Mosquitto-Server separat laufen und in FHEM eine MQTT2_CLIENT-Instanz.

Also nach meinem Verständnis:
(Ich gehe von dem Fall aus, dass ignoreRegexp nicht gesetzt ist. Wäre sonst einfach ein Filter ganz am Anfang der Kette, der Nachrichten frühzeitig verwirft.)

Wenn eine Nachricht reinkommt und es irgendwo ein (oder mehrere) MQTT2_DEVICES mit einer matchenden readingsList gibt, dann werden die Daten entsprechend in Readings übernommen und die Geschichte endet dort.

Falls es keine machtende readingsList gibt, dann kommt bridgeRegexp zum Zuge und falls es ein matchendes bridgeRegexp gibt, dann wird entweder ein neues Device angelegt (mit entsprechendem readingsList-Attribut) oder es wird das readingsList eines bestehenden Devices erweitert.

So weit, so gut. Was ich nun bei mir nicht verstehe: ich hab ein Device "sys_mqttIgnoreBridge". Dort landen offenbar alle MQTT-Nachrichten, die sonst nirgends hingehören. So als eine Art Papierkorb. Vermutlich gab es damals (als ich es eingerichtet habe) noch kein ignoreRegexp. Aber ich verstehe nicht, woher mein MQTT2_CLIENT "sys_mqtt" weiß, dass alle MQTT-Nachrichten in dieses Device "sys_mqttIgnoreBridge" gepackt werden sollen.
Gehe ich richtig in der Annahme, dass *alle* MQTT-Nachrichten, die reinkommen, auf irgendein MQTT2_DEVICE "gebucht" werden, wenn nicht ignoreRegexp im Spiel ist? Und dass es so eine Arte "Default-Senke"-Device gibt (auch wenn man keine eigenen Bridges eingerichtet hat), worauf alle MQTT-Nachrichten gebucht werden, die sonst nirgends hingehörten? Scheint in meinem Fall "sys_mqttIgnoreBridge" zu sein, aber das Device wird sonst nirgends referenziert? Wie funktioniert das, dass dafür genau dieses Device benutzt wird?

Danke euch!

Hier mal ein paar ausgewählte Devices aus meinem Setup, die ich für relevant halte:
define sys_mqtt MQTT2_CLIENT 192.168.2.33:1883
attr sys_mqtt autocreate complex
attr sys_mqtt group MQTT
attr sys_mqtt room System
#   BUF       
#   Clients    :MQTT2_DEVICE:MQTT_GENERIC_BRIDGE:
#   ClientsKeepOrder 1
#   DEF        192.168.2.33:1883
#   DeviceName 192.168.2.33:1883
#   FD         38
#   FUUID      5c785dd6-f33f-af31-0db3-f7c5ae7407f90876
#   NAME       sys_mqtt
#   NR         552
#   PARTIAL   
#   STATE      opened
#   TYPE       MQTT2_CLIENT
#   WBCallback
#   clientId   sys_mqtt
#   eventCount 2
#   lastMsgTime 1675857755.06852
#   nextOpenDelay 5
#   MatchList:
#     1:MQTT2_DEVICE ^.
#     2:MQTT_GENERIC_BRIDGE ^.
#   READINGS:
#     2023-02-08 10:56:31   lastPublish     /home/myDev/Light1:val3245324
#     2023-02-07 21:22:45   state           opened
#
setstate sys_mqtt opened
setstate sys_mqtt 2023-02-08 10:56:31 lastPublish /home/myDev/Light1:val3245324
setstate sys_mqtt 2023-02-07 21:22:45 state opened



define sys_mqttIgnoreBridge MQTT2_DEVICE sys_mqtt
attr sys_mqttIgnoreBridge IODev sys_mqtt
attr sys_mqttIgnoreBridge group MQTT
attr sys_mqttIgnoreBridge readingList sys_mqtt:home/wz_lightLedTv/clock:.* clock\
sys_mqtt:home/wz_lightLedCouch/clock_slave_offset:.* clock_slave_offset\
sys_mqtt:home/wz_lightLedCouch/clock_interval:.* clock_interval\
sys_mqtt:home/ku_lightLedFloor/clock:.* clock\
sys_mqtt:home/ku_lightLedCeil/clock_slave_offset:.* clock_slave_offset\
sys_mqtt:home/ku_lightLedCeil/clock_interval:.* clock_interval\
sys_mqtt:home/minion/iptables_stats/firehol_level1/byte_count:.* byte_count\
sys_mqtt:home/minion/iptables_stats/firehol_level2/byte_count:.* byte_count\
sys_mqtt:home/minion/iptables_stats/firehol_level3/byte_count:.* byte_count\
sys_mqtt:home/wz_lightLedTv/command:.* { json2nameValue($EVENT, 'command_', $JSONMAP) }\
sys_mqtt:home/wz_lightLedTv/color:.* { json2nameValue($EVENT, 'color_', $JSONMAP) }\
sys_mqtt:home/ku_lightLedFloor/color:.* { json2nameValue($EVENT, 'color_', $JSONMAP) }\
sys_mqtt:home/sz_lightLedWall/transition_finished:.* { json2nameValue($EVENT, 'transition_finished_', $JSONMAP) }\
sys_mqtt:home/wz_lightLedCouch/clock:.* clock\
sys_mqtt:home/wz_lightLedCouch/command:.* { json2nameValue($EVENT, 'command_', $JSONMAP) }\
sys_mqtt:home/wz_lightLedTv/clock:.* clock\
sys_mqtt:home/ku_lightLedFloor/clock:.* clock\
sys_mqtt:home/ku_lightLedCeil/clock_slave_offset:.* clock_slave_offset\
sys_mqtt:home/ku_lightLedCeil/clock_interval:.* clock_interval\
sys_mqtt:last/will:.* will\
sys_mqtt:home/minion/iptables_stats/firehol_level1/byte_count:.* byte_count\
sys_mqtt:home/minion/iptables_stats/firehol_level2/byte_count:.* byte_count\
sys_mqtt:home/minion/iptables_stats/firehol_level3/byte_count:.* byte_count\
sys_mqtt:home/wz_lightLedCouch/clock_slave_offset:.* clock_slave_offset\
sys_mqtt:home/wz_lightLedCouch/clock_interval:.* clock_interval\
sys_mqtt:tasmota/discovery/C44F33EBD3F4/config:.* { json2nameValue($EVENT, 'config_', $JSONMAP) }\
sys_mqtt:tasmota/discovery/C44F33EBD3F4/sensors:.* { json2nameValue($EVENT, 'sensors_', $JSONMAP) }\
sys_mqtt:home/ku_lightLedFloor/command:.* { json2nameValue($EVENT, 'command_', $JSONMAP) }\
sys_mqtt:home/wz-switchDyad/LWT:.* LWT\
\
sys_mqtt:home/wz-switchDyad/cmnd/POWER:.* POWER\
sys_mqtt:/home/myDev/Light1:.* Light1
attr sys_mqttIgnoreBridge room System
#   CID        sys_mqtt
#   DEF        sys_mqtt
#   FUUID      5de231fe-f33f-af31-ee2c-835ddf110145e5a0
#   IODev      sys_mqtt
#   LASTInputDev sys_mqtt
#   MSGCNT     12709
#   NAME       sys_mqttIgnoreBridge
#   NR         598
#   STATE      ???
#   TYPE       MQTT2_DEVICE
#   eventCount 12715
#   sys_mqtt_MSGCNT 12709
#   sys_mqtt_TIME 2023-02-08 13:03:05
#   READINGS:
#     2023-02-07 21:22:41   IODev           sys_mqtt
#     2023-02-08 02:06:04   LWT             Online
#     2023-02-07 22:58:51   Led1_id         ben2
#     2023-02-07 22:59:42   Led2            {"id": "ben2"
#
#     2023-02-08 10:56:31   Light1          val3245324
#     2023-02-08 02:06:04   POWER           
#     2023-02-07 17:35:37   SENSOR_ENERGY_ApparentPower 46
#     2023-02-07 17:35:37   SENSOR_ENERGY_Current 0.200
#     2023-02-07 17:35:37   SENSOR_ENERGY_Factor 0.10
#     2023-02-07 17:35:37   SENSOR_ENERGY_Period 0
#     2023-02-07 17:35:37   SENSOR_ENERGY_Power 4
#     2023-02-07 17:35:37   SENSOR_ENERGY_ReactivePower 46
#     2023-02-07 17:35:37   SENSOR_ENERGY_Today 0.243
#     2023-02-07 17:35:37   SENSOR_ENERGY_Total 67.531
#     2023-02-07 17:35:37   SENSOR_ENERGY_TotalStartTime 2023-01-13T14:52:14
#     2023-02-07 17:35:37   SENSOR_ENERGY_Voltage 231
#     2023-02-07 17:35:37   SENSOR_ENERGY_Yesterday 3.502
#     2023-02-07 17:35:37   SENSOR_Time     2023-02-07T17:35:36
#     2023-02-07 17:35:37   STATE_Heap      30
#     2023-02-07 17:35:37   STATE_LoadAvg   19
#     2023-02-07 17:35:37   STATE_MqttCount 2
#     2023-02-07 17:35:37   STATE_POWER     ON
#     2023-02-07 17:35:37   STATE_Sleep     50
#     2023-02-07 17:35:37   STATE_SleepMode Dynamic
#     2023-02-07 17:35:37   STATE_Time      2023-02-07T17:35:36
#     2023-02-07 17:35:37   STATE_Uptime    0T20:32:43
#     2023-02-07 17:35:37   STATE_UptimeSec 73963
#     2023-02-07 17:35:37   STATE_Vcc       3.468
#     2023-02-07 17:35:37   STATE_Wifi_AP   1
#     2023-02-07 17:35:37   STATE_Wifi_BSSId 2C:91:AB:96:B2:3B
#     2023-02-07 17:35:37   STATE_Wifi_Channel 11
#     2023-02-07 17:35:37   STATE_Wifi_Downtime 0T00:00:10
#     2023-02-07 17:35:37   STATE_Wifi_LinkCount 2
#     2023-02-07 17:35:37   STATE_Wifi_RSSI 92
#     2023-02-07 17:35:37   STATE_Wifi_SSId hsync
#     2023-02-07 17:35:37   STATE_Wifi_Signal -54
#     2023-01-14 00:56:06   STATUS8_StatusSNS_ENERGY_ApparentPower 111
#     2023-01-14 00:56:06   STATUS8_StatusSNS_ENERGY_Current 0.509
#     2023-01-14 00:56:06   STATUS8_StatusSNS_ENERGY_Factor 0.70
#     2023-01-14 00:56:06   STATUS8_StatusSNS_ENERGY_Power 78
#     2023-01-14 00:56:06   STATUS8_StatusSNS_ENERGY_ReactivePower 79
#     2023-01-14 00:56:06   STATUS8_StatusSNS_ENERGY_Today 0.004
#     2023-01-14 00:56:06   STATUS8_StatusSNS_ENERGY_Total 0.531
#     2023-01-14 00:56:06   STATUS8_StatusSNS_ENERGY_TotalStartTime 2023-01-13T14:52:14
#     2023-01-14 00:56:06   STATUS8_StatusSNS_ENERGY_Voltage 218
#     2023-01-14 00:56:06   STATUS8_StatusSNS_ENERGY_Yesterday 0.000
#     2023-01-14 00:56:06   STATUS8_StatusSNS_Time 2023-01-14T00:56:06
#     2023-01-14 00:55:58   STATUS_Status_ButtonRetain 0
#     2023-01-14 00:55:58   STATUS_Status_ButtonTopic 0
#     2023-01-14 00:55:58   STATUS_Status_DeviceName IDS Core WH16P-EU
#     2023-01-14 00:55:58   STATUS_Status_FriendlyName_1 IDS Core WH16P-EU
#     2023-01-14 00:55:58   STATUS_Status_LedMask FFFF
#     2023-01-14 00:55:58   STATUS_Status_LedState 1
#     2023-01-14 00:55:58   STATUS_Status_Module 0
#     2023-01-14 00:55:58   STATUS_Status_Power 1
#     2023-01-14 00:55:58   STATUS_Status_PowerOnState 3
#     2023-01-14 00:55:58   STATUS_Status_PowerRetain 0
#     2023-01-14 00:55:58   STATUS_Status_SaveData 1
#     2023-01-14 00:55:58   STATUS_Status_SaveState 1
#     2023-01-14 00:55:58   STATUS_Status_SensorRetain 0
#     2023-01-14 00:55:58   STATUS_Status_SwitchMode_1 0
#     2023-01-14 00:55:58   STATUS_Status_SwitchMode_2 0
#     2023-01-14 00:55:58   STATUS_Status_SwitchMode_3 0
#     2023-01-14 00:55:58   STATUS_Status_SwitchMode_4 0
#     2023-01-14 00:55:58   STATUS_Status_SwitchMode_5 0
#     2023-01-14 00:55:58   STATUS_Status_SwitchMode_6 0
#     2023-01-14 00:55:58   STATUS_Status_SwitchMode_7 0
#     2023-01-14 00:55:58   STATUS_Status_SwitchMode_8 0
#     2023-01-14 00:55:58   STATUS_Status_SwitchRetain 0
#     2023-01-14 00:55:58   STATUS_Status_SwitchTopic 0
#     2023-01-14 00:55:58   STATUS_Status_Topic %hostname%
#     2023-02-08 13:02:15   byte_count      131
#     2023-02-08 13:03:05   clock           7710000
#     2023-02-08 13:03:05   clock_interval  19986
#     2023-02-08 13:03:05   clock_slave_offset 1
#     2023-02-08 09:21:35   command_jsonrpc 2.0
#     2023-02-08 09:21:35   command_method  color
#     2023-02-08 09:21:35   command_params_cmd fade
#     2023-02-08 09:21:35   command_params_d 1
#     2023-02-05 16:23:03   command_params_hsv_ct 2700
#     2023-02-08 09:21:35   command_params_hsv_h 120
#     2023-02-08 09:21:35   command_params_hsv_s 70
#     2023-02-08 09:21:35   command_params_hsv_v 0
#     2023-02-08 09:21:35   command_params_q single
#     2023-02-08 09:21:35   command_params_t 960000
#     2023-02-06 21:03:04   config_btn_1    0
#     2023-02-06 21:03:04   config_btn_2    0
#     2023-02-06 21:03:04   config_btn_3    0
#     2023-02-06 21:03:04   config_btn_4    0
#     2023-02-06 21:03:04   config_dn       IDS Core WH16P-EU
#     2023-02-06 21:03:04   config_fn_1     IDS Core WH16P-EU
#     2023-02-06 21:03:04   config_ft       home/%topic%/
#     2023-02-06 21:03:04   config_hn       wz-switchDyad
#     2023-02-06 21:03:04   config_if       0
#     2023-02-06 21:03:04   config_ip       192.168.2.54
#     2023-02-06 21:03:04   config_lk       1
#     2023-02-06 21:03:04   config_lt_st    0
#     2023-02-06 21:03:04   config_mac      C44F33EBD3F4
#     2023-02-06 21:03:04   config_md       IDS Core WH16P-EU
#     2023-02-06 21:03:04   config_ofln     Offline
#     2023-02-06 21:03:04   config_onln     Online
#     2023-02-06 21:03:04   config_rl_1     1
#     2023-02-06 21:03:04   config_rl_2     0
#     2023-02-06 21:03:04   config_rl_3     0
#     2023-02-06 21:03:04   config_rl_4     0
#     2023-02-06 21:03:04   config_rl_5     0
#     2023-02-06 21:03:04   config_rl_6     0
#     2023-02-06 21:03:04   config_rl_7     0
#     2023-02-06 21:03:04   config_rl_8     0
#     2023-02-06 21:03:04   config_so_11    0
#     2023-02-06 21:03:04   config_so_114   0
#     2023-02-06 21:03:04   config_so_13    0
#     2023-02-06 21:03:04   config_so_17    0
#     2023-02-06 21:03:04   config_so_20    0
#     2023-02-06 21:03:04   config_so_30    0
#     2023-02-06 21:03:04   config_so_4     0
#     2023-02-06 21:03:04   config_so_68    0
#     2023-02-06 21:03:04   config_so_73    0
#     2023-02-06 21:03:04   config_so_82    0
#     2023-02-06 21:03:04   config_state_1  OFF
#     2023-02-06 21:03:04   config_state_2  ON
#     2023-02-06 21:03:04   config_state_3  TOGGLE
#     2023-02-06 21:03:04   config_state_4  HOLD
#     2023-02-06 21:03:04   config_sw       9.1.1
#     2023-02-06 21:03:04   config_swc_1    -1
#     2023-02-06 21:03:04   config_swc_2    -1
#     2023-02-06 21:03:04   config_swc_3    -1
#     2023-02-06 21:03:04   config_swc_4    -1
#     2023-02-06 21:03:04   config_swc_5    -1
#     2023-02-06 21:03:04   config_swc_6    -1
#     2023-02-06 21:03:04   config_swc_7    -1
#     2023-02-06 21:03:04   config_swc_8    -1
#     2023-02-06 21:03:04   config_t        %hostname%
#     2023-02-06 21:03:04   config_tp_1     cmnd
#     2023-02-06 21:03:04   config_tp_2     stat
#     2023-02-06 21:03:04   config_tp_3     tele
#     2023-02-06 21:03:04   config_ty       0
#     2023-02-06 21:03:04   config_ver      1
#     2023-02-06 21:03:04   sensors_sn_ENERGY_ApparentPower 285
#     2023-02-06 21:03:04   sensors_sn_ENERGY_Current 1.202
#     2023-02-06 21:03:04   sensors_sn_ENERGY_Factor 1.00
#     2023-02-06 21:03:04   sensors_sn_ENERGY_Power 285
#     2023-02-06 21:03:04   sensors_sn_ENERGY_ReactivePower 0
#     2023-02-06 21:03:04   sensors_sn_ENERGY_Today 3.027
#     2023-02-06 21:03:04   sensors_sn_ENERGY_Total 66.813
#     2023-02-06 21:03:04   sensors_sn_ENERGY_TotalStartTime 2023-01-13T14:52:14
#     2023-02-06 21:03:04   sensors_sn_ENERGY_Voltage 237
#     2023-02-06 21:03:04   sensors_sn_ENERGY_Yesterday 3.879
#     2023-02-06 21:03:04   sensors_sn_Time 2023-02-06T21:03:03
#     2023-02-06 21:03:04   sensors_ver     1
#     2023-02-08 02:06:09   will            The connection from this device is lost:(
#
setstate sys_mqttIgnoreBridge 2023-02-07 21:22:41 IODev sys_mqtt
setstate sys_mqttIgnoreBridge 2023-02-08 02:06:04 LWT Online
<viele viele Readings weggelassen>
setstate sys_mqttIgnoreBridge 2023-02-08 02:06:09 will The connection from this device is lost:(



define sys_mqttBridge MQTT2_DEVICE sysmqtt
attr sys_mqttBridge IODev sys_mqtt
attr sys_mqttBridge alias sys_mqttBridge
attr sys_mqttBridge autocreate 0
attr sys_mqttBridge bridgeRegexp (tele|cmnd)[/]([^/]+)[/].*:.* "$2"\
  shellies[/]([^/]+)[/].*:.* "$1"\
  (ESPClient_[^/]+)[/].*:.* "$1"
attr sys_mqttBridge comment Do not use very open bridgeRegexp expressions! This might lead to irritating results...
attr sys_mqttBridge group MQTT
attr sys_mqttBridge model A_00_MQTT2_CLIENT_general_bridge
attr sys_mqttBridge readingList sysmqtt:last/will:.* will\

attr sys_mqttBridge room System
attr sys_mqttBridge setStateList on off
#   CID        sysmqtt
#   DEF        sysmqtt
#   FUUID      5c956eea-f33f-af31-39f7-e0f28c37d76a54bc
#   IODev      sys_mqtt
#   NAME       sys_mqttBridge
#   NR         567
#   STATE      ???
#   TYPE       MQTT2_DEVICE
#   READINGS:
#     2023-02-07 21:22:41   IODev           sys_mqtt
#     2019-10-04 00:00:17   will            The connection from this device is lost:(
#
setstate sys_mqttBridge 2023-02-07 21:22:41 IODev sys_mqtt
setstate sys_mqttBridge 2019-10-04 00:00:17 will The connection from this device is lost:(



define sys_mqttZigbeeBridge MQTT2_DEVICE
attr sys_mqttZigbeeBridge IODev sys_mqtt
attr sys_mqttZigbeeBridge alias sys_mqttZigbeeBridge
attr sys_mqttZigbeeBridge bridgeRegexp zigbee2mqtt/([A-Za-z0-9._]*)[/]?.*:.* "zigbee_$1"
attr sys_mqttZigbeeBridge getList devicelist:noArg log zigbee2mqtt/bridge/config/devices\
  networkmap_raw:noArg raw zigbee2mqtt/bridge/networkmap raw\
  networkmap_graphviz:noArg graphviz zigbee2mqtt/bridge/networkmap graphviz
attr sys_mqttZigbeeBridge group MQTT
attr sys_mqttZigbeeBridge model L_01_zigbee2mqtt_bridge
attr sys_mqttZigbeeBridge readingList zigbee2mqtt/bridge/state:.* state\
  zigbee2mqtt/bridge/config/devices:.* {}\
  zigbee2mqtt/bridge/config/log_level:.* log_level\
  zigbee2mqtt/bridge/config/permit_join:.* permit_join\
  zigbee2mqtt/bridge/config/rename:.* { json2nameValue($EVENT, 'rename_') }\
  zigbee2mqtt/bridge/log:.*\"type\".\"devices\".\"message\".* devices\
  zigbee2mqtt/bridge/log:.* log\
  zigbee2mqtt/bridge/networkmap:.* {}\
  zigbee2mqtt/bridge/networkmap/graphviz:.* graphviz\
  zigbee2mqtt/bridge/networkmap/raw:.* raw\
  zigbee2mqtt/bridge/config:.* { json2nameValue($EVENT) }
attr sys_mqttZigbeeBridge room System
attr sys_mqttZigbeeBridge setList log_level:debug,info,warn,error zigbee2mqtt/bridge/config/log_level $EVTPART1\
  permit_join:true,false zigbee2mqtt/bridge/config/permit_join $EVTPART1\
  remove:textField zigbee2mqtt/bridge/config/remove $EVTPART1\
  y_device_setting:textField zigbee2mqtt/$EVTPART1/set {"$EVTPART2": "$EVTPART3"}\
  x_bind:textField zigbee2mqtt/bridge/bind/$EVTPART1 $EVTPART2\
  x_bind_unbind:textField zigbee2mqtt/bridge/unbind/$EVTPART1 $EVTPART2\
  x_device_options:textField zigbee2mqtt/bridge/config/device_options {"friendly_name":"$EVTPART1",""options": {"$EVTPART2": "$EVTPART3"}}\
  x_group_add_to:textField zigbee2mqtt/bridge/group/$EVTPART1/add $EVTPART2\
  x_group_rm_from:textField zigbee2mqtt/bridge/group/$EVTPART1/remove $EVTPART2\
  x_group_rm_from_all:textField zigbee2mqtt/bridge/group/$EVTPART1/remove_all $EVTPART2\
  x_group_add_group:textField zigbee2mqtt/bridge/config/add_group $EVTPART1\
  x_group_rm_group:textField zigbee2mqtt/bridge/config/remove_group $EVTPART1\
  z_elapsed:textField zigbee2mqtt/bridge/config/elapsed $EVTPART1\
  z_last_seen:textField zigbee2mqtt/bridge/config/last_seen $EVTPART1\
  z_ban:textField zigbee2mqtt/bridge/config/ban $EVTPART1\
  z_rename:textField zigbee2mqtt/bridge/config/rename  {"old":"$EVTPART1","new":"$EVTPART2"}\
  z_reset_CC:noArg zigbee2mqtt/bridge/config/reset
attr sys_mqttZigbeeBridge setStateList on off
#   FUUID      5c8d8266-f33f-af31-8da8-03ba0ae15e1cc9d1
#   IODev      sys_mqtt
#   LASTInputDev sys_mqtt
#   MSGCNT     1
#   NAME       sys_mqttZigbeeBridge
#   NR         565
#   STATE      {"state":"online"}
#   TYPE       MQTT2_DEVICE
#   eventCount 1
#   sys_mqtt_MSGCNT 1
#   sys_mqtt_TIME 2023-02-07 21:22:46
#   READINGS:
#     2023-02-07 21:22:41   IODev           sys_mqtt
#     2023-02-05 23:13:36   commit          8f781db
#     2019-12-13 14:35:56   coordinator     20190608
#     2023-02-05 23:13:36   coordinator_meta_maintrel 3
#     2023-02-05 23:13:36   coordinator_meta_majorrel 2
#     2023-02-05 23:13:36   coordinator_meta_minorrel 6
#     2023-02-05 23:13:36   coordinator_meta_product 0
#     2023-02-05 23:13:36   coordinator_meta_revision 20211115
#     2023-02-05 23:13:36   coordinator_meta_transportrev 2
#     2023-02-05 23:13:36   coordinator_type zStack12
#     2019-09-03 20:15:30   devices         {"type":"devices","message":[{"ieeeAddr":"0x00124b001bb8791a","type":"Coordinator"},{"ieeeAddr":"0x00158d0002ec043c","type":"EndDevice","model":"RTCGQ11LM","friendly_name":"fl_motion","nwkAddr":43074,"manufId":4151,"manufName":"LUMI","powerSource":"Battery","modelId":"lumi.sensor_motion.aq2","hwVersion":1,"swBuildId":"3000-0001","dateCode":"20170627"},{"ieeeAddr":"0x00158d0002ec02e8","type":"EndDevice","model":"RTCGQ11LM","friendly_name":"ku_motion","nwkAddr":3162,"manufId":4151,"manufName":"LUMI","powerSource":"Battery","modelId":"lumi.sensor_motion.aq2","hwVersion":1,"swBuildId":"3000-0001","dateCode":"20170627"},{"ieeeAddr":"0x00158d00025f2646","type":"EndDevice","model":"RTCGQ11LM","friendly_name":"sz_motion","nwkAddr":23627,"manufId":4151,"manufName":"LUMI","powerSource":"Battery","modelId":"lumi.sensor_motion.aq2","hwVersion":1,"swBuildId":"3000-0001","dateCode":"20170627"},{"ieeeAddr":"0x00158d0002c9c98a","type":"EndDevice","model":"MCCGQ11LM","friendly_name":"ku_fridgeDoor","nwkAddr":2886,"manufId":4151,"manufName":"LUMI","powerSource":"Battery","modelId":"lumi.sensor_magnet.aq2","hwVersion":2,"swBuildId":"3000-0001","dateCode":"20161128"},{"ieeeAddr":"0x00158d00027de261","type":"EndDevice","model":"MFKZQ01LM","friendly_name":"wz_cube","nwkAddr":19890,"manufId":4151,"manufName":"LUMI","powerSource":"Battery","modelId":"lumi.sensor_cube","hwVersion":1,"swBuildId":"3000-0001","dateCode":"20160704"},{"ieeeAddr":"0x90fd9ffffe635e9e","type":"EndDevice","model":"E1524","friendly_name":"wz_remoteLight","nwkAddr":46090,"manufId":4476,"manufName":"IKEA of Sweden","powerSource":"Battery","modelId":"TRADFRI remote control","hwVersion":1,"swBuildId":"1.2.214","dateCode":"20170302"},{"ieeeAddr":"0x00158d0002ebd66b","type":"EndDevice","model":"MCCGQ11LM","friendly_name":"ku_freezerDoor","nwkAddr":48164,"manufId":4151,"manufName":"LUMI","powerSource":"Battery","modelId":"lumi.sensor_magnet.aq2","hwVersion":2,"swBuildId":"3000-0001","dateCode":"20161128"}]}
#     2021-12-30 21:01:21   graphviz        digraph G {
#node[shape=record];
#  "0x00124b001bb8791a" [style="bold, filled", fillcolor="#e04e5d", fontcolor="#ffffff", label="{Coordinator|0x00124b001bb8791a (0x0000)|0 seconds ago}"];
#  "0x00158d0002ec043c" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{fl_motion|0x00158d0002ec043c (0x6b02)|Xiaomi Aqara human body movement and illuminance sensor (RTCGQ11LM)|18 minutes, 46 seconds ago}"];
#  "0x00158d0002ec043c" -> "0x00124b001bb8791a" [penwidth=1, weight=0, color="#994444", label="170"]
#  "0x00158d0002ec02e8" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{ku_motion|0x00158d0002ec02e8 (0xdeb6)|Xiaomi Aqara human body movement and illuminance sensor (RTCGQ11LM)|18 minutes, 43 seconds ago}"];
#  "0x00158d0002ec02e8" -> "0x00124b001bb8791a" [penwidth=1, weight=0, color="#994444", label="170"]
#  "0x00158d00025f2646" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{sz_motion|0x00158d00025f2646 (0x5c4b)|Xiaomi Aqara human body movement and illuminance sensor (RTCGQ11LM)|11 minutes, 45 seconds ago}"];
#  "0x00158d00025f2646" -> "0x00124b001bb8791a" [penwidth=1, weight=0, color="#994444", label="170"]
#  "0x00158d0002c9c98a" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{ku_fridgeDoor|0x00158d0002c9c98a (0x91c6)|Xiaomi Aqara door & window contact sensor (MCCGQ11LM)|18 minutes, 37 seconds ago}"];
#  "0x00158d0002c9c98a" -> "0x00124b001bb8791a" [penwidth=1, weight=0, color="#994444", label="170"]
#  "0x00158d00027de261" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{wz_cube|0x00158d00027de261 (0x4db2)|Xiaomi Mi/Aqara smart home cube (MFKZQ01LM)|21 minutes, 19 seconds ago}"];
#  "0x00158d00027de261" -> "0x00124b001bb8791a" [penwidth=1, weight=0, color="#994444", label="170"]
#  "0x90fd9ffffe635e9e" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{wz_remoteLight|0x90fd9ffffe635e9e (0xb40a)|IKEA TRADFRI remote control (E1524/E1810)|2 months, 1 week ago}"];
#  "0x90fd9ffffe635e9e" -> "0x00124b001bb8791a" [penwidth=1, weight=0, color="#994444", label="170"]
#  "0x00158d0002ebd66b" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{ku_freezerDoor|0x00158d0002ebd66b (0xbc24)|Xiaomi Aqara door & window contact sensor (MCCGQ11LM)|31 minutes ago}"];
#  "0x00158d000239e5f1" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{0x00158d000239e5f1|0x00158d000239e5f1 (0x5453)|Xiaomi Aqara wireless switch (WXKG11LM)|unknown}"];
#  "0x00158d000239e5f1" -> "0x00124b001bb8791a" [penwidth=1, weight=0, color="#994444", label="170"]
#  "0x00158d000423b7ea" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{0x00158d000423b7ea|0x00158d000423b7ea (0xf011)|Xiaomi Aqara wireless switch (WXKG11LM)|41 minutes, 10 seconds ago}"];
#  "0x00158d000423b7ea" -> "0x00124b001bb8791a" [penwidth=1, weight=0, color="#994444", label="170"]
#  "0x04cf8cdf3c75b1b5" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{0x04cf8cdf3c75b1b5|0x04cf8cdf3c75b1b5 (0x1a92)|Xiaomi Aqara Opple switch 3 bands (WXCJKG13LM)|1 day, 3 hours ago}"];
#  "0x04cf8cdf3c75b1b5" -> "0x00124b001bb8791a" [penwidth=1, weight=0, color="#994444", label="170"]
#  "0x00158d0002ebff64" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{0x00158d0002ebff64|0x00158d0002ebff64 (0x028c)|Xiaomi Aqara human body movement and illuminance sensor (RTCGQ11LM)|17 minutes, 37 seconds ago}"];
#  "0x00158d0002ebff64" -> "0x00124b001bb8791a" [penwidth=1, weight=0, color="#994444", label="170"]
#}
#     2023-02-05 23:15:47   log             {"message":"interview_successful","meta":{"description":"Smart plug (with power monitoring)","friendly_name":"0xa4c1387ec6df59ac","model":"TS011F_plug_1","supported":true,"vendor":"TuYa"},"type":"pairing"}
#     2023-02-05 23:13:36   log_level       debug
#     2023-02-05 23:13:36   network_channel 11
#     2023-02-05 23:13:36   network_extendedPanID 0x00124b001bb8f08b
#     2023-02-05 23:13:36   network_panID   6754
#     2023-02-05 23:13:36   permit_join     true
#     2019-08-18 23:03:00   rename_new      ku_freezerDoor
#     2019-08-18 23:03:00   rename_old      0x00158d0002ebd66b
#     2023-02-07 21:22:46   state           {"state":"online"}
#     2023-02-05 23:13:36   version         1.30.0
#     2021-12-30 01:05:19   x_device_options set fl_motion occupancy_timeout 65
#     2019-08-18 23:03:00   z_rename        set 0x00158d0002ebd66b ku_freezerDoor
#
setstate sys_mqttZigbeeBridge {"state":"online"}
setstate sys_mqttZigbeeBridge 2023-02-07 21:22:41 IODev sys_mqtt
setstate sys_mqttZigbeeBridge 2023-02-05 23:13:36 commit 8f781db
setstate sys_mqttZigbeeBridge 2019-12-13 14:35:56 coordinator 20190608
setstate sys_mqttZigbeeBridge 2023-02-05 23:13:36 coordinator_meta_maintrel 3
setstate sys_mqttZigbeeBridge 2023-02-05 23:13:36 coordinator_meta_majorrel 2
setstate sys_mqttZigbeeBridge 2023-02-05 23:13:36 coordinator_meta_minorrel 6
setstate sys_mqttZigbeeBridge 2023-02-05 23:13:36 coordinator_meta_product 0
setstate sys_mqttZigbeeBridge 2023-02-05 23:13:36 coordinator_meta_revision 20211115
setstate sys_mqttZigbeeBridge 2023-02-05 23:13:36 coordinator_meta_transportrev 2
setstate sys_mqttZigbeeBridge 2023-02-05 23:13:36 coordinator_type zStack12
setstate sys_mqttZigbeeBridge 2019-09-03 20:15:30 devices {"type":"devices","message":[{"ieeeAddr":"0x00124b001bb8791a","type":"Coordinator"},{"ieeeAddr":"0x00158d0002ec043c","type":"EndDevice","model":"RTCGQ11LM","friendly_name":"fl_motion","nwkAddr":43074,"manufId":4151,"manufName":"LUMI","powerSource":"Battery","modelId":"lumi.sensor_motion.aq2","hwVersion":1,"swBuildId":"3000-0001","dateCode":"20170627"},{"ieeeAddr":"0x00158d0002ec02e8","type":"EndDevice","model":"RTCGQ11LM","friendly_name":"ku_motion","nwkAddr":3162,"manufId":4151,"manufName":"LUMI","powerSource":"Battery","modelId":"lumi.sensor_motion.aq2","hwVersion":1,"swBuildId":"3000-0001","dateCode":"20170627"},{"ieeeAddr":"0x00158d00025f2646","type":"EndDevice","model":"RTCGQ11LM","friendly_name":"sz_motion","nwkAddr":23627,"manufId":4151,"manufName":"LUMI","powerSource":"Battery","modelId":"lumi.sensor_motion.aq2","hwVersion":1,"swBuildId":"3000-0001","dateCode":"20170627"},{"ieeeAddr":"0x00158d0002c9c98a","type":"EndDevice","model":"MCCGQ11LM","friendly_name":"ku_fridgeDoor","nwkAddr":2886,"manufId":4151,"manufName":"LUMI","powerSource":"Battery","modelId":"lumi.sensor_magnet.aq2","hwVersion":2,"swBuildId":"3000-0001","dateCode":"20161128"},{"ieeeAddr":"0x00158d00027de261","type":"EndDevice","model":"MFKZQ01LM","friendly_name":"wz_cube","nwkAddr":19890,"manufId":4151,"manufName":"LUMI","powerSource":"Battery","modelId":"lumi.sensor_cube","hwVersion":1,"swBuildId":"3000-0001","dateCode":"20160704"},{"ieeeAddr":"0x90fd9ffffe635e9e","type":"EndDevice","model":"E1524","friendly_name":"wz_remoteLight","nwkAddr":46090,"manufId":4476,"manufName":"IKEA of Sweden","powerSource":"Battery","modelId":"TRADFRI remote control","hwVersion":1,"swBuildId":"1.2.214","dateCode":"20170302"},{"ieeeAddr":"0x00158d0002ebd66b","type":"EndDevice","model":"MCCGQ11LM","friendly_name":"ku_freezerDoor","nwkAddr":48164,"manufId":4151,"manufName":"LUMI","powerSource":"Battery","modelId":"lumi.sensor_magnet.aq2","hwVersion":2,"swBuildId":"3000-0001","dateCode":"20161128"}]}
setstate sys_mqttZigbeeBridge 2021-12-30 21:01:21 graphviz digraph G {\
node[shape=record];;\
  "0x00124b001bb8791a" [style="bold, filled", fillcolor="#e04e5d", fontcolor="#ffffff", label="{Coordinator|0x00124b001bb8791a (0x0000)|0 seconds ago}"];;\
  "0x00158d0002ec043c" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{fl_motion|0x00158d0002ec043c (0x6b02)|Xiaomi Aqara human body movement and illuminance sensor (RTCGQ11LM)|18 minutes, 46 seconds ago}"];;\
  "0x00158d0002ec043c" -> "0x00124b001bb8791a" [penwidth=1, weight=0, color="#994444", label="170"]\
  "0x00158d0002ec02e8" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{ku_motion|0x00158d0002ec02e8 (0xdeb6)|Xiaomi Aqara human body movement and illuminance sensor (RTCGQ11LM)|18 minutes, 43 seconds ago}"];;\
  "0x00158d0002ec02e8" -> "0x00124b001bb8791a" [penwidth=1, weight=0, color="#994444", label="170"]\
  "0x00158d00025f2646" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{sz_motion|0x00158d00025f2646 (0x5c4b)|Xiaomi Aqara human body movement and illuminance sensor (RTCGQ11LM)|11 minutes, 45 seconds ago}"];;\
  "0x00158d00025f2646" -> "0x00124b001bb8791a" [penwidth=1, weight=0, color="#994444", label="170"]\
  "0x00158d0002c9c98a" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{ku_fridgeDoor|0x00158d0002c9c98a (0x91c6)|Xiaomi Aqara door & window contact sensor (MCCGQ11LM)|18 minutes, 37 seconds ago}"];;\
  "0x00158d0002c9c98a" -> "0x00124b001bb8791a" [penwidth=1, weight=0, color="#994444", label="170"]\
  "0x00158d00027de261" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{wz_cube|0x00158d00027de261 (0x4db2)|Xiaomi Mi/Aqara smart home cube (MFKZQ01LM)|21 minutes, 19 seconds ago}"];;\
  "0x00158d00027de261" -> "0x00124b001bb8791a" [penwidth=1, weight=0, color="#994444", label="170"]\
  "0x90fd9ffffe635e9e" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{wz_remoteLight|0x90fd9ffffe635e9e (0xb40a)|IKEA TRADFRI remote control (E1524/E1810)|2 months, 1 week ago}"];;\
  "0x90fd9ffffe635e9e" -> "0x00124b001bb8791a" [penwidth=1, weight=0, color="#994444", label="170"]\
  "0x00158d0002ebd66b" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{ku_freezerDoor|0x00158d0002ebd66b (0xbc24)|Xiaomi Aqara door & window contact sensor (MCCGQ11LM)|31 minutes ago}"];;\
  "0x00158d000239e5f1" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{0x00158d000239e5f1|0x00158d000239e5f1 (0x5453)|Xiaomi Aqara wireless switch (WXKG11LM)|unknown}"];;\
  "0x00158d000239e5f1" -> "0x00124b001bb8791a" [penwidth=1, weight=0, color="#994444", label="170"]\
  "0x00158d000423b7ea" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{0x00158d000423b7ea|0x00158d000423b7ea (0xf011)|Xiaomi Aqara wireless switch (WXKG11LM)|41 minutes, 10 seconds ago}"];;\
  "0x00158d000423b7ea" -> "0x00124b001bb8791a" [penwidth=1, weight=0, color="#994444", label="170"]\
  "0x04cf8cdf3c75b1b5" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{0x04cf8cdf3c75b1b5|0x04cf8cdf3c75b1b5 (0x1a92)|Xiaomi Aqara Opple switch 3 bands (WXCJKG13LM)|1 day, 3 hours ago}"];;\
  "0x04cf8cdf3c75b1b5" -> "0x00124b001bb8791a" [penwidth=1, weight=0, color="#994444", label="170"]\
  "0x00158d0002ebff64" [style="rounded, dashed, filled", fillcolor="#fff8ce", fontcolor="#000000", label="{0x00158d0002ebff64|0x00158d0002ebff64 (0x028c)|Xiaomi Aqara human body movement and illuminance sensor (RTCGQ11LM)|17 minutes, 37 seconds ago}"];;\
  "0x00158d0002ebff64" -> "0x00124b001bb8791a" [penwidth=1, weight=0, color="#994444", label="170"]\
}
setstate sys_mqttZigbeeBridge 2023-02-05 23:15:47 log {"message":"interview_successful","meta":{"description":"Smart plug (with power monitoring)","friendly_name":"0xa4c1387ec6df59ac","model":"TS011F_plug_1","supported":true,"vendor":"TuYa"},"type":"pairing"}
setstate sys_mqttZigbeeBridge 2023-02-05 23:13:36 log_level debug
setstate sys_mqttZigbeeBridge 2023-02-05 23:13:36 network_channel 11
setstate sys_mqttZigbeeBridge 2023-02-05 23:13:36 network_extendedPanID 0x00124b001bb8f08b
setstate sys_mqttZigbeeBridge 2023-02-05 23:13:36 network_panID 6754
setstate sys_mqttZigbeeBridge 2023-02-05 23:13:36 permit_join true
setstate sys_mqttZigbeeBridge 2019-08-18 23:03:00 rename_new ku_freezerDoor
setstate sys_mqttZigbeeBridge 2019-08-18 23:03:00 rename_old 0x00158d0002ebd66b
setstate sys_mqttZigbeeBridge 2023-02-07 21:22:46 state {"state":"online"}
setstate sys_mqttZigbeeBridge 2023-02-05 23:13:36 version 1.30.0
setstate sys_mqttZigbeeBridge 2021-12-30 01:05:19 x_device_options set fl_motion occupancy_timeout 65
setstate sys_mqttZigbeeBridge 2019-08-18 23:03:00 z_rename set 0x00158d0002ebd66b ku_freezerDoor


Beta-User

Zitat von: vbs am 08 Februar 2023, 13:09:35
So weit, so gut. Was ich nun bei mir nicht verstehe: ich hab ein Device "sys_mqttIgnoreBridge". Dort landen offenbar alle MQTT-Nachrichten, die sonst nirgends hingehören. So als eine Art Papierkorb. Vermutlich gab es damals (als ich es eingerichtet habe) noch kein ignoreRegexp. Aber ich verstehe nicht, woher mein MQTT2_CLIENT "sys_mqtt" weiß, dass alle MQTT-Nachrichten in dieses Device "sys_mqttIgnoreBridge" gepackt werden sollen.
Du hast das schon ganz gut durchschaut, es fehlt eigentlich nur der Baustein "CID".

An der (in der DEF enthaltenen CID) der MQTT2_DEVICE's wird festgemacht, welche der vorhandenen Instanzen ggf. die Nachrichten bekommt. Bei der, auf die das paßt, wird die readingList erweitert, falls dort nicht (readingList-) "autocreate" deaktiviert ist. Gibt es keine, greift eben (Device-) "autocreate" (aus dem IO+globales autocreate).
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

ZitatGehe ich richtig in der Annahme, dass *alle* MQTT-Nachrichten, die reinkommen, auf irgendein MQTT2_DEVICE "gebucht" werden, wenn nicht ignoreRegexp im Spiel ist?
Ja, falls im IO-Device autocreate aktiviert ist.

Generell gilt: erst wird per readingsList ein Geraet gesucht. Falls keins gefunden und autocreate aktiviert ist, dann wird erweitert.
Dabei wird die zu erweiternde Instanz anhand der ClientID gefunden, was beim MQTT2_CLIENT dem Namen der MQTT2_CLIENT FHEM Instanz entspricht, es sei denn man hat es per Attribut geaendert.
bridgeRegexp (falls gesetzt) erfindet "nur" ein besseres ClientId.

Das Modell kommt vom MQTT2_SERVER, was die richtigen ClientIDs kennt.
Das wird beim MQTT2_CLIENT per bridgeRegexp emuliert.
Das Gleiche gilt fuer bridge Geraete wie zigbee2mqtt.

(Beta-User war schneller)

vbs

Ach, danke euch! Ihr seid echt schnell.

Ok, also das erklärt schon mal wieder so einiges, aber ich bin da noch etwas am Verdauen mit den CIDs.

Was mir aufgefallen ist: ich hab 3 "Bridges" (oben zu sehen).

Die "sys_mqttBridge" hat als CID "sysmqtt", die "sys_mqttIgnoreBridge" hat als CID "sys_mqtt" und die "sys_mqttZigbeeBridge" hat gar keine CID  :o

Da stimmt doch was nicht, oder? Also das "sys_mqtt" bei sys_mqttIgnoreBridge halte ich für korrekt, weil das IO-Dev eben "sys_mqtt" heißt. Die anderen beiden ("sysmqtt" bzw. gar keine CID) sind nicht korrekt?

Beta-User

Wiese sollte was nicht stimmen, wenn das Ergebnis paßt?!?

Es wird immer zuerst geprüft, ob es irgendeine Instanz gibt, bei der die readingList paßt, die CID ist zu diesem Zeitpunkt irrelevant.

Dann wird gecheckt, ob eine bridgeRegexp paßt. Die werden aber zentral in einem einzigen Hash gespeichert (was schon mal "lustige" Ergebnisse ergeben kann, wenn zwei Einträge da sind, die beide passen...). Auch da ist jedenfalls die CID irrelevant bzw. wird da erst (neu) ermittelt...
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

vbs

Zitat von: Beta-User am 09 Februar 2023, 07:43:35
Wiese sollte was nicht stimmen, wenn das Ergebnis paßt?!?

Also die CID "sysmqtt" im meinem Device sys_mqttBridge halt ich für nicht sinnvoll (das IO-Dev heißt ja "sys_mqtt", wurde möglicherweise mal umbenannt). ABER: so wie ich es jetzt verstehe, ist das CID nur wichtig, wenn entweder jemand etwas per bridgeRegexp an das Device weiterleiten möchte, oder wenn das IO-Dev (sys_mqtt) etwas mit seiner CID ("sys_mqtt").
Also in diesem Fall stört die CID "sysmqtt" nicht. Aber es fuchst mich halt, wenn da "Quatsch" drin steht  :-X Wenn man so eine CID ändern will, muss man da low-level-mäßig in die INTERNALs reingreifen, oder? Also da gibt es keinen Befehl für offenbar?

Also ganz doof für mich, die Reihenfolge ist (verkürzt):
1. readingsList
2. bridgeRegexp
3. autocreate im IO-Dev mit seinem Namen als CID

Kann man das grob so sagen?

Beta-User

Zitat von: vbs am 09 Februar 2023, 16:42:46
Also ganz doof für mich, die Reihenfolge ist (verkürzt):
1. readingsList
2. bridgeRegexp
3. autocreate im IO-Dev mit seinem Namen als CID

Kann man das grob so sagen?
Grob ja, weil Ziff. 3 nur für MQTT2_CLIENT gilt ;) .

Und du mußt nicht in den Internals rummalen, die CID ist einfach optionaler Teil der DEF. Wenn vorhanden, kann man sie per FHEMWEB-Klick bearbeiten, ansonsten: defmod.
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

vbs

Ach ich Esel, die kommt ja einfach aus der DEF  ;D  Ich dachte, die wurde da irgendwie beim ersten Anlegen initial eingebrannt... Keine Ahnung, wie ich das übersehen konnte, sorry.

Ja ok, danke für die Auskünfte! Ich denke, jetzt bin ich soweit im Bilde!