掌桥专利:专业的专利平台
掌桥专利
首页

物联网平台通信方法、装置、设备及存储介质

文献发布时间:2023-06-19 18:32:25


物联网平台通信方法、装置、设备及存储介质

技术领域

本发明涉及工业物联网技术领域,尤其涉及一种物联网平台通信方法、装置、设备及存储介质。

背景技术

在现有的工业物联网中,对于mqtt设备来说,设备与物联网平台之间的信息交流需要双方提前协商好信息格式。现有的emqx开源组件,对于设备的消息上报都进行了一个统一的封装,但是,对于一个具有大量设备数据的工业物联网平台来说,这个由组件封装出来的消息格式,并不能直接用于物联网平台的读取、使用和流转,导致组件返回的内容在工业物联网平台的使用中不够便利,影响用户体验。

上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。

发明内容

本发明的主要目的在于提供了一种物联网平台通信方法、装置、设备及存储介质,旨在解决现有技术由组件封装出来的消息格式,并不能直接用于物联网平台的读取、使用和流转,导致组件返回的内容在工业物联网平台的使用中不够便利,影响用户体验的技术问题。

为实现上述目的,本发明提供了一种物联网平台通信方法,所述物联网平台通信方法包括以下步骤:

获取不同的emqx服务器上报至目标物联网平台的初始消息;

在所述初始消息符合预处理条件时,判断所述初始消息的消息动作类型是否属于数据校验类型;

若属于所述数据校验类型,则对所述初始消息进行数据校验;

对校验完成后的初始消息进行解析,获得与所述消息动作类型对应的json格式目标消息,并发送所述json格式目标消息至所述目标物联网平台。

可选地,所述在所述初始消息符合预处理条件时,判断所述初始消息的消息动作类型是否属于数据校验类型的步骤之前,还包括:

判断所述初始消息中的动作指令是否属于预设规范指令,以及所述初始消息中的用户数据是否为空,且所述初始消息中的目标主题是否符合所述目标物联网平台所配置的规则;

若所述动作指令属于所述预设规范指令,以及所述用户数据不为空,且所述目标主题符合所述目标物联网平台所配置的规则,则判定所述初始消息符合预处理条件。

可选地,所述数据校验包括数据格式校验和数据内容校验,所述若属于所述数据校验类型,则对所述初始消息进行数据校验的步骤,包括:

若属于所述数据格式校验类型,则对所述初始消息中目标目录的格式进行数据格式校验;

在格式校验成功时,对所述初始消息中的目标内容进行数据内容校验。

可选地,所述若属于所述数据格式校验类型,则对所述初始消息中目标目录的格式进行数据格式校验的步骤,包括:

若属于所述数据格式校验类型,则检测所述初始消息中目标目录的格式是否缺失预设内容;

若未缺失所述预设内容,则判定格式校验成功;

若缺失所述预设内容,则判定格式校验失败。

可选地,所述在格式校验成功时,对所述初始消息中的目标内容进行数据内容校验的步骤,包括:

在格式校验成功时,判断所述初始消息中的目标内容是否符合所述目标物联网平台定义的正确内容;

若符合所述正确内容,则判定数据内容校验成功;

若不符合所述正确内容,则判定数据内容校验失败。

可选地,所述对校验完成后的初始消息进行解析,获得与所述消息动作类型对应的json格式目标消息的步骤之前,还包括:

在数据内容校验失败时,对所述目标内容进行数据清洗,获得清洗后的初始消息,并将所述清洗后的初始消息作为校验完成后的初始消息。

可选地,所述在所述初始消息符合所述预处理条件时,判断所述初始消息的消息动作类型是否属于数据校验类型的步骤之后,还包括:

若不属于所述数据校验类型,则对所述初始消息进行解析,获得与所述消息动作类型对应的json格式目标消息,并发送所述json格式目标消息至所述目标物联网平台。

此外,为实现上述目的,本发明还提出一种物联网平台通信装置,所述装置包括:

消息获取模块,用于获取不同的emqx服务器上报至目标物联网平台的初始消息;

类型判断模块,用于在所述初始消息符合预处理条件时,判断所述初始消息的消息动作类型是否属于数据校验类型;

校验模块,用于若属于所述数据校验类型,则对所述初始消息进行数据校验;

消息解析模块,用于对校验完成后的初始消息进行解析,获得与所述消息动作类型对应的json格式目标消息,并发送所述json格式目标消息至所述目标物联网平台。

