Module für XBMC

Begonnen von Dennis B., 06 Januar 2013, 22:32:24

Vorheriges Thema - Nächstes Thema

P.A.Trick

Ah ok - Danke für deine Mühe!
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

siggi85

@vbs:
Wäre es möglich dass du dich mal diesem Thema annimmst? XBMC Übergabe des aktuellen Videos von einem XBMC zum nächsten

In meinem letzten Post habe ich beschrieben wie ich es (mit einer fest eingetragenen ID im Modulcode) hinbekommen habe. Der Entwickler des Moduls scheint ja momentan nicht erreichbar zu sein bzw. keine Zeit zu haben.

Falls nicht, wäre das natürlich auch ok. ;)

siggi85

#167
Anbei eine aktualisierte Version des XBMC Moduls (Quelle war die bereits editierte Version aus diesem Thread von vbs, als mit zusätzlichen Logfunktionen)

Neue Funktionen:
- openepisodeid oder openmovieid: startet den gewählten ID Eintrag aus der XBMC Datenbank. Kann aus dem Reading "episodeid" oder "movieid" abgelesen werden. Falls ein Resumepunkt vorhanden ist, wird die Wiedergabe automatisch ab diesem gestartet. Sollte keiner vorliegen, startet die Wiedergabe vom Start an.
set xbmc_device openepisodeid 123
- jsonraw: Hier können JSON Requests RAW abgesendet werden
set xbmc_device jsonraw {"params":{"item":{"episodeid":123},"options":{"resume":true}},"jsonrpc":"2.0","method":"Player.Open"}

Tester sind gerne willkommen.

EDIT: Getestet habe ich sowohl mit TCP als auch HTTP Konfigurationen.

siggi85

Anbei eine aktualisierte Version des XBMC Moduls (Quelle war die Version aus dem vorherigen Post)

Neue Funktion:
- addon: Kann ein XBMC Addon mit einem Parameter ansteuern.
set xbmc_device addon ADDONID PARAMETERNAME PARAMETERVALUE

In meinem konkreten Fall möchte ich über dieses Addon meinen Fernseher im Schlafzimmer (nicht Netzwerkfähig, aber mittels OpenELEC auf Rpi via CEC steuerbar) in Standby versetzen und wieder an schalten.
Mit dieser Funktion können aber auch andere Addons angesteuert werden, solange man nur einen Parameter übergeben muss.

Beispiel:
set xbmc_device addon script.json-cec command activate

strauch

Macht es nicht Sinn, die Änderung in die offizielle Version des Moduls auf fhem.de zu übernehmen? Ich kann ja Dennis B. mal ne PN schicken.
FHEM 5.6 VMware mit Debian. 1 CUL für FS20 und HMLAN für Homematic, HM-CC-RT-DN, HM-LC_Sw1PBU-FM, HM-LC-Bl1PBU-FM,  HM-SEC-SC, HM-SEC-SC-2, HM-LC-Sw1-Pl2, HM-Sec-RHS, ASH2200, FHT80B, S20KSE, Sonos, XBMC, FB_Callmonitor, SMLUSB, Arduino Firmata, uvm.

siggi85

Von mir aus natürlich gerne.  :)

siggi85

Zum Thema Übernahme ins SVN: Hast du Dennis schon eine PN gesendet?

Zum Thema XBMC Modul: Kommt von XBMC tatsächlich der Type "movie" zurückgesendet, wenn man ein YouTube Video anschaut? Ich habe mal den Quellcode vom FHEM Modul überflogen und es sieht so aus, als wenn diese Information tatsächlich von XBMC kommt. Ich hätte mir da eher was vorgestellt wie "addon" oder "stream"...

Mein Problem: Ich habe ein Notify welches beim Starten eines Films triggert (aktuelle Lichkonfiguration per LightScene speichern für das Pause|Stop Notify und die Lampen per LightScene in "Film Modus" bringen). Es ist jedoch nervig, wenn man abends ein paar YouTube Videos auf den Fernseher sendet und immer die Lampen dunkel werden. Ich habe auch kein anderes Reading ausmachen können, andem ich ein gestreamtes Video identifizieren könnte. Selbst das "currentMedia" Reading bleibt auf dem alten Stand (in meinem Fall der SMB Pfad des letzten Movies oder der letzten Episode).  :(

Maximal könnte man versuchen anhand der Spieldauer zusätzlich zum Type "movie" zu referenzieren (ala: Trigger wenn Type Movie und Reading totaltime > 1Stunde) jedoch wäre das sicher nicht die sauberste Alternative...

Jemand eine elegantere Lösung für das Problem?

justme1968

lass das modul mal mit verbose 5 laufen. eventuell musst du es global einschalten. dann wird die komplette nachricht die vom xbmc empfangen wird ins log geschrieben. vielleichts steht da noch etwas drin das noch nicht ausgewertet wird.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

siggi85

Zitat von: justme1968 am 21 September 2014, 20:34:06
lass das modul mal mit verbose 5 laufen. eventuell musst du es global einschalten. dann wird die komplette nachricht die vom xbmc empfangen wird ins log geschrieben. vielleichts steht da noch etwas drin das noch nicht ausgewertet wird.

Gute Idee! Werde ich demnächst mal testen. :)

