コード例 #1
0
    def listner_log(self):
        content={}
        content['input_data']=self.input_data
        init=Init.Init()

        query_devices=init.database.session.query(db.Device.Device)
        devices=query_devices.all()
        content['devices']=devices

        init=Init.Init()
        dump_path=init.config['DUMP']['dump_dir']
        index=1
        all_files=os.listdir(path=dump_path)
        files_hash={}
        for file in all_files:
            if len(re.findall(r'listner',file))>0:
                files_hash[file]=1

        index=1
        sort_file=[]
        tmp=[]
        while True:
            flag=False
            if 'listner_requst'+str(index)+'.dump' in files_hash:
                sort_file.append({'file_name':'listner_requst'+str(index)+'.dump','name':'Запрос от клиента к ACS'})
                flag=True
            if 'listner_response'+str(index)+'.dump' in files_hash:
                sort_file.append({'file_name':'listner_response'+str(index)+'.dump','name':'Ответ ACS клиенту'})
                flag=True
            if flag==False:
                break
            index=index+1
            if index>1000:
                break
        
        for file in sort_file:
            try:
                f=open(dump_path+'/'+file['file_name'],'r')
                line = f.readline()
                data=""
                while line:
                    data=data+line
                    line = f.readline()                
                f.close()
                data=re.sub(r'<','&lt',data)
                data=re.sub(r'>','&gt',data)
                file['data']=data
            except:
                pass
        
        content['listner_log']=sort_file
        return self.layout.render_ajax('/netlog/listner_log.html',content=content)
コード例 #2
0
    def do(self, input_data):
        # тут меняем логику если надо
        init = Init.Init()
        output = ""
        try:
            request_url = input_data['env']['REDIRECT_URL']
            path = self.parser_url(request_url)
            if path['controller'] == None or path['action'] == None:
                cntrl = default.default()
                cntrl.input_data = input_data
                l = layout.layout(init)
                return l.redirect("./default/index")

            control_str = path['controller']
            action_str = path['action']

            ctrl = self.get_controller(control_str)
            ctrl.input_data = input_data
            mtd = getattr(ctrl, action_str)
            return mtd()

        except Exception:
            e = sys.exc_info()
            str = traceback.format_exc()
            err = error.error(input_data, str)
            output = err.index()
        return output
コード例 #3
0
 def __init__(self):
     self.shema_dir = ""
     self.Controller = ""
     self.Action = ""
     init = Init.Init()
     init.config_file = '/home/leo/emualator/web/app/etc/site.conf'
     init.read_config()
     init.init_database()
     importdir.do(init.config['CONTROLLERS']['controller_dir'], globals())
コード例 #4
0
    def index(self):
        content={}
        content['input_data']=self.input_data
        init=Init.Init()

        query_devices=init.database.session.query(db.Device.Device)
        devices=query_devices.all()

        content['devices']=devices

        return self.layout.all_render_html('/netlog/index.html',content=content)
コード例 #5
0
    def index_all(self):
        content = {}
        content['input_data'] = self.input_data
        device_id = content['input_data']['cgi']['device_id'].value

        init = Init.Init()
        query_params = init.database.session.query(
            db.Param.Param).filter(db.Param.Param.device_id == device_id)
        params = query_params.all()
        content['params'] = params
        return self.layout.render_ajax('/param/all.html', content=content)
コード例 #6
0
    def net_status(self):
        content = {}
        content['input_data'] = self.input_data
        device_id = content['input_data']['cgi']['device_id'].value

        init = Init.Init()
        query_devices = init.database.session.query(
            db.Device.Device).filter(db.Device.Device.id == device_id)
        device = query_devices.one()
        content['device'] = device
        return self.layout.render_ajax('/device_info/net_status.html',
                                       content=content)
コード例 #7
0
 def power_off(self):
     content = {}
     content['input_data'] = self.input_data
     device_id = content['input_data']['cgi']['device_id'].value
     init = Init.Init()
     command = db.DeviceCommand.DeviceCommand(device_id=device_id,
                                              command='power_off',
                                              status='wait')
     init.database.session.add(command)
     init.database.session.commit()
     return self.layout.redirect("/device_info/index?device_id=" +
                                 device_id)
コード例 #8
0
    def index(self):
        content = {}
        content['input_data'] = self.input_data
        device_id = content['input_data']['cgi']['device_id'].value

        init = Init.Init()
        query_commands = init.database.session.query(
            db.DeviceCommand.DeviceCommand).filter(
                db.DeviceCommand.DeviceCommand.device_id ==
                device_id).order_by(db.DeviceCommand.DeviceCommand.id.desc())
        commands = query_commands.all()
        content['device_commands'] = commands
        return self.layout.render_ajax('/device_command/index.html',
                                       content=content)
コード例 #9
0
 def save(self):
     content = {}
     content['input_data'] = self.input_data
     device_id = content['input_data']['cgi']['device_id'].value
     init = Init.Init()
     for param_key in content['input_data']['cgi'].keys():
         try:
             query_params = init.database.session.query(
                 db.Param.Param).filter(
                     db.Param.Param.device_id == device_id,
                     db.Param.Param.name == param_key)
             param = query_params.one()
             param.value = content['input_data']['cgi'][param_key].value
         except:
             pass
     init.database.session.commit()
     return self.layout.redirect("/param/all?device_id=" + device_id)
コード例 #10
0
 def __init__(self):
     self.shema_dir = ""
     self.init = Init.Init()
     self.input_data = {}
     self.layout = app.layout.layout(self.init)
コード例 #11
0
ファイル: error.py プロジェクト: alex-filimonov/acs_prototype
 def __init__(self,input_data,err):
     self.shema_dir=""
     self.init=Init.Init()
     self.input_data=input_data
     self.error=err
     self.layout=app.layout.layout(self.init)