此外,为实现上述目的,本发明还提出一种物联网平台通信设备,所述设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的物联网平台通信程序,所述物联网平台通信程序配置为实现如上文所述的物联网平台通信方法的步骤。

此外,为实现上述目的,本发明还提出一种存储介质,所述存储介质上存储有物联网平台通信程序,所述物联网平台通信程序被处理器执行时实现如上文所述的物联网平台通信方法的步骤。

本发明公开了一种物联网平台通信方法、装置、设备及存储介质,该方法包括:获取不同的emqx服务器上报至目标物联网平台的初始消息;在初始消息符合预处理条件时,判断初始消息的消息动作类型是否属于数据校验类型;若属于数据校验类型,则对初始消息进行数据校验;对校验完成后的初始消息进行解析,获得与消息动作类型对应的json格式目标消息,并发送json格式目标消息至所述目标物联网平台。本发明通过对初始消息数据校验完成后将初始消息解析为json格式目标消息,避免了现有的emqx组件封装出来的消息格式不能直接物联网平台读取、使用和流转的问题,在使用组件返回的内容的过程中更为便捷,提高了用户体验。

附图说明

图1为本发明实施例方案涉及的硬件运行环境的物联网平台通信设备结构示意图;

图2为本发明物联网平台通信方法第一实施例的流程示意图;

图3为本发明物联网平台通信方法第一实施例中数据解析的示意图;

图4为本发明物联网平台通信方法第二实施例的流程示意图;

图5为本发明物联网平台通信方法第三实施例的流程示意图;

图6为本发明物联网平台通信装置第一实施例的结构框图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

参照图1,图1为本发明实施例方案涉及的硬件运行环境的物联网平台通信设备结构示意图。

如图1所示,该物联网平台通信设备可以包括:处理器1001,例如中央处理器(Central Processing Unit,CPU),通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如无线保真(Wireless-Fidelity,Wi-Fi)接口)。存储器1005可以是高速的随机存取存储器(RandomAccess Memory,RAM),也可以是稳定的非易失性存储器(Non-Volatile Memory,NVM),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。

本领域技术人员可以理解,图1中示出的结构并不构成对物联网平台通信设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

如图1所示,作为一种存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及物联网平台通信程序。

在图1所示的物联网平台通信设备中,网络接口1004主要用于与网络服务器进行数据通信;用户接口1003主要用于与用户进行数据交互;本发明物联网平台通信设备中的处理器1001、存储器1005可以设置在物联网平台通信设备中,所述物联网平台通信设备通过处理器1001调用存储器1005中存储的物联网平台通信程序,并执行本发明实施例提供的物联网平台通信方法。

本发明实施例提供了一种物联网平台通信方法,参照图2,图2为本发明物联网平台通信方法第一实施例的流程示意图。

本实施例中,所述物联网平台通信方法包括以下步骤:

步骤S10:获取不同的emqx服务器上报至目标物联网平台的初始消息。

需要说明的是,本实施例方法的执行主体可以是具有数据处理、网络通信以及程序运行功能的计算服务设备,例如手机、平板电脑、个人电脑等,还可以是实现相同或相似功能的其他电子设备。以下以上述物联网平台通信设备(简称通信设备)对本实施例和下述各实施例进行说明。

可理解的是,上述emqx服务器可为将用户设备(如mqtt设备)上传的通信消息传输至目标物联网平台的服务器,不同的用户设备其对应的emqx服务器不同,该emqx服务器中包含对用户设备上传的消息进行统一封装的emqx开源组件。

需要说明的是,上述目标物联网平台可为与用户设备进行通信,并接收用户设备消息的物联网平台。

可理解的是,上述设备初始消息可为包含设备所传递的内容的消息,如设备登录、下线以及数据上报等,该初始消息由设备上传至emqx服务器的初始内容经统一封装后生成。

在具体实现中,在与目标物联网平台进行通信时,首先用户设备将待传递的内容上传至emqx服务器,由emqx服务器中的emqx开源组件对待传递的内容进行统一封装后形成上述初始消息,由于不同的emqx服务器直接返回的初始消息在目标物联网平台使用中并不遍历,故而本实施例的通信设备可在emqx服务器返回初始消息至目标物联网平台之前截取该初始消息。

步骤S20:在所述初始消息符合预处理条件时,判断所述初始消息的消息动作类型是否属于数据校验类型。

