def prepareRefresh(self): print("[EPGRefresh] About to start refreshing EPG") # Maybe read in configuration try: self.readConfiguration() except Exception as e: print("[EPGRefresh] Error occured while reading in configuration:", e) self.scanServices = self.generateServicelist(self.services[0], self.services[1]) # Debug print("[EPGRefresh] Services we're going to scan:", ', '.join([repr(x) for x in self.scanServices])) self.maybeStopAdapter() # NOTE: start notification is handled in adapter initializer if config.plugins.epgrefresh.adapter.value.startswith("pip"): hidden = config.plugins.epgrefresh.adapter.value == "pip_hidden" refreshAdapter = PipAdapter(self.session, hide=hidden) elif config.plugins.epgrefresh.adapter.value.startswith("record"): refreshAdapter = RecordAdapter(self.session) else: refreshAdapter = MainPictureAdapter(self.session) if (not refreshAdapter.backgroundCapable and Screens.Standby.inStandby) or not refreshAdapter.prepare(): print("[EPGRefresh] Adapter is not able to run in background or not available, falling back to MainPictureAdapter") refreshAdapter = MainPictureAdapter(self.session) refreshAdapter.prepare() self.refreshAdapter = refreshAdapter self.refresh()
def prepareRefresh(self): print("[EPGRefresh] About to start refreshing EPG") try: self.readConfiguration() except Exception as e: print("[EPGRefresh] Error occured while reading in configuration:", e) self.scanServices = self.generateServicelist(self.services[0], self.services[1]) print("[EPGRefresh] Services we're going to scan:", ', '.join([repr(x) for x in self.scanServices])) self.maybeStopAdapter() if config.plugins.epgrefresh.adapter.value == "main": refreshAdapter = MainPictureAdapter(self.session) elif config.plugins.epgrefresh.adapter.value == "record": refreshAdapter = RecordAdapter(self.session) else: if config.plugins.epgrefresh.adapter.value == "pip": hidden = False elif config.plugins.epgrefresh.adapter.value == "pip_hidden": hidden = True refreshAdapter = PipAdapter(self.session, hide=hidden) if (not refreshAdapter.backgroundCapable and Screens.Standby.inStandby) or not refreshAdapter.prepare(): print( "[EPGRefresh] Adapter is not able to run in background or not available, falling back to MainPictureAdapter" ) refreshAdapter = MainPictureAdapter(self.session) refreshAdapter.prepare() self.refreshAdapter = refreshAdapter self.isrunning = True self.refresh() print("[EPGRefresh] pre start...")
def prepareRefresh(self): if not self.isRefreshAllowed(): return self.isrunning = True print("[EPGRefresh] About to start refreshing EPG") self._initFinishTodos() # Maybe read in configuration try: self.readConfiguration() except Exception as e: print("[EPGRefresh] Error occured while reading in configuration:", e) self.scanServices = self.generateServicelist(self.services[0], self.services[1]) # Debug print("[EPGRefresh] Services we're going to scan:", ', '.join([repr(x) for x in self.scanServices])) self.maybeStopAdapter() # NOTE: start notification is handled in adapter initializer if config.plugins.epgrefresh.adapter.value.startswith("pip"): hidden = config.plugins.epgrefresh.adapter.value == "pip_hidden" refreshAdapter = PipAdapter(self.session, hide=hidden) elif config.plugins.epgrefresh.adapter.value.startswith("record"): refreshAdapter = RecordAdapter(self.session) else: refreshAdapter = MainPictureAdapter(self.session) if (not refreshAdapter.backgroundCapable and Screens.Standby.inStandby) or not refreshAdapter.prepare(): print( "[EPGRefresh] Adapter is not able to run in background or not available, falling back to MainPictureAdapter" ) refreshAdapter = MainPictureAdapter(self.session) refreshAdapter.prepare() self.refreshAdapter = refreshAdapter try: from plugin import AdjustExtensionsmenu, extStopDescriptor, extPendingServDescriptor, extRunDescriptor AdjustExtensionsmenu(True, extPendingServDescriptor) AdjustExtensionsmenu(True, extStopDescriptor) AdjustExtensionsmenu(False, extRunDescriptor) except: print( "[EPGRefresh] Error while adding 'Stop Running EPG-Refresh' to Extensionmenu" ) print_exc(file=stdout) if config.plugins.epgrefresh.erase.value: print("[EPGRefresh] flushing EPG cache...") from enigma import eEPGCache epgcache = eEPGCache.getInstance() epgcache.flushEPG() self.refresh()
def prepareRefresh(self): if not self.isRefreshAllowed(): return self.isrunning = True print("[EPGRefresh] About to start refreshing EPG") self._initFinishTodos() # Maybe read in configuration try: self.readConfiguration() except Exception as e: print("[EPGRefresh] Error occured while reading in configuration:", e) self.scanServices = self.generateServicelist(self.services[0], self.services[1]) # Debug print("[EPGRefresh] Services we're going to scan:", ', '.join([repr(x) for x in self.scanServices])) self.maybeStopAdapter() # NOTE: start notification is handled in adapter initializer if config.plugins.epgrefresh.adapter.value.startswith("pip"): hidden = config.plugins.epgrefresh.adapter.value == "pip_hidden" refreshAdapter = PipAdapter(self.session, hide=hidden) elif config.plugins.epgrefresh.adapter.value.startswith("record"): refreshAdapter = RecordAdapter(self.session) else: refreshAdapter = MainPictureAdapter(self.session) if (not refreshAdapter.backgroundCapable and Screens.Standby.inStandby) or not refreshAdapter.prepare(): print("[EPGRefresh] Adapter is not able to run in background or not available, falling back to MainPictureAdapter") refreshAdapter = MainPictureAdapter(self.session) refreshAdapter.prepare() self.refreshAdapter = refreshAdapter try: from plugin import AdjustExtensionsmenu, extStopDescriptor, extPendingServDescriptor, extRunDescriptor AdjustExtensionsmenu(True, extPendingServDescriptor) AdjustExtensionsmenu(True, extStopDescriptor) AdjustExtensionsmenu(False, extRunDescriptor) except: print("[EPGRefresh] Error while adding 'Stop Running EPG-Refresh' to Extensionmenu") print_exc(file=stdout) if config.plugins.epgrefresh.erase.value: print("[EPGRefresh] flushing EPG cache...") from enigma import eEPGCache epgcache = eEPGCache.getInstance() epgcache.flushEPG() self.refresh()
def prepareRefresh(self): print("[EPGRefresh] About to start refreshing EPG") # Maybe read in configuration try: self.readConfiguration() except Exception as e: print("[EPGRefresh] Error occured while reading in configuration:", e) # This will hold services which are not explicitely in our list additionalServices = [] additionalBouquets = [] # See if we are supposed to read in autotimer services if config.plugins.epgrefresh.inherit_autotimer.value: removeInstance = False try: # Import Instance from Plugins.Extensions.AutoTimer.plugin import autotimer if autotimer is None: removeInstance = True # Create an instance from Plugins.Extensions.AutoTimer.AutoTimer import AutoTimer autotimer = AutoTimer() # Read in configuration autotimer.readXml() except Exception as e: print("[EPGRefresh] Could not inherit AutoTimer Services:", e) else: # Fetch services for timer in autotimer.getEnabledTimerList(): additionalServices.extend([EPGRefreshService(x, None) for x in timer.services]) additionalBouquets.extend([EPGRefreshService(x, None) for x in timer.bouquets]) finally: # Remove instance if there wasn't one before if removeInstance: autotimer = None serviceHandler = eServiceCenter.getInstance() for bouquet in self.services[1].union(additionalBouquets): myref = eServiceReference(bouquet.sref) list = serviceHandler.list(myref) if list is not None: while 1: s = list.getNext() # TODO: I wonder if its sane to assume we get services here (and not just new lists) if s.valid(): additionalServices.append(EPGRefreshService(s.toString(), None)) else: break del additionalBouquets[:] scanServices = [] channelIdList = [] for scanservice in self.services[0].union(additionalServices): service = eServiceReference(scanservice.sref) if not service.valid() \ or (service.flags & (eServiceReference.isMarker|eServiceReference.isDirectory)): continue channelID = '%08x%04x%04x' % ( service.getUnsignedData(4), # NAMESPACE service.getUnsignedData(2), # TSID service.getUnsignedData(3), # ONID ) if channelID not in channelIdList: scanServices.append(scanservice) channelIdList.append(channelID) del additionalServices[:] # Debug print("[EPGRefresh] Services we're going to scan:", ', '.join([repr(x) for x in scanServices])) self.maybeStopAdapter() # NOTE: start notification is handled in adapter initializer if config.plugins.epgrefresh.adapter.value.startswith("pip"): hidden = config.plugins.epgrefresh.adapter.value == "pip_hidden" refreshAdapter = PipAdapter(self.session, hide=hidden) elif config.plugins.epgrefresh.adapter.value.startswith("record"): refreshAdapter = RecordAdapter(self.session) else: refreshAdapter = MainPictureAdapter(self.session) if (not refreshAdapter.backgroundCapable and Screens.Standby.inStandby) or not refreshAdapter.prepare(): print("[EPGRefresh] Adapter is not able to run in background or not available, falling back to MainPictureAdapter") refreshAdapter = MainPictureAdapter(self.session) refreshAdapter.prepare() self.refreshAdapter = refreshAdapter self.scanServices = scanServices self.refresh()
def prepareRefresh(self): print("[EPGRefresh] About to start refreshing EPG") # Maybe read in configuration try: self.readConfiguration() except Exception as e: print("[EPGRefresh] Error occured while reading in configuration:", e) # This will hold services which are not explicitely in our list additionalServices = [] additionalBouquets = [] # See if we are supposed to read in autotimer services if config.plugins.epgrefresh.inherit_autotimer.value: removeInstance = False try: # Import Instance from Plugins.Extensions.AutoTimer.plugin import autotimer if autotimer is None: removeInstance = True # Create an instance from Plugins.Extensions.AutoTimer.AutoTimer import AutoTimer autotimer = AutoTimer() # Read in configuration autotimer.readXml() except Exception as e: print("[EPGRefresh] Could not inherit AutoTimer Services:", e) else: # Fetch services for timer in autotimer.getEnabledTimerList(): additionalServices.extend( [EPGRefreshService(x, None) for x in timer.services]) additionalBouquets.extend( [EPGRefreshService(x, None) for x in timer.bouquets]) finally: # Remove instance if there wasn't one before if removeInstance: autotimer = None scanServices = [] channelIdList = [] self.addServices(self.services[0], scanServices, channelIdList) serviceHandler = eServiceCenter.getInstance() for bouquet in self.services[1].union(additionalBouquets): myref = eServiceReference(bouquet.sref) list = serviceHandler.list(myref) if list is not None: while 1: s = list.getNext() # TODO: I wonder if its sane to assume we get services here (and not just new lists) if s.valid(): additionalServices.append( EPGRefreshService(s.toString(), None)) else: break del additionalBouquets[:] self.addServices(additionalServices, scanServices, channelIdList) del additionalServices[:] # Debug print("[EPGRefresh] Services we're going to scan:", ', '.join([repr(x) for x in scanServices])) self.maybeStopAdapter() # NOTE: start notification is handled in adapter initializer if config.plugins.epgrefresh.adapter.value.startswith("pip"): hidden = config.plugins.epgrefresh.adapter.value == "pip_hidden" refreshAdapter = PipAdapter(self.session, hide=hidden) elif config.plugins.epgrefresh.adapter.value.startswith("record"): refreshAdapter = RecordAdapter(self.session) else: refreshAdapter = MainPictureAdapter(self.session) if (not refreshAdapter.backgroundCapable and Screens.Standby.inStandby) or not refreshAdapter.prepare(): print( "[EPGRefresh] Adapter is not able to run in background or not available, falling back to MainPictureAdapter" ) refreshAdapter = MainPictureAdapter(self.session) refreshAdapter.prepare() self.refreshAdapter = refreshAdapter self.scanServices = scanServices self.refresh()
service.getUnsignedData(3), # ONID ) if channelID not in channelIdList: scanServices.append(scanservice) channelIdList.append(channelID) del additionalServices[:] # Debug print "[EPGRefresh] Services we're going to scan:", ', '.join([repr(x) for x in scanServices]) self.maybeStopAdapter() # NOTE: start notification is handled in adapter initializer if config.plugins.epgrefresh.adapter.value.startswith("pip"): hidden = config.plugins.epgrefresh.adapter.value == "pip_hidden" refreshAdapter = PipAdapter(self.session, hide=hidden) elif config.plugins.epgrefresh.adapter.value.startswith("record"): refreshAdapter = RecordAdapter(self.session) else: refreshAdapter = MainPictureAdapter(self.session) if (not refreshAdapter.backgroundCapable and Screens.Standby.inStandby) or not refreshAdapter.prepare(): print "[EPGRefresh] Adapter is not able to run in background or not available, falling back to MainPictureAdapter" refreshAdapter = MainPictureAdapter(self.session) refreshAdapter.prepare() self.refreshAdapter = refreshAdapter self.scanServices = scanServices self.refresh() def cleanUp(self):