Modul für WLAN Radios mit Frontier Silicon Chipsatz (SilverCrest/Medion/Hama...)

Begonnen von mumpitzstuff, 07 November 2017, 00:21:27

Vorheriges Thema - Nächstes Thema

mumpitzstuff

Das wirft irgendwie mein gesamtes Verständnis was Perl anbelangt über den Haufen und zwar aus einem Grund. Die Installation von libxml-bare-perl sorgt ja noch nicht dafür, dass dieses Modul geladen wird. Es müsste demnach in deinem FHEM Kontext irgendwas geben, das XML::bare in irgend einer Art und Weise über use oder require einbindet. Nur dann und wirklich nur dann kann es dazu kommen, das sich die Funktionen überlagern. Wenn du also meine Testversion noch gar nicht drin hattest, wer oder was hat dann die Bibliothek in den FHEM Kontext geladen?

Darüber hinaus dachte ich eigentlich, das Perl bei Funktionsnamen zwischen Kleinschreibung und Großschreibung unterscheidet, so das selbst wenn beides geladen ist, es trotzdem zu keiner Kollision kommt. Mir ist klar, das wenn 2 Bibliotheken Funktionen mit identischem Namen einbinden und man beide Bibliotheken mit use einbindet, dass es dann zu den von dir beschriebenen Effekten kommen kann. Im Moment sehe ich aber 2 Dinge die dagegen sprechen.

Darf ich das Problem mal im Developer Forum ansprechen? Vielleicht hat dort ja jemand eine Idee was das sein könnte. Einfach so wieder zum extrem langsamen XML::Simple wechseln möchte ich eigentlich nicht, wenn es nicht vielleicht doch eine andere Möglichkeit gibt.

betateilchen

Du hast mit allem was Du schreibst recht. Vergiß meinen Einwurf bzgl. xml-bare erstmal wieder.

Aktuell bin ich einer anderen Ursache auf der Spur, die weder was mit xml-bare noch mit Deinem Modul zu tun hat. Aber da ich aktuell im Zug sitze, gestaltet sich das Testen etwas instabil.

Kurz gesagt: die Fehlermeldungen dürften die Folge einer "Verkettung unglücklicher Umstände" sein, die den Verdacht zuerst auf das xml-bare lenkten, was aber offensichtlich von mir falsch interpretiert wurde.




Aber trotzdem nochmal zu xml-bare: Bei meinen Suchen zum THema bin ich darauf gestoßen, dass xml-bare ggf. Probleme mit bestimmten Zeichensätzen haben könnte. Ist Dir das schon begegnet?

Wenn ich das Ganze machen müsste, würde ich das zurückgeliefert XML sofort in JSON konvertieren und nur noch mit JSON weiterarbeiten  8)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Aber die Sache mit dem Sprachansagen ist schon extrem cool.

Wenn der Bewegungsmelder des Gäste-WC das Licht einschaltet, kommt nun nach 10 Sekunden die Ansage "Wir wünschen erfolgreiche Geschäfte"  8)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

mumpitzstuff

Hehe. Freut mich.

Habe noch keine Probleme beobachten können, ist aber auch egal. Zur Not jage ich ein decode über die Rohdaten, dann parse ich die und gebe die Daten mit Encode wieder an FHEM raus. Das hat im Kalendermodul auch super funktioniert, beim Radio war ich nur bisher zu faul das bis ins Kleinste umzusetzen, da es bisher so funktioniert hat. Das erst nach json umzusetzen ist bei der Menge an Daten zu aufwendig. Habe ja grad den Parser gewechselt, um hier die Peaks zu reduzieren.

CarlosTT

Zitat von: betateilchen am 12 April 2018, 20:09:55
Aber die Sache mit dem Sprachansagen ist schon extrem cool.

Wenn der Bewegungsmelder des Gäste-WC das Licht einschaltet, kommt nun nach 10 Sekunden die Ansage "Wir wünschen erfolgreiche Geschäfte"  8)
Gib doch mal ein 'Bitte hinsetzen' ein, kommt bestimmt gut ..

Bei der Abfrage mit 'dd.xml' kommt bei mir:

<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 C3</friendlyName>
<manufacturer></manufacturer>
<manufacturerURL></manufacturerURL>
<modelDescription/>
<modelName>SIRD14C3</modelName>
<modelNumber></modelNumber>
<modelURL></modelURL>
<serialNumber>11020312140a1f270101ad05ffff33ff</serialNumber>
<UDN>uuid:3DCC7100-F76C-11DD-87AF-00226154DE00</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&DEV_0001&SUBSYS_0001&REV_01 VEN_0033&DEV_0006&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>

Brice

Von mir nochmals vielen Dank für die Weiterentwicklung des Moduls.

