Module für XBMC

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

Vorheriges Thema - Nächstes Thema

vbs

Hm, seltsam, dass das in der Doku nicht erwähnt wird aber ich schau mal rein am WE...

vbs

Hier mal ein Versuch im Anhang. Ist leider mMn nicht ohne einen Hack zu lösen, da Kodi kein Event sendet, wenn sich die GUI ändert. Man kann also nur geeignet pollen. Wenn man direkt pollt, wenn der Film gestoppt wird, dann bekommt man jedoch noch den alten Stereo-Wert (also stereo an). Darum wird nun erst 2 Sekunden nach dem Stoppen gepollt, in der Hoffnung dass das immer passt. Ansonsten wird der Wert mit dem minütlichen Update geholt.

jaho

Also bei mir funktioniert es super, vielen vielen Dank!

(Das Zurückschalten des 3D-Modus' mache ich über den playStatus, von daher sind die 2 Sek für mich kein Problem. Kodi nimmt an der Stelle ja sowieso immer den GUI-Wechsel vor wenn man nicht die dauerhafte 3D-Ansicht eingestellt hat.)

Mein Fernseher schaltet sich über RS232 jetzt automatisch in den passenden 3D-Modus (TAB/SBS) und beendet diesen wieder, sobald der Film gestoppt wird oder zu ende ist, genau wie ich das haben wollte!

Kurze Frage noch: Lässt du das im offiziellen Modul, oder muss ich bei Updates aufpassen? ;-)

Grüße,
Jan

vbs

Bitte lass es noch eine Woche oder so bei dir laufen. Wenn ich dann noch keine Beschwerden gehört habe, dann werde ich das auch in die offizielle Version übernehmen.

Dave90

Nabend zusammen, bin neu hier im Forum und nutze FHEM seit einigen Tagen (vorher habe ich Pilight genutzt). Ich wollte fragen ob das XBMC/KODI Modul irgendein Reading besitzt, über welches das Starten einer (Android) Anwendung durch XBMC erkannt werden kann?

Der Hintergrund ist, dass ich auf meinem Fire TV auf dem Kodi läuft neben lokalen Medien auch Netflix und Amazon Instant Video nutze. Mit dem XBMC Modul und Lightscenes kann man ja nette Automatisierungen betreiben, leider gilt das eben nur für lokalen Kontent. Da man über Kodi aber auch direkt Android Anwendungen starten kann, so könnte zumindest beim starten der Netflix App eine spezielle Lightscene eingestellt werden ... Vllt. hat einer eine Idee, im Wiki und den Readings habe ich leider nichts passendes gefunden.
Hardware:  FHEM-& LMS-Server + NAS: Banana Pi; Hyperion Ambilight Server + anderer Kleinkram: RPI Model B; Lampen: Philips Hue + Milight; Homematic Heizungssteuerung; Entertainment: Harmony Hub
sonstiges: Funksteckdosen

hillbicks

Ich bin mir nicht sicher ob ich das richtig verstehe ;)

Du startest auf dem FireTV eine App (Netflix) und willst dann in FHEM eine Aktion ausloesen? Wenn das der Plan ist, dann schau Dir mal Automagic oder Tasker an. Das sind Apps fuer Android mit denen Du darauf reagieren kannst, sprich app gestartet, loese eine bestimmte Aktion aus. Fuer Tasker gibt es ein Plugin das Du zum schalten der Befehle nutzen kannst, bei Automagic musst Du einen http Befehl bauen, aber auch kein Hexenwerk.

Wenn Du keine der beiden Apps hast, dann nimm Automagic, damit funktioniert dann naemlich auch der Rueckweg

http://forum.fhem.de/index.php/topic,39773.0

vbs

Um rauszufinden, was Kodi so dazu sagt, könntest du mal eine Telnet-Verbindung von deinem PC zu Kodi aufmachen. Dann siehst du in dem Telnet-Fenster alle Events, die Kodi verschickt. Und dann eben einfach mal das Programm starten in Kodi und gucken, ob das gemeldet wird. Wenn dem so ist, dann könnte man das auch in FHEM verfügbar machen.

Dave90

