Autor Thema: Viseron NVR per MQTT an Fhem anbinden *gelöst*  (Gelesen 1251 mal)

Offline lynckmeister

  • Full Member
  • ***
  • Beiträge: 154
Antw:Viseron NVR per MQTT an Fhem anbinden
« Antwort #15 am: 10 Oktober 2021, 12:49:30 »
ok das scheint ja über die Readinglist zu funktionieren, es heisst ja man könne bestimmte MQTT-topics abonnieren , also automatische Benachrichtigungen empfangen ...

ich habe hier eine Readinglist in der alles was ich brauch auftaucht :
viseron:viseron/lwt:.* lwt
viseron:homeassistant/binary_sensor/garage/motion_detected/config:.* { json2nameValue($EVENT) }
viseron:viseron/garage/binary_sensor/motion_detected/state:.* { json2nameValue($EVENT) }
viseron:homeassistant/binary_sensor/garage/object_detected/config:.* { json2nameValue($EVENT) }
viseron:viseron/garage/binary_sensor/object_detected/state:.* { json2nameValue($EVENT) }
viseron:homeassistant/binary_sensor/garage/object_detected_person/config:.* { json2nameValue($EVENT) }
viseron:viseron/garage/binary_sensor/object_detected_person/state:.* { json2nameValue($EVENT) }
viseron:homeassistant/switch/garage/config:.* { json2nameValue($EVENT) }
viseron:homeassistant/camera/garage/config:.* { json2nameValue($EVENT) }
viseron:homeassistant/sensor/garage/status/config:.* { json2nameValue($EVENT) }
viseron:viseron/garage/sensor/status/state:.* { json2nameValue($EVENT) }
viseron:viseron/garage/camera/image:.* image
viseron:homeassistant/camera/garage/latest_thumbnail/config:.* { json2nameValue($EVENT) }
viseron:viseron/garage/camera/latest_thumbnail/image:.* image
viseron:homeassistant/binary_sensor/terrasse_hinten/motion_detected/config:.* { json2nameValue($EVENT) }
viseron:viseron/terrasse_hinten/binary_sensor/motion_detected/state:.* { json2nameValue($EVENT) }
viseron:homeassistant/binary_sensor/terrasse_hinten/object_detected/config:.* { json2nameValue($EVENT) }
viseron:viseron/terrasse_hinten/binary_sensor/object_detected/state:.* { json2nameValue($EVENT) }
viseron:homeassistant/binary_sensor/terrasse_hinten/object_detected_person/config:.* { json2nameValue($EVENT) }
viseron:viseron/terrasse_hinten/binary_sensor/object_detected_person/state:.* { json2nameValue($EVENT) }
viseron:homeassistant/switch/terrasse_hinten/config:.* { json2nameValue($EVENT) }
viseron:homeassistant/camera/terrasse_hinten/config:.* { json2nameValue($EVENT) }
viseron:homeassistant/sensor/terrasse_hinten/status/config:.* { json2nameValue($EVENT) }
viseron:homeassistant/camera/terrasse_hinten/latest_thumbnail/config:.* { json2nameValue($EVENT) }
viseron:viseron/terrasse_hinten/sensor/status/state:.* { json2nameValue($EVENT) }
viseron:viseron/terrasse_hinten/camera/image:.* image
viseron:viseron/terrasse_hinten/camera/latest_thumbnail/image:.* image


Wie  man sieht gibt es eben die beiden Cams... wo ich das Bild herkriege weiß ich ja , also muss ich eigentlich nur auf die Events
viseron:viseron/garage/binary_sensor/object_detected/state
oder eben
viseron:viseron/terrasse_hinten/binary_sensor/object_detected/state:.*
reagieren.... dazu muss man sie Abonieren?

Offline Beta-User

  • Developer
  • Hero Member
  • ****
  • Beiträge: 16340
Antw:Viseron NVR per MQTT an Fhem anbinden
« Antwort #16 am: 10 Oktober 2021, 13:01:02 »
Haben da mehrere Clients dieselbe Client-ID? Dann bitte so ändern, dass jedes Geräte eine eigene hat.
Server: HP-T620@Debian 10, 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:MySensors, Weekday-&RandomTimer, Twilight,  AttrTemplate {u.a. mqtt2, mysensors, zwave}

Offline lynckmeister

  • Full Member
  • ***
  • Beiträge: 154