Die Neuerungen sind jetzt in meinem Produktivsystem integriert und bei im Bad (per Bewegungsmelder) eingeschaltetem SIRD 14 B1 kommen die Sprachansagen

  • wenn Waschmaschine oder Trockner "fertig" meldet
  • wer gerade anruft
  • Warnmeldungen der Wetterstation / Temperaturüberschreitungen von Kühl- oder Gefrierschrank
  • etc
Ist schon cool.

Stefan
FHEM auf RPi 4 4GB (Buster) | produktiv) CUL 868 für FS20 | S300TH | KS300 | Max!Cube als CUN 868 für TechemWZ | HM-MOD-RPI-PCB für HM | Z-Wave ZME_UZB1 | FRITZ!DECT 200 | HUE | Lightify | Echo Dot | WS3080

betateilchen

Zitat von: CarlosTT am 14 April 2018, 14:01:30
Gib doch mal ein 'Bitte hinsetzen' ein, kommt bestimmt gut ..

So ähnlich habe ich es jetzt gemacht: Einen optischen Türsensor von Homematic unter die Klobrille geklebt und wenn der Deckel hochgeklappt wird, kommt per notify die Ansage

"na na na. Was soll das werden?"

8)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

mumpitzstuff

Eigentlich ne super Anwendung, nur mit dem sauber machen wird's dann schwierig...

CarlosTT

Aber als Anwendungsfall mit der Nachfrage zur Widerstandsfähigkeit gegen Kloreiniger für eq3 bestimmt nicht uninteressant.

betateilchen

Zitat von: mumpitzstuff am 20 April 2018, 16:01:18
Eigentlich ne super Anwendung, nur mit dem sauber machen wird's dann schwierig...

Der optische Sensor von Homematic funktioniert auch dann noch prima, wenn man ihn durchsichtig überklebt, z.B. mit farblosem Paketklebeband ;)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

mumpitzstuff

So habe jetzt schon diverse Tage damit zugebracht lokale mp3 Dateien abzuspielen. Leider ist das gar nicht so einfach.

Was funktioniert:

1.) Wenn man einen DLNA/Upnp Server hat, dann kann man Dateien die darüber verfügbar sind relativ einfach abspielen.
2.) Mit diesem Script ist es mir gelungen einen dlna Server zu emulieren und damit lokale Dateien abzuspielen. https://github.com/cherezov/dlnap Leider ist das ein Python Script und ich möchte den Code weder in Perl umsetzen noch das Python Script extern aufrufen müssen.

Was funktioniert nicht:

1.) Ich kann dem Radio keine normalen http links unterjubeln. Das bedeutet ein einfacher Download eines mp3 files geht nicht. Es muss anscheinend immer ein dlna Server sein.

Frage: Wäre es erst einmal ok nur mp3 Dateien eines dlna Servers abspielen zu können?

supernova1963

Zitat von: mumpitzstuff am 08 Mai 2018, 21:22:37
...
1.) Wenn man einen DLNA/Upnp Server hat, dann kann man Dateien die darüber verfügbar sind relativ einfach abspielen.
Wie wird denn eine per dlna verfügbare Datei aufgerufen?
Zitat
Was funktioniert nicht:
1.) Ich kann dem Radio keine normalen http links unterjubeln. Das bedeutet ein einfacher Download eines mp3 files geht nicht. Es muss anscheinend immer ein dlna Server sein.
Funktioniert die Wiedergabe von einem eingsteckten USB Stick/Laufwerk denn auch über dlna Server?
Zitat[
Frage: Wäre es erst einmal ok nur mp3 Dateien eines dlna Servers abspielen zu können?
Meiner Meinung nach, ja, wenn man damit auch Dateien von einem USB Stick / Laufwerk aufrufen kann.

Danke, für deine Arbeit,

Gernot

Lichti

Also ich wäre erstmal zufrieden wenn ich über DLNA abspielen kann.
Einen solchen Server hat doch sicher fast jeder in irgendeinem Gerät (z. B. Router, oder Raspi) zur Verfügung.

mumpitzstuff

Ein dlna Server bietet dir eine http Adresse über die du dann die mp3 Dateien abrufen kannst, eventuell sogar Playlists. Du kannst dort beliebige Pfade einbinden, also auch usb Sticks.

mumpitzstuff

Ich habe mir aber heute noch mal die halbe Nacht um dir Ohren geschlagen und irgendwann um 2 einen mini html Server am laufen, der einzelne Dateien an das Radio ausliefern konnte. Ich muss jetzt noch mal drüber schlafen und verschiedene Dinge testen und das Ganze non blocking hinkriegen.
Eventuell kann ich dann zwei Dinge anbieten.
1.) Auslieferung über dlna Server.
2.) Auslieferung lokaler mp3 Dateien über temporär erstellten mini html Server.