一种信息处理方法及网关设备与流程

文档序号:11279303阅读:187来源:国知局
一种信息处理方法及网关设备与流程

本发明涉及物联网技术领域,尤其涉及一种信息处理方法及网关设备。



背景技术:

随着物联网技术的不断发展,用于各电子设备之间进行互连通信的通信协议不断增多,例如,在近距离无线通信中,包括wifi(wireless-fidelity,无线保真)、蓝牙、zigbee(紫蜂)等通信协议,在远距离无线传输中,包括lorawan(lorawide-area-network,一种低功耗广域网规范)、nb-iot(narrowbandinternetofthings,基于蜂窝网络的窄带物联网)等通信协议。丰富的通信协议类型使得在设计制造电子设备时,能够根据电子设备的应用场景和实际需求确定适宜采用的通信协议。

然而,由于各电子设备采用的通信协议不统一,导致采用不同通信协议的电子设备之间无法进行数据传输,电子设备之间相互不兼容。现有技术中用于电子设备之间进行消息转发的网关,同样由于支持的通信协议类型单一,无法适应多通信协议的物联网应用场景。



技术实现要素:

本发明实施例提供一种信息处理方法及网关设备,用以解决现有技术中的网关无法适应多通信协议的物联网应用场景技术问题。

第一方面,提供一种信息处理方法,应用于第一电子设备,所述方法包括:

接收第二电子设备发送的第一信息;

基于所述第一信息,将所述第一信息转换为具有预定信息格式的第二信息;其中,所述第二信息包括用于表明所述第二电子设备与所述第一电子设备之间是基于第一通信协议进行通信的指示信息。

在一种可能的实现方式中,所述基于所述第一信息,将所述第一信息转换为具有预定信息格式的第二信息,包括:

确定所述第一信息具有的信息格式为第一信息格式;

若所述第一信息格式与所述预定信息格式不相同,则基于所述第一信息所包括的信息内容和所述指示信息,生成具有所述预定信息格式的所述第二信息。

在一种可能的实现方式中,所述第二信息还包括用于识别所述第二电子设备的第一设备识别信息,在所述将所述第一信息转换为具有预定信息格式的第二信息之后,所述方法还包括:

确定与所述第一设备识别信息对应的第一网络通信地址;其中,所述第一网络通信地址为预定网络通信地址库中当前未被分配的任一网络通信地址;

为所述第二电子设备分配所述第一网络通信地址,以使所述第二电子设备在与所述第一电子设备保持当前通信连接的连接状态内基于所述第一网络通信地址进行通信。

在一种可能的实现方式中,所述确定与所述第一设备识别信息对应的第一网络通信地址,包括:

通过查找设备注册表,确定所述第一设备识别信息是否存在于所述设备注册表中;其中,所述设备注册表包括已经被分配网络通信地址的设备与分别对应分配的网络通信地址的对应关系;

若所述第一设备识别信息未存在于所述设备注册表中,则确定所述预定网络通信地址库中当前未被分配的任一网络通信地址为所述第一网络通信地址。

在一种可能的实现方式中,在所述为所述第二电子设备分配所述第一网络通信地址之后,所述方法还包括:

以预定频率向所述第二电子设备发送在线确认信息;其中,所述在线确认信息用于指示所述第二电子设备向所述第一电子设备发送在线响应信息;

若在预定时长内未接收所述第二电子设备发送的所述在线响应信息,则从所述设备注册表中删除所述第一设备识别信息与对应的网络通信地址的对应关系。

在一种可能的实现方式中,所述第二信息还包括用于表明所述第一信息需要传输至的目标设备的目标设备信息,在所述将所述第一信息转换为具有预定信息格式的第二信息之后,所述方法还包括:

基于所述目标设备信息,确定所述目标设备与所述第一电子设备之间进行通信的第二通信协议与所述第一通信协议不同;

将所述第二信息转换为具有第二信息格式的第三信息;其中,所述第二信息格式为与所述第二通信协议对应的信息格式;

向所述目标设备发送所述第三信息。

在一种可能的实现方式中,所述第二信息还包括用于识别所述第二电子设备的第一设备识别信息和第一消息体数据,在所述将所述第一信息转换为具有预定信息格式的第二信息之后,所述方法还包括:

基于所述第一设备识别信息,确定用于存储所述第二电子设备所发送的信息的第一数据存储区;

将所述第一消息体数据存储至所述第一数据存储区;

根据所述第一消息体数据,获得所述第二电子设备发送的第一数据流;其中,所述第一数据流包括所述第一消息体数据;

将所述第一数据流存储至与所述第一数据存储区不同的第二数据存储区。

第二方面,提供一种网关设备,包括:

接收模块,用于接收第二电子设备发送的第一信息;

协议处理模块,用于基于所述第一信息,将所述第一信息转换为具有预定信息格式的第二信息;其中,所述第二信息包括用于表明所述第二电子设备与所述网关设备之间是基于第一通信协议进行通信的指示信息。

