Plex Home Theater Modul

Ich schaue mir deine Erweiterung heute Abend mal an Fonzo.

Die Plex Home Theater Instanz ist zunächst unverändert. Neu ist eine Plex Client Instanz die einen Plex IO besitzt. Der Plex IO ist der Endpunkt für den Webhook, an den vom Plex Server geschickt wird. Dafür ist ein PlexPass notwendig um das Webhook Feature zu nutzten.

Im Plex IO ist der Webhook Username und das Webhook Passwort anzupassen. Der Hook lautet /hook/plex im Fall von IP Symcon Connect ist also im Plex Server


https://webhookplexuser:webhookplexpassword@123456789.ipmagic.de/hook/plex

einzutragen, mit eigener IP Symcon Connect Adresse austauschen sowei eigenem Webhhook User und Passwort.

Im Plex Client ist oben die UUID einzutragen, nur dann werden auch in der Plex Client Instanz Daten abgelegt. Falls die Plex UUID nicht bekannt sein sollte, reicht es das Debug Fenster der Plex Client Instanz zu öffnen und dann mit dem entsprechendem Plex Gerät etwas zu starten und zu stoppen, dann ist die UUID des Geräts im Debug Fenster lesbar.

In der Variable Client Info werden sämtliche Metadaten abgelegt. Um diese sauber darzustellen, könnte man das entweder in einer HTMLBox darstellen oder aber ziemlich viele einzelne Variablen nutzten. Letzeres empfiehlt sich wohl nur für Nutzer die ziemlich viele Variablen übrig haben, ansonsten kommt da dann bei mehreren Plex Geräten auf eine nicht zu unterschätzende Anzahl an Variablen, wenn man jede Info in einer eigenen Variable abspeichern will.

Außer das Daten aus Plex ankommen, kann die Instanz momentan noch nix, d.h. die Steuerung, so wie in Deinem Plex Home Theater Instanz, ist in der Plex Instanz noch zu ergänzen, da hatte denke ich KaiS mit angefangen was zu basteln.

Wenn jemand Muße hat und für den HTML ein Klacks ist, kann er ja gerne aus den Metadaten eine schöne HTML Seite für die HTMLBox bauen. Ist zumindest ein Grundgerüst für zukünftige Funktionserweiterungen.

Wäre halt die Frage an alle, die das Plex Modul nutzten, was denn so in der Regel benötigt wird, bzw. was noch ergänzt werden soll.

Hallo Fonzo,

dein Repo ist noch gar nicht online.
Den Hook würde ich auf dem Server einfach mit der lokalen Adresse eintragen, so geht es auch ohne Internet…

Grüße,
Kai

Oh sorry, danke für die Erinnerung, hatte das nur auf dem Entwicklungsrepository liegen.

Sollte jetzt unter


https://github.com/Wolbolar/SymconPlex

verfügbar sein und kann eingesehen bzw. ausprobiert werden. Wenn das soweit klappt und noch die Steuerungsfunktionen drinnen sind kann man dann ja mit dem Original mergen.

Hallo Fonzo,

ich werden dein Projekt forken und baue mal meine Klasse ein.
Du hast ja schon die ganzen Profile usw. mit drin, dann könnte das super schnell gehen. :slight_smile:

Grüße,
Kai

Ich habe zunächst nur den Webhook ergänzt und die Daten kommen über ReceiveData rein der Rest ist wie im Original, da muss dann wohl nur die ganze Ansteuerung abgeändert werden weil die Befehle ja andere sind.

Hallo zusammen,

nun komme ich mal endlich zum Testen.

Leider hab ich noch Schwierigkeiten…
Das PlexIO Modul ist aktiv und verbunden.

-Ich finde im Fire TV unter Plex nichts, wo ich mir die UUID holen könnte, geschweige wie ich an das Debug Fenster komme.
-Dann die Frage, was im Plex Client Modul in das Feld Client Socket rein kommt?
-Wo wird der Webhook eingetragen? Derzeit habe ich ihn im Plex Pass so hinterlegt.
https://Username:Password@IP-PlexServer:3777/hook/plex