需要说明的是,上述预处理条件可为判断来自用户设备或emqx服务器上报的消息是否需要处理的条件。

可理解的是,上述数据校验类型可为需要进行数据校验的消息类型,如数据上报则为数据校验类型,设备登录不为数据校验类型。

在具体实现中,通信设备在检测到上述初始消息符合预处理条件时,说明此时的初始消息符合需要处理的条件,便可判断该初始消息的消息动作类型是否为需要进行数据校验的数据校验类型,也即判断初始消息是何种类型,如上报连接、登录、下线以及数据上报等。

进一步地,为了提高消息预处理的精度,本实施例中,所述步骤S20之前,还包括:

步骤S21:判断所述初始消息中的动作指令是否属于预设规范指令,以及所述初始消息中的用户数据是否为空,且所述初始消息中的目标主题是否符合所述目标物联网平台所配置的规则。

需要说明的是,上述预设规范指令可为符合规范的动作指令。

在具体实现中,通信设备在获取到上述初始消息后,可判断该初始消息中的动作指令是否属于上述预设规范指令,以判断动作指令是否符合规范,避免由于emqx开源组件的系统错误而上报大量的错误动作数据,同时,也需判断上述初始消息中的用户数据是否为空,以避免用户设备上传无效数据,最后,还需判断上述初始消息的中的目标主题是否符合上述目标物联网平台所配置的规则,避免用户设备上传与规则不匹配的主题,从而提高了消息预处理的精度。

步骤S22:若所述动作指令属于所述预设规范指令,以及所述用户数据不为空,且所述目标主题符合所述目标物联网平台所配置的规则,则判定所述初始消息符合预处理条件。

在具体实现中,通信设备在判断上述动作指令、用户数据以及目标主题均符合上述预处理条件时,也即,上述动作指令符合规范、上述用户数据不为空以及上述目标主题与目标物联网平台所配置的规则匹配,此时便可判定上述初始消息符合预处理条件,属于需要处理的消息。

步骤S30:若属于所述数据校验类型,则对所述初始消息进行数据校验。

在具体实现中,通信设备在判断出上述初始消息属于上述数据校验类型,如上述初始消息为数据上报类型的消息,此时便可对上述初始消息进行数据校验,该数据校验可为校验初始消息中的数据格式或数据内容,以保证最终返回的目标消息属于目标物联网平台定义的正确数据。

步骤S40:对校验完成后的初始消息进行解析,获得与所述消息动作类型对应的json格式目标消息,并发送所述json格式目标消息至所述目标物联网平台。

需要说明的是,上述json格式目标消息为json格式的消息,该json格式可为能被目标物联网平台准确识别的格式。

在具体实现中,通信设备在对上述初始消息完成校验后便开始对初始消息进行解析,将初始消息解析为与消息动作类型对应的json格式目标消息,对于不同的动作解析为不同的json消息,如登录会被解析为登录的DFDJSON格式,解析完成后再将该json格式的消息发送至目标物联网平台,从而使得目标物联网平台可准确使用该json格式目标消息,避免目标物联网平台无法识别emqx服务器返回的消息,有效提高了emqx服务器返回的内容在目标物联网平台使用的便利性。

为了便于理解,参考图3进行说明,但并不对本方案进行限定。图3为本发明物联网平台通信方法第一实施例中数据解析的示意图,图中,DFDJSON驱动即为本实施例中处于emqx服务器和目标物联网平台之间的通信设备,emqx服务器发送的初始消息通过消息预处理判断该消息是否需要处理,然后进行信息类型处理,也即判断是何种类型,如设备连接、登录、下线以及数据上报等,其中登录和下线为不需要进行数据格式校验的动作类型,便直接进入数据内容校验,对于属于数据格式校验的动作类型,如上报连接和数据上报,则会进行数据格式校验,在数据格式校验完成后进入数据内容校验,在数据内容校验完成后便可输出DFDJSON,也即json格式目标消息,该最终格式的消息最终返回至目标物联网平台,实现用户设备与物联网平台的通信。