在一种可能的实现方式中,所述协议处理模块基于所述第一信息,将所述第一信息转换为具有预定信息格式的第二信息,包括:

确定所述第一信息具有的信息格式为第一信息格式;

若所述第一信息格式与所述预定信息格式不相同,则基于所述第一信息所包括的信息内容和所述指示信息,生成具有所述预定信息格式的所述第二信息。

在一种可能的实现方式中,所述第二信息还包括用于识别所述第二电子设备的第一设备识别信息,所述网关设备还包括设备注册模块,用于:

在所述协议处理模块将所述第一信息转换为具有预定信息格式的第二信息之后,确定与所述第一设备识别信息对应的第一网络通信地址;其中,所述第一网络通信地址为预定网络通信地址库中当前未被分配的任一网络通信地址;

为所述第二电子设备分配所述第一网络通信地址,以使所述第二电子设备在与所述网关设备保持当前通信连接的连接状态内基于所述第一网络通信地址进行通信。

在一种可能的实现方式中,所述设备注册模块确定与所述第一设备识别信息对应的第一网络通信地址,包括:

通过查找设备注册表,确定所述第一设备识别信息是否存在于所述设备注册表中;其中,所述设备注册表包括已经被分配网络通信地址的设备与分别对应分配的网络通信地址的对应关系;

若所述第一设备识别信息未存在于所述设备注册表中,则确定所述预定网络通信地址库中当前未被分配的任一网络通信地址为所述第一网络通信地址。

在一种可能的实现方式中,所述网关设备还包括心跳保活模块,用于:

在所述设备注册模块为所述第二电子设备分配所述第一网络通信地址之后,以预定频率向所述第二电子设备发送在线确认信息;其中,所述在线确认信息用于指示所述第二电子设备向所述网关设备发送在线响应信息;

若在预定时长内未接收所述第二电子设备发送的所述在线响应信息,则从所述设备注册表中删除所述第一设备识别信息与对应的网络通信地址的对应关系。

在一种可能的实现方式中,所述第二消息还包括用于表明所述第一信息需要传输至的目标设备的目标设备信息,所述网关设备还包括信息识别模块和发送模块,其中:

所述信息识别模块,用于在所述协议处理模块将所述第一信息转换为具有预定信息格式的第二信息之后,基于所述目标设备信息,确定所述目标设备与所述网关设备之间进行通信的第二通信协议与所述第一通信协议不同;

所述协议处理模块还用于:

将所述第二信息转换为具有第二信息格式的第三信息;其中,所述第二信息格式为与所述第二通信协议对应的信息格式;

所述发送模块,用于向所述目标设备发送所述第三信息。

在一种可能的实现方式中,所述第二信息还包括用于识别所述第二电子设备的第一设备识别信息和第一消息体数据,所述网关设备还包括信息存储模块,用于:

在所述协议处理模块将所述第一信息转换为具有预定信息格式的第二信息之后,基于所述第一设备识别信息,确定用于存储所述第二电子设备所发送的信息的第一数据存储区;

将所述第一消息体数据存储至所述第一数据存储区;

根据所述第一消息体数据,获得所述第二电子设备发送的第一数据流;其中,所述第一数据流包括所述第一消息体数据;

将所述第一数据流存储至与所述第一数据存储区不同的第二数据存储区。

第三方面,提供一种电子设备,包括:

存储器,用于存储指令;

处理器,与所述存储器连接,用于执行所述指令,以在执行所述指令时执行第一方面中任一所述的信息处理方法所包括的步骤。

本发明实施例提供的信息处理方法及网关设备,在接收到来自其它电子设备发送的信息后,首先将接收到的信息转换为预定信息格式的信息,使得第一电子设备能够对来自不同电子设备以及采用不同通信协议传输的信息进行统一的相同处理,以适应多通信协议的物联网应用场景,也就是说,第一电子设备可以将其它电子设备所发送的信息以预定信息格式进行一致的中间转换,进而可以对采用不同通信协议进行传输的信息都能够进行识别和使用,增强对多通信协议的物联网场景的适应性。

进一步地,基于第一信息转换得到的第二信息包括有用于表明第二电子设备与第一电子设备之间是基于第一通信协议进行通信的指示信息,通过该指示信息能够确保第一电子设备在向第二电子设备传输数据时,知晓应当采用何种通信协议,保证了第一电子设备与第二电子设备之间的有效互联互通。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例中信息处理方法的流程图;

图2为本发明实施例中智能网关的结构示意图;

图3为本发明实施例中智能网关包括多个功能模块的结构示意图;

图4为本发明实施例中智能网关中的协议处理模块所执行的方法步骤的流程图;

图5为本发明实施例中智能网关中的设备注册模块所执行的方法步骤的流程图;

图6为本发明实施例中智能网关中的消息接收模块所执行的方法步骤的流程图;

图7为本发明实施例中智能网关中的消息存储模块所执行的方法步骤的流程图;

