Hallo Gemeinde,
ich habe nach viel trial and error nun doch eine Möglichkeit gefunden mit nativen http-Posts meine Netzwerk-Lautsprecher anzusprechen und Ansagen zu machen. Die eigentlichen Anfänge hatte ich schon in
gepostet.
Nun habe ich ein bereits teilweise funktionsfähiges System und suche vielleicht noch ein paar Leute, die etwas weiter daran entwickeln. Alle Befehle habe ich per Wireshark ausgelesen, wobei diese bisher nur in eine Richtung gehen, d.h. ohne Rückmeldung. Alles basiert auf „urn:schemas-upnp-org:service:AVTransport:1“.
Prinzipiell habe ich die Räume mit zugehörigen IP sowie spezifischen Port, welche umschaltbar sind (6 Lautsprecher)definiert . Die eigentliche Übertragung der URI erfolgt mit dem Verweis auf ein spezifisches File (mp3), welches in einem Extra-Ordner (\Netzwerk) liegt, welchen ich per IPS über einen Port freigeschaltet habe.
SetVolume, Ein/Aus sind eigenständige Scripts, da ich hoffe einmal das Konstrukt als Audio-Ansteuerung verwenden zu können. Als Control habe ich die gängigen Befehle (Prev, Play, Pause, Stop, Next) lauffähig. In Playmode sind Normal, Repeat (one/all) und Random lauffähig.
Bitte nicht über die Ansagen lachen - es sind nur Beispiele. Ich plane neben sinnvollen Ansagen die Systemansagen noch einzubinden (File, das in den Netzwerkordner geschrieben und dann aufgerufen wird).
Wo haperts ? / To do
Audioübertragung war das eigentliche Ziel. Bisher habe ich jedoch noch keinen dafür brauchbaren (einbindbaren) Library-Browser gefunden, der mir einen Netwerkpfad bereitstellen kann, den die Geräte erreichen. Erstaunlicherweise sucht sich der entsprechende Lautsprecher selbst den nächst verfügbaren Server (in meinem Fall WMP), so dass ich die Control und Playmode-Funktionen verifizieren konnte. Wenn also jemand eine Idee hat … Der Netplayer funktioniert nicht in diesem Konstrukt und ist faktisch im Screenshot nur als Platzhalter mit sichtbar. Eine Lösung a´la Sonos wäre schön gewesen, die haben aber bereits ihren zentralen Server dabei.
Die UPNP_Send_Device (Umschaltung der Räume) muss ich noch überarbeiten - hier habe ich noch Denkfehler drin. Ich muss betonen, dass ich mich die letzten Wochen erst leidlich in PHP eingearbeitet habe, so dass ein Profi wahrscheinlich lachen wird. IT ist nicht meine Branche - nur mein Interesse
Für Sony und manche andere gibt es einen Party-Modus. Die Befehle habe ich schon ausgelesen, aber noch nicht zum Laufen bekommen. Damit sollte es möglich sein alle Lautsprecher parallel zum sprechen zu bewegen :rolleyes: (UPNP_Party_Posts.doc). Hier müssen in die Listener-List die entsprechenden UUID´s der Geräte. Aber wie weiter ? Meine Lautsprecher haben noch nicht so richtig kapiert, was ich von ihnen will :o
Die UPNP_Send_Commands.ips.php hat keine Funktion - hier sind nur als Referenz die Befehle enthalten (ich wollte sie mal als Kernstück ausbauen, habe es dann aber gelassen und alle switches etc. entfernt, da ich nicht wusste, wie ich nur die jeweils notwendigen Teilstücke aktivieren kann).
Anbei Screenshots des WF, der Variablen sowie essentielle Scripts. Wollte es erst mit Raketenschneckes Project-Exporter hier hineinstellen (Tonic1024 hatte mich darauf aufmerksam gemacht), habe aber bemerkt, dass mir alle http-Posts nach dem <? mit einem Kommentar versehen werden (sind dann für Euch unbrauchbar).
@ Raketenschnecke: Ein dickes „Respekt“ für den Project Exporter !!! - kann man den Kommentar aber umgehen ? So kann man prima Projekte auch einzeln sichern.
Wie gesagt - über Rückmeldung würde ich mich freuen.
Viele Grüsse
André
UPNP.zip (8.58 KB)
UPNP_Party_Posts.doc (29.5 KB)