本实施例通过获取不同的emqx服务器上报至目标物联网平台的初始消息;在初始消息符合预处理条件时,判断初始消息的消息动作类型是否属于数据校验类型;若属于数据校验类型,则对初始消息进行数据校验;对校验完成后的初始消息进行解析,获得与消息动作类型对应的json格式目标消息,并发送json格式目标消息至所述目标物联网平台。本实施例通过对初始消息数据校验完成后将初始消息解析为json格式目标消息,避免了现有的emqx组件封装出来的消息格式不能直接物联网平台读取、使用和流转的问题,在使用组件返回的内容的过程中更为便捷,提高了用户体验。

参考图4,图4为本发明物联网平台通信方法第二实施例的流程示意图。

基于上述第一实施例,在本实施例中,所述数据校验包括数据格式校验和数据内容校验,所述步骤S30包括:

步骤S301:若属于所述数据格式校验类型,则对所述初始消息中目标目录的格式进行数据格式校验。

需要说明的是,emqx开源组件在对设备的初始内容进行封装的过程中系统错误会导致封装的初始消息缺失部分内容,从而导致目标物联网平台无法识别或识别到错误的消息,故而提出本实施例,通过数据格式校验和数据内容校验以保证最终的消息是符合目标物联网平台定义的正确数据,提高通信的准确性。

可理解的是,上述数据格式校验类型可为需要进行数据格式校验的动作类型,如数据上报。

需要说明的是,上述目标目录可为初始消息中指定的目录,该目标目录可由技术人员根据实际情况所指定,主要会针对初始消息中的一级目录和二级目录。

在具体实现中,通信设备可在上述初始消息属于上述数据格式校验类型时,也即需要进行数据格式校验时,对初始消息进行格式方面的校验,也即,读取上述初始消息中,目标目录,如一级目录和二级目录,对该目标目录进行数据格式校验。

应理解的是,上述数据格式校验主要对初始消息进行格式方面的校验,如果用户设备传递的内容并不是一个有效的DFDJSON格式,emqx开源组件并不会进行校验,通过本实施例的数据格式校验可有效针对初始消息中的一级目录和二级目录的格式进行校验,如果缺少某个键或值,则终止后面的数据校验。

进一步地,为了提高数据格式校验的精度,本实施例中,所述步骤S301包括:

步骤S3011:若属于所述数据格式校验类型,则检测所述初始消息中目标目录的格式是否缺失预设内容。

需要说明的是,上述预设内容可为上述目标目录的格式需要存在内容,如某个键或值,该预设内容缺失,则说明上述初始消息的目标目录不完整,无法进行后面的数据校验。

在具体实现中,通信设备在上述初始消息为数据格式校验类型时便可进行数据格式校验,对上述初始消息进行数据格式校验可为检测上述目标目录,也即上述一级目录和二级目录的格式是否缺失上述预设内容。

步骤S3012:若未缺失所述预设内容,则判定格式校验成功。

在具体实现中,通信设备在检测到上述目标目录的格式未缺失上述预设内容,则说明上述初始消息完整,判定格式校验成功,可进行后续的数据校验。

步骤S3012':若缺失所述预设内容,则判定格式校验失败。

在具体实现中,通信设备在检测到上述目标目录的格式缺失上述预设内容,则说明上述初始消息不完整,判定格式校验失败,无法进行后续数据校验,此时便终止后续操作,以减少损耗。

步骤S302:在格式校验成功时,对所述初始消息中的目标内容进行数据内容校验。

需要说明的是,上述目标内容可为初始消息中指定的具体内容,该目标内容可由技术人员根据实际情况所指定,也可为上述初始消息中的全部内容。

在具体实现中,通信设备可在上述初始消息格式校验成功时,对初始消息中的目标内容进行数据格式校验,该数据格式校验过程主要是对于用户失败上报内容进行数据具体内容方面的校验,根据用户在目标物联网平台上定义的数据格式,如最大数据长度、最大字节长度和数据类型等,以保证最终生成的json格式目标消息是符合目标物联网平台定义的正确数据。

进一步地,为了提高数据内容校验的精度,本实施例中,所述步骤S302包括:

步骤S3021:在格式校验成功时,判断所述初始消息中的目标内容是否符合所述目标物联网平台定义的正确内容。

在具体实现中,通信设备在上述数据格式校验成功时,便开始进行数据内容校验,该数据内容校验可为判断上述初始消息中的目标内容是否符合上述目标物联网平台定义的正确内容,可为判断上述目标内容的最大数据长度是否正确、最大字节长度是否正确以及数据类型是否正确等。

步骤S3022:若符合所述正确内容,则判定数据内容校验成功。

