mDNS Binding - Shelly

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
fanavity
Beiträge: 21
Registriert: 21. Jul 2017 19:11
Answers: 0

mDNS Binding - Shelly

Beitrag von fanavity »

Hi,
ich habe im englischsprachigen Forum bereits eine Thread eröffnet, habe aber bislang keine Antwort erhalten. Eventuell kann mir hier jemand helfen.

Ich habe begonnen ein Binding zu entwickeln und wollte die Geräte per Autodisvover hinzufügen. Dafür will ich mDNS nutzen. Es handelt sich dabei um Shellys, laut API nutzen diese mDNS und alut Dimitri ( Shelly Support) nutzt die App ebenfalls mDNS um dem Netzwerk hinzugefügte Geräte zu finden. (http://shelly-api-docs.shelly.cloud )

Mit avahi-browse --all auf dem Raspberry erhalte ich folgende Ausgabe:

Code: Alles auswählen

+    br0 IPv4 shelly1-5B2ECD                                Web-Angebot          local
+    br0 IPv4 shellyswitch-32B62F                           Web-Angebot          local
Als serviceType habe ich folgendes getestet:

Code: Alles auswählen

"Shelly_"
"shelly_"
"shelly"
"Shelly"
Welchen ServiceType müsste man hier kjorrekterweise benutzen?

fanavity
Beiträge: 21
Registriert: 21. Jul 2017 19:11
Answers: 0

Re: mDNS Binding - Shelly

Beitrag von fanavity »

Niemand eine Idee?

Benutzeravatar
udo1toni
Beiträge: 15307
Registriert: 11. Apr 2018 18:05
Answers: 246
Wohnort: Darmstadt

Re: mDNS Binding - Shelly

Beitrag von udo1toni »

vermutlich ist der Service Typ http oder vielleicht auch https.

In den man pages für avahi findet sich folgender Link zur offiziellen Service Type Liste:

http://www.dns-sd.org/ServiceTypes.html
openHAB5.0.0 stable in einem Debian-Container (bookworm) (Proxmox 9.0.3, LXC)

fanavity
Beiträge: 21
Registriert: 21. Jul 2017 19:11
Answers: 0

Re: mDNS Binding - Shelly

Beitrag von fanavity »

Wie finde ich das denn heraus? Kann mit avahi den korrekten Servicetype anzeigen?
Die Doku auf der Shelly-Seite ist da eher knapp

"Shelly devices announce a HTTP service on port 80 via mDNS. Hostname is always in the form of shelly<model>-XXXXXXXXXXXX."

Auch der direkte Kontakt an den Hersteller hat mich leider nicht weiter gebracht.

fanavity
Beiträge: 21
Registriert: 21. Jul 2017 19:11
Answers: 0

Re: mDNS Binding - Shelly

Beitrag von fanavity »

Habe es noch mal mit "http" und "https" probiert - ohne Erfolg.

Beim Debuggen fiel mir auf, dass der Service auch gar nicht aufgelistet wird vom mdnsClient ( MDNSDiscoveryService ). Scheinbar findet openhab die Geräte schon gar nicht.

fanavity
Beiträge: 21
Registriert: 21. Jul 2017 19:11
Answers: 0

Re: mDNS Binding - Shelly

Beitrag von fanavity »

Bin echt langsam am durchdrehen :P

habe nun noch folgende Service-Types probiert:

Code: Alles auswählen

"_http._tcp.local."
"_https._tcp.local."
"_http._tcp."
"_http._tcp"
"_https._tcp."
"_https._tcp"
Nichts davon findet etwas.. wenn ich per

Code: Alles auswählen

avahi-browse -v -a -r
suche erhalte ich genauere Infos, aber leider keinen genauen ServiceType

Code: Alles auswählen

=    br0 IPv4 shellyswitch-32B62F                           Web-Angebot          local
   hostname = [shellyswitch-32B62F.local]
   address = [192.168.178.73]
   port = [80]
   txt = ["arch=esp8266" "fw_id=20181113-093543/330-roller-mode-position-control-autocalibration@51d86c63" "id=shellyswitch-32B62F"]
=    br0 IPv4 shelly1-5B2ECD                                Web-Angebot          local
   hostname = [shelly1-5B2ECD.local]
   address = [192.168.178.74]
   port = [80]
   txt = ["arch=esp8266" "fw_id=20181031-101133/v1.3.5@62608979" "id=shelly1-5B2ECD"]

Benutzeravatar
udo1toni
Beiträge: 15307
Registriert: 11. Apr 2018 18:05
Answers: 246
Wohnort: Darmstadt

Re: mDNS Binding - Shelly

Beitrag von udo1toni »

Naja, Port 80 spricht aber extrem für http, da 80 der well-known-port für http ist.
openHAB5.0.0 stable in einem Debian-Container (bookworm) (Proxmox 9.0.3, LXC)

CyberLine
Beiträge: 2
Registriert: 27. Feb 2019 20:17
Answers: 0

Re: mDNS Binding - Shelly

Beitrag von CyberLine »

Code: Alles auswählen

avahi-browse -d local -k -v _http._tcp | grep shelly
Server version: avahi 0.6.32; Host name: home.local
E Ifce Prot Name                                          Type                 Domain
+  vmbr0 IPv4 shelly4pro-4BAF61                             _http._tcp           local
+  vmbr0 IPv4 shelly1-500B3C                                _http._tcp           local
+  vmbr0 IPv4 shelly1-1D90F0                                _http._tcp           local
+  vmbr0 IPv4 shelly1-5000F0                                _http._tcp           local
+  vmbr0 IPv4 shelly1-2BE969                                _http._tcp           local
+  vmbr0 IPv4 shelly1-2BD7E6                                _http._tcp           local
+  vmbr0 IPv4 shelly1-2C731F                                _http._tcp           local
+  vmbr0 IPv4 shelly1-2BE146                                _http._tcp           local
+  vmbr0 IPv4 shelly1-4FFBFE                                _http._tcp           local
Korrekt ist also: _http._tcp.local

Antworten