Module für XBMC

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

Vorheriges Thema - Nächstes Thema

d0np3p3

Hallo,
vielen Dank erstmal.
Ich habe das Modul jetzt auch ohne Fehler integriert,
wie bekomme ich nun die Doku in die Commandref,oder muß ich aufs einchecken warten?
gerade versuche ich mich an der Remote, und wie ich anzeigen lasse was gerade läuft.
FHEM: Raspberry Pi (COC) & Fritz 7270 (freetz FHEM2FHEM)
IT (Elro AB440 AB600D) - Max! (6*regler 1*Thermostat 5*Fenster) Hue Bridge mit Bulbs - 2*Living-white Adapter - Iris
XBMC (Zbox) 4*SqueezeRadios 3*squeezelite dbox
AndFhem (Nexus4)

dennisb

#61
Hi,

freut mich, dass das Modul funktioniert. Werde mal anfragen, ob das Modul ins SVN kann. Bis dahin müsstest du die commandref selbst erstellen. Dafür brauchste drei Dateien ausm SVN (http://sourceforge.net/p/fhem/code/HEAD/tree/trunk/fhem/):
contrib/commandref_join.pl
docs/commandref_frame.html
docs/commandref_frame_DE.html

Dann musste aus dem Ordner /opt/fhem/ folgenden Befehl ausführen perl contrib/commandref_join.pl
Die neu gebaute commandref kannste jetzt über dein Webinterface aufrufen.

Alternativ findest du die Doku am Ende der Modul-Datei (allerdings mit HTML-Code).

In der Doku zum Modul findest du auch eine Erklärung, wie du die Remote erstellst. Damit du nicht suchen musst, hier die Befehle:

define <rc_name> remotecontrol #adds the remote control
set <rc_name> layout XBMC_RClayout #sets the layout for the remote control
set <rc_name> makenotify <XBMC_device> #links the buttons to the actions


Wenn du anzeigen willst, was gerade abgespielt, musst du wie folgt vorgehen:
Wenn der Event player = play eintritt, kannst du basierend auf dem reading type bestimmen, in welchen Readings die Informationen über das aktuelle Media Item stehen:

Wenn type = song ist, stehen die Informationen in den Readings album, artist, file, title und track
Wenn type = musicvideo ist, stehen die Informationen  in den Readings album, artist, file und title
Wenn type = episode ist, stehen die Informationen  in den Readings episode, file, season, showtitle und title
Wenn type = movie ist, stehen die Informationen in den Readings originaltitle, file, title und year
Wenn type = picture oder type = unknown ist, stehen die Informationen im Reading: file

Anbei ist aktuelle Version. Habe die Events nochmal angepasst und die Doku erweitert.

Gruß
Dennis

Update: Die aktuelle Modul-Datei befindet sich hier: http://forum.fhem.de/index.php/topic,10075.msg115973.html#msg115973

d0np3p3

Super mit der commandref hat geklappt, und die Remote klappt jetzt auch.

Ich weiß nicht ob es an meinem fhem liegt, ich hatte dieses Problem:

set <rc_name> makenotify <XBMC_device>
legt folgende Zeile in der Config an:
define notify_rc_name notify <rc_name> set <XBMC_device> remoteControl $EVENT

Ich mußte das "remoteControl" löschen damit die Befehle von meinem XBMC angenommen werden.

Vielleicht liegt es an dieser Zeile in der 70_XBMC.pm
  fhem("define $nname notify $nam set $ndev remoteControl ".'$EVENT',1);

Ich hoffe das war hilfreich, danke für die Arbeit, ich wünsche mir mal die Zeit mich da richtig einarbeiten, so ein Modul wünsche ich mir für die Squeezeboxen.

Nett wäre auch ein Cover im Floorplan (dazu muß ich aber erstmal mit dem Floorplan vorran kommen...)
FHEM: Raspberry Pi (COC) & Fritz 7270 (freetz FHEM2FHEM)
IT (Elro AB440 AB600D) - Max! (6*regler 1*Thermostat 5*Fenster) Hue Bridge mit Bulbs - 2*Living-white Adapter - Iris
XBMC (Zbox) 4*SqueezeRadios 3*squeezelite dbox
AndFhem (Nexus4)

dennisb

Guten Morgen,

hast recht mit dem makeNotify. Hab das entsprechend behoben. Neue Datei ist im Anhang.

Gruß
Dennis

d0np3p3

Hallo,
ich habe mich heute mal mal mit den Modul und dem Squeezebox Modul beschäftigt, da ist mir aufgefallen, das es schön wäre, hier die Befehle per dropdown Menu einzubinden.
dann muß man nicht z.B. "set xbmc videolibary scan" eingeben.

Mit dem Cover bin ich noch nicht weit gekommen, mal sehen ob ich da die Tage noch was finde...

FHEM: Raspberry Pi (COC) & Fritz 7270 (freetz FHEM2FHEM)
IT (Elro AB440 AB600D) - Max! (6*regler 1*Thermostat 5*Fenster) Hue Bridge mit Bulbs - 2*Living-white Adapter - Iris
XBMC (Zbox) 4*SqueezeRadios 3*squeezelite dbox
AndFhem (Nexus4)

dennisb

Hallo zusammen,

das XBMC Module ist jetzt im SVN und sollte dann demnächst über den Update-Mechanismus ausgeliefert werden. Im Vergleich zur letzten Version haben sich einige Sachen geändert.

  • Die Befehle sind jetzt alle über das DropDown Menü verfügbar.
  • Die Befehle wurden an die AV-Guidelines angepasst.
  • Folgende Readings haben sich geändert: player -> playStatus, artist -> currentArtist, album -> currentAlbum, track -> currentTrack, file -> currentMedia, title -> currentTitle, shuffled -> shuffle, muted -> mute
  • Die Befehle videolibary<scan|update> und audiolibary <scan|update> werden jetzt korrekt geschrieben, entsprechend heißen sie jetzt videolibrary <scan|update> und audiolibrary <scan|update>
  • Der Befehl playpause hat jetzt nur noch die Art des Players als Parameter.
  • Die Werte für die readings mute, shuffle, fullscreen und partymode sind nicht mehr true/false sondern on/off
  • Es gibt jetzt Befehle um den Repeat- und Shufflemode zu ändern.

Viele der Änderungen waren nötig, um den AV-Guidelines zu entsprechen. Ich hoffe die Änderungen bereiten keinem (große) Probleme.

Gruß
Dennis

Chris__1

Hi Dennis,

vielen Dank für die Arbeit die du dir da jetzt gemacht hast.
Freue mich schon auf die Funktion !

d0np3p3

FHEM: Raspberry Pi (COC) & Fritz 7270 (freetz FHEM2FHEM)
IT (Elro AB440 AB600D) - Max! (6*regler 1*Thermostat 5*Fenster) Hue Bridge mit Bulbs - 2*Living-white Adapter - Iris
XBMC (Zbox) 4*SqueezeRadios 3*squeezelite dbox
AndFhem (Nexus4)

strauch

Auch von mir ein dickes Danke für das Modul. Toll!. Jetzt kann neben Sonos auch der Xbmc auf meine Tür und Telefon reagieren.
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.

strauch

Hi,

bei meinem XBMC ist noch kein JSON RPC aktiviert, das führt dazu das die Verbindung fehl schlägt und sich FHEm aufhängt, ich vermute er wartet das irgendwas passiert. Gab es da vor kurzem nicht eine Änderung in fhem?

letzter Eintrag im Log
2014.01.09 13:57:16 1: XBMC_HTTP_Request http://192.168.200.15:80/jsonrpc: Can't connect to http://192.168.200.15:80

Vielleicht ist da irgendwie ein timeout notwendig?
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.

d0np3p3

OT: Kann man für fhem eigentlich keine Tickets erstellen wie das sonst bei svn / Github (oder per trac) möglich ist?
FHEM: Raspberry Pi (COC) & Fritz 7270 (freetz FHEM2FHEM)
IT (Elro AB440 AB600D) - Max! (6*regler 1*Thermostat 5*Fenster) Hue Bridge mit Bulbs - 2*Living-white Adapter - Iris
XBMC (Zbox) 4*SqueezeRadios 3*squeezelite dbox
AndFhem (Nexus4)

drdownload

die ticketfunktion ist bei sourceforge nicht eingeschaltet
CUL 868 Slow-RF (FS20 Aktoren, Sender, FHT8V), CUL 868 (WMBUS-Empfang), Jeelink (PCA301), WS3600 (WH3080 über USB-Basis), Bewässerung mit ESP-Easy und Proplanta, RFXTRX433 Home-Easy Empfang und Senden, Oregon TH, WS001 TH), Blackbean IR, Mopidy-Snapcast MR Audio, Kodi, Forum-LED-Controller,