在具体实现中,通信设备在判断出上述目标内容符合上述正确内容时,则说明初始消息的数据内容符合目标物联网平台定义的正确内容,可判定数据内容校验成功,便可对校验完成后的初始消息进行解析,实现了提前对emqx开源组件所传递的内容进行校验(数据格式校验和数据内容校验)和解析。

步骤S3022':若不符合所述正确内容,则判定数据内容校验失败。

在具体实现中,通信设备在判断出上述目标内容不符合上述正确内容,也即上述目标内容的最大数据长度、最大字节长度以及数据类型中的一处不正确,则说明初始消息的数据内容存在问题,可判断数据内容校验失败。

进一步地,为了提高解析的效率,本实施例中,所述步骤S40之前,还包括:

步骤S41:在数据内容校验失败时,对所述目标内容进行数据清洗,获得清洗后的初始消息,并将所述清洗后的初始消息作为校验完成后的初始消息。

在具体实现中,通信设备在上述初始消息校验失败时,说明上述目标内容中存在不符合上述正确内容的数据,可对不符合目标物联网平台限制的数据进行数据清洗,去除不符合上述正确内容的数据,然后将清洗后的初始消息作为上述校验完成后的初始消息,以保证最终符合的json目标消息符合平台定义的正确数据,避免数据内容校验失败便无法进行解析的问题,有效提高了解析的效率。

参考图5,图5为本发明物联网平台通信方法第三实施例的流程示意图。

基于上述各实施例,在本实施例中,所述步骤S20之后,所述方法还包括:

步骤S30':若不属于所述数据校验类型,则对所述初始消息进行解析,获得与所述消息动作类型对应的json格式目标消息,并发送所述json格式目标消息至所述目标物联网平台。

在具体实现中,若上述初始消息不为上述数据校验类型,也即该初始消息不需要进行数据格式校验和数据内容校验,如上述登录或下线的初始消息,此时便可直接对初始消息进行解析,解析为与消息动作类型对应的json格式目标消息,如登录会被解析为登录的DFDJSON格式,然后将该json格式目标消息发送至目标物联网平台,完成通信,实现了提前对emqx开源组件所传递的内容进行解析,保证了传递内容的准确性。

此外,本发明实施例还提出一种存储介质,所述存储介质上存储有物联网平台通信程序,所述物联网平台通信程序被处理器执行时实现如上文所述的物联网平台通信方法的步骤。

参照图6,图6为本发明物联网平台通信装置第一实施例的结构框图。

如图6所示,本发明实施例提出的物联网平台通信装置包括:

消息获取模块501,用于获取不同的emqx服务器上报至目标物联网平台的初始消息。

类型判断模块502,用于在所述初始消息符合预处理条件时,判断所述初始消息的消息动作类型是否属于数据校验类型。

校验模块503,用于若属于所述数据校验类型,则对所述初始消息进行数据校验。

消息解析模块504,用于对校验完成后的初始消息进行解析,获得与所述消息动作类型对应的json格式目标消息,并发送所述json格式目标消息至所述目标物联网平台。

本实施例通过获取不同的emqx服务器上报至目标物联网平台的初始消息;在初始消息符合预处理条件时,判断初始消息的消息动作类型是否属于数据校验类型;若属于数据校验类型,则对初始消息进行数据校验;对校验完成后的初始消息进行解析,获得与消息动作类型对应的json格式目标消息,并发送json格式目标消息至所述目标物联网平台。本实施例通过对初始消息数据校验完成后将初始消息解析为json格式目标消息,避免了现有的emqx组件封装出来的消息格式不能直接物联网平台读取、使用和流转的问题,在使用组件返回的内容的过程中更为便捷,提高了用户体验。

本发明物联网平台通信装置的其他实施例或具体实现方式可参照上述各方法实施例,此处不再赘述。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如只读存储器/随机存取存储器、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

相关技术
  • 窄带物联网设备的实时控制方法、设备、存储介质及装置
  • 性能测试平台脚本存储方法、装置、设备及存储介质
  • 通信设备电源故障分析的方法、装置、设备及存储介质
  • 多物联网射频识别设备数据获取方法、装置及存储介质
  • 通信费用透支额度分配方法、装置、存储介质和计算机设备
  • 物联网络平台与设备的通信方法、装置、设备及存储介质
  • 基于物联网平台的物联网设备管理方法、物联网平台及可读存储介质
技术分类

06120115601854