FHEM Forum

FHEM - Anwendungen => Multimedia => Thema gestartet von: KölnSolar am 15 Februar 2021, 19:29:49

Titel: Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 15 Februar 2021, 19:29:49
Ausgehend von der Fragestellung
Zitat von: https://forum.fhem.de/index.php/topic,114457.msg1087213.html#msg1087213
UPnP - Simple Service Discovery Protocol (SSDP) als Basismodul
hat sich ergeben, dass der Fragesteller gerne ein Modul hätte, mit welchem sich ein upnp-device in FHEM anlegen lässt. Durch meine Kenntnis(u. nicht völlige Zufriedenheit) mit dem DLNARenderer habe ich als Ziele für eine Neuentwicklung definiert:

1. FHEM-Modulpaket, welches sowohl Controllerfunktionen, als auch Devicefunktion bereitstellt
2. das Thema UPnP in/mit FHEM für user transparenter zu machen. Also quasi einen sniffer bereitzustellen u. wesentliche Funktionen von UPnP in einem Modul umzusetzen
3. wir haben ein paar Module, die das fremde Perlpaket perlupnp (SONOS,DLNARenderer,entertainTV) oder Net::UPnP(YAMAHA_MC) nutzen. Ein gleichzeitiger Einsatz der nutzenden Module ist nicht möglich.
4. Zumindest das Paket perlupnp blockiert FHEM. Daher eine sinnvolle "Entzerrung" von "technischer" UPnP-Funktionalität u. anwenderspezifischen Funktionalitäten in separate Module.
5. Neue Funktionalität(z.B. DLNA-Control von Mediaservern(SONOS hat das glaub ich eingebaut) oder weitere actions des services RenderingControl.......)

Der Weg zum Ziel:
- es gibt kein Perl-Paket, welches umfassend und non-blocking UPnP unterstützt--> das Paket perlupnp hat noch die umfassendste Funktionalität, ist aber blockierend-->perlupnp nutzen;evtl. später non-blocking "umbauen"
- Das physische Modul UPNPController(Physisch bedeutet in FHEM ein device, welches sich in der einen Richtung um die Kommunikation mit der physischen Hardware kümmert, und in der anderen die Kommunikation zu einem logischen Modul, welches die Anwenderfunktionaltät liefert) ist entstanden, um die technischen Kernfunktionalitäten von UPnP in FHEM abzubilden
- Ebenso das Modul UPNPDevice, um in FHEM ein UPnP-device anzulegen.
- Ein 1. logisches Modul, DLNAController, welches in einem 1. Schritt dem Anwender in Verbindung mit UPNPController die selbe Funktionalität wie der DLNARenderer bietet

Die einzelnen Module des aktuellen Entwicklungsstands und ggfs. "Zubehör" findet Ihr unter folgenden Posts attached.
Da ich selber nur eine begrenzte Anzahl von devices habe, seid bitte vorsichtig in der Nutzung. Möglichst in einer Testumgebung, aber zumindest immer darauf gefasst, dass FHEM abstürzt oder looped !!! Alles ist bisher in einem Betastatus mit Fokus auf technische Funktionalität(ohne freezes, Abstürze.... ;))

Modulbeschreibungen u. Quellcode:
UPNPController (https://forum.fhem.de/index.php/topic,118837.msg1132816.html#msg1132816) - Basismodul (notwendig für logische Module wie DLNAController)
UPNPDevice (https://forum.fhem.de/index.php/topic,118837.msg1132817.html#msg1132817) - UPnP-device in FHEM(Basismodul nicht notwendig;keine user-Funktionalität)
DLNAController (https://forum.fhem.de/index.php/topic,118837.msg1132818.html#msg1132818) - logisches Modul für DLNA; to control Renderer-devices; Basismodul mandatory


Titel: Neuentw. UPNPController - UPnP: Controller
Beitrag von: KölnSolar am 15 Februar 2021, 19:30:10
UPNPController

Das Herz des Modulpakets. Es öffnet 3 Ports für die UPnP-Kommunikation mit dem lokalen Netzwerk. Der Searchport wird mit dem vom User definierten device verbunden.
Bei der Definition werden 2 weitere FHEM-devices automatisch für die beiden anderen Ports angelegt. Sie heißen "UPNPSocket-"userdevicename"-"PortNo(Portno.=1900,random) und liegen im room=hidden. Diese beiden devices sollten niemals von user-Seite verändert werden. Abstürze sind sonst vorprogrammiert !!!!

Das Modul nutzt das Paket perlupnp, welches wir tw. bereits in FHEM/lib/UPnP liegen haben.

Das device wird ohne weitere Parameter definiert, z.B. define UPNP_Controller UPNPController
Mit der Definition wird ein search-request im lokalen Netzwerk mit searchterm=ssdp:all gesendet. Dies bewirkt, dass sämtliche eingehenden UPnP-Notify-messages akzeptiert/verarbeitet werden. Dies passiert aber erst dann, wenn sich ein device gem. UPnP-Standard irgendwann periodisch meldet. Soll heißen, es dauert bis alle devices erstmalig erkannt wurden. Etwas beschleunigen kann man es, indem man z.B. den set-Befehl searchterm mit dem Parameter upnp:rootdevice ausführt. Damit werden alle Rootdevices aufgefordert sich sofort zu melden(tun aber nicht alle). Die searchterms werden zwar nur einmalig gesendet, allerdings wird jede (periodisch) eingehende message eines devices gegen die searchterms geprüft. Daher fiel auch die Wahl auf ssdp:all als initialem searchterm. Wer das beenden möchte kann den stopSearch-Befehl mit dem Parameter des searchterms benutzen. Mit etwas UPnP-Know-How können auch andere searchterms z.B. für bekannte services benutzt werden.

Die gefundenen devices werden als readings angelegt. Dabei wird jedes device durch den readingname IP_Port repräsentiert. Attribute des devices werden 1:1 übernommen u. als readings mit entsprechender Bezeichnung angelegt. Die Services eines devices werden mit devicereadingname-zs-service angelegt. Evtl. vorhandene children mit devicereadingname-zz. Die Syntax mit z hat keine Bedeutung u. dient nur der Sortierung. Bei einer FritzBox lässt sich so z.B. die Hierarchie von devices u. services gut erkennen. Mit verbose=5 sollte umfangreich gelogged werden, so dass man quasi eine Dokumentation der im Netzwerk vorhandenen UPnP-devices erhält. Manche physische devices haben mehrere logische UPnP-devices. Werden sie unter demselben Port angesprochen, so erfolgt eine entsprechende Durchnummerierung IP_Port_x.

Die weitere Funktionalität ist subscribe/unsubscribe. Dahinter steckt, dass der Controller sich bei dem device bzw. service anmeldet u. zukünftig mit events versorgt werden möchte, das device also Statusmeldungen aussendet, die dann im Controller empfangen u. verarbeitet werden. Die subscription muss periodisch erneuert werden(renewal). Das macht das Modul automatisch. Als Parameter für den subscribe/unsubscribe-Befehl ist der vollständige readingname des services einzutragen. Am einfachsten per Copy&Paste.

Das service-reading hat folgende Inhalte:
ohne Aktion   - urn des services
subscribe:      - subscribed (nach set subscribe)
                     - subscription committed, timeout x(nach erfolgreicher subscription)
                      - SID, leasetime, property (nach event)
                      - subscription failed (im Fehlerfall)
                      - subscribed but offline (nach Abmeldung durch das device)
unsubscribe: - unsubscribed

Jedes device hat genau ein zusätzliches presence-reading, welches durch das Modul erzeugt wird. Grundsätzlich anhand der alive/byebye Meldungen eines devices. Ein Sonderfall ist, dass das device z.B. Stromausfall kein byebye aussenden konnte. Dann verbleibt der presence-Status "online". Wurde ein service des devices subscribed, dann wird beim nächsten renewal-Versuch der subscription(also bis zu 30min. !) in den offline-Status versetzt.

Über die Attribute usedonlyIPs, ignoredIPs,acceptedUDNs,ignoredUDNs lässt sich der Umfang der devices einschränken(UDN = Unique Device Name eines devices). Die Einschränkungen per UDN funktionieren nur beim define des Controllers.

Die interne Kommunikation zwischen physischem(UPNPController) und logischem Modul(z.B. DLNAController) erfolgt nach dem FHEM-typischen 2-Stufenmodell(dispatch, iowrite, assignIO)

Autocreate-Mechanismus: devices, für die ein logisches Modul existiert, werden per autocreate automatisch angelegt. Erkennung erfolgt anhand der Services.

Changelog
-----------
06.05.21
minor changes

25.04.21 version v0.0.2
new initialization after change of attributes: ignoredIPs, usedonlyIPs, envNamespace, envPrefix
(readings stay untouched)

31.03.21
some bug fixing

13.03.21
postprocessing of services SesssionManagement and SpeakerManagement(Multiroom) added
subscription process changed and optimized(new state possible: subscription committed, timeout x; meaning: device has confirmed subscription with timeout x; no event received so far)
- timeout of each device/service answer is saved
- internal timer runs each minute to check wether a subscription has to be renewed
some bug fixing

27.02.21(13 Downloads)
FHEM restart problem solved
Internal administration by unique UDN instead of IP/Port; automatically deletes no longer used IP/Port readings for devices w. changed IP/Port; 
set delreadings - delete readings - be careful in usage !!!
optimization of presence state and services readings
Titel: Neuentw. UPNPDevice - UPnP: Device
Beitrag von: KölnSolar am 15 Februar 2021, 19:30:25
UPNPDevice

diese Modul ist vorerst nur wenig interessant, da es eher für andere Entwickler gedacht ist, die ein "virtuelles" UPnP-device in FHEM erstellen möchten.

zusätzliche Voraussetzungen
- die Datei DeviceManager.pm muss in den Pfad …/FHEM/lib/UPnP kopiert werden
- eine xml-Datei im fhem-Pfad(nicht fhem/FHEM !!!) ist notwendig. Im Standard ist der filename "description.xml". Per attribut file übersteuerbar. Der Pfad mit path.

Das device muss in der beschreibenden xml-Datei mit seinen Eigenschaften und Attributen gem. den UPnP-Standards beschrieben/definiert werden.
Definition für z.B. SMA SEMP
define  UPNPSEMP UPNPDevice
Mit dem define wird ein Hilfsdevice "UPNPSocket-devicename"-"Port für den notification port im room hidden angelegt.  Dieses device sollte niemals von user-Seite verändert werden. (Möglicherweise wird zukünftig dieses Hilfsdevice entfallen und die Funktionalität direkt im device realisiert)
Für das ebenfalls durch perlupnp erzeugte socket für port 1900 wird vorerst kein device angelegt, um evtl. Konflikte zu vermeiden.
Services und somit auch subscrption und events werden vorerst nicht unterstützt, da für den bisher einzigen use case SMA SEMP nicht notwendig.

Neben der Öffnung der ports wird das device in seiner Funktion gestartet. Es sendet NOTIFY-broadcast-messages an Port 1900. Gleichzeitig wird der 30min-heartbeat(advertising) zu dessen Wiederholung gestartet.

Mit dem Modul lassen sich dann folgende Aktionen ausführen:
- start - zum starten des devices
- stop - zum stoppen des devices
- advertise - zum zusätzlichen Aussenden einer NOTIFY alive message (passiert per heartbeat periodisch alle 30min.)

ACHTUNG: Nutzt man UPNPController u. UPNPDevice gemeinsam in einer FHEM-Instanz, sollte man im UPNP-Controller tunlichst die IP ausschließen. Sonst kommt es zu fürchterlichen 20s-freezes, deren Ursache ich noch nicht ausgemacht habe.

Titel: Neuentw. DLNAController UPnP/DLNA - DLNARenderer-Ersatz
Beitrag von: KölnSolar am 15 Februar 2021, 19:30:40
DLNAController

benötigt ein UPNPController-device als IODev

Zusätzlich sind die Perlpakete ◾SOAP::Lite, ◾LWP::Simple, ◾XML::Simple, ◾XML::Parser::Lite, ◾LWP::UserAgent zu installieren in Debian mit
sudo apt-get install libsoap-lite-perl libparse-http-useragent-perl liblwp-protocol-https-perl(Wer bereits SONOS oder DLNARenderer einsetzt hat auch diese Pakete bereits installiert)
Edit: Neues Perlpaket notwendig: sudo apt-get install libxml-libxml-perl (XML::LibXML)

devices werden über das UPNPController-Modul per autocreate automatisch angelegt. devicename entspricht dem dortigen readingname. room entspricht dem room für neue devices.
(eine manuelle Anlage eines devices ist weder notwendig, noch empfohlen !!!)

Bisher hat das Modul die Funktionalität des DLNARenderers. Multiroom(caskeid) ist mangels Hardware nicht richtig implementiert. Tester sind gerne gesehen.

Unterstützt werden also ein Teil des services RenderingControl(mute,volume) u. AVTransport(Abspielen einer Medienkonserve)

Das Modul selber blockiert nicht im Gegensatz zum DLNARenderer. Wohl aber noch der UPNPController. Dort ist bisher lediglich das blockierende Verhalten beim subscription-renewal(genau wie in meiner inoffiziellen Version des DLNARenderers) beseitigt. Infos über freezes bitte melden. Ich selber habe keine nennenswerten freezes in meinem Produktivsystem.

Attached die aktuelle Version. Die heißt aber noch DLNAManager. Diesen Namen wollte ich im Ursprung vergeben, glaube aber mittlerweile, dass DLNAController besser ist.

Changelog
-----------
06.05.21
new method to parse xml-events
installation of package libxml required: sudo apt-get install libxml-libxml-perl
UPNPController version of same date required

31.03.21(11 downloads)
some bug fixing

13.03.21
Multiroom support added; should be the same functionality as known by DLNARenderer
automatic subscription of DLNA services after definition
extensive tests with WindowsMediaplayer(more details about functionality (https://forum.fhem.de/index.php/topic,118837.msg1139252.html#msg1139252))
some bug fixing

27.02.21(13 Downloads)
FHEM restart problem solved
Modulname changed as proposed
unique UDN as define parameter(you shouldn't care, since define will be done by autocreate)
Titel: DLNA(Renderer-Ersatz) Umsteiger
Beitrag von: KölnSolar am 15 Februar 2021, 19:30:52
Bisher habt Ihr das DLNARenderer-Modul genutzt. Ein Umstieg ist relativ einfach. Sollte vorerst sicherheitshalber(obwohl es bei mir produktiv läuft) in einem Testsystem vollzogen werden.

Download der beiden Module aus Post #1 u. #3 in Euer Modulverzeichnis. Am besten löscht Ihr dann zuerst alle DLNARenderer-devices. Insbesondere das Master-device u. die 3 Socketdevices im room hidden. Dann legt Ihr mit define EuerDevicename UPNPControllerdas neue Masterdevice an. Insbesondere für Samsung-devices mit den selben Attributen wie bei DLNARenderer. Sinnvoll ist nach der vollständigen Definition ein save/shutdown/restart. Nach einer Weile seht Ihr im device EuerDevicename eine Übersicht aller UPnP-devices in Eurem Netzwerk nach IP/Port sortiert. Im room hidden findet Ihr 2 socket-"Hilfsdevices".

DLNA-devices wurden per autocreate(sofern wie bei den meisten Installationen aktiviert)automatisch im room des autocreate-Attributs device_room mit define DLNA_UDNdesDevices DLNAController UDNdesDevices IP_Portangelegt. Nun nur noch die Attribute(wie zuvor) ergänzen u. Ihr könnt das device wie gehabt nutzen.

SamsungAV-Nutzer müssen in SamsungAV-devices zusätzlich noch den DLNARenderer-devicename durch DLNA_UDNdesDevices ersetzen.

Thats it.
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 20 Februar 2021, 12:50:24
Hallo KölnSolar,

habe DLNAController definiert - Teufel-Lautsprecher werden gefunden - soweit so gut

Neustart von FHEM = System tot

2021.02.20 12:44:23 2: UPNPController: UPNP Controller v0.0.1 started
Can't call method "services" on an undefined value at ./FHEM/98_UPNPController.pm line 947, <$fh> line 81.

vg Jens

Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 20 Februar 2021, 18:24:18
Hallo Jens,

sorry. Hatte noch keine Zeit die kleine Änderung von hier (https://forum.fhem.de/index.php/topic,114457.msg1133025.html#msg1133025)einzubauen u. attachen.

Entweder selber einbauen oder aufs update warten.

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 20 Februar 2021, 19:17:34
Hallo Markus,

ich hab

Zitat
die kleine Änderung von hier einzubauen

eingebaut und nach einen FHEM-Neustart sind die Devices auch alle da.
Es dauert aber 8min bis sie von "offline" auf "online" wechseln und somit bedienbar sind.
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 20 Februar 2021, 20:34:37
das ist ok.
Zitat
Mit der Definition wird ein search-request im lokalen Netzwerk mit searchterm=ssdp:all gesendet. Dies bewirkt, dass sämtliche eingehenden UPnP-Notify-messages akzeptiert/verarbeitet werden. Dies passiert aber erst dann, wenn sich ein device gem. UPnP-Standard irgendwann periodisch meldet. Soll heißen, es dauert bis alle devices erstmalig erkannt wurden. Etwas beschleunigen kann man es, indem man z.B. den set-Befehl searchterm mit dem Parameter upnp:rootdevice ausführt. Damit werden alle Rootdevices aufgefordert sich sofort zu melden(tun aber nicht alle).

Und  bei nicht-DLNA ist das ja auch egal, da es kein logisches Modul gibt. Bei DLNA werde ich dann beim device-define ein search auf die udn machen, so dass es schnell  den aktuellen Status wiederspiegelt.

Welche services haben die Teufel denn ?
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 20 Februar 2021, 22:53:40
Zitat
Welche services haben die Teufel denn ?

??? Kopf kratz, was meinst du damit? Kann ich die irgendwie abfragen?
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 20 Februar 2021, 23:28:23
Meinst du eventuell das hier:

beim physischen Device:

<root>
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<device>
<deviceType>urn:schemas-upnp-org:device:MediaRenderer:1</deviceType>
<friendlyName>Speaker Kueche #2</friendlyName>
<modelDescription>Digital Media Player</modelDescription>
<UDN>uuid:f9e8fd48-3e69-4b28-b388-d92cbcef7d80</UDN>
<iconList>
<icon>
<mimetype>image/png</mimetype>
<width>48</width>
<height>48</height>
<depth>24</depth>
<url>/icons/teufel-48.png</url>
</icon>
<icon>
<mimetype>image/png</mimetype>
<width>32</width>
<height>32</height>
<depth>24</depth>
<url>/icons/teufel-32.png</url>
</icon>
</iconList>
<serviceList>
<service>
<serviceType>urn:schemas-upnp-org:service:RenderingControl:1</serviceType>
<serviceId>urn:upnp-org:serviceId:RenderingControl</serviceId>
<SCPDURL>/rendercontrol.xml</SCPDURL>
<controlURL>/RenderingControl/ctrl</controlURL>
<eventSubURL>/RenderingControl/evt</eventSubURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:ConnectionManager:1</serviceType>
<serviceId>urn:upnp-org:serviceId:ConnectionManager</serviceId>
<SCPDURL>/connectmanager.xml</SCPDURL>
<controlURL>/ConnectionManager/ctrl</controlURL>
<eventSubURL>/ConnectionManager/evt</eventSubURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:AVTransport:1</serviceType>
<serviceId>urn:upnp-org:serviceId:AVTransport</serviceId>
<SCPDURL>/avtransport.xml</SCPDURL>
<controlURL>/AVTransport/ctrl</controlURL>
<eventSubURL>/AVTransport/evt</eventSubURL>
</service>
<service>
<serviceType>
urn:schemas-raumfeld-com:service:RaumfeldGenerator:1
</serviceType>
<serviceId>urn:raumfeld-com:serviceId:RaumfeldGenerator</serviceId>
<SCPDURL>/feldgenerator.xml</SCPDURL>
<controlURL>/RaumfeldGenerator/ctrl</controlURL>
<eventSubURL>/RaumfeldGenerator/evt</eventSubURL>
</service>
</serviceList>
<manufacturer>Lautsprecher Teufel GmbH</manufacturer>
<manufacturerURL>https://www.teufel.de/</manufacturerURL>
<modelName>Teufel One M</modelName>
<modelNumber>1</modelNumber>
<serialNumber>x:y:z</serialNumber>
<raumfeld:protocolVersion>16351</raumfeld:protocolVersion>
<raumfeld:hardwareType>21</raumfeld:hardwareType>
</device>
</root>

beim virtuellen Device:

<root>
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<device>
<deviceType>urn:schemas-upnp-org:device:MediaRenderer:1</deviceType>
<X_DLNACAP>playcontainer-0-1</X_DLNACAP>
<friendlyName>Kueche</friendlyName>
<modelDescription>Virtual Media Player</modelDescription>
<modelName>Teufel One M</modelName>
<UDN>uuid:f97f36f9-abcf-4987-9727-c15eda14def4</UDN>
<iconList>
<icon>
<mimetype>image/png</mimetype>
<width>48</width>
<height>48</height>
<depth>24</depth>
<url>/icons/teufel-48.png</url>
</icon>
<icon>
<mimetype>image/png</mimetype>
<width>32</width>
<height>32</height>
<depth>24</depth>
<url>/icons/teufel-32.png</url>
</icon>
</iconList>
<serviceList>
<service>
<serviceType>urn:schemas-upnp-org:service:RenderingControl:1</serviceType>
<serviceId>urn:upnp-org:serviceId:RenderingControl</serviceId>
<SCPDURL>/RenderingService.xml</SCPDURL>
<controlURL>/RenderingService/Control</controlURL>
<eventSubURL>/RenderingService/Event</eventSubURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:AVTransport:1</serviceType>
<serviceId>urn:upnp-org:serviceId:AVTransport</serviceId>
<SCPDURL>TransportService.xml</SCPDURL>
<controlURL>/TransportService/Control</controlURL>
<eventSubURL>/TransportService/Event</eventSubURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:ConnectionManager:1</serviceType>
<serviceId>urn:upnp-org:serviceId:ConnectionManager</serviceId>
<SCPDURL>ConnectionManager.xml</SCPDURL>
<controlURL>/ConnectionManager/Control</controlURL>
<eventSubURL>/ConnectionManager/Event</eventSubURL>
</service>
</serviceList>
<manufacturer>Lautsprecher Teufel GmbH</manufacturer>
<manufacturerURL>https://www.teufel.de/</manufacturerURL>
<modelNumber>1</modelNumber>
<serialNumber>x:y:z</serialNumber>
<raumfeld:protocolVersion>16351</raumfeld:protocolVersion>
<raumfeld:hardwareType>21</raumfeld:hardwareType>
</device>
</root>
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 21 Februar 2021, 07:19:05
Zitat
Kopf kratz, was meinst du damit? Kann ich die irgendwie abfragen?
Zitat
Die gefundenen devices werden als readings angelegt. Dabei wird jedes device durch den readingname IP_Port repräsentiert. Attribute des devices werden 1:1 übernommen u. als readings mit entsprechender Bezeichnung angelegt. Die Services eines devices werden mit devicereadingname-zs-service angelegt.
Aber die xml-Datei beantwortet es mir auch  :D
Der urn:raumfeld-com:serviceId:RaumfeldRaumfeldGenerator:1ist herstellerspezifisch. Guck mal, was die entsprechende SCPDURL ausspuckt, ob es interessante actions oder events gibt.
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 21 Februar 2021, 12:37:05
Hallo Markus,

die <SCPDURL>/feldgenerator.xml</SCPDURL> spuckt das aus:

<scpd>
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<serviceStateTable>
<stateVariable sendEvents="yes">
<name>TransportControlButtons</name>
<dataType>string</dataType>
</stateVariable>
</serviceStateTable>
</scpd>

vg Jens
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 21 Februar 2021, 13:22:40
Anbei mal eine Übersicht was der UPNP-Controller an Readings auflistet:

    xx.x.x.xx_51626-UDN uuid:f97f36f9-abcf-4987-9727-c15eda14def4
    xx.x.x.xx_51626-friendlyName Kueche,Schlafzimmer
    xx.x.x.xx_51626-location http://xx.x.x.xx:51626/f97f36f9-abcf-4987-9727-c15eda14def4.xml
    xx.x.x.xx_51626-manufacturer Lautsprecher Teufel GmbH
    xx.x.x.xx_51626-modelDescription Virtual Media Player
    xx.x.x.xx_51626-modelName Teufel One M
    xx.x.x.xx_51626-modelNumber 1
    xx.x.x.xx_51626-presence online
    xx.x.x.xx_51626-zs-AVTransport SID: uuid:44b110d0-e7a3-4a0a-8197-e36001eae8c0 timeout: 300 property: LastChange
    xx.x.x.xx_51626-zs-ConnectionManager urn:schemas-upnp-org:service:ConnectionManager:1
    xx.x.x.xx_51626-zs-RenderingControl SID: uuid:97a1845d-f708-4e77-be52-2a4efe60ac31 timeout: 300 property: LastChange
   
    xx.x.x.xx_52207-UDN uuid:f9e8fd48-3e69-4b28-b388-d92cbcef7d80
    xx.x.x.xx_52207-friendlyName Speaker Kueche #2
    xx.x.x.xx_52207-location http://xx.x.x.xx:52207/f9e8fd48-3e69-4b28-b388-d92cbcef7d80.xml
    xx.x.x.xx_52207-manufacturer Lautsprecher Teufel GmbH
    xx.x.x.xx_52207-modelDescription Digital Media Player
    xx.x.x.xx_52207-modelName Teufel One M
    xx.x.x.xx_52207-modelNumber 1
    xx.x.x.xx_52207-presence online
    xx.x.x.xx_52207-zs-AVTransport SID: uuid:55ba7b01-16cf-45b2-aaf6-3794a9567eb7 timeout: 300 property: BufferFilled
    xx.x.x.xx_52207-zs-ConnectionManager urn:schemas-upnp-org:service:ConnectionManager:1
    xx.x.x.xx_52207-zs-RaumfeldGenerator urn:schemas-raumfeld-com:service:RaumfeldGenerator:1
    xx.x.x.xx_52207-zs-RenderingControl SID: uuid:5c0de44c-7b14-48e2-bdc7-fa8a586a9d0d timeout: 300 property: LastChange
   
    xx.x.x.xx_52778-UDN uuid:eb57db8a-b475-4e3f-879b-1f8d314e1401
    xx.x.x.xx_52778-friendlyName Raumfeld MediaServer
    xx.x.x.xx_52778-location http://xx.x.x.xx:52778/eb57db8a-b475-4e3f-879b-1f8d314e1401.xml
    xx.x.x.xx_52778-manufacturer Lautsprecher Teufel GmbH
    xx.x.x.xx_52778-modelName Teufel One M
    xx.x.x.xx_52778-modelNumber 1
    xx.x.x.xx_52778-presence online
    xx.x.x.xx_52778-zs-ConnectionManager urn:schemas-upnp-org:service:ConnectionManager:1
    xx.x.x.xx_52778-zs-ContentDirectory urn:schemas-upnp-org:service:ContentDirectory:1
   
    xx.x.x.xx_54841-UDN uuid:5470b1a7-c6c7-48a0-bc86-8a48cac5dbdc
    xx.x.x.xx_54841-friendlyName Raumfeld ConfigDevice
    xx.x.x.xx_54841-location http://xx.x.x.xx:54841/5470b1a7-c6c7-48a0-bc86-8a48cac5dbdc.xml
    xx.x.x.xx_54841-manufacturer Lautsprecher Teufel GmbH
    xx.x.x.xx_54841-modelName Teufel One M
    xx.x.x.xx_54841-modelNumber 1
    xx.x.x.xx_54841-presence online
    xx.x.x.xx_54841-zs-ConfigService urn:schemas-raumfeld-com:service:ConfigService:1
   
    xx.x.x.xx_55354-UDN uuid:85c93a10-d169-42c2-8e93-ecdd0724707e
    xx.x.x.xx_55354-friendlyName Schlafzimmer
    xx.x.x.xx_55354-location http://xx.x.x.xx:55354/85c93a10-d169-42c2-8e93-ecdd0724707e.xml
    xx.x.x.xx_55354-manufacturer Lautsprecher Teufel GmbH
    xx.x.x.xx_55354-modelDescription Virtual Media Player
    xx.x.x.xx_55354-modelName Teufel One M
    xx.x.x.xx_55354-modelNumber 1
    xx.x.x.xx_55354-presence offline
    xx.x.x.xx_55354-zs-AVTransport subscribed but offline
    xx.x.x.xx_55354-zs-ConnectionManager urn:schemas-upnp-org:service:ConnectionManager:1
    xx.x.x.xx_55354-zs-RenderingControl subscribed but offline
   
    xx.x.x.xx_58281-UDN uuid:063f7a0f-b90e-4754-824a-9eb5d62c163d
    xx.x.x.xx_58281-friendlyName Teufel Raumfeld Device
    xx.x.x.xx_58281-location http://xx.x.x.xx:58281/063f7a0f-b90e-4754-824a-9eb5d62c163d.xml
    xx.x.x.xx_58281-manufacturer Lautsprecher Teufel GmbH
    xx.x.x.xx_58281-modelName Teufel One M
    xx.x.x.xx_58281-modelNumber 1
    xx.x.x.xx_58281-presence online
    xx.x.x.xx_58281-zs-SetupService urn:schemas-raumfeld-com:service:SetupService:1
   
    aa.a.a.aa_37134-UDN uuid:faa2efcd-f7b3-48f6-a075-82ef5800789d
    aa.a.a.aa_37134-friendlyName UGW4
    aa.a.a.aa_37134-location http://aa.a.a.aa:37134/rootDesc.xml
    aa.a.a.aa_37134-manufacturer Ubiquiti, Inc.
    aa.a.a.aa_37134-modelDescription Debian router
    aa.a.a.aa_37134-modelName Debian router
    aa.a.a.aa_37134-modelNumber e221
    aa.a.a.aa_37134-presence online
    aa.a.a.aa_37134-zs-L3Forwarding1 urn:schemas-upnp-org:service:Layer3Forwarding:1
    aa.a.a.aa_37134-zz uuid:faa2efcd-f7b3-48f6-a075-82ef5800789e
    aa.a.a.aa_37134-zz-UDN uuid:faa2efcd-f7b3-48f6-a075-82ef5800789e
    aa.a.a.aa_37134-zz-friendlyName WANDevice
    aa.a.a.aa_37134-zz-location http://aa.a.a.aa:37134/rootDesc.xml
    aa.a.a.aa_37134-zz-manufacturer MiniUPnP
    aa.a.a.aa_37134-zz-modelDescription WAN Device
    aa.a.a.aa_37134-zz-modelName WAN Device
    aa.a.a.aa_37134-zz-modelNumber 20210129
    aa.a.a.aa_37134-zz-presence online
    aa.a.a.aa_37134-zz-zs-WANCommonIFC1 urn:schemas-upnp-org:service:WANCommonInterfaceConfig:1
    aa.a.a.aa_37134-zz-zz uuid:faa2efcd-f7b3-48f6-a075-82ef5800789f
    aa.a.a.aa_37134-zz-zz-UDN uuid:faa2efcd-f7b3-48f6-a075-82ef5800789f
    aa.a.a.aa_37134-zz-zz-friendlyName WANConnectionDevice
    aa.a.a.aa_37134-zz-zz-location http://aa.a.a.aa:37134/rootDesc.xml
    aa.a.a.aa_37134-zz-zz-manufacturer MiniUPnP
    aa.a.a.aa_37134-zz-zz-modelDescription MiniUPnP daemon
    aa.a.a.aa_37134-zz-zz-modelName MiniUPnPd
    aa.a.a.aa_37134-zz-zz-modelNumber 20210129
    aa.a.a.aa_37134-zz-zz-presence online
    aa.a.a.aa_37134-zz-zz-zs-WANIPConn1 urn:schemas-upnp-org:service:WANIPConnection:1
   
    yy.y.y.yy_49692-UDN uuid:70d5b346-9b22-4e75-965b-3cedf880e531
    yy.y.y.yy_49692-friendlyName Teufel Raumfeld Device
    yy.y.y.yy_49692-location http://yy.y.y.yy:49692/70d5b346-9b22-4e75-965b-3cedf880e531.xml
    yy.y.y.yy_49692-manufacturer Lautsprecher Teufel GmbH
    yy.y.y.yy_49692-modelName Teufel One S
    yy.y.y.yy_49692-modelNumber 1
    yy.y.y.yy_49692-presence online
    yy.y.y.yy_49692-zs-SetupService urn:schemas-raumfeld-com:service:SetupService:1
   
    yy.y.y.yy_59448-UDN uuid:df6f32d1-1569-465b-8329-a14b6c788fa5
    yy.y.y.yy_59448-friendlyName Speaker Schlafzimmer
    yy.y.y.yy_59448-location http://yy.y.y.yy:59448/df6f32d1-1569-465b-8329-a14b6c788fa5.xml
    yy.y.y.yy_59448-manufacturer Lautsprecher Teufel GmbH
    yy.y.y.yy_59448-modelDescription Digital Media Player
    yy.y.y.yy_59448-modelName Teufel One S
    yy.y.y.yy_59448-modelNumber 1
    yy.y.y.yy_59448-presence online
    yy.y.y.yy_59448-zs-AVTransport SID: uuid:8629a29c-89c0-42c0-9e0a-8584df170c70 timeout: 300 property: BufferFilled
    yy.y.y.yy_59448-zs-ConnectionManager urn:schemas-upnp-org:service:ConnectionManager:1
    yy.y.y.yy_59448-zs-RaumfeldGenerator urn:schemas-raumfeld-com:service:RaumfeldGenerator:1
    yy.y.y.yy_59448-zs-RenderingControl SID: uuid:9c372e41-99fe-4569-887f-572ac12cddeb timeout: 300 property: LastChange
   
    zz.z.z.zz_54066-UDN uuid:0fee29da-3ea9-49bb-9902-a736a18ffd15
    zz.z.z.zz_54066-friendlyName Teufel Raumfeld Device
    zz.z.z.zz_54066-location http://zz.z.z.zz:54066/0fee29da-3ea9-49bb-9902-a736a18ffd15.xml
    zz.z.z.zz_54066-manufacturer Lautsprecher Teufel GmbH
    zz.z.z.zz_54066-modelName Teufel One S
    zz.z.z.zz_54066-modelNumber 1
    zz.z.z.zz_54066-presence online
    zz.z.z.zz_54066-zs-SetupService urn:schemas-raumfeld-com:service:SetupService:1
   
    zz.z.z.zz_55693-UDN uuid:fedf2043-eac0-49e1-82ed-6ac78b34f79d
    zz.z.z.zz_55693-friendlyName Speaker Schlafzimmer  #3
    zz.z.z.zz_55693-location http://zz.z.z.zz:55693/fedf2043-eac0-49e1-82ed-6ac78b34f79d.xml
    zz.z.z.zz_55693-manufacturer Lautsprecher Teufel GmbH
    zz.z.z.zz_55693-modelDescription Digital Media Player
    zz.z.z.zz_55693-modelName Teufel One S
    zz.z.z.zz_55693-modelNumber 1
    zz.z.z.zz_55693-presence online
    zz.z.z.zz_55693-zs-AVTransport SID: uuid:7ebd3594-b649-4549-8d4d-977eeed1d02e timeout: 300 property: LastChange
    zz.z.z.zz_55693-zs-ConnectionManager urn:schemas-upnp-org:service:ConnectionManager:1
    zz.z.z.zz_55693-zs-RaumfeldGenerator urn:schemas-raumfeld-com:service:RaumfeldGenerator:1
    zz.z.z.zz_55693-zs-RenderingControl SID: uuid:1fa6884b-08fa-4699-90d4-c621ef9a25c0 timeout: 300 property: LastChange

Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 21 Februar 2021, 16:19:35
Hi Jens, erst mal danke fürs Testen u. die Mühe beim Info liefern.
Zitat
spuckt das aus:
Ist arg dünn. Keine actions, 1 event. Ich spekuliere bei einem Tastendruck. :-\ Nicht so wirklich spannend für ein Modul.

Bist Du Teufelhändler ?  :o ;D Ich bin wohl Hinterweltler, da mir TVs, ein dot u. ne alte B&O mit Lautsprechern genügen.  ;D
hier http://xx.x.x.xx:58281/063f7a0f-b90e-4754-824a-9eb5d62c163d.xml könnte es was interessantes für ein Modul geben.

Wechseln die Ports bei den Teufeln ? Und hast Du evtl. dadurch doppelte Einträge ?(Das ist auch noch sone Baustelle. Selbst die IPs könnten sich ja ändern)

Grüße Markus

Edit: Der timeout von 300 ist interessant kurz. Müsste eigentlich beim subscription renewal zu Fehlern(412 - precondition failed) im Log führen(verbose=4).
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 21 Februar 2021, 16:55:39
Hallo Markus,

Wechseln die Ports bei den Teufeln ? Und hast Du evtl. dadurch doppelte Einträge ?(Das ist auch noch sone Baustelle. Selbst die IPs könnten sich ja ändern)
Sind ja nur drei Geräte (1x M u. 2x S als Stereo-Paar), der M ist der Master und legt dann die virtuellen Geräte mit seiner IP an.
Die Ports wechseln z.B. wenn die WLan-Verbindung neu aufgebaut wird, IP´s bleiben immer gleich. Keine doppelten Einträge

Dot´s hab ich auch in Betrieb, aber im anderen VLan.

hier http://xx.x.x.xx:58281/063f7a0f-b90e-4754-824a-9eb5d62c163d.xml könnte es was interessantes für ein Modul geben.<root>
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<device>
<deviceType>urn:schemas-raumfeld-com:device:RaumfeldDevice:1</deviceType>
<friendlyName>Teufel Raumfeld Device</friendlyName>
<UDN>uuid:063f7a0f-b90e-4754-824a-9eb5d62c163d</UDN>
<iconList>
<icon>
<mimetype>image/png</mimetype>
<width>48</width>
<height>48</height>
<depth>24</depth>
<url>/icons/teufel-48.png</url>
</icon>
<icon>
<mimetype>image/png</mimetype>
<width>32</width>
<height>32</height>
<depth>24</depth>
<url>/icons/teufel-32.png</url>
</icon>
</iconList>
<serviceList>
<service>
<serviceType>urn:schemas-raumfeld-com:service:SetupService:1</serviceType>
<serviceId>urn:raumfeld-com:serviceId:SetupService</serviceId>
<SCPDURL>/setup-service.xml</SCPDURL>
<controlURL>/SetupService/ctrl</controlURL>
<eventSubURL>/SetupService/evt</eventSubURL>
</service>
</serviceList>
<manufacturer>Lautsprecher Teufel GmbH</manufacturer>
<manufacturerURL>https://www.teufel.de/</manufacturerURL>
<modelName>Teufel One M</modelName>
<modelNumber>1</modelNumber>
<serialNumber>50:1e:2d:11:3e:30</serialNumber>
<raumfeld:protocolVersion>16351</raumfeld:protocolVersion>
<raumfeld:hardwareType>21</raumfeld:hardwareType>
</device>
</root>

setup-service.xml

<scpd>
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<actionList>
<action>
<name>GetInfo</name>
<argumentList>
<argument>
<name>SoftwareVersion</name>
<direction>out</direction>
<relatedStateVariable>A_ARG_TYPE_SETUPSTRING</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>CheckForUpdate</name>
<argumentList>
<argument>
<name>Throttle</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_SETUPINT</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>GetUpdateInfo</name>
<argumentList>
<argument>
<name>Version</name>
<direction>out</direction>
<relatedStateVariable>UpdateAvailable</relatedStateVariable>
</argument>
<argument>
<name>SecondsSinceLastCheck</name>
<direction>out</direction>
<relatedStateVariable>A_ARG_TYPE_SETUPINT</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>DoUpdate</name>
<argumentList>
<argument>
<name>Version</name>
<direction>in</direction>
<relatedStateVariable>UpdateAvailable</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>GetDevice</name>
<argumentList>
<argument>
<name>Service</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_SERVICETYPE</relatedStateVariable>
</argument>
<argument>
<name>UniqueDeviceName</name>
<direction>out</direction>
<relatedStateVariable>A_ARG_TYPE_SETUPSTRING</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>GetNetworkInfo</name>
<argumentList>
<argument>
<name>Address</name>
<direction>out</direction>
<relatedStateVariable>A_ARG_TYPE_SETUPSTRING</relatedStateVariable>
</argument>
<argument>
<name>AccessPoint</name>
<direction>out</direction>
<relatedStateVariable>A_ARG_TYPE_SETUPSTRING</relatedStateVariable>
</argument>
<argument>
<name>SignalStrength</name>
<direction>out</direction>
<relatedStateVariable>A_ARG_TYPE_SETUPINT</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>SendReport</name>
<argumentList>
<argument>
<name>SystemID</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_SETUPSTRING</relatedStateVariable>
</argument>
<argument>
<name>ReportID</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_SETUPSTRING</relatedStateVariable>
</argument>
<argument>
<name>UserMessage</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_SETUPSTRING</relatedStateVariable>
</argument>
<argument>
<name>UserName</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_SETUPSTRING</relatedStateVariable>
</argument>
<argument>
<name>UserEmail</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_SETUPSTRING</relatedStateVariable>
</argument>
<argument>
<name>UserPhone</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_SETUPSTRING</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>GetDeviceMode</name>
<argumentList>
<argument>
<name>Mode</name>
<direction>out</direction>
<relatedStateVariable>A_ARG_TYPE_DEVICEMODE</relatedStateVariable>
</argument>
</argumentList>
</action>
</actionList>
<serviceStateTable>
<stateVariable sendEvents="yes">
<name>UpdateAvailable</name>
<dataType>string</dataType>
</stateVariable>
<stateVariable sendEvents="yes">
<name>UpdateState</name>
<allowedValueList>
<allowedValue>IDLE</allowedValue>
<allowedValue>CHECKING</allowedValue>
<allowedValue>DOWNLOADING</allowedValue>
<allowedValue>UPDATING</allowedValue>
</allowedValueList>
<dataType>string</dataType>
</stateVariable>
<stateVariable sendEvents="no">
<name>A_ARG_TYPE_SETUPSTRING</name>
<dataType>string</dataType>
</stateVariable>
<stateVariable sendEvents="no">
<name>A_ARG_TYPE_SETUPINT</name>
<dataType>ui4</dataType>
</stateVariable>
<stateVariable sendEvents="no">
<name>A_ARG_TYPE_SERVICETYPE</name>
<allowedValueList>
<allowedValue>config-service</allowedValue>
<allowedValue>meta-server</allowedValue>
<allowedValue>renderer</allowedValue>
</allowedValueList>
<dataType>string</dataType>
</stateVariable>
<stateVariable sendEvents="no">
<name>A_ARG_TYPE_DEVICEMODE</name>
<allowedValueList>
<allowedValue>WAIT_FOR_SETUP</allowedValue>
<allowedValue>CLIENT</allowedValue>
<allowedValue>MASTER</allowedValue>
</allowedValueList>
<dataType>string</dataType>
</stateVariable>
</serviceStateTable>
</scpd>

vg Jens
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 22 Februar 2021, 18:39:39
Hallo Markus,

heute Nacht gab´s eine neu öffentliche IP vom Internetanbieter und da zu diesen Zeitpunkt die Teufel-Lautsprecher noch aktiv waren gab es
auch neue Ports für diese.
Jetzt hab ich im DLNAController doppelte Einträge der Geräte. Hast du eine Idee wie man die Leichen(altePorts) automatisch entfernen kann?

vg Jens
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 22 Februar 2021, 18:54:35
Hi Jens,
dachte ichs mir doch. Ich muss das umbauen, dass zwischen UPNPController u. DLNA die UDN als eindeutiger Schlüssel genutzt wird. Ändert aber nichts daran, dass es im UPNPController Leichen gibt. Ah, doch, ich kann auch dort gegen die UDN prüfen und rigoros alte Einträge löschen.
Dauert dann etwas bis es eine neue Version gibt.


Am einfachsten machst Du ein "deletereading DeinUPNPController .*", dann sind alle readings weg u. werden neu aufgebaut.

Der service der Teufels scheint tatsächlich nicht uninteressant. Fehkt dann nur noch jemand, der sich damit auseinandersetzt u. ein Modul schreibt.

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 22 Februar 2021, 23:43:08
Hallo Markus,

Der service der Teufels scheint tatsächlich nicht uninteressant. Fehlt dann nur noch jemand, der sich damit auseinandersetzt u. ein Modul schreibt.
da falle ich aber aus verschiedensten Gründen aus  :) und die Teufel scheinen hier nicht sehr verbreitet zu sein. Ich wüsste auch nicht, wenn man drum bitten könnte.

Testen aber gerne


vg Jens
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 23 Februar 2021, 05:23:04
Wenn Du den service subscribst, siehst Du wenigstens im Log, was da per events regelmäßig kommt und ggfs. hilfreiche Info bietet.

Ich überlege noch wie man solche Dienste programmtechnisch hinzufügen kann, ohne dass man ein komplettes Modul braucht oder DLNA überfrachtet. In einem ersten Schritt vielleicht die events per userreading oder so aufbereiten.

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 27 Februar 2021, 08:05:59
Zitat
dachte ichs mir doch. Ich muss das umbauen, dass zwischen UPNPController u. DLNA die UDN als eindeutiger Schlüssel genutzt wird. Ändert aber nichts daran, dass es im UPNPController Leichen gibt. Ah, doch, ich kann auch dort gegen die UDN prüfen und rigoros alte Einträge löschen.
Dauert dann etwas bis es eine neue Version gibt.
done. new versions attached above. Please test and report issues. ;)
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 27 Februar 2021, 10:34:39
Hallo Markus,

Zitat
Dauert dann etwas bis es eine neue Version gibt.

also irgendwie haben wir unterschiedliche Definitionen von "Dauert dann etwas... "  ;)

Schön das die DLNA-Devices gleich mit dem "friendlyName" angelegt werden.
Bisher ist mir aufgefallen, das die Readings "currentTitle" und "currentTrackURI" sich nicht mehr aktualisieren.
Das Volume-Reading ändert sich auch nur wenn ich die Lautstärke über FHEM ändere.

vg Jens
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 27 Februar 2021, 10:53:53
Hi Jens,
das ging ja flott.
Zitat
Das Volume-Reading ändert sich auch nur wenn ich die Lautstärke über FHEM ändere.
kommt wohl von
Zitat
Der timeout von 300 ist interessant kurz. Müsste eigentlich beim subscription renewal zu Fehlern(412 - precondition failed) im Log führen(verbose=4).
Könntest Du mal das service-reading im UPNPController beobachten. Ich gebe ein timeout=renewal=1800 vor. Die Teufel scheinen aber nur 300 zu erlauben. Heißt: es funktioniert 5min lang richtig und dann nie wieder oder "fängt" sich das Modul immer wieder für 5min. ?
Vermutlich muss ich weg von der Vorgabe u. den "Wunsch" des devices berücksichtigen.
Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 27 Februar 2021, 11:12:22
Hallo Markus,

Zitat
service-reading im UPNPController beobachten
mach ich.

Auch nach einem FHEM-Neustart werden die Readings bis auf "state" nicht mehr aktualisiert.
Im DLNA-Device stehen bei "set" nur noch "volume" und "mute" zur Auswahl.

vg Jens
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 27 Februar 2021, 11:29:02
Zitat
Auch nach einem FHEM-Neustart werden die Readings bis auf "state" nicht mehr aktualisiert.
Das ist bei den meisten "unveränderlichen" readings auch richtig so. Bei den "streaming" bezogenen nur bei entsprechender action. Aber natürlich nur, wenn dieser Fehler
Zitat
Im DLNA-Device stehen bei "set" nur noch "volume" und "mute" zur Auswahl.
nicht vorliegt.Guck ich mal, was die Ursache beim restart ist.
Have fun
Markus
Edit: wie sieht denn das servicereading .....zs-AVTransport im UPNPController dazu aus ? Müsste ggfs. nach etwas Zeit sich automatisch korrigieren ? :-\
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 27 Februar 2021, 13:52:03
Hallo Markus,

UPNPController und DLNA-Devices gelöscht und neu angelegt = set-Auswahl wieder ok

DLNA-Devices wurden um 13:10 angelegt, ausgelesen um 13:44

Zitat
_49315-zs-AVTransport SID: uuid:666c05be-eb4d-49d2-bfb6-6964a38964f9 timeout: 300 property: LastChange 2021-02-27 13:30:28
_54581-zs-AVTransport SID: uuid:47eb49ef-c26d-4e68-b164-d0b3d31ce2dd timeout: 300 property: LastChange 2021-02-27 13:19:17
_57835-zs-AVTransport SID: uuid:5a83dfc3-88a5-4a06-8946-b9803183b981 timeout: 300 property: LastChange 2021-02-27 13:33:49
_54833-zs-AVTransport SID: uuid:28adb354-442e-4d3a-85af-9c569f02050d timeout: 300 property: BufferFilled 2021-02-27 13:43:51
_56759-zs-AVTransport SID: uuid:28dd28bb-9cc1-4c4d-b305-51b203a8290f timeout: 300 property: LastChange 2021-02-27 13:23:47

vg Jens

Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: MichaelT am 28 Februar 2021, 20:01:26
Hallo Markus,

erstmal danke für die unermüdliche Energie, die du in FHEM steckst.
Finde ich echt stark!

Zur Info, ich bin nun mit meinen 4 peaq MUNET PMN300 auch auf deine Implementierung umgestiegen.

Es wurden neben vielen UPNP-Devices auch die 4 MUNETs gefunden. stream und volume funktionieren.
friendlyName und transportState sowie die Typenbezeichnungen werden korrekt gesetzt.
currentTrack usw. werden auch gesetzt.

mute wird vom Geräte empfangen, kann aber nicht gesetzt werden (ging mit DLNARenderer).

speak geht nicht richtig? Irgendwie ist der stream abgeschnitten, wird aber wohl richtig gesetzt und im Browser auch korrekt wiedergegeben.
Beispiel "http://translate.google.com/translate_tts?tl=de&client=tw-ob&q=Dies%20ist%20ein%20ganz%20langer%20Text"
Ist aber nicht so wichtig.


Macht es sinn, dass ich die Multiroomsachen teste, oder wird das (noch) nicht unterstützt?


Gruß
Michael





Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 01 März 2021, 20:59:25
Hallo Michael,
danke für die Anerkennung. :)

Die beiden genannten Fehler habe ich bei meinem Samsung nicht. Da bräuchte ich dann ein Log mit verbose 5 beim DLNAController und UPNPController(masterdevice).

Multiroom wird noch nicht richtig funktionieren. Du meinst Caskeid wie beim DLNARenderer ? Kannst Du grob in Stichworten mit entsprechenden list der devices beschreiben was Du mit den Lautsprechern machst. Ich hab solche Teile nicht und kann mir noch nicht so richtig vorstellen, was die notwendige Funktion sein müsste(grob kann ich es natürlich aus Dominiks Sourcecode ablesen.) Service ist "SpeakerManagement" <edit>: für das Group-Management u. SessionManagement für Session-Management<edit off>, richtig ? Die müsst ich dann noch in den UPNP u. DLNAController einbauen.

Grüße Markus

Edit2: Ich hab mich durch den SourceCode gelesen. Musst also nicht mehr viel beschreiben. Interessant wären aber nach wie vor die lists der verschiedenen setups und verbose5-Logs, wenn Du im UPNPController die beiden Dienste subscribest und dann die ein oder andere action bzgl. dieser beiden services ausführst(nach meinem Verständnis werden für SpeakerManagement bisher gar keine events verarbeitet u. f. SessionManagement nur die SessionId).
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: RockFan am 03 März 2021, 12:17:07
Hallo Markus,

ich lese hier seit Beginn Deiner Neuentwicklung mit und habe heute mal versucht Deine Module zu testen.

Vielleicht erst zur Historie: Bei mit lief der DLNARenderer mit, ohne dass ich einen großen Nutzen daraus zog. Für u.a. ein DAB-/Internetradio von Medion, einen Onkyo-Receiver waren die spezialisierten Module deutlich besser ausgestattet und für den Rest hat sich keine Anwendung gefunden. Neugierig bin ich aber trotzdem und der Ansatz mit non-blocking ist ausgesprochen begrüßenswert. Deshalb wollte ich mir das hier auch mal anschauen  ;)

Zumindest kann ich meine allerersten Erfahrungen teilen:

Zunächst habe ich mal nur Deine beiden Controller-Module in das FHEM-Verzeichnis kopiert und mit reload geladen. Nach dem Define des UPNP-Controllers wurden auch gleich jede Menge Readings angelegt (inkl. FritzBox und Repeater).

Zu meiner Überraschung wurde auch ein Raum DLNAController erzeugt, in dem nur wenige Sekunden nach dem Erzeugen des UPNP-Controllers zwei DLNA-Controller-Devices angelegt wurden. Allerdings mit kryptischen UUID-Namen. Beide Geräte gibt es auch wirklich - es handelt sich um den Onkyo Receiver und das Medion Internetradio - blieben aber im Status offline (beide sind im Netzerk aber erreichbar). Ich habe mich auch darüber gewundert, dass beide Geräte im UPNP-Controller automatisch subscribed wurden. Ich dachte, dass man das manuell machen muss.

40 Minuten später ist dann in beiden Controllern noch unser Fernseher angelegt worden, im DLNA-Controller mit seinem "Friendly Name" und Status online. Dieser Fernseher war/ist allerdings ausgeschalten und somit (leider) nicht im Netzwerk erreichbar (eine dumme Eigenart dieses Fernsehers). Der Fernseher ist nicht subscribed.

Hier noch ein paar Logauszüge:
Define des UPNP-Controllers
2021.03.03 10:20:55 2: UPNPController: UPNP Controller v0.0.1 started
2021.03.03 10:20:56 3: UPNPController: start searching by type with search term: ssdp:all
2021.03.03 10:21:02 1: PERL WARNING: Use of uninitialized value in string eq at ./FHEM/98_UPNPController.pm line 532.
2021.03.03 10:21:02 3: DLNAController: UPNP_Controller, message: AVTransport|192.168.178.35_8888|online|urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.03 10:21:02 3: DLNAController: UPNP_Controller, Parameters: AVTransport, 192.168.178.35_8888, online, urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.03 10:21:02 2: autocreate: define DLNA_024c7600_fc76_0074_b24e_0038fc74c4b0 DLNAController uuid:024c7600-fc76-0074-b24e-0038fc74c4b0 192.168.178.35_8888
2021.03.03 10:21:02 3: UPNPController: subscription for service RenderingControl of device 192.168.178.35_8888 failed:
2021.03.03 10:21:03 3: UPNPController: start searching by type with search term: upnp:rootdevice
2021.03.03 10:21:03 3: DLNAController: DLNA_024c7600_fc76_0074_b24e_0038fc74c4b0 services initially subscribed
2021.03.03 10:21:03 2: autocreate: define FileLog_DLNA_024c7600_fc76_0074_b24e_0038fc74c4b0 FileLog ./log/DLNA_024c7600_fc76_0074_b24e_0038fc74c4b0-%Y.log DLNA_024c7600_fc76_0074_b24e_0038fc74c4b0
2021.03.03 10:21:05 3: DLNAController: UPNP_Controller, message: RenderingControl|192.168.178.58_8080|online|urn:schemas-upnp-org:metadata-1-0/RCS
2021.03.03 10:21:05 3: DLNAController: UPNP_Controller, Parameters: RenderingControl, 192.168.178.58_8080, online, urn:schemas-upnp-org:metadata-1-0/RCS
2021.03.03 10:21:05 2: autocreate: define DLNA_3DCC7100_F76C_11DD_87AF_305890619AC8 DLNAController uuid:3DCC7100-F76C-11DD-87AF-305890619AC8 192.168.178.58_8080
2021.03.03 10:21:05 3: DLNAController: DLNA_3DCC7100_F76C_11DD_87AF_305890619AC8 services initially subscribed
2021.03.03 10:21:05 2: autocreate: define FileLog_DLNA_3DCC7100_F76C_11DD_87AF_305890619AC8 FileLog ./log/DLNA_3DCC7100_F76C_11DD_87AF_305890619AC8-%Y.log DLNA_3DCC7100_F76C_11DD_87AF_305890619AC8

Fernseher wird 40 Minuten später gefunden
2021.03.03 11:01:34 3: DLNAController: UPNP_Controller, message: AVTransport|192.168.178.61_2870|online|urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.03 11:01:34 3: DLNAController: UPNP_Controller, Parameters: AVTransport, 192.168.178.61_2870, online, urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.03 11:01:34 2: autocreate: define DLNA_13cae598_3cca_165a_8000_0009dfbd33fb DLNAController uuid:13cae598-3cca-165a-8000-0009dfbd33fb 192.168.178.61_2870
2021.03.03 11:01:34 3: DLNAController: DLNA_13cae598_3cca_165a_8000_0009dfbd33fb services initially subscribed
2021.03.03 11:01:34 2: autocreate: define FileLog_DLNA_13cae598_3cca_165a_8000_0009dfbd33fb FileLog ./log/DLNA_13cae598_3cca_165a_8000_0009dfbd33fb-%Y.log DLNA_13cae598_3cca_165a_8000_0009dfbd33fb
2021.03.03 11:01:34 3: DLNAController: UPNP_Controller, message: RenderingControl|192.168.178.61_2870|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="0"/><VolumeDB channel="Master" val="-32768"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.03 11:01:34 3: DLNAController: UPNP_Controller, Parameters: RenderingControl, 192.168.178.61_2870, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="0"/><VolumeDB channel="Master" val="-32768"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.03 11:01:34 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870
2021.03.03 11:01:34 3: DLNAController: UPNP_Controller, message: AVTransport|192.168.178.61_2870|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.03 11:01:34 3: DLNAController: UPNP_Controller, Parameters: AVTransport, 192.168.178.61_2870, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.03 11:01:34 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870

Ich tue mir mit der Einschätzung noch etwas schwer. Entspricht bisher das Verhalten der Module bei meinem Versuch Deinen Erwartungen? Vorläufig lasse ich den Zustand mal so, falls du noch weitere Infos brauchst ;)

UPDATE:
Nach einem FHEM-Neustart von mir (aus einem anderen Grund!) habe die beiden Devices mit den kryptischen Namen den Friendly Name bekommen und sind nun auch Online


Viele Grüße
Dieter
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: MichaelT am 04 März 2021, 06:22:45
Morgen Markus,

habe aktuell wenig Zeit, melde mich

Gruß
Michael
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 04 März 2021, 09:10:12
Hallo Dieter,
Danke fürs Testen.
Zitat
Entspricht bisher das Verhalten der Module bei meinem Versuch Deinen Erwartungen?
Im Großen und Ganzen schon. Transparenz, was sich in Deinem LAN so an UPnP-devices tummelt und automatisches Anlegen von Controller-devices, die physische DLNA-Renderer/-Player steuern können.
Zitat
Zu meiner Überraschung wurde auch ein Raum DLNAController erzeugt, in dem nur wenige Sekunden nach dem Erzeugen des UPNP-Controllers zwei DLNA-Controller-Devices angelegt wurden.
Daran überrascht mich der Raum. Müsste eigentlich im room gem. attr autocreate device_room landen.  :-\
Zitat
Ich habe mich auch darüber gewundert, dass beide Geräte im UPNP-Controller automatisch subscribed wurden. Ich dachte, dass man das manuell machen muss.
Grundsätzlich manuell(dient dann nur dazu, dass man sich im Logfile angucken kann, was das device so von sich gibt). Gibt es aber ein logisches Modul zu einzelnen services(im konkreten Fall DLNAController) erfolgt das autocreate. DLNAController-devices subscriben automatisch mit ihrem define bzw. sobald sie wieder online sind.
Zitat
2021.03.03 10:21:03 2: autocreate: define FileLog_DLNA_024c7600_fc76_0074_b24e_0038fc74c4b0 FileLog .....
Finde ich jetzt nicht so sinnig.(ich hab bei mir das autocreate_filelog-Attribut nicht gesetzt)Da Du das Attribut nutzt: Kennst Du evtl. Module, wo trotz gesetztem Attribut kein filelog angelegt wird ?

Das mit dem Fernseher habe ich nicht verstanden.
Zitat
40 Minuten später ist dann in beiden Controllern noch unser Fernseher angelegt worden, im DLNA-Controller mit seinem "Friendly Name" und Status online. Dieser Fernseher war/ist allerdings ausgeschalten
Wurde der also nach 40' eingeschaltet ? Dann wäre das Verhalten genau richtig. Zum Einschaltzeitpunkt sendet der TV eine alive-message, worauf der UPNPController reagiert.
Zitat
Der Fernseher ist nicht subscribed.
Im UPNPController nicht sichtbar oder nur nicht dort manuell ausgelöst? Im Fehlerfall müsste sich aber etwas dazu im Log finden. Welcher TV-Hersteller ?
Zitat
Für u.a. ein DAB-/Internetradio von Medion, einen Onkyo-Receiver waren die spezialisierten Module deutlich besser ausgestattet
Das soll auch so bleiben, da die Entwickler die Feinheiten der Geräte "herauskitzeln". Bei meinem Samsung-Modul ist das ähnlich, wobei ich dort DLNAController quasi als add-on benutze. Sofern die Entwickler UPnP benutzen, würde es mich aber freuen, wenn zur Vereinheitlichung/Vereinfachung in/von FHEM auf UPNPController aufgesetzt würde.

Zitat
für den Rest hat sich keine Anwendung gefunden
Manchmal kann es schon der presence-Status sein, der von Interesse ist. Im Samsung-Modul ist z.B. eine periodische Prüfung drin, die logischerweise mal mehr oder weniger zu einer Verzögerung der presence-Erkennung führt. Reagiert ein Modul oder ein notify.... auf das UPnP-event des TV, so hat man in FHEM eine "realtime" Erkennung. Dann lassen sich auch Lampen etc. zeitnah steuern.

@Michael: dann schreib eher weniger als mehr. Durch lesen des SouceCodes bin ich schon ein ganzes Stück weiter und kann vielleicht am We eine Version veröffentlichen, die in der Theorie für Multiroom/Caskeid funktionieren könnte. :)

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: RockFan am 04 März 2021, 12:12:57
Hallo Markus,
Danke für die ausführliche Antwort.

Zitat
Daran überrascht mich der Raum. Müsste eigentlich im room gem. attr autocreate device_room landen.
Sorry, das war mein "Fehler". Wahrscheinlich ist bei mir schon seit Urzeiten
attr autocreate device_room %TYPE

gesetzt  :-[

Zitat
Finde ich jetzt nicht so sinnig.(ich hab bei mir das autocreate_filelog-Attribut nicht gesetzt)Da Du das Attribut nutzt: Kennst Du evtl. Module, wo trotz gesetztem Attribut kein filelog angelegt wird ?
Das Modul autocreate ist bei mir vollkommen in Vergessenheit geraten. Es wurde hier in den letzten 10 Jahren so unglaublich viel entwickelt, dass ich oft gar nicht mehr genau zur Kenntnis nehme, dass oder warum zusätzliche Devices/Logs entstehen, wenn ich ein, ich nenne es mal, neues Feature einbaue. Deshalb habe ich auf die Filelogs gar nicht mehr so richtig geachtet :-[ Aber Danke, jetzt habe ich das automatische Erzeugen der Log-Devices entfernt.

Zitat
Das mit dem Fernseher habe ich nicht verstanden.
Zitat
Wurde der also nach 40' eingeschaltet ? Dann wäre das Verhalten genau richtig. Zum Einschaltzeitpunkt sendet der TV eine alive-message, worauf der UPNPController reagiert.
Der Fernseher war bis zum Abend aus und es hat mich ja gerade deshalb so gewundert, da dieser Medion Fernseher im ausgeschaltetem Zustand nicht über das Netzwerk erreichbar ist. Es schent dann sogar die Netzwerkkarte des Fernsehers inaktiv zu sein, weshalb man ihn auch nur über die Fernbedienung einschalten kann. Ausschalten und Steuern geht dann auch über das Netzwerk. Die Info musste dann also eigentlich über den Router (eine Fritzbox) kommen, da er dort natürlich als inaktives Gerät geführt wird, oder?
Mit dem fehlenden Subscribe würde das dann natürlich passen, wenn ich Dich richtig verstanden habe. Er war ja nicht wirklich online.
Während ich die Zeilen hier schreibe, fällt mir auch auf, dass sich die Statusinformationen zum Fernseher gerne mal ändern, obwohl er einfach dauerhaft aus ist. Als ich mit dem Schreiben begann war er in beiden Controllern offline, jetzt ist er aber online. Sehr seltsam. Liegt aber sicherlich am Gerät ;)

Zum Thema Anwendung:
Wenn ich Dich richtig verstehe, sollte ich doch eigentlich "erkennen" können (Events und Readings), sobald ich am echten Device etwas ändere. Wenn ich z.B. mein Internetradio, das direkt neben mir steht, ein- und ausschalte, gibt es weder Events noch Änderungen in Readings (logischerweise). Der presence-Status ist ja immer online, wenn die Geräte im Netzwerk hängen (außer bei dem komischen Fernseher ;) ). Was wären denn typische UpnP-Events?

Viele Grüße
Dieter 
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 04 März 2021, 14:08:30
Zitat
attr autocreate device_room %TYPE
Was es alles so in FHEM gibt.  ;D
Zitat
Die Info musste dann also eigentlich über den Router (eine Fritzbox) kommen, da er dort natürlich als inaktives Gerät geführt wird, oder?
Nein. Das kam definitiv vom Fernseher.
Zitat
Es schent dann sogar die Netzwerkkarte des Fernsehers inaktiv zu sein, weshalb man ihn auch nur über die Fernbedienung einschalten kann.
Ha, das ist das, was ich auch mit Transparenz meinte. Man stellt "seltsame" Verhaltensweisen fest. Wenn ich jetzt Deinen Fall richtig verstanden hab, dann ist der TV stromversorgt aber im Standby gewesen. Dass dann trotzdem irgendwann das device angelegt wurde, kann nur bedeuten, dass er kurzzeitig aufwachte und tatsächlich im Netz aktiv war. Ich kenne ähnliches von Samsung. Zu beginn dachten wir an Modulfehler, Geister.... Mittlerweile weiß ich was passiert: TV in Standby-> DLNARenderer/DLNAController meldet sofort offline. Nach ca. 30" geht er aber netzwerktechnisch wieder online(äußerlich sieht man nichts), um dann nach ca. 2' endgültig offline zu gehen. Lustig werden solche Geschichten dann, wenn ein user partout behauptet, bei ihm funktioniere der Einschaltbefehl per FHEM(kein Mensch denkt über ein temporäres online von 2' nach).
Zitat
Während ich die Zeilen hier schreibe, fällt mir auch auf, dass sich die Statusinformationen zum Fernseher gerne mal ändern, obwohl er einfach dauerhaft aus ist. Als ich mit dem Schreiben begann war er in beiden Controllern offline, jetzt ist er aber online. Sehr seltsam. Liegt aber sicherlich am Gerät ;)
Ja, genau. Bestätigt meine Mutmaßung. Ich spekuliere, dass der periodisch ins Netzwerk geht, um z.B. auf firmware-updates zu prüfen.

Zitat
Wenn ich Dich richtig verstehe, sollte ich doch eigentlich "erkennen" können (Events und Readings), sobald ich am echten Device etwas ändere. Wenn ich z.B. mein Internetradio, das direkt neben mir steht, ein- und ausschalte, gibt es weder Events noch Änderungen in Readings (logischerweise). Der presence-Status ist ja immer online, wenn die Geräte im Netzwerk hängen (außer bei dem komischen Fernseher ;) ).
Wenn Du den Stecker ziehst, wird's für mich und das Modul schwer. Ich erarbeite aber eine Lösung, dass wenigstens nach geraumer Zeit das "offline" erkannt wird. Wenn es per Fb oder sonstwie abgeschaltet wird, müsste ein byebye-event geschickt werden, was sich dann eben als offline in meinen Modulen auswirkt. Tut es das Gerät nicht, ist der "Standard" nicht sauber implementiert.  :'( Oder aber das device ist nach wie vor netzwerktechnisch aktiv und lässt sich z.B. auch per wol wieder einschalten.
Zitat
Was wären denn typische UpnP-Events?
Lässt sich gar nicht pauschal sagen, da UPnP zu allgemein ist. Bzw. eben das erwähnte "online"(alive) u. "offline"(byebye). Das ist die allgemeine UPnP-Ebene.
Eine Ebene tiefer liegen die services. Da kann ich nur zu DLNA etwas sagen:
- service AVTransport: sobald etwas "gerendert" wird, das device also von außen(muss nicht FHEM sein) einen Input zum Anzeigen(Rendern) bekommt
- serviceRenderingControl: im DLNAController/-Renderer sind volume u. mute implementiert. Tatsächlich werden auch Änderungen von Contrast etc. übermittelt, sind aber mangels Informationsgehalt erst gar nicht in den Modulen implementiert.
- service Speaker-/SessionManagement sind gerade in Arbeit für den DLNAController; Im DLNARenderer funktionsfähig implementiert

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Stromzähler am 04 März 2021, 17:32:25
Hallo,

das ist ein interessantes Projekt. Ich arbeite mich auch gerade ein. Da hätte ich gleich einen Vorschlag. Vielleicht im UPNPController

attr UPNP_Controller userattr acceptedUDNs defaultRoom envNamespace envPrefix ignoreUDNs:textField-long
standardmäßig zu setzen. Erhöht die Übersicht. Bei "artgleichen" Attributen vielleicht auch noch...

Danke, Joachim
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: RockFan am 04 März 2021, 19:23:16
Hallo Markus,

das ist ja sehr interessant (v.a. das mit unserem Fernseher). Schade ist, dass er sich auch während er "heimlich" Online ist nicht einschalten lässt.

Nach Deinen Erklärungen sieht es für mich jetzt eher so aus, als wäre der Fernseher weniger komisch, als meine beiden anderen DLNA Geräte: das Medion Internetradio und der Onkyo Receiver
Beide werden immer Online angezeigt, senden also offensichtlich kein "byebye".
Außerdem sind für beide nur sehr wenige Kommandos im DLNA-Controller-Device verfügbar. Bei beiden nur Volume und Mute, während ich beim Fernseher 22 Kommandos zähle. Ob sie auch funktionieren muss ich erst noch ausprobieren.

Viele Grüße
Dieter
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 04 März 2021, 22:04:35
@Joachim
schön dass Du Interesse zeigst. Für Deinen Wunsch ist es glaub ich noch deutlich zu früh. Erst einmal muss die technische Funktionalität vollständig u. "rund" werden.

@Dieter
Zitat
Bei beiden nur Volume und Mute, während ich beim Fernseher 22 Kommandos zähle. Ob sie auch funktionieren muss ich erst noch ausprobieren.
Das liegt mal wieder nur an den services. Scheinbar bei den beiden nur RenderingControl unterstützt. Der TV hingegen bietet wohl Rendering(service AVTransport). Probieren wird spannend.  ;D Ich empfehle erste Tests mit z.B. set DeinDLNATV stream http://DeineFHEMIP:DeinFHEMWEBPort/fhem/www/images/default/WLAN_off.pngWenn das klappt kannst Du mal set DeinDLNATV speak "Das ist ein Test"ausprobieren.

Richtig lustig wird's, wenn Du es beim TV gucken mit Mitbewohnern heimlich ausprobierst und es funktioniert. Zuerst werden die völlig entsetzt sein, was da mit dem Fernseher los ist.  ;D  Und dann wirst Du schwitzend nach dem Befehl suchen, um wieder zurück ins TV-Programm zu kommen. ;D ;D


Have fun
Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: RockFan am 05 März 2021, 10:22:40
Hallo Markus,

ich bin mal mit einem Tablet vor den Fernseher gewandert, um das auszuprobieren. Da ich vor kurzem auch noch ein (möglicerweise) spezialisiertes Modul gefunden hatte (VestelTVs: https://forum.fhem.de/index.php/topic,117397.0.html (https://forum.fhem.de/index.php/topic,117397.0.html)), konnte ich gleichzeitig parallel testen. Das Ergebnis ist leider ziemlich bescheiden und auch nicht eindeutig. Obwohl ich ITler bin - oder vielleicht gerade deshalb - denke ich mir immer wieder es gibt neben "Null" und "Eins" auch noch "Vielleicht"  :'(

Das Kommando mit dem Streamen des "WLAN_off" Icons ging ins Leere. Aber auch andere Kommandos wie "off", "volume", "mute" hatten keine Auswirkung (alles mehrmals probiert).

Mit dem VestelTVs-Modul eigentlich das gleiche Verhalten. Ich sage "eigentlich", da es hier zweimal (von vielleicht 5) mit dem "off" funktioniert hat (Stichwort "vielleicht").

Eine weitere Beobachtung, die ich zur Kategorie "vielleicht" einordnen würde:
Mit der Fernbedienung habe ich die Lautstärke einige Male verändert. Einer dieser Versuche (aber nur genau einer) ist im DLNAController-Device angekommen. Seither steht dort die Lautstärke auf 4.

Ich hänge hier mal relevante Log-Schnipsel an:
2021.03.05 09:25:47 3: DLNAController: UPNP_Controller, message: AVTransport|192.168.178.61_2870|offline|urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.05 09:25:47 3: DLNAController: UPNP_Controller, Parameters: AVTransport, 192.168.178.61_2870, offline, urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.05 09:25:47 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870
2021.03.05 09:25:47 3: DLNAController: UPNP_Controller, message: AVTransport|192.168.178.61_2870|online|urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.05 09:25:47 3: DLNAController: UPNP_Controller, Parameters: AVTransport, 192.168.178.61_2870, online, urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.05 09:25:47 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870
2021.03.05 09:25:48 3: DLNAController: UPNP_Controller, message: RenderingControl|192.168.178.61_2870|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="0"/><VolumeDB channel="Master" val="-32768"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.05 09:25:48 3: DLNAController: UPNP_Controller, Parameters: RenderingControl, 192.168.178.61_2870, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="0"/><VolumeDB channel="Master" val="-32768"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.05 09:25:48 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870
2021.03.05 09:25:48 3: DLNAController: UPNP_Controller, message: AVTransport|192.168.178.61_2870|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.05 09:25:48 3: DLNAController: UPNP_Controller, Parameters: AVTransport, 192.168.178.61_2870, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.05 09:25:48 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870

2021.03.05 09:30:17 3: DLNAController: UPNP_Controller, message: RenderingControl|192.168.178.61_2870|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="0"/><VolumeDB channel="Master" val="-32768"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.05 09:30:17 3: DLNAController: UPNP_Controller, Parameters: RenderingControl, 192.168.178.61_2870, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="0"/><VolumeDB channel="Master" val="-32768"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.05 09:30:17 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870

2021.03.05 09:33:52 3: UPNPController: subscription for service RenderingControl of device 192.168.178.61_2870 failed:
 

2021.03.05 09:33:55 3: DLNAController: UPNP_Controller, message: AVTransport|192.168.178.61_2870|offline|urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.05 09:33:55 3: DLNAController: UPNP_Controller, Parameters: AVTransport, 192.168.178.61_2870, offline, urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.05 09:33:55 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870
2021.03.05 09:33:56 3: DLNAController: UPNP_Controller, message: AVTransport|192.168.178.61_2870|online|urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.05 09:33:56 3: DLNAController: UPNP_Controller, Parameters: AVTransport, 192.168.178.61_2870, online, urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.05 09:33:56 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870
2021.03.05 09:33:56 3: DLNAController: UPNP_Controller, message: RenderingControl|192.168.178.61_2870|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="4"/><VolumeDB channel="Master" val="-30146"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.05 09:33:56 3: DLNAController: UPNP_Controller, Parameters: RenderingControl, 192.168.178.61_2870, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="4"/><VolumeDB channel="Master" val="-30146"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.05 09:33:56 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870
2021.03.05 09:33:56 3: DLNAController: UPNP_Controller, message: AVTransport|192.168.178.61_2870|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.05 09:33:56 3: DLNAController: UPNP_Controller, Parameters: AVTransport, 192.168.178.61_2870, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.05 09:33:56 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870

Da ich mir das Ganze momentan nur aus Neugier anschaue (und diese Woche Urlaub hatte), ist es für mich derzeit nur ein wenig Spielerei und hat keine Priorität. Aber vielleicht bringen dir die Erfahrungen etwas. Wenn ich noch was ausprobieren soll, bitte einfach melden. Ich werde das Thema definitiv im Auge behalten.

Viele Grüße
Dieter
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 05 März 2021, 11:05:29
Hallo Dieter,
Zitat
Einer dieser Versuche (aber nur genau einer) ist im DLNAController-Device angekommen. Seither steht dort die Lautstärke auf 4.
Den denke ich zu sehen. Und danach passiert nichts mehr, weil
Zitat
2021.03.05 09:33:52 3: UPNPController: subscription for service RenderingControl of device 192.168.178.61_2870 failed:
Um mehr zu sehen, müsstest Du die Tests mit verbose=5 beim TV-DLNAControllerdevice und UPNPSocket-UPNP_Controller-12345, wobei 12345 irgendeine vermutlich 5-stellige Port-Nr. ist, machen.
Was auch zum Erfolg führen könnte: Beim UPNPController diese Attributeattr Dein_UPNP_Controller envNamespace <undef>
attr Dein_UPNP_Controller envPrefix s
setzen. Diese Attribute haben wir damals für die Samsung eingeführt, weil da irgendwas im Standard "krumm" liegt. Diese Attribute verhalfen auch Nicht-Samsung-AVs zum Erfolg.

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: RockFan am 05 März 2021, 13:37:37
Hallo Markus,

ich bin mir nicht sicher, ob ich alles richtig verstanden habe.

Das die subscription heute Morgen zwischendurch nicht geklappt hatte, könnte natürlich auch am erfolgreichen Ausschalten mit dem VestelTVs-Modul liegen, oder?

Zitat
Um mehr zu sehen, müsstest Du die Tests mit verbose=5 beim TV-DLNAControllerdevice und UPNPSocket-UPNP_Controller-12345, wobei 12345 irgendeine vermutlich 5-stellige Port-Nr. ist, machen.

Was meinst du hier mit "UPNPSocket-UPNP_Controller-12345"? Ich habe mal verbose=5 in den Devices UPNPController und für den DLNA Controller des Fernsehers gesetzt.
Außerdem habe ich die beiden von Dir empfohlenen Attribute gesetzt. Dazu hätte ich aber auch Fragen:
1. Diese gelten ja nicht nur für ein einzelnes "Gerät". Richtig?
2. Bei envNamespace bin ich mir nicht sicher, was gesetzt werden soll. Die UUID des Fernsehers, die ich im Reading 192.168.178.61_2870-UDN finde? Ich habe sie jedenfalls mal genommen  :-\  Oder hätte ich <undef> reinschreiben sollen?

Gebracht hat es jedenfalls nichts. Ich habe wieder Off, Volume und Mute probiert und die Lautstärke mit der Fernbedienung geändert, ohne es diesmal im DLNAController zu sehen. Erst am Ende habe ich dann tatsächlich an der Fernbedienung ausgeschaltet.

Hier ist der Logauszug:
2021.03.05 13:08:02 4: UPNPController: discovery message of ALDISUED TV with UDN: uuid:13cae598-3cca-165a-8000-0009dfbd33fb action: deviceRemoved
2021.03.05 13:08:02 5: UPNPController: UPNP_Controller: byebye-notify message device 192.168.178.61_2870 received
2021.03.05 13:08:02 5: UPNPController: earlier subscribed service AVTransport of device 192.168.178.61_2870 went offline
2021.03.05 13:08:02 5: UPNPController: UPNP_Controller: event of service urn:schemas-upnp-org:metadata-1-0/AVT, message urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.05 13:08:02 5: UPNP_Controller: dispatch AVTransport|192.168.178.61_2870|offline|urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.05 13:08:02 3: DLNAController: UPNP_Controller, message: AVTransport|192.168.178.61_2870|offline|urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.05 13:08:02 3: DLNAController: UPNP_Controller, Parameters: AVTransport, 192.168.178.61_2870, offline, urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.05 13:08:02 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870
2021.03.05 13:08:02 5: UPNPController: UPNP_Controller: event of service  urn:schemas-upnp-org:metadata-1-0/AVT dispatched to ARRAY(0x9d79be0)
2021.03.05 13:08:03 4: UPNPController: discovery message of ALDISUED TV with UDN: uuid:13cae598-3cca-165a-8000-0009dfbd33fb action: deviceAdded
2021.03.05 13:08:03 5: UPNPController: UPNP_Controller: alive-notify message device uuid:13cae598-3cca-165a-8000-0009dfbd33fb received
2021.03.05 13:08:03 5: UPNPController: warning: main, Use of uninitialized value in string eq at ./FHEM/98_UPNPController.pm line 532.

2021.03.05 13:08:03 5: UPNPController: UPNP_Controller: device uuid:13cae598-3cca-165a-8000-0009dfbd33fb found. Check for processing
2021.03.05 13:08:03 5: UPNPController: UPNP_Controller: device uuid:13cae598-3cca-165a-8000-0009dfbd33fb will be controlled with 192.168.178.61_2870
2021.03.05 13:08:03 5: UPNPController: UPNP_Controller: device uuid:13cae598-3cca-165a-8000-0009dfbd33fb has service with serviceId: RenderingControl
2021.03.05 13:08:03 4: UPNPController: subscribe: reading  192.168.178.61_2870-zs-RenderingControl, uniquedevice 192.168.178.61_2870, service RenderingControl
2021.03.05 13:08:03 5: UPNPController: RenderingControl: urn:schemas-upnp-org:service:RenderingControl:1 found. OK.
2021.03.05 13:08:03 5: UPNPController: RenderingControl: urn:schemas-upnp-org:service:RenderingControl:1 found. OK.
2021.03.05 13:08:04 5: UPNPController: UPNP_Controller: device uuid:13cae598-3cca-165a-8000-0009dfbd33fb has service with serviceId: ConnectionManager
2021.03.05 13:08:04 5: UPNPController: UPNP_Controller: device uuid:13cae598-3cca-165a-8000-0009dfbd33fb has service with serviceId: AVTransport
2021.03.05 13:08:04 4: UPNPController: subscribe: reading  192.168.178.61_2870-zs-AVTransport, uniquedevice 192.168.178.61_2870, service AVTransport
2021.03.05 13:08:04 5: UPNPController: AVTransport: urn:schemas-upnp-org:service:AVTransport:1 found. OK.
2021.03.05 13:08:04 5: UPNPController: AVTransport: urn:schemas-upnp-org:service:AVTransport:1 found. OK.
2021.03.05 13:08:04 5: UPNPController: UPNP_Controller: event of service urn:schemas-upnp-org:metadata-1-0/AVT, message urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.05 13:08:04 5: UPNP_Controller: dispatch AVTransport|192.168.178.61_2870|online|urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.05 13:08:04 3: DLNAController: UPNP_Controller, message: AVTransport|192.168.178.61_2870|online|urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.05 13:08:04 3: DLNAController: UPNP_Controller, Parameters: AVTransport, 192.168.178.61_2870, online, urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.05 13:08:04 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870
2021.03.05 13:08:04 5: UPNPController: UPNP_Controller: event of service  urn:schemas-upnp-org:metadata-1-0/AVT dispatched to ARRAY(0xab535f0)
2021.03.05 13:08:04 5: UPNPController: Received event: by 192.168.178.61_2870-zs-RenderingControl UPnP::ControlPoint::Service=HASH(0xa73f918) $VAR1 = 'LastChange';
$VAR2 = '&lt;Event xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/RCS/&quot;&gt;&lt;InstanceID val=&quot;0&quot;&gt;&lt;Mute channel=&quot;Master&quot; val=&quot;0&quot;/&gt;&lt;Volume channel=&quot;Master&quot; val=&quot;4&quot;/&gt;&lt;VolumeDB channel=&quot;Master&quot; val=&quot;-30146&quot;/&gt;&lt;PresetNameList val=&quot;FactoryDefaults&quot;/&gt;&lt;/InstanceID&gt;&lt;/Event&gt;';

2021.03.05 13:08:04 5: UPNPController: Received event: by 192.168.178.61_2870-zs-RenderingControl original property: &lt;Event xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/RCS/&quot;&gt;&lt;InstanceID val=&quot;0&quot;&gt;&lt;Mute channel=&quot;Master&quot; val=&quot;0&quot;/&gt;&lt;Volume channel=&quot;Master&quot; val=&quot;4&quot;/&gt;&lt;VolumeDB channel=&quot;Master&quot; val=&quot;-30146&quot;/&gt;&lt;PresetNameList val=&quot;FactoryDefaults&quot;/&gt;&lt;/InstanceID&gt;&lt;/Event&gt;
2021.03.05 13:08:04 5: UPNPController: Received event: by 192.168.178.61_2870-zs-RenderingControl property: <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="4"/><VolumeDB channel="Master" val="-30146"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.05 13:08:04 5: UPNPController: UPNP_Controller: event of service urn:schemas-upnp-org:metadata-1-0/AVT, message <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="4"/><VolumeDB channel="Master" val="-30146"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.05 13:08:04 5: UPNPController: UPNP_Controller: event of service urn:schemas-upnp-org:metadata-1-0/RCS, message <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="4"/><VolumeDB channel="Master" val="-30146"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.05 13:08:04 5: UPNP_Controller: dispatch RenderingControl|192.168.178.61_2870|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="4"/><VolumeDB channel="Master" val="-30146"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.05 13:08:04 3: DLNAController: UPNP_Controller, message: RenderingControl|192.168.178.61_2870|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="4"/><VolumeDB channel="Master" val="-30146"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.05 13:08:04 3: DLNAController: UPNP_Controller, Parameters: RenderingControl, 192.168.178.61_2870, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="4"/><VolumeDB channel="Master" val="-30146"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.05 13:08:04 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="4"/><VolumeDB channel="Master" val="-30146"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.05 13:08:04 4: DLNAController: Update reading mute with 0
2021.03.05 13:08:04 4: DLNAController: Update reading volume with 4
2021.03.05 13:08:04 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870
2021.03.05 13:08:04 5: UPNPController: UPNP_Controller: event of service  urn:schemas-upnp-org:metadata-1-0/RCS dispatched to ARRAY(0x9df61f8)
2021.03.05 13:08:04 5: UPNPController: Received event: by 192.168.178.61_2870-zs-AVTransport UPnP::ControlPoint::Service=HASH(0x9f22d28) $VAR1 = 'LastChange';
$VAR2 = '&lt;Event xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/AVT/&quot;&gt;&lt;InstanceID val=&quot;0&quot;&gt;&lt;AVTransportURI val=&quot;&quot;/&gt;&lt;NumberOfTracks val=&quot;0&quot;/&gt;&lt;AVTransportURIMetaData val=&quot;&quot;/&gt;&lt;PlaybackStorageMedium val=&quot;NONE&quot;/&gt;&lt;CurrentMediaCategory val=&quot;NO_MEDIA&quot;/&gt;&lt;PossiblePlaybackStorageMedia val=&quot;NONE,NETWORK&quot;/&gt;&lt;RecordStorageMedium val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;PossibleRecordStorageMedia val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;RecordMediumWriteStatus val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;NextAVTransportURI val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;NextAVTransportURIMetaData val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;CurrentPlayMode val=&quot;NORMAL&quot;/&gt;&lt;CurrentRecordQualityMode val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;PossibleRecordQualityModes val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;TransportState val=&quot;NO_MEDIA_PRESENT&quot;/&gt;&lt;TransportStatus val=&quot;OK&quot;/&gt;&lt;TransportPlaySpeed val=&quot;1&quot;/&gt;&lt;CurrentTrack val=&quot;0&quot;/&gt;&lt;CurrentTrackDuration val=&quot;00:00:00&quot;/&gt;&lt;CurrentTrackMetaData val=&quot;&quot;/&gt;&lt;CurrentTrackURI val=&quot;&quot;/&gt;&lt;CurrentMediaDuration val=&quot;00:00:00&quot;/&gt;&lt;CurrentTransportActions val=&quot;&quot;/&gt;&lt;/InstanceID&gt;&lt;/Event&gt;';

2021.03.05 13:08:04 5: UPNPController: Received event: by 192.168.178.61_2870-zs-AVTransport original property: &lt;Event xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/AVT/&quot;&gt;&lt;InstanceID val=&quot;0&quot;&gt;&lt;AVTransportURI val=&quot;&quot;/&gt;&lt;NumberOfTracks val=&quot;0&quot;/&gt;&lt;AVTransportURIMetaData val=&quot;&quot;/&gt;&lt;PlaybackStorageMedium val=&quot;NONE&quot;/&gt;&lt;CurrentMediaCategory val=&quot;NO_MEDIA&quot;/&gt;&lt;PossiblePlaybackStorageMedia val=&quot;NONE,NETWORK&quot;/&gt;&lt;RecordStorageMedium val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;PossibleRecordStorageMedia val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;RecordMediumWriteStatus val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;NextAVTransportURI val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;NextAVTransportURIMetaData val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;CurrentPlayMode val=&quot;NORMAL&quot;/&gt;&lt;CurrentRecordQualityMode val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;PossibleRecordQualityModes val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;TransportState val=&quot;NO_MEDIA_PRESENT&quot;/&gt;&lt;TransportStatus val=&quot;OK&quot;/&gt;&lt;TransportPlaySpeed val=&quot;1&quot;/&gt;&lt;CurrentTrack val=&quot;0&quot;/&gt;&lt;CurrentTrackDuration val=&quot;00:00:00&quot;/&gt;&lt;CurrentTrackMetaData val=&quot;&quot;/&gt;&lt;CurrentTrackURI val=&quot;&quot;/&gt;&lt;CurrentMediaDuration val=&quot;00:00:00&quot;/&gt;&lt;CurrentTransportActions val=&quot;&quot;/&gt;&lt;/InstanceID&gt;&lt;/Event&gt;
2021.03.05 13:08:04 5: UPNPController: Received event: by 192.168.178.61_2870-zs-AVTransport property: <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.05 13:08:04 5: UPNPController: UPNP_Controller: event of service urn:schemas-upnp-org:metadata-1-0/AVT, message <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.05 13:08:04 5: UPNP_Controller: dispatch AVTransport|192.168.178.61_2870|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.05 13:08:04 3: DLNAController: UPNP_Controller, message: AVTransport|192.168.178.61_2870|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.05 13:08:04 3: DLNAController: UPNP_Controller, Parameters: AVTransport, 192.168.178.61_2870, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.05 13:08:04 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.05 13:08:04 4: DLNAController: Update reading transportState with NO_MEDIA_PRESENT
2021.03.05 13:08:04 4: DLNAController: Update reading transportStatus with OK
2021.03.05 13:08:04 4: DLNAController: Update reading currentTrackURI with
2021.03.05 13:08:04 4: DLNAController: Update reading nextAVTransportURI with NOT_IMPLEMENTED
2021.03.05 13:08:04 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870
2021.03.05 13:08:04 5: UPNPController: UPNP_Controller: event of service  urn:schemas-upnp-org:metadata-1-0/AVT dispatched to ARRAY(0x9e8a980)
2021.03.05 13:08:16 5: DLNAController: DLNA_13cae598_3cca_165a_8000_0009dfbd33fb, 192.168.178.61_2870, RenderingControl, SetVolume
2021.03.05 13:08:16 5: UPNPController: UPNP_Controller, 192.168.178.61_2870, RenderingControl, SetVolume, 0 Master 13
2021.03.05 13:08:16 5: UPNPController: RenderingControl: urn:schemas-upnp-org:service:RenderingControl:1 found. OK.
2021.03.05 13:08:17 5: UPNPController: RenderingControl, SetVolume(0,Master,13) succeed.
2021.03.05 13:08:32 5: DLNAController: DLNA_13cae598_3cca_165a_8000_0009dfbd33fb, 192.168.178.61_2870, RenderingControl, SetMute
2021.03.05 13:08:32 5: UPNPController: UPNP_Controller, 192.168.178.61_2870, RenderingControl, SetMute, 0 Master 1
2021.03.05 13:08:32 5: UPNPController: RenderingControl: urn:schemas-upnp-org:service:RenderingControl:1 found. OK.
2021.03.05 13:08:32 5: UPNPController: RenderingControl, SetMute(0,Master,1) succeed.
2021.03.05 13:08:39 5: DLNAController: DLNA_13cae598_3cca_165a_8000_0009dfbd33fb, 192.168.178.61_2870, RenderingControl, SetMute
2021.03.05 13:08:39 5: UPNPController: UPNP_Controller, 192.168.178.61_2870, RenderingControl, SetMute, 0 Master 1
2021.03.05 13:08:39 5: UPNPController: RenderingControl: urn:schemas-upnp-org:service:RenderingControl:1 found. OK.
2021.03.05 13:08:39 5: UPNPController: RenderingControl, SetMute(0,Master,1) succeed.
2021.03.05 13:08:39 5: UPNPController: warning: main, Use of uninitialized value $filemtime in concatenation (.) or string at ./FHEM/70_WINCONNECT.pm line 252.

2021.03.05 13:08:39 5: UPNPController: warning: main, Use of uninitialized value $filemtime in string eq at ./FHEM/70_WINCONNECT.pm line 281.

2021.03.05 13:08:39 5: UPNPController: warning: main, Use of uninitialized value $value in string eq at fhem.pl line 4848.

2021.03.05 13:08:42 5: UPNPController: warning: main, Use of uninitialized value $filemtime in concatenation (.) or string at ./FHEM/70_WINCONNECT.pm line 252.

2021.03.05 13:08:42 5: UPNPController: warning: main, Use of uninitialized value $filemtime in string eq at ./FHEM/70_WINCONNECT.pm line 281.

2021.03.05 13:08:42 5: UPNPController: warning: main, Use of uninitialized value $value in string eq at fhem.pl line 4848.

2021.03.05 13:09:55 5: DLNAController: DLNA_13cae598_3cca_165a_8000_0009dfbd33fb, 192.168.178.61_2870, AVTransport, Stop
2021.03.05 13:09:55 5: UPNPController: UPNP_Controller, 192.168.178.61_2870, AVTransport, Stop, 0
2021.03.05 13:09:55 5: UPNPController: AVTransport: urn:schemas-upnp-org:service:AVTransport:1 found. OK.
2021.03.05 13:09:55 5: UPNPController: AVTransport, Stop(0) succeed.
2021.03.05 13:10:39 5: UPNPController: warning: main, Use of uninitialized value $filemtime in concatenation (.) or string at ./FHEM/70_WINCONNECT.pm line 252.

2021.03.05 13:10:39 5: UPNPController: warning: main, Use of uninitialized value $filemtime in string eq at ./FHEM/70_WINCONNECT.pm line 281.

2021.03.05 13:10:39 5: UPNPController: warning: main, Use of uninitialized value $value in string eq at fhem.pl line 4848.

2021.03.05 13:10:41 4: UPNPController: try to renew subscriptions for services, device UPNP_Controller with timeout: 1800
2021.03.05 13:10:41 5: UPNPController: renew subscriptions of device 192.168.178.105_55555
2021.03.05 13:10:41 5: UPNPController: renew subscriptions of device 192.168.178.1_49000
2021.03.05 13:10:41 5: UPNPController: renew subscriptions of device 192.168.178.42_49000
2021.03.05 13:10:41 5: UPNPController: renew subscriptions of device 192.168.178.1_49000_5
2021.03.05 13:10:41 5: UPNPController: renew subscriptions of device 192.168.178.1_49000_3-zz
2021.03.05 13:10:41 5: UPNPController: renew subscriptions of device 192.168.178.1_49000_2-zz-zz
2021.03.05 13:10:41 5: UPNPController: renew subscriptions of device 192.168.178.58_8080
2021.03.05 13:10:41 5: UPNPController: renew subscription for service AVTransport of device 192.168.178.58_8080
2021.03.05 13:10:41 5: UPNPController: warning: Carp, Renewal of subscription failed with error: 412 Precondition Failed at ./FHEM/98_UPNPController.pm line 769.

2021.03.05 13:10:41 4: UPNPController: renewal of subscription for service AVTransport of device 192.168.178.58_8080 failed: , try to subscribe
2021.03.05 13:10:41 5: UPNPController: renew subscription for service RenderingControl of device 192.168.178.58_8080
2021.03.05 13:10:41 5: UPNPController: warning: Carp, Renewal of subscription failed with error: 412 Precondition Failed at ./FHEM/98_UPNPController.pm line 769.

2021.03.05 13:10:42 4: UPNPController: renewal of subscription for service RenderingControl of device 192.168.178.58_8080 failed: , try to subscribe
2021.03.05 13:10:42 5: UPNPController: renew subscriptions of device 192.168.178.1_49000_2
2021.03.05 13:10:42 5: UPNPController: renew subscriptions of device 192.168.178.1_49000_3-zz-zz
2021.03.05 13:10:42 5: UPNPController: renew subscriptions of device 192.168.178.35_8888
2021.03.05 13:10:42 5: UPNPController: renew subscriptions of device 192.168.178.1_49000_1
2021.03.05 13:10:42 5: UPNPController: renew subscriptions of device 192.168.178.61_2870
2021.03.05 13:10:42 5: UPNPController: renew subscription for service RenderingControl of device 192.168.178.61_2870
2021.03.05 13:10:42 5: UPNPController: warning: Carp, Renewal of subscription failed with error: 412 Precondition Failed at ./FHEM/98_UPNPController.pm line 769.

2021.03.05 13:10:42 4: UPNPController: renewal of subscription for service RenderingControl of device 192.168.178.61_2870 failed: , try to subscribe
2021.03.05 13:10:42 5: UPNPController: renew subscription for service AVTransport of device 192.168.178.61_2870
2021.03.05 13:10:42 5: UPNPController: warning: Carp, Renewal of subscription failed with error: 412 Precondition Failed at ./FHEM/98_UPNPController.pm line 769.

2021.03.05 13:10:42 4: UPNPController: renewal of subscription for service AVTransport of device 192.168.178.61_2870 failed: , try to subscribe
2021.03.05 13:10:42 5: UPNPController: renew subscriptions of device 192.168.178.1_49000_2-zz
2021.03.05 13:10:42 5: UPNPController: renew subscriptions of device 192.168.178.77_8200
2021.03.05 13:10:42 5: UPNPController: renew subscriptions of device 192.168.178.1_49000_3
2021.03.05 13:10:42 5: UPNPController: renew subscriptions of device 192.168.178.89_9001
2021.03.05 13:10:42 5: UPNPController: renew subscriptions of device 192.168.178.44_49000
2021.03.05 13:10:42 5: UPNPController: renew subscriptions of device 192.168.178.77_8096
2021.03.05 13:10:42 5: UPNPController: renew subscriptions of device 192.168.178.1_49000_4
2021.03.05 13:10:42 5: UPNPController: renewSubscriptionsfinished name UPNP_Controller, readingname 192.168.178.61_2870-zs-AVTransport
2021.03.05 13:10:42 4: UPNPController: subscribe: reading  192.168.178.61_2870-zs-AVTransport, uniquedevice 192.168.178.61_2870, service AVTransport
2021.03.05 13:10:42 5: UPNPController: AVTransport: urn:schemas-upnp-org:service:AVTransport:1 found. OK.
2021.03.05 13:10:42 5: UPNPController: AVTransport: urn:schemas-upnp-org:service:AVTransport:1 found. OK.
2021.03.05 13:10:42 5: UPNPController: Received event: by 192.168.178.61_2870-zs-AVTransport UPnP::ControlPoint::Service=HASH(0x9f22d28) $VAR1 = 'LastChange';
$VAR2 = '&lt;Event xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/AVT/&quot;&gt;&lt;InstanceID val=&quot;0&quot;&gt;&lt;AVTransportURI val=&quot;&quot;/&gt;&lt;NumberOfTracks val=&quot;0&quot;/&gt;&lt;AVTransportURIMetaData val=&quot;&quot;/&gt;&lt;PlaybackStorageMedium val=&quot;NONE&quot;/&gt;&lt;CurrentMediaCategory val=&quot;NO_MEDIA&quot;/&gt;&lt;PossiblePlaybackStorageMedia val=&quot;NONE,NETWORK&quot;/&gt;&lt;RecordStorageMedium val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;PossibleRecordStorageMedia val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;RecordMediumWriteStatus val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;NextAVTransportURI val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;NextAVTransportURIMetaData val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;CurrentPlayMode val=&quot;NORMAL&quot;/&gt;&lt;CurrentRecordQualityMode val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;PossibleRecordQualityModes val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;TransportState val=&quot;NO_MEDIA_PRESENT&quot;/&gt;&lt;TransportStatus val=&quot;OK&quot;/&gt;&lt;TransportPlaySpeed val=&quot;1&quot;/&gt;&lt;CurrentTrack val=&quot;0&quot;/&gt;&lt;CurrentTrackDuration val=&quot;00:00:00&quot;/&gt;&lt;CurrentTrackMetaData val=&quot;&quot;/&gt;&lt;CurrentTrackURI val=&quot;&quot;/&gt;&lt;CurrentMediaDuration val=&quot;00:00:00&quot;/&gt;&lt;CurrentTransportActions val=&quot;&quot;/&gt;&lt;/InstanceID&gt;&lt;/Event&gt;';

2021.03.05 13:10:42 5: UPNPController: Received event: by 192.168.178.61_2870-zs-AVTransport original property: &lt;Event xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/AVT/&quot;&gt;&lt;InstanceID val=&quot;0&quot;&gt;&lt;AVTransportURI val=&quot;&quot;/&gt;&lt;NumberOfTracks val=&quot;0&quot;/&gt;&lt;AVTransportURIMetaData val=&quot;&quot;/&gt;&lt;PlaybackStorageMedium val=&quot;NONE&quot;/&gt;&lt;CurrentMediaCategory val=&quot;NO_MEDIA&quot;/&gt;&lt;PossiblePlaybackStorageMedia val=&quot;NONE,NETWORK&quot;/&gt;&lt;RecordStorageMedium val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;PossibleRecordStorageMedia val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;RecordMediumWriteStatus val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;NextAVTransportURI val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;NextAVTransportURIMetaData val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;CurrentPlayMode val=&quot;NORMAL&quot;/&gt;&lt;CurrentRecordQualityMode val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;PossibleRecordQualityModes val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;TransportState val=&quot;NO_MEDIA_PRESENT&quot;/&gt;&lt;TransportStatus val=&quot;OK&quot;/&gt;&lt;TransportPlaySpeed val=&quot;1&quot;/&gt;&lt;CurrentTrack val=&quot;0&quot;/&gt;&lt;CurrentTrackDuration val=&quot;00:00:00&quot;/&gt;&lt;CurrentTrackMetaData val=&quot;&quot;/&gt;&lt;CurrentTrackURI val=&quot;&quot;/&gt;&lt;CurrentMediaDuration val=&quot;00:00:00&quot;/&gt;&lt;CurrentTransportActions val=&quot;&quot;/&gt;&lt;/InstanceID&gt;&lt;/Event&gt;
2021.03.05 13:10:42 5: UPNPController: Received event: by 192.168.178.61_2870-zs-AVTransport property: <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.05 13:10:42 5: UPNPController: UPNP_Controller: event of service urn:schemas-upnp-org:metadata-1-0/AVT, message <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.05 13:10:42 5: UPNP_Controller: dispatch AVTransport|192.168.178.61_2870|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.05 13:10:42 3: DLNAController: UPNP_Controller, message: AVTransport|192.168.178.61_2870|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.05 13:10:42 3: DLNAController: UPNP_Controller, Parameters: AVTransport, 192.168.178.61_2870, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.05 13:10:42 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.05 13:10:42 4: DLNAController: Update reading transportState with NO_MEDIA_PRESENT
2021.03.05 13:10:42 4: DLNAController: Update reading transportStatus with OK
2021.03.05 13:10:42 4: DLNAController: Update reading currentTrackURI with
2021.03.05 13:10:42 4: DLNAController: Update reading nextAVTransportURI with NOT_IMPLEMENTED
2021.03.05 13:10:42 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870
2021.03.05 13:10:42 5: UPNPController: UPNP_Controller: event of service  urn:schemas-upnp-org:metadata-1-0/AVT dispatched to ARRAY(0xa985e20)
2021.03.05 13:11:42 5: UPNPController: warning: main, Use of uninitialized value $filemtime in concatenation (.) or string at ./FHEM/70_WINCONNECT.pm line 252.

2021.03.05 13:11:42 5: UPNPController: warning: main, Use of uninitialized value $filemtime in string eq at ./FHEM/70_WINCONNECT.pm line 281.

2021.03.05 13:11:42 5: UPNPController: warning: main, Use of uninitialized value $value in string eq at fhem.pl line 4848.

Viele Grüße
Dieter
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 05 März 2021, 16:19:51
Zitat
Das die subscription heute Morgen zwischendurch nicht geklappt hatte, könnte natürlich auch am erfolgreichen Ausschalten mit dem VestelTVs-Modul liegen, oder?
Klar. Wenn off, dann off.
Zitat
Was meinst du hier mit "UPNPSocket-UPNP_Controller-12345"? Ich habe mal verbose=5.....
Guck mal in den room hidden. Da sind die "Hilfsdevices" versteckt. Oder in den Internals by TYPE auf UPNPController klicken.
Zitat
1. Diese gelten ja nicht nur für ein einzelnes "Gerät". Richtig?
Leider falsch. Deshalb ist eins meiner Ziele ja evtl. mehrere UPNPController-devices mit unterschiedlichen Attributen zu haben. Das ist aber noch ein langer Weg. :'(
Zitat
Oder hätte ich <undef> reinschreiben sollen?
Yes. Genauso wie es im Post stand.
Zitat
Gebracht hat es jedenfalls nichts.
Klar, Attribute waren ja falsch gesetzt. Probier es nochmal.

Wenn es nicht klappt, suche bitte im SourceCode von 98_UPNPController nach "succeed" und ersetze die gefundene Zeile mit
Zitat
            Log3 $hash, 4, "UPNPController: $service, $action(".join(",",@args).") didn't succeed.".UPNPController_errorMessage($ret) if($ret->isSuccessful != 1);
Vielleicht erfahren wir dann etwas mehr über den Fehlergrund.

Grüße Markus

Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: RockFan am 05 März 2021, 18:34:35
Hallo Markus,

Zitat
Guck mal in den room hidden. Da sind die "Hilfsdevices" versteckt. Oder in den Internals by TYPE auf UPNPController klicken.
und wieder etwas gelernt :)

Ich habe 2 Hilfsdevices gefunden:
UPNPSocket-UPNP_Controller-1900
UPNPSocket-UPNP_Controller-36935

Für Letzteren gibt es allerdings nur vereinzelt folgende Logeinträge:
2021.03.05 17:47:54 5: UPNPController: UPNPSocket-UPNP_Controller-36935, received subscription event: event was processed by subscriptionCallback ,

Da es wieder nicht geklappt hatte (nachdem ich die Attribute richtig gesetzt hatte), habe ich das Logging im UPNPController entsprechend Deiner Anweisung geändert und mich nochmal vor den Fernseher begeben.

Folgende Logauszüge, die die Änderung enthalten:
2021.03.05 17:57:27 5: UPNPController: UPNP_Controller, 192.168.178.61_2870, RenderingControl, SetVolume, 0 Master 26
2021.03.05 17:57:27 5: UPNPController: RenderingControl: urn:schemas-upnp-org:service:RenderingControl:1 found. OK.
2021.03.05 17:57:27 4: UPNPController: RenderingControl, SetVolume(0,Master,26) didn't succeed.Error! UPnP-Fault-Fields: Code: "s:Client", String: "UPnPError", Actor: "-", Detail: "{UPnPError => {errorDescription => 'Action Failed', errorCode => 501}}"

2021.03.05 17:57:48 5: UPNPController: UPNP_Controller, 192.168.178.61_2870, RenderingControl, SetMute, 0 Master 1
2021.03.05 17:57:48 5: UPNPController: RenderingControl: urn:schemas-upnp-org:service:RenderingControl:1 found. OK.
2021.03.05 17:57:48 4: UPNPController: RenderingControl, SetMute(0,Master,1) didn't succeed.Error! UPnP-Fault-Fields: Code: "s:Client", String: "UPnPError", Actor: "-", Detail: "{UPnPError => {errorCode => 501, errorDescription => 'Action Failed'}}"

Hier hebe ich ein paar Zeilen davor und danach drangelassen, um das nicht zu unterschlagen. Diese Einträge sind sehr häufig zu finden. 
2021.03.05 17:58:08 5: UPNPController: incoming message; will be processed by perlupnp handleOnce
2021.03.05 17:58:08 5: UPNPController: UPNPSocket-UPNP_Controller-1900, received ssdp event: was checked by discoverCallback for removed or added devices against pending search requests
2021.03.05 17:58:09 5: UPNPController: incoming message; will be processed by perlupnp handleOnce
2021.03.05 17:58:09 5: UPNPController: UPNPSocket-UPNP_Controller-1900, received ssdp event: was checked by discoverCallback for removed or added devices against pending search requests
2021.03.05 17:58:10 5: UPNPController: UPNP_Controller, 192.168.178.61_2870, AVTransport, Stop, 0
2021.03.05 17:58:10 5: UPNPController: AVTransport: urn:schemas-upnp-org:service:AVTransport:1 found. OK.
2021.03.05 17:58:10 4: UPNPController: AVTransport, Stop(0) didn't succeed.Error! UPnP-Fault-Fields: Code: "s:Client", String: "UPnPError", Actor: "-", Detail: "{UPnPError => {errorDescription => 'Action Failed', errorCode => 501}}"
2021.03.05 17:58:14 5: UPNPController: incoming message; will be processed by perlupnp handleOnce
2021.03.05 17:58:14 5: UPNPController: UPNPSocket-UPNP_Controller-1900, received ssdp event: was checked by discoverCallback for removed or added devices against pending search requests
2021.03.05 17:58:17 5: UPNPController: incoming message; will be processed by perlupnp handleOnce
2021.03.05 17:58:18 5: UPNPController: UPNPSocket-UPNP_Controller-1900, received ssdp event: was checked by discoverCallback for removed or added devices against pending search requests
2021.03.05 17:58:18 5: UPNPController: incoming message; will be processed by perlupnp handleOnce

Mir ist aufgefallen, dass die Lautstärke immer beim Einschalten des Fernsehers, sobald dann das DLNA-Controller-Device auf Online wechselt, korrekt übernommen wird. Wenn ich die Lautstärke dann mit der Fernbedienung ändere aber nicht mehr.

Hilft das weiter?

Viele Grüße
Dieter
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 05 März 2021, 19:34:27
Hi Dieter,
leider hilfts nicht. Durch die neue Zeile werden wir wenigstens nicht mehr angelogen. ;) Jetzt können wir im Log lesen, was auch vorher schon klar war.
wenigstens mute, volume sollten gehen....

Kannst Du mal den Link aus UPNPController reading 192.168.178.61_2870-location im Browser eingeben u. Ergebnis hier einstellen.

Irgendeine Berechtigungssteuerung am TV gibt es nicht ? Schonmal den Win-Mediaplayer zum streamen ausprobiert ?

Ich denke nach....
Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: RockFan am 05 März 2021, 23:24:29
Hallo Markus,

eine Berechtigungssteuerung iist mir nicht bewußt. Aber ich schaue mir morgen nochmal die Bedienungsanleitung an.
Streaming auf den Fernseher hatte ich bisher noch nicht versucht. Kann ich auch morgen mal probieren.

Den gewünschten Output findest Du im Folgenden:
<root>
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<device>
<dlna:X_DLNADOC>DMR-1.50</dlna:X_DLNADOC>
<dlna:X_DLNACAP/>
<deviceType>urn:schemas-upnp-org:device:MediaRenderer:1</deviceType>
<friendlyName>ALDISUED TV</friendlyName>
<manufacturer>ACCESS CO., LTD.</manufacturer>
<manufacturerURL>http://www.access-company.com/</manufacturerURL>
<modelDescription>IPI Media Renderer</modelDescription>
<modelName>-</modelName>
<modelNumber>1.0</modelNumber>
<modelURL>http://www.access-company.com/</modelURL>
<UDN>uuid:13cae598-3cca-165a-8000-0009dfbd33fb</UDN>
<serviceList>
<service>
<serviceType>urn:schemas-upnp-org:service:RenderingControl:1</serviceType>
<serviceId>urn:upnp-org:serviceId:RenderingControl</serviceId>
<SCPDURL>/dmr_rcs.xml</SCPDURL>
<controlURL>/RenderingControl/control</controlURL>
<eventSubURL>/RenderingControl/event</eventSubURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:ConnectionManager:1</serviceType>
<serviceId>urn:upnp-org:serviceId:ConnectionManager</serviceId>
<SCPDURL>/dmr_cms.xml</SCPDURL>
<controlURL>/ConnectionManager/control</controlURL>
<eventSubURL>/ConnectionManager/event</eventSubURL>
</service>
<service>
<serviceType>urn:schemas-upnp-org:service:AVTransport:1</serviceType>
<serviceId>urn:upnp-org:serviceId:AVTransport</serviceId>
<SCPDURL>/dmr_avts.xml</SCPDURL>
<controlURL>/AVTransport/control</controlURL>
<eventSubURL>/AVTransport/event</eventSubURL>
</service>
</serviceList>
<iconList>
<icon>
<mimetype>image/jpeg</mimetype>
<width>48</width>
<height>48</height>
<depth>24</depth>
<url>/icon/DMR-small.jpg</url>
</icon>
<icon>
<mimetype>image/jpeg</mimetype>
<width>120</width>
<height>120</height>
<depth>24</depth>
<url>/icon/DMR-large.jpg</url>
</icon>
<icon>
<mimetype>image/png</mimetype>
<width>48</width>
<height>48</height>
<depth>24</depth>
<url>/icon/DMR-small.png</url>
</icon>
<icon>
<mimetype>image/png</mimetype>
<width>120</width>
<height>120</height>
<depth>24</depth>
<url>/icon/DMR-large.png</url>
</icon>
</iconList>
</device>
</root>

Viele Grüße
Dieter
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 06 März 2021, 08:18:41
dann noch bitte diesen 192.168.178.61:2870/dmr_rcs.xml
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: RockFan am 06 März 2021, 09:39:54
Guten Morgen Markus,

eine Berechtigungssteuerung kann ich nicht finden. DLNA ist aktiviert und ich kann auf das Gerät problemlos streamen.

Hier ist noch das zweite XML:
<scpd>
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<serviceStateTable>
<stateVariable sendEvents="no">
<name>PresetNameList</name>
<dataType>string</dataType>
</stateVariable>
<stateVariable sendEvents="yes">
</stateVariable>
<stateVariable sendEvents="no">
<name>Mute</name>
<dataType>boolean</dataType>
</stateVariable>
<stateVariable sendEvents="no">
<name>Volume</name>
<dataType>ui2</dataType>
<allowedValueRange>
<minimum>0</minimum>
<maximum>100</maximum>
<step>1</step>
</allowedValueRange>
</stateVariable>
<stateVariable sendEvents="no">
<name>VolumeDB</name>
<dataType>i2</dataType>
<allowedValueRange>
<minimum>-32767</minimum>
<maximum>32767</maximum>
<step>256</step>
</allowedValueRange>
</stateVariable>
<stateVariable sendEvents="no">
<name>A_ARG_TYPE_Channel</name>
<dataType>string</dataType>
<allowedValueList>
<allowedValue>Master</allowedValue>
</allowedValueList>
</stateVariable>
<stateVariable sendEvents="no">
<name>A_ARG_TYPE_InstanceID</name>
<dataType>ui4</dataType>
</stateVariable>
<stateVariable sendEvents="no">
<name>A_ARG_TYPE_PresetName</name>
<dataType>string</dataType>
<allowedValueList>
<allowedValue>FactoryDefaults</allowedValue>
</allowedValueList>
</stateVariable>
</serviceStateTable>
<actionList>
<action>
<name>ListPresets</name>
<argumentList>
<argument>
<name>InstanceID</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
</argument>
<argument>
<name>CurrentPresetNameList</name>
<direction>out</direction>
<relatedStateVariable>PresetNameList</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>SelectPreset</name>
<argumentList>
<argument>
<name>InstanceID</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
</argument>
<argument>
<name>PresetName</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_PresetName</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>GetMute</name>
<argumentList>
<argument>
<name>InstanceID</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
</argument>
<argument>
<name>Channel</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_Channel</relatedStateVariable>
</argument>
<argument>
<name>CurrentMute</name>
<direction>out</direction>
<relatedStateVariable>Mute</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>SetMute</name>
<argumentList>
<argument>
<name>InstanceID</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
</argument>
<argument>
<name>Channel</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_Channel</relatedStateVariable>
</argument>
<argument>
<name>DesiredMute</name>
<direction>in</direction>
<relatedStateVariable>Mute</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>GetVolume</name>
<argumentList>
<argument>
<name>InstanceID</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
</argument>
<argument>
<name>Channel</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_Channel</relatedStateVariable>
</argument>
<argument>
<name>CurrentVolume</name>
<direction>out</direction>
<relatedStateVariable>Volume</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>SetVolume</name>
<argumentList>
<argument>
<name>InstanceID</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
</argument>
<argument>
<name>Channel</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_Channel</relatedStateVariable>
</argument>
<argument>
<name>DesiredVolume</name>
<direction>in</direction>
<relatedStateVariable>Volume</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>GetVolumeDB</name>
<argumentList>
<argument>
<name>InstanceID</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
</argument>
<argument>
<name>Channel</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_Channel</relatedStateVariable>
</argument>
<argument>
<name>CurrentVolume</name>
<direction>out</direction>
<relatedStateVariable>VolumeDB</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>SetVolumeDB</name>
<argumentList>
<argument>
<name>InstanceID</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
</argument>
<argument>
<name>Channel</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_Channel</relatedStateVariable>
</argument>
<argument>
<name>DesiredVolume</name>
<direction>in</direction>
<relatedStateVariable>VolumeDB</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>GetVolumeDBRange</name>
<argumentList>
<argument>
<name>InstanceID</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_InstanceID</relatedStateVariable>
</argument>
<argument>
<name>Channel</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_Channel</relatedStateVariable>
</argument>
<argument>
<name>MinValue</name>
<direction>out</direction>
<relatedStateVariable>VolumeDB</relatedStateVariable>
</argument>
<argument>
<name>MaxValue</name>
<direction>out</direction>
<relatedStateVariable>VolumeDB</relatedStateVariable>
</argument>
</argumentList>
</action>
</actionList>
</scpd>

Viele Grüße
Dieter
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 06 März 2021, 10:07:55
Danke Dieter,
auf den ersten Blick "normal". Ich guck mal genauer.....

Zitat
eine Berechtigungssteuerung kann ich nicht finden. DLNA ist aktiviert und ich kann auf das Gerät problemlos streamen.
Das klingt doch schonmal gut. Dann sollten wir das auch über FHEM hinbekommen.

Wie war das noch bei Dir mit DLNARenderer-Versuchen ? Klappte da mehr oder war das ähnlich(presence u. Status funktionieren; actions aber nicht) ?

Beobachte doch bitte mal das DLNAController-device, wenn Du per Fb einschaltest, dann volume steuerst und schließlich mit etwas externem(z.B. Mediaplayer) streamst. Verhalten müsste sein:
- zeitnah u. korrekte presence-,state-Änderungen
- dto. volume,mute
- u. schließlich die vielen stream-relevanten readings

Grüße Markus

Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: RockFan am 06 März 2021, 11:31:02
Hallo Markus,

vom DLNAController-Device kommt keine Aktion am Fernseher an.
Presence und state ändern sich eigentlich immer fast "gleichzeitig" (ca. 1 Sekunde Unterschied). Wie schon mal erwähnt ist presence/state nicht nachvollziehbar solange das Gerät eigentlich ausgeschaltet ist (mal eine Weile online, dann wieder offline).
Bei meinem Test gerade eben, war gerade eine online-Phase. Nach dem Einschalten gingen dann presence und state kurz auf offline und dann wieder auf online. Ausschließlich die Lautstärke des Fernsehers beim Einschalten (das ist immer die zuletzt eingestellte Lautstärke) wird im DLNAController-Device übernommen. Alle weiteren Änderungen (Lautstärke, Mute, etc.) mit der Fernbedienung kommen nicht an.

Beim Streamen werden leider auch keine Readings gesetzt.

Im Folgenden mal Logsauszüge.

Zuerst das "versehentlich" definierte Device-Log, das immerhin zeigt, dass sich wenig ändert. Beim Einschalten des um 10:45:43 war die Ausgangslautstärke 0 (da wir üblicherweise über unseren Receiver hören). Vor dem Einschalten war der Status, wie oben geschrieben "online". Das Streamen sieht man gar nicht.
Dann habe ich die Lautstärke erhöht, was keine Auswirkung hatte. Erst als ich das Gerät aus- und eingeschaltet habe (wieder offline-->online) wurde sie übernommen (10:49:31 Uhr --> volume=3)
2021-03-06_10:45:43 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb presence: offline
2021-03-06_10:45:43 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb offline
2021-03-06_10:45:44 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb presence: online
2021-03-06_10:45:44 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb online
2021-03-06_10:45:44 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb multiRoomVolume: 0
2021-03-06_10:45:44 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb nextTitle:
2021-03-06_10:45:44 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb nextArtist:
2021-03-06_10:45:44 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb nextAlbum:
2021-03-06_10:45:44 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb nextAlbumArtist:
2021-03-06_10:45:44 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb nextAlbumArtURI:
2021-03-06_10:45:44 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb nextOriginalTrackNumber:
2021-03-06_10:45:44 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb nextDuration:
2021-03-06_10:45:44 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb online
2021-03-06_10:48:46 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb multiRoomVolume: 0
2021-03-06_10:49:30 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb presence: offline
2021-03-06_10:49:30 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb offline
2021-03-06_10:49:31 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb presence: online
2021-03-06_10:49:31 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb online
2021-03-06_10:49:31 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb volume: 3
2021-03-06_10:49:31 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb multiRoomVolume: 3
2021-03-06_10:49:32 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb nextTitle:
2021-03-06_10:49:32 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb nextArtist:
2021-03-06_10:49:32 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb nextAlbum:
2021-03-06_10:49:32 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb nextAlbumArtist:
2021-03-06_10:49:32 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb nextAlbumArtURI:
2021-03-06_10:49:32 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb nextOriginalTrackNumber:
2021-03-06_10:49:32 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb nextDuration:
2021-03-06_10:49:32 DLNA_13cae598_3cca_165a_8000_0009dfbd33fb online

Aus dem fhem-Log:
2021.03.06 10:45:43 3: DLNAController: UPNP_Controller, message: RenderingControl|192.168.178.61_2870|offline|urn:schemas-upnp-org:metadata-1-0/RCS
2021.03.06 10:45:43 3: DLNAController: UPNP_Controller, Parameters: RenderingControl, 192.168.178.61_2870, offline, urn:schemas-upnp-org:metadata-1-0/RCS
2021.03.06 10:45:43 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870
2021.03.06 10:45:44 3: DLNAController: UPNP_Controller, message: AVTransport|192.168.178.61_2870|online|urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.06 10:45:44 3: DLNAController: UPNP_Controller, Parameters: AVTransport, 192.168.178.61_2870, online, urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.06 10:45:44 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870
2021.03.06 10:45:44 3: DLNAController: UPNP_Controller, message: RenderingControl|192.168.178.61_2870|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="0"/><VolumeDB channel="Master" val="-32768"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.06 10:45:44 3: DLNAController: UPNP_Controller, Parameters: RenderingControl, 192.168.178.61_2870, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="0"/><VolumeDB channel="Master" val="-32768"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.06 10:45:44 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="0"/><VolumeDB channel="Master" val="-32768"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.06 10:45:44 4: DLNAController: Update reading mute with 0
2021.03.06 10:45:44 4: DLNAController: Update reading volume with 0
2021.03.06 10:45:44 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870
2021.03.06 10:45:44 3: DLNAController: UPNP_Controller, message: AVTransport|192.168.178.61_2870|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.06 10:45:44 3: DLNAController: UPNP_Controller, Parameters: AVTransport, 192.168.178.61_2870, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.06 10:45:44 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.06 10:45:44 4: DLNAController: Update reading transportState with NO_MEDIA_PRESENT
2021.03.06 10:45:44 4: DLNAController: Update reading transportStatus with OK
2021.03.06 10:45:44 4: DLNAController: Update reading currentTrackURI with
2021.03.06 10:45:44 4: DLNAController: Update reading nextAVTransportURI with NOT_IMPLEMENTED
2021.03.06 10:45:44 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870

2021.03.06 10:48:45 3: DLNAController: UPNP_Controller, message: RenderingControl|192.168.178.61_2870|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="0"/><VolumeDB channel="Master" val="-32768"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.06 10:48:45 3: DLNAController: UPNP_Controller, Parameters: RenderingControl, 192.168.178.61_2870, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="0"/><VolumeDB channel="Master" val="-32768"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.06 10:48:45 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="0"/><VolumeDB channel="Master" val="-32768"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.06 10:48:45 4: DLNAController: Update reading mute with 0
2021.03.06 10:48:45 4: DLNAController: Update reading volume with 0
2021.03.06 10:48:45 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870

2021.03.06 10:49:30 3: DLNAController: UPNP_Controller, message: AVTransport|192.168.178.61_2870|offline|urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.06 10:49:30 3: DLNAController: UPNP_Controller, Parameters: AVTransport, 192.168.178.61_2870, offline, urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.06 10:49:30 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870
2021.03.06 10:49:31 3: DLNAController: UPNP_Controller, message: AVTransport|192.168.178.61_2870|online|urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.06 10:49:31 3: DLNAController: UPNP_Controller, Parameters: AVTransport, 192.168.178.61_2870, online, urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.06 10:49:31 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870
2021.03.06 10:49:31 3: DLNAController: UPNP_Controller, message: RenderingControl|192.168.178.61_2870|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="3"/><VolumeDB channel="Master" val="-30801"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.06 10:49:31 3: DLNAController: UPNP_Controller, Parameters: RenderingControl, 192.168.178.61_2870, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="3"/><VolumeDB channel="Master" val="-30801"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.06 10:49:31 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><Mute channel="Master" val="0"/><Volume channel="Master" val="3"/><VolumeDB channel="Master" val="-30801"/><PresetNameList val="FactoryDefaults"/></InstanceID></Event>
2021.03.06 10:49:31 4: DLNAController: Update reading mute with 0
2021.03.06 10:49:31 4: DLNAController: Update reading volume with 3
2021.03.06 10:49:31 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870
2021.03.06 10:49:32 3: DLNAController: UPNP_Controller, message: AVTransport|192.168.178.61_2870|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.06 10:49:32 3: DLNAController: UPNP_Controller, Parameters: AVTransport, 192.168.178.61_2870, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.06 10:49:32 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURI val=""/><NumberOfTracks val="0"/><AVTransportURIMetaData val=""/><PlaybackStorageMedium val="NONE"/><CurrentMediaCategory val="NO_MEDIA"/><PossiblePlaybackStorageMedia val="NONE,NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><NextAVTransportURI val="NOT_IMPLEMENTED"/><NextAVTransportURIMetaData val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportState val="NO_MEDIA_PRESENT"/><TransportStatus val="OK"/><TransportPlaySpeed val="1"/><CurrentTrack val="0"/><CurrentTrackDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val=""/><CurrentMediaDuration val="00:00:00"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.06 10:49:32 4: DLNAController: Update reading transportState with NO_MEDIA_PRESENT
2021.03.06 10:49:32 4: DLNAController: Update reading transportStatus with OK
2021.03.06 10:49:32 4: DLNAController: Update reading currentTrackURI with
2021.03.06 10:49:32 4: DLNAController: Update reading nextAVTransportURI with NOT_IMPLEMENTED
2021.03.06 10:49:32 3: DLNAController: name UPNP_Controller, unique: 192.168.178.61_2870, address 192.168.178.61_2870


Viele Grüße
Dieter
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: MichaelT am 07 März 2021, 12:28:41
Morgen Markus,

ich wollte dir eigentlich ein paar Logausgaben schicken. Ich habe  aber vorher ein Update gemacht und nun habe ich nach dem Restart einen
seltsamen Zustand.

Von 4 DLNAController haben 2 den vollen Befehlsumfang in der set Combobox. Zwei haben aber nur volume und mute.

Z.B. Radio Büro
Ich habe es bereits Spannungslos gemacht und anschließend fhem neu gestartet.
Kein Erfolg, nur volume und mute.
Einen stream kann ich aber trotzdem abspielen, obwohl bei set kein stream angezeigt wird.

Ich habe den UPNPController und das Radio auf verbose 5 stehen. Kannst Du mir ungefähr sagen, welche Logausgaben du benötigst um
ggf. mehr zu sagen. Ich möchte nicht alle Logausgaben hier hinterlegen, da ja doch recht viel (UPNP) bzgl. meiner privaten Netzwerkstruktur und deren Geräte
daraus nachvollziehbar ist.

Hier mal die Startphase nach einem Restart
Buero wird geadded aber es wird kein subscribe auf AVTransport gemacht.
Schlafen wird gefunden, dort wird aber AVTransport subscribed!

schönen Sonntag
Gruß Michael


2021.03.07 11:34:30.701 4: UPNPController: discovery message of Buero with UDN: uuid:93b2abac-cb6a-4857-b891-00226190ead6 action: deviceAdded  <----- Buero
2021.03.07 11:34:30.701 5: UPNPController: SYS_UPNP: alive-notify message device uuid:93b2abac-cb6a-4857-b891-00226190ead6 received
2021.03.07 11:34:30.702 5: UPNPController: warning: main, Use of uninitialized value in string eq at ./FHEM/98_UPNPController.pm line 532.

2021.03.07 11:34:30.702 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190ead6 found. Check for processing
2021.03.07 11:34:30.702 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190ead6 will be controlled with 192.168.4.30_33645
2021.03.07 11:34:30.702 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190ead6 has service with serviceId: ConnectionManager
2021.03.07 11:34:30.703 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190ead6 has service with serviceId: AVTransport
2021.03.07 11:34:30.703 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190ead6 has service with serviceId: RenderingControl
2021.03.07 11:34:30.703 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190ead6 has service with serviceId: RTSPGateway
2021.03.07 11:34:30.703 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190ead6 has service with serviceId: SpeakerManagement
2021.03.07 11:34:30.704 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190ead6 has service with serviceId: NetworkManagement
2021.03.07 11:34:30.704 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190ead6 has service with serviceId: SessionManagement
2021.03.07 11:34:30.704 5: UPNPController: SYS_UPNP: event of service urn:schemas-upnp-org:metadata-1-0/RCS, message urn:schemas-upnp-org:metadata-1-0/RCS
2021.03.07 11:34:30.704 5: SYS_UPNP: dispatch RenderingControl|192.168.4.30_33645|online|urn:schemas-upnp-org:metadata-1-0/RCS
2021.03.07 11:34:30.705 3: DLNAController: SYS_UPNP, message: RenderingControl|192.168.4.30_33645|online|urn:schemas-upnp-org:metadata-1-0/RCS
2021.03.07 11:34:30.705 3: DLNAController: SYS_UPNP, Parameters: RenderingControl, 192.168.4.30_33645, online, urn:schemas-upnp-org:metadata-1-0/RCS
2021.03.07 11:34:30.705 3: DLNAController: name SYS_UPNP, unique: 192.168.4.30_33645, address 192.168.4.30_33645
2021.03.07 11:34:30.935 2: AttrTemplates: got 225 entries
2021.03.07 11:34:30.960 5: UPNPController: SYS_UPNP: event of service  urn:schemas-upnp-org:metadata-1-0/RCS dispatched to ARRAY(0x6fd3230)
2021.03.07 11:34:30.985 3: CUL_HM set OG_SZ_BM statusRequest noArg
2021.03.07 11:34:32.005 3: CUL_HM set OG_SZ_LiDecke statusRequest noArg
2021.03.07 11:34:32.661 4: UPNPController: discovery message of Schlafen with UDN: uuid:93b2abac-cb6a-4857-b891-00226190fa58 action: deviceAdded                 <--- Schlafen
2021.03.07 11:34:32.661 5: UPNPController: SYS_UPNP: alive-notify message device uuid:93b2abac-cb6a-4857-b891-00226190fa58 received
2021.03.07 11:34:32.662 5: UPNPController: warning: main, Use of uninitialized value in string eq at ./FHEM/98_UPNPController.pm line 532.

2021.03.07 11:34:32.662 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190fa58 found. Check for processing
2021.03.07 11:34:32.662 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190fa58 will be controlled with 192.168.4.31_46971
2021.03.07 11:34:32.662 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190fa58 has service with serviceId: ConnectionManager
2021.03.07 11:34:32.663 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190fa58 has service with serviceId: AVTransport
2021.03.07 11:34:32.663 4: UPNPController: subscribe: reading  192.168.4.31_46971-zs-AVTransport, uniquedevice 192.168.4.31_46971, service AVTransport
2021.03.07 11:34:32.663 5: UPNPController: AVTransport: urn:schemas-upnp-org:service:AVTransport:1 found. OK.
2021.03.07 11:34:32.664 5: UPNPController: AVTransport: urn:schemas-upnp-org:service:AVTransport:1 found. OK.
2021.03.07 11:34:33.237 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190fa58 has service with serviceId: RenderingControl
2021.03.07 11:34:33.238 4: UPNPController: subscribe: reading  192.168.4.31_46971-zs-RenderingControl, uniquedevice 192.168.4.31_46971, service RenderingControl
2021.03.07 11:34:33.239 5: UPNPController: RenderingControl: urn:schemas-upnp-org:service:RenderingControl:3 found. OK.
2021.03.07 11:34:33.241 5: UPNPController: RenderingControl: urn:schemas-upnp-org:service:RenderingControl:3 found. OK.
2021.03.07 11:34:33.521 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190fa58 has service with serviceId: RTSPGateway
2021.03.07 11:34:33.522 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190fa58 has service with serviceId: SpeakerManagement
2021.03.07 11:34:33.523 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190fa58 has service with serviceId: NetworkManagement
2021.03.07 11:34:33.524 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190fa58 has service with serviceId: SessionManagement
2021.03.07 11:34:33.525 5: UPNPController: SYS_UPNP: event of service urn:schemas-upnp-org:metadata-1-0/RCS, message urn:schemas-upnp-org:metadata-1-0/RCS
2021.03.07 11:34:33.526 5: SYS_UPNP: dispatch RenderingControl|192.168.4.31_46971|online|urn:schemas-upnp-org:metadata-1-0/RCS
2021.03.07 11:34:33.527 3: DLNAController: SYS_UPNP, message: RenderingControl|192.168.4.31_46971|online|urn:schemas-upnp-org:metadata-1-0/RCS
2021.03.07 11:34:33.527 3: DLNAController: SYS_UPNP, Parameters: RenderingControl, 192.168.4.31_46971, online, urn:schemas-upnp-org:metadata-1-0/RCS
2021.03.07 11:34:33.527 3: DLNAController: name SYS_UPNP, unique: 192.168.4.31_46971, address 192.168.4.31_46971
2021.03.07 11:34:33.536 5: UPNPController: SYS_UPNP: event of service  urn:schemas-upnp-org:metadata-1-0/RCS dispatched to ARRAY(0x75a32a8)
2021.03.07 11:34:33.744 3: CUL_HM set OG_SZ_RolFe statusRequest noArg
2021.03.07 11:34:34.246 5: UPNPController: Received event: by 192.168.4.31_46971-zs-AVTransport UPnP::ControlPoint::Service=HASH(0x7bac878) $VAR1 = 'LastChange';
$VAR2 = '&lt;Event xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/AVT/&quot;&gt;&lt;InstanceID val=&quot;0&quot;&gt;&lt;TransportPlaySpeed val=&quot;1&quot;/&gt;&lt;RecordStorageMedium val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;CurrentPlayMode val=&quot;NORMAL&quot;/&gt;&lt;TransportState val=&quot;STOPPED&quot;/&gt;&lt;RecordMediumWriteStatus val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;CurrentRecordQualityMode val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;SyncOffset val=&quot;P00:00:00.000&quot;/&gt;&lt;CurrentTrackURI val=&quot;&quot;/&gt;&lt;PlaybackStorageMedium val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;NumberOfTracks val=&quot;1&quot;/&gt;&lt;CurrentMediaDuration val=&quot;0:00:00&quot;/&gt;&lt;NextAVTransportURIMetaData val=&quot;&quot;/&gt;&lt;AVTransportURI val=&quot;&quot;/&gt;&lt;PossiblePlaybackStorageMedia val=&quot;None,Network&quot;/&gt;&lt;PossibleRecordStorageMedia val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;NextAVTransportURI val=&quot;&quot;/&gt;&lt;TransportStatus val=&quot;OK&quot;/&gt;&lt;CurrentTrackMetaData val=&quot;&quot;/&gt;&lt;AVTransportURIMetaData val=&quot;&quot;/&gt;&lt;CurrentTrackDuration val=&quot;0:00:00&quot;/&gt;&lt;PossibleRecordQualityMode val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;CurrentTrack val=&quot;1&quot;/&gt;&lt;/InstanceID&gt;&lt;/Event&gt;';

2021.03.07 11:34:34.247 5: UPNPController: Received event: by 192.168.4.31_46971-zs-AVTransport original property: &lt;Event xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/AVT/&quot;&gt;&lt;InstanceID val=&quot;0&quot;&gt;&lt;TransportPlaySpeed val=&quot;1&quot;/&gt;&lt;RecordStorageMedium val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;CurrentPlayMode val=&quot;NORMAL&quot;/&gt;&lt;TransportState val=&quot;STOPPED&quot;/&gt;&lt;RecordMediumWriteStatus val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;CurrentRecordQualityMode val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;SyncOffset val=&quot;P00:00:00.000&quot;/&gt;&lt;CurrentTrackURI val=&quot;&quot;/&gt;&lt;PlaybackStorageMedium val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;NumberOfTracks val=&quot;1&quot;/&gt;&lt;CurrentMediaDuration val=&quot;0:00:00&quot;/&gt;&lt;NextAVTransportURIMetaData val=&quot;&quot;/&gt;&lt;AVTransportURI val=&quot;&quot;/&gt;&lt;PossiblePlaybackStorageMedia val=&quot;None,Network&quot;/&gt;&lt;PossibleRecordStorageMedia val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;NextAVTransportURI val=&quot;&quot;/&gt;&lt;TransportStatus val=&quot;OK&quot;/&gt;&lt;CurrentTrackMetaData val=&quot;&quot;/&gt;&lt;AVTransportURIMetaData val=&quot;&quot;/&gt;&lt;CurrentTrackDuration val=&quot;0:00:00&quot;/&gt;&lt;PossibleRecordQualityMode val=&quot;NOT_IMPLEMENTED&quot;/&gt;&lt;CurrentTrack val=&quot;1&quot;/&gt;&lt;/InstanceID&gt;&lt;/Event&gt;
2021.03.07 11:34:34.247 5: UPNPController: Received event: by 192.168.4.31_46971-zs-AVTransport property: <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportPlaySpeed val="1"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><TransportState val="STOPPED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><SyncOffset val="P00:00:00.000"/><CurrentTrackURI val=""/><PlaybackStorageMedium val="NOT_IMPLEMENTED"/><NumberOfTracks val="1"/><CurrentMediaDuration val="0:00:00"/><NextAVTransportURIMetaData val=""/><AVTransportURI val=""/><PossiblePlaybackStorageMedia val="None,Network"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><NextAVTransportURI val=""/><TransportStatus val="OK"/><CurrentTrackMetaData val=""/><AVTransportURIMetaData val=""/><CurrentTrackDuration val="0:00:00"/><PossibleRecordQualityMode val="NOT_IMPLEMENTED"/><CurrentTrack val="1"/></InstanceID></Event>
2021.03.07 11:34:34.250 5: UPNPController: SYS_UPNP: event of service urn:schemas-upnp-org:metadata-1-0/RCS, message <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportPlaySpeed val="1"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><TransportState val="STOPPED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><SyncOffset val="P00:00:00.000"/><CurrentTrackURI val=""/><PlaybackStorageMedium val="NOT_IMPLEMENTED"/><NumberOfTracks val="1"/><CurrentMediaDuration val="0:00:00"/><NextAVTransportURIMetaData val=""/><AVTransportURI val=""/><PossiblePlaybackStorageMedia val="None,Network"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><NextAVTransportURI val=""/><TransportStatus val="OK"/><CurrentTrackMetaData val=""/><AVTransportURIMetaData val=""/><CurrentTrackDuration val="0:00:00"/><PossibleRecordQualityMode val="NOT_IMPLEMENTED"/><CurrentTrack val="1"/></InstanceID></Event>
2021.03.07 11:34:34.250 5: UPNPController: SYS_UPNP: event of service urn:schemas-upnp-org:metadata-1-0/AVT, message <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportPlaySpeed val="1"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><TransportState val="STOPPED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><SyncOffset val="P00:00:00.000"/><CurrentTrackURI val=""/><PlaybackStorageMedium val="NOT_IMPLEMENTED"/><NumberOfTracks val="1"/><CurrentMediaDuration val="0:00:00"/><NextAVTransportURIMetaData val=""/><AVTransportURI val=""/><PossiblePlaybackStorageMedia val="None,Network"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><NextAVTransportURI val=""/><TransportStatus val="OK"/><CurrentTrackMetaData val=""/><AVTransportURIMetaData val=""/><CurrentTrackDuration val="0:00:00"/><PossibleRecordQualityMode val="NOT_IMPLEMENTED"/><CurrentTrack val="1"/></InstanceID></Event>
2021.03.07 11:34:34.251 5: SYS_UPNP: dispatch AVTransport|192.168.4.31_46971|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportPlaySpeed val="1"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><TransportState val="STOPPED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><SyncOffset val="P00:00:00.000"/><CurrentTrackURI val=""/><PlaybackStorageMedium val="NOT_IMPLEMENTED"/><NumberOfTracks val="1"/><CurrentMediaDuration val="0:00:00"/><NextAVTransportURIMetaData val=""/><AVTransportURI val=""/><PossiblePlaybackStorageMedia val="None,Network"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><NextAVTransportURI val=""/><TransportStatus val="OK"/><CurrentTrackMetaData val=""/><AVTransportURIMetaData val=""/><CurrentTrackDuration val="0:00:00"/><PossibleRecordQualityMode val="NOT_IMPLEMENTED"/><CurrentTrack val="1"/></InstanceID></Event>
2021.03.07 11:34:34.251 3: DLNAController: SYS_UPNP, message: AVTransport|192.168.4.31_46971|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportPlaySpeed val="1"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><TransportState val="STOPPED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><SyncOffset val="P00:00:00.000"/><CurrentTrackURI val=""/><PlaybackStorageMedium val="NOT_IMPLEMENTED"/><NumberOfTracks val="1"/><CurrentMediaDuration val="0:00:00"/><NextAVTransportURIMetaData val=""/><AVTransportURI val=""/><PossiblePlaybackStorageMedia val="None,Network"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><NextAVTransportURI val=""/><TransportStatus val="OK"/><CurrentTrackMetaData val=""/><AVTransportURIMetaData val=""/><CurrentTrackDuration val="0:00:00"/><PossibleRecordQualityMode val="NOT_IMPLEMENTED"/><CurrentTrack val="1"/></InstanceID></Event>
2021.03.07 11:34:34.251 3: DLNAController: SYS_UPNP, Parameters: AVTransport, 192.168.4.31_46971, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportPlaySpeed val="1"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><TransportState val="STOPPED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><SyncOffset val="P00:00:00.000"/><CurrentTrackURI val=""/><PlaybackStorageMedium val="NOT_IMPLEMENTED"/><NumberOfTracks val="1"/><CurrentMediaDuration val="0:00:00"/><NextAVTransportURIMetaData val=""/><AVTransportURI val=""/><PossiblePlaybackStorageMedia val="None,Network"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><NextAVTransportURI val=""/><TransportStatus val="OK"/><CurrentTrackMetaData val=""/><AVTransportURIMetaData val=""/><CurrentTrackDuration val="0:00:00"/><PossibleRecordQualityMode val="NOT_IMPLEMENTED"/><CurrentTrack val="1"/></InstanceID></Event>
2021.03.07 11:34:34.251 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportPlaySpeed val="1"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><TransportState val="STOPPED"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><SyncOffset val="P00:00:00.000"/><CurrentTrackURI val=""/><PlaybackStorageMedium val="NOT_IMPLEMENTED"/><NumberOfTracks val="1"/><CurrentMediaDuration val="0:00:00"/><NextAVTransportURIMetaData val=""/><AVTransportURI val=""/><PossiblePlaybackStorageMedia val="None,Network"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><NextAVTransportURI val=""/><TransportStatus val="OK"/><CurrentTrackMetaData val=""/><AVTransportURIMetaData val=""/><CurrentTrackDuration val="0:00:00"/><PossibleRecordQualityMode val="NOT_IMPLEMENTED"/><CurrentTrack val="1"/></InstanceID></Event>
2021.03.07 11:34:34.257 4: DLNAController: Update reading transportState with STOPPED
2021.03.07 11:34:34.257 4: DLNAController: Update reading transportStatus with OK
2021.03.07 11:34:34.257 4: DLNAController: Update reading currentTrackURI with
2021.03.07 11:34:34.257 4: DLNAController: Update reading nextAVTransportURI with
2021.03.07 11:34:34.258 3: DLNAController: name SYS_UPNP, unique: 192.168.4.31_46971, address 192.168.4.31_46971
2021.03.07 11:34:34.266 5: UPNPController: SYS_UPNP: event of service  urn:schemas-upnp-org:metadata-1-0/AVT dispatched to ARRAY(0x744f7c8)
2021.03.07 11:34:34.300 5: UPNPController: Received event: by 192.168.4.31_46971-zs-RenderingControl UPnP::ControlPoint::Service=HASH(0x7bb89f8) $VAR1 = 'LastChange';
$VAR2 = '&lt;Event xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/RCS/&quot;&gt;&lt;InstanceID val=&quot;0&quot;&gt;&lt;AllowedTransformSettings val=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&amp;lt;TransformList xmlns=&amp;quot;urn:schemas-upnp-org:av:AllowedTransformSettings&amp;quot; xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot; xsi:schemaLocation=&amp;quot;urn:schemas-upnp-org:av:AllowedTransformSettings http://www.upnp.org/schemas/av/AllowedTransformSettings.xsd&amp;quot;&amp;gt;&amp;lt;transform name=&amp;quot;BandEq_65_1040&amp;quot; shared=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;friendlyName&amp;gt;Bass&amp;lt;/friendlyName&amp;gt;&amp;lt;allowedValueRange scale=&amp;quot;Linear&amp;quot;&amp;gt;&amp;lt;minimum&amp;gt;0&amp;lt;/minimum&amp;gt;&amp;lt;maximum&amp;gt;10&amp;lt;/maximum&amp;gt;&amp;lt;step&amp;gt;1&amp;lt;/step&amp;gt;&amp;lt;/allowedValueRange&amp;gt;&amp;lt;/transform&amp;gt;&amp;lt;transform name=&amp;quot;BandEq_1250_20000&amp;quot; shared=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;friendlyName&amp;gt;Treble&amp;lt;/friendlyName&amp;gt;&amp;lt;allowedValueRange scale=&amp;quot;Linear&amp;quot;&amp;gt;&amp;lt;minimum&amp;gt;0&amp;lt;/minimum&amp;gt;&amp;lt;maximum&amp;gt;10&amp;lt;/maximum&amp;gt;&amp;lt;step&amp;gt;1&amp;lt;/step&amp;gt;&amp;lt;/allowedValueRange&amp;gt;&amp;lt;/transform&amp;gt;&amp;lt;/TransformList&amp;gt;&quot;/&gt;&lt;TransformSettings val=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&amp;lt;TransformSettings xmlns=&amp;quot;urn:schemas-upnp-org:av:TransformSettings&amp;quot; xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot; xsi:schemaLocation=&amp;quot;urn:schemas-upnp-org:av:TransformSettings http://www.upnp.org/schemas/av/TransformSettings.xsd&amp;quot;&amp;gt;&amp;lt;transform name=&amp;quot;BandEq_65_1040&amp;quot;&amp;gt;&amp;lt;Value&amp;gt;5&amp;lt;/Value&amp;gt;&amp;lt;/transform&amp;gt;&amp;lt;transform name=&amp;quot;BandEq_1250_20000&amp;quot;&amp;gt;&amp;lt;Value&amp;gt;5&amp;lt;/Value&amp;gt;&amp;lt;/transform&amp;gt;&amp;lt;/TransformSettings&amp;gt;&quot;/&gt;&lt;PresetNameList val=&quot;FactoryDefaults, InstallationDefaults&quot;/&gt;&lt;Mute channel=&quot;Master&quot; val=&quot;0&quot;/&gt;&lt;Volume channel=&quot;Master&quot; val=&quot;25&quot;/&gt;&lt;/InstanceID&gt;&lt;/Event&gt;';

2021.03.07 11:34:34.300 5: UPNPController: Received event: by 192.168.4.31_46971-zs-RenderingControl original property: &lt;Event xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/RCS/&quot;&gt;&lt;InstanceID val=&quot;0&quot;&gt;&lt;AllowedTransformSettings val=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&amp;lt;TransformList xmlns=&amp;quot;urn:schemas-upnp-org:av:AllowedTransformSettings&amp;quot; xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot; xsi:schemaLocation=&amp;quot;urn:schemas-upnp-org:av:AllowedTransformSettings http://www.upnp.org/schemas/av/AllowedTransformSettings.xsd&amp;quot;&amp;gt;&amp;lt;transform name=&amp;quot;BandEq_65_1040&amp;quot; shared=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;friendlyName&amp;gt;Bass&amp;lt;/friendlyName&amp;gt;&amp;lt;allowedValueRange scale=&amp;quot;Linear&amp;quot;&amp;gt;&amp;lt;minimum&amp;gt;0&amp;lt;/minimum&amp;gt;&amp;lt;maximum&amp;gt;10&amp;lt;/maximum&amp;gt;&amp;lt;step&amp;gt;1&amp;lt;/step&amp;gt;&amp;lt;/allowedValueRange&amp;gt;&amp;lt;/transform&amp;gt;&amp;lt;transform name=&amp;quot;BandEq_1250_20000&amp;quot; shared=&amp;quot;1&amp;quot;&amp;gt;&amp;lt;friendlyName&amp;gt;Treble&amp;lt;/friendlyName&amp;gt;&amp;lt;allowedValueRange scale=&amp;quot;Linear&amp;quot;&amp;gt;&amp;lt;minimum&amp;gt;0&amp;lt;/minimum&amp;gt;&amp;lt;maximum&amp;gt;10&amp;lt;/maximum&amp;gt;&amp;lt;step&amp;gt;1&amp;lt;/step&amp;gt;&amp;lt;/allowedValueRange&amp;gt;&amp;lt;/transform&amp;gt;&amp;lt;/TransformList&amp;gt;&quot;/&gt;&lt;TransformSettings val=&quot;&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;&amp;lt;TransformSettings xmlns=&amp;quot;urn:schemas-upnp-org:av:TransformSettings&amp;quot; xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot; xsi:schemaLocation=&amp;quot;urn:schemas-upnp-org:av:TransformSettings http://www.upnp.org/schemas/av/TransformSettings.xsd&amp;quot;&amp;gt;&amp;lt;transform name=&amp;quot;BandEq_65_1040&amp;quot;&amp;gt;&amp;lt;Value&amp;gt;5&amp;lt;/Value&amp;gt;&amp;lt;/transform&amp;gt;&amp;lt;transform name=&amp;quot;BandEq_1250_20000&amp;quot;&amp;gt;&amp;lt;Value&amp;gt;5&amp;lt;/Value&amp;gt;&amp;lt;/transform&amp;gt;&amp;lt;/TransformSettings&amp;gt;&quot;/&gt;&lt;PresetNameList val=&quot;FactoryDefaults, InstallationDefaults&quot;/&gt;&lt;Mute channel=&quot;Master&quot; val=&quot;0&quot;/&gt;&lt;Volume channel=&quot;Master&quot; val=&quot;25&quot;/&gt;&lt;/InstanceID&gt;&lt;/Event&gt;
2021.03.07 11:34:34.300 5: UPNPController: Received event: by 192.168.4.31_46971-zs-RenderingControl property: <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><AllowedTransformSettings val="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;TransformList xmlns=&quot;urn:schemas-upnp-org:av:AllowedTransformSettings&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:schemaLocation=&quot;urn:schemas-upnp-org:av:AllowedTransformSettings http://www.upnp.org/schemas/av/AllowedTransformSettings.xsd&quot;&gt;&lt;transform name=&quot;BandEq_65_1040&quot; shared=&quot;1&quot;&gt;&lt;friendlyName&gt;Bass&lt;/friendlyName&gt;&lt;allowedValueRange scale=&quot;Linear&quot;&gt;&lt;minimum&gt;0&lt;/minimum&gt;&lt;maximum&gt;10&lt;/maximum&gt;&lt;step&gt;1&lt;/step&gt;&lt;/allowedValueRange&gt;&lt;/transform&gt;&lt;transform name=&quot;BandEq_1250_20000&quot; shared=&quot;1&quot;&gt;&lt;friendlyName&gt;Treble&lt;/friendlyName&gt;&lt;allowedValueRange scale=&quot;Linear&quot;&gt;&lt;minimum&gt;0&lt;/minimum&gt;&lt;maximum&gt;10&lt;/maximum&gt;&lt;step&gt;1&lt;/step&gt;&lt;/allowedValueRange&gt;&lt;/transform&gt;&lt;/TransformList&gt;"/><TransformSettings val="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;TransformSettings xmlns=&quot;urn:schemas-upnp-org:av:TransformSettings&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:schemaLocation=&quot;urn:schemas-upnp-org:av:TransformSettings http://www.upnp.org/schemas/av/TransformSettings.xsd&quot;&gt;&lt;transform name=&quot;BandEq_65_1040&quot;&gt;&lt;Value&gt;5&lt;/Value&gt;&lt;/transform&gt;&lt;transform name=&quot;BandEq_1250_20000&quot;&gt;&lt;Value&gt;5&lt;/Value&gt;&lt;/transform&gt;&lt;/TransformSettings&gt;"/><PresetNameList val="FactoryDefaults, InstallationDefaults"/><Mute channel="Master" val="0"/><Volume channel="Master" val="25"/></InstanceID></Event>
2021.03.07 11:34:34.307 5: UPNPController: SYS_UPNP: event of service urn:schemas-upnp-org:metadata-1-0/RCS, message <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><AllowedTransformSettings val="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;TransformList xmlns=&quot;urn:schemas-upnp-org:av:AllowedTransformSettings&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:schemaLocation=&quot;urn:schemas-upnp-org:av:AllowedTransformSettings http://www.upnp.org/schemas/av/AllowedTransformSettings.xsd&quot;&gt;&lt;transform name=&quot;BandEq_65_1040&quot; shared=&quot;1&quot;&gt;&lt;friendlyName&gt;Bass&lt;/friendlyName&gt;&lt;allowedValueRange scale=&quot;Linear&quot;&gt;&lt;minimum&gt;0&lt;/minimum&gt;&lt;maximum&gt;10&lt;/maximum&gt;&lt;step&gt;1&lt;/step&gt;&lt;/allowedValueRange&gt;&lt;/transform&gt;&lt;transform name=&quot;BandEq_1250_20000&quot; shared=&quot;1&quot;&gt;&lt;friendlyName&gt;Treble&lt;/friendlyName&gt;&lt;allowedValueRange scale=&quot;Linear&quot;&gt;&lt;minimum&gt;0&lt;/minimum&gt;&lt;maximum&gt;10&lt;/maximum&gt;&lt;step&gt;1&lt;/step&gt;&lt;/allowedValueRange&gt;&lt;/transform&gt;&lt;/TransformList&gt;"/><TransformSettings val="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;TransformSettings xmlns=&quot;urn:schemas-upnp-org:av:TransformSettings&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:schemaLocation=&quot;urn:schemas-upnp-org:av:TransformSettings http://www.upnp.org/schemas/av/TransformSettings.xsd&quot;&gt;&lt;transform name=&quot;BandEq_65_1040&quot;&gt;&lt;Value&gt;5&lt;/Value&gt;&lt;/transform&gt;&lt;transform name=&quot;BandEq_1250_20000&quot;&gt;&lt;Value&gt;5&lt;/Value&gt;&lt;/transform&gt;&lt;/TransformSettings&gt;"/><PresetNameList val="FactoryDefaults, InstallationDefaults"/><Mute channel="Master" val="0"/><Volume channel="Master" val="25"/></InstanceID></Event>
2021.03.07 11:34:34.308 5: SYS_UPNP: dispatch RenderingControl|192.168.4.31_46971|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><AllowedTransformSettings val="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;TransformList xmlns=&quot;urn:schemas-upnp-org:av:AllowedTransformSettings&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:schemaLocation=&quot;urn:schemas-upnp-org:av:AllowedTransformSettings http://www.upnp.org/schemas/av/AllowedTransformSettings.xsd&quot;&gt;&lt;transform name=&quot;BandEq_65_1040&quot; shared=&quot;1&quot;&gt;&lt;friendlyName&gt;Bass&lt;/friendlyName&gt;&lt;allowedValueRange scale=&quot;Linear&quot;&gt;&lt;minimum&gt;0&lt;/minimum&gt;&lt;maximum&gt;10&lt;/maximum&gt;&lt;step&gt;1&lt;/step&gt;&lt;/allowedValueRange&gt;&lt;/transform&gt;&lt;transform name=&quot;BandEq_1250_20000&quot; shared=&quot;1&quot;&gt;&lt;friendlyName&gt;Treble&lt;/friendlyName&gt;&lt;allowedValueRange scale=&quot;Linear&quot;&gt;&lt;minimum&gt;0&lt;/minimum&gt;&lt;maximum&gt;10&lt;/maximum&gt;&lt;step&gt;1&lt;/step&gt;&lt;/allowedValueRange&gt;&lt;/transform&gt;&lt;/TransformList&gt;"/><TransformSettings val="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;TransformSettings xmlns=&quot;urn:schemas-upnp-org:av:TransformSettings&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:schemaLocation=&quot;urn:schemas-upnp-org:av:TransformSettings http://www.upnp.org/schemas/av/TransformSettings.xsd&quot;&gt;&lt;transform name=&quot;BandEq_65_1040&quot;&gt;&lt;Value&gt;5&lt;/Value&gt;&lt;/transform&gt;&lt;transform name=&quot;BandEq_1250_20000&quot;&gt;&lt;Value&gt;5&lt;/Value&gt;&lt;/transform&gt;&lt;/TransformSettings&gt;"/><PresetNameList val="FactoryDefaults, InstallationDefaults"/><Mute channel="Master" val="0"/><Volume channel="Master" val="25"/></InstanceID></Event>
2021.03.07 11:34:34.308 3: DLNAController: SYS_UPNP, message: RenderingControl|192.168.4.31_46971|LastChange|<Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><AllowedTransformSettings val="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;TransformList xmlns=&quot;urn:schemas-upnp-org:av:AllowedTransformSettings&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:schemaLocation=&quot;urn:schemas-upnp-org:av:AllowedTransformSettings http://www.upnp.org/schemas/av/AllowedTransformSettings.xsd&quot;&gt;&lt;transform name=&quot;BandEq_65_1040&quot; shared=&quot;1&quot;&gt;&lt;friendlyName&gt;Bass&lt;/friendlyName&gt;&lt;allowedValueRange scale=&quot;Linear&quot;&gt;&lt;minimum&gt;0&lt;/minimum&gt;&lt;maximum&gt;10&lt;/maximum&gt;&lt;step&gt;1&lt;/step&gt;&lt;/allowedValueRange&gt;&lt;/transform&gt;&lt;transform name=&quot;BandEq_1250_20000&quot; shared=&quot;1&quot;&gt;&lt;friendlyName&gt;Treble&lt;/friendlyName&gt;&lt;allowedValueRange scale=&quot;Linear&quot;&gt;&lt;minimum&gt;0&lt;/minimum&gt;&lt;maximum&gt;10&lt;/maximum&gt;&lt;step&gt;1&lt;/step&gt;&lt;/allowedValueRange&gt;&lt;/transform&gt;&lt;/TransformList&gt;"/><TransformSettings val="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;TransformSettings xmlns=&quot;urn:schemas-upnp-org:av:TransformSettings&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:schemaLocation=&quot;urn:schemas-upnp-org:av:TransformSettings http://www.upnp.org/schemas/av/TransformSettings.xsd&quot;&gt;&lt;transform name=&quot;BandEq_65_1040&quot;&gt;&lt;Value&gt;5&lt;/Value&gt;&lt;/transform&gt;&lt;transform name=&quot;BandEq_1250_20000&quot;&gt;&lt;Value&gt;5&lt;/Value&gt;&lt;/transform&gt;&lt;/TransformSettings&gt;"/><PresetNameList val="FactoryDefaults, InstallationDefaults"/><Mute channel="Master" val="0"/><Volume channel="Master" val="25"/></InstanceID></Event>
2021.03.07 11:34:34.308 3: DLNAController: SYS_UPNP, Parameters: RenderingControl, 192.168.4.31_46971, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><AllowedTransformSettings val="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;TransformList xmlns=&quot;urn:schemas-upnp-org:av:AllowedTransformSettings&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:schemaLocation=&quot;urn:schemas-upnp-org:av:AllowedTransformSettings http://www.upnp.org/schemas/av/AllowedTransformSettings.xsd&quot;&gt;&lt;transform name=&quot;BandEq_65_1040&quot; shared=&quot;1&quot;&gt;&lt;friendlyName&gt;Bass&lt;/friendlyName&gt;&lt;allowedValueRange scale=&quot;Linear&quot;&gt;&lt;minimum&gt;0&lt;/minimum&gt;&lt;maximum&gt;10&lt;/maximum&gt;&lt;step&gt;1&lt;/step&gt;&lt;/allowedValueRange&gt;&lt;/transform&gt;&lt;transform name=&quot;BandEq_1250_20000&quot; shared=&quot;1&quot;&gt;&lt;friendlyName&gt;Treble&lt;/friendlyName&gt;&lt;allowedValueRange scale=&quot;Linear&quot;&gt;&lt;minimum&gt;0&lt;/minimum&gt;&lt;maximum&gt;10&lt;/maximum&gt;&lt;step&gt;1&lt;/step&gt;&lt;/allowedValueRange&gt;&lt;/transform&gt;&lt;/TransformList&gt;"/><TransformSettings val="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;TransformSettings xmlns=&quot;urn:schemas-upnp-org:av:TransformSettings&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:schemaLocation=&quot;urn:schemas-upnp-org:av:TransformSettings http://www.upnp.org/schemas/av/TransformSettings.xsd&quot;&gt;&lt;transform name=&quot;BandEq_65_1040&quot;&gt;&lt;Value&gt;5&lt;/Value&gt;&lt;/transform&gt;&lt;transform name=&quot;BandEq_1250_20000&quot;&gt;&lt;Value&gt;5&lt;/Value&gt;&lt;/transform&gt;&lt;/TransformSettings&gt;"/><PresetNameList val="FactoryDefaults, InstallationDefaults"/><Mute channel="Master" val="0"/><Volume channel="Master" val="25"/></InstanceID></Event>
2021.03.07 11:34:34.308 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><AllowedTransformSettings val="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;TransformList xmlns=&quot;urn:schemas-upnp-org:av:AllowedTransformSettings&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:schemaLocation=&quot;urn:schemas-upnp-org:av:AllowedTransformSettings http://www.upnp.org/schemas/av/AllowedTransformSettings.xsd&quot;&gt;&lt;transform name=&quot;BandEq_65_1040&quot; shared=&quot;1&quot;&gt;&lt;friendlyName&gt;Bass&lt;/friendlyName&gt;&lt;allowedValueRange scale=&quot;Linear&quot;&gt;&lt;minimum&gt;0&lt;/minimum&gt;&lt;maximum&gt;10&lt;/maximum&gt;&lt;step&gt;1&lt;/step&gt;&lt;/allowedValueRange&gt;&lt;/transform&gt;&lt;transform name=&quot;BandEq_1250_20000&quot; shared=&quot;1&quot;&gt;&lt;friendlyName&gt;Treble&lt;/friendlyName&gt;&lt;allowedValueRange scale=&quot;Linear&quot;&gt;&lt;minimum&gt;0&lt;/minimum&gt;&lt;maximum&gt;10&lt;/maximum&gt;&lt;step&gt;1&lt;/step&gt;&lt;/allowedValueRange&gt;&lt;/transform&gt;&lt;/TransformList&gt;"/><TransformSettings val="&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;&lt;TransformSettings xmlns=&quot;urn:schemas-upnp-org:av:TransformSettings&quot; xmlns:xsi=&quot;http://www.w3.org/2001/XMLSchema-instance&quot; xsi:schemaLocation=&quot;urn:schemas-upnp-org:av:TransformSettings http://www.upnp.org/schemas/av/TransformSettings.xsd&quot;&gt;&lt;transform name=&quot;BandEq_65_1040&quot;&gt;&lt;Value&gt;5&lt;/Value&gt;&lt;/transform&gt;&lt;transform name=&quot;BandEq_1250_20000&quot;&gt;&lt;Value&gt;5&lt;/Value&gt;&lt;/transform&gt;&lt;/TransformSettings&gt;"/><PresetNameList val="FactoryDefaults, InstallationDefaults"/><Mute channel="Master" val="0"/><Volume channel="Master" val="25"/></InstanceID></Event>
2021.03.07 11:34:34.311 4: DLNAController: Update reading mute with 0
2021.03.07 11:34:34.311 4: DLNAController: Update reading volume with 25
2021.03.07 11:34:34.312 3: DLNAController: name SYS_UPNP, unique: 192.168.4.31_46971, address 192.168.4.31_46971
2021.03.07 11:34:34.320 5: UPNPController: SYS_UPNP: event of service  urn:schemas-upnp-org:metadata-1-0/RCS dispatched to ARRAY(0x7647730)
2021.03.07 11:34:41.622 4: UPNPController: discovery message of Bad with UDN: uuid:93b2abac-cb6a-4857-b891-00226190fdfc action: deviceAdded


EDIT:
Was mir auch noch aufgefallen ist, es kommen manchmal Meldungen aus dem UPNPController, die nichts mit ihm zu tun haben.

z.B.
2021.03.07 12:37:10.303 5: UPNPController: warning: FHEM::Buienradar, Use of uninitialized value $precip in numeric gt (>) at ./FHEM/59_Buienradar.pm line 677.
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 08 März 2021, 08:16:30
Hallo Michael,
bin leider gestern nicht dazu gekommen eine neue Version zu veröffentlichen, die nach "gedanklichem Programmcheck" erste Ergebnisse zum Thema Multiroom liefern könnte.  :'(

Zitat
Ich möchte nicht alle Logausgaben hier hinterlegen, da ja doch recht viel (UPNP) bzgl. meiner privaten Netzwerkstruktur und deren Geräte
daraus nachvollziehbar ist.
Kann ich Dir nur beipflichten. Ich bin da auch sehr sensibel. Ich kopier es mir dann meistens in einen Editor und mache dann das ein oder andere "replace all", um die individuellen Daten unkenntlich zu machen. Geht eigentlich relativ flott. Un wenn Du so etwas wie "IP" durch "IP_Schlafen" oder uuid durch uuid_Schlafen ersetzt, kann ich es auch noch einfacher lesen.  ;)

Zitat
Buero wird geadded aber es wird kein subscribe auf AVTransport gemacht.
Es könnte sein, dass ich da nicht richtig beim Start reagiere. Einfach mal ein modify des devices probieren, dann sollte sich das auflösen.
Zitat
Schlafen wird gefunden, dort wird aber AVTransport subscribed!
RenderingControl doch auch. Sieht also ziemlich "komplett" aus(für die aktuelle Modulversion). Durch das Log sehe ich, dass es neben den 2 Multiroom-Services noch 2 weitere gibt, die nicht uninteressant klingen(Zukunftsmusik).

Zitat
Was mir auch noch aufgefallen ist, es kommen manchmal Meldungen aus dem UPNPController, die nichts mit ihm zu tun haben.
Das ist ja lustig. Es kommt daher, dass "warnings" abgefangen werden, um an der entsprechenden Stelle eine konkrete Fehlernachricht auszugeben. Ist für mich ein neues Thema in Perl. Scheinbar muss ich das nach der beabsichtigten Verwendung irgendwie wieder canceln. :-\

Sobald ich so weit bin, stelle ich eine Version ein, mit der Du dann Multiroom testen kannst.

Gute Woche
Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: eki am 10 März 2021, 07:40:03
So, ich habe das jetzt bei mir auch mal angeworfen (auch um mal zu sehen, wie ich das für mein Vestel Modul nutzen kann). Es werden jede Menge Readings erzeugt (FRITZ!Box, Internet Radio, NAS, Drucker, SkyReceiver). Es wird genau ein DLNA Device erzeugt (für das Internetradio) und das sieht soweit OK aus (ob es bedienbar ist, kann ich aktuell nicht testen, weil ich unterwegs bin). Bei dem Internet Radio ist im XML File auch eine Liste der Modi (FM, DAB etc.) zu sehen, die wird aber irgendwie nicht ausgewertet. Meine TVs sind ausgeschaltet, und melden sich in dem Zustand zumindest offenbar nicht.

List des Controllers:

Internals:
   CFGFN     
   CHANGED   
   FD         134
   FUUID      60466e6c-f33f-e3e4-c655-0557de12913426bc
   NAME       UPNP_Controller
   NR         337544
   NTFY_ORDER 50-UPNP_Controller
   STATE      initialized
   TYPE       UPNPController
   UDN        0
   VERSION    v0.0.1
   OLDREADINGS:
   READINGS:
     2021-03-08 19:44:05   192.168.178.1_49000-UDN uuid:fa095ecc-e13e-40e7-8e6c-dc396f6da372
     2021-03-08 19:44:05   192.168.178.1_49000-friendlyName AVM FRITZ!Mediaserver
     2021-03-08 19:44:05   192.168.178.1_49000-location http://192.168.178.1:49000/MediaServerDevDesc.xml
     2021-03-08 19:44:05   192.168.178.1_49000-manufacturer AVM Berlin
     2021-03-08 19:44:05   192.168.178.1_49000-modelDescription FRITZ!Box 7530
     2021-03-08 19:44:05   192.168.178.1_49000-modelName FRITZ!Box 7530
     2021-03-08 19:44:05   192.168.178.1_49000-modelNumber avm
     2021-03-08 19:44:05   192.168.178.1_49000-presence online
     2021-03-08 19:44:05   192.168.178.1_49000-zs-AVM_ServerStatus urn:avm.de:service:AVM_ServerStatus:1
     2021-03-08 19:44:05   192.168.178.1_49000-zs-ConnectionManager urn:schemas-upnp-org:service:ConnectionManager:1
     2021-03-08 19:44:05   192.168.178.1_49000-zs-ContentDirectory urn:schemas-upnp-org:service:ContentDirectory:1
     2021-03-08 19:44:05   192.168.178.1_49000-zs-X_MS_MediaReceiverRegistrar urn:microsoft.com:service:X_MS_MediaReceiverRegistrar:1
     2021-03-08 19:44:05   192.168.178.1_49000_1-UDN uuid:123402409-bccb-40e7-8e6c-DC396F6DA372
     2021-03-08 19:44:05   192.168.178.1_49000_1-friendlyName FRITZ!Box 7530
     2021-03-08 19:44:05   192.168.178.1_49000_1-location http://192.168.178.1:49000/fboxdesc.xml
     2021-03-08 19:44:05   192.168.178.1_49000_1-manufacturer AVM Berlin
     2021-03-08 19:44:05   192.168.178.1_49000_1-modelDescription FRITZ!Box 7530
     2021-03-08 19:44:05   192.168.178.1_49000_1-modelName FRITZ!Box 7530
     2021-03-08 19:44:05   192.168.178.1_49000_1-modelNumber avm
     2021-03-08 19:44:05   192.168.178.1_49000_1-presence online
     2021-03-08 19:44:05   192.168.178.1_49000_1-zs-fritzbox urn:schemas-any-com:service:fritzbox:1
     2021-03-08 19:44:13   192.168.178.1_49000_2-UDN uuid:75802409-bccb-40e7-8e6c-DC396F6DA372
     2021-03-08 19:44:13   192.168.178.1_49000_2-friendlyName FRITZ!Box 7530
     2021-03-08 19:44:13   192.168.178.1_49000_2-location http://192.168.178.1:49000/igddesc.xml
     2021-03-08 19:44:13   192.168.178.1_49000_2-manufacturer AVM Berlin
     2021-03-08 19:44:13   192.168.178.1_49000_2-modelDescription FRITZ!Box 7530
     2021-03-08 19:44:13   192.168.178.1_49000_2-modelName FRITZ!Box 7530
     2021-03-08 19:44:13   192.168.178.1_49000_2-modelNumber avm
     2021-03-08 19:44:13   192.168.178.1_49000_2-presence online
     2021-03-08 19:44:13   192.168.178.1_49000_2-zs-any1 urn:schemas-any-com:service:Any:1
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz uuid:76802409-bccb-40e7-8e6b-DC396F6DA372
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-UDN uuid:76802409-bccb-40e7-8e6b-DC396F6DA372
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-friendlyName WANDevice - FRITZ!Box 7530
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-location http://192.168.178.1:49000/igddesc.xml
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-manufacturer AVM Berlin
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-modelDescription WANDevice - FRITZ!Box 7530
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-modelName WANDevice - FRITZ!Box 7530
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-modelNumber avm
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-presence online
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-zs-WANCommonIFC1 urn:schemas-upnp-org:service:WANCommonInterfaceConfig:1
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-zz uuid:76802409-bccb-40e7-8e6a-DC396F6DA372
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-zz-UDN uuid:76802409-bccb-40e7-8e6a-DC396F6DA372
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-zz-friendlyName WANConnectionDevice - FRITZ!Box 7530
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-zz-location http://192.168.178.1:49000/igddesc.xml
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-zz-manufacturer AVM Berlin
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-zz-modelDescription WANConnectionDevice - FRITZ!Box 7530
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-zz-modelName WANConnectionDevice - FRITZ!Box 7530
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-zz-modelNumber avm
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-zz-presence online
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-zz-zs-WANDSLLinkC1 urn:schemas-upnp-org:service:WANDSLLinkConfig:1
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-zz-zs-WANIPConn1 urn:schemas-upnp-org:service:WANIPConnection:1
     2021-03-08 19:44:13   192.168.178.1_49000_2-zz-zz-zs-WANIPv6Firewall1 urn:schemas-upnp-org:service:WANIPv6FirewallControl:1
     2021-03-08 19:44:13   192.168.178.1_49000_3-UDN uuid:535502409-bccb-40e7-8e6c-DC396F6DA372
     2021-03-08 19:44:13   192.168.178.1_49000_3-friendlyName FRITZ!Box 7530
     2021-03-08 19:44:13   192.168.178.1_49000_3-location http://192.168.178.1:49000/avmnexusdesc.xml
     2021-03-08 19:44:13   192.168.178.1_49000_3-manufacturer AVM Berlin
     2021-03-08 19:44:13   192.168.178.1_49000_3-modelDescription FRITZ!Box 7530
     2021-03-08 19:44:13   192.168.178.1_49000_3-modelName FRITZ!Box 7530
     2021-03-08 19:44:13   192.168.178.1_49000_3-modelNumber avm
     2021-03-08 19:44:13   192.168.178.1_49000_3-presence online
     2021-03-08 19:44:13   192.168.178.1_49000_3-zs-avmnexus urn:schemas-any-com:service:avmnexus:1
     2021-03-08 19:44:14   192.168.178.1_49000_4-UDN uuid:95802409-bccb-40e7-8e6c-DC396F6DA372
     2021-03-08 19:44:14   192.168.178.1_49000_4-friendlyName FRITZ!Box 7530
     2021-03-08 19:44:14   192.168.178.1_49000_4-location http://192.168.178.1:49000/l2tpv3.xml
     2021-03-08 19:44:14   192.168.178.1_49000_4-manufacturer AVM Berlin
     2021-03-08 19:44:14   192.168.178.1_49000_4-modelDescription FRITZ!Box 7530
     2021-03-08 19:44:14   192.168.178.1_49000_4-modelName FRITZ!Box 7530
     2021-03-08 19:44:14   192.168.178.1_49000_4-modelNumber avm
     2021-03-08 19:44:14   192.168.178.1_49000_4-presence online
     2021-03-08 19:44:14   192.168.178.1_49000_4-zs-l2tpv31 urn:schemas-any-com:service:l2tpv3:1
     2021-03-08 19:44:16   192.168.178.1_49000_5-UDN uuid:75802409-bccb-40e7-9f6c-DC396F6DA372
     2021-03-08 19:44:16   192.168.178.1_49000_5-friendlyName InternetGatewayDeviceV2 - FRITZ!Box 7530
     2021-03-08 19:44:16   192.168.178.1_49000_5-location http://192.168.178.1:49000/igd2desc.xml
     2021-03-08 19:44:16   192.168.178.1_49000_5-manufacturer AVM Berlin
     2021-03-08 19:44:16   192.168.178.1_49000_5-modelDescription FRITZ!Box 7530
     2021-03-08 19:44:16   192.168.178.1_49000_5-modelName FRITZ!Box 7530
     2021-03-08 19:44:16   192.168.178.1_49000_5-modelNumber avm
     2021-03-08 19:44:16   192.168.178.1_49000_5-presence online
     2021-03-08 19:44:16   192.168.178.1_49000_5-zs-any1 urn:schemas-any-com:service:Any:1
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz uuid:75802409-bccb-40e7-9f6b-DC396F6DA372
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-UDN uuid:75802409-bccb-40e7-9f6b-DC396F6DA372
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-friendlyName WANDevice - FRITZ!Box 7530
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-location http://192.168.178.1:49000/igd2desc.xml
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-manufacturer AVM Berlin
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-modelDescription WANDevice - FRITZ!Box 7530
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-modelName WANDevice - FRITZ!Box 7530
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-modelNumber avm
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-presence online
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-zs-WANCommonIFC1 urn:schemas-upnp-org:service:WANCommonInterfaceConfig:1
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-zz uuid:75802409-bccb-40e7-9f6a-DC396F6DA372
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-zz-UDN uuid:75802409-bccb-40e7-9f6a-DC396F6DA372
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-zz-friendlyName WANConnectionDevice - FRITZ!Box 7530
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-zz-location http://192.168.178.1:49000/igd2desc.xml
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-zz-manufacturer AVM Berlin
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-zz-modelDescription WANConnectionDevice - FRITZ!Box 7530
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-zz-modelName WANConnectionDevice - FRITZ!Box 7530
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-zz-modelNumber avm
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-zz-presence online
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-zz-zs-WANDSLLinkC1 urn:schemas-upnp-org:service:WANDSLLinkConfig:1
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-zz-zs-WANIPConn1 urn:schemas-upnp-org:service:WANIPConnection:2
     2021-03-08 19:44:16   192.168.178.1_49000_5-zz-zz-zs-WANIPv6Firewall1 urn:schemas-upnp-org:service:WANIPv6FirewallControl:1
     2021-03-08 19:37:55   192.168.178.26_8080-UDN uuid:3DCC7100-F76C-11DD-87AF-002261949F08
     2021-03-08 19:37:55   192.168.178.26_8080-friendlyName SIRD 14 C2
     2021-03-08 19:37:55   192.168.178.26_8080-location http://192.168.178.26:8080/dd.xml
     2021-03-08 19:37:55   192.168.178.26_8080-manufacturer 
     2021-03-08 19:37:55   192.168.178.26_8080-modelName SIRD14C2
     2021-03-08 19:37:55   192.168.178.26_8080-modelNumber 
     2021-03-08 19:37:55   192.168.178.26_8080-presence online
     2021-03-09 02:39:58   192.168.178.26_8080-zs-AVTransport subscribed
     2021-03-08 19:37:55   192.168.178.26_8080-zs-ConnectionManager urn:schemas-upnp-org:service:ConnectionManager:1
     2021-03-08 19:41:17   192.168.178.26_8080-zs-RenderingControl subscribed
     2021-03-08 19:40:10   192.168.178.28_49153-UDN uuid:444D5376-3247-536B-7953-cc4eec2411aa
     2021-03-08 19:40:10   192.168.178.28_49153-friendlyName 3580631933
     2021-03-10 06:15:02   192.168.178.28_49153-location http://192.168.178.28:49153/description1.xml
     2021-03-08 19:40:10   192.168.178.28_49153-manufacturer HUMAX
     2021-03-08 19:40:10   192.168.178.28_49153-modelDescription 5600
     2021-03-08 19:40:10   192.168.178.28_49153-modelName SkyDPVR
     2021-03-08 19:40:10   192.168.178.28_49153-modelNumber 5-2-701.2.4[PL]
     2021-03-10 06:56:22   192.168.178.28_49153-presence offline
     2021-03-08 19:40:10   192.168.178.28_49153-zs-SkyBook urn:schemas-nds-com:service:SkyBook:2
     2021-03-08 19:40:10   192.168.178.28_49153-zs-SkyBrowse urn:schemas-nds-com:service:SkyBrowse:2
     2021-03-10 06:56:22   192.168.178.28_49153_1-UDN uuid:444D5276-3247-536B-7943-cc4eec2411aa
     2021-03-10 06:56:22   192.168.178.28_49153_1-friendlyName 3580631933
     2021-03-10 06:56:22   192.168.178.28_49153_1-location http://192.168.178.28:49153/description2.xml
     2021-03-10 06:56:22   192.168.178.28_49153_1-manufacturer HUMAX
     2021-03-10 06:56:22   192.168.178.28_49153_1-modelDescription 5600
     2021-03-10 06:56:22   192.168.178.28_49153_1-modelName SkyDPVR
     2021-03-10 06:56:22   192.168.178.28_49153_1-modelNumber 5-2-701.2.4[PL]
     2021-03-10 06:56:22   192.168.178.28_49153_1-presence online
     2021-03-10 06:56:22   192.168.178.28_49153_1-zs-SkyCM urn:schemas-nds-com:service:SkyCM:2
     2021-03-10 06:56:22   192.168.178.28_49153_1-zs-SkyPlay urn:schemas-nds-com:service:SkyPlay:2
     2021-03-10 06:56:22   192.168.178.28_49153_1-zs-SkyRC urn:schemas-nds-com:service:SkyRC:2
     2021-03-10 07:10:19   192.168.178.28_49153_2-UDN uuid:52554976-3247-536B-7952-cc4eec2411aa
     2021-03-10 07:10:19   192.168.178.28_49153_2-friendlyName 3580631933
     2021-03-10 07:10:19   192.168.178.28_49153_2-location http://192.168.178.28:49153/description3.xml
     2021-03-10 07:10:19   192.168.178.28_49153_2-manufacturer HUMAX
     2021-03-10 07:10:19   192.168.178.28_49153_2-modelDescription 5600
     2021-03-10 07:10:19   192.168.178.28_49153_2-modelName SkyDPVR
     2021-03-10 07:10:19   192.168.178.28_49153_2-modelNumber 5-2-701.2.4[PL]
     2021-03-10 07:10:19   192.168.178.28_49153_2-presence online
     2021-03-10 07:10:19   192.168.178.28_49153_2-zs-SkyRemote urn:schemas-nds-com:service:SkyRemote:1
     2021-03-08 19:37:58   192.168.178.29-UDN uuid:cfe92100-67c4-11d4-a45f-44d2445d2bca
     2021-03-08 19:37:58   192.168.178.29-friendlyName EPSON5D2BCA
     2021-03-08 19:37:58   192.168.178.29-location http://192.168.178.29/DEVICE/PRINTER1.XML
     2021-03-08 19:37:58   192.168.178.29-manufacturer EPSON
     2021-03-08 19:37:58   192.168.178.29-modelDescription Inkjet Printer
     2021-03-08 19:37:58   192.168.178.29-modelName XP-830 Series
     2021-03-08 19:37:58   192.168.178.29-modelNumber XP-830 Series
     2021-03-08 19:37:58   192.168.178.29-presence online
     2021-03-08 19:37:58   192.168.178.29-zs-1 urn:schemas-upnp-org:service:PrintBasic:1
     2021-03-08 19:37:58   192.168.178.29-zs-3 urn:schemas-upnp-org:service:PrintEnhanced:1
     2021-03-08 19:37:59   192.168.178.29_1-UDN uuid:82b97f00-67c5-11d4-8a28-44d2445d2bca
     2021-03-08 19:37:59   192.168.178.29_1-friendlyName EPSON5D2BCA
     2021-03-08 19:37:59   192.168.178.29_1-location http://192.168.178.29/DEVICE/DPSIPPRINTER.XML
     2021-03-08 19:37:59   192.168.178.29_1-manufacturer EPSON
     2021-03-08 19:37:59   192.168.178.29_1-modelDescription Inkjet Printer
     2021-03-08 19:37:59   192.168.178.29_1-modelName XP-830 Series
     2021-03-08 19:37:59   192.168.178.29_1-modelNumber XP-830 Series
     2021-03-08 19:37:59   192.168.178.29_1-presence online
     2021-03-08 19:37:59   192.168.178.29_1-zs-DPSConnectionManager urn:schemas-cipa-jp:service:DPSConnectionManager:1
     2021-03-08 19:49:49   192.168.178.46_5000-UDN uuid:73796E6F-6473-6D00-0000-00113215cd71
     2021-03-08 19:49:49   192.168.178.46_5000-friendlyName DiskStation (DS112+)
     2021-03-08 19:49:49   192.168.178.46_5000-location http://192.168.178.46:5000/ssdp/desc-DSM-eth0.xml
     2021-03-08 19:49:49   192.168.178.46_5000-manufacturer Synology
     2021-03-08 19:49:49   192.168.178.46_5000-modelDescription Synology NAS
     2021-03-08 19:49:49   192.168.178.46_5000-modelName DS112+
     2021-03-08 19:49:49   192.168.178.46_5000-modelNumber DS112+ 6.2-25426
     2021-03-08 19:49:49   192.168.178.46_5000-presence online
     2021-03-08 19:49:49   192.168.178.46_5000-zs-dummy1 urn:schemas-dummy-com:service:Dummy:1
     2021-03-08 19:47:40   192.168.178.46_50001-UDN uuid:00113215-cd71-0011-71cd-71cd15321100
     2021-03-08 19:47:40   192.168.178.46_50001-friendlyName DiskStation
     2021-03-08 19:47:40   192.168.178.46_50001-location http://192.168.178.46:50001/desc/device.xml
     2021-03-08 19:47:40   192.168.178.46_50001-manufacturer Synology Inc
     2021-03-08 19:47:40   192.168.178.46_50001-modelDescription Synology DLNA/UPnP Media Server
     2021-03-08 19:47:40   192.168.178.46_50001-modelName DS112+
     2021-03-08 19:47:40   192.168.178.46_50001-presence online
     2021-03-08 19:47:40   192.168.178.46_50001-zs-ConnectionManager urn:schemas-upnp-org:service:ConnectionManager:1
     2021-03-08 19:47:40   192.168.178.46_50001-zs-ContentDirectory urn:schemas-upnp-org:service:ContentDirectory:1
     2021-03-08 19:40:11   192.168.178.46_9791-UDN uuid:0cf9b99c-aab0-4bf8-ba44-0b98830f2f09
     2021-03-08 19:40:11   192.168.178.46_9791-friendlyName MinimServer[DiskStation]
     2021-03-08 19:40:11   192.168.178.46_9791-location http://192.168.178.46:9791/0cf9b99c-aab0-4bf8-ba44-0b98830f2f09/Upnp/device.xml
     2021-03-08 19:40:11   192.168.178.46_9791-manufacturer minimserver.com
     2021-03-08 19:40:11   192.168.178.46_9791-modelName MinimServer
     2021-03-08 19:40:11   192.168.178.46_9791-presence online
     2021-03-08 19:40:11   192.168.178.46_9791-zs-ConnectionManager urn:schemas-upnp-org:service:ConnectionManager:1
     2021-03-08 19:40:11   192.168.178.46_9791-zs-ContentDirectory urn:schemas-upnp-org:service:ContentDirectory:1
     2021-03-08 19:40:11   192.168.178.46_9791_1-UDN uuid:ea1494e2-139c-4909-87f8-8e2fc2a1d01f
     2021-03-08 19:40:11   192.168.178.46_9791_1-friendlyName Monitor Service 2
     2021-03-08 19:40:11   192.168.178.46_9791_1-location http://192.168.178.46:9791/ea1494e2-139c-4909-87f8-8e2fc2a1d01f/Upnp/device.xml
     2021-03-08 19:40:11   192.168.178.46_9791_1-manufacturer jminim.org
     2021-03-08 19:40:11   192.168.178.46_9791_1-modelName MonitorService2
     2021-03-08 19:40:11   192.168.178.46_9791_1-presence online
     2021-03-08 19:40:11   192.168.178.46_9791_1-zs-Log2 urn:jminim-org:service:Log2:1
     2021-03-08 19:40:11   192.168.178.46_9791_1-zs-Monitor2 urn:jminim-org:service:Monitor2:2
     2021-03-08 19:35:47   192.168.178.73_49000-UDN uuid:123402409-bccb-40e7-8e6c-2C91AB2B1405
     2021-03-08 19:35:47   192.168.178.73_49000-friendlyName FRITZ!Repeater 1200
     2021-03-08 19:35:47   192.168.178.73_49000-location http://192.168.178.73:49000/fboxdesc.xml
     2021-03-08 19:35:47   192.168.178.73_49000-manufacturer AVM Berlin
     2021-03-08 19:35:47   192.168.178.73_49000-modelDescription FRITZ!Repeater 1200
     2021-03-08 19:35:47   192.168.178.73_49000-modelName FRITZ!Repeater 1200
     2021-03-08 19:35:47   192.168.178.73_49000-modelNumber avm
     2021-03-08 19:35:47   192.168.178.73_49000-presence online
     2021-03-08 19:35:47   192.168.178.73_49000-zs-fritzbox urn:schemas-any-com:service:fritzbox:1
     2021-03-08 19:35:25   state           initialized
   helper:
Attributes:
   userattr   acceptedUDNs defaultRoom envNamespace envPrefix ignoreUDNs

XML des Internetradios:

1 0 urn:schemas-upnp-org:device:MediaRenderer:1 SIRD 14 C2 SIRD14C2 0f080a032a191f2701010805ffff2fff uuid:3DCC7100-F76C-11DD-87AF-002261949F08 image/png 48 48 32 /icon.png image/jpeg 48 48 32 /icon.jpg image/png 120 120 32 /icon2.png image/jpeg 120 120 32 /icon2.jpg urn:schemas-upnp-org:service:AVTransport:1urn:upnp-org:serviceId:AVTransportAVTransport/scpd.xmlAVTransport/controlAVTransport/eventurn:schemas-upnp-org:service:ConnectionManager:1urn:upnp-org:serviceId:ConnectionManagerConnectionManager/scpd.xmlConnectionManager/controlConnectionManager/eventurn:schemas-upnp-org:service:RenderingControl:1urn:upnp-org:serviceId:RenderingControlRenderingControl/scpd.xmlRenderingControl/controlRenderingControl/event/webDMR-1.50 VEN_2A2D&DEV_0001&SUBSYS_0001&REV_01 VEN_0033&DEV_0006&REV_01 MS_DigitalMediaDeviceClass_DMR_V001 MediaDevices Multimedia.DMR 0 1 4 Spotify, AudioSync, DAB, FM, IR, Aux-In, Media, DMR

Melde Dich, wenn Du sonst noch was wissen willst. An mein Modul komme ich erst in einigen Tagen, wenn es da was Neues gibt, melde ich mich.
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 10 März 2021, 08:45:08
Hi Eki,
danke fürs reinschnuppern.

Interessant ist auch der Epson(ich hab auch einen. der ist aber bisher immer "tot"). Drucker sind ja auch oft per UPnP anbindbar. Könnte vielleicht auch zu einem logischen Modul führen....

Ansonsten sieht das erst einmal alles "normal" aus und Du hast über den ersten Schritt eine Übersicht Deiner UPnP-devices. Noch nicht vollständig, weil die TVs ja noch aus sind. Sobald die eingeschaltet werden, melden die sich und sollten dann auch im UPNPController auftauchen und DLNAController-devices angelegt werden, vergleichbar dem SIRD-device.

Mich wundert bei dem SIRD, dass die services den Zustand "subscribed" anzeigen. Eigentlich müssten die in etwa so aussehen: setstate UPNP_Controller 2021-03-10 06:54:57 IP_Port-zs-AVTransport SID: uuid:c5337f0e-d940-4c7b-aa19-06efbf53ca5a timeout: 1800 property: LastChange
setstate UPNP_Controller 2021-02-23 23:24:46 IP_Port-zs-ConnectionManager urn:schemas-upnp-org:service:ConnectionManager:1
setstate UPNP_Controller 2021-03-10 06:54:57 IP_Port-zs-RenderingControl SID: uuid:d3b95548-c1f0-423b-8c58-e817deec42d8 timeout: 1800 property: LastChange
Ich spekuliere, dass die events nicht "erkannt" werden und nach einer Weile "subscription failed" oder ähnlich auftauchen wird.

Die events kommen über das automatisch angelegte Hilfsdevice UPNPSocket-UPNP_Controller-4711(4711 ist irgendeine PortNr. ungleich 1900) rein(die Hilfsdevices befinden sich im room "hidden"). Wenn es Dir jetzt nicht eh schon das Log zuballert, müsste man mit verbose=5 mal sehen, was da so ankommt. Allerdings sehen wir leider nur, ob überhaupt ein event reinkommt. Dieses event wird dann "weitergereicht" und für uns (fast) unsichtbar in der Blackbox des perlupnp-Pakets verarbeitet. Entweder kommt eine Fehlermeldung zurück, mit der man was anfangen kann oder ein Callback auf das UPNP_Controller-device wird zur Verarbeitung aufgerufen.
Zitat
ist im XML File auch eine Liste der Modi (FM, DAB etc.) zu sehen, die wird aber irgendwie nicht ausgewertet.
Ich sehe in Deinem Extrakt gar keine "Schlüsselbegriffe". Kannst Du das http://192.168.178.26:8080/dd.xml mal im Browser aufrufen und hier einstellen. Dann kann ich das vielleicht als weiteres reading in den UPNPController übernehmen.

Ich stelle heut oder morgen neue Versionen ein. Dazu noch ein paar Tipps zum WindowsMediaPlayer, den ich bei Dir noch nicht sah, der aber gut zu nutzen ist, um ein besseres Verständnis von DLNA zu entwickeln aber auch zu analysieren, was ein konkretes device "kann"(oder auch nicht).

Ich schlage vor, dass Du dann einen eigenen Thread für UPNP u. Vestel(Medion....) aufmachst, da ich mit den verschiedenartigsten Herstellern hier den Überblick über die Details verliere und die Zusammenhänge sich verwässern, da ich ja mangels Hardware immer nur auf Euren Input reagieren/analysieren kann. Dieter(Rockfan) wird sich dann bestimmt auch gerne dazu gesellen. Er hat hier im Thread schon die ersten Schritte zu diesen Hersteller-Typen gemacht und auch Dein Modul ausprobiert.

Grüße Markus

Edit:
@Michael: Kannst Du bitte mal manuell im UPNPController device die beiden services Speaker- u. SessionManagment subscriben(SYS_UPNP u. UPNPSocket-SYS_UPNP-4711[4711 ist irgendeine PortNr. ungleich 1900;das device befindet sich im room "hidden"] auf verbose 5). set SYS_UPNP subscribe 192.168.4.31_46971-zs-SpeakerManagment
set SYS_UPNP subscribe 192.168.4.31_46971-zs-SessionManagment
Dann den Log-Extrakt u. die beiden service-readings 192.168.4.31_46971-zs-.... hier posten.
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: MichaelT am 10 März 2021, 19:05:18
Hallo Markus,

habe mal direkt das xml geschnüffelt, ich hoffe da kannst Du was mit anfangen:

Gruß Michael

EDIT:

Subscribe
2021.03.10 19:16:23.660 4: UPNPController: subscribe: reading  192.168.4.33_44210-zs-SessionManagement, uniquedevice 192.168.4.33_44210, service SessionManagement
2021.03.10 19:16:23.661 5: UPNPController: SessionManagement: urn:schemas-pure-com:service:SessionManagement:1 found. OK.
2021.03.10 19:16:23.661 5: UPNPController: SessionManagement: urn:schemas-pure-com:service:SessionManagement:1 found. OK.
2021.03.10 19:16:23.840 5: UPNPController: Received event: by 192.168.4.33_44210-zs-SessionManagement UPnP::ControlPoint::Service=HASH(0x74c7f94) $VAR1 = 'SessionID';
$VAR2 = '';

2021.03.10 19:16:23.840 5: UPNPController: Received event: by 192.168.4.33_44210-zs-SessionManagement original property:
2021.03.10 19:16:23.840 5: UPNPController: Received event: by 192.168.4.33_44210-zs-SessionManagement property:
2021.03.10 19:16:23.854 5: UPNPController: SYS_UPNP: event of service urn:schemas-upnp-org:metadata-1-0/RCS, message
2021.03.10 19:16:23.854 5: UPNPController: SYS_UPNP: event of service urn:schemas-upnp-org:metadata-1-0/AVT, message
2021.03.10 19:16:23.854 4: UPNPController: SYS_UPNP: service  event SessionID not yet implemented
2021.03.10 19:16:50.870 4: UPNPController: subscribe: reading  192.168.4.33_44210-zs-SpeakerManagement, uniquedevice 192.168.4.33_44210, service SpeakerManagement
2021.03.10 19:16:50.870 5: UPNPController: SpeakerManagement: urn:schemas-pure-com:service:SpeakerManagement:1 found. OK.
2021.03.10 19:16:50.871 5: UPNPController: SpeakerManagement: urn:schemas-pure-com:service:SpeakerManagement:1 found. OK.
2021.03.10 19:16:51.112 5: UPNPController: Received event: by 192.168.4.33_44210-zs-SpeakerManagement UPnP::ControlPoint::Service=HASH(0x21debe0) $VAR1 = 'SessionID';
$VAR2 = '';
$VAR3 = 'Groups';
$VAR4 = '&lt;?xml version=&quot;1.0&quot; ?&gt;&lt;groups version=&quot;1.0&quot;&gt;&lt;group&gt;&lt;id&gt;4DAA44C0-8291-11E3-BAA7-0800200C9A66&lt;/id&gt;&lt;name&gt;Bluetooth&lt;/name&gt;&lt;/group&gt;&lt;/groups&gt;';

2021.03.10 19:16:51.113 5: UPNPController: Received event: by 192.168.4.33_44210-zs-SpeakerManagement original property:
2021.03.10 19:16:51.113 5: UPNPController: Received event: by 192.168.4.33_44210-zs-SpeakerManagement property:
2021.03.10 19:16:51.126 5: UPNPController: SYS_UPNP: event of service urn:schemas-upnp-org:metadata-1-0/RCS, message
2021.03.10 19:16:51.126 5: UPNPController: SYS_UPNP: event of service urn:schemas-upnp-org:metadata-1-0/AVT, message
2021.03.10 19:16:51.126 4: UPNPController: SYS_UPNP: service  event SessionID not yet implemented
2021.03.10 19:16:51.126 5: UPNPController: Received event: by 192.168.4.33_44210-zs-SpeakerManagement original property: &lt;?xml version=&quot;1.0&quot; ?&gt;&lt;groups version=&quot;1.0&quot;&gt;&lt;group&gt;&lt;id&gt;4DAA44C0-8291-11E3-BAA7-0800200C9A66&lt;/id&gt;&lt;name&gt;Bluetooth&lt;/name&gt;&lt;/group&gt;&lt;/groups&gt;
2021.03.10 19:16:51.127 5: UPNPController: Received event: by 192.168.4.33_44210-zs-SpeakerManagement property: <?xml version="1.0" ?><groups version="1.0"><group><id>4DAA44C0-8291-11E3-BAA7-0800200C9A66</id><name>Bluetooth</name></group></groups>
2021.03.10 19:16:51.127 5: UPNPController: SYS_UPNP: event of service urn:schemas-upnp-org:metadata-1-0/RCS, message <?xml version="1.0" ?><groups version="1.0"><group><id>4DAA44C0-8291-11E3-BAA7-0800200C9A66</id><name>Bluetooth</name></group></groups>
2021.03.10 19:16:51.127 5: UPNPController: SYS_UPNP: event of service urn:schemas-upnp-org:metadata-1-0/AVT, message <?xml version="1.0" ?><groups version="1.0"><group><id>4DAA44C0-8291-11E3-BAA7-0800200C9A66</id><name>Bluetooth</name></group></groups>
2021.03.10 19:16:51.127 4: UPNPController: SYS_UPNP: service <?xml version="1.0" ?><groups version="1.0"><group><id>4DAA44C0-8291-11E3-BAA7-0800200C9A66</id><name>Bluetooth</name></group></groups> event Groups not yet implemented

http://192.168.4.30:33645/xml/SpeakerManagement.xml
<!-- ============================================================Title: UPnP SpeakerManagement Service TemplatePurpose:To identify the required/optional actions and state variablesand the required allowed values defined by this service type.This is a custom Pure Service designed to provide configurationmanagement options for Pure media renderer devices.Note:This file uses tabs (not spaces) for block indentation.Any updates to this file should maintain this convention.This includes disabling any automatic tab-to-space conversionfeature provided by your editor.================================================================ -->
<scpd xmlns="urn:schemas-upnp-org:service-1-0">
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<serviceStateTable>
<stateVariable sendEvents="no">
<name>MCSType</name>
<dataType>string</dataType>
<allowedValueList>
<allowedValue>STEREO</allowedValue>
<allowedValue>STANDALONE</allowedValue>
</allowedValueList>
</stateVariable>
<stateVariable sendEvents="no">
<name>MCSID</name>
<dataType>string</dataType>
</stateVariable>
<stateVariable sendEvents="no">
<name>MCSFriendlyName</name>
<dataType>string</dataType>
</stateVariable>
<stateVariable sendEvents="no">
<name>SpeakerChannel</name>
<dataType>string</dataType>
<allowedValueList>
<allowedValue>LEFT_FRONT</allowedValue>
<allowedValue>RIGHT_FRONT</allowedValue>
<allowedValue>STANDALONE_SPEAKER</allowedValue>
</allowedValueList>
</stateVariable>
<stateVariable sendEvents="no">
<name>SpeakerOrientation</name>
<dataType>string</dataType>
<allowedValueList>
<allowedValue>HORIZONTAL</allowedValue>
<allowedValue>VERTICAL</allowedValue>
</allowedValueList>
</stateVariable>
<stateVariable sendEvents="no">
<name>A_ARG_TYPE_GroupID</name>
<dataType>string</dataType>
</stateVariable>
<stateVariable sendEvents="no">
<name>A_ARG_TYPE_GroupName</name>
<dataType>string</dataType>
</stateVariable>
<stateVariable sendEvents="no">
<name>A_ARG_TYPE_GroupMetadata</name>
<dataType>string</dataType>
</stateVariable>
<stateVariable sendEvents="yes">
<name>Groups</name>
<dataType>string</dataType>
</stateVariable>
<stateVariable sendEvents="no">
<name>A_ARG_Type_IdentifyPattern</name>
<dataType>string</dataType>
<allowedValueList>
<allowedValue>DEFAULT</allowedValue>
</allowedValueList>
</stateVariable>
<stateVariable sendEvents="yes">
<name>SessionID</name>
<dataType>string</dataType>
</stateVariable>
</serviceStateTable>
<actionList>
<action>
<name>SetMultiChannelSpeaker</name>
<argumentList>
<argument>
<name>NewMCSType</name>
<direction>in</direction>
<relatedStateVariable>MCSType</relatedStateVariable>
</argument>
<argument>
<name>NewMCSID</name>
<direction>in</direction>
<relatedStateVariable>MCSID</relatedStateVariable>
</argument>
<argument>
<name>NewMCSFriendlyName</name>
<direction>in</direction>
<relatedStateVariable>MCSFriendlyName</relatedStateVariable>
</argument>
<argument>
<name>NewSpeakerChannel</name>
<direction>in</direction>
<relatedStateVariable>SpeakerChannel</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>GetMultiChannelSpeaker</name>
<argumentList>
<argument>
<name>CurrentMCSType</name>
<direction>out</direction>
<relatedStateVariable>MCSType</relatedStateVariable>
</argument>
<argument>
<name>CurrentMCSID</name>
<direction>out</direction>
<relatedStateVariable>MCSID</relatedStateVariable>
</argument>
<argument>
<name>CurrentMCSFriendlyName</name>
<direction>out</direction>
<relatedStateVariable>MCSFriendlyName</relatedStateVariable>
</argument>
<argument>
<name>CurrentSpeakerChannel</name>
<direction>out</direction>
<relatedStateVariable>SpeakerChannel</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>SetSpeakerOrientation</name>
<argumentList>
<argument>
<name>NewSpeakerOrientation</name>
<direction>in</direction>
<relatedStateVariable>SpeakerOrientation</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>GetSpeakerOrientation</name>
<argumentList>
<argument>
<name>CurrentSpeakerOrientation</name>
<direction>out</direction>
<relatedStateVariable>SpeakerOrientation</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>IdentifyMe</name>
<argumentList>
<argument>
<name>IdentifyPattern</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_Type_IdentifyPattern</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>AddToGroup</name>
<argumentList>
<argument>
<name>ID</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_GroupID</relatedStateVariable>
</argument>
<argument>
<name>Name</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_GroupName</relatedStateVariable>
</argument>
<argument>
<name>Metadata</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_GroupMetadata</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>RemoveFromGroup</name>
<argumentList>
<argument>
<name>ID</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_GroupID</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>GetGroups</name>
<argumentList>
<argument>
<name>CurrentGroups</name>
<direction>out</direction>
<relatedStateVariable>Groups</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>GetSession</name>
<argumentList>
<argument>
<name>SessionID</name>
<direction>out</direction>
<relatedStateVariable>SessionID</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>SetSession</name>
<argumentList>
<argument>
<name>SessionID</name>
<direction>in</direction>
<relatedStateVariable>SessionID</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>ClearSession</name>
<argumentList>
<argument>
<name>SessionID</name>
<direction>in</direction>
<relatedStateVariable>SessionID</relatedStateVariable>
</argument>
</argumentList>
</action>
</actionList>
</scpd>

<!-- ============================================================Title: UPnP Session Management Service TemplatePurpose:To identify the required/optional actions and state variablesand the required allowed values defined by this service type.This is a custom Pure Service designed to allow Control Pointsto create/destroy a session and to add/remove UPnP media renderers toand from a session.Note:This file uses tabs (not spaces) for block indentation.Any updates to this file should maintain this convention.This includes disabling any automatic tab-to-space conversionfeature provided by your editor.================================================================ -->
<scpd xmlns="urn:schemas-upnp-org:service-1-0">
<specVersion>
<major>1</major>
<minor>0</minor>
</specVersion>
<serviceStateTable>
<stateVariable sendEvents="yes">
<name>SessionID</name>
<dataType>string</dataType>
</stateVariable>
<stateVariable sendEvents="no">
<name>SessionMetadata</name>
<dataType>string</dataType>
</stateVariable>
<stateVariable sendEvents="no">
<name>A_ARG_TYPE_UUID</name>
<dataType>string</dataType>
</stateVariable>
</serviceStateTable>
<actionList>
<action>
<name>CreateSession</name>
<argumentList>
<argument>
<name>SessionID</name>
<direction>out</direction>
<relatedStateVariable>SessionID</relatedStateVariable>
</argument>
<argument>
<name>Metadata</name>
<direction>in</direction>
<relatedStateVariable>SessionMetadata</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>GetSession</name>
<argumentList>
<argument>
<name>SessionID</name>
<direction>out</direction>
<relatedStateVariable>SessionID</relatedStateVariable>
</argument>
<argument>
<name>Metadata</name>
<direction>out</direction>
<relatedStateVariable>SessionMetadata</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>DestroySession</name>
<argumentList>
<argument>
<name>SessionID</name>
<direction>in</direction>
<relatedStateVariable>SessionID</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>AddUnitToSession</name>
<argumentList>
<argument>
<name>SessionID</name>
<direction>in</direction>
<relatedStateVariable>SessionID</relatedStateVariable>
</argument>
<argument>
<name>UUID</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_UUID</relatedStateVariable>
</argument>
</argumentList>
</action>
<action>
<name>RemoveUnitFromSession</name>
<argumentList>
<argument>
<name>SessionID</name>
<direction>in</direction>
<relatedStateVariable>SessionID</relatedStateVariable>
</argument>
<argument>
<name>UUID</name>
<direction>in</direction>
<relatedStateVariable>A_ARG_TYPE_UUID</relatedStateVariable>
</argument>
</argumentList>
</action>
</actionList>
</scpd>
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 10 März 2021, 20:38:19
Hallo Michael,
danke und super. Damit kann ich was anfangen. In den nächsten Tagen bin ich mit Anpassung u. Trockentest durch und dann schauen wir(Du) mal. ;)
Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: eki am 11 März 2021, 20:43:15
Kannst Du das http://192.168.178.26:8080/dd.xml mal im Browser aufrufen und hier einstellen. Dann kann ich das vielleicht als weiteres reading in den UPNPController übernehmen.

<?xml version="1.0" encoding="utf-8"?>
<root xmlns="urn:schemas-upnp-org:device-1-0" xmlns:pnpx="http://schemas.microsoft.com/windows/pnpx/2005/11" xmlns:microsoft="urn:schemas-microsoft-com:WMPNSS-1-0" xmlns:fsns="urn:schemas-frontier-silicon-com:ir-1-0" xmlns:df="http://schemas.microsoft.com/windows/2008/09/devicefoundation">
   <specVersion>
      <major>1</major>
      <minor>0</minor>
   </specVersion>
   <device>
      <deviceType>urn:schemas-upnp-org:device:MediaRenderer:1</deviceType>
     
     
      <friendlyName>SIRD 14 C2</friendlyName>
      <manufacturer> </manufacturer>
      <manufacturerURL> </manufacturerURL>
      <modelDescription></modelDescription>
      <modelName>SIRD14C2</modelName>
      <modelNumber> </modelNumber>
      <modelURL> </modelURL>
      <serialNumber>0f080a032a191f2701010805ffff2fff</serialNumber>
      <UDN>uuid:3DCC7100-F76C-11DD-87AF-002261949F08</UDN>
      <iconList>
         <icon>
            <mimetype>image/png</mimetype>
            <width>48</width>
            <height>48</height>
            <depth>32</depth>
            <url>/icon.png</url>
         </icon>
         <icon>
            <mimetype>image/jpeg</mimetype>
            <width>48</width>
            <height>48</height>
            <depth>32</depth>
            <url>/icon.jpg</url>
         </icon>
         <icon>
            <mimetype>image/png</mimetype>
            <width>120</width>
            <height>120</height>
            <depth>32</depth>
            <url>/icon2.png</url>
         </icon>
         <icon>
            <mimetype>image/jpeg</mimetype>
            <width>120</width>
            <height>120</height>
            <depth>32</depth>
            <url>/icon2.jpg</url>
         </icon>
      </iconList>
  <serviceList>
    <service>
      <serviceType>urn:schemas-upnp-org:service:AVTransport:1</serviceType>
      <serviceId>urn:upnp-org:serviceId:AVTransport</serviceId>
      <SCPDURL>AVTransport/scpd.xml</SCPDURL>
      <controlURL>AVTransport/control</controlURL>
      <eventSubURL>AVTransport/event</eventSubURL>
    </service>
    <service>
      <serviceType>urn:schemas-upnp-org:service:ConnectionManager:1</serviceType>
      <serviceId>urn:upnp-org:serviceId:ConnectionManager</serviceId>
      <SCPDURL>ConnectionManager/scpd.xml</SCPDURL>
      <controlURL>ConnectionManager/control</controlURL>
      <eventSubURL>ConnectionManager/event</eventSubURL>
    </service>
    <service>
      <serviceType>urn:schemas-upnp-org:service:RenderingControl:1</serviceType>
      <serviceId>urn:upnp-org:serviceId:RenderingControl</serviceId>
      <SCPDURL>RenderingControl/scpd.xml</SCPDURL>
      <controlURL>RenderingControl/control</controlURL>
      <eventSubURL>RenderingControl/event</eventSubURL>
    </service>
  </serviceList>
  <presentationURL>/web</presentationURL>
  <dlna:X_DLNADOC xmlns:dlna="urn:schemas-dlna-org:device-1-0">DMR-1.50</dlna:X_DLNADOC>
<pnpx:X_hardwareId>VEN_2A2D&amp;DEV_0001&amp;SUBSYS_0001&amp;REV_01 VEN_0033&amp;DEV_0006&amp;REV_01</pnpx:X_hardwareId>
<pnpx:X_compatibleId>MS_DigitalMediaDeviceClass_DMR_V001</pnpx:X_compatibleId>
<pnpx:X_deviceCategory>MediaDevices</pnpx:X_deviceCategory>
<df:X_deviceCategory>Multimedia.DMR</df:X_deviceCategory>
<microsoft:magicPacketWakeSupported>0</microsoft:magicPacketWakeSupported>
<microsoft:magicPacketSendSupported>1</microsoft:magicPacketSendSupported>
<fsns:X_audSyncProtocolID>4</fsns:X_audSyncProtocolID>
<fsns:X_Features>Spotify, AudioSync, DAB, FM, IR, Aux-In, Media, DMR</fsns:X_Features>
</device></root>
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 13 März 2021, 08:56:40
Hallo zusammen,

in den ersten Posts die neuen Versionen. Da UPNP- u. DLNAController voneinander abhängen immer beide Module aktualisieren.

@Michael: nun bin ich gespannt, was die Teufels 4 peaq MUNET PMN300 so hergeben. Bitte führe Tests möglichst mit verbose=4 beim UPNPController u. verbose=5 bei wenigstens einem Teufel DLNAController device durch.(Dein Problem vor Jahren mit den renewalZeiten beim DLNARenderer ist nun auch gelöst  ;))

@Eki/Dieter: Kann bitte der Erste von Euch beiden einen neuen Thread mit den Testergebnissen zu den "Vestels" eröffnen, da die Analyse sonst hier den "Rahmen"(grundsätzliche Funktionalität) sprengt.
Für die ersten Tests ist mir der subscription-/event-Prozess wichtig. Daher bitte verbose=5 beim UPNPController und beim UPNPSocket-UPNP_Controller-xy im room hidden(xy ungleich 1900). Rege Fb-Aktivität(on,off,volume,mute) erwünscht. ;)

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Windows Mediaplayer special
Beitrag von: KölnSolar am 13 März 2021, 09:21:13
Hallo zusammen

bei meinen Tests hab ich ne Menge mit WindowsMediaplayer auf 3 PCs "rumgespielt, mir ist wieder bewusst geworden, wie gut sich der Mediaplayer nutzen lässt, um UPnP/DLNA allgemein und in FHEM etwas besser zu verstehen.

Ebenso ist er mit der Option: "Wiedergabe auf Gerät" ein gutes Diagnoseinstrument, um festzustellen, welche Eigenschaften/Funktionen ein bisher unbekanntes, noch nicht erforschtes physisches rendering device hat bzw. um Fehler eines Renderers/Players(z.B. TV) zu analysieren.


Der Mediaplayer ist UPnP(eher das subset DLNA) Controller, Player/Renderer u. Server zugleich.

Um den Mediaplayer als Medienserver zu nutzen, muss man im Netzwerk- u. Freigabecenter die Option "Medienstreamingoptionen" aktivieren. Er meldet sich dann im FHEM-UPNPController grundsätzlich immer als UPnP-device "Windows Media Player Sharing", ohne dass er in Windows aufgerufen wurde, mit den Services ConnectionManager, ContentDirectory u. X_MS_MediaReceiverRegistrar u. Port 2869. Friendly Name ist der Computername:Medienbibliotheksname(jeder Windows-User hat seine eigene Bibliotek). Wenn mehrere User einen PC mit Medienstreamingoption nutzen, gibt es auch mehrere Einträge("devices") im UPNPController-device. Für FHEM gibt es derzeit noch kein logisches Modul, um die Serverfunktionalität konkret zu nutzen.

Ruft man den Mediaplayer auf, so werden die Services eines Players/Renderers als weitere device-readings "Windows Media Player" im UPNPController-device angelegt : AVTransport, RenderingControl u. ConnectionManager. Über diese Services wird auch bei aktiviertem autocreate ein DLNA-device des Type DLNAController in FHEM angelegt. Ohne weiteres zutun ist das device nur ein "Status-device".

In Windows kennt der Player die Option:  "Remotesteuerung des Players zulassen" unter dem Menüpunkt "Streamen". Die Bedeutung ist:
ausgeschaltet - kein service AVTransport verfüg-/subscribebar; actions für den service RenderingControl nicht möglich(Log: UPNPController: RenderingControl, SetVolume(0,Master,20) does not exist.)
                       der friendly name ist der Computername
eingeschaltet - RenderingControl u. AVTransport sind verfüg-/subscribebar; events werden nach FHEM übertragen; der Mediaplayer lässt sich per FHEM DLNAController-device steuern
                      der friendly name ändert sich auf Username(Computername:Windows Media Player)

Echt ne feine Sache. Dadurch lassen sich also Sprachnachrichten(speak), Bildnachrichten .....auf jeden Windows-PC streamen. Schönes feature für den Sommer, wenn man mit PC im Garten sitzt oder einen Mitbewohner informieren möchte.... Über FHEM lassen sich per DLNAController(alte Version: DLNARenderer) also die streams(speak, Bilder...) wie schon auf TVs gewohnt automatisch ausführen.

Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: RockFan am 14 März 2021, 12:24:27
@Eki/Dieter: Kann bitte der Erste von Euch beiden einen neuen Thread mit den Testergebnissen zu den "Vestels" eröffnen, da die Analyse sonst hier den "Rahmen"(grundsätzliche Funktionalität) sprengt.
Für die ersten Tests ist mir der subscription-/event-Prozess wichtig. Daher bitte verbose=5 beim UPNPController und beim UPNPSocket-UPNP_Controller-xy im room hidden(xy ungleich 1900). Rege Fb-Aktivität(on,off,volume,mute) erwünscht. ;)

Wie gewünscht: https://forum.fhem.de/index.php/topic,119546.0.html (https://forum.fhem.de/index.php/topic,119546.0.html)  :)
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 17 März 2021, 09:16:18
Keiner Lust Multiroom zu testen ?  :(

Jens, wie siehts mit den Teufeln aus ?

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 17 März 2021, 10:24:49
Hallo Markus,

Zitat
Jens, wie siehts mit den Teufeln aus ?

kann leider erst wieder am Wochenende testen.

Habe letztes Wochenende die neue Version nur mal kurz angetestet, über die Raumfeld-App Multiroom eingerichtet aus Küche und Schlafzimmer wird dann Küche, Schlafzimmer und Schlafzimmer geht offline.
Über die App läßt sich dann immer noch für jeden Raum die Lautstärke seperat steuern, was über das Modul (noch) nicht geht.
Bei den x-mal Anlegen der Controller-Module tauchte mein Linux-mini-DLNA-Server im UPnP_Controller nur ein einziges Mal auf.

vG Jens

P.S.: gibt im Netz ja einige Lösungen für die Teufel, https://github.com/dennis-hh/node-raumfeld, https://github.com/RandomMetalhead/homebridge-teufel
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 17 März 2021, 11:18:23
Hi Jens,
Zitat
Linux-mini-DLNA-Server
Ja, der meldet sich nie selbstständig(vielleicht beim start ?  :-\) Man muss ihn immer mit set UPNPController searchterm upnp:rootdevice animieren. Dann meldet er sich auch.

Zitat
für jeden Raum die Lautstärke seperat steuern, was über das Modul (noch) nicht geht.
Nicht ? Geht das mit dem DLNARenderer ? Mit der Info weiß ich dann immer, ob es sich um ein neues feature handelt oder meinen Fehler bei der Umsetzung der DLNARenderer-features.

Danke für die Links. Die helfen sicherlich beim analysieren. Hast Du davon was installiert ?

Nachdem ich dank des UPNP-Controller-Moduls die ganzen Server sehe, frage ich mich immer, was und wie man da etwas mit machen könnte. Letztendlich bieten die immer den service ContentDirectory mit den actions browsing u. search an. Browsing scheint mir für FHEM overkilled, bei search fehlt mir der Ansatz, was man denn sinnvoll suchen und dann auch abspielen möchte. Liegt sicherlich daran, dass ich jetzt nicht gerade der Mensch bin, der seine Mediendevices(eigentlich nur die TVs) mit Konserven füttern will. Lange Rede kurzer Sinn: Mir fehlt der use case.

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: MichaelT am 18 März 2021, 18:26:27
Keiner Lust Multiroom zu testen ?  :(

Jens, wie siehts mit den Teufeln aus ?

Grüße Markus

Hallo Markus,

doch, doch. Jetzt am Wochenende gehe ich dran. Bin aktuell ziemlich eingespannt, so dass das Hobby zu kurz kommt.

Gruß Michael
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: MichaelT am 20 März 2021, 11:58:57
Morgen Markus,

habe die neuen Module in Verwendung.
Musste ein paar Änderungen machen, dann lief es.
- Zeile 364 habe ich auskommentiert, da sonst multiRoomSupport immer wieder zurück gesetzt wurde.
- "SessionID" muss es heißen.
- bei readingsSingleUpdateIfChanged hast du dich verschrieben.
- bei addUnit habe ich "multiRoomUnits" erweitert.
- btCaskeid habe ich so nicht in Verwendung, ggf. schau ich mir das aber auch noch an.

ABER, ansonsten hast du alles am Laufen bekommen. Sieht gut aus, danke.
-- playEverwhere funktioniert, alle PMN300 mit gesetztem multiRoomSupport werden gefunden spielen den gleichen Stream
-- stopPlayEverywhere stoppt alle und setzt multiRoomUnits auf ""
-- add + removeUnit funktionieren
---- bei der "removeten" Unit läuft der stream weiter, ist aber aus "multiRoomUnits" entfernt.
-- multiRoomVolume setzen geht nicht:
--- Undefined subroutine &main::DLNAController_getHashByFriendlyName called at ./FHEM/98_DLNAController.pm line 1019.

Wenn ich noch testen soll, bitte melden.
Gruß Michael.

EDIT:
Ist mir noch aufgefallen:
-- Gefühlt muss ich nach jedem Neustart fhem einmal ein modify am DLNAController machen, damit die set-ComboBox wieder korrekt gefüllt ist.
-- das "transportState" z.B. wird nicht richtig "geupdated". Wenn ich STOP mache, wird der stream gestoppt. Das Reading wird aber erst nach einem Refresh im Browser aktualisiert.


364c364
<       #readingsBulkUpdateIfChanged($hash,"multiRoomSupport","0",1); # initialize multiroomsupport with 0, will be changed after receiving SessionID-event
---
>       readingsBulkUpdateIfChanged($hash,"multiRoomSupport","0",1); # initialize multiroomsupport with 0, will be changed after receiving SessionId-event
779c779
<   } elsif($property eq "SessionID") {                                          # SpeakerManagement and SessionManagement  (property = SessionID")
---
>   } elsif($property eq "SessionId") {                                          # SpeakerManagement and SessionManagement  (property = SessionId")
782d781
<       Log3 $hash, 5, "DLNAController: multiRoomSupport --> 1";
784c783
<        DLNAController_readingsSingleUpdateIfChanged($hash,"multiRoomSupport","1",1);
---
>        readingsSingleUpdateIfChanged($hash,"multiRoomSupport","1",1);
795c794
<       DLNAController_readingsSingleUpdateIfChanged($hash, "sessionId", $xml, 1);
---
>       readingsSingleUpdateIfChanged($hash, "sessionId", $xml, 1);
798d796
<       Log3 $hash, 5, "DLNAController: groups";
807c805
<     DLNAController_readingsSingleUpdateIfChanged($hash, "btCaskeid", $btCaskeidState, 1);
---
>     readingsSingleUpdateIfChanged($hash, "btCaskeid", $btCaskeidState, 1);
1354,1357d1351
<       my $multiRoomUnits = ReadingsVal($hash->{NAME}, "multiRoomUnits", "");
<       $multiRoomUnits .= "," if($multiRoomUnits ne "");
<       $multiRoomUnits .= ReadingsVal($client->{NAME}, "friendlyName", "");
<       readingsSingleUpdate($hash, "multiRoomUnits", $multiRoomUnits, 1);

Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 20 März 2021, 16:43:51
Hi Michael,
prima. Danke.

Zitat
bei addUnit habe ich "multiRoomUnits" erweitert.
Sicher, dass das richtig ist ?  :-\

Zitat
bei der "removeten" Unit läuft der stream weiter, ist aber aus "multiRoomUnits" entfernt.

Zitat
-- multiRoomVolume setzen geht nicht:
--- Undefined subroutine &main::DLNAController_getHashByFriendlyName called at ./FHEM/98_DLNAController.pm line 1019.
Ok. Mir wird bei der "Gruppengeschichte" klar, dass wir ja "früher" ein master device hatten. Wäre jetzt der UPNPController. Muss ich mal drüber schlafen....

Zitat
-- Gefühlt muss ich nach jedem Neustart fhem einmal ein modify am DLNAController machen, damit die set-ComboBox wieder korrekt gefüllt ist.
So wird es sein. Sicherlich etwas, was ich bereits in meiner inoffiziellen Version(vs. offizielle Version, wo jedes device alle Befehle hat) falsch hatte.

Zitat
-- das "transportState" z.B. wird nicht richtig "geupdated". Wenn ich STOP mache, wird der stream gestoppt. Das Reading wird aber erst nach einem Refresh im Browser aktualisiert.
Komisch. Bei mir ist es richtig.

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 20 März 2021, 19:40:23
Hallo Markus,

anbei mal das Log-File beim Zusammenschalten der Räume

2021.03.20 19:00:57 4: UPNPController: try to renew subscriptions for services, device UPNP_Controller with timeout: 1800
2021.03.20 19:01:14 4: UPNPController: discovery message of Kueche with UDN: uuid:7ea9831f-2ecd-4bb2-91e4-3374f500c594 action: deviceRemoved
2021.03.20 19:01:14 4: DLNAController: message parameters: RenderingControl, Küche_50271, offline, urn:schemas-upnp-org:metadata-1-0/RCS
2021.03.20 19:01:14 5: DLNAController: DLNA_7ea9831f_2ecd_4bb2_91e4_3374f500c594, Küche_50271, RenderingControl, subscribe
2021.03.20 19:01:14 3: UPNPController: start searching by type with search term: upnp:rootdevice
2021.03.20 19:01:14 5: DLNAController: DLNA_7ea9831f_2ecd_4bb2_91e4_3374f500c594, Küche_50271, AVTransport, subscribe
2021.03.20 19:01:14 3: UPNPController: start searching by type with search term: upnp:rootdevice
2021.03.20 19:01:14 5: DLNAController: DLNA_7ea9831f_2ecd_4bb2_91e4_3374f500c594, Küche_50271, SpeakerManagement, subscribe
2021.03.20 19:01:14 4: UPNPController: SpeakerManagement unknown for UPNP_Controller.
2021.03.20 19:01:14 4: UPNPController: UPNP_Controller, iowrite message received, but service SpeakerManagement not implemented
2021.03.20 19:01:14 5: DLNAController: DLNA_7ea9831f_2ecd_4bb2_91e4_3374f500c594, Küche_50271, SessionManagement, subscribe
2021.03.20 19:01:14 4: UPNPController: SessionManagement unknown for UPNP_Controller.
2021.03.20 19:01:14 4: UPNPController: UPNP_Controller, iowrite message received, but service SessionManagement not implemented
2021.03.20 19:01:14 3: DLNAController: DLNA_7ea9831f_2ecd_4bb2_91e4_3374f500c594 address changed; services initially subscribed
2021.03.20 19:01:14 4: DLNAController DLNA_7ea9831f_2ecd_4bb2_91e4_3374f500c594: state update from UPNP_Controller, address Küche_50271
2021.03.20 19:01:14 4: UPNPController: discovery message of HomeCloud with UDN: uuid:4d696e69-444c-164e-9d41-001e0630cea1 action: deviceAdded
2021.03.20 19:01:14 4: UPNPController: discovery message of Schlafzimmer  with UDN: uuid:99b018ad-b5a1-42c2-93ef-156a6a0c5597 action: deviceRemoved
2021.03.20 19:01:14 4: DLNAController: message parameters: AVTransport, Küche_58748, offline, urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.20 19:01:14 3: UPNPController: start searching by type with search term: upnp:rootdevice
2021.03.20 19:01:14 3: UPNPController: start searching by type with search term: upnp:rootdevice
2021.03.20 19:01:14 4: UPNPController: SpeakerManagement unknown for UPNP_Controller.
2021.03.20 19:01:14 4: UPNPController: UPNP_Controller, iowrite message received, but service SpeakerManagement not implemented
2021.03.20 19:01:14 4: UPNPController: SessionManagement unknown for UPNP_Controller.
2021.03.20 19:01:14 4: UPNPController: UPNP_Controller, iowrite message received, but service SessionManagement not implemented
2021.03.20 19:01:14 4: DLNAController: message parameters: AVTransport, Schlafzimmer_rechts_51318, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURIMetaData val=""/><CurrentTrackDuration val="NOT_IMPLEMENTED"/><AVTransportURI val=""/><TransportState val="NO_MEDIA_PRESENT"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.20 19:01:14 4: DLNAController: message parameters: AVTransport, Schlafzimmer_links_56470, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURIMetaData val=""/><CurrentTrackDuration val="NOT_IMPLEMENTED"/><AVTransportURI val=""/><TransportState val="NO_MEDIA_PRESENT"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.20 19:01:14 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURIMetaData val=""/><CurrentTrackDuration val="NOT_IMPLEMENTED"/><AVTransportURI val=""/><TransportState val="NO_MEDIA_PRESENT"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.20 19:01:14 4: DLNAController: Update reading transportState with NO_MEDIA_PRESENT
2021.03.20 19:01:14 4: DLNAController: Update reading CurrentTrackDuration with NOT_IMPLEMENTED
2021.03.20 19:01:14 4: DLNAController: Update reading CurrentTransportActions with
2021.03.20 19:01:14 4: DLNAController DLNA_fedf2043_eac0_49e1_82ed_6ac78b34f79d: state update from UPNP_Controller, address Schlafzimmer_links_56470
2021.03.20 19:01:14 4: DLNAController: message parameters: AVTransport, Küche_50448, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURIMetaData val=""/><CurrentTrackDuration val="NOT_IMPLEMENTED"/><AVTransportURI val=""/><TransportState val="NO_MEDIA_PRESENT"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.20 19:01:14 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURIMetaData val=""/><CurrentTrackDuration val="NOT_IMPLEMENTED"/><AVTransportURI val=""/><TransportState val="NO_MEDIA_PRESENT"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.20 19:01:14 4: DLNAController: Update reading transportState with NO_MEDIA_PRESENT
2021.03.20 19:01:14 4: DLNAController: Update reading CurrentTrackDuration with NOT_IMPLEMENTED
2021.03.20 19:01:14 4: DLNAController: Update reading CurrentTransportActions with
2021.03.20 19:01:14 4: DLNAController DLNA_f9e8fd48_3e69_4b28_b388_d92cbcef7d80: state update from UPNP_Controller, address Küche_50448
2021.03.20 19:01:15 4: UPNPController: discovery message of Kueche,Schlafzimmer  with UDN: uuid:073be839-cbc2-4ea4-a33a-0b12982856ee action: deviceAdded
2021.03.20 19:01:15 4: DLNAController: message parameters: AVTransport, Küche_51438, online, urn:schemas-upnp-org:metadata-1-0/AVT
2021.03.20 19:01:15 4: UPNPController: subscribe: reading  Küche_51438-zs-RenderingControl, uniquedevice Küche_51438, service RenderingControl
2021.03.20 19:01:15 4: UPNPController: subscribe: reading  Küche_51438-zs-AVTransport, uniquedevice Küche_51438, service AVTransport
2021.03.20 19:01:15 4: UPNPController: SpeakerManagement unknown for UPNP_Controller.
2021.03.20 19:01:15 4: UPNPController: UPNP_Controller, iowrite message received, but service SpeakerManagement not implemented
2021.03.20 19:01:15 4: UPNPController: SessionManagement unknown for UPNP_Controller.
2021.03.20 19:01:15 4: UPNPController: UPNP_Controller, iowrite message received, but service SessionManagement not implemented
2021.03.20 19:01:15 4: DLNAController: message parameters: RenderingControl, Küche_51438, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/RCS/"><InstanceID val="0"><RoomVolumes val="uuid:e8894806-18e2-4d43-a29e-ad369eb917bd=32,uuid:1dad2541-290d-4117-8bf0-c1884f2ebccd=30"/><Volume channel="Master" val="32"/><Mute channel="Master" val="0"/><RoomMutes val="uuid:e8894806-18e2-4d43-a29e-ad369eb917bd=0,uuid:1dad2541-290d-4117-8bf0-c1884f2ebccd=0"/></InstanceID></Event>
2021.03.20 19:01:15 4: DLNAController: message parameters: AVTransport, Küche_51438, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><AbsoluteTimePosition val="00:00:00"/><SecondsUntilSleep val="0"/><CurrentTrack val="1"/><AVTransportURIMetaData val="<?xml version="1.0"?>
<DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:raumfeld="urn:schemas-raumfeld-com:meta-data/raumfeld" xmlns:pv="http://www.pv.com/pvns/"><item parentID="0/Favorites/MyFavorites" restricted="1" refID="0/RadioTime/Search/s-s228737" id="0/Favorites/MyFavorites/14"><upnp:class>object.item.audioItem.audioBroadcast.radio</upnp:class><raumfeld:ebrowse>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&amp;formats=mp3%2Cogg&amp;serial=50%3A1e%3A2d%3A11%3A3e%3A30&amp;id=s228737&amp;c=ebrowse</raumfeld:ebrowse><raumfeld:section>RadioTime</raumfeld:section><dc:title>NDR 2</dc:title><upnp:albumArtURI>http://cdn-profiles.tunein.com/s228737/images/logoq.png?t=154228</upnp:albumArtURI><raumfeld:durability>120</raumfeld:durability><raumfeld:name>Station</raumfeld:name><raumfeld:durability>120</raumfeld:durability></item></DIDL-Lite>
"/><PossiblePlaybackStorageMedia val="NETWORK"/><TransportPlaySpeed val="1"/><CurrentTrackDuration val="00:00:00"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><Bitrate val="0"/><PossibleRecordStorageMedia val="NONE"/><AVTransportURI val="dlna-playsingle://uuid%3Aeb57db8a-b475-4e3f-879b-1f8d314e1401?sid=urn%3Aupnp-org%3AserviceId%3AContentDirectory&iid=0%2FFavorites%2FMyFavorites%2F14"/><RelativeTimePosition val="00:00:00"/><RelativeCounterPosition val="1"/><CurrentPlayMode val="NORMAL"/><TransportState val="TRANSITIONING"/><AbsoluteCounterPosition val="1"/><CurrentTransportActions val=""/><RoomStates val="uuid:e8894806-18e2-4d43-a29e-ad369eb917bd=STOPPED,uuid:1dad2541-290d-4117-8bf0-c1884f2ebccd=STOPPED"/><ContentType val=""/><NumberOfTracks val="1"/><SleepTimerActive val="0"/><TransportStatus val="OK"/></InstanceID></Event>
2021.03.20 19:01:15 4: DLNAController: message parameters: AVTransport, Küche_51438, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><CurrentTrackMetaData val="<?xml version="1.0"?>
<DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:raumfeld="urn:schemas-raumfeld-com:meta-data/raumfeld" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:pv="http://www.pv.com/pvns/" lang="en"><item parentID="0/Favorites/MyFavorites" id="0/Favorites/MyFavorites/14" restricted="1" refID="0/RadioTime/Search/s-s228737"><raumfeld:name>Station</raumfeld:name><upnp:class>object.item.audioItem.audioBroadcast.radio</upnp:class><raumfeld:section>RadioTime</raumfeld:section><raumfeld:durability>120</raumfeld:durability><raumfeld:ebrowse>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&amp;formats=mp3%2Cogg&amp;serial=50%3A1e%3A2d%3A11%3A3e%3A30&amp;id=s228737&amp;c=ebrowse</raumfeld:ebrowse><dc:title>NDR 2</dc:title><upnp:albumArtURI dlna:profileID="JPEG_TN">http://cdn-profiles.tunein.com/s228737/images/logoq.png?t=154228</upnp:albumArtURI><res bitrate="128" protocolInfo="http-get:*:audio/x-mpegurl:*">http://opml.radiotime.com/Tune.ashx?id=e89247640&amp;sid=s228737&amp;formats=mp3,ogg&amp;partnerId=7aJ9pvV5&amp;serial=50:1e:2d:11:3e:30</res></item></DIDL-Lite>
"/></InstanceID></Event>
2021.03.20 19:01:16 4: DLNAController: message parameters: AVTransport, Küche_51438, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><CurrentTrackURI val="http://addrad.io/4WRJh9"/></InstanceID></Event>
2021.03.20 19:01:16 4: DLNAController: message parameters: AVTransport, Schlafzimmer_rechts_51318, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURIMetaData val="<?xml version="1.0"?>
<DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:raumfeld="urn:schemas-raumfeld-com:meta-data/raumfeld" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:pv="http://www.pv.com/pvns/" lang="en"><item parentID="0/Favorites/MyFavorites" id="0/Favorites/MyFavorites/14" restricted="1" refID="0/RadioTime/Search/s-s228737"><raumfeld:name>Station</raumfeld:name><upnp:class>object.item.audioItem.audioBroadcast.radio</upnp:class><raumfeld:section>RadioTime</raumfeld:section><raumfeld:durability>120</raumfeld:durability><raumfeld:ebrowse>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&amp;formats=mp3%2Cogg&amp;serial=50%3A1e%3A2d%3A11%3A3e%3A30&amp;id=s228737&amp;c=ebrowse</raumfeld:ebrowse><dc:title>NDR 2</dc:title><upnp:albumArtURI dlna:profileID="JPEG_TN">http://cdn-profiles.tunein.com/s228737/images/logoq.png?t=154228</upnp:albumArtURI></item></DIDL-Lite>
"/><CurrentTrackDuration val="0:00:00"/><AVTransportURI val="http://Küche:49520/073be839-cbc2-4ea4-a33a-0b12982856ee/1dad2541-290d-4117-8bf0-c1884f2ebccd/df6f32d1-1569-465b-8329-a14b6c788fa5/19e2c7b72dbcfe069a6a6b9bec2e6c61--1224329909-0"/><TransportState val="TRANSITIONING"/><CurrentTransportActions val="Stop"/></InstanceID></Event>
2021.03.20 19:01:16 4: DLNAController: message parameters: AVTransport, Schlafzimmer_links_56470, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURIMetaData val="<?xml version="1.0"?>
<DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:raumfeld="urn:schemas-raumfeld-com:meta-data/raumfeld" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:pv="http://www.pv.com/pvns/" lang="en"><item parentID="0/Favorites/MyFavorites" id="0/Favorites/MyFavorites/14" restricted="1" refID="0/RadioTime/Search/s-s228737"><raumfeld:name>Station</raumfeld:name><upnp:class>object.item.audioItem.audioBroadcast.radio</upnp:class><raumfeld:section>RadioTime</raumfeld:section><raumfeld:durability>120</raumfeld:durability><raumfeld:ebrowse>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&amp;formats=mp3%2Cogg&amp;serial=50%3A1e%3A2d%3A11%3A3e%3A30&amp;id=s228737&amp;c=ebrowse</raumfeld:ebrowse><dc:title>NDR 2</dc:title><upnp:albumArtURI dlna:profileID="JPEG_TN">http://cdn-profiles.tunein.com/s228737/images/logoq.png?t=154228</upnp:albumArtURI></item></DIDL-Lite>
"/><CurrentTrackDuration val="0:00:00"/><AVTransportURI val="http://Küche:49520/073be839-cbc2-4ea4-a33a-0b12982856ee/1dad2541-290d-4117-8bf0-c1884f2ebccd/fedf2043-eac0-49e1-82ed-6ac78b34f79d/19e2c7b72dbcfe069a6a6b9bec2e6c61--1224329909-0"/><TransportState val="TRANSITIONING"/><CurrentTransportActions val="Stop"/></InstanceID></Event>
2021.03.20 19:01:16 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURIMetaData val="<?xml version="1.0"?>
<DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:raumfeld="urn:schemas-raumfeld-com:meta-data/raumfeld" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:pv="http://www.pv.com/pvns/" lang="en"><item parentID="0/Favorites/MyFavorites" id="0/Favorites/MyFavorites/14" restricted="1" refID="0/RadioTime/Search/s-s228737"><raumfeld:name>Station</raumfeld:name><upnp:class>object.item.audioItem.audioBroadcast.radio</upnp:class><raumfeld:section>RadioTime</raumfeld:section><raumfeld:durability>120</raumfeld:durability><raumfeld:ebrowse>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&amp;formats=mp3%2Cogg&amp;serial=50%3A1e%3A2d%3A11%3A3e%3A30&amp;id=s228737&amp;c=ebrowse</raumfeld:ebrowse><dc:title>NDR 2</dc:title><upnp:albumArtURI dlna:profileID="JPEG_TN">http://cdn-profiles.tunein.com/s228737/images/logoq.png?t=154228</upnp:albumArtURI></item></DIDL-Lite>
"/><CurrentTrackDuration val="0:00:00"/><AVTransportURI val="http://Küche:49520/073be839-cbc2-4ea4-a33a-0b12982856ee/1dad2541-290d-4117-8bf0-c1884f2ebccd/fedf2043-eac0-49e1-82ed-6ac78b34f79d/19e2c7b72dbcfe069a6a6b9bec2e6c61--1224329909-0"/><TransportState val="TRANSITIONING"/><CurrentTransportActions val="Stop"/></InstanceID></Event>
2021.03.20 19:01:16 4: DLNAController: Update reading transportState with TRANSITIONING
2021.03.20 19:01:16 4: DLNAController: Update reading CurrentTrackDuration with 0:00:00
2021.03.20 19:01:16 4: DLNAController: Update reading CurrentTransportActions with Stop
2021.03.20 19:01:16 4: DLNAController DLNA_fedf2043_eac0_49e1_82ed_6ac78b34f79d: state update from UPNP_Controller, address Schlafzimmer_links_56470
2021.03.20 19:01:16 4: DLNAController: message parameters: AVTransport, Küche_50448, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURIMetaData val="<?xml version="1.0"?>
<DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:raumfeld="urn:schemas-raumfeld-com:meta-data/raumfeld" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:pv="http://www.pv.com/pvns/" lang="en"><item parentID="0/Favorites/MyFavorites" id="0/Favorites/MyFavorites/14" restricted="1" refID="0/RadioTime/Search/s-s228737"><raumfeld:name>Station</raumfeld:name><upnp:class>object.item.audioItem.audioBroadcast.radio</upnp:class><raumfeld:section>RadioTime</raumfeld:section><raumfeld:durability>120</raumfeld:durability><raumfeld:ebrowse>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&amp;formats=mp3%2Cogg&amp;serial=50%3A1e%3A2d%3A11%3A3e%3A30&amp;id=s228737&amp;c=ebrowse</raumfeld:ebrowse><dc:title>NDR 2</dc:title><upnp:albumArtURI dlna:profileID="JPEG_TN">http://cdn-profiles.tunein.com/s228737/images/logoq.png?t=154228</upnp:albumArtURI></item></DIDL-Lite>
"/><CurrentTrackDuration val="0:00:00"/><AVTransportURI val="http://Küche:49520/073be839-cbc2-4ea4-a33a-0b12982856ee/e8894806-18e2-4d43-a29e-ad369eb917bd/f9e8fd48-3e69-4b28-b388-d92cbcef7d80/19e2c7b72dbcfe069a6a6b9bec2e6c61--1224329909-0"/><TransportState val="TRANSITIONING"/><CurrentTransportActions val="Stop"/></InstanceID></Event>
2021.03.20 19:01:16 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURIMetaData val="<?xml version="1.0"?>
<DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:raumfeld="urn:schemas-raumfeld-com:meta-data/raumfeld" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:pv="http://www.pv.com/pvns/" lang="en"><item parentID="0/Favorites/MyFavorites" id="0/Favorites/MyFavorites/14" restricted="1" refID="0/RadioTime/Search/s-s228737"><raumfeld:name>Station</raumfeld:name><upnp:class>object.item.audioItem.audioBroadcast.radio</upnp:class><raumfeld:section>RadioTime</raumfeld:section><raumfeld:durability>120</raumfeld:durability><raumfeld:ebrowse>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&amp;formats=mp3%2Cogg&amp;serial=50%3A1e%3A2d%3A11%3A3e%3A30&amp;id=s228737&amp;c=ebrowse</raumfeld:ebrowse><dc:title>NDR 2</dc:title><upnp:albumArtURI dlna:profileID="JPEG_TN">http://cdn-profiles.tunein.com/s228737/images/logoq.png?t=154228</upnp:albumArtURI></item></DIDL-Lite>
"/><CurrentTrackDuration val="0:00:00"/><AVTransportURI val="http://Küche:49520/073be839-cbc2-4ea4-a33a-0b12982856ee/e8894806-18e2-4d43-a29e-ad369eb917bd/f9e8fd48-3e69-4b28-b388-d92cbcef7d80/19e2c7b72dbcfe069a6a6b9bec2e6c61--1224329909-0"/><TransportState val="TRANSITIONING"/><CurrentTransportActions val="Stop"/></InstanceID></Event>
2021.03.20 19:01:16 4: DLNAController: Update reading transportState with TRANSITIONING
2021.03.20 19:01:16 4: DLNAController: Update reading CurrentTrackDuration with 0:00:00
2021.03.20 19:01:16 4: DLNAController: Update reading CurrentTransportActions with Stop
2021.03.20 19:01:16 4: DLNAController DLNA_f9e8fd48_3e69_4b28_b388_d92cbcef7d80: state update from UPNP_Controller, address Küche_50448
2021.03.20 19:01:16 4: DLNAController: message parameters: AVTransport, Küche_51438, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><ContentType val="MP3"/><CurrentTrackMetaData val="<?xml version="1.0"?>
<DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:raumfeld="urn:schemas-raumfeld-com:meta-data/raumfeld" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:pv="http://www.pv.com/pvns/" lang="en"><item parentID="0/Favorites/MyFavorites" id="0/Favorites/MyFavorites/14" restricted="1" refID="0/RadioTime/Search/s-s228737"><raumfeld:name>Station</raumfeld:name><upnp:class>object.item.audioItem.audioBroadcast.radio</upnp:class><raumfeld:section>RadioTime</raumfeld:section><raumfeld:durability>120</raumfeld:durability><raumfeld:ebrowse>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&amp;formats=mp3%2Cogg&amp;serial=50%3A1e%3A2d%3A11%3A3e%3A30&amp;id=s228737&amp;c=ebrowse</raumfeld:ebrowse><dc:title>NDR 2 - NDR 2 - ndr.de/ndr2</dc:title><upnp:albumArtURI dlna:profileID="JPEG_TN">http://cdn-profiles.tunein.com/s228737/images/logoq.png?t=154228</upnp:albumArtURI><res bitrate="128" protocolInfo="http-get:*:audio/x-mpegurl:*">http://opml.radiotime.com/Tune.ashx?id=e89247640&amp;sid=s228737&amp;formats=mp3,ogg&amp;partnerId=7aJ9pvV5&amp;serial=50:1e:2d:11:3e:30</res></item></DIDL-Lite>
"/><Bitrate val="128"/><RoomStates val="uuid:e8894806-18e2-4d43-a29e-ad369eb917bd=TRANSITIONING,uuid:1dad2541-290d-4117-8bf0-c1884f2ebccd=TRANSITIONING"/></InstanceID></Event>
2021.03.20 19:01:17 4: UPNPController: UPNP_Controller: uniqueDeviceName Schlafzimmer_rechts_51318 event BufferFilled not yet implemented
2021.03.20 19:01:17 4: UPNPController: UPNP_Controller: uniqueDeviceName Küche_50448 event BufferFilled not yet implemented
2021.03.20 19:01:17 4: UPNPController: UPNP_Controller: uniqueDeviceName Schlafzimmer_links_56470 event BufferFilled not yet implemented
2021.03.20 19:01:18 4: DLNAController: message parameters: AVTransport, Schlafzimmer_links_56470, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportState val="PLAYING"/></InstanceID></Event>
2021.03.20 19:01:18 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportState val="PLAYING"/></InstanceID></Event>
2021.03.20 19:01:18 4: DLNAController: Update reading transportState with PLAYING
2021.03.20 19:01:18 4: DLNAController DLNA_fedf2043_eac0_49e1_82ed_6ac78b34f79d: state update from UPNP_Controller, address Schlafzimmer_links_56470
2021.03.20 19:01:18 4: DLNAController: message parameters: AVTransport, Schlafzimmer_rechts_51318, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportState val="PLAYING"/></InstanceID></Event>
2021.03.20 19:01:18 4: DLNAController: message parameters: AVTransport, Küche_50448, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportState val="PLAYING"/></InstanceID></Event>
2021.03.20 19:01:18 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportState val="PLAYING"/></InstanceID></Event>
2021.03.20 19:01:18 4: DLNAController: Update reading transportState with PLAYING
2021.03.20 19:01:18 4: DLNAController DLNA_f9e8fd48_3e69_4b28_b388_d92cbcef7d80: state update from UPNP_Controller, address Küche_50448
2021.03.20 19:01:18 4: DLNAController: message parameters: AVTransport, Küche_51438, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><RoomStates val="uuid:e8894806-18e2-4d43-a29e-ad369eb917bd=PLAYING,uuid:1dad2541-290d-4117-8bf0-c1884f2ebccd=TRANSITIONING"/></InstanceID></Event>
2021.03.20 19:01:18 4: DLNAController: message parameters: AVTransport, Küche_51438, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportState val="PLAYING"/><RoomStates val="uuid:e8894806-18e2-4d43-a29e-ad369eb917bd=PLAYING,uuid:1dad2541-290d-4117-8bf0-c1884f2ebccd=PLAYING"/><CurrentTransportActions val="Stop"/></InstanceID></Event>
2021.03.20 19:01:21 4: DLNAController: message parameters: AVTransport, Küche_51438, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><CurrentTrackMetaData val="<?xml version="1.0"?>
<DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:raumfeld="urn:schemas-raumfeld-com:meta-data/raumfeld" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:pv="http://www.pv.com/pvns/" lang="en"><item parentID="0/Favorites/MyFavorites" id="0/Favorites/MyFavorites/14" restricted="1" refID="0/RadioTime/Search/s-s228737"><raumfeld:name>Station</raumfeld:name><upnp:class>object.item.audioItem.audioBroadcast.radio</upnp:class><raumfeld:section>RadioTime</raumfeld:section><raumfeld:durability>120</raumfeld:durability><raumfeld:ebrowse>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&amp;formats=mp3%2Cogg&amp;serial=50%3A1e%3A2d%3A11%3A3e%3A30&amp;id=s228737&amp;c=ebrowse</raumfeld:ebrowse><dc:title>NDR 2</dc:title><upnp:albumArtURI dlna:profileID="JPEG_TN">http://cdn-profiles.tunein.com/s228737/images/logoq.png?t=154228</upnp:albumArtURI><res bitrate="128" protocolInfo="http-get:*:audio/x-mpegurl:*">http://opml.radiotime.com/Tune.ashx?id=e89247640&amp;sid=s228737&amp;formats=mp3,ogg&amp;partnerId=7aJ9pvV5&amp;serial=50:1e:2d:11:3e:30</res></item></DIDL-Lite>
"/><TransportState val="TRANSITIONING"/><CurrentTransportActions val=""/></InstanceID></Event>
2021.03.20 19:01:21 4: DLNAController: message parameters: AVTransport, Schlafzimmer_links_56470, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURIMetaData val="<?xml version="1.0"?>
<DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:raumfeld="urn:schemas-raumfeld-com:meta-data/raumfeld" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:pv="http://www.pv.com/pvns/" lang="en"><item parentID="0/Favorites/MyFavorites" id="0/Favorites/MyFavorites/14" restricted="1" refID="0/RadioTime/Search/s-s228737"><raumfeld:name>Station</raumfeld:name><upnp:class>object.item.audioItem.audioBroadcast.radio</upnp:class><raumfeld:section>RadioTime</raumfeld:section><raumfeld:durability>120</raumfeld:durability><raumfeld:ebrowse>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&amp;formats=mp3%2Cogg&amp;serial=50%3A1e%3A2d%3A11%3A3e%3A30&amp;id=s228737&amp;c=ebrowse</raumfeld:ebrowse><dc:title>NDR 2</dc:title><upnp:albumArtURI dlna:profileID="JPEG_TN">http://cdn-profiles.tunein.com/s228737/images/logoq.png?t=154228</upnp:albumArtURI></item></DIDL-Lite>
"/><CurrentTrackDuration val="0:00:00"/><AVTransportURI val="http://Küche:49520/073be839-cbc2-4ea4-a33a-0b12982856ee/1dad2541-290d-4117-8bf0-c1884f2ebccd/fedf2043-eac0-49e1-82ed-6ac78b34f79d/19e2c7b72dbcfe069a6a6b9bec2e6c61--1224329907-0"/><TransportState val="TRANSITIONING"/><CurrentTransportActions val="Stop"/></InstanceID></Event>
2021.03.20 19:01:21 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURIMetaData val="<?xml version="1.0"?>
<DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:raumfeld="urn:schemas-raumfeld-com:meta-data/raumfeld" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:pv="http://www.pv.com/pvns/" lang="en"><item parentID="0/Favorites/MyFavorites" id="0/Favorites/MyFavorites/14" restricted="1" refID="0/RadioTime/Search/s-s228737"><raumfeld:name>Station</raumfeld:name><upnp:class>object.item.audioItem.audioBroadcast.radio</upnp:class><raumfeld:section>RadioTime</raumfeld:section><raumfeld:durability>120</raumfeld:durability><raumfeld:ebrowse>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&amp;formats=mp3%2Cogg&amp;serial=50%3A1e%3A2d%3A11%3A3e%3A30&amp;id=s228737&amp;c=ebrowse</raumfeld:ebrowse><dc:title>NDR 2</dc:title><upnp:albumArtURI dlna:profileID="JPEG_TN">http://cdn-profiles.tunein.com/s228737/images/logoq.png?t=154228</upnp:albumArtURI></item></DIDL-Lite>
"/><CurrentTrackDuration val="0:00:00"/><AVTransportURI val="http://Küche:49520/073be839-cbc2-4ea4-a33a-0b12982856ee/1dad2541-290d-4117-8bf0-c1884f2ebccd/fedf2043-eac0-49e1-82ed-6ac78b34f79d/19e2c7b72dbcfe069a6a6b9bec2e6c61--1224329907-0"/><TransportState val="TRANSITIONING"/><CurrentTransportActions val="Stop"/></InstanceID></Event>
2021.03.20 19:01:21 4: DLNAController: Update reading transportState with TRANSITIONING
2021.03.20 19:01:21 4: DLNAController: Update reading CurrentTrackDuration with 0:00:00
2021.03.20 19:01:21 4: DLNAController: Update reading CurrentTransportActions with Stop
2021.03.20 19:01:21 4: DLNAController DLNA_fedf2043_eac0_49e1_82ed_6ac78b34f79d: state update from UPNP_Controller, address Schlafzimmer_links_56470
2021.03.20 19:01:21 4: DLNAController: message parameters: AVTransport, Küche_50448, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURIMetaData val="<?xml version="1.0"?>
<DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:raumfeld="urn:schemas-raumfeld-com:meta-data/raumfeld" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:pv="http://www.pv.com/pvns/" lang="en"><item parentID="0/Favorites/MyFavorites" id="0/Favorites/MyFavorites/14" restricted="1" refID="0/RadioTime/Search/s-s228737"><raumfeld:name>Station</raumfeld:name><upnp:class>object.item.audioItem.audioBroadcast.radio</upnp:class><raumfeld:section>RadioTime</raumfeld:section><raumfeld:durability>120</raumfeld:durability><raumfeld:ebrowse>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&amp;formats=mp3%2Cogg&amp;serial=50%3A1e%3A2d%3A11%3A3e%3A30&amp;id=s228737&amp;c=ebrowse</raumfeld:ebrowse><dc:title>NDR 2</dc:title><upnp:albumArtURI dlna:profileID="JPEG_TN">http://cdn-profiles.tunein.com/s228737/images/logoq.png?t=154228</upnp:albumArtURI></item></DIDL-Lite>
"/><CurrentTrackDuration val="0:00:00"/><AVTransportURI val="http://Küche:49520/073be839-cbc2-4ea4-a33a-0b12982856ee/e8894806-18e2-4d43-a29e-ad369eb917bd/f9e8fd48-3e69-4b28-b388-d92cbcef7d80/19e2c7b72dbcfe069a6a6b9bec2e6c61--1224329907-0"/><TransportState val="TRANSITIONING"/><CurrentTransportActions val="Stop"/></InstanceID></Event>
2021.03.20 19:01:21 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURIMetaData val="<?xml version="1.0"?>
<DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:raumfeld="urn:schemas-raumfeld-com:meta-data/raumfeld" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:pv="http://www.pv.com/pvns/" lang="en"><item parentID="0/Favorites/MyFavorites" id="0/Favorites/MyFavorites/14" restricted="1" refID="0/RadioTime/Search/s-s228737"><raumfeld:name>Station</raumfeld:name><upnp:class>object.item.audioItem.audioBroadcast.radio</upnp:class><raumfeld:section>RadioTime</raumfeld:section><raumfeld:durability>120</raumfeld:durability><raumfeld:ebrowse>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&amp;formats=mp3%2Cogg&amp;serial=50%3A1e%3A2d%3A11%3A3e%3A30&amp;id=s228737&amp;c=ebrowse</raumfeld:ebrowse><dc:title>NDR 2</dc:title><upnp:albumArtURI dlna:profileID="JPEG_TN">http://cdn-profiles.tunein.com/s228737/images/logoq.png?t=154228</upnp:albumArtURI></item></DIDL-Lite>
"/><CurrentTrackDuration val="0:00:00"/><AVTransportURI val="http://Küche:49520/073be839-cbc2-4ea4-a33a-0b12982856ee/e8894806-18e2-4d43-a29e-ad369eb917bd/f9e8fd48-3e69-4b28-b388-d92cbcef7d80/19e2c7b72dbcfe069a6a6b9bec2e6c61--1224329907-0"/><TransportState val="TRANSITIONING"/><CurrentTransportActions val="Stop"/></InstanceID></Event>
2021.03.20 19:01:21 4: DLNAController: Update reading transportState with TRANSITIONING
2021.03.20 19:01:21 4: DLNAController: Update reading CurrentTrackDuration with 0:00:00
2021.03.20 19:01:21 4: DLNAController: Update reading CurrentTransportActions with Stop
2021.03.20 19:01:21 4: DLNAController DLNA_f9e8fd48_3e69_4b28_b388_d92cbcef7d80: state update from UPNP_Controller, address Küche_50448
2021.03.20 19:01:22 4: DLNAController: message parameters: AVTransport, Schlafzimmer_rechts_51318, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><AVTransportURIMetaData val="<?xml version="1.0"?>
<DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:raumfeld="urn:schemas-raumfeld-com:meta-data/raumfeld" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:pv="http://www.pv.com/pvns/" lang="en"><item parentID="0/Favorites/MyFavorites" id="0/Favorites/MyFavorites/14" restricted="1" refID="0/RadioTime/Search/s-s228737"><raumfeld:name>Station</raumfeld:name><upnp:class>object.item.audioItem.audioBroadcast.radio</upnp:class><raumfeld:section>RadioTime</raumfeld:section><raumfeld:durability>120</raumfeld:durability><raumfeld:ebrowse>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&amp;formats=mp3%2Cogg&amp;serial=50%3A1e%3A2d%3A11%3A3e%3A30&amp;id=s228737&amp;c=ebrowse</raumfeld:ebrowse><dc:title>NDR 2</dc:title><upnp:albumArtURI dlna:profileID="JPEG_TN">http://cdn-profiles.tunein.com/s228737/images/logoq.png?t=154228</upnp:albumArtURI></item></DIDL-Lite>
"/><CurrentTrackDuration val="0:00:00"/><AVTransportURI val="http://Küche:49520/073be839-cbc2-4ea4-a33a-0b12982856ee/1dad2541-290d-4117-8bf0-c1884f2ebccd/df6f32d1-1569-465b-8329-a14b6c788fa5/19e2c7b72dbcfe069a6a6b9bec2e6c61--1224329907-0"/><TransportState val="TRANSITIONING"/><CurrentTransportActions val="Stop"/></InstanceID></Event>
2021.03.20 19:01:22 4: DLNAController: message parameters: AVTransport, Küche_51438, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><CurrentTrackMetaData val="<?xml version="1.0"?>
<DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:raumfeld="urn:schemas-raumfeld-com:meta-data/raumfeld" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:pv="http://www.pv.com/pvns/" lang="en"><item parentID="0/Favorites/MyFavorites" id="0/Favorites/MyFavorites/14" restricted="1" refID="0/RadioTime/Search/s-s228737"><raumfeld:name>Station</raumfeld:name><upnp:class>object.item.audioItem.audioBroadcast.radio</upnp:class><raumfeld:section>RadioTime</raumfeld:section><raumfeld:durability>120</raumfeld:durability><raumfeld:ebrowse>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&amp;formats=mp3%2Cogg&amp;serial=50%3A1e%3A2d%3A11%3A3e%3A30&amp;id=s228737&amp;c=ebrowse</raumfeld:ebrowse><dc:title>NDR 2 - NDR 2 - ndr.de/ndr2</dc:title><upnp:albumArtURI dlna:profileID="JPEG_TN">http://cdn-profiles.tunein.com/s228737/images/logoq.png?t=154228</upnp:albumArtURI><res bitrate="128" protocolInfo="http-get:*:audio/x-mpegurl:*">http://opml.radiotime.com/Tune.ashx?id=e89247640&amp;sid=s228737&amp;formats=mp3,ogg&amp;partnerId=7aJ9pvV5&amp;serial=50:1e:2d:11:3e:30</res></item></DIDL-Lite>
"/></InstanceID></Event>
2021.03.20 19:01:22 4: DLNAController: message parameters: AVTransport, Küche_51438, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><RoomStates val="uuid:e8894806-18e2-4d43-a29e-ad369eb917bd=TRANSITIONING,uuid:1dad2541-290d-4117-8bf0-c1884f2ebccd=TRANSITIONING"/></InstanceID></Event>
2021.03.20 19:01:23 4: UPNPController: UPNP_Controller: uniqueDeviceName Küche_50448 event BufferFilled not yet implemented
2021.03.20 19:01:23 4: UPNPController: UPNP_Controller: uniqueDeviceName Schlafzimmer_rechts_51318 event BufferFilled not yet implemented
2021.03.20 19:01:23 4: UPNPController: UPNP_Controller: uniqueDeviceName Schlafzimmer_links_56470 event BufferFilled not yet implemented
2021.03.20 19:01:23 4: DLNAController: message parameters: AVTransport, Schlafzimmer_links_56470, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportState val="PLAYING"/></InstanceID></Event>
2021.03.20 19:01:23 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportState val="PLAYING"/></InstanceID></Event>
2021.03.20 19:01:23 4: DLNAController: Update reading transportState with PLAYING
2021.03.20 19:01:23 4: DLNAController DLNA_fedf2043_eac0_49e1_82ed_6ac78b34f79d: state update from UPNP_Controller, address Schlafzimmer_links_56470
2021.03.20 19:01:23 4: DLNAController: message parameters: AVTransport, Schlafzimmer_rechts_51318, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportState val="PLAYING"/></InstanceID></Event>
2021.03.20 19:01:23 4: DLNAController: message parameters: AVTransport, Küche_50448, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportState val="PLAYING"/></InstanceID></Event>
2021.03.20 19:01:23 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportState val="PLAYING"/></InstanceID></Event>
2021.03.20 19:01:23 4: DLNAController: Update reading transportState with PLAYING
2021.03.20 19:01:23 4: DLNAController DLNA_f9e8fd48_3e69_4b28_b388_d92cbcef7d80: state update from UPNP_Controller, address Küche_50448
2021.03.20 19:01:23 4: DLNAController: message parameters: AVTransport, Küche_51438, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><RoomStates val="uuid:e8894806-18e2-4d43-a29e-ad369eb917bd=PLAYING,uuid:1dad2541-290d-4117-8bf0-c1884f2ebccd=TRANSITIONING"/></InstanceID></Event>
2021.03.20 19:01:23 4: DLNAController: message parameters: AVTransport, Küche_51438, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportState val="PLAYING"/><RoomStates val="uuid:e8894806-18e2-4d43-a29e-ad369eb917bd=PLAYING,uuid:1dad2541-290d-4117-8bf0-c1884f2ebccd=PLAYING"/><CurrentTransportActions val="Stop"/></InstanceID></Event>
2021.03.20 19:01:25 4: UPNPController: try to renew subscriptions for services, device UPNP_Controller with timeout: 1800

multiRoomSupport bleibt auf 0


vG Jens
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 20 März 2021, 19:52:20
Hi Jens,
das sieht mir auf den 1. Blick danach aus, dass Du 98_UPNPController nicht reloaded hast.  :-\
Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: MichaelT am 21 März 2021, 14:11:25
Hi Michael,
prima. Danke.

Gerne.

Zitat
Sicher, dass das richtig ist ?  :-\
Ich hatte es so interpretiert, da ja die ComboBox "removeUnit" aus dem Reading "multiRoomUnits" lebt. (Falls ich das richtig verstehe)

Zitat
Ok. Mir wird bei der "Gruppengeschichte" klar, dass wir ja "früher" ein master device hatten. Wäre jetzt der UPNPController. Muss ich mal drüber schlafen....
Ich wollte nur erstmal testen. Ggf. kann man ja die MultiRoom-Geschichte aus dem Controller raushalten und von außen steuern?


Zitat
Komisch. Bei mir ist es richtig.
Ggf. liegt es bei mir an dem Style. Habe aktuell "flex" eingestellt. Das scheint wohl nicht mehr richtig unterstützt zu werden.

Gruß
Michael
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 21 März 2021, 15:45:38
Hallo Markus,

Zitat
...
sieht mir auf den 1. Blick danach aus, dass Du 98_UPNPController nicht reloaded hast
...

Dateien aus 1. u. 3. Beitrag vom 13.03.21, sind doch die aktuellen oder?
reloaded hab ich auch

vG Jens
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 21 März 2021, 16:58:51
Hi Michael,
Zitat
Zitat
Ok. Mir wird bei der "Gruppengeschichte" klar, dass wir ja "früher" ein master device hatten. Wäre jetzt der UPNPController. Muss ich mal drüber schlafen....

Ich wollte nur erstmal testen. Ggf. kann man ja die MultiRoom-Geschichte aus dem Controller raushalten und von außen steuern?
Ich habe das noch einmal theoretisch durchgespielt. Das "führende" device ist immer das aktuell genutzte. Die anderen devices der session haben kein aktuelles multiroom-reading. Kannst Du das bestätigen ? Mir scheint, das war im Renderer nicht fertig entwickelt. :(

Später kommen noch detailliertere Spekulationen..

Jens:
Zitat
2021.03.20 19:01:14 4: UPNPController: SpeakerManagement unknown for UPNP_Controller.
irgendwas passt da nicht zusammen.
Zitat
Dateien aus 1. u. 3. Beitrag vom 13.03.21, sind doch die aktuellen oder?
Das ist korrekt.
Lösch bitte mal das UPNPController-device u. leg es neu an.
Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 22 März 2021, 11:06:21
Hallo Markus,

Zitat
...
Lösch bitte mal das UPNPController-device u. leg es neu an.
...

hab ich gemacht, sieht wieder besser aus. Problem ist immer noch das der Master-Teufel beim Zusammenschalten der Räume (Multiroom) immer neue UUID´s der virtuellen Geräte anlegt und beim zurück auf Einzelräume auch. 3x gemacht hasste 9 Geräte-Leichen im DLNA-Controller. Multiroom einrichten über FHEM funktioniert nicht.
Mute funtioniert, Lautstärke auch = sprich aus Kueche 25, Schlafzimmer 20 wird bei Anhebung des Pegel´s um 5  Kueche 30, Schlafzimmer 25, sererate Einstellung wie über die APP geht nicht oder nicht gefunden. Titel- und Senderwechsel wird besser aktualisiert.
Komme leider bis auf weiteres nur an den Wochenenden zum testen :-[ .

vG Jens
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 22 März 2021, 12:53:15
Hi Jens,
Zitat
Komme leider bis auf weiteres nur an den Wochenenden zum testen :-[ .
Klar, kein Problem. Bis dahin hab ich dann sicherlich ne neue Version, um das
Zitat
Problem ist immer noch das der Master-Teufel beim Zusammenschalten der Räume (Multiroom) immer neue UUID´s der virtuellen Geräte anlegt und beim zurück auf Einzelräume auch. 3x gemacht hasste 9 Geräte-Leichen im DLNA-Controller.
in den Griff zu kriegen. So richtig kann ich mir das mit den virtuellen Geräten immer noch nicht vorstellen. Ich guck mal in den alten Posts, ob ich da die Daten finde. Wenn nicht, müsstest Du mir das näher beschreiben.
Grüße Markus
Edit: Ich hab das jetzt mal aus den ersten Posts so zusammengefasstSind ja nur drei Geräte (1x M u. 2x S als Stereo-Paar), der M ist der Master und legt dann die virtuellen Geräte mit seiner IP an.
Master device
-------------
xml des physischen devices
<UDN>uuid:f9e8fd48-3e69-4b28-b388-d92cbcef7d80</UDN>
friendlyName Speaker Kueche #2
modelDescription Digital Media Player
ServiceType urn:schemas-raumfeld-com:service:RaumfeldGenerator:1
<stateVariable sendEvents="yes">
<name>TransportControlButtons</name>

xml des virtuellen devices
<UDN>uuid:f97f36f9-abcf-4987-9727-c15eda14def4</UDN>
friendlyName Kueche,Schlafzimmer
modelDescription Virtual Media Player

uuid:eb57db8a-b475-4e3f-879b-1f8d314e1401
friendlyName Raumfeld MediaServer
zs-ContentDirectory urn:schemas-upnp-org:service:ContentDirectory:1

uuid:5470b1a7-c6c7-48a0-bc86-8a48cac5dbdc
friendlyName Raumfeld ConfigDevice
zs-ConfigService urn:schemas-raumfeld-com:service:ConfigService:1

uuid:85c93a10-d169-42c2-8e93-ecdd0724707e
friendlyName Schlafzimmer
modelDescription Virtual Media Player

uuid:063f7a0f-b90e-4754-824a-9eb5d62c163d
friendlyName Teufel Raumfeld Device
-zs-SetupService urn:schemas-raumfeld-com:service:SetupService:1

slave device 1
--------------
uuid:70d5b346-9b22-4e75-965b-3cedf880e531
friendlyName Teufel Raumfeld Device
-zs-SetupService urn:schemas-raumfeld-com:service:SetupService:1

uuid:df6f32d1-1569-465b-8329-a14b6c788fa5
friendlyName Speaker Schlafzimmer
modelDescription Digital Media Player
zs-RaumfeldGenerator urn:schemas-raumfeld-com:service:RaumfeldGenerator:1

slave device 1
--------------
uuid:0fee29da-3ea9-49bb-9902-a736a18ffd15
friendlyName Teufel Raumfeld Device
-zs-SetupService urn:schemas-raumfeld-com:service:SetupService:1

uuid:fedf2043-eac0-49e1-82ed-6ac78b34f79d
friendlyName Speaker Schlafzimmer  #3
modelDescription Digital Media Player
RaumfeldGenerator urn:schemas-raumfeld-com:service:RaumfeldGenerator:1
Ist da schon irgendwas doppelt ? Ändern sich die uuid's bei allen anderen "devices" als den "modelDescription Digital Media Player" ? Hast Du as "master" per App definiert oder ist das ein andere Hardware ? Ok, nun verstanden: master = model Teufel One M;slaves = model Teufel One S
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 22 März 2021, 14:02:20
Hallo Markus,

soweit ich das durchblicke ist es bei mir so:

Gerät 1 in der App zum Master gemacht und dem Raum Kueche zugewiesen
Gerät 2(linker Kanal) und Gerät 3(rechter Kanal) in der App zum Stereopaar zusammengeschalten, sind im Raum Schlafzimmer

im DLNA-Controller werden die Geräte 1,2 u. 3 eingebunden (uuid bleiben bis zum Reset bzw. stromlosmachen der Geräte gleich und lt. angezeigten Readings sind die ziemlich doof) plus die virtuelle Geräte(Räume) Kueche und Schlafzimmer (IP vom Gerät1, aber andere Ports)

Bei Multiroom werden jetzt nicht die Geräte 1, 2 u. 3 zusammengeschalten, sondern die Räume
Im DLNA-Controller wird aus den seperaten Devices Kueche und Schlafzimmer das Device Kueche,Schlafzimmer mit der UUID der Kueche und das Schlafzimmer-Device geht offline.
Schalte ich Multiroom aus, bekommen beide Räume neue UUID´s.

so mal aus Laiensicht, für dich verständlicher?

vG Jens

Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 22 März 2021, 15:00:05
Hi Jens,
Zitat
für dich verständlicher?
noch nicht so richtig.

In meiner Zusammenstellung oben sieht man 3 physische devices. Alle 3 haben ein device im UPNPController mit "modelDescription Digital Media Player". Dieses wird als DLNAController-device angelegt. Ändern sich die uuids(dürfte nicht sein) dieser devices oder nur der Port nach WLAN-Restart..... ?

Auch wird für alle 3 jeweils ein device mit "SetupService urn:schemas-raumfeld-com:service:SetupService:1" angelegt. Die interessieren uns zwar nicht für DLNA, aber im UPNPController sollten Sie trotzdem nicht als "Leichen" hängen bleiben. Ändern sich für diese die uuids oder nur der Port nach WLAN-Restart..... ?

Und dann haben wir ne Menge devices zur IP des masters:<UDN>uuid:f97f36f9-abcf-4987-9727-c15eda14def4</UDN>
friendlyName Kueche,Schlafzimmer
modelDescription Virtual Media Player
uuid:85c93a10-d169-42c2-8e93-ecdd0724707e
friendlyName Schlafzimmer
modelDescription Virtual Media Player
Die meinst Du vermutlich mit Räumen. Auch diese müssten theoretisch als DLNA-devices angelegt werden. Ändern sich für diese die uuids oder nur der Port nach WLAN-Restart..... ?(Vermutlich ja, da ja bereits bei Multiroom=off neue uuids "vergeben" werden. :o)

Last but not least diese beiden devicesuuid:eb57db8a-b475-4e3f-879b-1f8d314e1401
friendlyName Raumfeld MediaServer
zs-ContentDirectory urn:schemas-upnp-org:service:ContentDirectory:1

uuid:5470b1a7-c6c7-48a0-bc86-8a48cac5dbdc
friendlyName Raumfeld ConfigDevice
zs-ConfigService urn:schemas-raumfeld-com:service:ConfigService:1
Wie schon der friendlyName sagt, ist das erste ein DLNA-Server-device. Normalerweise eine "Quelle", wo Mediendateien verwaltet bzw. bereitgestellt werden. Von FHEM (noch ?) nicht unterstützt. Das letzte ist irgendein Teufelspezifischer service. Will heißen, auch diese beiden devices interessieren uns zwar nicht für DLNA, aber im UPNPController sollten Sie trotzdem nicht als "Leichen" hängen bleiben. Ändern sich für diese die uuids oder nur der Port nach WLAN-Restart..... ?

Zitat
Bei Multiroom werden jetzt nicht die Geräte 1, 2 u. 3 zusammengeschalten, sondern die Räume
Im DLNA-Controller wird aus den seperaten Devices Kueche und Schlafzimmer das Device Kueche,Schlafzimmer mit der UUID der Kueche und das Schlafzimmer-Device geht offline.
Verstehe.

Zitat
Schalte ich Multiroom aus, bekommen beide Räume neue UUID´s.
Katastrophe. :o

Falls es Dir noch nicht klar geworden ist: die uuid ist grundsätzlich eine eindeutige Gerätenr.. Wenn die sich natürlich ändert, ist Essig mit einer "Identifikation". Ich kann also maximal hingehen und bei den Teufels diese devices aus dem UPNPController löschen, sobald sie(hoffentlich tun sie das wenigstens)eine notify-message "bye-bye" senden. Wichtig ist also, ob sich wirklich uuids ändern, oder eben nicht, sondern möglicherweise für die verschiedenen Betriebsmodi unterschiedliche, sich aber nicht ändernde uuid's benutzt werden.

Mit der multiroom-Funktionalität im DLNAController hat das gar nichts zu tun. Dafür werden explizite Services genutzt, die die Teufel gar nicht bereitstellen.  :'( Die Funktionalität der Teufel würde sich also auf Rendering(volume,mute) u. AVTransport(abspielen von streams) beschränken.

Es wird heller.... ;)
Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 22 März 2021, 18:38:07
Hallo Markus,

Zitat
... modelDescription Virtual Media Player
Die meinst Du vermutlich mit Räumen...

ja genau Virtual Player = Räume, UUIDs ändern sich

Zitat
friendlyName Raumfeld MediaServer
friendlyName Raumfeld ConfigDevice

kann ich erst am Wochenende überprüfen

vG Jens
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: MichaelT am 24 März 2021, 19:36:12
Hi Michael,Ich habe das noch einmal theoretisch durchgespielt. Das "führende" device ist immer das aktuell genutzte. Die anderen devices der session haben kein aktuelles multiroom-reading. Kannst Du das bestätigen ? Mir scheint, das war im Renderer nicht fertig entwickelt. :(

Hallo Markus,
ja kann ich bestätigen.

Ich hatte am Sonntag (wollte Dir da gerade eine Antwort schreiben  8) ) noch folgenden Fehler, kannst Du da was mit Anfangen?
Dies hat dann mit vollständigen Einfrieren und Neustart durch kill (19:49) von FHEM geendet.
Ob das Device offline war, kann ich nicht sagen. Auffälligkeiten im Netzwerk hatte ich nicht.
Keine Ahnung ob das durch oder mit  ::) UPNP passiert ist.

Gruß Michael

2021.03.21 18:00:00.281 3: DG_HZ_nfy_WWZirk return value: setWWZirkulation: 1
2021.03.21 18:30:14.983 3: DLNAController: OG_BAD_MR address changed; services initially subscribed
2021.03.21 18:30:15.013 3: UPNPController: handleOnce failed, Can't call method "deviceRemoved" on an undefined value at FHEM/lib/UPnP/ControlPoint.pm line 436.
2021.03.21 18:31:40.579 1: [Freezemon] myFreezemon: possible freeze starting at 18:31:20, delay is 20.578 possibly caused by: tmr-HUEDevice_GetUpdate(OG_SZ_DimBettMicha) tmr-HUEDevice_GetUpdate(OG_GZ_SchTuer) tmr-HUEDevice_GetUpdate(OG_SZ_DimBettPetra) tmr-HUEDevice_GetUpdate(OG_SZ_SCHR_MD) tmr-HUEDevice_GetUpdate(EG_WZ_DimTisch) tmr-HUEDevice_GetUpdate(GA_TR_MD) tmr-HUEDevice_GetUpdate(GA_TR_Temp) tmr-HUEDevice_GetUpdate(GA_TR_LiLvl) tmr-HUEDevice_GetUpdate(OG_BAD_MD) tmr-HUEDevice_GetUpdate(DG_FLUR_MD) tmr-HUEDevice_GetUpdate(DG_FLUR_TEMP) tmr-HUEDevice_GetUpdate(DG_FLUR_LiLvl) tmr-HUEDevice_GetUpdate(OG_BAD_LiLvl) tmr-HUEDevice_GetUpdate(OG_BAD_TEMP) tmr-HUEDevice_GetUpdate(OG_SZ_SCHR_Temp) tmr-HUEDevice_GetUpdate(OG_SZ_SCHR_LiLvl) tmr-BrIo_GetStatus(DG_SPS)
2021.03.21 18:31:41.417 1: HMUARTLGW HMLAN3:keepAlive KeepAlive sent 14.967s too late, this might cause a disconnect!
2021.03.21 18:31:41.549 1: 192.168.4.67:2001 disconnected, waiting to reappear (HMLAN3:keepAlive)
2021.03.21 18:31:41.560 1: 192.168.4.67:2000 disconnected, waiting to reappear (HMLAN3)
2021.03.21 18:31:42.538 3: Opening HMLAN3:keepAlive device 192.168.4.67:2001
2021.03.21 18:31:42.539 1: 192.168.4.67:2000 reappeared (HMLAN3)
2021.03.21 18:31:42.546 3: HMLAN3:keepAlive device opened
2021.03.21 18:31:42.564 3: HMUARTLGW HMLAN3 BidCoS-port opened
2021.03.21 18:31:42.567 3: HMUARTLGW HMLAN3:keepAlive KeepAlive-port opened

....
2021.03.21 19:06:40.991 3: CUL_HM set OG_BAD_LiStar on noArg
2021.03.21 19:25:41.068 1: [Freezemon] myFreezemon: possible freeze starting at 19:25:38, delay is 3.067 possibly caused by: tmr-HUEDevice_GetUpdate(GA_TR_LiLvl) tmr-HUEDevice_GetUpdate(OG_BAD_MD) tmr-HUEDevice_GetUpdate(DG_FLUR_MD) tmr-HUEDevice_GetUpdate(DG_FLUR_TEMP) tmr-HUEDevice_GetUpdate(DG_FLUR_LiLvl) tmr-HUEDevice_GetUpdate(OG_BAD_LiLvl) tmr-HUEDevice_GetUpdate(OG_BAD_TEMP) tmr-HUEDevice_GetUpdate(OG_SZ_SCHR_Temp) tmr-HUEDevice_GetUpdate(OG_SZ_SCHR_LiLvl) tmr-BrIo_GetStatus(DG_SPS) tmr-HUEDevice_GetUpdate(OG_SZ_DimBettMicha) tmr-HUEDevice_GetUpdate(OG_GZ_SchTuer) tmr-HUEDevice_GetUpdate(OG_SZ_DimBettPetra) tmr-HUEDevice_GetUpdate(OG_SZ_SCHR_MD) tmr-HMLAN_KeepAliveCheck(HMLAN1) tmr-HUEDevice_GetUpdate(EG_WZ_DimTisch) tmr-HUEDevice_GetUpdate(GA_TR_MD) tmr-HUEDevice_GetUpdate(GA_TR_Temp)
2021.03.21 19:30:07.369 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportState val="TRANSITIONING"/></InstanceID></Event>
2021.03.21 19:30:07.374 4: DLNAController: Update reading transportState with TRANSITIONING
2021.03.21 19:30:07.375 4: DLNAController OG_SZ_MR: state update from SYS_UPNP, address 192.168.4.31_47296
2021.03.21 19:30:11.643 5: DLNAController: process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportState val="PLAYING"/></InstanceID></Event>
2021.03.21 19:30:11.649 4: DLNAController: Update reading transportState with PLAYING
2021.03.21 19:30:11.649 4: DLNAController OG_SZ_MR: state update from SYS_UPNP, address 192.168.4.31_47296
Can't call method "getValue" on an undefined value at ./FHEM/98_DLNAController.pm line 1266.
2021.03.21 19:49:12 1: reload: Error:Modul 99_myAbfallFunktions deactivated:
2021.03.21 19:49:12 1: PERL WARNING: Subroutine myUtils_Initialize redefined at ./FHEM/99_myUtils.pm line 139.
2021.03.21 19:49:12 1: PERL WARNING: Useless use of a variable in void context at ./FHEM/99_myUtilsTelefon.pm line 178.
2021.03.21 19:49:12.469 1: Including fhem.cfg
2021.03.21 19:49:12.509 3: telnetPort: port 7072 opened
2021.03.21 19:49:12.729 3: WEB: port 8083 opened

Der Freeze 18:31 dazu:
2021.03.21 18:31:20.463 4: CUL_HM EG_WZ_RT dupe: dont process
2021.03.21 18:31:20.464 5: UPNPController: incoming message; will be processed by perlupnp handleOnce
2021.03.21 18:31:20.464 4: UPNPController: discovery message of Bad with UDN: uuid:93b2abac-cb6a-4857-b891-00226190fdfc action: deviceAdded
2021.03.21 18:31:20.464 5: UPNPController: SYS_UPNP: alive-notify message device uuid:93b2abac-cb6a-4857-b891-00226190fdfc received
2021.03.21 18:31:20.464 5: UPNPController: warning: main, Use of uninitialized value in string eq at ./FHEM/98_UPNPController.pm line 544.

2021.03.21 18:31:20.464 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190fdfc found. Check for processing
2021.03.21 18:31:20.465 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190fdfc will be controlled with 192.168.4.33_34128
2021.03.21 18:31:20.465 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190fdfc has service with serviceId: ConnectionManager
2021.03.21 18:31:20.465 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190fdfc has service with serviceId: AVTransport
2021.03.21 18:31:20.465 4: UPNPController: subscribe: reading  192.168.4.33_34128-zs-AVTransport, uniquedevice 192.168.4.33_34128, service AVTransport
2021.03.21 18:31:20.465 5: UPNPController: AVTransport: urn:schemas-upnp-org:service:AVTransport:1 found. OK.
2021.03.21 18:31:20.465 5: UPNPController: AVTransport: urn:schemas-upnp-org:service:AVTransport:1 found. OK.
--- log skips     5.011 secs.
2021.03.21 18:31:25.476 5: UPNPController: warning: Carp, Subscription request failed with error: 500 Can't connect to 192.168.4.33:34128 (Connection timed out) at ./FHEM/98_UPNPController.pm line 716.

2021.03.21 18:31:25.476 4: UPNPController: SYS_UPNP: uniqueDeviceName 192.168.4.33_34128 event offline not yet implemented
2021.03.21 18:31:25.477 3: UPNPController: subscription for service AVTransport of device 192.168.4.33_34128 failed:
2021.03.21 18:31:25.477 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190fdfc has service with serviceId: RenderingControl
2021.03.21 18:31:25.477 4: UPNPController: subscribe: reading  192.168.4.33_34128-zs-RenderingControl, uniquedevice 192.168.4.33_34128, service RenderingControl
2021.03.21 18:31:25.478 5: UPNPController: RenderingControl: urn:schemas-upnp-org:service:RenderingControl:3 found. OK.
2021.03.21 18:31:25.479 5: UPNPController: RenderingControl: urn:schemas-upnp-org:service:RenderingControl:3 found. OK.
--- log skips     5.014 secs.
2021.03.21 18:31:30.493 5: UPNPController: warning: Carp, Subscription request failed with error: 500 Can't connect to 192.168.4.33:34128 (Connection timed out) at ./FHEM/98_UPNPController.pm line 716.

2021.03.21 18:31:30.494 4: UPNPController: SYS_UPNP: uniqueDeviceName 192.168.4.33_34128 event offline not yet implemented
2021.03.21 18:31:30.494 3: UPNPController: subscription for service RenderingControl of device 192.168.4.33_34128 failed:
2021.03.21 18:31:30.494 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190fdfc has service with serviceId: RTSPGateway
2021.03.21 18:31:30.494 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190fdfc has service with serviceId: SpeakerManagement
2021.03.21 18:31:30.495 4: UPNPController: subscribe: reading  192.168.4.33_34128-zs-SpeakerManagement, uniquedevice 192.168.4.33_34128, service SpeakerManagement
2021.03.21 18:31:30.496 5: UPNPController: SpeakerManagement: urn:schemas-pure-com:service:SpeakerManagement:1 found. OK.
2021.03.21 18:31:30.497 5: UPNPController: SpeakerManagement: urn:schemas-pure-com:service:SpeakerManagement:1 found. OK.
--- log skips     5.016 secs.
2021.03.21 18:31:35.512 5: UPNPController: warning: Carp, Subscription request failed with error: 500 Can't connect to 192.168.4.33:34128 (Connection timed out) at ./FHEM/98_UPNPController.pm line 716.

2021.03.21 18:31:35.513 4: UPNPController: SYS_UPNP: uniqueDeviceName 192.168.4.33_34128 event offline not yet implemented
2021.03.21 18:31:35.513 3: UPNPController: subscription for service SpeakerManagement of device 192.168.4.33_34128 failed:
2021.03.21 18:31:35.513 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190fdfc has service with serviceId: NetworkManagement
2021.03.21 18:31:35.513 5: UPNPController: SYS_UPNP: device uuid:93b2abac-cb6a-4857-b891-00226190fdfc has service with serviceId: SessionManagement
2021.03.21 18:31:35.514 4: UPNPController: subscribe: reading  192.168.4.33_34128-zs-SessionManagement, uniquedevice 192.168.4.33_34128, service SessionManagement
2021.03.21 18:31:35.515 5: UPNPController: SessionManagement: urn:schemas-pure-com:service:SessionManagement:1 found. OK.
2021.03.21 18:31:35.516 5: UPNPController: SessionManagement: urn:schemas-pure-com:service:SessionManagement:1 found. OK.
--- log skips     5.013 secs.
2021.03.21 18:31:40.529 5: UPNPController: warning: Carp, Subscription request failed with error: 500 Can't connect to 192.168.4.33:34128 (Connection timed out) at ./FHEM/98_UPNPController.pm line 716.

2021.03.21 18:31:40.530 4: UPNPController: SYS_UPNP: uniqueDeviceName 192.168.4.33_34128 event offline not yet implemented
2021.03.21 18:31:40.530 3: UPNPController: subscription for service SessionManagement of device 192.168.4.33_34128 failed:
2021.03.21 18:31:40.531 5: DLNAController: message from SYS_UPNP, message: SpeakerManagement|192.168.4.33_34128|online|groups
2021.03.21 18:31:40.531 4: DLNAController: message parameters: SpeakerManagement, 192.168.4.33_34128, online, groups
2021.03.21 18:31:40.531 4: DLNAController OG_BAD_MR: state update from SYS_UPNP, address 192.168.4.33_34128


Und der Freeze 19:25:

[Freezemon] myFreezemon: possible freeze starting at 19:25:38, delay is 3.067 possibly caused by: tmr-HUEDevice_GetUpdate(GA_TR_LiLvl) tmr-HUEDevice_GetUpdate(OG_BAD_MD) tmr-HUEDevice_GetUpdate(DG_FLUR_MD) tmr-HUEDevice_GetUpdate(DG_FLUR_TEMP) tmr-HUEDevice_GetUpdate(DG_FLUR_LiLvl) tmr-HUEDevice_GetUpdate(OG_BAD_LiLvl) tmr-HUEDevice_GetUpdate(OG_BAD_TEMP) tmr-HUEDevice_GetUpdate(OG_SZ_SCHR_Temp) tmr-HUEDevice_GetUpdate(OG_SZ_SCHR_LiLvl) tmr-BrIo_GetStatus(DG_SPS) tmr-HUEDevice_GetUpdate(OG_SZ_DimBettMicha) tmr-HUEDevice_GetUpdate(OG_GZ_SchTuer) tmr-HUEDevice_GetUpdate(OG_SZ_DimBettPetra) tmr-HUEDevice_GetUpdate(OG_SZ_SCHR_MD) tmr-HMLAN_KeepAliveCheck(HMLAN1) tmr-HUEDevice_GetUpdate(EG_WZ_DimTisch) tmr-HUEDevice_GetUpdate(GA_TR_MD) tmr-HUEDevice_GetUpdate(GA_TR_Temp)
2021.03.21 19:25:37.006 5: UPNPController: incoming message; will be processed by perlupnp handleOnce
2021.03.21 19:25:37.009 5: UPNPController: UPNPSocket-SYS_UPNP-1900, received ssdp event: was checked by discoverCallback for removed or added devices against pending search requests
2021.03.21 19:25:37.011 5: UPNPController: incoming message; will be processed by perlupnp handleOnce
2021.03.21 19:25:37.012 5: UPNPController: UPNPSocket-SYS_UPNP-1900, received ssdp event: was checked by discoverCallback for removed or added devices against pending search requests
2021.03.21 19:25:37.012 5: UPNPController: incoming message; will be processed by perlupnp handleOnce
2021.03.21 19:25:37.013 5: UPNPController: UPNPSocket-SYS_UPNP-1900, received ssdp event: was checked by discoverCallback for removed or added devices against pending search requests
2021.03.21 19:25:37.013 5: UPNPController: incoming message; will be processed by perlupnp handleOnce
2021.03.21 19:25:37.014 5: UPNPController: UPNPSocket-SYS_UPNP-1900, received ssdp event: was checked by discoverCallback for removed or added devices against pending search requests
2021.03.21 19:25:37.014 5: UPNPController: incoming message; will be processed by perlupnp handleOnce
2021.03.21 19:25:37.015 5: UPNPController: UPNPSocket-SYS_UPNP-1900, received ssdp event: was checked by discoverCallback for removed or added devices against pending search requests
2021.03.21 19:25:37.015 5: UPNPController: incoming message; will be processed by perlupnp handleOnce
2021.03.21 19:25:37.015 5: UPNPController: UPNPSocket-SYS_UPNP-1900, received ssdp event: was checked by discoverCallback for removed or added devices against pending search requests
--- log skips     3.361 secs.
2021.03.21 19:25:40.377 5: HttpUtils request header:
GET /api/3.4/forecast.php?lat=51.702086&lon=7.126074&region=nl&unit=mm/u HTTP/1.0
Host: cdn-secure.buienalarm.nl
User-Agent: fhem
Accept-Encoding: gzip,deflate
...
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 24 März 2021, 20:11:06
Sorry Michael,
ich gestehe. durch.  :'(
Zitat
2021.03.21 18:30:14.983 3: DLNAController: OG_BAD_MR address changed; services initially subscribed
2021.03.21 18:30:15.013 3: UPNPController: handleOnce failed, Can't call method "deviceRemoved" on an undefined value at FHEM/lib/UPnP/ControlPoint.pm line 436.
Hat sich da die IP geändert ?  :-\
Zitat
UPNPController: SYS_UPNP: uniqueDeviceName 192.168.4.33_34128 event offline not yet implemented
Hab ich scheinbar nur bei mir lokal gefixed.  ::) :o

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: eki am 26 März 2021, 12:32:26
Ich habe jetzt auch noch mal ein bisschen rumgespielt, um auch besser zu verstehen, wie ich das mit dem Vestel Modul "verheiraten" kann. Habe aber noch einige Punkte, die ich nicht so ganz verstehe.

Grundsätzlich ist mein halbwissendes Verständnis (aus Beobachtung abgeleitet, also möglicherweise Blödsinn  :-\) so, dass immer dann, wenn ein AVTransport service per UPNP gefunden wird, dann wird ein DLNAController Device erzeugt und versucht zu subscriben.
Das klappt auch immer erst mal und ich erhalte für die Geräte, wenn sie an sind, einige Readings, die teilweise auch den am Gerät gemachten Einstellungen (z.B. für Volume) folgen bzw. mit denen ich aus FHEM die Geräte steuern kann.
Leider geht das, zumindest bisher, immer nur temporär. Nach einer gewissen Zeit (habe nicht wirklich etwas gefunden, was das Verhalten triggert) verliert der DLNAController immer die Verbindung und bekommt sie dann auch nicht wieder zurück. Eventuelll wird das durch das Ausschalten des Gerätes hervorgerufen.
Falls ich noch Inputs liefern soll, meldet Euch.
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 26 März 2021, 12:54:58
Hi Eki,
Zitat
ein AVTransport service per UPNP gefunden wird, dann wird ein DLNAController Device erzeugt und versucht zu subscriben.
Fast. ;) Auch bei den anderen DLNA-services RenderingControl, SpeakerManagement u. SessionManagement.
Zitat
Leider geht das, zumindest bisher, immer nur temporär. Nach einer gewissen Zeit (habe nicht wirklich etwas gefunden, was das Verhalten triggert) verliert der DLNAController immer die Verbindung und bekommt sie dann auch nicht wieder zurück. Eventuelll wird das durch das Ausschalten des Gerätes hervorgerufen.
Es wird über die subscription getriggered. FHEM meldet dem device, dass es "mit events versorgt werden möchte"(subscription). Dabei vergibt das device eine lease time. Diese siehst Du im UPNPController unter dem servicereading mit "timeout: xxxx". Am timestamp siehst Du, wann es war. Nun wird innerhalb der leasetime ein renewal der subscription ausgeführt. Fehler oder wenn eine subscription wg. "offline" nicht möglich war, sieht man ebenfalls in diesem reading. Ohne subscription--->keine events(Änderungen werden FHEM nicht mitgeteilt). Im Grundsatz läuft das automatisch und funktioniert trotz zwischenzeitlichem Ausschalten des physischen devices oder Netzwerkproblemen oder..... Klappt es gar nicht oder die Wiederaufnahme der Verarbeitung, dann haben wir ein Problem und müssen es analysieren.

Ich nehme an Du hast das jetzt mit einem "Vestel"-device ausprobiert ? Dann schreib bitte in dem separaten Thread weiter. Scheinbar gibt es bei "Vestel" Probleme mit dem subscription-Prozess, die ich noch nicht verstanden hab. Da hatte ich bereits eine Frage an Dich (https://forum.fhem.de/index.php/topic,119546.msg1139738.html#msg1139738) Da spekulierte ich, dass das sehr seltsame Medion-Radio den gesamten renewal-Prozess des UPNP-Controller stört.

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: eki am 26 März 2021, 14:19:51
Zitat
Ich nehme an Du hast das jetzt mit einem "Vestel"-device ausprobiert ?

Ich habe das eigentlich mit allem, was der UPNP_Controller so sieht und erzählt probiert. Konkret werden aktuell bei mir folgende Devices als DLNAController Devices erstellt:

Radio mit SIRD Chipsatz (ist von Aldi und damit auch von Medion, glaube ich)
ein LG TV
der Vestel (Telefunken) TV (der meldet aber einen subscription Fehler)

Bei allen ist eingentlich das beschriebene Verhalten aufgetreten. Mit Deinen Inputs kann ich mir das noch mal genauer anschauen.

Alles Andere (die Frtzbox, ein FritzRepeater, ein EPSON Drucker, meine NAS, ein Humax (Sky) Receiver) wird zwar von UPNP_Controller erkannt, führt aber nicht zu Subscriptions.

Die Frage im anderen Thread war echt gut versteckt, hatte ich übersehen. Das schaue ich mir auch noch mal an.
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 26 März 2021, 17:19:15
Zitat
Radio mit SIRD Chipsatz
Ist glaub ich der device-typ, den Dieter auch hat und der kann schon von Hause aus kein volume-/mute-event  ::) und macht nur Probleme.

Nimm mal den Windows-Mediaplayer. Der funktioniert eigentlich perfekt. Und wenn man das Prinzip dann etwas mehr verstanden hat, kann man dem Fehlverhalten von anderen devices auf den Grund gehen.
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: MichaelT am 28 März 2021, 17:51:43
Hat sich da die IP geändert ?

Hallo Markus,

nein, die IP hat sich nicht geändert. Sind mit statischer IP konfiguriert.

Gruß
Michael
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 31 März 2021, 13:33:29
Hallo Michael,
ich hab jetzt noch einmal Stunden verbracht, um Deine freezes u. den Absturz zu analysieren u. das Modul korrigieren. Aber es findet sich sich erst einmal nichts. Da ich auch immere wieder Kleinigkeiten korrigiere, ist es möglicherweise bereits behoben.  :-\

Erläuterungen zu Deinen Meldungen:
- der Absturz war dann wohl doch nicht beim UPNP-Controller zu suchen. :-\
- der 20s freeze ist durch die timeouts je service bedingt. Warum es diese timeouts gibt, ist erst einmal nicht nachvollziehbar. Da müssten wir dann schauen, dass wir es reproduziert bekommen. Vielleicht auch nur eine einmalige Geschichte, da Du ja anfänglich auch von funktionierendem Multiroom sprachst(Deine vorgschlagenen Änderungen sind in der akt. Version enthalten).
- der 3s freeze ist erst einmal nicht erheblich. Ähnliches beobachte ich auch aufgrund der "transition". Das ist dann ein Thema, wenn mal alles funktionell rund läuft. Dann werde ich das technisch lösen, dass es keine freezes mehr in FHEM geben kann.

@all: bitte mit der aktuellen Version testen.

@Jens: bei den Teufels müssten wir gucken, dass wir das mit den wechselnden IPs/Ports/devices in den Griff bekommen.

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: MichaelT am 31 März 2021, 18:15:15
Hallo Markus,

reicht erstmal vollkommen aus. Der 20s Freeze ist nicht so tragisch, da das echt ein Sonderfall war/ist.
Die 3 Sekunden stören erstmal nicht wirklich.

Ich werden deine neuen Stand testen, danke für die Übernahme.

Gruß
Michael
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 03 April 2021, 11:53:33
Hallo Markus,

Zitat
@Jens: bei den Teufels müssten wir gucken, dass wir das mit den wechselnden IPs/Ports/devices in den Griff bekommen

also mit der aktuellen Version hat sich am Verhalten noch nichts geändert.

Was ich sagen kann:

 - die drei Lautsprecher haben immer den gleichen Port
 - "Raumfeld MediaServer" und "Raumfeld ConfigDevice" ebenfalls
 - schalte ich die Räume "Küche" und "Schlafzimmer" in den Multiroom-Modus (Teufel spricht von Gruppieren) entscheidet die Reihenfolge der Zusammenschaltung was im UPNP-
   und DLNA-Controller passiert, d. h. Küche + Schlafzimmer = Küche, Schlafzimmer mit der UUID und dem Port des Einzelraumes Küche, Schlafzimmer geht offline
                                                            Schlafzimmer + Küche = Schlafzimmer, Küche mit der UUID und dem Port des Einzelraumes Schlafzimmer, Küche geht offline
  beim zurück auf Einzelraum das gleiche, der Raum der aus der Gruppe entfernt wird bekommt einen neuen Port/UUID

und das sind nur zwei Räume. Wie willst du das abfangen? UUID und Ports ignorieren?

viele Grüße und noch ein schönes Osterfest
Jens
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 03 April 2021, 12:46:17
Hi Jens,
Zitat
UUID und Ports ignorieren?
keineswegs.  ;) Wenn die per Zufall generiert werden, können wir aber maximal drauf reagieren.
Nur um ein eindeutiges Verhalten zu beschreiben:
Zitat
- die drei Lautsprecher haben immer den gleichen Port
 - "Raumfeld MediaServer" und "Raumfeld ConfigDevice" ebenfalls
d.h. diese Aussage
Zitat
nur der Port nach WLAN-Restart
ist falsch ?

Die 3 devices sind online, die services subscribed u. Änderungen kommen auch an, oder nur je nach Betriebsart bei Raum- u./o. Gruppendevice ? Kannst Du egal in welcher Betriebsart Befehle über das Lautspecherdevice senden u. wie wirkt sich das ggfs. auf Räume/Gruppen aus ?

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: MichaelT am 03 April 2021, 20:02:31
Hallo Markus,

kurzes Feedback:
1. Ich bin auf einem separaten FHEM umgezogen, da ich wieder 2 mal die Freezes mit den alten Stand hatte. Es sah so aus, als wenn
der Renderer nicht mehr erreichbar war. Doofer Weise habe ich die log versehentlich gelöscht 8).

2. Neue Module jetzt im Einsatz, läuft erstmal reibungslos.
Ich habe verbose vollständig auf 5 gesetzt, so das man im Fehlerfall mehr sieht.

Ich berichte.

Danke und schöne Ostern

Gruß Michael





Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 03 April 2021, 21:25:43
Hallo Markus,

Zitat
Die 3 devices sind online, die services subscribed u. Änderungen kommen auch an, oder nur je nach Betriebsart bei Raum- u./o. Gruppendevice ? Kannst Du egal in welcher Betriebsart Befehle über das Lautspecherdevice senden u. wie wirkt sich das ggfs. auf Räume/Gruppen aus ?

Das geht in allen Modi, wirkt sich aber immer nur auf den zugeordneten Raum aus.

Zitat
d.h. diese Aussage
nur der Port nach WLAN-Restart
ist falsch ?

denke schon, wenn du die drei devices meinst bleiben die Ports bis zum Werks-Reset bzw. Änderungen innerhalb der APP gleich.
Aber wie ich schon sagte, zeigen diese devices nur wenige Readings an (keine Titel oder Sendernamen).


mfg Jens
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: MichaelT am 11 April 2021, 20:11:01
Hallo Markus,

hier mal wieder ein Feedack von meiner Seite.

1. Die Erkennung, ob multiRoomSupport existiert, habe ich nochmal angepasst. Es kann passieren, dass die SessionID nicht empty ist! Dann wird nach einem Neustart
der Support nicht gesetzt.
2021.04.11 08:46:04.186 5: UPNPController: Received event: by 192.168.4.31_54277-zs-SpeakerManagement UPnP::ControlPoint::Service=HASH(0x48b51b4) $VAR1 = 'SessionID';
$VAR2 = '89f4b029-2236-4adf-b606-5df6fb7acd37';
Anpassung UPNPController.pm:
< Deins
> meins
860,872c860
<     if ($msg ne "") {
<               foreach my $key (keys %$event_map) {
< #               Log3 $hash, 5, "UPNPController: $hash->{NAME}: event of service $key, message ".$msg;
<                 if (index($msg,$event_map->{$key}) >= 0) {
<                        $message = $key;
<                        $valid = 1;
<                        # no further processing if dispatched
<                        last;
<                  }
<               }
<     }
<     else {
<        if ($msgtype eq "SessionID") {     # indicates SessionManagement; might by an event of SpeakerManagement or SessionManagement
---
>     if ($msgtype eq "SessionID") {     # indicates SessionManagement; might by an event of SpeakerManagement or SessionManagement
875c863,875
<        }
---
>     }
>     elsif ($msg ne "") {
>       foreach my $key (keys %$event_map) {
>         Log3 $hash, 5, "UPNPController: $hash->{NAME}: event of service $key, message ".$msg;
>         if (index($msg,$event_map->{$key}) >= 0) {
>                  $message = $key;
>                $valid = 1;
>                # no further processing if dispatched
>                last;
>          }
>       }
>     }
>     else {

2. Weiterhin habe ich das Problem, dass ab und zu die freezes passieren.
Offensichtlich kommt es bei mir vor, dass die Renderer nicht erreichbar sind (Warum - kann ich nicht sagen!).
OG_BAD_MR-2021.log:2021-04-07_19:54:48 OG_BAD_MR online
OG_BAD_MR-2021.log:2021-04-08_02:06:33 OG_BAD_MR presence: offline
OG_BAD_MR-2021.log:2021-04-08_02:06:33 OG_BAD_MR offline
OG_BAD_MR-2021.log:2021-04-08_02:06:34 OG_BAD_MR presence: online
OG_BAD_MR-2021.log:2021-04-08_02:06:34 OG_BAD_MR online
OG_BAD_MR-2021.log:2021-04-11_15:57:18 OG_BAD_MR presence: offline
OG_BAD_MR-2021.log:2021-04-11_15:57:18 OG_BAD_MR offline
OG_BAD_MR-2021.log:2021-04-11_15:57:20 OG_BAD_MR presence: online
OG_BAD_MR-2021.log:2021-04-11_15:57:20 OG_BAD_MR online

...

DG_BUE_MR-2021.log:2021-04-07_20:35:47 DG_BUE_MR online
DG_BUE_MR-2021.log:2021-04-08_02:06:35 DG_BUE_MR presence: offline
DG_BUE_MR-2021.log:2021-04-08_02:06:35 DG_BUE_MR offline
DG_BUE_MR-2021.log:2021-04-08_09:22:31 DG_BUE_MR presence: online
DG_BUE_MR-2021.log:2021-04-08_09:22:31 DG_BUE_MR online
DG_BUE_MR-2021.log:2021-04-10_14:32:01 DG_BUE_MR presence: offline
DG_BUE_MR-2021.log:2021-04-10_14:32:01 DG_BUE_MR offline
DG_BUE_MR-2021.log:2021-04-10_14:32:02 DG_BUE_MR presence: online

Als Folge z.B. des OG_BAD_MR Offlines kamen auch nach dem "online" keine Events mehr vom Renderer.
Erst ein modify hat die Events wieder aktiviert.

Die offlines sind wahrscheinlich mein Problem, aber das erst ein modify gemacht werden muss, ist glaube ich nicht richtig.

Ich habe Dir mal logs angehangen (Ausschnitte). Wenn Du die Muße hast, kannst Du ja mal drüber schauen.

Ggf. hast Du ja noch eine Idee, was ich weiter testen kann.

Das multiroom-Zeugs geht irgendwie. Anscheinend holt sich ein zusätzliches Device mit der gleichen SessionID mittels
"currentTrackURI rtsp://192.168.4.33:8554/stream"
den Stream des masters und folgt diesem dann.

Bin aber noch weiter am Testen, da die peaq App nicht mehr unter Android > 7.0 läuft muss ich ein Telefon zurück drehen.

Gruß Michael
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 12 April 2021, 14:56:01
Hallo Michael,
Zitat
Als Folge z.B. des OG_BAD_MR Offlines kamen auch nach dem "online" keine Events mehr vom Renderer.
Erst ein modify hat die Events wieder aktiviert.
Schau Dir in solchen Fällen bitte mal das DLNAController-device vor dem modify näher an. Stimmen das Internal address(IP_Port) mit den entsprechenden Readings im UPNPController überein ? Kann IP_Port sich geändert haben ? Mehrere IP_Port-Readings ? Allerdings müsste sich ein address-change auch bei verbose=3 im Log melden. Ich hab da meinen FritzRepeater, der sich auch komisch/ähnlich verhält. Er meldet sich mit einer (eigentlich falschen  ??? :o) IP per UPnP, wenn ich ihn morgens aus dem Nachtschlaf erwachen lasse. Das ist dann aber nur kurz u. UPnPController/DLNAController passen sich entsprechend an.
Tatsächlich geht dann die subscription verloren. Das lässt sich sicherlich durch eine Modifikation lösen. Edit: Ich bin dem mal näher auf den Grund gegangen. Es dürfte mit der IP_Port-Änderung zusammenhängen, was nicht richtig implementiert war(u. auch die x mal 5s freezes ließen sich so erklären). Ersetze bitte mal die Parse_Sub im DLNAControllermitsub DLNAController_Parse($$)
{
my ( $io_hash, $message) = @_;

        my ($modulekey,$address,$property,$propertyval) = split("\\|",$message);
      Log3 $io_hash, 5, "DLNAController: message from $io_hash->{NAME}, message: $message";
my $udn = ReadingsVal($io_hash->{NAME}, $address."-UDN", "not found");

my $def = "$udn $address";
        Log3 $io_hash, 4, "DLNAController: message parameters: $modulekey, $address, $property, $propertyval";
# wenn bereits eine Gerätedefinition existiert (via Definition Pointer aus Define-Funktion)
if(my $hash = $modules{DLNAController}{defptr}{$udn}) {
#           has address changed ?
        if ($hash->{address} ne $address) {
           $hash->{address} = $address;
         $hash->{helper}{subscribed} = 0;
    }
    $hash->{DEF} = $def;
    if($property ne "online" && $property ne "offline") {
DLNAController_processEventXml($hash, $property, $propertyval);
DLNAController_devicestate($hash, "online");        
    }
    else {
               if ($hash->{helper}{subscribed} != 1 &&
                   $property ne "offline") {
    DLNAController_upnpAction($hash, 'RenderingControl', 'subscribe');
  DLNAController_upnpAction($hash, 'AVTransport', 'subscribe');
    DLNAController_upnpAction($hash, 'SpeakerManagement', 'subscribe');
    DLNAController_upnpAction($hash, 'SessionManagement', 'subscribe');
    Log3 $hash, 3, "DLNAController: $hash->{NAME} address changed; services initially subscribed";   
    $hash->{helper}{subscribed} = 1;
       }
DLNAController_devicestate($hash, $property);
    }
    return $hash->{NAME};
        }
else {
            my @temp = split(":",$udn);
            $temp[1] =~ tr/-/_/;
    return "UNDEFINED DLNA_".$temp[1]." DLNAController ".$def;
}
}

Ich lass das bei mir auch laufen u. morgen früh sollte ich das (positive) Ergebnis sehen. ;)

Zitat
Warum - kann ich nicht sagen!
Nur um es zu verstehen(ich vermute, dass nicht um 2 nachts Musik gehört wurde  ???): Die Teile sind im Normalfall 24/7 online ? Könnte da evtl. was mit dem WLAN sein ? Bei einer FritzBox würde man die An-/Abmeldung in den Systemereignissen sehen können. Selbst, wenn gerade ein stream läuft, dürfte man das nicht akkustisch merken, weil die streams ja eine gewisse Zeit gepuffert sind u. der Zeitraum offline-online immer nur sehr kurz scheint.

Die anderen Dinge gucke ich mir in Ruhe an. Bin im Augenblick leider zeitlich durch einen Festplattencrash gehandicaped u. das Umstellen auf eine neue xml-parser-Lib bereitet mir auch mehr Probleme als erwartet.

Grüße Markus

Edit: Es scheint funktioniert zu haben.  :) Mal für Dich zum Vergleich, welcher Unsinn da bei mir passiert. Ich hab mal versucht durch Absetzungen die wesentlichen von den eher unwesentlichen Log-Meldungen zu trennen. Im groben siehst Du, dass es KEINE Abmeldung gestern Abend gab, durch das subscription renewal[mit 500ern(mögliche freezes)] der offline-status erkannt u. korrigiert wurde. Dann meldet sich heute Morgen das device mit der "falschen"(keine Ahnung warum  ::)) IP. UPNPController u. DLNAController reagieren auf die IP-Änderung. Obwohl sich das device gerade selber mit dieser IP gemeldet hat, schlagen die subscriptions fehl mit 500ern(mögliche freezes), was wieder zu "offline" in FHEM führt. Dann kommt die korrekte IP in einer weiteren alive-message. Das Spiel beginnt von vorn. Nur dass diesmal alles so verläuft, wie es sich gehört:-----> event für 192.x.y.37  <----- successful (typical event;normally every 12')
2021.04.12 23:25:39 4: DLNAController: message parameters: AVTransport, 192.x.y.37_49200, LastChange, <Event xmlns = "urn:schemas-upnp-org:metadata-1-0/AVT/"> <InstanceID val="0"> <TransportState val="STOPPED"/><TransportStatus val="OK"/><PlaybackStorageMedium val="NETWORK"/><RecordStorageMedium val="NOT_IMPLEMENTED"/><CurrentPlayMode val="NORMAL"/><RecordMediumWriteStatus val="NOT_IMPLEMENTED"/><CurrentRecordQualityMode val="NOT_IMPLEMENTED"/><CurrentTrackDuration val="00:00:00"/><CurrentMediaDuration val="00:00:00"/><CurrentTrackMetaData val=""/><CurrentTrackURI val="http://translate.google.com/translate_tts?tl=en&client=tw-ob&q=Test"/><AVTransportURI val="http://translate.google.com/translate_tts?tl=en&client=tw-ob&q=Test"/><NextAVTransportURI val=""/><CurrentTransportActions val="Play,Stop,Seek"/><PossiblePlaybackStorageMedia val="NONE,NETWORK,USB-MASS"/><PossibleRecordStorageMedia val="NOT_IMPLEMENTED"/><PossibleRecordQualityModes val="NOT_IMPLEMENTED"/><TransportPlaySpeed val="1"/><NumberOfTracks val="1"/><CurrentTrack val="1"/> </InstanceID> </Event>


-----> last renewal für 192.x.y.37  <----- successful
2021.04.12 23:33:01 5: UPNPController: renew subscription for service AVTransport of device 192.x.y.37_49200

-----> last event für 192.x.y.37  before sleep <----- successful
2021.04.12 23:37:39 4: DLNAController DLNA_fa095ecc_e13e_40e7_8e6c_BC0543512C9A: state update from UPNP_Controller, address 192.x.y.37_49200

-----> 23:45 go to sleep für 192.x.y.37  <----- no byebye-message sent; not DLNA compliant !!!!

-----> periodic renewal of subscriptions 192.x.y.37  <----- failure; device no longer available(no byebye event sent before !!!!)
2021.04.13 00:02:02 4: UPNPController: try to renew subscriptions for services, device UPNP_Controller with timeout: 1800
2021.04.13 00:02:02 5: UPNPController: renew subscription for service AVTransport of device 192.x.y.37_49200
2021.04.13 00:02:07 5: UPNPController: warning: Carp, Renewal of subscription failed with error: 500 Can't connect to 192.x.y.37:49200 (Connection timed out) at ./FHEM/98_UPNPController.pm line 790.
2021.04.13 00:02:07 3: UPNPController: renewal of subscription for service AVTransport of device 192.x.y.37_49200 failed: , try to subscribe
2021.04.13 00:02:07 5: UPNPController: renew subscription for service RenderingControl of device 192.x.y.37_49200
2021.04.13 00:02:12 5: UPNPController: warning: Carp, Renewal of subscription failed with error: 500 Can't connect to 192.x.y.37:49200 (Connection timed out) at ./FHEM/98_UPNPController.pm line 790.
2021.04.13 00:02:12 3: UPNPController: renewal of subscription for service RenderingControl of device 192.x.y.37_49200 failed: , try to subscribe
2021.04.13 00:02:12 5: UPNPController: renewSubscriptionsfinished name UPNP_Controller, readingname 192.x.y.37_49200-zs-RenderingControl
2021.04.13 00:02:12 4: UPNPController: subscribe: reading  192.x.y.37_49200-zs-RenderingControl, uniquedevice 192.x.y.37_49200, service RenderingControl
2021.04.13 00:02:12 5: UPNPController: RenderingControl: urn:schemas-upnp-org:service:RenderingControl:1 found. OK.
2021.04.13 00:02:12 5: UPNPController: RenderingControl: urn:schemas-upnp-org:service:RenderingControl:1 found. OK.
2021.04.13 00:02:13 5: UPNPController: warning: Carp, Subscription request failed with error: 500 Can't connect to 192.x.y.37:49200 (No route to host) at ./FHEM/98_UPNPController.pm line 719.
2021.04.13 00:02:13 4: UPNPController: discovery message of AVM FRITZ!MediaRenderer with UDN: uuid:fa095ecc-e13e-40e7-8e6c-BC0543512C9A action: deviceRemoved
2021.04.13 00:02:13 5: UPNPController: UPNP_Controller: byebye-notify message device 192.x.y.37_49200 received
2021.04.13 00:02:13 5: UPNPController: earlier subscribed service AVTransport of device 192.x.y.37_49200 went offline
2021.04.13 00:02:13 5: UPNP_Controller: dispatch AVTransport|192.x.y.37_49200|offline|urn:schemas-upnp-org:metadata-1-0/AVT
2021.04.13 00:02:13 5: DLNAController: message from UPNP_Controller, message: AVTransport|192.x.y.37_49200|offline|urn:schemas-upnp-org:metadata-1-0/AVT
2021.04.13 00:02:13 4: DLNAController: message parameters: AVTransport, 192.x.y.37_49200, offline, urn:schemas-upnp-org:metadata-1-0/AVT
2021.04.13 00:02:13 4: DLNAController DLNA_fa095ecc_e13e_40e7_8e6c_BC0543512C9A: state update from UPNP_Controller, address 192.x.y.37_49200
2021.04.13 00:02:13 5: UPNP_Controller: dispatch RenderingControl|192.x.y.37_49200|offline|urn:schemas-upnp-org:metadata-1-0/RCS
2021.04.13 00:02:13 5: DLNAController: message from UPNP_Controller, message: RenderingControl|192.x.y.37_49200|offline|urn:schemas-upnp-org:metadata-1-0/RCS
2021.04.13 00:02:13 4: DLNAController: message parameters: RenderingControl, 192.x.y.37_49200, offline, urn:schemas-upnp-org:metadata-1-0/RCS
2021.04.13 00:02:13 4: DLNAController DLNA_fa095ecc_e13e_40e7_8e6c_BC0543512C9A: state update from UPNP_Controller, address 192.x.y.37_49200
2021.04.13 00:02:13 3: UPNPController: subscription for service RenderingControl of device 192.x.y.37_49200 failed:

-----> 06:00 awakes from sleep für 192.x.y.37  <----- alive message with fault IP 192.x.y.2 for ALL services
2021.04.13 06:00:39 4: UPNPController: discovery message of AVM FRITZ!MediaRenderer with UDN: uuid:fa095ecc-e13e-40e7-8e6c-BC0543512C9A action: deviceAdded
2021.04.13 06:00:39 5: UPNPController: UPNP_Controller: alive-notify message device uuid:fa095ecc-e13e-40e7-8e6c-BC0543512C9A received

-----> different IP(address) recognized for 192.x.y.37  <----- old readings deleted; DLNAController with new address; new subscriptions
2021.04.13 06:00:39 3: UPNPController: old definition of device uuid:fa095ecc-e13e-40e7-8e6c-BC0543512C9A found with 192.x.y.37_49200. readings deleted.

2021.04.13 06:00:39 5: UPNPController: UPNP_Controller: device uuid:fa095ecc-e13e-40e7-8e6c-BC0543512C9A found. Check for processing
2021.04.13 06:00:39 5: UPNPController: UPNP_Controller: device uuid:fa095ecc-e13e-40e7-8e6c-BC0543512C9A will be controlled with 192.x.y.2_49200
2021.04.13 06:00:39 5: UPNPController: UPNP_Controller: device uuid:fa095ecc-e13e-40e7-8e6c-BC0543512C9A has service with serviceId: RenderingControl
2021.04.13 06:00:39 5: UPNPController: UPNP_Controller: device uuid:fa095ecc-e13e-40e7-8e6c-BC0543512C9A has service with serviceId: ConnectionManager
2021.04.13 06:00:39 5: UPNPController: UPNP_Controller: device uuid:fa095ecc-e13e-40e7-8e6c-BC0543512C9A has service with serviceId: AVTransport
2021.04.13 06:00:39 5: UPNP_Controller: dispatch AVTransport|192.x.y.2_49200|online|urn:schemas-upnp-org:metadata-1-0/AVT
2021.04.13 06:00:39 5: DLNAController: message from UPNP_Controller, message: AVTransport|192.x.y.2_49200|online|urn:schemas-upnp-org:metadata-1-0/AVT

2021.04.13 06:00:39 4: DLNAController: message parameters: AVTransport, 192.x.y.2_49200, online, urn:schemas-upnp-org:metadata-1-0/AVT

2021.04.13 06:00:39 5: UPNPController: UPNP_Controller, 192.x.y.2_49200, RenderingControl, subscribe,
2021.04.13 06:00:39 5: UPNPController: RenderingControl: urn:schemas-upnp-org:service:RenderingControl:1 found. OK.
2021.04.13 06:00:39 4: UPNPController: subscribe: reading  192.x.y.2_49200-zs-RenderingControl, uniquedevice 192.x.y.2_49200, service RenderingControl
2021.04.13 06:00:39 5: UPNPController: RenderingControl: urn:schemas-upnp-org:service:RenderingControl:1 found. OK.
2021.04.13 06:00:39 5: UPNPController: RenderingControl: urn:schemas-upnp-org:service:RenderingControl:1 found. OK.
2021.04.13 06:00:39 4: UPNPController: subscribe: reading  192.x.y.2_49200-zs-RenderingControl, uniquedevice 192.x.y.2_49200, service RenderingControl timeout: 1800
2021.04.13 06:00:39 5: UPNPController: UPNP_Controller, 192.x.y.2_49200, AVTransport, subscribe,
2021.04.13 06:00:39 5: UPNPController: AVTransport: urn:schemas-upnp-org:service:AVTransport:1 found. OK.
2021.04.13 06:00:39 4: UPNPController: subscribe: reading  192.x.y.2_49200-zs-AVTransport, uniquedevice 192.x.y.2_49200, service AVTransport
2021.04.13 06:00:39 5: UPNPController: AVTransport: urn:schemas-upnp-org:service:AVTransport:1 found. OK.
2021.04.13 06:00:39 5: UPNPController: AVTransport: urn:schemas-upnp-org:service:AVTransport:1 found. OK.

2021.04.13 06:00:42 5: UPNPController: warning: Carp, Subscription request failed with error: 500 Can't connect to 192.x.y.2:49200 (No route to host) at ./FHEM/98_UPNPController.pm line 719.

2021.04.13 06:00:42 5: UPNP_Controller: dispatch AVTransport|192.x.y.2_49200|offline|urn:schemas-upnp-org:metadata-1-0/AVT
2021.04.13 06:00:42 5: DLNAController: message from UPNP_Controller, message: AVTransport|192.x.y.2_49200|offline|urn:schemas-upnp-org:metadata-1-0/AVT

2021.04.13 06:00:42 4: DLNAController: message parameters: AVTransport, 192.x.y.2_49200, offline, urn:schemas-upnp-org:metadata-1-0/AVT
2021.04.13 06:00:42 4: DLNAController DLNA_fa095ecc_e13e_40e7_8e6c_BC0543512C9A: state update from UPNP_Controller, address 192.x.y.2_49200

2021.04.13 06:00:42 3: UPNPController: subscription for service AVTransport of device 192.x.y.2_49200 failed:

2021.04.13 06:00:42 3: DLNAController: DLNA_fa095ecc_e13e_40e7_8e6c_BC0543512C9A address changed; services initially subscribed
2021.04.13 06:00:42 4: DLNAController DLNA_fa095ecc_e13e_40e7_8e6c_BC0543512C9A: state update from UPNP_Controller, address 192.x.y.2_49200

2021.04.13 06:00:43 5: UPNPController: Received event: by 192.x.y.2_49200-zs-RenderingControl UPnP::ControlPoint::Service=HASH(0x45f0508) $VAR1 = 'LastChange';
2021.04.13 06:00:43 5: UPNPController: Received event: by 192.x.y.2_49200-zs-RenderingControl property: <Event xmlns = "urn:schemas-upnp-org:metadata-1-0/AVT_RCS"> <InstanceID val="0"> <PresetNameList val="FactoryDefaults"/> </InstanceID> </Event>
2021.04.13 06:00:43 5: UPNP_Controller: dispatch AVTransport|192.x.y.2_49200|LastChange|<Event xmlns = "urn:schemas-upnp-org:metadata-1-0/AVT_RCS"> <InstanceID val="0"> <PresetNameList val="FactoryDefaults"/> </InstanceID> </Event>
2021.04.13 06:00:43 5: DLNAController: message from UPNP_Controller, message: AVTransport|192.x.y.2_49200|LastChange|<Event xmlns = "urn:schemas-upnp-org:metadata-1-0/AVT_RCS"> <InstanceID val="0"> <PresetNameList val="FactoryDefaults"/> </InstanceID> </Event>
2021.04.13 06:00:43 4: DLNAController: message parameters: AVTransport, 192.x.y.2_49200, LastChange, <Event xmlns = "urn:schemas-upnp-org:metadata-1-0/AVT_RCS"> <InstanceID val="0"> <PresetNameList val="FactoryDefaults"/> </InstanceID> </Event>
2021.04.13 06:00:43 4: DLNAController DLNA_fa095ecc_e13e_40e7_8e6c_BC0543512C9A: state update from UPNP_Controller, address 192.x.y.2_49200

2021.04.13 06:00:45 5: UPNPController: warning: Carp, Loading device description failed with error: 500 Can't connect to 192.x.y.2:49200 (No route to host) (Location: http://192.x.y.2:49200/MediaRendererDevDesc.xml) at ./FHEM/98_UPNPController.pm line 217.

2021.04.13 06:00:46 5: UPNPController: Received event: by 192.x.y.2_49200-zs-RenderingControl UPnP::ControlPoint::Service=HASH(0x45f0508) $VAR1 = 'LastChange';
$VAR2 = '&lt;Event xmlns = &quot;urn:schemas-upnp-org:metadata-1-0/AVT_RCS&quot;&gt; &lt;InstanceID val=&quot;0&quot;&gt; &lt;PresetNameList val=&quot;FactoryDefaults&quot;/&gt; &lt;/InstanceID&gt; &lt;/Event&gt;';
2021.04.13 06:00:46 5: UPNPController: Received event: by 192.x.y.2_49200-zs-RenderingControl property: <Event xmlns = "urn:schemas-upnp-org:metadata-1-0/AVT_RCS"> <InstanceID val="0"> <PresetNameList val="FactoryDefaults"/> </InstanceID> </Event>
2021.04.13 06:00:46 5: UPNP_Controller: dispatch AVTransport|192.x.y.2_49200|LastChange|<Event xmlns = "urn:schemas-upnp-org:metadata-1-0/AVT_RCS"> <InstanceID val="0"> <PresetNameList val="FactoryDefaults"/> </InstanceID> </Event>
2021.04.13 06:00:46 5: DLNAController: message from UPNP_Controller, message: AVTransport|192.x.y.2_49200|LastChange|<Event xmlns = "urn:schemas-upnp-org:metadata-1-0/AVT_RCS"> <InstanceID val="0"> <PresetNameList val="FactoryDefaults"/> </InstanceID> </Event>
2021.04.13 06:00:46 4: DLNAController: message parameters: AVTransport, 192.x.y.2_49200, LastChange, <Event xmlns = "urn:schemas-upnp-org:metadata-1-0/AVT_RCS"> <InstanceID val="0"> <PresetNameList val="FactoryDefaults"/> </InstanceID> </Event>
2021.04.13 06:00:46 4: DLNAController DLNA_fa095ecc_e13e_40e7_8e6c_BC0543512C9A: state update from UPNP_Controller, address 192.x.y.2_49200

2021.04.13 06:00:48 5: UPNPController: warning: Carp, Loading device description failed with error: 500 Can't connect to 192.x.y.2:49200 (No route to host) (Location: http://192.x.y.2:49200/MediaRendererDevDesc.xml) at ./FHEM/98_UPNPController.pm line 217.
2021.04.13 06:00:51 5: UPNPController: warning: Carp, Loading device description failed with error: 500 Can't connect to 192.x.y.2:49200 (No route to host) (Location: http://192.x.y.2:49200/MediaRendererDevDesc.xml) at ./FHEM/98_UPNPController.pm line 217.

2021.04.13 06:00:52 4: UPNPController: try to renew subscriptions for services, device UPNP_Controller with timeout: 1800
2021.04.13 06:00:52 5: UPNPController: Received event: by 192.x.y.2_49200-zs-RenderingControl UPnP::ControlPoint::Service=HASH(0x45f0508) $VAR1 = 'LastChange';
$VAR2 = '&lt;Event xmlns = &quot;urn:schemas-upnp-org:metadata-1-0/AVT_RCS&quot;&gt; &lt;InstanceID val=&quot;0&quot;&gt; &lt;PresetNameList val=&quot;FactoryDefaults&quot;/&gt; &lt;/InstanceID&gt; &lt;/Event&gt;';
2021.04.13 06:00:52 5: UPNPController: Received event: by 192.x.y.2_49200-zs-RenderingControl property: <Event xmlns = "urn:schemas-upnp-org:metadata-1-0/AVT_RCS"> <InstanceID val="0"> <PresetNameList val="FactoryDefaults"/> </InstanceID> </Event>
2021.04.13 06:00:52 5: UPNP_Controller: dispatch AVTransport|192.x.y.2_49200|LastChange|<Event xmlns = "urn:schemas-upnp-org:metadata-1-0/AVT_RCS"> <InstanceID val="0"> <PresetNameList val="FactoryDefaults"/> </InstanceID> </Event>
2021.04.13 06:00:52 5: DLNAController: message from UPNP_Controller, message: AVTransport|192.x.y.2_49200|LastChange|<Event xmlns = "urn:schemas-upnp-org:metadata-1-0/AVT_RCS"> <InstanceID val="0"> <PresetNameList val="FactoryDefaults"/> </InstanceID> </Event>
2021.04.13 06:00:52 4: DLNAController: message parameters: AVTransport, 192.x.y.2_49200, LastChange, <Event xmlns = "urn:schemas-upnp-org:metadata-1-0/AVT_RCS"> <InstanceID val="0"> <PresetNameList val="FactoryDefaults"/> </InstanceID> </Event>
2021.04.13 06:00:52 4: DLNAController DLNA_fa095ecc_e13e_40e7_8e6c_BC0543512C9A: state update from UPNP_Controller, address 192.x.y.2_49200

2021.04.13 06:00:54 5: UPNPController: warning: Carp, Loading device description failed with error: 500 Can't connect to 192.x.y.2:49200 (No route to host) (Location: http://192.x.y.2:49200/MediaRendererDevDesc.xml) at ./FHEM/98_UPNPController.pm line 217.
2021.04.13 06:00:57 5: UPNPController: warning: Carp, Loading device description failed with error: 500 Can't connect to 192.x.y.2:49200 (No route to host) (Location: http://192.x.y.2:49200/MediaRendererDevDesc.xml) at ./FHEM/98_UPNPController.pm line 217.

-----> correct IP(address) recognized for 192.x.y.37  <----- old readings(192.x.y.2) deleted; DLNAController with new (correct) address; new subscriptions
2021.04.13 06:00:58 5: UPNPController: UPNP_Controller: alive-notify message device uuid:fa095ecc-e13e-40e7-8e6c-BC0543512C9A received

2021.04.13 06:00:58 3: UPNPController: old definition of device uuid:fa095ecc-e13e-40e7-8e6c-BC0543512C9A found with 192.x.y.2_49200. readings deleted.

2021.04.13 06:00:58 5: UPNPController: UPNP_Controller: device uuid:fa095ecc-e13e-40e7-8e6c-BC0543512C9A found. Check for processing
2021.04.13 06:00:58 5: UPNPController: UPNP_Controller: device uuid:fa095ecc-e13e-40e7-8e6c-BC0543512C9A will be controlled with 192.x.y.37_49200
2021.04.13 06:00:58 5: UPNPController: UPNP_Controller: device uuid:fa095ecc-e13e-40e7-8e6c-BC0543512C9A has service with serviceId: RenderingControl
2021.04.13 06:00:58 5: UPNPController: UPNP_Controller: device uuid:fa095ecc-e13e-40e7-8e6c-BC0543512C9A has service with serviceId: ConnectionManager
2021.04.13 06:00:58 5: UPNPController: UPNP_Controller: device uuid:fa095ecc-e13e-40e7-8e6c-BC0543512C9A has service with serviceId: AVTransport
2021.04.13 06:00:58 5: UPNP_Controller: dispatch AVTransport|192.x.y.37_49200|online|urn:schemas-upnp-org:metadata-1-0/AVT
2021.04.13 06:00:58 5: DLNAController: message from UPNP_Controller, message: AVTransport|192.x.y.37_49200|online|urn:schemas-upnp-org:metadata-1-0/AVT

2021.04.13 06:00:58 4: DLNAController: message parameters: AVTransport, 192.x.y.37_49200, online, urn:schemas-upnp-org:metadata-1-0/AVT

2021.04.13 06:00:58 5: UPNPController: UPNP_Controller, 192.x.y.37_49200, RenderingControl, subscribe,
2021.04.13 06:00:58 5: UPNPController: RenderingControl: urn:schemas-upnp-org:service:RenderingControl:1 found. OK.
2021.04.13 06:00:58 4: UPNPController: subscribe: reading  192.x.y.37_49200-zs-RenderingControl, uniquedevice 192.x.y.37_49200, service RenderingControl
2021.04.13 06:00:58 5: UPNPController: RenderingControl: urn:schemas-upnp-org:service:RenderingControl:1 found. OK.
2021.04.13 06:00:58 5: UPNPController: RenderingControl: urn:schemas-upnp-org:service:RenderingControl:1 found. OK.
2021.04.13 06:00:58 4: UPNPController: subscribe: reading  192.x.y.37_49200-zs-RenderingControl, uniquedevice 192.x.y.37_49200, service RenderingControl timeout: 1800
2021.04.13 06:00:58 5: UPNPController: UPNP_Controller, 192.x.y.37_49200, AVTransport, subscribe,
2021.04.13 06:00:58 5: UPNPController: AVTransport: urn:schemas-upnp-org:service:AVTransport:1 found. OK.
2021.04.13 06:00:58 4: UPNPController: subscribe: reading  192.x.y.37_49200-zs-AVTransport, uniquedevice 192.x.y.37_49200, service AVTransport
2021.04.13 06:00:58 5: UPNPController: AVTransport: urn:schemas-upnp-org:service:AVTransport:1 found. OK.
2021.04.13 06:00:58 5: UPNPController: AVTransport: urn:schemas-upnp-org:service:AVTransport:1 found. OK.
2021.04.13 06:00:58 4: UPNPController: subscribe: reading  192.x.y.37_49200-zs-AVTransport, uniquedevice 192.x.y.37_49200, service AVTransport timeout: 1800

2021.04.13 06:00:58 3: DLNAController: DLNA_fa095ecc_e13e_40e7_8e6c_BC0543512C9A address changed; services initially subscribed

2021.04.13 06:00:58 4: DLNAController DLNA_fa095ecc_e13e_40e7_8e6c_BC0543512C9A: state update from UPNP_Controller, address 192.x.y.37_49200
.....
Edit2: Auch an Tag2 sieht es gut aus. Im UPNPController sind die services um 6:00 neu subscribed u. das DLNAController-device verarbeitet brav die eintreffenden events.
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: enno am 16 April 2021, 18:54:35
Moin Markus,

ich habe "The Frame" von Samsung am Start und du hattest den Tip (https://forum.fhem.de/index.php/topic,109498.25.html) gegeben es hier zu testen. Ich habe schnell mal UPNPController nach Anleitung auf meinem Raspi 3 installiert. Die Readings werden angelegt, aber ich bekomme im Log im 9 Sekunden Takt folgende Fehlermeldung. Was könnte fehlen? Was hilft bei der Fehlersuche?

2021.04.16 18:35:36 3: UPNPController: handleOnce failed, not properly closed tag 'root'
Gruss
  Enno
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 16 April 2021, 21:46:24
Hi Enno,
Zitat
Was hilft bei der Fehlersuche?
Ein Log mit verbose=4 sollte genügen. Dann sehen wir den Bösewicht.

Ob die Fehlermeldung wahr ist, lässt sich dann in einem weiteren Schritt prüfen. Ich hab auch ein Gerät, welches ein vermeintlich fehlerhaftes XML meldet. Ich arbeite derzeit daran einen anderen xml-parser einzusetzen. Dauert aber noch.

Grüße Markus
Edit: wenn der Bösewicht gefunden ist, lässt er sich über die Attribute ausschließen.
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: MichaelT am 22 April 2021, 17:38:19
Hallo Markus,

sorry für die späte Rückmeldung. Habe deine Änderung bei mir seit dem 14.04 am laufen.
Das subscribe funktioniert anscheinend nun korrekt  :)

Die freezes sind aber immer noch da  :(

Das "offline"-Thema kann ich im Moment nicht einordnen.
Es sind unterschiedliche Devices zur verschiedenen Zeiten offline.
Ich habe einen dauer-Ping mal laufen lassen.
Habe jetzt meine 1750E auf den neusten Stand aktualisiert. Aber ggf. melden sich auch die Devices einfach nicht mehr??!!
Die von dir gezeigten IP-Wechsel kann ich bei mir nicht sehen.
Frage: Bei 192.x.x.2_49200 ist 49200 der remote port oder der lokale port. Selbst der ist bei mir nach dem Reconnect immer noch gleich.

Aber durch mein zweites FHEM ist das mit den freezes nicht mehr so schlimm. Das Hauptsystem läuft.

Danke für deine Mühen.

Gruß Michael

Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: enno am 22 April 2021, 18:31:50
Hi Enno,Ein Log mit verbose=4 sollte genügen. Dann sehen wir den Bösewicht.

Moin Markus,

ausser der Log 3 Meldung kommt nichts :( Ich habe mal Verbose 5 gemacht. Viel hilft viel... nichts es kann nur:

2021.04.22 18:29:58 3: DLNARenderer: handleOnce failed, not properly closed tag 'root'
Gruss
  Enno
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 22 April 2021, 20:02:28
Zitat
2021.04.22 18:29:58 3: DLNARenderer:
??? Wieso DLNARenderer ? Vorher war es noch
Zitat
2021.04.16 18:35:36 3: UPNPController:
Oder hast Du jetzt DLNARenderer definiert ?

@Michael: Dann beobachte bitte mal weiter. Detaillierter Analysen machen wir dann, wenn ich die neue Version mit dem neuen xml-parser fertig habe. Dauert aber noch, da ich im Augenblick zu nichts komme.  :'(

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: enno am 23 April 2021, 08:15:51
Moin Markus,

ich hatte den UPNPController gelöscht, da das Log voll lief. dann um zu testen den falschen definiert :o Jetzt korrigiert und auf verbose 4 gesetzt. Es kommen die Fehlermeldungen und Meldungen Log4. Welcher ist jetzt der die Fehlermeldung erzeugt?

Ich könnte das Log anhängen, allerdings erscheinen dort fast alle Device die bei mir im Netz rumgeistern.

Beispiel: 2021.04.23 08:07:37 4: UPNPController: discovery message of Phoscon-GW (192.168.1.230) with UDN: uuid:1764ce80-e2fe-4bd9-874d-3342a1deef4b action: deviceAdded
2021.04.23 08:07:37 3: UPNPController: old definition of device uuid:1764ce80-e2fe-4bd9-874d-3342a1deef4b found with 192.168.1.156_49154. readings deleted.
2021.04.23 08:07:38 3: UPNPController: handleOnce failed, not properly closed tag 'root'

Wenn ich ignoreUDNs uuid:1764ce80-e2fe-4bd9-874d-3342a1deef4b nutze, kommen die Fehlermeldungen weiterhin. Der ist es wohl nicht.  Wie erkenne ich den Übeltäter?

Gruss
  Enno
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 23 April 2021, 09:30:02
Hi Enno,
 ;D ;D ;D
doch, ich vermute schon dass es das device ist.
Zitat
Wenn ich ignoreUDNs uuid:1764ce80-e2fe-4bd9-874d-3342a1deef4b nutze, kommen die Fehlermeldungen weiterhin.
Du musst nach dem Setzen des Attributs mindestens ein modify machen(shutdown/restart ist die noch sicherere Variante aber eben wg. shutdown "unangenehmer"). Das ist so eine Feinheit, die ich erst in Angriff nehme, wenn die "Grundfunktionalität" erledigt ist. Und da kommen leider immer wieder devices(wie Deins) dazu, die sich bockig anstellen.
Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: enno am 23 April 2021, 12:36:15
Moin Markus,

da ich das Ganze auf meinem "Spiel Raspi" mache ist Neutstart kein Problem. Ich habe eben über  ignoreUDNs fast alle uuid mit Komma getrennt eingetippt und immer schön nach jeder neuen Adresse einen "Shutdown restart" gemacht. Fehlermeldung kam weiter...

Jetzt habe ich das Attribut ignoreUDNs gelöscht und meinen Hauptverdächtigen "XORO Internetradio" per ignoredIPs gespeert. Neustart und es ist Ruhe. Damit klapt es  :) Dieses Problem scheint für mich erst mal gelöst.

Gruss
  Enno
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 23 April 2021, 13:47:47
da muss ich die help mal etwas deutlicher formulieren Aber gar nicht so einfach: ...IPs werden dem zentralen Controlpoint bei der Definition mitgegeben. Der Controlpoint ist das Herz/Hirn, verarbeitet also erst einmal alles, wie ggfs. über ...IPs definiert(daher auch mindestens modify erforderlich). Nachrangig wird ...UDNs "nur" im Modul benutzt, d.h. es kommen zwar die notify-,event-messages an, werden dann aber in einer quasi 2. Stufe nicht weiter verarbeitet.  ;) Und in Deinem Fall ist die message buggy, was der Controlpoint gemerkt hat.
(Ich musste das jetzt auch erst wieder nachgucken)

Gerne nehme ich Vorschläge für die 4 Attribute in der help an.  ;)

Edit: 25.4. soeben eine neue Version in Post#2 attached, damit Änderungen der Attribute ignoredIPs, usedonlyIPs, envNamespace, envPrefix sofort wirksam werden ohne dass ein modify oder gar shutdown/restart notwendig sind. Es erfolgt eine neue Suche mit ssdp:all. Alte readings werden nicht gelöscht.
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 25 April 2021, 10:39:08
Hallo Michael,
nachdem auch bei mir ein device verrückt spielt, bin ich noch einmal das freeze-Thema angegangen. Hier (https://forum.fhem.de/index.php/topic,118996.msg1152146.html#msg1152146) findest Du meine Modifikation.

Einen workaround(außer Ausschluss per ignoredIPs) hab ich noch nicht gefunden.  :'( Geschweige denn die Ursache nachvollzogen. Mein device läuft produktiv problemlos. Im Testsystem bis gestern auch. Dann kam eine byebye-message u. mit dem nächsten alive gibt's seitdem den 20s timeout. So 30(physisches device=3UPnP-devices)mal.  Und im 12min-Zyklus. System quasi tot.  ::)Selbst Reboot etc. hilft nicht. Manchmal hab ich das Gefühl, das device blockt die IP :-\

Grüße Markus

Edit: Was es genau war, weiß ich nicht, aber mein UPNPController im Testsystem ist wieder freeze-frei.  :) Möglichkeiten wo ich Dinge verändert habe: das device lief nicht über mein eigentliches pi-hole, sondern noch über das des Testsystems, ARP-Cache geflushed, Netzwerktabelle in pi-hole geflushed, powerline-Adapter stromlos, device von manuellen settings auf DHCP umgestellt, zum wiederholten Male stromlos... und plötzlich lief alles wieder.
Dass es ein generelles Netzwerkproblem war, habe ich irgendwann dadurch gemerkt, das selbst ein simples ping vom FHEM-Rpi nicht funktionierte. Von anderen devices funktionierte das ping problemlos.
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: MichaelT am 06 Mai 2021, 19:47:22
Hallo Markus,

habe deine Änderung am ControlPoint auch mal gemacht (2. Mai) Ich sehe keine langen Freezes mehr.
Aktuell aber auch keine offline mehr.

Die Renderer melden sich aber definitiv irgendwann ab und wieder an. Mal länger, mal kürzer.

Schauen wir mal.

Danke und Gruß Michael
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 06 Mai 2021, 22:02:58
Hallo Michael,
schön, dass Du noch dabei bist.

Neue Versionen online. Wichtig: Die Schnittstelle zw. den beiden Modulen ist leicht verändert, so dass ein update beider Module erforderlich ist. Ebenso das nun zum xml-parsing genutzte Perlpaket libxml. Sicherlich ist ein restart nach der Installation sinnvoll.

Die updates der readings nach einem event des devices sehen bei mir gut aus. Bitte mal mit den diversen Mediendateien durchtesten, ob readings fehlen, nicht aktualisiert werden....

Wenn jemand caskeid nutzt oder 2 Lautsprecherdevices "stereo" nutzt, würd ich mich über Logs mit verbose=5 freuen, damit ich mal die xml-Struktur sehe und das dann implementieren kann.

Michael, wir machen dann mit multiroom weiter ? Dein letzter Änderungsvorschlag ist(glaub ich) noch nicht implementiert. Wenn wir damit fertig sind, ist es so weit die Module offiziell zu veröffentlichen u. den DLNARenderer auszumotten.

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 08 Mai 2021, 11:02:58
Hallo Markus,

ich habe die neue Version installiert. Mir ist aufgefallen, das der Tracktitel als Readings nicht mehr angezeigt wird.
Getestet mit Internet-Radio und Titel von der Platte.

Grüße Jens
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 08 Mai 2021, 13:26:59
Hallo Jens,

Danke fürs Testen.

Da ich in der Regel nur mit Bildern u. irgendwelchen Windows-Mustern teste: Kannst Du zum Nachstellen bitte das Reading benennen u. einen Link zum Internetradio posten.

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 08 Mai 2021, 14:35:14
Hallo Markus,

das fehlende Reading heißt : currentTitle

Link zB.:
currentTrackURI  https://streams.starfm.de/berlin.mp3 - für den Rockfan

oder etwas moderater
currentTrackURI  http://addrad.io/4WRH-m
Grüße Jens

Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 08 Mai 2021, 15:00:03
Hi Jens,

die mag mein TV beide nicht, unterschiedliche Reaktion.

Bei currentTrackURI  http://addrad.io/4WRH-msehe ich <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/">
  <InstanceID val="0">
    <AVTransportURI val="http://addrad.io/4WRH-m"/>
    <AVTransportURIMetaData val="&lt;DIDL-Lite xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:dlna=&quot;urn:schemas-dlna-org:metadata-1-0/&quot; xmlns:sec=&quot;http://www.sec.co.kr/&quot;&gt;&lt;item id=&quot;-1&quot; parentID=&quot;parent&quot; restricted=&quot;1&quot;&gt;&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;&lt;dc:title&gt;http://addrad.io/4WRH-m&lt;/dc:title&gt;&lt;upnp:album&gt;ndr_ndrradiomv_sn_mp3&lt;/upnp:album&gt;&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_OP=01;DLNA.ORG_FLAGS=01700000000000000000000000000000&quot;&gt;http://addrad.io/4WRH-m&lt;/res&gt;&lt;/item&gt;&lt;/DIDL-Lite&gt;"/>
    <CurrentTrack val="1"/>
    <CurrentTrackMetaData val="&lt;DIDL-Lite xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:dlna=&quot;urn:schemas-dlna-org:metadata-1-0/&quot; xmlns:sec=&quot;http://www.sec.co.kr/&quot;&gt;&lt;item id=&quot;-1&quot; parentID=&quot;parent&quot; restricted=&quot;1&quot;&gt;&lt;upnp:class&gt;object.item.audioItem.musicTrack&lt;/upnp:class&gt;&lt;dc:title&gt;http://addrad.io/4WRH-m&lt;/dc:title&gt;&lt;upnp:album&gt;ndr_ndrradiomv_sn_mp3&lt;/upnp:album&gt;&lt;res protocolInfo=&quot;http-get:*:audio/mpeg:DLNA.ORG_OP=01;DLNA.ORG_FLAGS=01700000000000000000000000000000&quot;&gt;http://addrad.io/4WRH-m&lt;/res&gt;&lt;/item&gt;&lt;/DIDL-Lite&gt;"/>
    <CurrentTrackURI val="http://addrad.io/4WRH-m"/>
    <NumberOfTracks val="1"/>
    <TransportState val="TRANSITIONING"/>
  </InstanceID>
</Event>
u. 2021.05.08 14:41:15 5: DLNAController:  node <dc:title>http://addrad.io/4WRH-m</dc:title>, node-name: dc:title node-type: 1 node value:  aber text: http://addrad.io/4WRH-m
2021.05.08 14:41:15 5: DLNAController:  node <upnp:album>ndr_ndrradiomv_sn_mp3</upnp:album>, node-name: upnp:album node-type: 1 node value:  aber text: ndr_ndrradiomv_sn_mp3
2021.05.08 14:41:15 4: DLNAController DLNA_a932bb97_fe9d_422e_9dec_ae982c38c20f: state update from UPNP_Controller, address 192.168.178.62_9197
2021.05.08 14:41:15 5: DLNAController: DLNA_a932bb97_fe9d_422e_9dec_ae982c38c20f, 192.168.178.62_9197, AVTransport, Play
erzeugt u. a. currentTitle http://addrad.io/4WRH-mBei Dir nicht ? (Bei mir wird der stream nicht abgespielt.) Anders ?

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 08 Mai 2021, 20:41:36
Hallo Markus,

hier mal ein List vom Küchen-Teufel

Internals:
   CFGFN     
   DEF        uuid:39ca9d29-256c-43b4-a8eb-a8d9014bdbaa 10.1.5.12_56090
   FUUID      60955beb-f33f-828b-443d-1715784fe08ce993
   IODev      UPNP_Controller
   LASTInputDev UPNP_Controller
   MSGCNT     354
   NAME       DLNA_39ca9d29_256c_43b4_a8eb_a8d9014bdbaa
   NR         45
   STATE      online
   TYPE       DLNAController
   UDN        uuid:39ca9d29-256c-43b4-a8eb-a8d9014bdbaa
   UPNP_Controller_MSGCNT 354
   UPNP_Controller_TIME 2021-05-08 20:23:26
   address    10.1.5.12_56090
   READINGS:
     2021-05-08 11:06:56   CurrentTrackDuration 00:00:00
     2021-05-08 14:30:02   CurrentTransportActions Stop
     2021-05-07 17:25:31   IODev           UPNP_Controller
     2021-05-07 17:25:31   UDN             uuid:39ca9d29-256c-43b4-a8eb-a8d9014bdbaa
     2021-05-08 14:29:54   currentTrackURI https://streams.starfm.de/berlin.mp3
     2021-05-07 17:25:31   friendlyName    Kueche
     2021-05-07 17:25:31   manufacturer    Lautsprecher Teufel GmbH
     2021-05-07 17:25:31   modelDescription Virtual Media Player
     2021-05-07 17:25:31   modelName       Teufel One M
     2021-05-07 17:25:31   modelNumber     1
     2021-05-08 18:51:33   multiRoomVolume 23
     2021-05-07 17:25:31   mute            0
     2021-05-07 17:25:31   presence        online
     2021-05-08 20:23:26   state           online
     2021-05-08 14:30:02   transportState  PLAYING
     2021-05-07 17:25:31   transportStatus OK
     2021-05-08 18:51:33   volume          23
   helper:
     avTransport 1
     caskeid    0
     caskeidClients
     subscribed 0
Attributes:
   alias      Kueche
   room       DLNAController
   userattr   channel_01 channel_02 channel_03 channel_04 channel_05 channel_06 channel_07 channel_08 channel_09 channel_10 multiRoomGroups ttsLanguage
   webCmd     volume


currentTitle sollte eigentlich den Sendernamen oder Künstlernamen - Musiktitel anzeigen
z.B.:
2021-03-21_12:29:12 DLNA_0e4b86cc_5723_46be_a924_2f459bb908a8 currentTitle: NDR 2
oder
2021-03-21_12:29:50 DLNA_0e4b86cc_5723_46be_a924_2f459bb908a8 currentTitle: ATB x Topic x A7S - Your Love (9PM)

Grüße Jens

P.S.: mein Plasma-TV ist so alt, da kann ich nicht mit testen
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 08 Mai 2021, 21:49:35
Hi Jens,

ich bräuchte ein verbose=4 Log.

Gerade nochmal mit der Windows-Beispielmusik u. dem Mediaplayer getestet. Titel wird im reading richtig angezeigt.

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 09 Mai 2021, 00:31:38
Hallo Markus,

2021.05.09 00:25:42 4: DLNAController DLNA_39ca9d29_256c_43b4_a8eb_a8d9014bdbaa: state update from UPNP_Controller, address 10.1.5.12_52941
2021.05.09 00:25:42 4: DLNAController: message parameters: AVTransport, 10.1.5.12_59877, LastChange, <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><CurrentTrackMetaData val="&lt;?xml version=&quot;1.0&quot;?&gt;
&lt;DIDL-Lite xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/&quot; xmlns:raumfeld=&quot;urn:schemas-raumfeld-com:meta-data/raumfeld&quot; xmlns:upnp=&quot;urn:schemas-upnp-org:metadata-1-0/upnp/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:dlna=&quot;urn:schemas-dlna-org:metadata-1-0/&quot; xmlns:pv=&quot;http://www.pv.com/pvns/&quot; lang=&quot;en&quot;&gt;&lt;item parentID=&quot;0/Favorites/RecentlyPlayed&quot; id=&quot;0/Favorites/RecentlyPlayed/101&quot; restricted=&quot;1&quot; refID=&quot;0/RadioTime/Search/s-s228746&quot;&gt;&lt;raumfeld:name&gt;Station&lt;/raumfeld:name&gt;&lt;upnp:class&gt;object.item.audioItem.audioBroadcast.radio&lt;/upnp:class&gt;&lt;raumfeld:section&gt;RadioTime&lt;/raumfeld:section&gt;&lt;raumfeld:durability&gt;120&lt;/raumfeld:durability&gt;&lt;raumfeld:ebrowse&gt;http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&amp;amp;formats=mp3%2Cogg&amp;amp;serial=50%3A1e%3A2d%3A11%3A3e%3A30&amp;amp;id=s228746&amp;amp;c=ebrowse&lt;/raumfeld:ebrowse&gt;&lt;dc:title&gt;Billy Joel - Uptown girl&lt;/dc:title&gt;&lt;upnp:albumArtURI dlna:profileID=&quot;JPEG_TN&quot;&gt;http://cdn-profiles.tunein.com/s228746/images/logoq.png?t=154228&lt;/upnp:albumArtURI&gt;&lt;res bitrate=&quot;128&quot; protocolInfo=&quot;http-get:*:audio/x-mpegurl:*&quot;&gt;http://opml.radiotime.com/Tune.ashx?id=e89247373&amp;amp;sid=s228746&amp;amp;formats=mp3,ogg&amp;amp;partnerId=7aJ9pvV5&amp;amp;serial=50:1e:2d:11:3e:30&lt;/res&gt;&lt;/item&gt;&lt;/DIDL-Lite&gt;
"/></InstanceID></Event>
2021.05.09 00:25:42 1: DLNAController:  XML parsing error: :1: parser error : EntityRef: expecting ';'
<raumfeld:ebrowse>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&formats
                                                                                ^
:1: parser error : EntityRef: expecting ';'
>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&formats=mp3%2Cogg&serial
                                                                                ^
:1: parser error : EntityRef: expecting ';'
.ashx?partnerId=7aJ9pvV5&formats=mp3%2Cogg&serial=50%3A1e%3A2d%3A11%3A3e%3A30&id
                                                                                ^
:1: parser error : EntityRef: expecting ';'
nerId=7aJ9pvV5&formats=mp3%2Cogg&serial=50%3A1e%3A2d%3A11%3A3e%3A30&id=s228746&c
                                                                                ^
:1: parser error : EntityRef: expecting ';'
tp-get:*:audio/x-mpegurl:*">http://opml.radiotime.com/Tune.ashx?id=e89247373&sid
                                                                                ^
:1: parser error : EntityRef: expecting ';'
-mpegurl:*">http://opml.radiotime.com/Tune.ashx?id=e89247373&sid=s228746&formats
                                                                                ^
:1: parser error : EntityRef: expecting ';'
/opml.radiotime.com/Tune.ashx?id=e89247373&sid=s228746&formats=mp3,ogg&partnerId
                                                                                ^
:1: parser error : EntityRef: expecting ';'
com/Tune.ashx?id=e89247373&sid=s228746&formats=mp3,ogg&partnerId=7aJ9pvV5&serial
                                                                                ^

2021.05.09 00:26:25 4: UPNPController: try to renew subscriptions for services, device UPNP_Controller with timeout: 1800

hilft dir das?

Grüße Jens

Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 09 Mai 2021, 08:16:08
Hi Jens,
auf jeden Fall.  ;)
2021.05.09 00:25:42 1: DLNAController:  XML parsing error: :1: parser error : EntityRef: expecting ';'
<raumfeld:ebrowse>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&formats
                                                                                ^
:1: parser error : EntityRef: expecting ';'
>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&formats=mp3%2Cogg&serial                     
Nun sehe ich, dass es an den Teufels liegt, bzw. dass der neu implementierte xml-parser mit dem xml nicht klar kommt.

Ist ja bereits mit verbose=1 im Log ersichtlich.  ::)

Ich versuch mal das event der Teufels zu verstehen....

Grüße Markus
Edit:
so würde ich es mal encoden<DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:raumfeld="urn:schemas-raumfeld-com:meta-data/raumfeld" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/" xmlns:pv="http://www.pv.com/pvns/" lang="en">
<item parentID="0/Favorites/RecentlyPlayed" id="0/Favorites/RecentlyPlayed/101" restricted="1" refID="0/RadioTime/Search/s-s228746">
<raumfeld:name>Station</raumfeld:name>
<upnp:class>object.item.audioItem.audioBroadcast.radio</upnp:class>
<raumfeld:section>RadioTime</raumfeld:section>
<raumfeld:durability>120</raumfeld:durability>
<raumfeld:ebrowse>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&amp;amp;formats=mp3%2Cogg&amp;amp;serial=50%3A1e%3A2d%3A11%3A3e%3A30&amp;amp;id=s228746&amp;amp;c=ebrowse</raumfeld:ebrowse>
<dc:title>Billy Joel - Uptown girl</dc:title>
<upnp:albumArtURI dlna:profileID="JPEG_TN">http://cdn-profiles.tunein.com/s228746/images/logoq.png?t=154228</upnp:albumArtURI>
<res bitrate="128" protocolInfo="http-get:*:audio/x-mpegurl:*">http://opml.radiotime.com/Tune.ashx?id=e89247373&amp;amp;sid=s228746&amp;amp;formats=mp3,ogg&amp;amp;partnerId=7aJ9pvV5&amp;amp;serial=50:1e:2d:11:3e:30</res>
</item>
</DIDL-Lite>
Der Dir fehlende Titel ist korrekterweise hier <dc:title>Billy Joel - Uptown girl</dc:title>aber hier <raumfeld:ebrowse>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&amp;amp;formats=mp3%2Cogg&amp;amp;serial=50%3A1e%3A2d%3A11%3A3e%3A30&amp;amp;id=s228746&amp;amp;c=ebrowse</raumfeld:ebrowse>
krachts. Müsste so aufgelöst werden <raumfeld:ebrowse>http://opml.radiotime.com/Tune.ashx?partnerId=7aJ9pvV5&formats=mp3,ogg&serial=50:1e:2d:11:3e:30&id=s228746&c=ebrowse</raumfeld:ebrowse>Und hier ähnlich<res bitrate="128" protocolInfo="http-get:*:audio/x-mpegurl:*">http://opml.radiotime.com/Tune.ashx?id=e89247373&sid=s228746&formats=mp3,ogg&partnerId=7aJ9pvV5&serial=50:1e:2d:11:3e:30</res>
Frag mich nicht warum das nicht komplett dekodiert wurde...

Edit2: Das ....<Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><CurrentTrackMetaData ...."behauptet, Du hast kein Update des 98_UPNPController gemacht ?  :-\  ???  ::)
(persönliche Daten sind nicht in dem Logextrakt ? Sonst sollten wir die anonymisieren)
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: MichaelT am 16 Mai 2021, 14:07:15
Hallo Michael,
schön, dass Du noch dabei bist.

Neue Versionen online.
...

Hallo Markus,

schön dass Du noch Lust hast  8)

Deine Module habe ich übernommen. Funktionieren soweit.
Bei den Logs ist mir aufgefallen, dass du an einigen Stellen hash->{name} verwendest. hash->{NAME} ist aber glaube ich richtig.
Weiterhin kommen an einigen Stellen Warnings, wo zum Bsp. nodeValue nicht initialisiert ist.

Hier mal ein Beispiel:

2021.05.16 13:15:30.106 5: UPNPController: UPNPSocket-SYS_UPNP-42461, received subscription event: event was processed by subscriptionCallback ,
2021.05.16 13:15:34.344 5: UPNPController:  UPNPSocket-SYS_UPNP-42461 incoming message; will be processed by perlupnp handleOnce
2021.05.16 13:15:34.362 5: UPNPController: Received event: by x.x.x.31_58643-zs-AVTransport UPnP::ControlPoint::Service=HASH(0x39600ec) $VAR1 = 'LastChange';
$VAR2 = '&lt;Event xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/AVT/&quot;&gt;&lt;InstanceID val=&quot;0&quot;&gt;&lt;TransportState val=&quot;PLAYING&quot;/&gt;&lt;/InstanceID&gt;&lt;/Event&gt;';

2021.05.16 13:15:34.363 5: SYS_UPNP: dispatch AVTransport|x.x.x.31_58643|LastChange|&lt;Event xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/AVT/&quot;&gt;&lt;InstanceID val=&quot;0&quot;&gt;&lt;TransportState val=&quot;PLAYING&quot;/&gt;&lt;/InstanceID&gt;&lt;/Event&gt;
2021.05.16 13:15:34.364 5: DLNAController: message from SYS_UPNP, message: AVTransport|x.x.x.31_58643|LastChange|&lt;Event xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/AVT/&quot;&gt;&lt;InstanceID val=&quot;0&quot;&gt;&lt;TransportState val=&quot;PLAYING&quot;/&gt;&lt;/InstanceID&gt;&lt;/Event&gt;
2021.05.16 13:15:34.364 4: DLNAController: message parameters: AVTransport, x.x.x.31_58643, LastChange, &lt;Event xmlns=&quot;urn:schemas-upnp-org:metadata-1-0/AVT/&quot;&gt;&lt;InstanceID val=&quot;0&quot;&gt;&lt;TransportState val=&quot;PLAYING&quot;/&gt;&lt;/InstanceID&gt;&lt;/Event&gt;
2021.05.16 13:15:34.365 5: DLNAController: OG_SZ_MR process property LastChange, xml-event <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportState val="PLAYING"/></InstanceID></Event>
2021.05.16 13:15:34.365 4: DLNAController: OG_SZ_MR parsing did enter load_xml call: <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportState val="PLAYING"/></InstanceID></Event>
2021.05.16 13:15:34.367 4: DLNAController: OG_SZ_MR dom structure: <?xml version="1.0"?>
<Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/">
  <InstanceID val="0">
    <TransportState val="PLAYING"/>
  </InstanceID>
</Event>

2021.05.16 13:15:34.368 4: DLNAController: OG_SZ_MR LastChange xml event with root <Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><TransportState val="PLAYING"/></InstanceID></Event> found with name: Event
2021.05.16 13:15:34.368 5: DLNAController: OG_SZ_MR registered ns-uri is: urn:schemas-upnp-org:metadata-1-0/AVT/
2021.05.16 13:15:34.369 5: UPNPController: warning: main, Use of uninitialized value in concatenation (.) or string at ./FHEM/98_DLNAController.pm line 584.

2021.05.16 13:15:34.370 5: DLNAController: OG_SZ_MR node <InstanceID val="0"><TransportState val="PLAYING"/></InstanceID>, node-name: InstanceID node-type: 1 node value:
2021.05.16 13:15:34.371 5: UPNPController: warning: main, Use of uninitialized value in concatenation (.) or string at ./FHEM/98_DLNAController.pm line 590.

2021.05.16 13:15:34.371 4: DLNAController: OG_SZ_MR node <TransportState val="PLAYING"/>, node-name: TransportState node-type: 1 node value:
2021.05.16 13:15:34.372 4: DLNAController: OG_SZ_MR Update reading transportState with PLAYING
2021.05.16 13:15:34.372 5: UPNPController: warning: main, Use of uninitialized value $val in concatenation (.) or string at ./FHEM/98_DLNAController.pm line 663.

2021.05.16 13:15:34.372 4: DLNAController: OG_SZ_MR Update reading transportStatus with
2021.05.16 13:15:34.372 5: UPNPController: warning: main, Use of uninitialized value $val in string ne at ./FHEM/98_DLNAController.pm line 664.

2021.05.16 13:15:34.373 5: UPNPController: warning: main, Use of uninitialized value $val in concatenation (.) or string at ./FHEM/98_DLNAController.pm line 663.

2021.05.16 13:15:34.373 4: DLNAController: OG_SZ_MR Update reading currentTrackURI with
2021.05.16 13:15:34.373 5: UPNPController: warning: main, Use of uninitialized value $val in string ne at ./FHEM/98_DLNAController.pm line 664.

2021.05.16 13:15:34.373 5: UPNPController: warning: main, Use of uninitialized value $val in concatenation (.) or string at ./FHEM/98_DLNAController.pm line 663.

2021.05.16 13:15:34.373 4: DLNAController: OG_SZ_MR Update reading nextAVTransportURI with
2021.05.16 13:15:34.374 5: UPNPController: warning: main, Use of uninitialized value $val in string ne at ./FHEM/98_DLNAController.pm line 664.

2021.05.16 13:15:34.374 5: UPNPController: warning: main, Use of uninitialized value $val in concatenation (.) or string at ./FHEM/98_DLNAController.pm line 663.

2021.05.16 13:15:34.374 4: DLNAController: OG_SZ_MR Update reading CurrentMediaDuration with
2021.05.16 13:15:34.374 5: UPNPController: warning: main, Use of uninitialized value $val in string ne at ./FHEM/98_DLNAController.pm line 664.

2021.05.16 13:15:34.374 5: UPNPController: warning: main, Use of uninitialized value $val in concatenation (.) or string at ./FHEM/98_DLNAController.pm line 663.

2021.05.16 13:15:34.374 4: DLNAController: OG_SZ_MR Update reading CurrentTrackDuration with
2021.05.16 13:15:34.374 5: UPNPController: warning: main, Use of uninitialized value $val in string ne at ./FHEM/98_DLNAController.pm line 664.

2021.05.16 13:15:34.375 5: UPNPController: warning: main, Use of uninitialized value $val in concatenation (.) or string at ./FHEM/98_DLNAController.pm line 663.

2021.05.16 13:15:34.375 4: DLNAController: OG_SZ_MR Update reading CurrentTransportActions with
2021.05.16 13:15:34.375 5: UPNPController: warning: main, Use of uninitialized value $val in string ne at ./FHEM/98_DLNAController.pm line 664.

2021.05.16 13:15:34.375 4: DLNAController OG_SZ_MR: state update from SYS_UPNP, address x.x.x.31_58643


Zeile 605 und 606 sieht irgendwie nach en/de aus. Soll das so sein?

Ich versuche Dir mal ein Stereo-Log zur Verfügung zu stellen, habe ich bisher noch nicht genutzt.

Readings ok:
currentAlbum --> Electronic Music Radio
currentAlbumArtURI -->http://i.flowlive.com/radio/53/25/12553_290.png?scale=640x480
currentTitle Sunshine Live
currentTrackURI -->http://p.flowlive.com/r/68/27/62768.mp3.m3u

Ändern sich nicht:
currentMediaDurration
currentTrackDurration

2021.05.16 13:56:16.645 4: DLNAController: OG_SZ_MR parsing did enter metadata: <DIDL-Lite xmlns="urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:upnp="urn:schemas-upnp-org:metadata-1-0/upnp/" xmlns:dlna="urn:schemas-dlna-org:metadata-1-0/"><item id="22$@54098" parentID="22$4725" restricted="1"><dc:title>Road Songs for Lovers</dc:title><dc:creator>Chris Rea</dc:creator><dc:date>2017-01-01T00:00:00Z</dc:date><upnp:artist>Chris Rea</upnp:artist><upnp:actor>Chris Rea</upnp:actor><upnp:actor>Chris Rea</upnp:actor><upnp:author>Chris Rea</upnp:author><upnp:author>Chris Rea</upnp:author><upnp:album>Road Songs for Lovers</upnp:album><upnp:genre>Rock</upnp:genre><upnp:originalTrackNumber>3</upnp:originalTrackNumber><res duration="0:04:13.000" size="10131584" bitrate="40000" sampleFrequency="44100" nrAudioChannels="2" protocolInfo="http-get:*:audio/mpeg:DLNA.ORG_PN=MP3;DLNA.ORG_OP=01;DLNA.ORG_FLAGS=01700000000000000000000000000000">http://x.x.x.:50002/m/MP3/54098.mp3</res><upnp:class>object.item.audioItem.musicTrack</upnp:class></item></DIDL-Lite>

EDIT:
getMediaInfo
getPositionInfo
Muss man diese Info pollen oder kommen da normalerweise Events?

Gruß und sorry, wenn's mal länger dauert
Michael

Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 16 Mai 2021, 16:43:51
Hi Michael,
sieht gut aus.
Zitat
Weiterhin kommen an einigen Stellen Warnings, wo zum Bsp. nodeValue nicht initialisiert ist.
Korrekt. Ist aber nur vorübergehend beim Logging, um das xml-parsing besser zu verstehen.
Zitat
Zeile 605 und 606 sieht irgendwie nach en/de aus. Soll das so sein?
Yes.  ;D Ich dachte auch erst, was soll das(ist aus DLNARenderer übernommen). Aber es gibt tatsächlich diese 2 unterschiedlichen Informationen seitens der events.
Zitat
currentMediaDurration
scheint gar nicht geliefert zu werden.  :-\
Zitat
currentTrackDurration
Da hast Du mich wieder erwischt. Nicht implementiert.
Zitat
getMediaInfo
getPositionInfo
Was meinst Du ? Kann Dir da nicht folgen.

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 16 Mai 2021, 17:05:12
Hallo Markus,

nach dem Hinweis aus dem Beitrag 3

Zitat
Zusätzlich sind die Perlpakete ◾SOAP::Lite, ◾LWP::Simple, ◾XML::Simple, ◾XML::Parser::Lite, ◾LWP::UserAgent zu installieren

hab ich gedacht XML::Parser::Lite wird auf dem System nicht mehr gebraucht, also weg damit. Ergebnis = UPNPController platt

Zitat
2021.05.16 13:30:34 1: reload: Error:Modul 98_UPNPController deactivated:
 Can't locate XML/Parser/Lite.pm in @INC (you may need to install the XML::Parser::Lite module)

Grüße Jens
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 16 Mai 2021, 17:39:52
Hi Jens,
wundert mich gerade. Ich gucke...
Grüße Markus
Edit: Oder liegt es daran ?  :-\
Zitat
Edit2: Das
Code: [Auswählen]

 ....<Event xmlns="urn:schemas-upnp-org:metadata-1-0/AVT/"><InstanceID val="0"><CurrentTrackMetaData ....

"behauptet, Du hast kein Update des 98_UPNPController gemacht ?  :-\  ???  ::)
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 16 Mai 2021, 17:53:07
Hallo Markus,

Zitat
"behauptet, Du hast kein Update des 98_UPNPController gemacht ?  :-\  ??? 

 das war auch mein erster Verdacht, deshalb die Dateien aus Beitrag 1 & 3 heute noch einmal runtergeladen, installiert und dann erst gepostet.
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 16 Mai 2021, 22:22:31
Hi Jens,
ich hab nochmal ins Modul geguckt und auch versucht es nachzustellen.

"Direkt" wird nur XML::LibXML benutzt. Indirekt über das Perlpaket aber noch weitere(z.B. SOAP::Lite). Daher kann ich das nicht ausschließen.

Mich wundert aber, dass ich viel mehr Informationen im Log bei einem fehlenden Perlpaket bekomme als Du gepostet hast. Welches System nutzt Du ? Womit installierst/deinstallierst Du Perl-Pakete ? Im konkreten Fall ?

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 16 Mai 2021, 23:19:19
Hallo Markus,

vollständige Fehlermeldung:
Zitat
2021.05.16 13:30:34 1: reload: Error:Modul 98_UPNPController deactivated:
 Can't locate XML/Parser/Lite.pm in @INC (you may need to install the XML::Parser::Lite module) (@INC contains: fhem.p/lib fhem.p/FHEM/lib ./FHEM/lib ./lib ./FHEM ./ /usr/local/FHEM/share/fhem/FHEM/lib . /etc/perl /usr/local/lib/arm-linux-gnueabihf/perl/5.30.0 /usr/local/share/perl/5.30.0 /usr/lib/arm-linux-gnueabihf/perl5/5.30 /usr/share/perl5 /usr/lib/arm-linux-gnueabihf/perl/5.30 /usr/share/perl/5.30 /usr/local/lib/site_perl /usr/lib/arm-linux-gnueabihf/perl-base) at FHEM/lib/UPnP/Common.pm line 752.
BEGIN failed--compilation aborted at FHEM/lib/UPnP/Common.pm line 752.
Compilation failed in require at FHEM/lib/UPnP/ControlPoint.pm line 39.
BEGIN failed--compilation aborted at FHEM/lib/UPnP/ControlPoint.pm line 39.
Compilation failed in require at ./FHEM/98_UPNPController.pm line 70.
BEGIN failed--compilation aborted at ./FHEM/98_UPNPController.pm line 70.

System = Ubuntu 20.xx
Perl-Version = 5.30
die meisten Perl-Module mit Cpanm installiert/deinstalliert (über FHEM Installer-Modul), aber ein paar auch mit apt-get

Grüße Jens
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 17 Mai 2021, 08:04:50
Hi Jens,
nun wird es deutlich. Das perlupnp-Paket(konkret Common.pm) scheint es noch haben zu wollen. Dann ändere ich das wieder.

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: MichaelT am 20 Mai 2021, 17:11:51
Hi Michael,
...
Grüße Markus

Hallo Markus,

zu Thema getMediaInfo. getPositionInfo..:

Ich hatte nur mal was davon gelesen. Wäre schön, wenn man Gesamt und aktuell sehen könnte. Ich weiß aber nicht, ob man diese
Infos subscriben kann oder ob man sie pollen muss!
Abfragen mit UPnPTest funktioniert.

Hier mal ein Ausschnitt aus der Spezifikation (http://www.upnp.org/specs/av/UPnP-av-AVTransport-v3-Service-20101231.pdf (http://www.upnp.org/specs/av/UPnP-av-AVTransport-v3-Service-20101231.pdf)):
2.3.1 Event Model
Since the AVTransport service supports multiple virtual instances (via the InstanceID argument included in
each action), the traditional UPnP eventing model is unable to differentiate between multiple instances of
the same state variable. Therefore, the AVTransport service event model defines a specialized state variable
(LastChange) that is used exclusively for eventing individual state changes. In this model, the LastChange
state change is the only variable that is evented using the standard UPnP event mechanism. All other state
variables, except the position-related state variables listed below, are indirectly evented via the LastChange
state variable. (Note: A_ARG_TYPE_ state variables are not evented, either directly or indirectly.). More
details about the LastChange-based event mechanism can be found in the Event Model section of the
RenderingControl service.
The AVTransport service contains various state variables that, during certain transport states, change
almost continuously. The following variables are therefore not evented via LastChange:
 RelativeTimePosition
 AbsoluteTimePosition
 RelativeCounterPosition
 AbsoluteCounterPosition
Each control point can poll for these values at a rate appropriate for their application, whenever they need
to. For example, a control point can invoke GetPositionInfo() every second when the TransportState is
“PLAYING”, “RECORDING” or “TRANSITIONING”. This is more efficient and flexible than requiring
event notifications to be sent to all subscribing control points, in all cases.
Evented state variables MUST only be evented if their value actually changes. Writing the same value to a
state variable does not generate an event. For example, a transition from the state “PLAYING” to the state
“PLAYING” with a different speed does not generate an event for state variable TransportState
(“PLAYING” → “PLAYING”). However, this transition will generate an event for the state variable
TransportPlaySpeed. If a moderated state variable is evented and it returns the same value, this means that
within the moderation time, its value has actually changed and then changed back to its previous value.

Gruß
Michael
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: KölnSolar am 22 Mai 2021, 14:29:06
Hi Michael,
kann man drüber nachdenken. Für mich persönlich uninteressant. Da müsst Ihr Musikliebhaber mir sagen, was Sinn macht. Ich hab halt das Problem, dass das im Detail unterschiedlich je Hersteller implementiert zu sein scheint und ich keine Hardware(Boxen, Inetradio....) hab.

Jetzt gucken wir aber erst einmal, dass "nur" die DLNARenderer-Funktionalität funktionsfähig implementiert ist. Danach dann den DLNAController "weiterentwickeln".

Grüße Markus
Titel: Antw:Neuentw. Modulpaket zu UPnP: Controller, Device, DLNA(Renderer-Ersatz)
Beitrag von: Newbie am 24 Mai 2021, 15:28:07
Hallo Markus,

konnte meine Probleme mit meinen kleinen Teufeln dahingehend eingrenzen, das es nur im Zusammenspiel mit TUNEIN.de auftritt.
Eigene Internet-Radioliste (Adressen von fmstream.org) angelegt und siehe da, es funktioniert ohne Fehlermeldungen im Log und Titelname wird angezeigt.

Bis jetzt sieht es top aus, Readings werden regelmäßig aktualisiert.


Gruß Jens

P.S.: Sobald im Titel oder beim Künstlernamen Sonderzeichen vorkommen, gib es folgende Fehlermeldung:
2021.05.24 21:10:43 1: DLNAController:  XML parsing error: :1: parser error : xmlParseEntityRef: no name
pnp:class><raumfeld:section>RadioTime</raumfeld:section><dc:title>Robin Schulz &
                                                                                ^
:1: parser error : xmlParseEntityRef: no name
mfeld:section>RadioTime</raumfeld:section><dc:title>Robin Schulz & Felix Jaehn &