Hey, erstmal danke für die schnellen Antworten :)
@ hillbicks: Ja genau, das hast du richtig verstanden. Tasker besitze ich auf meinem Android Handy, habe damit auch schon sehr viel gemacht, bin da relativ fit würde ich sagen. Habe die apk allerdings vor ca. nem halben Jahr mal versucht auf dem Fire TV zum laufen zu bekommen und da ist es an der Bedienung gescheitert, da man am FireTv ja keine Maus anschließen kann. Jetzt lese ich aber gerade im Netz von der App "Remote mouse for Fire TV" mit der man das Fire Tv und wohl auch Tasker bedienen kann. Dann wäre es natürlich ein leichtes mit Tasker und dem AndFHEM Plugin ein Profil zu erstellen :)

Werde trotzdem erst mal den Weg von @vbs ausprobieren, alleine Interessehalber. Ich berichte dann gleich mal ob es geklappt hat
Hardware:  FHEM-& LMS-Server + NAS: Banana Pi; Hyperion Ambilight Server + anderer Kleinkram: RPI Model B; Lampen: Philips Hue + Milight; Homematic Heizungssteuerung; Entertainment: Harmony Hub
sonstiges: Funksteckdosen

Dave90

Also, ich habe es jetzt über Tasker auf dem Fire TV gelöst, läuft einwandfrei :) Vielen Dank für die Hilfe ;)
Hardware:  FHEM-& LMS-Server + NAS: Banana Pi; Hyperion Ambilight Server + anderer Kleinkram: RPI Model B; Lampen: Philips Hue + Milight; Homematic Heizungssteuerung; Entertainment: Harmony Hub
sonstiges: Funksteckdosen

Markus M.

#639
Zitat von: vbs am 18 Januar 2016, 16:23:59
Um rauszufinden, was Kodi so dazu sagt, könntest du mal eine Telnet-Verbindung von deinem PC zu Kodi aufmachen. Dann siehst du in dem Telnet-Fenster alle Events, die Kodi verschickt. Und dann eben einfach mal das Programm starten in Kodi und gucken, ob das gemeldet wird. Wenn dem so ist, dann könnte man das auch in FHEM verfügbar machen.

Leider nein.
Aber irgendwelche Apps zu installieren ist meiner Meinung nach Overkill.
Was bekommt man über Tasker genau raus?

Können wir hiermit was anfangen?
dumpsys window windows | grep mCurrentFocus | cut -d'/' -f1 | rev | cut -d' ' -f1 | rev
Bei com.amazon.avod ist zumindest mal der Player im Vordergrund - besser als nichts.


logcat AmazonVideo.playback:I *:S | grep PlaybackActionQueue.enqueueAction
Gibt uns zumindest mal den State des Amazon Players, Netflix funktioniert mit Sicherheit analog
Aktuell weder Smarthome noch FHEM vorhanden

GrandJury

Hallo Leute,

ich muss gestehen, dass ich mir nun nicht alle 43 Seiten durchgelesen habe. Aber die Seiten, die ich durchforstet habe, zeigten niemanden mit dem gleichen Problem.

Ich konnte das xbmc Modul einbinden. Jedoch ist Fhem nur in der Lage zu erkennen, ob Kodi läuft oder ausgeschaltet ist. Die anderen Readings (z. B. "playStatus" steht permanent auf "stopped") ändern sich nicht. Ich nutze den Port 9090 mit tcp. Die Perl-Pakete für JSON sind aktuell. Zudem läuft mein Log mit folgenden Einträgen über:

2016.01.23 02:36:23 3: XBMC_CheckConnection: Connection lost! Last data from Kodi received 120.018909931183 s ago
2016.01.23 02:36:23 1: 192.168.178.50:9090 disconnected, waiting to reappear (Kodi)
2016.01.23 02:36:24 1: 192.168.178.50:9090 reappeared (Kodi)
2016.01.23 02:36:30 2: Can't find string terminator "'" anywhere before EOF at (eval 24035) line 1.

2016.01.23 02:36:30 2: Can't find string terminator "'" anywhere before EOF at (eval 24036) line 1.

2016.01.23 02:36:30 2: Can't find string terminator "'" anywhere before EOF at (eval 24040) line 1.