图8为本发明实施例中智能网关中的心跳保活模块所执行的方法步骤的流程图;

图9为本发明实施例中网关设备的结构示意图;

图10为本发明实施例中电子设备的结构框图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,在不做特别说明的情况下,一般表示前后关联对象是一种“或”的关系。

本发明实施例提供一种信息处理方法,该方法可以应用于第一电子设备,其中,第一电子设备可以是路由器、网关、交换机等网络连接设备,也可以是其它需要进行数据交互且具有前述网络连接设备的功能的电子设备,例如手机、平板电脑、个人电脑、笔记本电脑、穿戴式电子设备等电子设备,本发明实施例对于前述第一电子设备具体为何种设备不做限定。

为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。

请参见图1,本发明实施例中的信息处理方法的流程描述如下。

步骤101:接收第二电子设备发送的第一信息。

本发明实施例中,发送第一信息的第二电子设备可以是手机、平板电脑、个人电脑、笔记本电脑、穿戴式电子设备(例如智能手表)等电子设备,或者也可以是例如空调、冰箱、电视等智能家用电器,等等,或者还可以是其它能够进行数据传输的物联网设备。第一电子设备和第二电子设备之间可以通过有线或无线等方式进行通信连接,并且,对于第一电子设备和第二电子设备之间基于何种通信协议进行传输,本发明实施例不做限制,例如可以是wifi、蓝牙、zigbee、lorawan、nb-iot等通信协议。

其中,根据第一电子设备和第二电子设备之间采用的通信协议不同,第一信息具有对应的信息格式。

步骤102:基于第一信息,将第一信息转换为具有预定信息格式的第二信息;其中,第二信息包括用于表明第二电子设备与第一电子设备之间是基于第一通信协议进行通信的指示信息。

本发明实施例中,预定信息格式可以为预先设定的统一的信息格式,例如,该预定信息格式可以是第一电子设备出厂设置的信息格式,或者是在实际使用过程中由用户自行定义的信息格式,等等。

另外,该预定信息格式可以是现有的某一通信协议对应的信息格式,例如是与lorawan通信协议对应的信息格式,或者也可以是一种新的信息格式,而该新的信息格式可以不同于任何一个通信协议对应的信息格式。也就是说,作为一种中间转换的信息格式,本发明实施例中的预定信息格式可以是目前已有的信息格式,或者也可以是一种全新的信息格式,本发明实施例对此不做限制。

本发明实施例中,在将第一信息转换为具有预定信息格式的第二信息后,第二信息中不仅可以包括第一信息中需要传输的有效信息内容,例如包括第一信息的消息体数据,还可以包括用于表明第二电子设备与第一电子设备之间是基于第一通信协议进行通信的指示信息,那么,通过第二信息,不仅可以获知第一信息的有效传输内容,还可以知晓第二电子设备与第一电子设备是基于第一通信协议进行数据传输的。

在一种可能的实施方式中,基于第一信息,将第一信息转换为具有预定信息格式的第二信息,具体可以包括以下步骤:

首先,确定第一信息的信息格式,例如确定第一信息的信息格式为第一信息格式。在具体实施过程中,例如可以采用以下方式中的任意一种来确定第一信息的信息格式。

第一种,可以根据第二电子设备向第一电子设备发送第一信息时采用的通信协议来确定第一信息的信息格式,即确定与第一通信协议对应的第一信息格式为第一信息具有的信息格式。

第二种,可以根据第二电子设备与第一电子设备之间的连接方式来确定第一信息的信息格式,即可以通过确定第二电子设备与第一电子设备是通过何种物理通信模块进行通信的来确定第一信息具有的信息格式,例如第二电子设备与第一电子设备是通过wifi模块实现通信的,则可以确定第一信息具有的信息格式为与wifi通信协议对应的信息格式。

第三种,可以根据第一信息自身的特征来确定第一信息的信息格式,例如可以根据第一信息的数据结构来确定第一信息具有的信息格式,此时则需要先对第一信息进行解析,以根据解析结果来确定第一信息的数据结构。

在确定第一信息具有的信息格式为第一信息格式之后,进而可以判断第一信息格式是否与预定信息格式相同。

若第一信息格式与预定信息格式不相同,则可以基于第一信息所包括的信息内容和第一指示信息,生成具有预定信息格式的第二信息。具体来说,生成具有预定信息格式的第二信息可以是在第一信息的基础上,将第一信息格式的特征部分替换为第二信息格式的特征部分,并且加入指示信息,以获得具有预定信息格式的第二信息;或者,也可以先对第一信息进行解析,将第一信息中需要传输的有效信息内容和指示信息以预定信息格式进行拼接,以获得具有预定信息格式的第二信息,等等。

若第一信息格式与预定信息格式相同,则可以直接将指示信息存入第一信息的相应字段中,如存入第一信息的消息头或者尾部分别对应的消息字段中。也就是说,当第一信息格式与预定信息格式相同,则可以在不改变信息格式的前提下对第一信息进行转换,由于不需要格式的转换,这样的转换效率可以更高,减少第一电子设备的处理负担。