strauch

Also auch wenn mein xbmc aus ist hängt sich fhem mit der Fehlermeldung auf. Wenn es möglichkeiten gibt genauer zu schauen was da losist, muss mir einer sagen wie :-)

Gesendet von meinem GT-P7310 mit Tapatalk

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.

bmaehr

Zitat von: UliM am 07 Januar 2013, 19:17:01
Hi Dennis,
coole Idee - vielen Dank für das Modul!

Hab eben versucht es auf meiner FB7390 einzurichten. Nach reload 70_XBMC.pm kommt

Can't locate JSON/RPC/Client.pm

Mit JSON::XS befürchte ich dann dasselbe - gibt's nicht auf der FritzBox.
Ohne geht's nicht, oder?

LG, Uli


Habs gerade auf der Fritzbox (zumindest mit tcp) zum Laufen bekommen.

Dazu muss man aus einer anderen perl-Version mit JSON den Ordner JSON und die Datei JSON.pm auf die Fritzbox nach lib/perl5/5.12.2 kopieren.

bmaehr

Zitat von: Dennis B. am 08 Januar 2014, 20:43:48
Hallo zusammen,

das XBMC Module ist jetzt im SVN und sollte dann demnächst über den Update-Mechanismus ausgeliefert werden. Im Vergleich zur letzten Version haben sich einige Sachen geändert.

