CN110445644A - 页面和cli命令序列自动生成方法、页面生成的方法、设备端和页面管理系统 - Google Patents
页面和cli命令序列自动生成方法、页面生成的方法、设备端和页面管理系统 Download PDFInfo
- Publication number
- CN110445644A CN110445644A CN201910682579.7A CN201910682579A CN110445644A CN 110445644 A CN110445644 A CN 110445644A CN 201910682579 A CN201910682579 A CN 201910682579A CN 110445644 A CN110445644 A CN 110445644A
- Authority
- CN
- China
- Prior art keywords
- page
- title
- module
- configuration file
- cli
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
- G06F9/45508—Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation
- G06F9/45512—Command shells
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/02—Standardisation; Integration
- H04L41/0213—Standardised network management protocols, e.g. simple network management protocol [SNMP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/02—Standardisation; Integration
- H04L41/0246—Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols
- H04L41/0266—Exchanging or transporting network management information using the Internet; Embedding network management web servers in network elements; Web-services-based protocols using meta-data, objects or commands for formatting management information, e.g. using eXtensible markup language [XML]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/0816—Configuration setting characterised by the conditions triggering a change of settings the condition being an adaptation, e.g. in response to network events
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/22—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
Abstract
本发明属于通信技术领域,公开了一种基于页面配置文件的页面自动生成和CLI命令序列生成方法,包括如下步骤:步骤1:解析页面配置文件得到解析数据;所述解析数据中含有显示页面中各元素的名称、描述信息、配置参数;步骤2:根据解析数据生成显示页面;步骤3:根据解析数据中的各元素的名称、描述信息生成CLI命令序列。其主要用于降低CLI命令序列编写的大量重复劳动,提高准确率;同时,本申请还公开了一种基于页面配置文件的页面生成的方法,其主要用于适应不同的管理习惯的人员,降低各类管理人员的工作量,提高准确率,保证页面的风格统一。此外,本申请还提出了一种设备端和页面管理系统。
Description
技术领域
本发明涉及通信技术领域,具体地说是一种基于页面配置文件的页面和CLI命令序列自动生成方法、页面生成的方法、设备端和页面管理系统。
背景技术
现在的路由器都有内置网页服务器用于提供参数配置和管理使用,用户通过浏览器访问路由器的配置管理页面对路由器进行参数配置,支持多国语言以及支持恢复参数为出厂默认参数配置。所以作为路由器上的管理系统,需要提供五个功能:1、可视化的页面供用户登陆访问;2、允许用户通过可视化页面进行参数配置生成用户参数;3、允许用户将页面配置恢复成出厂默认配置;4、支持多语言让用户界面更友好;5、支持对设备进行远程管理。
可视化页面包括多个不同功能的子页面,目前大部分厂商都是针对不同的子页面分别实现静态页面,会导致每次增加子页面都需要复制一份已有的页面,然后进行定制化改动后形成新的页面。这种方式容易引起多种问题:1、页面由不同人员实现,风格不统一;2、页面由不同人员实现,不同人员的技术水平差异导致不同页面性能不同,或者存在各种不同的问题。3、多个页面之间存在冗余重复代码,维护相当困难。
网络设备支持网管通过命令行进行设备管理,所以需要进行网页菜单转化成命令行所支持的命令序列,命令序列有各种组合,也是需要有层级结构,手动编写命令序列表的工作量很大,也容易出错。
所以,本申请所要解决的第一个问题是:如何降低对于习惯通过命令行界面进行页面管理的人员的工作量和出错率。
其次,本申请所要解决的第二个问题在于:如何对于不同的操作习惯的管理人员提供相对全面、简单可靠的多种管理方法,以降低各种类型的管理人员的工作量和出错率,并且使显示界面的风格尽可能的一致。
发明内容
本发明的目的在于提供一种基于页面配置文件的页面和CLI命令序列自动生成方法、页面生成的方法、设备端和页面管理系统。
本申请的公开的第一个方案:一种基于页面配置文件的页面自动生成和CLI命令序列生成方法,其主要用于降低习惯通过CLI命令序列进行页面管理的管理人员的工作量,提高准确率,保证页面的风格统一。CLI命令序列并非由管理人员编辑,而是内置在设备中,以CLI配置文件的形式存在。
在传统技术中,该配置文件一般由研发人员手动编辑配置文件,将所有支持的CLI命令序列手动写入配置文件中。
在本申请中自动根据页面配置文件生成,这样减少了研发人员的重复劳动,避免出错,而且当在Web端新增页面时,也无需手动更新,会自动根据最新的网页配置文件重新生成新的CLI配置文件。
本申请公开的第二个方案:一种基于页面配置文件的页面生成的方法,其主要用于提供各类不同的页面管理方法,以适应不同的管理习惯的人员,降低各类管理人员的工作量,提高准确率,保证页面的风格统一。
此外,本申请还提出了一种设备端和页面管理系统。
本发明的具体的技术方案为:一种基于页面配置文件的页面自动生成和CLI命令序列生成方法,包括如下步骤:
步骤1:解析页面配置文件得到解析数据;所述解析数据中含有显示页面中各元素的名称、描述信息、配置参数;
步骤2:根据解析数据生成显示页面;
步骤3:根据解析数据中的各元素的名称、描述信息生成CLI配置文件,所述CLI配置文件由各元素的CLI命令序列组成。
在上述的基于页面配置文件的页面自动生成和CLI命令序列生成方法中,所述页面配置文件中各元素的层级结构和CLI命令序列中的各元素的层级结构相同。
在上述的基于页面配置文件的页面自动生成和CLI命令序列生成方法中,还包括语言包;所述语言包为多个,每个语言包对应一国语言文字;
所述语言包中含有各元素的名称和对应的语言文字,所述元素的名称和语言文字通过键值对的形式存储于语言包中;其中,元素的名称为键值对的键名,对应的语言文字为键值对的值;
在步骤2中,还包括:根据用户的选择,选择对应的语言包并将显示页面中各元素的名称用对应的语言文字显示。
此外,本申请还提出了一种基于页面配置文件的页面生成的方法,包括如下步骤:
步骤1:解析页面配置文件得到解析数据;所述解析数据中含有显示页面中各元素的名称、描述信息、配置参数、索引号;
步骤2:根据解析数据生成显示页面;
步骤3:若用户修改了页面上的元素的配置参数,则根据解析数据中该元素的名称和修改后的配置参数生成该元素对应的用户配置文件并存储;
步骤4:根据解析数据中的各元素的名称、索引号生成MIBs表;用户可对MIBs中任意元素进行配置参数进行设置,并生成含该元素对应的索引号和配置参数的第一修改请求;
步骤5:根据解析数据中的各元素的名称、描述信息生成CLI配置文件,所述CLI配置文件由各元素的CLI命令序列组成;用户可对CLI命令序列中任意元素进行配置参数的设置,并生成含该元素的名称、配置参数的第二修改请求;
步骤6:根据步骤3中的用户配置文件、步骤4中的第一修改请求、步骤5中的第二修改请求中的一种或多种并结合解析数据,重新生成显示页面。
在上述的基于页面配置文件的页面生成的方法中,所述页面配置文件中各元素的层级结构和CLI命令序列中的各元素的层级结构、用户配置文件中的各元素的层级结构、MIBs表中的各元素的层级结构相同。
此外,本发明还提供了一种设备端,包括如下模块:
数据解析模块:用于解析页面配置文件得到解析数据;所述解析数据中含有显示页面中各元素的名称、描述信息、配置参数;
页面绘制模块:用于根据解析数据以及可选的用户配置文件、第一修改请求、第二修改请求生成显示页面;
用户配置文件生成模块:用于在用户修改了显示页面上的元素的配置参数后,根据解析数据中该元素的名称和修改后的配置参数生成该元素对应的用户配置文件并存储;
MIBs表生成模块:用于根据解析数据中的各元素的名称、索引号生成MIBs表;用户可根据MIBs表修改元素的配置参数并生成含该元素的索引号和配置参数的第一修改请求,发送给页面绘制模块;
CLI命令序列生成模块:用于根据解析数据中的各元素的名称、描述信息生成CLI配置文件,所述CLI配置文件由各元素的CLI命令序列组成;所述CLI配置文件用于在设备端或上传至外设的服务器端供用户根据CLI命令序列修改元素的配置参数、生成含该元素的名称、配置参数的第二修改请求并发送给页面绘制模块。
在上述的设备端中,还包括如下模块:
语言包模块:用于存储和解析多个语言包,每个语言包对应一国语言文字;
所述语言包中含有各元素的名称和对应的语言文字,所述元素的名称和语言文字通过键值对的形式存储于语言包中;其中,元素的名称为键值对的键名,对应的语言文字为键值对的值;
所述语言包模块还用于根据用户的选择,将对应的解析后的语言包发送给页面绘制模块,所述页面绘制模块根据解析后的语言包,将各元素的名称以对应的语言文字进行显示。
在上述的设备端中,还包括:
第一通信模块:用于和外设的服务器端进行通信;
显示模块:用于对页面绘制模块所生成的显示页面进行显示。
最后,本申请还提出了一种基于页面配置文件的页面管理系统,包括设备端和服务器端,所述设备端如上任一所述;
所述的服务器端包括如下模块:
第二通信模块:用于和设备端进行通信;
SNMP管理模块:所述SNMP管理模块内置有SNMP管理软件,并通过SNMP管理软件导入设备端发送的MIBs表生成包含各元素的树形菜单样式;所述树形菜单样式按照各元素的层级结构记载各元素的名称、索引号;
当用户通过SNMP管理模块对树形菜单样式中任意元素的配置参数进行设置时,所述SNMP管理模块用于生成第一修改请求并下发至设备端的页面绘制模块,所述第一修改请求包含该元素的索引号、用户设置的配置参数。
在上述的基于页面配置文件的页面管理系统中,所述服务器端还包括如下模块:
CLI命令序列编辑模块:用于接收设备端发送的CLI配置文件并供用户对CLI配置文件中的CLI命令序列进行配置参数的设置,并生成含该元素的名称、配置参数的第二修改请求;
所述第二修改请求通过第二通信模块发送给设备端的页面绘制模块。
与现有技术相比,本发明的有益效果在于:
本发明的基于页面配置文件的页面自动生成和CLI命令序列生成方法的优势在于:根据页面配置文件同时进行页面绘制和生成CLI命令序列,管理人员无需额外编辑CLI命令序列,根据自动生成的CLI命令序列即可进行页面的元素的配置参数的管理。CLI命令序列并非由管理人员编辑,而是内置在设备中,以CLI配置文件的形式存在。
在传统技术中,该配置文件一般由研发人员手动编辑配置文件,将所有支持的CLI命令序列手动写入配置文件中。
在本申请中自动根据页面配置文件生成,这样减少了研发人员的重复劳动,避免出错,而且当在Web端新增页面时,也无需手动更新,会自动根据最新的网页配置文件重新生成新的CLI配置文件。
优选地,其所述页面配置文件中个元素的层级结构和CLI命令序列表中的各元素的层级结构相同,降低操作人员的劳动强度。
采用多种语言包,语言包中以键值对的形式记载各元素的名称和语言文字,通过对语言包的解析即可实现多个语言适配到显示页面中,无需开发出多套语言版本的代码,降低代码复杂性。
本发明的一种基于页面配置文件的页面生成的方法的优势在于:提出了基于页面配置文件自动生成MIBs表、CLI命令序列,用户无需手工编辑MIBs表、CLI命令序列,当用户需要修改显示页面的任意的元素的配置参数时,可以根据自动生成的MIBs表、CLI命令序列编辑和生成第一修改请求和第二修改请求,此外,本发明还支持用户在设备端的显示页面上对元素的配置参数进行修改,生成用户配置文件;根据解析数据结合第一修改请求和第二修改请求、用户配置文件中任意一种可以对显示页面进行更新。
同时,其也可以适用于不同的操作习惯、操作水平的管理人员,使设备的使用更为便捷,也降低了管理人员的工作量,降低出错率,保证了显示页面的统一风格。
附图说明
图1为本发明实施例1的流程方框图;
图2为本发明实施例2的流程方框图;
图3为本发明实施例3的结构方框图;
图4为本发明实施例4的结构方框图;
图5为本发明实施例1的显示页面的截图。
具体实施方式
下面结合具体实施方式,对本发明的技术方案作进一步的详细说明,但不构成对本发明的任何限制。
实施例1
参考图1,一种基于页面配置文件的页面自动生成和CLI命令序列生成方法,包括如下步骤:
步骤1:解析页面配置文件得到解析数据;所述解析数据中含有显示页面中各元素的名称、描述信息、配置参数;
页面配置文件可从远程服务器、本地服务器中获取,或者预先存储设备端中。
本实施例的设备端包括但不限于:路由器、工业路由器。
页面配置文件包括但不限于显示页面中各元素的名称、描述信息、配置参数、索引号;
对应的,通过解析得到的解析数据中同样含有显示页面中各元素的名称、描述信息、配置参数、索引号;
具体来说,解析数据是一份精简的仅含完整的页面框架的配置文件;
解析数据可以通过以下解析数据中的部分代码予以表示:
上述代码总共分为5行;
其中第一行和第二行为元素usb的相关描述,具体来说,元素usb的名称为“usb”,描述信息为“USB”,该描述信息为页面可见的内容;索引号oid为"30";
第三行为元素usb_enable的相关描述,具体来说,元素usb_enable名称为“usb_enable”,描述信息为“Enable USB”,默认配置参数为“true”;索引号oid为“30.1”
第四行为元素usb_auto_update的相关描述,具体来说,元素usb_auto_update名称为“usb_auto_update”,描述信息为“Enable Automatic Upgrade”,默认配置参数为“false”;索引号oid为“30.2”。
第五行为结束语。
无论在页面配置文件还是在解析数据中,并不是所有的元素均具有配置参数。比如元素usb是属于页面框架部分,其并无相关配置参数可供修改;元素usb_enable和元素usb_auto_update属于页面元素,其具有配置参数;元素usb相当于元素usb_enable和元素usb_auto_update的容器。
各元素都会在显示界面予以显示,但是只有页面元素如元素usb_enable和元素usb_auto_update具有配置参数。
在本实施例的设备端还存储有多个语言包,每个语言包对应一国语言文字;所述语言包中含有各元素的名称和对应的语言文字,所述元素的名称和语言文字通过键值对的形式存储于语言包中;其中,元素的名称为键值对的键名,对应的语言文字为键值对的值;如键名“usb_auto_update”对应的值为“启用USB自动升级”。
步骤2:根据解析数据生成显示页面;
由于解析文件中详细记载了各元素的配置参数、名称、描述信息等。同时,在设备端的系统中预定义了用于生成显示界面的控件样式;
当用户需要访问某个页面时,该页面包含多个元素,此时,根据解析文件中记载的该页面中的各元素的参数,生成.js文件,.js文件自动根据控件样式,渲染出对应的页面显示给用户;
.js文件是JavaScript语言文件的扩展名,JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。JavaScript已经被广泛用于Web应用开发,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。通常JavaScript脚本是通过嵌入在HTML中来实现自身的功能的。它是世界上最流行的脚本语言,在电脑、手机、平板上浏览的网页,以及基于HTML5的手机App,交互逻辑都是由JavaScript驱动的。
优选地,当用户选择对应的语言包后,.js文件所包含的各元素的描述信息就被替换为对应的语言文字,如将.js文件中元素usb_auto_update的元素的描述信息由“EnableAutomatic Upgrade”修改为“启用USB自动升级”,那么最终显示页面中的该元素就会显示为“启用USB自动升级”。
图5示出了根据步骤1中例举的解析数据所生成的显示页面。
步骤3:根据解析数据中的各元素的名称、描述信息生成CLI配置文件,所述CLI配置文件由各元素的CLI命令序列组成。优选地,各元素的CLI命令序列以严格的和页面配置文件完全一致的层级结构组成CLI配置文件。
CLI命令序列(命令行界面,command-line interface,缩写:CLI)是在图形用户界面得到普及之前使用最为广泛的用户界面,它通常不支持鼠标,用户通过键盘输入指令,计算机接收到指令后,予以执行。也有人称之为字符用户界面(CUI)
通常认为,命令行界面(CLI)没有图形用户界面(GUI)那么方便用户操作。因为,命令行界面的软件通常需要用户记忆操作的命令,但是,由于其本身的特点,命令行界面要较图形用户界面节约计算机系统的资源。在熟记命令的前提下,使用命令行界面往往要较使用图形用户界面的操作速度要快。所以,图形用户界面的操作系统中,都保留着可选的命令行界面
这也是本申请所要解决的核心问题之一:操作人员要熟记命令很难,编辑过程容易出错。
如何解决该问题在下文详述。
本步骤中根据解析数据中的各元素的名称、描述信息生成CLI命令序列的具体方法为:
提取解析数据中各元素的名称和描述信息,并根据各元素的名称和描述信息自动生成CLI命令序列,生成的CLI命令序列如下(与步骤1中部分代码对应):
通过上述的CLI命令序列可以看出,页面框架部分的元素USB、页面元素EnableUSB、页面元素Enable Automatic Upgrade严格按照解析数据中各元素的层级结构而存在的。这样操作人员在进行CLI命令序列修改和设置配置时,可以根据层级结构快速找到任意元素所在的CLI命令序列的位置。
根据页面配置文件同时进行页面绘制和生成CLI命令序列,命令序列并非由管理人员编辑,而是内置在设备中,以CLI配置文件的形式存在。
在现有技术中,该配置文件一般由研发人员手动编辑配置文件,将所有支持的CLI命令序列手动写入配置文件中。
本实施例是自动根据页面配置文件生成,这样减少了研发人员的重复劳动,避免出错,而且当在Web端新增页面时,也无需手动更新,会自动根据最新的网页配置文件重新生成新的CLI配置文件。
优选地,其所述页面配置文件中个元素的层级结构和CLI命令序列表中的各元素的层级结构相同,降低研发人员维护难度。
采用多种语言包,语言包中以键值对的形式记载各元素的名称和语言文字,通过对语言包的解析即可实现多个语言适配到显示页面中,无需开发出多套语言版本的代码,降低代码复杂性。
实施例2
一种基于页面配置文件的页面生成的方法,包括如下步骤:
步骤1:解析页面配置文件得到解析数据;所述解析数据中含有显示页面中各元素的名称、描述信息、配置参数、索引号;
本实施例的步骤1和实施例1的步骤1相同,不做重复描述,具体参考实施例1。
步骤2:根据解析数据生成显示页面;
本实施例的步骤2和实施例1的步骤2相同,不做重复描述,具体参考实施例1。
步骤3:若用户修改了页面上的元素的配置参数,则根据解析数据中该元素的名称和修改后的配置参数生成该元素对应的用户配置文件并存储;
所述的用户配置文件中包括该元素的名称、修改后的配置参数;用户配置文件中的元素的名称与解析数据中的对应元素的名称相同;
用户修改页面上的元素的配置参数,一般通过直接点击页面上的各元素进行配置参数的修改,比如点击图4中的“Enable USB”的按钮由ON调整为OFF。
用户配置文件如下:
<usb>
<enable>true</enable>
<auto_update>true</auto_update>
</usb>
根据上述用户配置文件,可知,元素usb下拉菜单中的元素usb_enable的配置参数为“true”,元素usb下拉菜单中的元素auto_update的配置参数为“true”。
元素enable、auto_update修改后的配置参数变更为“true”和“true”。
通过上述的用户配置文件可以看出,元素usb属于元素usb_enable、元素auto_update上一层级,元素usb_enable、元素auto_update属于相同层级。
并且可以看出,用户配置文件的层级关系与解析数据的层级关系是相同的,其优势在于,利于操作人员进行索引查找。
步骤4:根据解析数据中的各元素的名称、索引号生成MIBs表;用户可对MIBs中任意元素进行配置参数进行设置,并生成含该元素对应的索引号和配置参数的第一修改请求;
MIB(管理信息库,Management Information Base)是TCP/IP网络管理协议标准框架的内容之一,MIB定义了受管设备必须保存的数据项、允许对每个数据项进行的操作及其含义,即管理系统可访问的受管设备的控制和状态信息等数据变量都保存在MIB中;
本文所述MIBs表即为上述管理信息库。
通过解析数据生成的MIBs表中含有各元素的名称、索引号,其依然采用如解析数据中的各元素的层级结构。
具体以下文的MIBs表中的部分予以解释:
上述代码为MIBs表中的部分;
其中,元素usb记录在第一行,仅记载元素名称为“usb”以及索引号“30”;
元素usb-enable记录在第二行至第八行,元素usb-enable的名称为“usb-enable”,描述信息为“Enable USB”,索引号为“30.1”;
元素usb_auto_update记录在第9行及以后,元素usb_auto_update的名称为“usb_auto_update”,描述信息为“Enable Automatic Upgrade”索引号oid为“30.2”;
上述的元素usb-enable的描述信息和元素usb_auto_update的描述信息可以包含在MIBs表中,但是在MIBs表中,上述的描述信息并不会在服务器端进行显示。
换而言之,若实现本方案,MIBs表中至少应当包含元素的名称和索引,优选地,还可以含有描述信息。在MIBs表的描述信息仅供用户进行相应操作的参考。
若MIBs表中包含了元素的描述信息,则MIBs表生成过程中的数据源应当选择解析数据中的各元素的名称、描述信息、索引号生成MIBs表。
在本实施例中,在描述信息部分还可以增加描述配置参数的范围比如“EnableUSB range=true false”,在本实施例中元素usb-enable、元素usb_auto_update的配置参数范围为“true”或者“false”,以利于用户在设置配置参数时,清楚的知道配置参数应该如何选择才符合系统的要求,描述信息主要用于供用户参考,不做服务器端控制用。
当用户在服务器端要根据MIBs表修改任意元素的配置参数时,在服务器端设有SNMP管理软件,SNMP管理软件根据MIBs表生成包含各元素的树形菜单样式,所述树形菜单样式按照各元素的层级结构记载各元素的名称、索引号;用户对于任意元素的配置参数进行设置时,SNMP管理软件提取该元素的索引号(比如30.1)以及用户设置的的配置参数生成修改请求并下发至设备端;比如,当用户修改参数30.1的配置参数时,SNMP管理端以SNMP协议下发第一修改请求,在该过程中并非直接下发MIBs表至设备端,而是下发第一修改请求,该请求包含索引号以及待修改的值,对SNMP数据格式进行解析后可以得到配置信息,比如30.1false。
步骤5:根据解析数据中的各元素的名称、描述信息生成CLI配置文件,所述CLI配置文件由各元素的CLI命令序列组成;用户可对CLI命令序列中任意元素进行配置参数的设置,并生成含该元素的名称、配置参数的第二修改请求;
CLI命令序列的生成过程可参考实施例1的步骤3。
如果用户需要通过CLI命令序列的形式修改任意元素的配置参数,则直接根据层级结构的索引找到该元素的CLI命令序列位置,进行相应的修改,得到第二修改请求。
比如页面配置文件如下,如果需要修改auto_update为false,那么CLI操作的命令为set usb auto_update false
设备端对第二修改请求set usb auto_update false经过解析如下:
<usb>
<enable>true</enable>
<auto_update>true</auto_update>
</usb>
步骤6:根据步骤3中的用户配置文件、步骤4中的第一修改请求、步骤5中的第二修改请求中的一种或多种并结合解析数据,重新生成显示页面。
本步骤是针对于不同的操作人员可进行的灵活的选择。
比如,对于操作水平比较低、习惯本地操作的管理人员,可以选择步骤3和步骤6,通过步骤3和步骤6,设备端根据解析数据和用户配置文件,可以实现页面的更新。
对于远程操作人员来说,可以选择步骤4和步骤6,通过SNMP协议下发SNMP数据格式的第一修改请求,结合第一修改请求和解析数据,可以实现页面的更新。
对于操作水平非常高的管理人员来说,可以选择步骤5和步骤6,以CLI命令序列的形式生成第二修改请求,结合第二修改请求和解析数据,可以实现页面的更新。
不管是步骤3、步骤4、步骤5中任意步骤的选择,其生成的数据中总是含有用户设置的配置参数以及可以唯一标记该元素的标记,如步骤3中的元素的名称、步骤4中的索引号、步骤5中的元素的名称等。
上述唯一的标记和配置参数可以结合解析数据,对页面更新,修改配置参数的元素在显示页面上,其配置参数会显示为修改后的配置参数。
实施例3
一种设备端A,包括如下模块:
数据解析模块1:用于解析页面配置文件得到解析数据;所述解析数据中含有显示页面中各元素的名称、描述信息、配置参数;
解析页面配置文件可从远程服务器、本地服务器中获取,或者预先存储设备端A中。
页面配置文件包含了显示页面中各元素的名称、描述信息、配置参数、索引号;对应的,通过解析得到的解析数据中同样含有显示页面中各元素的名称、描述信息、配置参数、索引号;
具体来说,解析数据是一份精简的仅含完整的页面框架的配置文件,具体可参考实施例1所述;
页面绘制模块2:用于根据解析数据以及可选的用户配置文件、第一修改请求、第二修改请求生成显示页面;
由于解析文件中详细记载了各元素的参数。同时,在设备端A的系统中预定义了用于生成显示界面的控件样式;
当用户需要访问某个页面时,该页面包含多个元素,此时,根据解析文件中记载的该页面中的各元素的参数,生成.js文件,.js文件自动根据控件样式,渲染出对应的页面显示给用户;
用户配置文件生成模块3:用于在用户修改了显示页面上的元素的配置参数后,根据解析数据中该元素的名称和修改后的配置参数生成该元素对应的用户配置文件并存储;
用户配置文件的生成过程可参考实施例2的步骤3。
MIBs表生成模块4:用于根据解析数据中的各元素的名称、索引号生成MIBs表;用户可根据MIBs表修改元素的配置参数并生成含该元素的索引号和配置参数的第一修改请求,发送给页面绘制模块2;
MIBs表的生成过程可参考实施例2的步骤4。
CLI命令序列生成模块5:用于根据解析数据中的各元素的名称、描述信息生成生成CLI配置文件,所述CLI配置文件由各元素的CLI命令序列组成;用户可根据CLI命令序列修改元素的配置参数并生成含该元素的名称、配置参数的第二修改请求,发送给页面绘制模块2。
CLI命令序列生成过程可参考实施例2的步骤5。
语言包模块6:用于存储和解析多个语言包,每个语言包对应一国语言文字;
所述语言包中含有各元素的名称和对应的语言文字,所述元素的名称和语言文字通过键值对的形式存储于语言包中;其中,元素的名称为键值对的键名,对应的语言文字为键值对的值;
所述语言包模块6还用于根据用户的选择,将对应的解析后的语言包发送给页面绘制模块2,所述页面绘制模块2根据解析后的语言包,将各元素的名称以对应的语言文字进行显示。
第一通信模块7:用于和外设的服务器端B进行通信;
显示模块8:用于对页面绘制模块2所生成的显示页面进行显示。
上述设备端A进行相应的显示页面的生成和元素的配置参数管理以及页面的更新的具体过程为:
根据设备端A内设的页面配置文件或者从互联网所获取的页面配置文件,通过数据解析模块1进行解析,得到解析数据,设备端A内置有用于生成显示页面的控件样式;页面绘制模块2将解析数据生成.js文件,.js文件自动根据控件样式渲染出对应的页面显示给用户;在此过程中,语言包模块6会根据用户选择调用对应的语言包,将语言包解析后发给页面绘制模块2,以对显示页面上各元素的描述用对应的语言文字进行显示。显示模块8用于对页面绘制模块2所绘制的显示页面进行显示。
同时,MIBs表生成模块4生成MIBs表,MIBs表导入到服务器端B,供管理人员使用;
CLI命令序列生成模块5生成CLI命令序列,CLI命令序列可供管理人员在本地使用,也可以导入到服务器端B,供管理人员远程使用;
第一通信模块7主要用于将MIBs表导入到服务器端B或者接收来自于服务器端B的第一修改请求和第二修改请求,用于实现远程的显示页面的元素的配置参数的管理。
实施例4
一种基于页面配置文件的页面管理系统,包括如实施例3所述的设备端A和服务器端B;
所述服务器端B包括如下模块:
第二通信模块9:用于和设备端A进行通信;
SNMP管理模块10:所述SNMP管理模块10内置有SNMP管理软件,并通过SNMP管理软件导入设备端A发送的MIBs表生成包含各元素的树形菜单样式;所述树形菜单样式按照各元素的层级结构记载各元素的名称、索引号;
当用户通过SNMP管理模块10对树形菜单样式中任意元素的配置参数进行设置时,所述SNMP管理模块10用于生成第一修改请求并下发至设备端A的页面绘制模块2,所述第一修改请求包含该元素的索引号、用户设置的配置参数。
CLI命令序列编辑模块11:用于接收设备端A发送的的CLI配置文件并供用户对CLI配置文件中的CLI命令序列进行配置参数的设置,并生成含该元素的名称、配置参数的第二修改请求;
所述第二修改请求通过第二通信模块9发送给设备端A的页面绘制模块2;
在服务器端B的工作过程为:SNMP管理模块10通过SNMP管理软件对导入的MIBs表进行处理,生成包含各元素的树形菜单样式,操作人员根据MIBs表查询元素,并根据MIBs表所记载的元素的索引号对配置参数进行设置生成第一修改请求,并将第一修改请求以SNMP数据格式下发至设备端A,设备端A对该SNMP数据格式的第一修改请求解析,通过页面绘制模块2将该第一修改请求和解析数据更新页面;
CLI命令序列编辑模块11适用于远程通过CLI命令序列管理显示页面的情景,具体来说,设备端A的第一通信模块7将CLI命令序列生成模块5生成CLI配置文件,服务器端的操作人员索引得到CLI配置文件中索引到目标元素,采用CLI命令序列编辑模块11对该元素的CLI命令序列进行相应的操作,比如找到元素auto_update,根据CLI命令序列类型BOOL,会自动弹出提示“true”或“false”,用户根据提示进行配置参数的设置,得到第二修改请求;
服务器端B的第二通信模块9将第二修改请求发送至设备端A的第一通信模块7并提供给页面绘制模块2结合解析数据进行页面绘制。
以上所述的仅为本发明的较佳实施例,凡在本发明的精神和原则范围内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于页面配置文件的页面自动生成和CLI命令序列生成方法,其特征在于,包括如下步骤:
步骤1:解析页面配置文件得到解析数据;所述解析数据中含有显示页面中各元素的名称、描述信息、配置参数;
步骤2:根据解析数据生成显示页面;
步骤3:根据解析数据中的各元素的名称、描述信息生成CLI配置文件,所述CLI配置文件由各元素的CLI命令序列组成。
2.根据权利要求1所述的基于页面配置文件的页面自动生成和CLI命令序列生成方法,其特征在于,所述页面配置文件中各元素的层级结构和CLI命令序列中的各元素的层级结构相同。
3.根据权利要求1所述的基于页面配置文件的页面自动生成和CLI命令序列生成方法,其特征在于,还包括语言包;所述语言包为多个,每个语言包对应一国语言文字;
所述语言包中含有各元素的名称和对应的语言文字,所述元素的名称和语言文字通过键值对的形式存储于语言包中;其中,元素的名称为键值对的键名,对应的语言文字为键值对的值;
在步骤2中,还包括:根据用户的选择,选择对应的语言包并将显示页面中各元素的名称用对应的语言文字显示。
4.一种基于页面配置文件的页面生成的方法,其特征在于,包括如下步骤:
步骤1:解析页面配置文件得到解析数据;所述解析数据中含有显示页面中各元素的名称、描述信息、配置参数、索引号;
步骤2:根据解析数据生成显示页面;
步骤3:若用户修改了页面上的元素的配置参数,则根据解析数据中该元素的名称和修改后的配置参数生成该元素对应的用户配置文件并存储;
步骤4:根据解析数据中的各元素的名称、索引号生成MIBs表;用户可对MIBs中任意元素进行配置参数进行设置,并生成含该元素对应的索引号和配置参数的第一修改请求;
步骤5:根据解析数据中的各元素的名称、描述信息生成CLI配置文件,所述CLI配置文件由各元素的CLI命令序列组成;用户可对CLI命令序列中任意元素进行配置参数的设置,并生成含该元素的名称、配置参数的第二修改请求;
步骤6:根据步骤3中的用户配置文件、步骤4中的第一修改请求、步骤5中的第二修改请求中的一种或多种并结合解析数据,重新生成显示页面。
5.根据权利要求4所述的基于页面配置文件的页面生成的方法,其特征在于,所述页面配置文件中各元素的层级结构和CLI命令序列中的各元素的层级结构、用户配置文件中的各元素的层级结构、MIBs表中的各元素的层级结构相同。
6.一种设备端,其特征在于,包括如下模块:
数据解析模块:用于解析页面配置文件得到解析数据;所述解析数据中含有显示页面中各元素的名称、描述信息、配置参数;
页面绘制模块:用于根据解析数据以及可选的用户配置文件、第一修改请求、第二修改请求生成显示页面;
用户配置文件生成模块:用于在用户修改了显示页面上的元素的配置参数后,根据解析数据中该元素的名称和修改后的配置参数生成该元素对应的用户配置文件并存储;
MIBs表生成模块:用于根据解析数据中的各元素的名称、索引号生成MIBs表;用户可根据MIBs表修改元素的配置参数并生成含该元素的索引号和配置参数的第一修改请求,发送给页面绘制模块;
CLI命令序列生成模块:用于根据解析数据中的各元素的名称、描述信息生成CLI配置文件,所述CLI配置文件由各元素的CLI命令序列组成;所述CLI配置文件用于在设备端或上传至外设的服务器端供用户根据CLI命令序列修改元素的配置参数、生成含该元素的名称、配置参数的第二修改请求并发送给页面绘制模块。
7.根据权利要求6所述的设备端,其特征在于,还包括如下模块:
语言包模块:用于存储和解析多个语言包,每个语言包对应一国语言文字;
所述语言包中含有各元素的名称和对应的语言文字,所述元素的名称和语言文字通过键值对的形式存储于语言包中;其中,元素的名称为键值对的键名,对应的语言文字为键值对的值;
所述语言包模块还用于根据用户的选择,将对应的解析后的语言包发送给页面绘制模块,所述页面绘制模块根据解析后的语言包,将各元素的名称以对应的语言文字进行显示。
8.根据权利要求6所述的设备端,其特征在于,还包括:
第一通信模块:用于和外设的服务器端进行通信;
显示模块:用于对页面绘制模块所生成的显示页面进行显示。
9.一种基于页面配置文件的页面管理系统,包括设备端和服务器端,其特征在于,所述设备端如权利要求6-8任一所述;
所述的服务器端包括如下模块:
第二通信模块:用于和设备端进行通信;
SNMP管理模块:所述SNMP管理模块内置有SNMP管理软件,并通过SNMP管理软件导入设备端发送的MIBs表生成包含各元素的树形菜单样式;所述树形菜单样式按照各元素的层级结构记载各元素的名称、索引号;
当用户通过SNMP管理模块对树形菜单样式中任意元素的配置参数进行设置时,所述SNMP管理模块用于生成第一修改请求并下发至设备端的页面绘制模块,所述第一修改请求包含该元素的索引号、用户设置的配置参数。
10.根据权利要求9所述的基于页面配置文件的页面管理系统,其特征在于,所述服务器端还包括如下模块:
CLI命令序列编辑模块:用于接收设备端发送的CLI配置文件并供用户对CLI配置文件中的CLI命令序列进行配置参数的设置,并生成含该元素的名称、配置参数的第二修改请求;
所述第二修改请求通过第二通信模块发送给设备端的页面绘制模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910682579.7A CN110445644A (zh) | 2019-07-26 | 2019-07-26 | 页面和cli命令序列自动生成方法、页面生成的方法、设备端和页面管理系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910682579.7A CN110445644A (zh) | 2019-07-26 | 2019-07-26 | 页面和cli命令序列自动生成方法、页面生成的方法、设备端和页面管理系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110445644A true CN110445644A (zh) | 2019-11-12 |
Family
ID=68431692
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910682579.7A Pending CN110445644A (zh) | 2019-07-26 | 2019-07-26 | 页面和cli命令序列自动生成方法、页面生成的方法、设备端和页面管理系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110445644A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112416339A (zh) * | 2020-02-17 | 2021-02-26 | 上海哔哩哔哩科技有限公司 | 页面开发方法、装置、计算机设备 |
CN113434216A (zh) * | 2021-06-29 | 2021-09-24 | 烽火通信科技股份有限公司 | 一种基于场景的命令行构建方法及系统 |
CN113923120A (zh) * | 2021-09-29 | 2022-01-11 | 广州鲁邦通物联网科技股份有限公司 | 一种无线通信模块的模块id重命名方法以及终端设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040160464A1 (en) * | 2003-02-14 | 2004-08-19 | David Reyna | System and method for providing a graphical user interface and alternate mappings of management information base objects |
US7219339B1 (en) * | 2002-10-29 | 2007-05-15 | Cisco Technology, Inc. | Method and apparatus for parsing and generating configuration commands for network devices using a grammar-based framework |
CN101079737A (zh) * | 2007-06-08 | 2007-11-28 | 中兴通讯股份有限公司 | 一种命令行接口命令的自动构造与解析方法及其系统 |
CN101135966A (zh) * | 2006-11-24 | 2008-03-05 | 中兴通讯股份有限公司 | 一种基于命令行的图形界面开发方法及系统 |
-
2019
- 2019-07-26 CN CN201910682579.7A patent/CN110445644A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7219339B1 (en) * | 2002-10-29 | 2007-05-15 | Cisco Technology, Inc. | Method and apparatus for parsing and generating configuration commands for network devices using a grammar-based framework |
US20040160464A1 (en) * | 2003-02-14 | 2004-08-19 | David Reyna | System and method for providing a graphical user interface and alternate mappings of management information base objects |
CN101135966A (zh) * | 2006-11-24 | 2008-03-05 | 中兴通讯股份有限公司 | 一种基于命令行的图形界面开发方法及系统 |
CN101079737A (zh) * | 2007-06-08 | 2007-11-28 | 中兴通讯股份有限公司 | 一种命令行接口命令的自动构造与解析方法及其系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112416339A (zh) * | 2020-02-17 | 2021-02-26 | 上海哔哩哔哩科技有限公司 | 页面开发方法、装置、计算机设备 |
CN113434216A (zh) * | 2021-06-29 | 2021-09-24 | 烽火通信科技股份有限公司 | 一种基于场景的命令行构建方法及系统 |
CN113923120A (zh) * | 2021-09-29 | 2022-01-11 | 广州鲁邦通物联网科技股份有限公司 | 一种无线通信模块的模块id重命名方法以及终端设备 |
CN113923120B (zh) * | 2021-09-29 | 2023-08-18 | 广州鲁邦通物联网科技股份有限公司 | 一种无线通信模块的模块id重命名方法以及终端设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106528129B (zh) | 一种Web应用界面生成系统及方法 | |
CN105447122B (zh) | 一种基于多表关联可自主创建档案系统的实现方法 | |
CN101160811B (zh) | 网络设备配置系统和方法 | |
US7873946B2 (en) | Scalable vector graphics, tree and tab as drag and drop objects | |
CN110445644A (zh) | 页面和cli命令序列自动生成方法、页面生成的方法、设备端和页面管理系统 | |
CN102081398A (zh) | 修正过程控制数据的方法及装置 | |
CN105868962A (zh) | 一种基于互联网的智能化产品说明书管理系统 | |
JPWO2006051715A1 (ja) | 文書処理装置及び文書処理方法 | |
JP2008509477A (ja) | 文書のある表現における変更を別の表現に反映させるための文書処理及び管理方法 | |
CN104424338A (zh) | web系统的自动生成装置和自动生成方法 | |
CN110297636A (zh) | 一种基于页面配置文件的页面自动生成和参数管理方法、系统和装置 | |
CN108762743A (zh) | 一种数据表操作代码生成方法及装置 | |
CN108399072A (zh) | 应用页面更新方法和装置 | |
CN114461204B (zh) | 一种将多层级对象数据翻译为原生代码的开发系统和方法 | |
CN111966336A (zh) | 一种基于vue与可视化图形操作的页面生成方法及装置 | |
JPWO2006051713A1 (ja) | 文書処理装置及び文書処理方法 | |
CN107622055A (zh) | 一种快速实现数据服务发布的方法 | |
CN1316782C (zh) | 在b/s结构中实现树型结构的方法 | |
CN108984632A (zh) | 一种网页设置方法及装置 | |
CN108228762B (zh) | 用于配置主数据库通用模板的方法和系统 | |
CN101446896A (zh) | Mib文件编辑器 | |
CN109726038A (zh) | 用于管理虚拟机的方法和设备 | |
CN114049090A (zh) | 一种电力故障分析报告的管理方法及系统 | |
JPWO2006051716A1 (ja) | 文書処理装置及び文書処理方法 | |
CN103164226B (zh) | 一种机顶盒人机界面自动生成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 511356 Room 501, building 2, No. 63, Yong'an Avenue, Huangpu District, Guangzhou, Guangdong Applicant after: Guangzhou lubangtong Internet of things Technology Co.,Ltd. Address before: 510653 3rd floor, building F, kehuiyuan, 95 Daguan Road, Tianhe District, Guangzhou City, Guangdong Province Applicant before: GUANGZHOU ROBUSTEL TECHNOLOGIES Co.,Ltd. |
|
CB02 | Change of applicant information | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20191112 |
|
RJ01 | Rejection of invention patent application after publication |