Пример #1
0
 def __init__(self, session, infobar_mode=False):
     if FULLHD:
         if config.plugins.bitrate.style_skin.value == "compact":
             self.skin = self.skin_compact_fullhd
         else:
             self.skin = self.skin_info_fullhd
     else:
         if config.plugins.bitrate.style_skin.value == "compact":
             self.skin = self.skin_compact
         else:
             self.skin = self.skin_info
     Screen.__init__(self, session)
     self.infobar_mode = infobar_mode
     self.style_skin = config.plugins.bitrate.style_skin.value
     self.startDelayTimer = eTimer()
     self.startDelayTimer.callback.append(self.bitrateAfrterDelayStart)
     if config.plugins.bitrate.style_skin.value == "compact":
         self["video_caption"] = StaticText(_("Video:"))
         self["audio_caption"] = StaticText(_("Audio:"))
         self["video"] = StaticText()
         self["audio"] = StaticText()
     else:
         self.setTitle(_("Bitrate viewer"))
         self["vmin"] = Label("")
         self["vmax"] = Label("")
         self["vavg"] = Label("")
         self["vcur"] = Label("")
         self["amin"] = Label("")
         self["amax"] = Label("")
         self["aavg"] = Label("")
         self["acur"] = Label("")
     if not infobar_mode:
         self["actions"] = ActionMap(
             ["WizardActions"], {
                 "back": self.keyCancel,
                 "ok": self.keyCancel,
                 "right": self.keyCancel,
                 "left": self.keyCancel,
                 "down": self.keyCancel,
                 "up": self.keyCancel,
             }, -1)
     self.bitrate = Bitrate(session, self.refreshEvent, self.bitrateStopped)
     self.onLayoutFinish.append(self.__layoutFinished)
Пример #2
0
 def __init__(self, session, oids={}):
     self.session = session
     oids.update({
         self.SYSTEMDESCRIPTION_OID: self.getValue,
         '.1.3.6.1.2.1.1.2.0': '.1.3.6.1.4.1.88.3.1',
         self.SYSUPTIME_OID: self.getValue,
         self.SUPPORTADDRESS_OID: self.getValue,
         self.SYSTEMNAME_OID: self.getValue,
         self.LOCATION_OID: self.getValue,
         self.BER_OID: self.getValue,
         self.AGC_OID: self.getValue,
         self.SNR_OID: self.getValue,
         self.HASPICTURE_OID: self.getValue,
         self.VIDEO_BITRATE_OID: self.getValue,
         self.AUDIO_BITRATE_OID: self.getValue,
         self.CHANNELNAME_OID: self.getValue,
         self.SERVICESTRING_OID: self.getValue,
         self.FASTSCANSTRING_OID: self.getValue,
         self.SERVICEPARAMS_OID: self.getValue,
         self.MANAGERIP_OID: self.getValue,
         self.ENABLE_BITRATE_OID: self.getValue,
         self.IP_OID: self.getValue,
         self.NETMASK_OID: self.getValue,
         self.GATEWAY_OID: self.getValue,
         self.ENABLE_EMM_OID: self.getValue,
         self.EMM_OID: self.getValue,
     })
     bisectoidstore.BisectOIDStore.__init__(self, OIDs=oids)
     self.session.nav.event.append(self.gotServiceEvent)
     if config.plugins.SnmpAgent.measurebitrate.value:
         self.bitrate = Bitrate(session)
     else:
         self.bitrate = None
     if config.plugins.SnmpAgent.checkemm.value:
         self.emm = Emm(session)
     else:
         self.emm = None
Пример #3
0
    def __init__(self, session):
        self.skin = BitrateViewer.skin
        Screen.__init__(self, session)
        self.bitrate = Bitrate(session, self.refreshEvent, self.bitrateStopped)

        self["cancel"] = Button(_("Exit"))
        self["vmin"] = Label("")
        self["vmax"] = Label("")
        self["vavg"] = Label("")
        self["vcur"] = Label("")
        self["amin"] = Label("")
        self["amax"] = Label("")
        self["aavg"] = Label("")
        self["acur"] = Label("")

        self["actions"] = ActionMap(
            ["OkCancelActions", "ColorActions"], {
                "ok": self.keyCancel,
                "cancel": self.keyCancel,
                "red": self.keyCancel,
            }, -2)

        self.onLayoutFinish.append(
            self.bitrate.start)  # dont start before gui is finished
Пример #4
0
    def setValue(self, oid, value):
        #the first time we are called, we have to fill the bisect oid store, values are just values, no objects (we cannot call value.get)
        try:
            value.get()
        except:
            return bisectoidstore.BisectOIDStore.setValue(self, oid, value)

        oidstring = bisectoidstore.sortableToOID(oid)
        if oidstring == self.MANAGERIP_OID:
            if config.plugins.SnmpAgent.managerip.value <> value.get():
                config.plugins.SnmpAgent.managerip.value = value.get()
                config.plugins.SnmpAgent.managerip.save()
        elif oidstring == self.ENABLE_BITRATE_OID:
            if config.plugins.SnmpAgent.measurebitrate.value and not value.get(
            ):
                config.plugins.SnmpAgent.measurebitrate.value = False
                config.plugins.SnmpAgent.measurebitrate.save()
                if self.bitrate:
                    self.bitrate.stop()
                    self.bitrate = None
            elif not config.plugins.SnmpAgent.measurebitrate.value and value.get(
            ):
                config.plugins.SnmpAgent.measurebitrate.value = True
                config.plugins.SnmpAgent.measurebitrate.save()
                self.bitrate = Bitrate(self.session)
                self.bitrate.start()
        elif oidstring == self.SYSTEMNAME_OID:
            if config.plugins.SnmpAgent.systemname.value <> value.get():
                config.plugins.SnmpAgent.systemname.value = value.get()
                config.plugins.SnmpAgent.systemname.save()
        elif oidstring == self.SUPPORTADDRESS_OID:
            if config.plugins.SnmpAgent.supportaddress.value <> value.get():
                config.plugins.SnmpAgent.supportaddress.value = value.get()
                config.plugins.SnmpAgent.supportaddress.save()
        elif oidstring == self.SYSTEMDESCRIPTION_OID:
            if config.plugins.SnmpAgent.systemdescription.value <> value.get():
                config.plugins.SnmpAgent.systemdescription.value = value.get()
                config.plugins.SnmpAgent.systemdescription.save()
        elif oidstring == self.LOCATION_OID:
            if config.plugins.SnmpAgent.location.value <> value.get():
                config.plugins.SnmpAgent.location.value = value.get()
                config.plugins.SnmpAgent.location.save()
        elif oidstring == self.CHANNELNAME_OID:
            if self.getChannelName() <> value.get():
                root = config.tv.lastroot.value.split(';')
                fav = eServiceReference(root[-2])
                services = ServiceList(fav,
                                       command_func=self.zapTo,
                                       validate_commands=False)
                sub = services.getServicesAsList()

                if len(sub) > 0:
                    for (ref, name) in sub:
                        if name == value.get():
                            self.zapTo(eServiceReference(ref))
                            break
        elif oidstring == self.SERVICESTRING_OID:
            if self.getServiceString() <> value.get():
                self.zapTo(eServiceReference(value.get()))
        elif oidstring == self.FASTSCANSTRING_OID:
            refstring = ''
            fields = value.get().split(',')
            if len(fields) >= 15:
                onid, tsid, freq, id1, id2, sid, orbital_pos, f1, f2, f3, symbolrate, f4, name, provider, servicetype = fields[
                    0:15]
                refstring = '%d:%d:%d:%x:%x:%x:%x:%x:%x:%x:' % (
                    1, 0, int(servicetype), int(sid), int(tsid), int(onid),
                    int(orbital_pos) * 65536, 0, 0, 0)
            if refstring is not '':
                self.zapTo(eServiceReference(refstring))
        elif oidstring == self.SERVICEPARAMS_OID:
            refstring = ''
            fields = value.get().split(',')
            if len(fields) >= 5:
                orbital_pos, tsid, onid, sid, servicetype = fields[0:5]
                refstring = '%d:%d:%d:%x:%x:%x:%x:%x:%x:%x:' % (
                    1, 0, int(servicetype), int(sid), int(tsid), int(onid),
                    int(orbital_pos) * 65536, 0, 0, 0)
            if refstring is not '':
                self.zapTo(eServiceReference(refstring))
        elif oidstring == self.IP_OID:
            ipstring = value.get().split('.')
            ipval = []
            for x in ipstring:
                ipval.append(int(x))
            if iNetwork.getAdapterAttribute(self.iface, "ip") <> ipval:
                iNetwork.setAdapterAttribute(self.iface, "dhcp", 0)
                iNetwork.setAdapterAttribute(self.iface, "ip", ipval)
                iNetwork.deactivateNetworkConfig()
                iNetwork.writeNetworkConfig()
                iNetwork.activateNetworkConfig()
        elif oidstring == self.IP_OID:
            ipstring = value.get().split('.')
            ipval = []
            for x in ipstring:
                ipval.append(int(x))
            if iNetwork.getAdapterAttribute(self.iface, "netmask") <> ipval:
                iNetwork.setAdapterAttribute(self.iface, "dhcp", 0)
                iNetwork.setAdapterAttribute(self.iface, "netmask", ipval)
                iNetwork.deactivateNetworkConfig()
                iNetwork.writeNetworkConfig()
                iNetwork.activateNetworkConfig()
        elif oidstring == self.GATEWAY_OID:
            ipstring = value.get().split('.')
            ipval = []
            for x in ipstring:
                ipval.append(int(x))
            if iNetwork.getAdapterAttribute(self.iface, "gateway") <> ipval:
                iNetwork.setAdapterAttribute(self.iface, "dhcp", 0)
                iNetwork.setAdapterAttribute(self.iface, "gateway", ipval)
                iNetwork.deactivateNetworkConfig()
                iNetwork.writeNetworkConfig()
                iNetwork.activateNetworkConfig()
        elif oidstring == self.ENABLE_EMM_OID:
            if config.plugins.SnmpAgent.checkemm.value and not value.get():
                config.plugins.SnmpAgent.checkemm.value = False
                config.plugins.SnmpAgent.checkemm.save()
                if self.emm:
                    self.emm.stop()
                    self.emm = None
            elif not config.plugins.SnmpAgent.checkemm.value and value.get():
                config.plugins.SnmpAgent.checkemm.value = True
                config.plugins.SnmpAgent.checkemm.save()
                self.emm = Emm(self.session)
                self.emm.start()
        else:
            print "oid not found!?"

        return None
Пример #5
0
    def __init__(self, session, oids={}):
        self.session = session
        oids.update({
            self.SYSTEMDESCRIPTION_OID: self.getValue,
            '.1.3.6.1.2.1.1.2.0': '.1.3.6.1.4.1.88.3.1',
            self.SYSUPTIME_OID: self.getValue,
            self.SUPPORTADDRESS_OID: self.getValue,
            self.SYSTEMNAME_OID: self.getValue,
            self.LOCATION_OID: self.getValue,
            self.BER_OID: self.getValue,
            self.AGC_OID: self.getValue,
            self.SNR_OID: self.getValue,
            self.SNRDB_OID: self.getValue,
            self.LOCK_OID: self.getValue,
            self.HASPICTURE_OID: self.getValue,
            self.VIDEO_BITRATE_OID: self.getValue,
            self.AUDIO_BITRATE_OID: self.getValue,
            self.CHANNELNAME_OID: self.getValue,
            self.SERVICESTRING_OID: self.getValue,
            self.FASTSCANSTRING_OID: self.getValue,
            self.SERVICEPARAMS_OID: self.getValue,
            self.TUNERTYPE_OID: self.getValue,
            self.MANAGERIP_OID: self.getValue,
            self.ENABLE_BITRATE_OID: self.getValue,
            self.IP_OID: self.getValue,
            self.NETMASK_OID: self.getValue,
            self.GATEWAY_OID: self.getValue,
            self.ENABLE_EMM_OID: self.getValue,
            self.EMM_OID: self.getValue,
            self.CPU_USER: self.getValue,
            self.CPU_NICE: self.getValue,
            self.CPU_SYSTEM: self.getValue,
            self.CPU_IDLE: self.getValue,
            self.CPU_WAIT: self.getValue,
            self.LOAD_AVR1: self.getValue,
            self.LOAD_AVR5: self.getValue,
            self.LOAD_AVR15: self.getValue,
            self.MEM_TOTAL: self.getValue,
            self.MEM_TOTAL2: self.getValue,
            self.MEM_USED: self.getValue,
            self.MEM_FREE: self.getValue,
            self.MEM_BUFFER: self.getValue,
            self.MEM_CACHED: self.getValue,
            self.MEM_SWAPTOTAL: self.getValue,
            self.MEM_SWAPFREE: self.getValue,
            self.IF_NUMBER: self.getValue,
        })

        # Add disk info's
        totaldisks = GetDiskInfo(DiskInfoTypes.totalmounts, 0)
        for i in range(totaldisks):
            key = '%s.%d' % (self.DISK_INDEX, (i + 1))
            oids[key] = self.getValue
            key = '%s.%d' % (self.DISK_PATHNAME, (i + 1))
            oids[key] = self.getValue
            key = '%s.%d' % (self.DISK_DEVICENAME, (i + 1))
            oids[key] = self.getValue
            key = '%s.%d' % (self.DISK_AVAIL, (i + 1))
            oids[key] = self.getValue
            key = '%s.%d' % (self.DISK_USED, (i + 1))
            oids[key] = self.getValue

        # Add network info's
        totalnetworks = GetNetworkInfo(NetworkInfoTypes.total, 0)
        for i in range(totalnetworks):
            key = '%s.%d' % (self.IF_INDEX, (i + 1))
            oids[key] = self.getValue
            key = '%s.%d' % (self.IF_DESC, (i + 1))
            oids[key] = self.getValue
            key = '%s.%d' % (self.IF_TYPE, (i + 1))
            oids[key] = self.getValue
            key = '%s.%d' % (self.IF_MTU, (i + 1))
            oids[key] = self.getValue
            key = '%s.%d' % (self.IF_SPEED, (i + 1))
            oids[key] = self.getValue
            key = '%s.%d' % (self.IF_HWADDR, (i + 1))
            oids[key] = self.getValue
            key = '%s.%d' % (self.IF_STATUS, (i + 1))
            oids[key] = self.getValue
            key = '%s.%d' % (self.IF_INOCTANTS, (i + 1))
            oids[key] = self.getValue
            key = '%s.%d' % (self.IF_INDISCARD, (i + 1))
            oids[key] = self.getValue
            key = '%s.%d' % (self.IF_INERRORS, (i + 1))
            oids[key] = self.getValue
            key = '%s.%d' % (self.IF_OUTOCTANTS, (i + 1))
            oids[key] = self.getValue
            key = '%s.%d' % (self.IF_OUTDISCARD, (i + 1))
            oids[key] = self.getValue
            key = '%s.%d' % (self.IF_OUTERRORS, (i + 1))
            oids[key] = self.getValue
            key = '%s.%d' % (self.IF_NAME, (i + 1))
            oids[key] = self.getValue
            key = '%s.%d' % (self.IF_ALIAS, (i + 1))
            oids[key] = self.getValue
            key = '%s.%d' % (self.IF_HSPEED, (i + 1))
            oids[key] = self.getValue

            #special OID: IP address
            key = '%s.%s' % (self.IP_ADENTIFINDEX,
                             GetNetworkInfo(NetworkInfoTypes.ipaddr, i))
            oids[key] = self.getValue
            self.ip_adentifindex_ref[key] = i + 1

            key = '%s.%s' % (self.IF_IPADENTADDR,
                             GetNetworkInfo(NetworkInfoTypes.ipaddr, i))
            oids[key] = self.getValue
            self.ip_adentaddr_ref[key] = GetNetworkInfo(
                NetworkInfoTypes.ipaddr, i)

        bisectoidstore.BisectOIDStore.__init__(self, OIDs=oids)
        self.session.nav.event.append(self.gotServiceEvent)
        if config.plugins.SnmpAgent.measurebitrate.value:
            self.bitrate = Bitrate(session)
        else:
            self.bitrate = None
        if config.plugins.SnmpAgent.checkemm.value:
            self.emm = Emm(session)
        else:
            self.emm = None
