CN117834325A - 一种插件式物联网设备数据接入系统及接入方法 - Google Patents
一种插件式物联网设备数据接入系统及接入方法 Download PDFInfo
- Publication number
- CN117834325A CN117834325A CN202311526997.XA CN202311526997A CN117834325A CN 117834325 A CN117834325 A CN 117834325A CN 202311526997 A CN202311526997 A CN 202311526997A CN 117834325 A CN117834325 A CN 117834325A
- Authority
- CN
- China
- Prior art keywords
- plug
- data
- equipment
- instance
- access
- 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
- 238000000034 method Methods 0.000 title claims abstract description 38
- 230000003993 interaction Effects 0.000 claims abstract description 97
- 238000004458 analytical method Methods 0.000 claims abstract description 22
- 230000005540 biological transmission Effects 0.000 claims abstract description 16
- 238000012544 monitoring process Methods 0.000 claims description 11
- 238000004891 communication Methods 0.000 claims description 7
- 230000002452 interceptive effect Effects 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 3
- 238000007405 data analysis Methods 0.000 claims description 2
- 230000000977 initiatory effect Effects 0.000 claims 1
- 238000007726 management method Methods 0.000 description 24
- 238000013515 script Methods 0.000 description 18
- 230000006870 function Effects 0.000 description 7
- 238000011161 development Methods 0.000 description 3
- 238000003032 molecular docking Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2854—Wide area networks, e.g. public data networks
- H04L12/2856—Access arrangements, e.g. Internet access
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/18—Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本发明提出了一种插件式物联网设备数据接入系统及接入方法,可在系统用户交互界面选择插件模板类型发送给设备接入服务,从设备接入服务获取对应插件模板的配置数据,并根据交互配置数据和通用数据协议生成配置表单,在配置表单录入设备接入参数发送到设备接入服务,设备接入服务再根据接入参数创建插件实例。用户交互界面将插件实例启动/关闭指令发送给设备接入服务,即可启动解析模块相应功能/关闭解析模块相应功能。采用本发明技术,可通过插件方式灵活支持各个传输协议和接入场景。
Description
技术领域
本发明属于物联网技术领域,尤其涉及种插件式物联网设备数据接入系统和接入方法。
背景技术
目前,物联网领域存在非常多的传输协议,例如HTTP、MQTT、TCP、CoAP等等。物联网平台为了支持各类设备的接入,需要尽量支持所有的传输协议,同时往往也需要对接其他平台,通过网络通信获取设备数据。
然而,物联网平台在实现上,通常针对某些协议或者某些具体的场景做定制化开发,支持的接入方式有限,非常容易出现某些协议或某些场景不支持接入的情况。传统的物联网平台,通过设备网关可以支持多种特定的传输协议,但是也只能接收设备推送的数据,不能支持主动拉取设备数据。如果要添加新的协议支持,就需要对整个系统重新设计、开发和上线,耗费工时,对系统的稳定性也有一定影响。另一方面,每个协议往往需要相对应的页面和表单,用于接入方在浏览器中录入接入参数,每个页面和表单的开发也需要投入额外的开发工作。
发明内容
为了克服现有技术上述缺陷,本发明提出了一种插件式物联网设备数据接入系统及接入方法,可对每一种接入方式开发一个对应的插件,并通过插件方式灵活支持各个传输协议和接入场景。
为此,本发明提出一种插件式物联网设备数据接入系统,其包括:
用户交互界面:用于选择插件模板发送给设备接入服务,根据设备接入服务下发的交互配置数据和通用数据协议生成配置表单;用于将用户在配置表单中录入的设备接入参数发送到设备接入服务;用于将插件实例开启/关闭指令发送给设备接入服务;
通用数据协议:用于约定用户交互界面中展示组件的种类,以及每个组件中包含的属性字段;
插件库:用于管理所有插件模板,所述插件模板定义了插件参数和交互配置,所述交互配置包含交互配置数据以及执行方法;
设备接入服务:用于根据用户交互界面发送的插件类型,从插件库中获取对应插件模板的配置数据并将配置数据发送给用户交互界面;根据用户交互界面提交的接入参数创建插件实例;用于在收到插件实例开启/关闭指令后,启动对设备上报的原始数据进行解析/关闭对设备上报的原始数据解析功能。
作为优选,所述用户交互界面包括:
插件类型选择及发送模块,提供用户可选的插件模板,并把选择好的插件模板类型发送给设备接入服务;
配置表单录入及发送模块,根据设备接入服务下发的交互配置数据和通用数据协议,生成对应的各个展示组件,进而生成配置表单,并接收用户在配置表单中录入的设备接入参数,将录入的接入参数发送到设备接入服务;
插件管理及发送模块,负责展示所有已创建的插件实例,支持用户开启并关闭插件实例,并将开启和关闭指令发送给设备接入服务。
作为优选,所述插件库还包括扩展模块,用于支持动态加载插件模板。
作为优选,所述设备接入服务包括:
插件管理模块,用于处理与用户交互界面的通信,根据用户交互界面输入的插件参数创建插件实例,以及管理插件实例;
事件总线,用于设备接入服务中各个模块间的通信;
解析模块,用于对设备上报的原始数据进行解析;
定时器,用于执行定时任务。
作为优选,所述解析模块包括:
网络组件:用于接收接入设备的网络原始二进制数据,以及监听事件总线,接收启动和关闭的消息;
设备协议:用于解析设备原始数据,将网络组件接收到的原始二进制报文,转成业务数据,通过事件总线发给物联网平台的其他模块消费,以及监听事件总线,接收启动和关闭的消息;
设备网关:用于保存网络组件实例与设备协议的关联关系,并用于将网络组件接入的数据发送给对应的设备协议,以及监听事件总线,接收启动和关闭关联关系的消息。
本发明第二目的是提供一种插件式物联网设备接入方法,包括如下步骤:
1)插件模板选择:在用户交互界面从插件库中选择插件模板类型发送给设备接入服务,设备接入服务从插件库中获取对应插件模板的配置数据并将配置数据发送给用户交互界面;
2)插件实例创建:用户交互界面根据设备接入服务下发的交互配置数据和通用数据协议生成配置表单,并将用户在配置表单中录入的设备接入参数发送到设备接入服务,设备接入服务根据用户交互界面提交的设备接入参数创建插件实例;
3)插件实例启动/关闭:用户交互界面将插件实例启动/关闭指令发送给设备接入服务,启动解析模块相应功能/关闭解析模块相应功能;
4)设备数据接入/关闭:对设备上报的原始数据进行解析,接入设备数据,或者对设备上报的原始数据关闭解析。
作为优选,如果插件库中预置的插件模板不能满足接入,用户可以选择新创建插件模板。
作为优选,所述插件实例启动包括:将插件实例启动指令发送给设备接入服务解析模块的网络组件、设备协议、设备网关,启动网络组件实例、加载用户的设备协议、增加设备网关关联关系,与设备协议关联,从而建立设备数据的上传通道。
作为优选,所述设备数据接入/关闭包括:
1)网络组件接收接入设备的网络原始二进制数据,以及监听事件总线,接收启动和关闭消息;
2)设备协议解析设备原始数据,将网络组件接收到的原始二进制报文,转成业务数据,通过事件总线发给物联网平台的其他模块消费,以及监听事件总线,接收启动和关闭的消息;
3)设备网关根据保存的网络组件实例与设备协议的关联关系,将网络组件接入的数据发送给对应的设备协议,以及监听事件总线,接收启动和关闭关联关系的消息;
4)定时器执行定时任务,以及监听事件总线,根据事件类型启动和关闭定时任务。
采用本发明的插件式物联网设备数据接入系统和接入方法,具有如下积极效果:
系统扩展性强。通过插件的方式,支持扩展各种新的设备接入方式。支持设备主动上报数据之外,同时支持周期性执行任务,主动拉取其他平台设备数据。通过自定义脚本的方式,支持预先难以设计的特殊接入场景。
2)交付效率高。插件开发周期短,在发现不支持的场景时,可以快速开发新的插件,迅速支持设备接入。通过定义的通用数据协议,实现接入页面和表单的配置化,前端只需要开发一次就可以支持后续的改动。新增接入方式时,根据插件模板的配置数据,自动生成页面和表单。
3)系统稳定性高。插件可以动态加载和卸载,易于维护,不影响整体系统。插件之间互相隔离,不同用户接入数据也互不影响。
附图说明
图1为本发明实施例接入系统各组成部分原理示意图;
图2为本发明实施例接入系统的插件与解析模块的合作模式示意图;
图3为本发明实施例接入方法流程示意图。
具体实施方式
本发明实施例提供了一种插件式物联网设备接入系统,包含用户交互界面、通用数据协议、插件库和设备接入服务四大模块,如图1。
用户交互界面,用于提供交互界面与用户交互,接收设备接入服务下发的数据,并将用户的输入数据发送给设备接入服务。用户在用户交互界面选择插件模板发送给设备接入服务;设备接入服务根据用户选择的插件模板类型,从插件库中获取该插件的交互配置数据下发给用户交互界面;用户交互界面根据设备接入服务下发的交互配置数据和通用数据协议生成对应的各个展示组件,进而生成配置表单;用户在配置表单中录入设备接入参数,用户交互界面将录入的设备接入参数发送到设备接入服务。用户交互界面采用组件化的模式,一个展示表单可以由多个展示组件组成。
所述用户交互界面进一步包括:
1)插件类型选择及发送模块,根据插件库中包含的插件模板类型,用户交互界面提供交互界面,提供用户可选的插件模板,并把选择好的插件模板类型发送给设备接入服务。
2)配置表单录入及发送模块,根据设备接入服务下发的交互配置数据和通用数据协议,生成对应的各个展示组件,进而生成配置表单,并接收用户在配置表单中录入的设备接入参数,将录入的接入参数发送到设备接入服务。
设备接入服务根据用户选择的插件模板类型,从插件库中获取该插件的交互配置数据,并下发给配置表单录入及发送模块。配置表单录入及发送模块,根据设备接入服务下发的交互配置数据和通用数据协议,生成对应的各个展示组件,进而生成配置表单。展示组件包含多种类型,例如文本输入框、数字输入框、日期选择器、下拉选择框、文件上传等,同时包括每个组件需要验证的规则,例如文本输入框最多能输入多少内容,数字输入框最大最小值、是否支持小数等。每个展示组件对应一个用户需要录入的插件参数,例如设备接入服务需要开放的端口号,安全校验的密码等。用户在配置表单中根据展示组件录入插件参数,配置表单录入及发送模块接收用户在配置表单中录入的设备接入参数,并将录入的接入参数发送到设备接入服务。
3)插件管理及发送模块,所述模块负责展示所有已创建的插件实例,支持用户开启并关闭插件实例,并将开启和关闭指令发送给设备接入服务。
2、通用数据协议,用于约定用户交互界面中展示组件的种类,以及每个组件中包含的属性字段。用户交互界面根据通用数据协议和交互配置数据,生成对应的展示组件,组成配置表单。
本实施例中,通用数据协议约定了所有能支持的组件,以及每个组件中包含的属性字段。通用数据协议约定的组件属性字段包括通用字段和特有字段。本实施例中,组件的通用字段可以包括组件类型标识字段、展示名称、组件类型、是否必填、用户提示、组件数据等。组件的特有字段根据组件类型确定,例如,数字组件包含最大值、最小值、最小步长,下拉框组件包含下拉选项字段,链接组件的链接地址字段。需要说明的是,组件的通用字段和特有字段可以调整,需要支持新功能时,可以添加新的字段,不影响已有字段。组件的特有字段还可以包括级联信息字段,该字段定义了当满足特定条件时,展示或者隐藏指定展示组件。用户交互界面根据通用数据协议,实现了每个展示组件的功能,后续设备接入服务下发配置数据,用户交互界面根据配置数据中的组件列表展示对应的配置表单。
3、插件库,管理所有的插件模板,所述插件模板定义了插件参数和交互配置,所述交互配置包含交互配置数据以及执行方法。此外,插件库包含扩展模块,支持动态的加载插件模板。具体包括:
1)插件模板,每种插件都对应一个插件模板,插件模板定义了插件参数和交互配置,所述交互配置包含交互配置数据以及执行方法。根据用户在接入表单中填的数据,设备接入服务的插件管理模块会生成对应的插件参数,并创建插件实例,每个插件实例的插件参数可以不同,插件参数会传递给各个设备接入服务的解析模块,影响这些模块的行为。插件参数,例如网络传输协议参数会决定启动具体的网络组件实例,例如设备协议参数需要用户上传具体解析设备消息的jar文件,用于解析设备原始数据。交互配置数据根据通用数据协议定义了创建插件的表单需要哪些展示组件。根据交互配置数据和通用数据协议,用户交互界面可以展示对应的接入表单。插件的执行方法定义了插件在启动和关闭时需要执行的业务逻辑,例如,启动关闭哪些设备接入模块的解析模块。
2)扩展模块,插件库支持动态地加载插件模板。通过用户自定义脚本,或者上传独立开发的jar包,插件库可以实时增加新的插件模板,不需要系统修改或者重新部署。上传的jar需要符合系统的约定,实现系统约定的接口,实现插件启动和关闭的执行方法。插件库会预先配置一些常用的插件模板,用于对接常见的传输协议,例如HTTP、MQTT、CoAP等,以及一个自定义脚本定时任务模板,用于对接需要定时主动调用其他平台接口等场景。
4、设备接入服务,用于包括:根据用户交互界面插件类型选择及发送模块选择的插件类型,从插件库获取对应插件模板的配置数据,并将配置数据发送给用户交互界面,通过配置数据控制用户交互界面展示的内容;同时根据用户交互界面提交的接入参数启动插件实例;并且,根据插件实例启动后产生的事件,启动对应的解析模块,对设备上报的原始数据进行解析。
本实施例的设备接入服务包括:
1)插件管理模块,用于处理与用户交互界面的通信,根据用户交互界面输入的插件参数创建插件实例,以及管理插件实例。用户交互界面插件类型选择及发送模块发送用户选择的插件类型时,插件管理模块从插件库中获取对应插件模板的配置数据,并将配置数据发送给用户交互界面。
用户交互界面配置表单录入及发送模块发送用户输入的插件参数时,插件管理模块创建插件实例。例如,用户选择了HTTP插件,输入了网络端口等参数,插件管理模块就会创建一个HTTP插件实例。
用户交互界面插件类型选择及发送模块发送启动和关闭插件实例指令时,插件管理模块调用插件实例的启动和关闭方法。插件实例启动时,会根据插件参数,向事件总线发送平台消息,启动设备接入服务中相应的解析模块。插件实例关闭时,类似的,会通过事件总线发送平台消息,关闭该插件实例启动的解析模块。例如,用户创建了一个HTTP插件实例,启动后,插件实例会发送HTTP网络组件、用户的设备协议、设备网关的启动消息,启动HTTP网络组件实例,加载用户的设备协议,增加设备网关关联关系,与设备协议关联,从而建立设备数据的上传通道。插件与解析模块的合作模式见图2。
2)事件总线,用于设备接入服务中各个模块间的通信,模块可以向事件总线发布消息,也可以从事件总线监听特定的事件。通过事件总线,可以使不同的组件之间进行彼此通信而又不需要相互依赖。
3)解析模块,用于在插件实例启动后对设备上报的原始数据进行解析。所述解析模块按模块分,包括网络组件、设备协议、设备网关、定时器。其中:
a)网络组件,用于接收接入设备的网络原始二进制数据,以及监听事件总线,接收启动和关闭的消息。每一种网络传输协议都有相应的一种网络组件,系统预置了常见的网络传输协议对应的网络组件,例如HTTP、MQTT、CoAP等,针对不支持的网络传输协议,需要额外开发新的网络组件。每种网络组件可以启动多个网络组件实例。网络组件从事件总线收到启动事件时,根据插件参数,启动对应的网络组件实例。参数包括,例如,网络传输协议类型,决定了网络组件的类型;网络端口号,每个网络组件实例需要不同的端口号,与设备建立网络连接。设备接入时,根据端口号,发送数据到对应的网络组件实例。网络组件从事件总线收到关闭事件时,关闭对应的网络组件实例。通过事件,网络组件实例支持动态的启动和关闭,不影响整个设备接入服务的运行。
b)设备协议,用于解析设备原始数据,将网络组件接收到的原始二进制报文,转成业务数据,通过事件总线发给物联网平台的其他模块消费,以及监听事件总线,接收启动和关闭的消息。本实施例的设备协议包含多个协议解析器,包括系统默认配置的标准协议解析器,以及用户通过上传jar文件或直接录入解析脚本生成的自定义解析器。标准协议解析器可以解析用户根据系统定义的标准协议上传的设备数据。自定义解析器需要用户在录入插件参数时,上传用户事先开发的jar文件,或者直接录入解析脚本。设备协议模块会动态地加载脚本或者jar文件,生成对应的自定义解析器。例如,设备的原始报文是由一系列0和1组成的二进制数据,用户可以通过自定义jar,根据报文结构解析成设备指标数据,比如,将二进制数据的前32位解析成温度数据,后32位解析成湿度数据。设备协议在收到启动事件时,会创建对应的协议解析器;收到关闭事件时,会删除对应的协议解析器。
c)设备网关,用于保存网络组件实例与设备协议的关联关系,并用于将网络组件接入的数据发送给对应的设备协议,以及监听事件总线,接收启动和关闭关联关系的消息。
4)定时器,用于执行定时任务,本实施例的定时器可以选择定时执行一次、固定间隔周期执行或者根据cron表达式执行。定时器监听事件总线,根据事件类型,启动和关闭定时任务。
本发明还提出了一种插件式物联网设备数据接入方法实施例,包括了插件模板选择、插件实例创建、插件实例启动、数据接入和插件实例关闭五个步骤,如图3所示。具体步骤如下:
S1、插件模板选择:用户在用户交互界面选择插件模板类型发送给设备接入服务,设备接入服务从插件库中获取对应插件模板的配置数据并将配置数据发送给用户交互界面。该步骤包括:
S1.1 插件模板类型选择界面展示。根据插件库中包含的插件模板类型,用户交互界面中插件类型选择及发送模块向用户提供交互界面。用户根据使用场景,在用户交互界面选择插件模板。需要说明的是,如果插件库中预置的插件模板不能满足接入,用户可以选择新创建插件模板并存入插件库。用户可通过插件库的扩展模块,录入插件脚本,或者上传独立开发的jar包。插件库实时加载脚本或者jar包后,用户可以重新在用户交互界面选择新创建的插件模板。
S1.2 插件模板类型数据发送。用户选择插件模板后,插件类型选择及发送模块将插件模板类型发送给设备接入服务的插件管理模块。
S1.3 插件模板配置数据返回。设备接入服务的插件管理模块从插件库中获取对应插件模板的配置数据,并将配置数据发送给用户交互界面。
S2、插件实例创建:用户交互界面根据返回的插件模板配置数据以及通用数据协议,展示配置表单并在配置表单录入相应的插件参数,将用户录入的插件参数发送给设备接入服务的插件管理模块创建插件实例。具体步骤如下:
S2.1 插件实例创建配置表单展示。用户交互界面的配置表单录入及发送模块,根据返回的插件模板配置数据,以及通用数据协议,展示相应的各个展示组件,形成插件实例创建的配置表单。
S2.2 插件参数录入。用户针对配置表单各个展示组件,录入相应的插件参数。展示组件根据验证规则,实时验证用户录入的数据,返回错误信息。其中关键的参数包括,网络组件类型和设备协议。网络组件类型决定了能接收的数据传输网络协议,决定了后续步骤中需要启动的网络组件实例。设备协议决定了需要使用的协议解析器,用户可以选择系统默认的标准协议解析器,也可以上传独立开发的jar文件,选择自定义解析器。
S2.3 插件参数发送。用户交互界面配置表单录入及发送模块将用户录入的插件参数,发送给设备接入服务的插件管理模块。
S2.4 插件实例创建。插件管理模块根据收到的插件参数,保存并创建对应的插件实例。
S3、插件实例启动:用户交互界面将插件实例启动指令发送给设备接入服务,启动相应解析模块开启相应功能。该步骤包括:
S3.1 插件实例启动指令发送。插件实例创建后,用户交互界面的插件管理及发送模块会展示已经创建的插件实例。用户选择启动插件,插件管理及发送模块将开启指令发送给设备接入服务。
S3.2 解析模块启动。插件实例在收到启动指令后,根据插件实例的参数,和对应插件模板定义的执行方法,发送启动相应解析模块的事件到事件总线,对设备上报的原始数据进行解析。各解析模块,在收到启动事件后,开启相应的功能,包括网络组件启动网络组件实例、设备协议创建协议解析器、设备网关增加关联关系、定时器启动定时任务。
S4、数据接入。在完成之前的步骤后,平台具备了获取设备数据的能力。如果是接收消息的方式,设备可以根据插件实例中定义的参数发送设备数据,平台根据将原始数据解析成业务数据,完成数据接入。如果是主动查询的方式,平台会通过定时器,定时调用其他平台或者设备开放的接口获取数据,然后根据插件参数,例如脚本代码,解析成业务数据,完成数据接入。
S5、插件实例关闭。该步骤包括:
S5.1 插件实例关闭指令发送。当用户想要修改接入参数,或者设备不需要继续上报数据时,用户可以选择关闭插件实例。从用户交互界面的插件管理及发送模块展示的插件实例中,用户选择需要关闭的插件实例,选择关闭。插件管理及发送模块将关闭指令发送给设备接入服务。
S5.2 解析模块关闭。插件实例在收到关闭指令后,根据对应插件模板定义的执行方法,发送关闭相应解析模块的事件到事件总线。各解析模块,在收到关闭事件后,关闭相应的功能。
下面,列举两个接入实施例。
实施例一
以MQTT接入为例,进行具体说明:
1、首先,用户在用户交互界面选择预置的MQTT接入的插件模板,使用该模板创建插件实例。插件管理模块会发送MQTT插件模板的交互配置数据给用户交互界面,数据大致如下:
[
{
"type": "text",
"label": "实例名称",
...
},
{
"type": "text",
"label": "Broker IP",
},
{
"type": "Number",
"label": "Broker Port",
...
},
{
"type": "text",
"label": "topic",
},
{
"type": "protocol",
"label": "设备协议",
...
},
...
]
2、创建插件实例。用户交互界面会展示相应的插件实例创建表单,表单上包括:实例名称,一个文本框组件;MQTT broker的IP,一个文本框组件;MQTT broker的端口,一个数字组件;订阅的topic,一个文本框组件;设备协议,一个下拉框加链接组件,选择已有设备协议,或者选择自定义jar上传。用户录入后提交。插件管理模块收到提交数据后创建MQTT插件实例。
3、启动插件实例。用户找到创建的插件实例,选择启动。插件启动后会发送MQTT网络组件启动事件、设备协议启用事件、设备网关关联事件。网络组件收到事件后,创建MQTT网络组件实例,网络组件实例启动后会连接指定的MQTT broker,并订阅相关的TOPIC主题。设备协议收到事件后,启用已有或者加载上传的jar包。设备网关收到事件后,将网络组件实例和协议解析器关联。
4、数据接入。当设备向MQTT broker上报数据时,MQTT网络组件会收到上报数据的MQTT消息,根据设备网关的映射,找到对应的设备协议,根据设备协议,将消息解析成平台的业务数据,完成接入。
5、用户可以选择关闭事件实例。在插件管理界面关闭MQTT插件实例,设备接入服务会关闭相应的网络组件实例、协议解析器、关联关系等。
实施例二
以平台对接场景为例说明,定时获取另一个平台的设备数据。
1、首先,用户在用户交互界面选择预置的自定义定时任务的插件模板,使用该模板创建插件实例。插件管理模块会发送自定义定时任务的交互配置数据给用户交互界面,数据大致如下:
[
{
"type": "text",
"label": "实例名称",
...
},
{
"type": "select",
"label": "执行方案",
"options": []
...
},
{
"type": "select",
"label": "脚本语言",
"options": []
...
},
{
"type": "script",
"label": "自定义脚本",
...
},
...
]
2、创建插件实例。用户交互界面会展示相应的插件实例创建表单,表单上包括:实例名称,一个文本框组件;执行方案,一个下拉单选组件,选项包括固定间隔和cron表达式;脚本语言,一个下拉单选组件,选项包括greoovy和javascript;自定义脚本,一个脚本组件,输入脚本代码。用户填写后提交。插件管理模块收到提交数据后创建自定义定时任务插件实例。
3、启动插件实例。用户找到创建的插件实例,选择启动。插件启动后会发送定时器启动事件。定时器启动后,创建定时任务,定时执行用户输入的自定义脚本。
4、数据接入。定时器执行时,执行脚本代码,调用对接平台的接口获取设备数据,根据脚本中的解析逻辑,将对接平台的数据结构转成平台的业务数据,完成接入。
5、用户可以选择关闭事件实例。在插件管理界面关闭MQTT插件实例,设备接入服务会关闭相应的定时器。
Claims (9)
1.一种插件式物联网设备接入系统,其特征在于,包括:
用户交互界面:用于选择插件模板发送给设备接入服务,根据设备接入服务下发的交互配置数据和通用数据协议生成配置表单;用于将用户在配置表单中录入的设备接入参数发送到设备接入服务;用于将插件实例开启/关闭指令发送给设备接入服务;
通用数据协议:用于约定用户交互界面中展示组件的种类,以及每个组件中包含的属性字段;
插件库:用于管理所有插件模板,所述插件模板定义了插件参数和交互配置,所述交互配置包含交互配置数据以及执行方法;
设备接入服务:用于根据用户交互界面发送的插件类型,从插件库中获取对应插件模板的配置数据并将配置数据发送给用户交互界面;根据用户交互界面提交的接入参数创建插件实例;用于在收到插件实例开启/关闭指令后,启动对设备上报的原始数据进行解析/关闭对设备上报的原始数据解析功能。
2.如权利要求1所述的插件式物联网设备接入系统,其特征在于,所述用户交互界面包括:
插件类型选择及发送模块,提供用户可选的插件模板,并把选择好的插件模板类型发送给设备接入服务;
配置表单录入及发送模块,根据设备接入服务下发的交互配置数据和通用数据协议,生成对应的各个展示组件,进而生成配置表单,并接收用户在配置表单中录入的设备接入参数,将录入的接入参数发送到设备接入服务;
插件管理及发送模块,负责展示所有已创建的插件实例,支持用户开启并关闭插件实例,并将开启和关闭指令发送给设备接入服务。
3.如权利要求1所述的插件式物联网设备接入系统,其特征在于,所述插件库还包括扩展模块,用于支持动态加载插件模板。
4.如权利要求1所述的插件式物联网设备接入系统,其特征在于,所述设备接入服务包括:
插件管理模块,用于处理与用户交互界面的通信,根据用户交互界面输入的插件参数创建插件实例,以及管理插件实例;
事件总线,用于设备接入服务中各个模块间的通信;
解析模块,用于对设备上报的原始数据进行解析;
定时器,用于执行定时任务。
5.如权利要求4所述的插件式物联网设备接入系统,其特征在于,所述解析模块包括:
网络组件:用于接收接入设备的网络原始二进制数据,以及监听事件总线,接收启动和关闭的消息;
设备协议:用于解析设备原始数据,将网络组件接收到的原始二进制报文,转成业务数据,通过事件总线发给物联网平台的其他模块消费,以及监听事件总线,接收启动和关闭的消息;
设备网关:用于保存网络组件实例与设备协议的关联关系,并用于将网络组件接入的数据发送给对应的设备协议,以及监听事件总线,接收启动和关闭关联关系的消息。
6.一种插件式物联网设备接入方法,其特征在于包括如下步骤:
1)插件模板选择:在用户交互界面从插件库中选择插件模板类型发送给设备接入服务,设备接入服务从插件库中获取对应插件模板的配置数据并将配置数据发送给用户交互界面;
2)插件实例创建:用户交互界面根据设备接入服务下发的交互配置数据和通用数据协议生成配置表单,并将用户在配置表单中录入的设备接入参数发送到设备接入服务,设备接入服务根据用户交互界面提交的设备接入参数创建插件实例;
3)插件实例启动/关闭:用户交互界面将插件实例启动/关闭指令发送给设备接入服务,启动解析模块相应功能/关闭解析模块相应功能;
4)设备数据接入/关闭:对设备上报的原始数据进行解析,接入设备数据,或者对设备上报的原始数据关闭解析。
7.如权利要求6所述的插件式物联网设备接入方法,其特征在于还包括:如果插件库中预置的插件模板不能满足接入,用户可以选择新创建插件模板。
8.如权利要求6所述的插件式物联网设备接入方法,其特征在于所述插件实例启动包括:将插件实例启动指令发送给设备接入服务解析模块的网络组件、设备协议、设备网关,启动网络组件实例、加载用户的设备协议、增加设备网关关联关系,与设备协议关联,从而建立设备数据的上传通道。
9.如权利要求6所述的插件式物联网设备接入方法,其特征在于所述设备数据接入/关闭包括:
1)网络组件接收接入设备的网络原始二进制数据,以及监听事件总线,接收启动和关闭消息;
2)设备协议解析设备原始数据,将网络组件接收到的原始二进制报文,转成业务数据,通过事件总线发给物联网平台的其他模块消费,以及监听事件总线,接收启动和关闭的消息;
3)设备网关根据保存的网络组件实例与设备协议的关联关系,将网络组件接入的数据发送给对应的设备协议,以及监听事件总线,接收启动和关闭关联关系的消息;
4)定时器执行定时任务,以及监听事件总线,根据事件类型启动和关闭定时任务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311526997.XA CN117834325A (zh) | 2023-11-16 | 2023-11-16 | 一种插件式物联网设备数据接入系统及接入方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311526997.XA CN117834325A (zh) | 2023-11-16 | 2023-11-16 | 一种插件式物联网设备数据接入系统及接入方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117834325A true CN117834325A (zh) | 2024-04-05 |
Family
ID=90517911
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311526997.XA Pending CN117834325A (zh) | 2023-11-16 | 2023-11-16 | 一种插件式物联网设备数据接入系统及接入方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117834325A (zh) |
-
2023
- 2023-11-16 CN CN202311526997.XA patent/CN117834325A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9467347B2 (en) | Systems and methods that utilize scalable vector graphics to provide web-based visualization of a device | |
US6829630B1 (en) | Mechanisms for web-object event/state-driven communication between networked devices | |
US8438491B2 (en) | Method and apparatus for providing multiple management interfaces to a network device | |
US8533607B2 (en) | Method and apparatus for providing multiple management interfaces to a network device | |
US7428725B2 (en) | Inserting devices specific content | |
US20020161928A1 (en) | Smart agent for providing network content to wireless devices | |
US20070078925A1 (en) | Porting an interface defining document between mobile device platforms | |
US7225252B2 (en) | Observation display method for dynamically changing on monitor screen object information observed on computer network and observation display system using computer network | |
CN111342982B (zh) | 一种集成多种消息发送的方法及系统 | |
CN112416345B (zh) | 一种通用客户端软件集成系统 | |
US6182134B1 (en) | Configurable system for remotely managing computers | |
WO2006028783A2 (en) | Server-recorder macros and web application automation | |
US7734740B2 (en) | Configuration management apparatus and related methods | |
CN115794106A (zh) | 一种轨道交通二进制协议数据配置式解析的方法及系统 | |
CN117130318B (zh) | 工业数据采集方法、装置、系统和可读存储介质 | |
US20210232494A1 (en) | Network application testing using domain-specific natural language | |
CN117834325A (zh) | 一种插件式物联网设备数据接入系统及接入方法 | |
CN101964742A (zh) | 一种网络开放能力使用方法、系统和装置 | |
CN114390093B (zh) | 一种虚拟网关模拟系统 | |
CN113064987B (zh) | 数据处理方法、装置、电子设备、介质和程序产品 | |
US6944851B1 (en) | Method and system for executing a computer program | |
CN112783960A (zh) | 数据处理系统及方法、电子设备、计算机可读存储介质 | |
KR20050086185A (ko) | 가전기기 네트워크 시스템 및 그 동작방법 | |
CN117270956B (zh) | 硬件设备的配置方法、客户端、硬件设备网管系统及介质 | |
US20230111113A1 (en) | Page loading method and display apparatus |
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 |