2016.01.23 02:36:30 2: Can't find string terminator "'" anywhere before EOF at (eval 24041) line 1.

2016.01.23 02:36:30 2: Can't find string terminator "'" anywhere before EOF at (eval 24044) line 1.

2016.01.23 02:36:30 2: Can't find string terminator "'" anywhere before EOF at (eval 24045) line 1.

2016.01.23 02:37:34 2: Can't find string terminator "'" anywhere before EOF at (eval 24116) line 1.

2016.01.23 02:37:34 2: Can't find string terminator "'" anywhere before EOF at (eval 24117) line 1.

2016.01.23 02:37:34 2: Can't find string terminator "'" anywhere before EOF at (eval 24121) line 1.

2016.01.23 02:37:34 2: Can't find string terminator "'" anywhere before EOF at (eval 24122) line 1.

2016.01.23 02:37:34 2: Can't find string terminator "'" anywhere before EOF at (eval 24125) line 1.

2016.01.23 02:37:34 2: Can't find string terminator "'" anywhere before EOF at (eval 24126) line 1.

2016.01.23 02:37:34 2: Can't find string terminator "'" anywhere before EOF at (eval 24129) line 1.

2016.01.23 02:37:34 2: Can't find string terminator "'" anywhere before EOF at (eval 24130) line 1.

2016.01.23 02:37:34 2: Can't find string terminator "'" anywhere before EOF at (eval 24140) line 1.

2016.01.23 02:37:34 2: Can't find string terminator "'" anywhere before EOF at (eval 24141) line 1.

2016.01.23 02:37:34 2: Can't find string terminator "'" anywhere before EOF at (eval 24148) line 1.

2016.01.23 02:37:34 2: Can't find string terminator "'" anywhere before EOF at (eval 24149) line 1.

2016.01.23 02:37:34 2: Can't find string terminator "'" anywhere before EOF at (eval 24154) line 1.

2016.01.23 02:37:34 2: Can't find string terminator "'" anywhere before EOF at (eval 24155) line 1.

2016.01.23 02:37:34 2: Can't find string terminator "'" anywhere before EOF at (eval 24165) line 1.

2016.01.23 02:37:34 2: Can't find string terminator "'" anywhere before EOF at (eval 24166) line 1.

2016.01.23 02:37:34 2: Can't find string terminator "'" anywhere before EOF at (eval 24173) line 1.

2016.01.23 02:37:34 2: Can't find string terminator "'" anywhere before EOF at (eval 24174) line 1.


Mein Define sieht wie folgt aus:

define Kodi XBMC 192.168.178.3 tcp name passwort
attr Kodi group Status
attr Kodi icon rc_VIDEO
attr Kodi room Server
attr Kodi updateInterval 60


Ich scheine mal wieder irgendwas gehörig falsch gemacht zu haben. Ich weiß jedoch nicht, was das sein kann. Wenn ich die Einträge im Log richtig verstehe, kann er mit einem Anführungszeichen nichts anfangen. Ich nutze aber keines.

Kann mir von euch jemand einen Tipp geben?

Ich danke euch.

vbs

Wäre als erstes die Frage ob, du unter Port 9090 wirklich wie erwartet den Kodi JSON-RPC-Port erreichst. Mach doch mal von einer anderen Maschine eine Telnet-Verbindung auf 9090 und gucke, was du das siehst. Wenn du zB dann einen Film startest, müsstest du da JSON-Events sehen.

GrandJury

Zitat von: vbs am 23 Januar 2016, 11:54:32
Wäre als erstes die Frage ob, du unter Port 9090 wirklich wie erwartet den Kodi JSON-RPC-Port erreichst.

Ja, das funktioniert. Ich kann dort die angestoßenen Events sehen.

vbs

Dann setze mal bitte das Modul auf verbose 5 und poste mal einen Log von dem Verbindungsaufbau. Hab jetzt erstmal so keine Idee.

GrandJury

Hey vbs,

das habe ich gemacht und nun bekomme ich die Readings in Fhem angezeigt. Kannst du mir vielleicht ungefähr erklären warum das, durch das Umstellen auf Verbose 5, nun der Fall ist? Würde den Hintergrund gerne verstehen. Ich danke dir für deine Hilfe  :)