2 from enigma import eServiceReference#, iServiceInformation
3 from Components.Sources.Source import Source
4 from ServiceReference import ServiceReference,eServiceCenter
5 #from Tools.Directories import resolveFilename,SCOPE_HDD
6 from Components.FileList import FileList#, FileEntryComponent
15 def __init__(self, session,func = LIST):
18 self.session = session
19 error = "unknown command (%s)" % func
20 self.result = [[error,error,error]]
22 def handleCommand(self,cmd):
24 from Screens.MediaPlayer import MediaPlayer
25 from Components.MediaPlayer import PlayList, PlaylistEntryComponent
26 if self.session.mediaplayer is None:
27 self.session.mediaplayer = self.session.open(MediaPlayer)
28 #self.session.mediaplayer.filelist = FileList(root, matchingPattern = "(?i)^.*\.(mp3|ogg|ts|wav|wave|m3u|pls|e2pls|mpg|vob)", useServiceRef = True)
29 self.session.mediaplayer.playlist = PlayList()
31 test = len(self.session.mediaplayer.playlist)
32 #Just a test, wether the link is still active.
34 self.session.mediaplayer = self.session.open(MediaPlayer)
35 #self.session.mediaplayer.filelist = FileList(root, matchingPattern = "(?i)^.*\.(mp3|ogg|ts|wav|wave|m3u|pls|e2pls|mpg|vob)", useServiceRef = True)
36 self.session.mediaplayer.playlist = PlayList()
39 if self.func is self.LIST:
40 self.result = self.getFileList(cmd)
41 elif self.func is self.PLAY:
42 self.result = self.playFile(cmd)
43 elif self.func is self.COMMAND:
44 self.result = self.command(cmd)
46 def getFileList(self,param):
47 print "getFileList:",param
51 filelist = FileList(param, matchingPattern = "(?i)^.*\.(mp3|ogg|ts|wav|wave|m3u|pls|e2pls|mpg|vob)", useServiceRef = True)
52 list = filelist.getFileList()
54 if x[0][1] == False: #isDir
55 returnList.append([x[0][0].toString(),x[0][1],param])
57 returnList.append([x[0][0],x[0][1],param])
60 def playFile(self,param):
61 print "playFile: ",param
65 mp = self.session.mediaplayer
66 ref = eServiceReference(file)
67 mp.playlist.addFile(ref)
68 mp.playlist.updateList()
70 mp.playServiceRefEntry(ref)
73 def command(self,param):
74 print "command: ",param
76 mp = self.session.mediaplayer
96 list = property(getList)
97 lut = {"ServiceReference": 0