另外,当第一信息格式与预定信息格式相同时,也可以采用如第一信息格式与预定信息格式不同的方式对第一信息进行转换,在具体实施过程中,可以根据实际的使用需求进行处理。

在一种可能的实施方式中,第二信息还可以包括用于识别第二电子设备的第一设备识别信息。其中,第一设备识别信息与第二电子设备是唯一对应的,也就是说,在本发明实施例中,第一设备识别信息即可代指第二电子设备。在具体实施过程中,第一电子设备接收到的第一信息中包括有第一设备识别信息,在将第一信息转换为第二信息时,即可将第一设备识别信息一并存储至第二信息内。

在将第一信息转换为具有预定信息格式的第二信息之后,第一电子设备还可以执行以下操作。

首先,确定与第一设备识别信息对应的第一网络通信地址。

其中,第一网络通信地址为预定网络通信地址库中当前未被分配的任一网络通信地址。具体来说,在本发明实施例中,第一电子设备具有一套自有的网络通信地址管理机制,该管理机制包括一个预定网络通信地址库,该预定网络通信地址库包括有多个网络通信地址,并且,其中的任意两个网络通信地址均是不同的。当有电子设备连接第一电子设备时,例如当第二电子设备连接第一电子设备时,第一电子设备即可根据第二电子设备的请求为第二电子设备分配一个通信地址库中的网络通信地址,或者第一电子设备自动为第二电子设备分配一个网络通信地址。同时,由于网络通信地址是用于区别连接到第一电子设备的电子设备的,因而在同一时刻,一个网络通信地址只能对应于一个电子设备,所以在为电子设备分配网络通信地址时,只能为其分配一个预定网络地址库中当前未被分配的任一网络通信地址。

在成功确定与第一设备识别信息对应的第一网络通信地址后,即可将第一网络通信地址分配给第二电子设备,以使第二电子设备在与第一电子设备保持当前通信连接的连接状态内能够基于第一网络通信地址进行通信。其中,当前通信连接的连接状态即为第二电子设备从开始建立与第一电子设备的连接到断开该次连接之间的状态。

具体来说,在确定第一网络通信地址之后,第一电子设备会向第二电子设备发送该第一网络通信地址,以使第二电子设备知晓自己是否成功连接到第一电子设备,以及知晓自己被分配了具体哪一个网络通信地址。在本发明实施例中,第二电子设备在接收到第一电子设备发送的第一网络通信地址后,会向第一电子设备发送一个确认信息进行反馈,该确认信息用于向第一电子设备表示已经知晓被分配的网络通信地址。

本发明实施例中,第二电子设备在与第一电子设备保持当前通信连接的连接状态内,均是以分配的第一网络通信地址进行通信。而当第二电子设备断开与第一电子设备的连接后,若需要再次与第一电子设备进行通信,则需要再次连接第一电子设备,即第一电子设备会为第二电子设备重新进行上述的网络通信地址确认操作及网络通信地址分配操作,并且,第二电子设备在每次连接第一设备时,被分配的网络通信地址可能是不同的网络通信地址。

在一种可能的实施方式中,确定与第一设备识别信息对应的第一网络通信地址,例如可以通过以下方式实现。

首先,通过查找设备注册表以确定第一设备识别信息是否存在于设备注册表中;其中,设备注册表包括有已经被分配网络通信地址的电子设备与分别对应分配的网络通信地址的对应关系。

本发明实施例中,在为连接到第一电子设备的电子设备分配网络通信地址后,会将该被分配网络通信地址的电子设备的设备识别信息,以及该电子设备被分配到的网络通信地址对应存储至设备注册表中。另外,设备注册表中还可以包括被分配网络通信地址的电子设备所采用的通信协议。对于已经被分配网络通信地址的电子设备,通过在设备注册表中查找设备识别信息,即可获得与其对应的网络通信地址,或者,通过查找网络通信地址,亦可获得与其对应的设备识别信息。

若第一设备识别信息存在于设备注册表中,则表明第二电子设备当前已经连接到第一电子设备,并且已经被分配了网络通信地址,则无需为第二电子设备重新确定网络通信地址,也无需重新为第二电子设备分配网络通信地址。

若第一设备识别信息未存在于设备注册表中,则表明第一设备识别信息当前未连接到第一电子设备,需要为第二电子设备分配一个网络通信地址,例如可以采用以下方式进行网络通信地址的分配。

第一种方式,将预定网络通信地址库中的当前未被分配的网络通信地址中的任一网络通信地址作为第二电子设备的第一网络通信地址。

通过第一种方式,能够保证预定网络通信地址库中的网络通信地址被充分有效地利用,避免网络通信地址不足而导致其它电子设备无法连接至第一电子设备的情形。