strauch

Zitat von: siggi85 am 21 September 2014, 20:11:01
Zum Thema Übernahme ins SVN: Hast du Dennis schon eine PN gesendet?

Achja da war ja was, jetzt ja :-).
FHEM 5.6 VMware mit Debian. 1 CUL für FS20 und HMLAN für Homematic, HM-CC-RT-DN, HM-LC_Sw1PBU-FM, HM-LC-Bl1PBU-FM,  HM-SEC-SC, HM-SEC-SC-2, HM-LC-Sw1-Pl2, HM-Sec-RHS, ASH2200, FHT80B, S20KSE, Sonos, XBMC, FB_Callmonitor, SMLUSB, Arduino Firmata, uvm.

siggi85

Zitat von: justme1968 am 21 September 2014, 20:34:06
lass das modul mal mit verbose 5 laufen. eventuell musst du es global einschalten. dann wird die komplette nachricht die vom xbmc empfangen wird ins log geschrieben. vielleichts steht da noch etwas drin das noch nicht ausgewertet wird.

Ich habe heute morgen mal die JSON Meldungen des XBMC Moduls angeschaut und leider nichts entdeckt. Vielleicht müsste man in der Abfrage bei dem OnPlay Event einen weiteren Parameter abfragen, anhand dessen man eine Stream identifizieren kann. Ich werde demnächst mal in die Referenz der XBMC API schauen, ob es da was gibt. Je nachdem ob und was ich finde würde ich versuchen ein bestehendes Reading anzupassen (currentMedia?!) oder ein Neues hinzuzufügen.

Danke für die PN an Dennis. :)

justme1968

was das anpassen der readings angeht gibt es noch einen punkt der noch offen und noch nicht ganz zuende gedacht ist.

es gab die idee das man alle readings die nicht zum aktuell abgespielten medium gehören entfernt. d.h. wenn ein film gespielt wird alles was tv serie oder musik betrifft löschen und jeweils umgekehrt und zusätzlich eine zusammenfassung in ein eigenes reading schreibt.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

siggi85

Jetzt wo du es sagst, das ist mir am Anfang bei dem Modul auch aufgefallen. Mittlerweile habe ich gar nicht mehr darüber nachgedacht. :P
Dann würde (beim aktuellen Stand) das Attribut "currentMedia" nicht gefüllt sein, wenn es sich um einen Stream handelt. Und falls man das Attribut zukünftig bei einem Stream füllen möchte, dann könnte man ja auf den Inhalt prüfen. ( if smb.* then Lokal Else Stream)

LeoSum

Ist es mit diesem Modul auch möglich aus XBMC heraus FHEM zu steuern?

Konkret würde ich gerne freie Buttons IR Fernbedienung so belegen, dass ich damit das Licht im Wohnzimmer steuern kann oder die Steckdosenleiste, an der TV und Verstärker hängen, einschalten kann.

Oder bin ich hier falsch und das Modul funktioniert nur in die andere Richtung?

strauch

Ja das Modul hier funktioniert in die andere Richtung, damit kann ich per FHEM den XBMC Rechner steuern. Andersherum gibt es auch aber nicht so weit entwickelt. Deine Wünsche könnten aber über HTTP Links gehen. Wenn du kein Feedback von FHEM über den Zustand benötigst.
FHEM 5.6 VMware mit Debian. 1 CUL für FS20 und HMLAN für Homematic, HM-CC-RT-DN, HM-LC_Sw1PBU-FM, HM-LC-Bl1PBU-FM,  HM-SEC-SC, HM-SEC-SC-2, HM-LC-Sw1-Pl2, HM-Sec-RHS, ASH2200, FHT80B, S20KSE, Sonos, XBMC, FB_Callmonitor, SMLUSB, Arduino Firmata, uvm.