def recEvent(self, timer): # StateWaiting=0, StatePrepared=1, StateRunning=2, StateEnded=3 try: if timer.justplay: return inform = False try: timer.Filename except: timer.calculateFilename() filename = os.path.basename(timer.Filename) if timer.state == timer.StatePrepared: pass elif timer.state == timer.StateRunning: # timer.isRunning() if config.EMC.files_cache.value: cutfilename = "/" + filename realpath = timer.Filename.replace(cutfilename, '') ext = ".ts" recname = timer.Filename + ext, filename + ext, ext from EMCFileCache import movieFileCache if movieFileCache.IsPathInCache(realpath): movieFileCache.addRecToCacheFileList(realpath, recname) if not filename in self.recDict: begin = timer.begin if timer.autoincrease: end = begin else: end = timer.end self.recDict[filename] = (begin, end, timer.service_ref.ref, str(timer)) inform = True emcDebugOut("[emcRC] REC START for: " + filename) else: #timer.state == timer.StateEnded: if filename in self.recDict: del self.recDict[filename] inform = True emcDebugOut("[emcRC] REC END for: " + filename) try: if hasattr(timer, "fixMoveCmd"): emcTasker.shellExecute(timer.fixMoveCmd) emcDebugOut( "[emcRC] File had been moved while recording was in progress, moving left over files.." ) except: pass if config.EMC.timer_autocln.value: DelayedFunction( 2000, self.timerCleanup ) # postpone to avoid crash in basic timer delete by user if inform: if config.EMC.remote_recordings.value: self.recFileUpdate() self.recStateChange(timer) except Exception, e: emcDebugOut("[emcRC] recEvent exception:\n" + str(e))
def recEvent(self, timer): # StateWaiting=0, StatePrepared=1, StateRunning=2, StateEnded=3 try: if timer.justplay: return inform = False try: timer.Filename except: timer.calculateFilename() filename = os.path.basename(timer.Filename) if timer.state == timer.StatePrepared: pass elif timer.state == timer.StateRunning: # timer.isRunning() if config.EMC.files_cache.value: cutfilename = "/" + filename realpath = timer.Filename.replace(cutfilename, '') ext = ".ts" recname = timer.Filename + ext, filename + ext, ext from EMCFileCache import movieFileCache if movieFileCache.IsPathInCache(realpath): movieFileCache.addRecToCacheFileList(realpath, recname) if not filename in self.recDict: begin = timer.begin if timer.autoincrease: end = begin else: end = timer.end self.recDict[filename] = (begin, end, timer.service_ref.ref, str(timer)) inform = True emcDebugOut("[emcRC] REC START for: " + filename) else: #timer.state == timer.StateEnded: if filename in self.recDict: del self.recDict[filename] inform = True emcDebugOut("[emcRC] REC END for: " + filename) try: if hasattr(timer, "fixMoveCmd"): emcTasker.shellExecute(timer.fixMoveCmd) emcDebugOut("[emcRC] File had been moved while recording was in progress, moving left over files..") except: pass if config.EMC.timer_autocln.value: DelayedFunction(2000, self.timerCleanup) # postpone to avoid crash in basic timer delete by user if inform: if config.EMC.remote_recordings.value: self.recFileUpdate() self.recStateChange(timer) except Exception, e: emcDebugOut("[emcRC] recEvent exception:\n" + str(e))