设备间通信方法、装置、设备和存储介质制造方法及图纸

技术编号:22366686 阅读:12 留言:0更新日期:2019-10-23 05:32
本申请实施例提供了一种设备间通信方法、装置、设备和存储介质,以解决跨设备的Topic授权的通信问题。所述的方法包括:建立源路径和至少一个目的路径的路由关系;依据接收的消息查询所述路由关系,确定至少一个目的路径和路由个数;依据所述路由个数选择消息发送方式;按照所述消息发送方式发送所述消息。无需通过跨设备的路径授权的方式通信,对于接收的消息可查询所述路由关系,使得消息发送更加灵活,也不会出现越权使用的问题。

Communication method, device, equipment and storage medium between equipment

【技术实现步骤摘要】
设备间通信方法、装置、设备和存储介质
本申请涉及计算机
,特别是涉及一种设备间通信方法、一种设备间通信装置、一种服务器、一种路由网关和一种存储介质。
技术介绍
物联网(InternetofThings,IoT)是物物相连的互联网,随着物联网的兴起,物联网设备也越来越多样化。物联网设备需要联网实现与其他物联网设备之间,以及与云端的服务器之间的交互通信,来进行消息传递、设备控制等。目前,物联网设备之间交互通常是通过互相订阅对方的路径(Topic),然后向对方路径中发送消息来实现的,但是这种跨设备的路径授权难以管理,容易造成越权使用的问题。
技术实现思路
本申请实施例提供了一种设备间通信方法,以解决跨设备的Topic授权的通信问题。相应的,本申请实施例还提供了一种设备间通信装置、一种服务器、一种路由网关和一种存储介质,用以保证上述系统的实现及应用。为了解决上述问题,本申请实施例公开了一种设备间通信方法,所述的方法包括:建立源路径和至少一个目的路径的路由关系;依据接收的消息查询所述路由关系,确定至少一个目的路径和路由个数;依据所述路由个数选择消息发送方式;按照所述消息发送方式发送所述消息。本申请实施例还公开了一种设备间通信装置,所述的装置包括:路由建立模块,用于建立源路径和至少一个目的路径的路由关系;消息处理模块,用于依据接收的消息查询所述路由关系,确定至少一个目的路径和路由个数;方式选择模块,用于依据所述路由个数选择消息发送方式;消息发送模块,用于按照所述消息发送方式发送所述消息。本申请实施例还公开了一种服务器,包括:处理器;和存储器,其上存储有可执行代码,当所述可执行代码被执行时,使得所述处理器执行如本申请实施例中一个或多个所述的设备间通信方法。本申请实施例还公开了一个或多个机器可读介质,其上存储有可执行代码,当所述可执行代码被执行时,使得处理器执行如本申请实施例中一个或多个所述的设备间通信方法。本申请实施例还公开了一种设备间通信方法,应用于基于消息队列遥测传输MQTT技术构建的系统中,所述的方法包括:路由网关依据请求,建立源路径和至少一个目的路径的路由关系,所述源路径属于源物联网设备;依据源物联网设备的消息查询所述路由关系,确定至少一个目的路径和路由个数;依据所述路由个数选择消息发送方式;按照所述消息发送方式将消息写入对应的消息箱中,并推送给所述目的路径对应的目的物联网设备。本申请实施例还公开了一种设备间通信装置,应用于基于消息队列遥测传输MQTT技术构建的系统中,所述的装置包括:路由配置模块,用于路由网关依据请求,建立源路径和至少一个目的路径的路由关系,所述源路径属于源物联网设备;查询模块,用于依据源物联网设备的消息查询所述路由关系,确定至少一个目的路径和路由个数;判断模块,用于依据所述路由个数选择消息发送方式;发送模块,用于按照所述消息发送方式将消息写入对应的消息箱中,并推送给所述目的路径对应的目的物联网设备。本申请实施例还公开了一种路由网关,包括:处理器;和存储器,其上存储有可执行代码,当所述可执行代码被执行时,使得所述处理器执行如本申请实施例所述的设备间通信方法。本申请实施例还公开了一个或多个机器可读介质,其上存储有可执行代码,当所述可执行代码被执行时,使得处理器执行本申请实施例所述的设备间通信方法。与现有技术相比,本申请实施例包括以下优点:在本申请实施例中可建立源路径和至少一个目的路径的路由关系,从而无需通过跨设备的路径授权的方式通信,对于接收的消息可查询所述路由关系,确定至少一个目的路径和路由个数,然后依据路由个数选择消息发送方式,按照所述消息发送方式发送所述消息,使得消息发送更加灵活,也不会出现越权使用的问题。附图说明图1是本申请实施例的一种路由关系建立的示意图;图2是本申请实施例中一种路由关系删除的示意图;图3是本申请实施例中一种设备间通信的交互示意图;图4是本申请实施例中另一种设备间通信的交互示意图;图5是本申请一种设备间通信方法实施例的步骤流程图;图6是本申请另一种设备间通信方法实施例的步骤流程图;图7是本申请一种应用于MQTT场景的设备间通信方法实施例的步骤流程图;图8是本申请一种设备间通信装置实施例的结构框图;图9是本申请另一种设备间通信装置实施例的结构框图;图10是本申请一种应用于MQTT场景的设备间通信装置实施例的结构框图;图11是本申请一实施例提供的装置的结构示意图。具体实施方式为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。本申请实施例可应用于MQTT(MessageQueuingTelemetryTransport,消息队列遥测传输)技术。现有的MQTT中需要进行跨设备的Topic授权,授权后设备端还需要订阅才能收到对应Topic的消息,导致Topic权限管理混乱,且容易出现非法越权使用的问题。而本申请实施例不需要跨设备授权,而是建立源路径和至少一个目的路径的路由关系,便于权限管理,不会出现越权使用的问题。因此可以先建立源路径和至少一个目的路径的路由关系,如图1所示。系统中包括:用户设备10、接口网关20、路由网关30和存储设备40。其中,用户设备10可以为物联网设备,也可为物联网设备的控制设备如手机、电脑等电子设备,用户可以在用户设备10上操作来建立或删除路由关系。接口网关20为服务端设备,用于对校验用户权限,以及转发消息。路由(router)网关30为服务端设备,用于管理路由关系。存储设备40为服务端设备,用于存储和管理数据。在步骤102中,用户可以通过用户设备调用服务端的应用程序编程接口(ApplicationProgrammingInterface,API),发送添加路由关系的消息给接口网关20,其中包括源路径和需要添加的至少一个目的路径,因此可采用添加目的路径列表确定目的路径。接口网关20在接收到添加路由关系的消息后,可以进行权限校验。其中,为了防止跨账号添加路径(Topic),可以在步骤104中校验源路径的权限,其中,路径Topic中包括各种资源信息,如产品和设备的信息,其中,可以查询产品所属用户的ID和添加Topic路由的用户ID是否一致来判断权限关系,若一致则具有权限,若不一致则不具有权限。其中,设备信息可包括设备标识等,可用于订阅所需的权限,如订阅权限、发布权限等。并且,在步骤106中接口网关20还可校验目的路径的权限,如校验是否具有发布消息的权限等,对于目的路径所需权限可依据设置确定。在确定具有目的路径的权限后,接口网关20在步骤108中调用路由服务接口发送路由添加消息给路由网关30,在步骤110中路由网关30依据该路由添加消息确定源路径和至少一个目的路径,然后分别建立该源路径和各目的路径的路由关系并写入到存储设备40中,其中,针对每个目的路径分别建立源路径和目的路径的正向路由关系和反向路由关系,并且可记录该源路径对应正向路由关系的路由个数。其中,正向路由关系指的是源路径(Topic)到目的路径(Topic)的关系,该正向路由关系可用于查询根据源Topic可以路由到的目的Topic;反向路由关系指的是目的路径到源路径的关系,基于该反向路由关系可以查询出路由到该目的路径的源路径。该本文档来自技高网...