第二种方式,首先确定第二电子设备在前一次连接第一电子设备时被分配的历史网络通信地址,进而确定该历史网络通信地址当前是否被分配,若该历史网络通信地址未被分配,则为第二电子设备分配该历史网络通信地址。

也就是说,在第二种方式中,可以优先为进行连接的电子设备分配前一次连接时被分配的网络通信地址,这样能够在保证有效利用网络通信地址的前提下,在一定程度上保证各电子设备之间数据传输的稳定性,避免恶意电子设备伪装为第二电子设备连接到第一电子设备。

第三种方式,第二电子设备在预定网络通信地址库中具有唯一对应的网络通信地址,该对应的网络通信地址仅仅用于第二电子设备。例如,第二电子设备在第一次连接到第一电子设备时,为第二电子设备分配的网络通信地址为第一网络通信地址,并确定第一网络通信地址为第二电子设备唯一对应的网络通信地址,进而在后续第二电子设备每次连接到第一电子设备时,均为第二电子设备分配第一网络通信地址,并且,即使在第二电子设备未连接到第一电子设备时,该第一网络通信地址仍然为第二电子设备保留。

通过第三种方式,能够最大程度避免恶意电子设备伪装为其它电子设备连接到第一电子设备的情形,保证各电子设备之间的数据传输的安全性和稳定性。

进一步地,在为第二电子设备分配第一网络通信地址之后,第一电子设备还可以执行以下后续操作。

以预定频率向第二电子设备发送在线确认信息,该在线确认信息用于指示第二电子设备向第一电子设备发送在线响应信息;

若在预定时长内未接收第二电子设备发送的在线响应信息,则从设备注册表中删除第一设备识别信息与对应的网络通信地址的对应关系。

具体来说,在为第二电子设备分配第一网络通信地址之后,第一电子设备还可以以预定频率向第二电子设备发送在线确认信息,该在线确认信息用于指示第二电子设备向第一电子设备发送在线响应信息,通过第二电子设备的响应情况即可确定第二电子设备与第一电子设备之间的连接状态。其中,预定频率可以是根据第一电子设备及第二电子设备的应用场景、采用的通信协议等因素确定的,也可以是由人为设定的,等等,本发明实施例对此不作限制,例如,预定频率可以是每5秒一次,等等。

若在预定时长内未接收到第二电子设备发送的在线响应信息,则表明第二电子设备与第一电子设备之间的连接已经断开,则可以从设备注册表中删除第一设备识别信息与对应的网络通信地址的对应关系,进而,与第一设备识别信息对应的第一网络通信地址由已分配的网络通信地址变化为未分配的网络通信地址。其中,预定时长可以是根据预定频率、第一电子设备及第二电子设备的应用场景、采用的通信协议等等确定的,也可以是由人为设定的,等等,本发明实施例对此不作限制。

本发明实施例中,在确定第二电子设备与第一电子设备之间的连接状态时,也可以由第二电子设备向第一电子设备发送在线确认信息,在该种方式下,第一电子设备根据接收在线确认信息的情况,来确定第二电子设备与第一电子设备之间的连接状态。

另外,在为第二电子设备分配第一网络通信地址之后,第一电子设备还可以向第二电子设备发送控制指令,该控制指令用于指示第二电子设备执行一些操作,例如可以指示第二电子设备检测电池电量,第二电子设备接收到该控制指令后,则会对该控制指令进行响应,即先检测自身的电池电量,然后再向第一电子设备反馈所检测的自身当前的电池电量。

在一种可能的实施方式中,第二消息还可以包括用于表明第一信息需要传输至的目标设备的目标设备信息,在将第一信息转换为具有预定信息格式的第二信息之后,第一电子设备还可以基于目标设备信息,确定出目标设备与第一电子设备之间进行数据传输所采用的通信协议(例如第二通信协议),再判断第二通信协议与第一通信协议是否相同,若不相同,则可以再将第二信息转换为与第二通信协议对应的信息格式(例如第二信息格式)的第三信息,并将第三信息发送给前述的目标设备。

其中,目标设备信息可以包括第一电子设备为目标设备分配的网络通信地址(例如目标网络通信地址),还可以包括目标设备的设备识别信息(例如目标设备识别信息),还可以包括目标设备与第一电子设备之间进行数据传输的通信协议(例如第二通信协议),等等。以目标设备信息包括目标网络通信地址为例,第一电子设备可以通过在设备注册表中查找目标网络通信地址,确定目标设备的目标设备识别信息,以及确定出目标设备与第一电子设备之间进行数据传输采用的第二通信协议。

在确定出目标设备与第一电子设备之间进行数据传输采用的通信协议为第二通信协议时,即可确定出与第二通信协议对应的信息格式为第二信息格式,进而,将第二信息转换为具有第二信息格式的第三信息,并将第三信息发送给前述的目标设备。

具体来说,将第三信息发送给目标设备时,可以是根据目标设备的目标设备识别信息向目标设备进行发送的。