Antw:Viseron NVR per MQTT an Fhem anbinden
« Antwort #17 am: 10 Oktober 2021, 13:38:50 »
hmm naja das ist ja ein NVR , der verbindet sich mit dem FHEM MQTT Server , der NVR hat 2 CAMs konfiguriert... aber die Client-ID ist für den NVR , also hat er auch nur eine
die unterschiede müssten die Pfade , in denen ja die Namen der CAMs codiert sind kommen :

{client_id}/{mqtt_name from camera config}/sensor/status/state
Ich sehe ja auch in der Readinglist, dass die da sind, ich verstehe nur nicht wie das mit dem Abonieren funktionieren soll, sodass man drauf reagieren kann ...

Offline Beta-User

  • Developer
  • Hero Member
  • ****
  • Beiträge: 16340
Antw:Viseron NVR per MQTT an Fhem anbinden
« Antwort #18 am: 10 Oktober 2021, 13:56:10 »
Ah, ok. Dann wäre mein Vorschlag, pro cam je eine MQTT2_device-Instanz einzurichten.
Server: HP-T620@Debian 10, 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:MySensors, Weekday-&RandomTimer, Twilight,  AttrTemplate {u.a. mqtt2, mysensors, zwave}

Offline lynckmeister

  • Full Member
  • ***
  • Beiträge: 154
Antw:Viseron NVR per MQTT an Fhem anbinden
« Antwort #19 am: 10 Oktober 2021, 16:50:50 »
ja kling gut, mir ist nur nicht klar, wie ich zwei Instanzen so anlege, dass die Daten jeweils dann in die Richtige laufen... aktuell schreibt fhem ja alles in eine Instanz...

hier mal das Listing des Devices...
Internals:
   CFGFN     
   CID        viseron
   DEF        viseron
   DEVICETOPIC MQTT2_viseron
   FUUID      6162fc08-f33f-c4df-4047-272632788c94034c
   IODev      MQTT2_FHEM_Server
   LASTInputDev MQTT2_FHEM_Server
   MQTT2_FHEM_Server_MSGCNT 194
   MQTT2_FHEM_Server_TIME 2021-10-10 16:46:49
   MSGCNT     194
   NAME       MQTT2_viseron
   NR         2786
   STATE      on
   TYPE       MQTT2_DEVICE
   READINGS:
     2021-10-10 16:43:20   IODev           MQTT2_FHEM_Server
     2021-10-10 16:45:23   attributes_count 1
     2021-10-10 16:45:33   attributes_last_recording_end 2021-10-10T16:45:33.540045
     2021-10-10 16:45:33   attributes_last_recording_start 2021-10-10T16:45:23.439796
     2021-10-10 16:46:49   attributes_objects_1_confidence 0.723
     2021-10-10 16:46:49   attributes_objects_1_label person
     2021-10-10 16:46:49   attributes_objects_1_rel_height 0.346
     2021-10-10 16:46:49   attributes_objects_1_rel_width 0.115
     2021-10-10 16:46:49   attributes_objects_1_rel_x1 0.8700000047683716
     2021-10-10 16:46:49   attributes_objects_1_rel_x2 0.9850000143051147
     2021-10-10 16:46:49   attributes_objects_1_rel_y1 0.18199999630451202
     2021-10-10 16:46:49   attributes_objects_1_rel_y2 0.527999997138977
     2021-10-10 16:44:13   attributes_objects_2_confidence 0.5
     2021-10-10 16:44:13   attributes_objects_2_label person
     2021-10-10 16:44:13   attributes_objects_2_rel_height 0.564
     2021-10-10 16:44:13   attributes_objects_2_rel_width 0.151
     2021-10-10 16:44:13   attributes_objects_2_rel_x1 0.5299999713897705
     2021-10-10 16:44:13   attributes_objects_2_rel_x2 0.6809999942779541
     2021-10-10 16:44:13   attributes_objects_2_rel_y1 0.20100000500679016
     2021-10-10 16:44:13   attributes_objects_2_rel_y2 0.7649999856948853
     2021-10-10 16:45:23   image           ����JFIF��C    (noch viel mehr Bild-binär-müll)
     2021-10-10 16:43:20   lwt             alive
     2021-10-10 16:46:49   state           on
Attributes:
   readingList viseron:viseron/lwt:.* lwt