Ich habe die neuste Version aus dem SVN mit meiner fhem 5.5 Version genommen und die remote funktioniert nicht, weil ein problem mit Groß-Kleinscheirbung besteht.

notify_MediacenterXbmcRC return value: Unknown argument RIGHT, choose one of off play:all,audio,video,picture playpause:all,audio,video,picture pause:all,audio,video,picture prev:all,audio,video,picture next:all,audio,video,picture goto stop:all,audio,video,picture open opendir shuffle:toggle,on,off repeat:one,all,off volumeUp:noArg volumeDown:noArg back:noArg contextmenu:noArg down:noArg home:noArg info:noArg left:noArg right:noArg select:noArg send exec:left,right,up,down,pageup,pagedown,select,highlight,parentdir,parentfolder,back,previousmenu,info,pause,stop,skipnext,skipprevious,fullscreen,aspectratio,stepforward,stepback,bigstepforward,bigstepback,osd,showsubtitles,nextsubtitle,codecinfo,nextpicture,previouspicture,zoomout,zoomin,playlist,queue,zoomnormal,zoomlevel1,zoomlevel2,zoomlevel3,zoomlevel4,zoomlevel5,zoomlevel6,zoomlevel7,zoomlevel8,zoomlevel9,nextcalibration,resetcalibration,analogmove,rotate,rotateccw,close,subtitledelayminus,subtitledelay,subtitledelayplus,audiodelayminus,audiodelay,audiodelayplus,subtitleshiftup,subtitleshiftdown,subtitlealign,audionextlanguage,verticalshiftup,verticalshiftdown,nextresolution,audiotoggledigital,number0,number1,number2,number3,number4,number5,number6,number7,number8,number9,osdleft,osdright,osdup,osddown,osdselect,osdvalueplus,osdvalueminus,smallstepback,fastforward,rewind,play,playpause,delete,copy,move,mplayerosd,hidesubmenu,screenshot,rename,togglewatched,scanitem,reloadkeymaps,volumeup,volumedown,mute,backspace,scrollup,scrolldown,analogfastforward,analogrewind,moveitemup,moveitemdown,contextmenu,shift,symbols,cursorleft,cursorright,showtime,analogseekforward,analogseekback,showpreset,presetlist,nextpreset,previouspreset,lockpreset,randompreset,increasevisrating,decreasevisrating,showvideomenu,enter,increaserating,decreaserating,togglefullscreen,nextscene,previousscene,nextletter,prevletter,jumpsms2,jumpsms3,jumpsms4,jumpsms5,jumpsms6,jumpsms7,jumpsms8,jumpsms9,filter,filterclear,filtersms2,filtersms3,filtersms4,filtersms5,filtersms6,filtersms7,filtersms8,filtersms9,firstpage,lastpage,guiprofile,red,green,yellow,blue,increasepar,decreasepar,volampup,volampdown,channelup,channeldown,previouschannelgroup,nextchannelgroup,leftclick,rightclick,middleclick,doubleclick,wheelup,wheeldown,mousedrag,mousemove,noop showcodec:noArg showosd:noArg up:noArg msg mute:toggle,on,off volume:slider,0,1,100 quit:noArg eject:noArg hibernate:noArg reboot:noArg shutdown:noArg suspend:noArg videolibrary:scan,clean audiolibrary:scan,clean