另外,第二信息还可以包括用于识别第二电子设备的第一设备识别信息和第一消息体数据,其中,第一消息体数据可以为第二信息中需要被传输的有效数据。在将第一信息转换为具有预定信息格式的第二信息之后,第一电子设备还可以通过第一设备识别信息,确定用于存储第二电子设备所发送的信息的第一数据存储区,再将第一消息体数据存储至第一数据存储区中,其中,第一数据存储区可以仅用于存储来自第二电子设备的数据,也可以仅用于存储采用第一通信协议的电子设备发送的数据。也就是说,可以只将信息中需要被传输的有效数据部分存储在特定存储区中,以实现对某个电子设备或基于某一特定通信协议进行传输的有效数据部分进行分类存储,实现对数据的分类统筹管理。

采用与上述方式类似地处理方式,第一电子设备例如还可以在之前或之后将第二电子设备发送的其它信息的有效数据部分也存储在第一数据存储区中,进一步地,第一电子设备可以获得第二电子设备所发送的、且包括第一消息体数据的第一数据流,再将第一数据流存储至与第一数据存储区不同的另一数据存储区,例如再存储至第二数据存储区。其中,第一数据流可以是第一数据存储区中所存储的部分或全部数据。

在具体实施过程中,第二数据存储区的数据读取速率可以大于第一数据存储区,和/或,第二数据存储区的存储空间大于第一数据存储区,这样可以便于存储大量的数据流。

通过第一数据存储区和第二数据存储区的存储方式,可以将电子设备所发送的数据进行多级缓存,进而提升第一电子设备并发处理数据的能力,并且可以避免数据量过大时无法对数据及时存储而造成数据丢失的情况。

为了便于本领域技术人员理解,下面通过一个具体的实施例对本发明实施例中的信息处理方法进行说明。应当说明的是:该具体的实施例仅用以说明本发明实施例中的信息处理方法,而并非对其限制,所列举的内容仅仅是本发明实施例中信息处理方法多种可能的实施方式之一。具体如下:

以第一电子设备是智能网关为例,即本发明实施例中的信息处理方法可以应用于前述的智能网关,如图2所示,该智能网关可以包括存储器、处理器和多种类型的通信模块,处理器与存储器及多种类型的通信模块电性连接。

其中,存储器可以用于存储程序/指令。

多个不同类型的通信模块用于收发信息,以及用于对信息进行格式转换,其中,多个不同类型的通信模块中的每个通信模块具有对应的通信协议类型,不同类型的通信模块对应的通信协议类型不同,也就是说,如图2所示的通信模块1至通信模块n可以表示该智能网关具有n个通信模块(n为大于等于2的正整数),n个通信模块对应于n类通信协议,因而,该智能网关能够支持n类通信协议。本发明实施例中的通信模块可以包括wifi模块、zigbee模块、lora模块、以太网模块(ethernetmodule),等等。本发明实施例中,可以根据具体的使用场景配置n个通信模块,也就是说,该智能网关中具体有哪几种类型的通信模块不是固定的,而是可以根据实际需求配置的,具有较强的适应性。

处理器用于执行存储器存储的程序/指令,以在执行该程序/指令时通过智能网关中的各部件执行本发明实施例中的信息处理方法所包括的步骤,处理器可以是mpu(microprocessorunit,微处理器),该处理器可以使用arm(advancedriscmachine,进阶精简指令集机器)架构系列处理器芯片。

在实现本发明实施例中的信息处理方法时,信息处理方法所包括的步骤可以划分为多个不同的功能步骤集合,其中的每个功能步骤集合可以通过对应的功能模块来执行。通过执行各个功能模块,能够实现本发明实施例中的信息处理方法。具体来说,各个功能模块可以以程序/指令的形式存储于图2所示的智能网关中的存储器。

在一种可能的实施方式中,如图3所示,本发明实施例中信息处理方法可以划分为6个功能步骤集合,进而可以通过对应的6个功能模块来执行相应的功能步骤,该6个功能模块分别为协议处理模块、设备注册模块、消息接收模块、消息存储模块、心跳保活模块和设备控制模块。在具体实施过程中,协议处理模块所执行的步骤可以通过处理器控制通信模块执行,而设备注册模块、消息接收模块、消息存储模块、心跳保活模块和设备控制模块所执行的步骤可以由处理器自身执行,即可以将设备注册模块、消息接收模块、消息存储模块、心跳保活模块和设备控制模块理解为是处理器中的子功能模块。

协议处理模块所执行的方法步骤如图4所示,包括:接收第二电子设备发送的第一报文;判断第一报文来源,以获得第一报文来源信息;格式化第一报文,以获得第二报文;在第二报文中加入第一报文来源信息,以获得第三报文。

本发明实施例中,信息可以以报文的形式传输。第一报文来源信息可以包括用于表明第二电子设备与智能网关之间是基于第一通信协议进行通信的指示信息,还可以包括用于识别第二电子设备的第一设备识别信息。

本发明实施例中,将第一报文转换为具有预定信息格式的报文的过程中,可以包括格式化第一报文和加入第一报文来源信息这两个步骤,也可以只包括格式化第一报文这一个步骤。

本发明实施例中,获得第三报文后,可以根据第一报文来源信息中的第一设备识别信息确定第二电子设备是否已经在设备注册表中,如果第二电子设备在设备注册表中(即表明第二电子设备已被分配了网络通信地址),则触发消息接收中断,执行消息接收模块包括的步骤,如果第二电子设备不在设备注册表中(即表明第二电子设备还未被分配网络通信地址),则先执行设备注册模块包括的步骤。

设备注册模块所执行的方法步骤如图5所示,包括:基于第三报文,获得第一报文来源信息,以确定第二电子设备;为第二电子设备分配第一网络通信地址;向第二电子设备发送地址分配确认报文;在未接收到第二电子设备发送的地址分配响应报文时,重复向第二电子设备发送地址分配确认报文;在接收到第二电子设备发送的地址分配响应报文时,将第二电子设备与第一网络通信地址的对应关系添加到设备注册表。

本发明实施例中,为第二电子设备分配第一网络通信地址这一步骤后,要确保第二电子设备已经收到第一网络通信地址,否则第二电子设备无法正常与智能网关进行通信,因而需要智能网关向第二电子设备发送地址分配确认报文,智能网关会根据是否接收到第二电子设备发送的地址分配响应报文执行不同的操作。

本发明实施例中,由于智能网关可以接入采用不同通信协议的设备,需要对不同的通信协议进行识别,因而在通信交互过程中,为了使得各个设备之间能够正常通信,需要将接入设备采用的通信协议与接入设备进行解耦。

消息接收模块所执行的方法步骤如图6所示,包括:基于第三报文,获得第一报文来源信息,以确定第二电子设备的第一设备标识;根据第一设备标识,将第三报文存储到与第一设备标识对应的第一报文队列。

消息存储模块所执行的方法步骤如图7所示,包括:从第一报文队列获得第三报文;读取第三报文包括的第一消息体数据,以获得第二电子设备发送的第一数据流;存储第一数据流到第一数据队列;从第一数据队列获得第一消息体数据,存储第一消息体数据到数据库。

心跳保活模块所执行的方法步骤如图8所示,包括:向第二电子设备发送在线确认信息;若在预定时长内接收到第二电子设备发送的在线响应信息,则重复向第二电子设备发送在线确认信息;若在预定时长内未接收到第二电子设备发送的在线响应信息,则从设备注册表中删除第二电子设备与第一网络通信地址的对应关系。

也就是说,若在预定时长内未接收第二电子设备的在线响应信息,则可以判定第二电子设备已经处于离线状态,进而从设备注册表中删除第二电子设备与第一网络通信地址的对应关系。若第二电子设备需要和智能网关再次进行通信,则需要重新进行注册。

设备控制模块所执行的方法步骤,可以包括分析智能网关的网络拓扑结构,也包括向第二电子设备发送控制命令,例如向第二电子设备发送指示反馈电池电量信息的控制指令,又例如向第二电子设备发送指示断开与智能网关连接的控制指令,等等。

本发明实施例提供的信息处理方法,在接收到来自其它电子设备发送的信息后,首先将接收到的信息转换为预定信息格式的信息,使得第一电子设备能够对来自不同电子设备以及采用不同通信协议传输的信息进行统一的相同处理,以适应多通信协议的物联网应用场景,也就是说,第一电子设备可以将其它电子设备所发送的信息以预定信息格式进行一致的中间转换,进而可以对采用不同通信协议进行传输的信息都能够进行识别和使用,增强对多通信协议的物联网场景的适应性。

进一步地,基于第一信息转换得到的第二信息包括有用于表明第二电子设备与第一电子设备之间是基于第一通信协议进行通信的指示信息,通过该指示信息能够确保第一电子设备在向第二电子设备传输数据时,知晓应当采用何种通信协议,保证了第一电子设备与第二电子设备之间的有效互联互通。

基于同一发明构思,请参见图9,本发明实施例提供一种网关设备,该网关设备可以是前述方法实施例中的第一电子设备,例如是前述例子中的智能网关。该网关设备包括接收模块201和协议处理模块202,而且本发明实施例中的接收模块201和协议处理模块202可以通过硬件处理器来实现相关功能单元。其中:

接收模块201,用于接收第二电子设备发送的第一信息;

协议处理模块202,用于基于第一信息,将第一信息转换为具有预定信息格式的第二信息;其中,第二信息包括用于表明第二电子设备与网关设备之间是基于第一通信协议进行通信的指示信息。

在具体实施过程中,接收模块201和协议处理模块202可以是独立的单元,也可以是集成在服务器内核中的功能模块,在本发明实施例中不作限制。

在一种可能的实施方式中,协议处理模块202基于第一信息,将第一信息转换为具有预定信息格式的第二信息,可以包括:

