Seite 1 von 1
mDNS Binding - Shelly
Verfasst: 20. Nov 2018 15:01
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:
Welchen ServiceType müsste man hier kjorrekterweise benutzen?
Re: mDNS Binding - Shelly
Verfasst: 21. Nov 2018 20:00
von fanavity
Niemand eine Idee?
Re: mDNS Binding - Shelly
Verfasst: 22. Nov 2018 10:27
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
Re: mDNS Binding - Shelly
Verfasst: 22. Nov 2018 13:07
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.
Re: mDNS Binding - Shelly
Verfasst: 22. Nov 2018 19:30
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.
Re: mDNS Binding - Shelly
Verfasst: 23. Nov 2018 17:51
von fanavity
Bin echt langsam am durchdrehen
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
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"]
Re: mDNS Binding - Shelly
Verfasst: 23. Nov 2018 20:40
von udo1toni
Naja, Port 80 spricht aber extrem für http, da 80 der well-known-port für http ist.
Re: mDNS Binding - Shelly
Verfasst: 27. Feb 2019 20:19
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