CN110912808B - 消息订阅方法、装置、系统、设备终端和可读存储介质 - Google Patents
消息订阅方法、装置、系统、设备终端和可读存储介质 Download PDFInfo
- Publication number
- CN110912808B CN110912808B CN201911205241.9A CN201911205241A CN110912808B CN 110912808 B CN110912808 B CN 110912808B CN 201911205241 A CN201911205241 A CN 201911205241A CN 110912808 B CN110912808 B CN 110912808B
- Authority
- CN
- China
- Prior art keywords
- publishing
- node
- message
- message subscription
- subscription
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/214—Monitoring or handling of messages using selective forwarding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/566—Grouping or aggregating service requests, e.g. for unified processing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明涉及消息订阅方法、装置、系统、设备终端和可读存储介质,该消息订阅方法通过接收消息订阅节点发送的消息订阅请求信息,消息订阅请求信息包括消息订阅话题、消息订阅类型以及消息订阅密匙,根据消息订阅话题、消息订阅类型以及消息订阅密匙查找节点管理数据库以匹配获取目标消息发布节点,目标消息发布节点的发布话题与消息订阅话题一致、发布话题类型与消息订阅类型一致以及发布密匙与消息订阅密匙一致,当查找匹配到目标消息发布节点时,获取对应的发布节点属性信息,将发布节点属性信息发送至消息订阅节点以使消息订阅节点与目标消息发布节点建立订阅通信连接,提高机器人操作系统的控制过程的安全性。
Description
技术领域
本发明涉及控制领域,尤其涉及一种消息订阅方法、装置、系统、设备终端和可读存储介质。
背景技术
在机器人操作系统ROS(Robot Operating System,ROS)中,节点之间的通信通常采用“发布-订阅机制”,只要系统环境变量例如ROS_MASTER_URI变量所指定的服务器有同名话题进行发布,订阅节点就会接收到对应的话题内容,并发送至自动驾驶车AGV(Automated Guided Vehicle,AGV)以进行控制,然而,当系统环境变量例如ROS_MASTER_URI变量所指定的服务器有多余的同名话题被恶意发送至订阅节点时,显然会给机器人操作系统ROS的控制过程带来隐患。
发明内容
鉴于此,本发明提供一种消息订阅方法、装置、系统、设备终端和可读存储介质,能够通过节点管理器对目标消息发布节点的身份信息进行鉴别,避免消息订阅节点获取到错误的或者多余的消息,进而提高机器人操作系统的控制过程的安全性。
一种消息订阅方法,应用于机器人操作系统,所述消息订阅方法包括:
接收消息订阅节点发送的消息订阅请求信息,所述消息订阅请求信息包括消息订阅话题、消息订阅类型以及消息订阅密匙;
根据所述消息订阅话题、消息订阅类型以及消息订阅密匙查找节点管理数据库以匹配获取目标消息发布节点,所述目标消息发布节点的发布话题与所述消息订阅话题一致、发布话题类型与所述消息订阅类型一致以及发布密匙与所述消息订阅密匙一致;
当查找匹配到所述目标消息发布节点时,获取对应的发布节点属性信息,所述发布节点属性信息包括发布节点名称以及发布节点IP地址;
将所述发布节点属性信息发送至所述消息订阅节点以使所述消息订阅节点根据所述发布节点名称和所述发布节点IP地址与所述目标消息发布节点建立订阅通信连接。
在一个实施例中,所述根据所述消息订阅话题、消息订阅类型以及消息订阅密匙查找节点管理数据库以匹配对应的目标消息发布节点的步骤之前还包括:
接收目标消息发布节点发送的发布节点注册信息以形成所述节点管理数据库,所述发布节点注册信息包括发布节点名称、发布节点IP、发布话题、发布话题类型和发布密匙。
在一个实施例中,所述根据所述消息订阅话题、消息订阅类型以及消息订阅密匙查找节点管理数据库以匹配获取目标消息发布节点的步骤包括:
在所述节点管理数据库的所有发布节点中查找对应发布话题与所述消息订阅话题一致的发布节点,得到第一发布节点集合;
根据所述消息订阅类型在所述第一发布节点集合中查找获取发布话题类型与所述消息订阅类型一致的发布节点,得到第二发布节点集合;
根据所述消息订阅密匙在所述第二发布节点集合中查找获取发布密匙与所述消息订阅密匙一致的发布节点作为目标消息发布节点。
此外,还提供一种消息订阅装置,应用于机器人操作系统,所述消息订阅装置包括:
请求信息接收模块,用于接收消息订阅节点发送的消息订阅请求信息,所述消息订阅请求信息包括消息订阅话题、消息订阅类型以及消息订阅密匙;
发布节点查找模块,用于根据所述消息订阅话题、消息订阅类型以及消息订阅密匙查找节点管理数据库以匹配获取目标消息发布节点,所述目标消息发布节点的发布话题与所述消息订阅话题一致、发布话题类型与所述消息订阅类型一致以及发布密匙与所述消息订阅密匙一致;
属性信息获取模块,用于当查找匹配到所述目标消息发布节点时,获取对应的发布节点属性信息,所述发布节点属性信息包括发布节点名称以及发布节点IP地址;
属性信息发送模块,用于将所述发布节点属性信息发送至所述消息订阅节点以使所述消息订阅节点根据所述发布节点名称和所述发布节点IP地址与所述目标消息发布节点建立订阅通信连接。
在一个实施例中,所述消息订阅装置还包括:
数据库建立模块,用于接收目标消息发布节点发送的发布节点注册信息以形成所述节点管理数据库,所述发布节点注册信息包括发布节点名称、发布节点IP、发布话题、发布话题类型和发布密匙。
此外,还提供一种消息订阅系统,应用于机器人操作系统,所述消息订阅系统包括目标消息发布节点、节点管理器和消息订阅节点;
所述消息订阅节点用于向节点管理器发送消息订阅请求信息,所述消息订阅请求信息包括消息订阅话题、消息订阅类型以及消息订阅密匙;
所述节点管理器用于根据所述消息订阅话题、消息订阅类型以及消息订阅密匙查找节点管理数据库以匹配获取目标消息发布节点,所述目标消息发布节点的发布话题与所述消息订阅话题一致、发布话题类型与所述消息订阅类型一致以及发布密匙与所述消息订阅密匙一致;
所述节点管理器还用于当查找匹配到所述目标消息发布节点时,获取对应的发布节点属性信息,所述发布节点属性信息包括发布节点名称以及发布节点IP地址,将所述发布节点属性信息发送至所述消息订阅节点;
所述消息订阅节点还用于根据所述发布节点名称和所述发布节点IP地址与所述目标消息发布节点建立订阅通信连接。
在一个实施例中,所述节点管理器还用于接收目标消息发布节点发送的发布节点注册信息以形成所述节点管理数据库,所述发布节点注册信息包括发布节点名称、发布节点IP、发布话题、发布话题类型和发布密匙。
在一个实施例中,所述节点管理器用于在节点管理数据库的所有发布节点中查找对应发布话题与所述消息订阅话题一致的发布节点,得到第一发布节点集合,根据所述消息订阅类型在所述第一发布节点集合中查找获取发布话题类型与所述消息订阅类型一致的发布节点,得到第二发布节点集合,根据所述消息订阅密匙在所述第二发布节点集合中查找获取发布密匙与所述消息订阅密匙一致的发布节点作为目标消息发布节点。
此外,还提供一种设备终端,包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述设备终端执行上述消息订阅方法。
此外,还提供一种可读存储介质,所述可读存储介质存储有计算机程序,所述计算机程序在被处理器执行时实施上述消息订阅方法。
上述消息订阅方法,应用于机器人操作系统,通过接收消息订阅节点发送的消息订阅请求信息,消息订阅请求信息包括消息订阅话题、消息订阅类型以及消息订阅密匙,根据消息订阅话题、消息订阅类型以及消息订阅密匙查找节点管理数据库以匹配获取目标消息发布节点,目标消息发布节点的发布话题与消息订阅话题一致、发布话题类型与消息订阅类型一致以及发布密匙与消息订阅密匙一致,当查找匹配到目标消息发布节点时,获取对应的发布节点属性信息,发布节点属性信息包括发布节点名称以及发布节点IP地址,将发布节点属性信息发送至消息订阅节点以使消息订阅节点根据发布节点名称和发布节点IP地址与目标消息发布节点建立订阅通信连接,能够通过节点管理器对目标消息发布节点的身份信息进行鉴别,以确保目标消息发布节点的发布话题与消息订阅话题一致、发布话题类型与消息订阅类型一致以及发布密匙与消息订阅密匙一致,避免消息订阅节点获取到错误的或者多余的消息,进而提高机器人操作系统的控制过程的安全性。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对本发明保护范围的限定。在各个附图中,类似的构成部分采用类似的编号。
图1为一个实施例中一种消息订阅方法的流程示意图;
图2为另一个实施例中一种消息订阅方法的流程示意图;
图3为一个实施例中得到目标消息发布节点的方法流程示意图;
图4为一个实施例中一种消息订阅装置的结构框图;
图5为另一个实施例中一种消息订阅装置的结构框图;
图6为一个实施例中一种消息订阅系统的结构框图。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
在下文中,将更全面地描述本公开的各种实施例。本公开可具有各种实施例,并且可在其中做出调整和改变。然而,应理解:不存在将本公开的各种实施例限于在此公开的特定实施例的意图,而是应将本公开理解为涵盖落入本公开的各种实施例的精神和范围内的所有调整、等同物和/或可选方案。
在下文中,可在本发明的各种实施例中使用的术语“包括”、“具有”及其同源词仅意在表示特定特征、数字、步骤、操作、元件、组件或前述项的组合,并且不应被理解为首先排除一个或更多个其它特征、数字、步骤、操作、元件、组件或前述项的组合的存在或增加一个或更多个特征、数字、步骤、操作、元件、组件或前述项的组合的可能性。
此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
除非另有限定,否则在这里使用的所有术语(包括技术术语和科学术语)具有与本发明的各种实施例所属领域普通技术人员通常理解的含义相同的含义。所述术语(诸如在一般使用的词典中限定的术语)将被解释为具有与在相关技术领域中的语境含义相同的含义并且将不被解释为具有理想化的含义或过于正式的含义,除非在本发明的各种实施例中被清楚地限定。
图1为一个实施例中提供的一种消息订阅方法,应用于机器人操作系统,该消息订阅方法包括:
步骤S110,接收消息订阅节点发送的消息订阅请求信息,消息订阅请求信息包括消息订阅话题、消息订阅类型以及消息订阅密匙。
其中,机器人操作系统ROS启动后,首先启动roscore命令,然后ROS master(节点管理器)启动、rosout节点(日志输出节点)启动,parameter server(参数服务器)启动,其中,parameter server用于存储参数配置,rosout节点用于告知用户当前系统的状态,输出机器人操作系统的error和warning等,并且将log记录于日志文件中。
当ROS master节点管理器启动后,进一步接收消息订阅节点的注册信息,例如消息订阅节点的IP地址以及名称信息,然后进一步接收消息订阅节点发送的消息订阅请求信息,其中,消息订阅请求信息包括消息订阅话题、消息订阅类型以及消息订阅密匙,消息订阅话题表示消息订阅节点订阅内容所对应的话题,消息订阅类型表示消息订阅节点订阅内容所对应的话题类型,消息订阅密匙表示消息订阅节点订阅内容所对应设置的订阅校验密匙。
在一个实施例中,以发布函数为例,通过Python语言来实现,Publisheradvertise(const std::string&topic,uint32_t queue_size,bool latch=false,conststd::string&passwd=“”)分别包含了消息订阅话题、消息订阅类型以及消息订阅密匙的限制。
步骤S120,根据消息订阅话题、消息订阅类型以及消息订阅密匙查找节点管理数据库以匹配获取目标消息发布节点,目标消息发布节点的发布话题与消息订阅话题一致、发布话题类型与消息订阅类型一致以及发布密匙与消息订阅密匙一致。
其中,ROS master节点管理器在获取消息订阅节点发送的消息订阅请求信息后,进一步根据消息订阅话题、消息订阅类型以及消息订阅密匙查找节点管理数据库以匹配获取目标消息发布节点,以使目标消息发布节点的发布话题与消息订阅话题一致、发布话题类型与消息订阅类型一致以及发布密匙与消息订阅密匙一致,从而对发布节点的身份进行校验。
步骤S130,当查找匹配到目标消息发布节点时,获取对应的发布节点属性信息,发布节点属性信息包括发布节点名称以及发布节点IP地址。
其中,节点管理数据中存储记录有发布节点属性信息,当查找匹配到目标消息发布节点时,ROS master节点管理器可进一步获取对应的发布节点属性信息,发布节点属性信息包括发布节点名称以及发布节点IP地址。
步骤S140,将发布节点属性信息发送至消息订阅节点以使消息订阅节点根据发布节点名称和发布节点IP地址与目标消息发布节点建立订阅通信连接。
其中,ROS master节点管理器在匹配获取到目标消息发布节点时,进一步将该目标消息发布节点的发布节点属性信息发送至消息订阅节点,消息订阅节点根据发布节点名称和发布节点IP地址与目标消息发布节点建立订阅通信连接,然后根据该订阅通信连接,消息订阅节点能够成功订阅目标消息发布节点对应的消息订阅话题。
上述消息订阅方法,应用于机器人操作系统,通过在消息订阅请求信息加入消息订阅密匙参数验证,使得目标消息发布节点的发布话题与消息订阅话题一致、发布话题类型与消息订阅类型一致以及发布密匙与消息订阅密匙一致,进而与目标消息发布节点建立订阅通信连接,通过节点管理器对目标消息发布节点的身份信息进行鉴别,避免消息订阅节点获取到错误的或者多余的消息,进而提高机器人操作系统的控制过程的安全性。
在一个实施例中,如图2所示,步骤S120之前还包括:
步骤S150,接收目标消息发布节点发送的发布节点注册信息以形成节点管理数据库,发布节点注册信息包括发布节点名称、发布节点IP、发布话题、发布话题类型和发布密匙。
其中,ROS master节点管理器启动后,可接收接收目标消息发布节点发送的发布节点注册信息,例如发布节点名称、发布节点IP、发布话题、发布话题类型和发布密匙,进而形成节点管理数据库。
在一个实施例中,如图3所示,步骤S120包括:
步骤S122,在节点管理数据库的所有发布节点中查找对应发布话题与消息订阅话题一致的发布节点,得到第一发布节点集合。
其中,ROS master节点管理器查找匹配目标消息发布节点时,一般需要根据消息订阅话题在节点管理数据库的所有发布节点中查找对应发布话题与消息订阅话题一致的发布节点,进而得到第一发布节点集合,以将对应发布话题与消息订阅话题不一致的发布节点排除在上述第一发布节点集合之外。
步骤S124,根据消息订阅类型在第一发布节点集合中查找获取发布话题类型与消息订阅类型一致的发布节点,得到第二发布节点集合。
其中,在得到第一发布节点集合之后,进一步根据消息订阅类型在第一发布节点集合中查找获取发布话题类型与消息订阅类型一致的发布节点,这样处理能够排除发布话题与消息订阅话题相同而类型不同的发布节点,进一步得到第二发布节点集合。
步骤S126,根据消息订阅密匙在第二发布节点集合中查找获取发布密匙与消息订阅密匙一致的发布节点作为目标消息发布节点。
在得到上述第二发布节点集合时,需要进一步在上述第二发布节点集合中查找获取发布密匙与消息订阅密匙一致的发布节点作为目标消息发布节点,通过判断发布密匙与消息订阅密匙是否一致,能够有效的避免同名话题的发布所造成的干扰。
此外,如图4所示,还提供一种消息订阅装置200,应用于机器人操作系统,消息订阅装置200包括:
请求信息接收模块210,用于接收消息订阅节点发送的消息订阅请求信息,消息订阅请求信息包括消息订阅话题、消息订阅类型以及消息订阅密匙;
发布节点查找模块220,用于根据消息订阅话题、消息订阅类型以及消息订阅密匙查找节点管理数据库以匹配获取目标消息发布节点,目标消息发布节点的发布话题与消息订阅话题一致、发布话题类型与消息订阅类型一致以及发布密匙与消息订阅密匙一致。
属性信息获取模块230,用于当查找匹配到目标消息发布节点时,获取对应的发布节点属性信息,发布节点属性信息包括发布节点名称以及发布节点IP地址。
属性信息发送模块240,用于将发布节点属性信息发送至消息订阅节点以使消息订阅节点根据发布节点名称和发布节点IP地址与目标消息发布节点建立订阅通信连接。
在一个实施例中,如图5所示,消息订阅装置200还包括:
数据库建立模块250,用于接收目标消息发布节点发送的发布节点注册信息以形成节点管理数据库,发布节点注册信息包括发布节点名称、发布节点IP、发布话题、发布话题类型和发布密匙。
此外,如图6所示,还提供一种消息订阅系统300,应用于机器人操作系统,消息订阅系统300包括目标消息发布节点310、节点管理器320和消息订阅节点330;
消息订阅节点330用于向节点管理器320发送消息订阅请求信息,消息订阅请求信息包括消息订阅话题、消息订阅类型以及消息订阅密匙;
节点管理器320用于根据消息订阅话题、消息订阅类型以及消息订阅密匙查找节点管理数据库以匹配获取目标消息发布节点310,目标消息发布节点310的发布话题与消息订阅话题一致、发布话题类型与消息订阅类型一致以及发布密匙与消息订阅密匙一致;
节点管理器320还用于当查找匹配到目标消息发布节点310时,获取对应的发布节点属性信息,发布节点属性信息包括发布节点名称以及发布节点IP地址,将发布节点属性信息发送至消息订阅节点330;
消息订阅节点330还用于根据发布节点名称和发布节点IP地址与目标消息发布节点310建立订阅通信连接。
在一个实施例中,节点管理器320还用于接收目标消息发布节点310发送的发布节点注册信息以形成节点管理数据库,发布节点注册信息包括发布节点名称、发布节点IP、发布话题、发布话题类型和发布密匙。
在一个实施例中,节点管理器320用于在节点管理数据库的所有发布节点中查找对应发布话题与消息订阅话题一致的发布节点,得到第一发布节点集合,根据消息订阅类型在第一发布节点集合中查找获取发布话题类型与消息订阅类型一致的发布节点,得到第二发布节点集合,根据消息订阅密匙在第二发布节点集合中查找获取发布密匙与消息订阅密匙一致的发布节点作为目标消息发布节点310。
此外,还提供一种设备终端,包括存储器以及处理器,存储器用于存储计算机程序,处理器运行计算机程序以使设备终端执行上述消息订阅方法。
此外,还提供一种可读存储介质,可读存储介质存储有计算机程序,计算机程序在被处理器执行时实施上述消息订阅方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和结构图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,结构图和/或流程图中的每个方框、以及结构图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块或单元可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或更多个模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是智能手机、个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。
Claims (8)
1.一种消息订阅方法,其特征在于,应用于机器人操作系统,所述消息订阅方法包括:
接收消息订阅节点发送的消息订阅请求信息,所述消息订阅请求信息包括消息订阅话题、消息订阅类型以及消息订阅密匙;
根据所述消息订阅话题、消息订阅类型以及消息订阅密匙查找节点管理数据库以匹配获取目标消息发布节点,所述目标消息发布节点的发布话题与所述消息订阅话题一致、发布话题类型与所述消息订阅类型一致以及发布密匙与所述消息订阅密匙一致;
当查找匹配到所述目标消息发布节点时,获取对应的发布节点属性信息,所述发布节点属性信息包括发布节点名称以及发布节点IP地址;
将所述发布节点属性信息发送至所述消息订阅节点以使所述消息订阅节点根据所述发布节点名称和所述发布节点IP地址与所述目标消息发布节点建立订阅通信连接;
所述根据所述消息订阅话题、消息订阅类型以及消息订阅密匙查找节点管理数据库以匹配获取目标消息发布节点的步骤包括:
在所述节点管理数据库的所有发布节点中查找对应发布话题与所述消息订阅话题一致的发布节点,得到第一发布节点集合;
根据所述消息订阅类型在所述第一发布节点集合中查找获取发布话题类型与所述消息订阅类型一致的发布节点,得到第二发布节点集合;
根据所述消息订阅密匙在所述第二发布节点集合中查找获取发布密匙与所述消息订阅密匙一致的发布节点作为目标消息发布节点;
其中,所述消息订阅密匙是所述消息订阅节点订阅内容所对应设置的订阅校验密匙。
2.根据权利要求1所述的消息订阅方法,其特征在于,所述根据所述消息订阅话题、消息订阅类型以及消息订阅密匙查找节点管理数据库以匹配对应的目标消息发布节点的步骤之前还包括:
接收目标消息发布节点发送的发布节点注册信息以形成所述节点管理数据库,所述发布节点注册信息包括发布节点名称、发布节点IP、发布话题、发布话题类型和发布密匙。
3.一种消息订阅装置,其特征在于,应用于机器人操作系统,所述消息订阅装置包括:
请求信息接收模块,用于接收消息订阅节点发送的消息订阅请求信息,所述消息订阅请求信息包括消息订阅话题、消息订阅类型以及消息订阅密匙;
发布节点查找模块,用于根据所述消息订阅话题、消息订阅类型以及消息订阅密匙查找节点管理数据库以匹配获取目标消息发布节点,所述目标消息发布节点的发布话题与所述消息订阅话题一致、发布话题类型与所述消息订阅类型一致以及发布密匙与所述消息订阅密匙一致;
属性信息获取模块,用于当查找匹配到所述目标消息发布节点时,获取对应的发布节点属性信息,所述发布节点属性信息包括发布节点名称以及发布节点IP地址;
属性信息发送模块,用于将所述发布节点属性信息发送至所述消息订阅节点以使所述消息订阅节点根据所述发布节点名称和所述发布节点IP地址与所述目标消息发布节点建立订阅通信连接;
所述根据所述消息订阅话题、消息订阅类型以及消息订阅密匙查找节点管理数据库以匹配获取目标消息发布节点,包括:
在所述节点管理数据库的所有发布节点中查找对应发布话题与所述消息订阅话题一致的发布节点,得到第一发布节点集合;
根据所述消息订阅类型在所述第一发布节点集合中查找获取发布话题类型与所述消息订阅类型一致的发布节点,得到第二发布节点集合;
根据所述消息订阅密匙在所述第二发布节点集合中查找获取发布密匙与所述消息订阅密匙一致的发布节点作为目标消息发布节点;
其中,所述消息订阅密匙是所述消息订阅节点订阅内容所对应设置的订阅校验密匙。
4.根据权利要求3所述的消息订阅装置,其特征在于,所述消息订阅装置还包括:
数据库建立模块,用于接收目标消息发布节点发送的发布节点注册信息以形成所述节点管理数据库,所述发布节点注册信息包括发布节点名称、发布节点IP、发布话题、发布话题类型和发布密匙。
5.一种消息订阅系统,其特征在于,应用于机器人操作系统,所述消息订阅系统包括目标消息发布节点、节点管理器和消息订阅节点;
所述消息订阅节点用于向节点管理器发送消息订阅请求信息,所述消息订阅请求信息包括消息订阅话题、消息订阅类型以及消息订阅密匙;
所述节点管理器用于根据所述消息订阅话题、消息订阅类型以及消息订阅密匙查找节点管理数据库以匹配获取目标消息发布节点,所述目标消息发布节点的发布话题与所述消息订阅话题一致、发布话题类型与所述消息订阅类型一致以及发布密匙与所述消息订阅密匙一致;
所述节点管理器还用于当查找匹配到所述目标消息发布节点时,获取对应的发布节点属性信息,所述发布节点属性信息包括发布节点名称以及发布节点IP地址,将所述发布节点属性信息发送至所述消息订阅节点;
所述消息订阅节点还用于根据所述发布节点名称和所述发布节点IP地址与所述目标消息发布节点建立订阅通信连接;
其中,所述节点管理器具体用于:
在节点管理数据库的所有发布节点中查找对应发布话题与所述消息订阅话题一致的发布节点,得到第一发布节点集合,根据所述消息订阅类型在所述第一发布节点集合中查找获取发布话题类型与所述消息订阅类型一致的发布节点,得到第二发布节点集合,根据所述消息订阅密匙在所述第二发布节点集合中查找获取发布密匙与所述消息订阅密匙一致的发布节点作为目标消息发布节点;
其中,所述消息订阅密匙是所述消息订阅节点订阅内容所对应设置的订阅校验密匙。
6.根据权利要求5所述的消息订阅系统,其特征在于,所述节点管理器还用于接收目标消息发布节点发送的发布节点注册信息以形成所述节点管理数据库,所述发布节点注册信息包括发布节点名称、发布节点IP、发布话题、发布话题类型和发布密匙。
7.一种设备终端,其特征在于,包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述设备终端执行权利要求1至2中任一项所述的消息订阅方法。
8.一种可读存储介质,其特征在于,所述可读存储介质存储有计算机程序,所述计算机程序在被处理器执行时实施权利要求1至2中任一项所述的消息订阅方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911205241.9A CN110912808B (zh) | 2019-11-29 | 2019-11-29 | 消息订阅方法、装置、系统、设备终端和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911205241.9A CN110912808B (zh) | 2019-11-29 | 2019-11-29 | 消息订阅方法、装置、系统、设备终端和可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110912808A CN110912808A (zh) | 2020-03-24 |
CN110912808B true CN110912808B (zh) | 2021-04-13 |
Family
ID=69820881
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911205241.9A Active CN110912808B (zh) | 2019-11-29 | 2019-11-29 | 消息订阅方法、装置、系统、设备终端和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110912808B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111432030B (zh) * | 2020-04-17 | 2023-11-28 | 支付宝(杭州)信息技术有限公司 | 一种信息发布方法、装置、设备及介质 |
CN111866092B (zh) * | 2020-06-30 | 2022-06-28 | 北京百度网讯科技有限公司 | 消息传输的方法、装置、电子设备和可读存储介质 |
CN111949418B (zh) * | 2020-07-10 | 2023-10-24 | 北京思特奇信息技术股份有限公司 | 一种订阅消息处理方法和装置 |
CN113311825A (zh) * | 2021-05-05 | 2021-08-27 | 温州大学 | 一种可视化且自定义的ros智能机器人人机交互系统及其控制方法 |
CN114157997B (zh) * | 2021-11-26 | 2023-04-07 | 山东新一代信息产业技术研究院有限公司 | 一种iros话题桥接方法、设备及介质 |
CN114723565B (zh) * | 2022-06-02 | 2022-08-23 | 高盈国际创新科技(深圳)有限公司 | 基于golang的多源多语言信息处理方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101883107A (zh) * | 2010-06-18 | 2010-11-10 | 华为技术有限公司 | 实现上下文感知业务应用的方法和相关装置 |
CN103781028A (zh) * | 2012-10-19 | 2014-05-07 | 腾讯科技(深圳)有限公司 | 一种移动终端的信息订阅方法、系统和装置 |
US10198774B1 (en) * | 2015-10-26 | 2019-02-05 | Intuit Inc. | Systems, methods and articles for associating tax data with a tax entity |
CN110071873A (zh) * | 2019-04-09 | 2019-07-30 | 华为技术有限公司 | 一种发送数据的方法、装置及相关设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7293038B2 (en) * | 2003-02-25 | 2007-11-06 | Bea Systems, Inc. | Systems and methods for client-side filtering of subscribed messages |
CN105282143B (zh) * | 2015-09-09 | 2018-06-01 | 北京航空航天大学 | 消息访问控制方法、装置和系统 |
CN109862063A (zh) * | 2018-11-12 | 2019-06-07 | 平安科技(深圳)有限公司 | 基于mqtt的发布订阅匹配方法、装置及存储介质 |
-
2019
- 2019-11-29 CN CN201911205241.9A patent/CN110912808B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101883107A (zh) * | 2010-06-18 | 2010-11-10 | 华为技术有限公司 | 实现上下文感知业务应用的方法和相关装置 |
CN103781028A (zh) * | 2012-10-19 | 2014-05-07 | 腾讯科技(深圳)有限公司 | 一种移动终端的信息订阅方法、系统和装置 |
US10198774B1 (en) * | 2015-10-26 | 2019-02-05 | Intuit Inc. | Systems, methods and articles for associating tax data with a tax entity |
CN110071873A (zh) * | 2019-04-09 | 2019-07-30 | 华为技术有限公司 | 一种发送数据的方法、装置及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110912808A (zh) | 2020-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110912808B (zh) | 消息订阅方法、装置、系统、设备终端和可读存储介质 | |
CN108256870B (zh) | 基于拓扑结构生成描述信息及更新、数据处理方法和装置 | |
CN103460203A (zh) | 群集唯一标识符 | |
CN110609844A (zh) | 一种数据更新方法,装置及系统 | |
CN104181567B (zh) | 终端设备的定位方法、终端设备及终端设备定位系统 | |
CN111885051B (zh) | 数据验证方法、装置及电子设备 | |
CN114116401A (zh) | 集群消息的全链路跟踪监控方法、装置、设备及介质 | |
CN111884843B (zh) | 一种消息处理方法、装置、电子设备及存储介质 | |
CN104424352A (zh) | 向用户终端提供代理服务的系统和方法 | |
CN109871408B (zh) | 一种多类型数据库适配方法、装置、电子设备及存储介质 | |
CN114116500A (zh) | 一种未知协议模糊测试方法及其装置 | |
CN110311794B (zh) | 社交群组的加入方法、装置、服务器及存储介质 | |
CN112995266A (zh) | 一种信息推送方法及相关设备 | |
CN115391059A (zh) | 数据回放方法、装置、计算机设备及计算机可读存储介质 | |
CN113014587B (zh) | 一种api检测方法、装置、电子设备及存储介质 | |
CN111125110B (zh) | 非主键字段的检查方法、装置、计算机设备及存储介质 | |
CN112347103B (zh) | 数据同步方法、装置、电子设备及存储介质 | |
CN111314354B (zh) | 智能车辆通信方法、装置、电子设备及可读存储介质 | |
CN112506736B (zh) | office文件打开状态监控方法及装置 | |
CN115134405B (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
CN114615313A (zh) | 一种数据传输方法、装置、计算机设备和可读存储介质 | |
CN114238320A (zh) | 基于关系型数据库的数据存储方法与数据读取方法 | |
CN110418020B (zh) | 名单状态信息处理方法、装置、电子终端及存储介质 | |
CN114500454B (zh) | 电子设备地理位置变更的检测方法及装置 | |
CN114238771A (zh) | 大数据智能推送方法及装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |