class Update(object):

    def __init__(self,ipadd,fm_path,session=None):
        self.class_name = 'Update'
        self.ls = LogShow(self.class_name)
        if isinstance(ipadd, str):
            self.ip = ipadd
        else:
            self.ip = str(ipadd)
        if not Check.checkIP(self.ip):
            self.ls.log_print('warn', self.ip + ' is not valuable!', '__init__')
        if isinstance(fm_path, str):            
            self.firmware_path = fm_path
        else:
            self.firmware_path = str(fm_path)

        self.url_update = 'http://' + self.ip + '/service/system/firmware_upgrade/full_update'
        self.url_status = 'http://' + self.ip + '/service/system/task/status'
        self.url_update_new = 'http://' + self.ip + '/service/system/system_upgrade'
        self.url_restore = 'http://' + self.ip + '/service/system/restore'
        self.url_stop = 'http://' + self.ip + '/service/system/stop'
        self.url_start = 'http://' + self.ip + '/service/system/start'
        
        self.login = LogIn(self.ip)
        if session is None:
            self.Login()
        else:
            self.session = session

    def Login(self):
        self.session = self.login.login()

    def __str__(self):
        return self.class_name

    def reLogin(self):
        self.Login()

    @checkSN
    def stopSlamware(self):
        try:
            self.ls.log_print('system', 'stop the slamwared now', self.stopSlamware.__name__)
            self.session.post(self.url_stop)
            self.ls.log_print('system', 'stop slamwared ok ', self.stopSlamware.__name__)
        except Exception,e:
            self.ls.log_print('error', str(e),  self.stopSlamware.__name__)
Beispiel #2
0
class GetSN(object):

    def __init__(self, ipadd, session):
        self.class_name = 'GetSN'
        

        if isinstance(ipadd, str):
            self.ip = ipadd
        else:
            self.ip = str(ipadd)
        
        self.login = LogIn(self.ip)

        if session is not None:
            self.session = session
        else:
            self.session = self.reLogin()

        url_pre = 'http://' + self.ip
        self.url_sn = url_pre + '/service/system/admin/sn'
        self.url_version = url_pre + '/service/system/firmware_upgrade/version'
        
        self.ls = LogShow(self.class_name)
        self.getContent()


    def __str__(self):
        return self.class_name


    def reLogin(self):
        return  self.login.login()

    @checkSN
    def getContent(self):
        try:
            self.SNcontent = self.session.get(self.url_sn).text
            self.snJson = json.loads(self.SNcontent)
            time.sleep(5)
            self.VEcontent = self.session.get(self.url_version).text
            self.veJson = json.loads(self.VEcontent)
        except Exception,e:
            self.ls.log_print('error', str(traceback.print_exc()), self.getContent.__name__)
            time.sleep(5)
            self.getContent()
Beispiel #3
0
 def reLogin(self):
     login = LogIn(self.ip)
     return login.login()
Beispiel #4
0
class WebController(object):
    def __init__(self, ipadd, session=None):
        self.ip = ipadd
        self.class_name = "WebController"
        self.ls = LogShow(self.class_name)
        if not hasattr(self, "session"):
            if session is None:
                self.login()
            else:
                self.session = session

    def __str__(self):
        return self.class_name

    def login(self):
        self.login = LogIn(self.ip)
        self.session = self.login.login()
        return self.session

    def Debug(self):
        if not hasattr(self, "debug"):
            self.debug = Debug(self.ip, self.session)
        return self.debug

    def openDebug(self):
        self.Debug()
        return self.debug.openDebug()

    def closeDebug(self):
        self.Debug()
        return self.debug.closeDebug()

    def getSN(self):
        if not hasattr(self, "getsn"):
            self.getsn = GetSN(self.ip, self.session)
        return self.getsn

    def getDeviceSN(self):
        self.getSN()
        return self.getsn.getDeviceSN()

    def getBaseSN(self):
        self.getSN()
        return self.getsn.getBaseSN()

    def getIPMode(self):
        self.getSN()
        return self.getsn.getIPMode()

    def getVersion(self):
        self.getSN()
        return self.getsn.getVersion()

    def getFWVersion(self):
        self.getSN()
        return self.getsn.getFWVersion()

    def GetDiagnosis(self):
        if not hasattr(self, "getdiagnosis"):
            self.getdiagnosis = GetDiagnosis(self.ip, self.session)
        return self.getdiagnosis

    def OpenDiagnosis(self):
        self.GetDiagnosis()
        self.getdiagnosis.OpenDiagnosis()

    def getMsg(self):
        self.GetDiagnosis()
        self.getdiagnosis.getMsg()

    def RunGetAll(self):
        self.GetDiagnosis()
        self.getdiagnosis.RunGetAll()

    def CloseDiagnosis(self):
        self.GetDiagnosis()
        self.getdiagnosis.CloseDiagnosis()

    def Update(self, fmpath):
        if not hasattr(self, "update"):
            self.update = Update(self.ip, fmpath, self.session)
        return self.update

    def runUpdate(self):
        self.Update()
        self.update.runUpdate()

    def runUpdate_new(self):
        self.Update()
        self.update.runUpdate_new()

    def run(self, command, args=[]):
        if command is not None and command != '':
            if command == 'openDebug':
                self.openDebug()
            if command == 'closeDebug':
                self.closeDebug()
            if command == 'getDeviceSN':
                self.getDeviceSN()
            if command == 'getBaseSN':
                self.getBaseSN()
            if command == 'getVersion':
                self.getVersion()
            if command == 'getFWVersion':
                self.getFWVersion()
            if command == 'openDiagnosis':
                self.openDiagnosis()
            if command == 'getMsg':
                self.getMsg()
            if command == 'RunGetALL':
                self.RunGetAll()
            if command == 'CloseDiagnosis':
                self.CloseDiagnosis()
            if command == 'Update':
                self.Update(args)
            if command == 'runUpdate':
                self.runUpdate()