UPnP - Simple Service Discovery Protocol (SSDP) als Basismodul

Begonnen von klaus.schauer, 23 September 2020, 20:19:55

Vorheriges Thema - Nächstes Thema

KölnSolar

Hi Klaus,

schön, dass Du noch dran bist. Im Augenblick hab ich wenig Zeit, aber ich probier mal auf die Fragen einzugehen.

1. Kann ich mir eigentlich nicht vorstellen, dass das Probleme macht. Der UPNPController hat ja auch keine Probleme damit. Man könnte jetzt höchstens noch die messages von anderen UPNP-devices darauf prüfen.

2. OK, aber erst einmal nicht wichtig.

3. Dann mal ein Log mit verbose 5, damit wir sehen, ob etwas auf Port 1900 empfangen wird. Angelegt wird der Socket mit     SSDP_IP => "239.255.255.250",  SSDP_PORT => 1900,
    Haben wir vielleicht Probleme, weil der UPNPController auch auf diesem Port lauscht ? Müsste man evtl. dann mal im UPNPController-Hilfsdevice(UPNPSocket-DEINUPNPControllername-1900) loggen.

4. Ist eine Besonderheit. Könnte man über ein Attribut steuern. Was passiert denn, wenn nicht alle 900s gesendet wird ?
    Du kannst erst einmal in der Funktion UPNPDevice_setupDevice den Aufruf $hash->{helper}{device} = $hash->{helper}{dm}->registerDevice(DevicePort => $port,
DescriptionFile => $file,   
DescriptionURI => $file,
ResourceDirectory => $path);
in $hash->{helper}{device} = $hash->{helper}{dm}->registerDevice(DevicePort => $port,
LeaseTime       => 900,   
DescriptionFile => $file,   
DescriptionURI => $file,
ResourceDirectory => $path);
ändern.

Grüße
Markus
RPi3/2 buster/stretch-SamsungAV_E/N-RFXTRX-IT-RSL-NC5462-Oregon-CUL433-GT-TMBBQ-01e-CUL868-FS20-EMGZ-1W(GPIO)-DS18B20-CO2-USBRS232-USBRS422-Betty_Boop-EchoDot-OBIS(Easymeter-Q3/EMH-KW8)-PCA301(S'duino)-Deebot(mqtt2)-zigbee2mqtt

klaus.schauer

Danke für die Unterstützung und Rückmeldung.

zu 1.: Ich kann das - wie gesagt - nicht prüfen, da der Home Manager nicht reagiert. Ich habe das Modul DeviceManager angepasst, siehe geänderte Datei. Jetzt wird \r\n statt \n gesendet. Das führt aber - soweit ich das sehen kann - nicht zu einer Veränderung.

zu 3.: Im Log werden keine empfangenen Pakete protokolliert.

zu 4.: Der Home Manager erwartet bei CACHE-CONTROL: max-age = 1800 nach ca. der Hälfte der Zeit schon ein Notity. Da hilft es nichts max-age auf 900 zu verkürzen.

Da ich leider augenblicklich in der vorhandenen Konstellation nicht weitergekommen bin, habe ich erst einmal eine andere funktionsfähige Lösung gesucht und gefunden. Ich verwende den Smart Appliance Enabler (https://github.com/camueller/SmartApplianceEnabler), der als SEMP Gateway fungiert. Die Kommunikation von Fhem zu dem Smart Appliance Enabler stellt das neue Modul HTTPAPI her. Das klappt sehr gut. Ich stelle das Modul umgehend für alle Interessierte zur Verfügung.

Nochmals vielen Dank für die Unterstützung. Falls die ursprünglich geplante Lösung doch noch ans Laufen gebracht werden kann, würde mich das freuen. Manchmal sind es ja nur Kleinigkeiten... wenn man sie denn findet. Ich werde jedenfalls dran bleiben.