Dann wäre noch die Frage, wie ich an die IPS-Connect Adresse komme?
Ich nutze IPS 5 per Docker. Wenn ich im IPS auf die Kerninstanz Connect klicke, kommt immer der Fehler: Element Image wird nicht unterstützt!
Und im Browser unter Console steht auch nichts.

Vielen Dank

Die UUID wird Dir im Debug Fenster des PlexIO angezeigt, wenn Daten von irgendeinem Gerät ankommen. Dazu musst Du unter I/O Instanzen im Objektbaum den Plex I/O öffnen. Ganz rechts findest Du dann ein Käfer Symbol Debug, wenn Du da drauf klickst, geht ein weiteres Fenster auf. In diesem Fenster solltest Du dann alles lesen können, was so am Webhook an Daten reinkommt.

Wenn Du auf plex.tv gehst meldest Du Dich mit Deinem Plex Konto an, dann gehst Du rechts oben auf den Account und dort auf Konto. Im Untermenü Webhooks links findest Du die Möglichkeit den Webhook einzutragen.

Die Eingabe ist so richtig, die IP-PlexServer ist die lokale IP vom Rechner, auf dem IP-Symcon läuft, Username und Passwort sind Eingabefelder im Plex IO und können dort individuell angepasst werden und dann dort entsprechend unter dem Menüpunkt Webhooks in Plex.tv eingegeben werden.

Grundsätzlich ist es zunächst mal ausreichend eine lokale IP Adresse dort einzutragen, das sollte in vielen Fällen ausreichen. Wenn man ganz sicher gehen will kann man dort dann auch IP-Symcon Connect Adresse eintragen, dann funktioniert das immer. IP-Symcon Connect ist ein Bestandteil einer Subskription von IP-Symcon, insofern Du also eine IP-Symcon Subskription abschließt, bekommst Du eine IP-Symcon Connect Adresse zugewiesen und kannst diese dann auch noch für andere Dinge nutzten wie Google Home, Alexa, Custom Skill für Alexa, bzw. um von überall auf das System zugreifen zu können. Um zunächst mal Plex mit IP-Symcon die Daten auswerten zu können bzw. einen Plex Client zu steuern, ist nicht zwingend IP-Symcon Connect notwendig, wenn man es aber so oder so besitzt, sollte man dort dann auch die IP-Symcon Connect Adresse eintragen.

Das funktioniert ab IP-Symcon 5 nur über die Webconsole, da ein Element genutzt wird das die Legacy Konsole nicht unterstützt. So wie ich das verstanden habe testest Du ja fleißig, Du kannst auch alles testen, nur eben zur Zeit nicht IP-Symcon Connect, das kann man nur nutzen, wenn eine Lizenz vorliegt und eine gültige Subskription. Dies ist aber für Deinen Test auch nicht notwendig, da ja wohl der Plex Client und der IP-Symcon Server im gleichen Netzwerk stehen, daher ist der IP-Symcon Server über den Webhook mit lokaler IP erreichbar. Für eine eher fortgeschrittene Konfiguration bräuchtest Du dann IP-Symcon Connect, wenn Du also auf den Bahamas in der Sonne liegst :cool: und mit einem Plex Client einen Film schaust, und die Information was auf dem Plex Client läuft auf Deinem IP-Symcon Server angezeigt haben willst, der am anderen Ende der Welt steht, dann brauchst Du IP-Symcon Connect ;), sonst in dem Zusammenhang nicht unbedingt. Praktisch ist das aber auf alle Mal bzw. lohnt sich aus meiner Sicht durchaus, denn IP-Symcon Connect kann man dann auch dazu nutzten einen Custom Skill zu erstellen, dann kannst Du, wenn Bedarf besteht, z.B. mit Alexa abfragen was gerade auf Plex läuft, bzw. über Alexa ebenfalls den Plex Client steuern, so lange es Plex selber immer noch nicht fertig gebracht hat, endlich mal einen deutschen Skill für Plex zu liefern.

Hallo Fonzo,

hatte Ips Unlimited letzte Woche gekauft, da es mit mega gut gefällt.
Subscription ist also da :slight_smile:

Ich werde nachher noch mal schauen ob ich Plex dann zum laufen bekomme.

Gesendet von iPhone mit Tapatalk