确定第一信息具有的信息格式为第一信息格式;

若第一信息格式与预定信息格式不相同,则基于第一信息所包括的信息内容和指示信息,生成具有预定信息格式的第二信息。

在一种可能的实施方式中,第二信息还可以包括用于识别第二电子设备的第一设备识别信息,并且网关设备还可以包括设备注册模块,用于:

在协议处理模块202将第一信息转换为具有预定信息格式的第二信息之后,确定与第一设备识别信息对应的第一网络通信地址;其中,第一网络通信地址为预定网络通信地址库中当前未被分配的任一网络通信地址;

为第二电子设备分配第一网络通信地址,以使第二电子设备在与网关设备保持当前通信连接的连接状态内基于第一网络通信地址进行通信。

在一种可能的实施方式中,设备注册模块确定与第一设备识别信息对应的第一网络通信地址,可以包括:

通过查找设备注册表,确定第一设备识别信息是否存在于设备注册表中;其中,设备注册表包括已经被分配网络通信地址的设备与分别对应分配的网络通信地址的对应关系;

若第一设备识别信息未存在于设备注册表中,则确定预定网络通信地址库中当前未被分配的任一网络通信地址为第一网络通信地址。

在一种可能的实施方式中,网关设备还可以包括心跳保活模块,用于:

在设备注册模块为第二电子设备分配第一网络通信地址之后,以预定频率向第二电子设备发送在线确认信息;其中,在线确认信息用于指示第二电子设备向网关设备发送在线响应信息;

若在预定时长内未接收第二电子设备发送的在线响应信息,则从设备注册表中删除第一设备识别信息与对应的网络通信地址的对应关系。

在一种可能的实施方式中,第二消息还可以包括用于表明第一信息需要传输至的目标设备的目标设备信息,网关设备还可以包括信息识别模块和发送模块,其中:

信息识别模块,用于在协议处理模块202将第一信息转换为具有预定信息格式的第二信息之后,基于目标设备信息,确定目标设备与网关设备之间进行通信的第二通信协议与第一通信协议不同;

协议处理模块202还可以用于:

将第二信息转换为具有第二信息格式的第三信息;其中,第二信息格式为与第二通信协议对应的信息格式;

发送模块,用于向目标设备发送第三信息。

在一种可能的实施方式中,第二信息还可以包括用于识别第二电子设备的第一设备识别信息和第一消息体数据,网关设备还包括信息存储模块,用于:

在协议处理模块202将第一信息转换为具有预定信息格式的第二信息之后,基于第一设备识别信息,确定用于存储第二电子设备所发送的信息的第一数据存储区;

将第一消息体数据存储至第一数据存储区;

根据第一消息体数据,获得第二电子设备发送的第一数据流;其中,第一数据流包括第一消息体数据;

将第一数据流存储至与第一数据存储区不同的第二数据存储区。

由于本发明实施例提供的网关设备可以用于执行前述的信息处理方法,因此对于本发明实施例中的网关设备所包括的各功能模块所能够实现的功能及一些实现过程可参考前述的信息处理方法的实施例部分的描述,在此不再赘述。

请参见图10,基于同一发明构思,本发明实施例还提供一种电子设备,该电子设备包括存储器301和处理器302,存储器301和处理器302可以通过总线300连接,或者也可以通过专门的连接线连接。图10中以通过总线300连接为例。其中存储器301用于存储指令,处理器303用于执行存储器301所存储的指令,以在执行指令时可以执行如前述的信息处理方法所包括的步骤。

本发明实施例中的电子设备可以是路由器、网关设备、交换机等网络连接设备,也可以是其它需要进行数据交互且具有前述网络连接设备的功能的电子设备,例如手机、平板电脑、个人电脑、笔记本电脑、穿戴式电子设备等电子设备,本发明实施例对于电子设备具体为何种设备不做限定。

另外,本发明实施例中的电子设备还可以包括多个不同类型的通信模块,例如wifi模块、蓝牙模块、lorawan模块、以太网模块,等等,对于多个不同类型的通信模块具体包括哪些通信模块,可以根据实际需求进行调整,本发明实施例对此不作限制。通过这些通信模块可以与其它电子设备进行通信,当然,不同类型的通信模块所采用的通信协议可以不同。

处理器302具体可以是cpu(中央处理器),或者可以是asic(applicationspecificintegratedcircuit,特定应用集成电路),或者可以是mpu(microprocessorunit,微处理器)或者可以是一个或多个用于控制程序执行的集成电路,可以是基带芯片,等等。

存储器301的数量可以是一个或多个。存储器301可以包括rom(readonlymemory,只读存储器)、ram(randomaccessmemory,随机存取存储器)或磁盘存储器,等等。

通过对处理器302进行设计编程,可以将前述的信息处理方法所对应的代码固化到芯片内,从而使芯片在运行时能够执行前述的信息处理方法,如何对处理器302进行设计编程为本领域技术人员所公知的技术,这里不再赘述。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1