Пример #6
0
    def __init__(self, session):
        Screen.__init__(self, session)
        self.session = session
        Screen.setTitle(self, _("System Info Panel"))
        self['mem_labels'] = Label(_('\nTotal:\nFree:\nUsed:\nUsed(%):'))
        self['ram'] = Label()
        self['root'] = Label()
        self['swap'] = Label()
        self['mem_tot'] = Label()
        self['membar'] = ProgressBar()
        self['rootbar'] = ProgressBar()
        self['swapbar'] = ProgressBar()
        self['memtotalbar'] = ProgressBar()
        self['space_labels'] = Label(_('\nTotal:\nFree:\nUsed:\nUsed(%):'))
        self['hdd'] = Label()
        self['usb'] = Label()
        self['usb1'] = Label()
        self['usb2'] = Label()
        self['hddbar'] = ProgressBar()
        self['usbbar'] = ProgressBar()
        self['usb1bar'] = ProgressBar()
        self['usb2bar'] = ProgressBar()
        self['HDDCPULabels'] = Label(_('Sensor:\nValue:'))
        self['usb3'] = Label()
        self['hddtemperature'] = Label(_('HDD Temp:\n....'))
        self['cpusys'] = Label()
        self['cpuusr'] = Label()
        self['usb3bar'] = ProgressBar()
        self['hddtempbar'] = ProgressBar()
        self['cpusysbar'] = ProgressBar()
        self['cpuusrbar'] = ProgressBar()
        self['uptime'] = Pixmap()
        self['utday'] = Label()
        self['uthour'] = Label()
        self['utmin'] = Label()
        self['utsec'] = Label()
        self['utdayval'] = Label()
        self['uthourval'] = Label()
        self['utminval'] = Label()
        self['utsecval'] = Label()
        self['utday'].hide()
        self['uthour'].hide()
        self['utmin'].hide()
        self['utsec'].hide()
        self['utdayval'].hide()
        self['uthourval'].hide()
        self['utminval'].hide()
        self['utsecval'].hide()
        self['kernelversion'] = Label('N/A')
        self['key1'] = Pixmap()
        self['key2'] = Pixmap()
        self['key3'] = Pixmap()
        self['key4'] = Pixmap()
        self['key5'] = Pixmap()
        self['key6'] = Pixmap()
        self['key_red'] = Label(_('Close'))
        self['key_green'] = Label(_('Refresh'))
        self['key_yellow'] = Label(_('Start Bitrate'))
        self['video'] = Label(_('Video'))
        self['audio'] = Label(_('Audio'))
        self['min'] = Label(_('Min'))
        self['max'] = Label(_('Max'))
        self['cur'] = Label(_('Current'))
        self['avg'] = Label(_('Average'))
        self['vmin'] = Label('')
        self['vmax'] = Label('')
        self['vavg'] = Label('')
        self['vcur'] = Label('')
        self['amin'] = Label('')
        self['amax'] = Label('')
        self['aavg'] = Label('')
        self['acur'] = Label('')
        self['DmesgInfo'] = ScrollLabel('')

        self['actions'] = ActionMap(
            ['OkCancelActions', 'WizardActions', 'ColorActions'], {
                'down': self.pageDown,
                'up': self.pageUp,
                'ok': self.keyCancel,
                'cancel': self.keyCancel,
                'back': self.keyCancel,
                'red': self.keyCancel,
                'green': self.KeyGreen,
                'yellow': self.KeyYellow,
            })

        self.startDelayTimer = eTimer()
        self.startDelayTimer.callback.append(self.bitrateAfterDelayStart)

        self.bitrate = Bitrate(session, self.refreshEvent, self.bitrateStopped)
        self.onLayoutFinish.append(self.updateList)