viseron:viseron/terrasse_hinten/binary_sensor/motion_detected/state:.* { json2nameValue($EVENT) }
viseron:viseron/terrasse_hinten/binary_sensor/object_detected/state:.* { json2nameValue($EVENT) }
viseron:viseron/terrasse_hinten/binary_sensor/object_detected_person/state:.* { json2nameValue($EVENT) }
viseron:viseron/garage/binary_sensor/motion_detected/state:.* { json2nameValue($EVENT) }
viseron:viseron/garage/binary_sensor/object_detected/state:.* { json2nameValue($EVENT) }
viseron:viseron/garage/binary_sensor/object_detected_person/state:.* { json2nameValue($EVENT) }
viseron:viseron/terrasse_hinten/sensor/status/state:.* { json2nameValue($EVENT) }
viseron:viseron/garage/sensor/status/state:.* { json2nameValue($EVENT) }
viseron:viseron/terrasse_hinten/camera/latest_thumbnail/image:.* image
viseron:viseron/garage/camera/latest_thumbnail/image:.* image
   room       MQTT2_DEVICE


man sieht schon unten in der Readinglist das die beiden thumbnails jeweils nach CAM unterschiedliche Pfade haben...


Offline TomLee

  • Hero Member
  • *****
  • Beiträge: 3671
  • ... wer sät, der erntet ...
Antw:Viseron NVR per MQTT an Fhem anbinden
« Antwort #20 am: 10 Oktober 2021, 17:10:17 »
Ein Weg ist in #14 beschrieben.

Offline Beta-User

  • Developer
  • Hero Member
  • ****
  • Beiträge: 16340
Antw:Viseron NVR per MQTT an Fhem anbinden
« Antwort #21 am: 10 Oktober 2021, 19:14:58 »
ja kling gut, mir ist nur nicht klar, wie ich zwei Instanzen so anlege, dass die Daten jeweils dann in die Richtige laufen... aktuell schreibt fhem ja alles in eine Instanz...
Entweder mit "bridgeRegexp" beschäftigen oder halt manuell sortieren. Etwa so:
attr MQTT2_viseron readingList viseron/lwt:.* lwt\
homeassistant/.*/config:.* { }\
viseron/garage/binary_sensor/motion_detected/state:.* { json2nameValue($EVENT,'motion_') }\
viseron/garage/binary_sensor/object_detected/state:.* { json2nameValue($EVENT,'object_') }\
viseron/garage/binary_sensor/object_detected_person/state:.* { json2nameValue($EVENT,'person_') }\
viseron/garage/sensor/status/state:.* { json2nameValue($EVENT) }
viseron/garage/camera/image:.* image\
viseron/garage/camera/latest_thumbnail/image:.* tn_image
defmod MQTT2_viseron_2 MQTT2_DEVICE
attr MQTT2_viseron_2 readingList viseron/terrasse_hinten/binary_sensor/motion_detected/state:.* { json2nameValue($EVENT,'motion_') }\
viseron/terrasse_hinten/binary_sensor/object_detected/state:.* { json2nameValue($EVENT,'object_') }\
viseron/terrasse_hinten/binary_sensor/object_detected_person/state:.* { json2nameValue($EVENT,'person_') }\
viseron/terrasse_hinten/sensor/status/state:.* { json2nameValue($EVENT) }\
viseron/terrasse_hinten/camera/image:.* image\
viseron/terrasse_hinten/camera/latest_thumbnail/image:.* tn_image

Zur Erläuterung: die "homeassistant"-config-Infos sind völlig irrelevant für FHEM, die werden durch das erste Device abgefangen und sind dann weg (sollte eigentlich eine ignoreRegepx am IO machen). Da vermutlich viele Infos in den JSON gleich/ähnlich sind, bekommen die einen Präfix, damit man sieht, wo was herkommt. Muss man dann ggf. noch sortieren, was man wie braucht und kann es ggf. umbenennen.
Server: HP-T620@Debian 10, 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:MySensors, Weekday-&RandomTimer, Twilight,  AttrTemplate {u.a. mqtt2, mysensors, zwave}

Offline lynckmeister

  • Full Member
  • ***
  • Beiträge: 154
Antw:Viseron NVR per MQTT an Fhem anbinden
« Antwort #22 am: 31 Oktober 2021, 14:57:05 »
genauso hat es auch geklappt, sobald man das zweite Device anlegt und die Readinglist einträgt, werden die richtigen Daten in dieses Device geschrieben... vielen Dank auch !