【技术保护点】
1.一种设备间通信方法,其特征在于,包括:建立源路径和至少一个目的路径的路由关系;依据接收的消息查询所述路由关系,确定至少一个目的路径和路由个数;依据所述路由个数选择消息发送方式;按照所述消息发送方式发送所述消息。

【技术特征摘要】
1.一种设备间通信方法,其特征在于,包括:建立源路径和至少一个目的路径的路由关系;依据接收的消息查询所述路由关系,确定至少一个目的路径和路由个数;依据所述路由个数选择消息发送方式;按照所述消息发送方式发送所述消息。2.根据权利要求1所述的方法,其特征在于,所述建立源路径和至少一个目的路径的路由关系,包括:接收路由添加消息,从所述路由添加消息中获取源路径和至少一个目的路径;依据所述源路径和至少一个目的路径,建立正向路由关系和反向路由关系,并记录所述正向路由关系的路由个数。3.根据权利要求2所述的方法,其特征在于,所述依据接收的消息查询所述路径路由关系,确定至少一个目的路径和路由个数,包括:确定接收的消息对应的源路径;依据所述源路径查询至少一个目的路径,并确定所述源路径对应正向路由关系的路由个数。4.根据权利要求1所述的方法,其特征在于,依据所述目的路径的个数选择消息发送方式,包括:判断所述路由个数是否超出个数阈值;若所述路由个数未超出个数阈值,选择第一消息发送方式;若所述路由个数超出个数阈值,选择第二消息发送方式。5.根据权利要求4所述的方法,其特征在于,所述消息发送方式包括第一消息发送方式;所述按照所述消息发送方式发送所述消息,包括:生成所述消息的消息标识;将所述消息写入所述目的路径的接收消息箱,并推送给所述目的路径对应的设备。6.根据权利要求5所述的方法,其特征在于,所述推送给所述目的路径对应的设备,包括:拉取所述目的路径的接收消息箱中的消息,将所述消息推送给所述目的路径对应的设备。7.根据权利要求5或6所述的方法,其特征在于,还包括:更新所述目的路径的接收消息箱中消息的第一处理进度。8.根据权利要求4所述的方法,其特征在于,所述消息发送方式包括第二消息发送方式;所述按照所述消息发送方式发送所述消息,包括:生成所述消息的消息标识;将所述消息写入所述源路径的发送消息箱,并推送给所述目的路径对应的设备。9.根据权利要求8所述的方法,其特征在于,所述推送给所述目的路径对应的设备,包括:代理所述目的路径对应的设备拉取所述源路径的发送消息箱中的消息,将所述消息推送给所述目的路径对应的设备。10.根据权利要求8或9所述的方法,其特征在于,还包括:更新所述目的路径从所述源路径的发送消息箱中获取消息的第二处理进度。11.根据权利要求4-10任一所述的方法,其特征在于,所述第一消息发送方式包括:设备间消息发送方式;所述第二消息发送方式包括:广播消息发送方式。12.根据权利要求2所述的方法,其特征在于,还包括:依据路由删除消息,删除源路径和目的路径之间的正向路由关系和反向路由关系,并减少所述正向路由关系的路由个数。13.一种设备间通信装置,其特征在于,所述的装置包括:路由建立模块,用于建立源路径和至少一个目的路径的路由关系;消息处理模块,用于依据接收的消息查询所述路由关系,确定至少一个目的路径和路由个数;方式选择模块,用于依据所述路由个数选择消息发送方式;消息发送模块,用于按照所述消息发送方式发送所述消息。14.根据权利要求13所述的装置,其特征在于,所述路由建立模块,包括:接收子模块,用于接收路由添加消息,从所述路由添加消息中获取源路径和至少一个目的路径;建立子模块,用于依据所述源路径和至少一个目的路径,建立正向路由关系和反向路由关系,并记录所述正向路由关系的路由个数。15.根据权利要求14所述的装置,其特征在于,所述消息处理模块,用于确定接收的消息对应的源路径;依据所述源路径查询至少一个目的路径,并确定所述源路径对应正向路由关系的路由个数。16...

【专利技术属性】
技术研发人员:张宇张祥勇吕建文阮体洪
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1