一种节点间建立消息订阅关系的方法、装置和系统的制作方法

文档序号:9891509阅读:534来源:国知局
一种节点间建立消息订阅关系的方法、装置和系统的制作方法
【技术领域】
[0001] 本发明涉及物联网技术领域,尤其涉及一种节点间建立消息订阅关系的方法、装 直和系统。
【背景技术】
[0002] 现有的物联网技术通常是按照设计者预先设想好的物联网业务逻辑来组织设备 之间的通信连接和消息传递。比如,一个自动的照明控制系统由Η台设备组成,一台用于检 测房间内光照强度的光照传感器、一台用于检测房间内是否有人的生物传感器和一台控制 照明等开关的控制器。设计者设想的业务逻辑为当房间中有人且光照强度低于口限值时开 启照明,当房间中没有人时关闭照明。于是设备之间的连接方式和消息发送与接收机制就 确定了。现有的物联网应用全部是W此种方式建立起来的。送种方法固然简单,但是它也 带来了业务逻辑组织固定、扩展困难、极易形成物联网信息孤岛的问题。

【发明内容】

[0003] 本发明实施例提供一种节点间建立消息订阅关系的方法、装置和系统,用W解决 现有技术中存在的业务逻辑组织固定、扩展困难、极易形成物联网信息孤岛的问题。
[0004] 本发明实施例采用W下技术方案:
[0005] 本发明实施例提供了一种节点间建立消息订阅关系的方法,包括:
[0006] 第一节点接收控制服务器推送的第一消息;
[0007] 根据预先设置的能识别的消息类型,判断是否能识别所述第一消息,W及所述第 一节点与所述第一消息的源发送节点是否存在消息订阅关系;
[0008] 当判断出能够识别所述第一消息,且所述第一节点与所述第一消息的源发送节点 不存在消息订阅关系时,建立与所述第一消息的源发送节点的消息订阅关系;
[0009] 当判断出能够识别所述第一消息,且所述第一节点与所述第一消息的源发送节 点存在消息订阅关系,或者判断出不能识别所述第一消息时,将所述第一消息转发给所述 控制服务器,由所述控制服务器将所述第一消息继续推送给除所述第一节点之外的其它节 点,使所述其它节点能够通过判断是否能够识别所述第一消息,W及自身与所述第一消息 的源发送节点是否存在消息订阅关系来确定是否与所述第一消息的源发送节点建立消息 订阅关系。
[0010] 可选的,判断是否能够识别所述第一消息,具体包括:
[0011] 当能够正确解析所述第一消息,并获取所述第一消息的源发送节点,W及所述接 收的消息满足下述任意一个条件时,确定能够识别所述第一消息;否则,确定不能识别所述 第一消息;
[0012] 所述条件包括:所述第一消息能够触发所述第一节点的状态发生变更、能够触发 所述第一节点执行特定动作和能够触发所述第一节点发布新消息。
[0013] 可选的,判断所述第一节点与所述第一消息的源发送节点是否存在消息订阅关 系,具体包括:
[0014] 当获取所述第一消息的源发送节点时,根据获取的所述第一消息的源发送节点, W及预先存储的与自身存在消息订阅关系的订阅对象,判断所述第一节点与所述第一消息 的源发送节点是否存在消息订阅关系;
[0015] 当获取不到所述第一消息的源发送节点时,确定所述第一节点与所述第一消息的 源发送节点不存在消息订阅关系。
[0016] 可选的,当判断出能够识别所述第一消息,且所述第一节点与所述第一消息的源 发送节点存在消息订阅关系,或者判断出不能识别所述第一消息时,将所述第一消息转发 给所述控制服务器,具体包括:
[0017] 当判断出能够识别所述第一消息,且所述第一节点与所述第一消息的源发送节点 存在消息订阅关系时,将所述第一消息W第一概率转发给所述控制服务器;
[0018] 当判断出不能识别所述第一消息,且所述第一节点与所述第一消息的源发送节点 存在消息订阅关系时,将所述第一消息W第二概率转发给所述控制服务器;
[0019] 当判断出不能识别所述第一消息,且所述第一节点与所述第一消息的源发送节点 不存在消息订阅关系时,将所述第一消息W第四概率转发给所述控制服务器;
[0020] 其中,所述第一概率大于所述第二概率,所述第二概率大于所述第四概率。
[0021] 可选的,当判断出不能识别所述第一消息,且所述第一节点与所述第一消息的源 发送节点存在消息订阅关系时,所述方法还包括:
[0022] 按照预设规则记录来自所述第一消息的源发送节点的不能识别的消息的数量;其 中,所述预设规则包括:当接收到来自所述第一消息的源发送节点的能识别的消息时,将所 述数量初始化归零;当接收到来自所述第一消息的源发送节点的不能识别的消息时,将所 述数量加1 ;
[0023] 当所述数量达到预设阔值时,解除与所述第一消息的源发送节点的消息订阅关 系。
[0024] 可选的,建立与所述第一消息的源发送节点的消息订阅关系之后,所述方法还包 括:
[0025] 将所述第一消息W第Η概率转发给所述控制服务器;其中,所述第Η概率等于所 述第一概率。
[0026] 本发明实施例提供了一种节点间建立消息订阅关系的方法,包括:
[0027] 控制服务器接收源发送节点为第一节点的第一消息;
[0028] 所述控制服务器将所述第一消息推送给除所述第一节点之外的其它节点,使所述 其它节点能够通过判断自身是否能够识别所述第一消息,W及自身与所述第一节点是否存 在消息订阅关系来确定是否与所述第一节点建立消息订阅关系。
[0029] 可选的,所述其它节点包括:
[0030] 与所述第一消息的上一个发送方存在消息订阅关系的节点,W及除所述第一节点 和与所述第一节点存在消息订阅关系的节点之外的节点中的部分节点。
[0031] 本发明实施例提供了一种节点间建立消息订阅关系的装置,包括:
[0032] 接收单元,用于接收控制服务器推送的第一消息;
[0033] 判断单元,用于判断是否能识别所述接收单元接收的第一消息,W及所述装置与 所述第一消息的源发送节点是否存在消息订阅关系;
[0034] 消息订阅关系建立单元,用于当所述判断单元判断出能够识别所述第一消息,且 所述装置与所述第一消息的源发送节点不存在消息订阅关系时,建立所述装置与所述第一 消息的源发送节点的消息订阅关系;
[0035] 第一转发单元,用于当所述判断单元判断出能够识别所述第一消息,且所述装置 与所述第一消息的源发送节点存在消息订阅关系,或者判断出不能识别所述第一消息时, 将所述第一消息转发给所述控制服务器,由所述控制服务器将所述第一消息继续推送给除 所述装置之外的其它节点,使所述其它节点能够通过判断是否能够识别所述第一消息,W 及自身与所述第一消息的源发送节点是否存在消息订阅关系来确定是否与所述第一消息 的源发送节点建立消息订阅关系。
[0036] 可选的,所述判断单元,具体用于:
[0037] 当能够正确解析所述第一消息,并获取所述第一消息的源发送节点,W及所述接 收的消息满足下述任意一个条件时,确定能够识别所述第一消息;否则,确定不能识别所述 第一消息;
[0038] 所述条件包括;所述第一消息能够触发所述装置的状态发生变更、能够触发所述 装置执行特定动作和能够触发所述装置发布新消息。
[0039] 可选的,所述判断单元,具体用于:
[0040] 当获取所述第一消息的源发送节点时,根据获取的所述第一消息的源发送节点, W及预先存储的与自身存在消息订阅关系的订阅对象,判断所述装置与所述第一消息的源 发送节点是否存在消息订阅关系;
[0041] 当获取不到所述第一消息的源发送节点时,确定所述装置与所述第一消息的源发 送节点不存在消息订阅关系。
[0042] 可选的,所述第一转发单元,具体包括:
[0043] 第一转发模块,用于当判断出能够识别所述第一消息,且所述装置与所述第一消 息的源发送节点存在消息订阅关系时,将所述第一消息W第一概率转发给所述控制服务 器;
[0044] 第二转发模块,用于当判断出不能识别所述第一消息,且所述装置与所述第一消 息的源发送节点存在消息订阅关系时,将所述第一消息W第二概率转发给所述控制服务 器;
[0045] 第Η转发模块,用于当判断出不能识别所述第一消息,且所述装置与所述第一消 息的源发送节点不存在消息订阅关系时,将所述第一消息W第四概率转发给所述控制服务 器;其中,所述第一概率大于所述第二概率,所述第二概率大于所述第四概率。
[0046] 可选的,所述装置还包括:
[0047] 记录单元,用于当判断出不能识别所述第一消息,且所述装置与所述第一消息的 源发送节点存在消息订阅关系时,记录来自所述第一消息的源发送节点的不能识别的消息 的数量;其中,所述数量满足:当接收到来自所述第一消息的源发送节点的能识别的消息 时,将所述数量初始化归零;当接收到来自所述第一消息的源发送节点的不能识别的消息 时,将所述数量加1 ;
[0048] 消息订阅关系解除单元,用于当所述记录单元记录的数量达到预设阔值时,解除 所述装置与所述第一消息的源发送节点的消息订阅关系。
[0049] 可选的,所述装置还包括:
[0050] 第二转发单元,用于建立所述装置与所述第一节点的消息订阅关系之后,将所述 第一消息W第Η概率转发给所述控制服务器;其中,所述第Η概率等于所述第一概率。
[0051] 本发明实施例提供了一种节点间建立消息订阅关系的装置,包括:
[0052] 接收单元,用于接收源发送节点为第一节点的第一消息;
[0053] 推送单元,用于将所述接收单元接收的
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1