Na dann viel Spass damit, da kannst Du Dich ja dann voll austoben und Variablen sind auch egal, Du kannst also für jeden Pups Eintrag von jedem Plex Client, den Dir Plex sendet, eine Variable verwenden. Eine Plex Custom Skill kannst Du dann ja auch nutzten im nächsten Schritt.

Mit IP-Symcon im Docker kenne ich mich nun nicht aus, aber eigentlich sollte wenn Du die Webconsole nutzt und dort Connect unter Kern Instanzen öffnest über Im Webfront öffnen der Webfront mit der Connect Adresse geöffnet werden. Dort kannst Du diese dann also abschreiben bzw. rauskopieren.

Vielen Dank. :slight_smile:

Im Debug Fenster sehe ich nun schon mal was. Habe dort auch die UUID rauskopiert.
Ich gehe richtig in der Annahme davon aus, dass diese dann so aussieht?
„uuid“:„9fg236f12efd01e2-com-plexapp-android“

Was kommt nun im Modul im Client Socket rein?
Wenn ich versuche das Plex IO dort einzubinden, kommt der Fehler…
„Eigenschaft Client Socket nicht gefunden“

Eigentlich brauchst Du den Client Socket zur Zeit nicht, zumindest nicht für einen normalen Client. Der Client Socket ist nur für ein Plex Home Theater zur Steuerung. Ein Steuerung bzw. Variablen ergänzen, die dann die Daten des Webhooks in Variablen ablegt, wollte KaiS ergänzen, in sofern warten wir mal ab, er hat glaube ich schon angefangen oder ist fast fertig und schiebt das dann mal demnächst zum Testen hoch. Dann muss man mal schauen was sonst noch so für einen gewöhnlichen Client ergänzt werden kann. Die Funktion der Instanz des PlexHomeTheater Client bleibt davon erst mal unberührt, funktioniert aber eben nur mit PlexHomeTheater und nicht jedem beliebigen Client. Wenn dann alles funktionieren sollte kann man das wieder zu einem Modul zusammenlegen.

Hallo Fonzo,

ich habe nun weiter testen können.
Die Befehle kommen an und die Variablen werden geändert.

Einziges Problem was ich habe ist, dass wenn man einen Film oder eine Episode im Plex startet, die Variable „Status“ und „Wiedergabe Steuerung“ nicht belegt werden.

Wenn man während eines Films / Serie pausiert oder stoppt, werden die Befehle sauber gesetzt.

Im Debug vom Plex Client kommt der Befehl media.play an, wenn man einen Film / Serie startet.

Woran kann das liegen?

Vielen Dank

Grüße

Hallo nochmal,

hat keiner eine Idee warum die Variable beim abspielen nicht gesetzt wird?

Kann ich irgendwie das Debug auslesen?
Dann könnte ich die Var selber setzten?

Grüße

Hallo,

funktioniert es irgendwie, wenn ich mir im Webfront eine Art Diashow anzeigen lasse? z.B. in einer html Box?
Der Plex-Server läuft bei mir auf einem Qnap-NAS.

Gruß oekomat

Was meinst Du denn mit Diashow genau? Plex selber unterstützt glaub ich keine Diashow. Was willst Du Dir denn in IP-Symcon anzeigen lassen?

Hallo Fonzo,

einen Foto Ordner auf dem Nas z.B., mit aktuellen Fotos der letzten Tage. Die sollten dann per Diashow (Fotowechsel nach ein paar Sekunden) nacheinander angezeigt werden. Gibt’s denn für sowas eine andere Lösung?

Moin Oekomat,

bei mir funktioniert das unter Win 10 wo sowohl Plex Server als auch Plex Home Theater installiert sind.

Ich meine mich zu erinnern, dass das irgendwo in den Einstellungen eingestellt werden kann.

Gruß
Hans

Und das kannst du dir im webfront anzeigen lassen? [emoji54]

Moin,

nein, unter Win wird PHT aufgerufen im Vollbildmodus :wink: Die Steuerung von PHT erfolgt entweder über die Plex App unter IOS, IPS mittels IPSView oder einer alten MS FB (infrarot).

Alle Wege funktionieren problemlos parallel :slight_smile:

Gruß
Hans