CN111030925B - 基于远程过程调用的多网关通信方法及系统 - Google Patents
基于远程过程调用的多网关通信方法及系统 Download PDFInfo
- Publication number
- CN111030925B CN111030925B CN201911328431.XA CN201911328431A CN111030925B CN 111030925 B CN111030925 B CN 111030925B CN 201911328431 A CN201911328431 A CN 201911328431A CN 111030925 B CN111030925 B CN 111030925B
- Authority
- CN
- China
- Prior art keywords
- remote procedure
- procedure call
- gateway
- module
- call server
- 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
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- 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/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- 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/01—Protocols
- H04L67/133—Protocols for remote procedure calls [RPC]
-
- 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/14—Session management
- H04L67/141—Setup of application sessions
Abstract
本申请公开了一种基于远程过程调用的多网关通信方法,包括:RPC服务器分别接收被联网模块及网关模块定义好的需要通信的第一目标地址和第二目标地址;所述RPC服务器根据所述第一目标地址与所述联网模块建立第一信道,并接收所述联网模块声明的订阅RPC的第一方法;所述RPC服务器根据所述第一方法接收所述联网模块发送的传输信息;所述RPC服务器根据所述第二目标地址与所述网关模块建立第二信道,并接收所述网关模块声明的订阅RPC的第二方法;所述RPC服务器根据所述第二方法发送所述传输信息至所述网关模块。本申请解决了不同网关,在同一网络中需要重复接入物联网平台问题。
Description
技术领域
本申请涉及智能家居领域,具体而言,涉及一种基于远程过程调用的多网关通信方法及系统。
背景技术
现有的网关产品,都是相互独立的,都是单品。比如zigbee网关,433网关等,每种网关产品都需要重新接入物联网平台,需要投入人力以及物力,增加了成本。
发明内容
本申请的主要目的在于提供一种基于远程过程调用的多网关通信方法,包括:
远程过程调用服务器分别接收被联网模块及网关模块定义好的需要通信的第一目标地址和第二目标地址;
所述远程过程调用服务器根据所述第一目标地址与所述联网模块建立第一信道,并接收所述联网模块声明的订阅远程过程调用的第一方法,
所述远程过程调用服务器根据所述第一方法接收所述联网模块发送的传输信息;
所述远程过程调用服务器根据所述第二目标地址与所述网关模块建立第二信道,并接收所述网关模块声明的订阅远程过程调用的第二方法;
所述远程过程调用服务器根据所述第二方法发送所述传输信息至所述网关模块。
可选地,所述网关模块为至少两个不同类型的网关模块,所述第二方法包括至少两个不同类型的第二子方法,且所述不同类型的网关模块与不同类型的所述第二子方法一一对应。
可选地,所述远程过程调用服务器发送相同的信息至使用相同的所述第二子方法的同一类型的所述网关模块。
可选地,所述联网模块连接物联网平台,并获取所述物联网平台的平台信息,所述联网模块通过所述第一方法发送所述平台信息至所述远程过程调用服务器,所述远程过程调用服务器通过所述第二子方法发送所述平台信息至使用相同所述第二子方法的网关模块。
可选地,所述网关模块通过所述第二子方法发送控制信息至所述远程过程调用服务器,所述远程过程调用服务器通过所述第一方法发送所述控制信息至所述联网模块,所述联网模块发送所述控制信息至所述物联网平台。
可选地,所述控制信息包括:所述网关模块的状态信息及控制指令;所述平台信息包括:连接到所述物联网平台的设备的状态信息。
根据本申请的另一个方面,还提供了一种基于远程过程调用的多网关通信系统,包括:
远程过程调用服务器接收模块,用于分别接收被联网模块及网关模块定义好的需要通信的第一目标地址和第二目标地址;
远程过程调用服务器发送模块,用于根据所述第一目标地址与所述联网模块建立第一信道,并接收所述联网模块声明的订阅远程过程调用的第一方法;
其中,所述远程过程调用服务器接收模块根据所述第一方法接收所述联网模块发送的传输信息;所述远程过程调用服务器发送模块根据所述第二目标地址与所述网关模块建立第二信道,并接收所述网关模块声明的订阅远程过程调用的第二方法,且所述远程过程调用服务器发送模块根据所述第二方法发送所述传输信息至所述网关模块。
本申请还公开了一种计算机设备,包括存储器、处理器和存储在所述存储器内并能由所述处理器运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述的方法。
本申请还公开了一种计算机可读存储介质,非易失性可读存储介质,其内存储有计算机程序,所述计算机程序在由处理器执行时实现上述任一项所述的方法。
本申请还公开了一种计算机程序产品,包括计算机可读代码,当所述计算机可读代码由计算机设备执行时,导致所述计算机设备执行上述任一项所述的方法。
与现有技术相比,本申请具有如下优点:
解决了不同网关,在同一网络中需要重复接入物联网平台问题;可以扩展支持更多类型的网关,也可以减少某种网关的接入,比较灵活;网关之间,以及联网模块,接口简单,容易扩展;RPC通信基于TCP方式实现,同时有重传,超时重连,用户鉴权等机制;容易实现不同网关下子设备的联动。
附图说明
构成本申请的一部分的附图用来提供对本申请的进一步理解,使得本申请的其它特征、目的和优点变得更明显。本申请的示意性实施例附图及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请一个实施例的基于远程过程调用的多网关通信方法的流程示意图;
图2是根据本申请一个实施例的系统流程示意图;
图3是根据本申请一个实施例的计算机设备的示意图;以及
图4是根据本申请一个实施例的计算机可读存储介质的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
请参照图1-图2,本申请一实施例提供了一种基于远程过程调用的多网关通信方法,包括:
S2:远程过程调用服务器分别接收被联网模块及网关模块定义好的需要通信的第一目标地址和第二目标地址;
S4:所述远程过程调用服务器根据所述第一目标地址与所述联网模块建立第一信道,并接收所述联网模块声明的订阅远程过程调用的第一方法;
S6:所述远程过程调用服务器根据所述第一方法接收所述联网模块发送的传输信息;
S8:所述远程过程调用服务器根据所述第二目标地址与所述网关模块建立第二信道,并接收所述网关模块声明的订阅远程过程调用的第二方法;
S10:所述远程过程调用服务器根据所述第二方法发送所述传输信息至所述网关模块。
运行时,网关上运行RPC服务器。联网模块以及网关模块定义好需要通信的目标地址。
联网模块连接到该RPC服务器,获取句柄(建立信道),该句柄并不是RPC服务器发送的,而是网络建立连接后,系统分配产生的。然后声明自己订阅的RPC方法,以及消息回调。同时该联网模块需要实现接入物联网平台功能。
Zigbee网关,433网关、BLE网关等网关模块初始化对应的硬件网关功能后,连接到RPC服务器,获取句柄(建立信道),该句柄并不是RPC服务器发送的,而是系统发送的。然后声明自己的订阅的RPC方法,以及对应的回调。网关通过RPC状态上报以及设备控制,与联网模块进行交互。
订阅了同一方法的网关模块,都可以收到该消息,比如网络状态,连接物联网平台的状态。
联网模块接收到物联网平台的数据,根据设备类型,选择不同的RPC通信目标地址,与对应的网关进行通信。
在本申请一实施例中,所述网关模块为至少两个不同类型的网关模块,所述第二方法包括至少两个不同类型的第二子方法,且所述不同类型的网关模块与不同类型的所述第二子方法一一对应。
在本申请一实施例中,所述远程过程调用服务器发送相同的信息至使用相同的所述第二子方法的同一类型的所述网关模块。
在本申请一实施例中,所述联网模块连接物联网平台,并获取所述物联网平台的平台信息,所述联网模块通过所述第一方法发送所述平台信息至所述远程过程调用服务器,所述远程过程调用服务器通过所述第二子方法发送所述平台信息至使用相同所述第二子方法的网关模块。
在本申请一实施例中,所述网关模块通过所述第二子方法发送控制信息至所述远程过程调用服务器,所述远程过程调用服务器通过所述第一方法发送所述控制信息至所述联网模块,所述联网模块发送所述控制信息至所述物联网平台。
在本申请一实施例中,所述控制信息包括:所述网关模块的状态信息及控制指令;所述平台信息包括:连接到所述物联网平台的设备的状态信息。
根据本申请的另一方面还提供了一种基于远程过程调用的多网关通信系统,包括:
远程过程调用服务器接收模块,用于分别接收被联网模块及网关模块定义好的需要通信的第一目标地址和第二目标地址;
远程过程调用服务器发送模块,用于根据所述第一目标地址与所述联网模块建立第一信道,并接收所述联网模块声明的订阅远程过程调用的第一方法;
其中,所述远程过程调用服务器接收模块根据所述第一方法接收所述联网模块发送的传输信息;所述远程过程调用服务器发送模块根据所述第二目标地址与所述网关模块建立第二信道,并接收所述网关模块声明的订阅远程过程调用的第二方法,且所述远程过程调用服务器发送模块根据所述第二方法发送所述传输信息至所述网关模块。
本申请所提供的技术方案中,这些网关都是接入同一物联网平台。也即是说对接物联网平台部分,都是一样的。如果通过RPC(即远程过程调用,下面叙述中不再解释)方式,使得不同类型的网关,通过同一联网模块,接入同一物联网平台。这样就不同类型的网关比如zigbee网关,433网关,can总线网关等,都过RPC与联网模块通信,接入物联网平台。这样既简单,又方便,一台设备集成不同类型的网关,也可不同的网关设备通过已接入物联网设备接入物联网平台。
请参照图3,本申请还提供了一种计算机设备,包括存储器、处理器和存储在所述存储器内并能由所述处理器运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述的方法。
请参照图4,一种计算机可读存储介质,非易失性可读存储介质,其内存储有计算机程序,所述计算机程序在由处理器执行时实现上述任一项所述的方法。
一种计算机程序产品,包括计算机可读代码,当所述计算机可读代码由计算机设备执行时,导致所述计算机设备执行上述任一项所述的方法。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (8)
1.一种基于远程过程调用的多网关通信方法,其特征在于,包括:
远程过程调用服务器分别接收被联网模块及网关模块定义好的需要通信的第一目标地址和第二目标地址;
所述远程过程调用服务器根据所述第一目标地址与所述联网模块建立第一信道,并接收所述联网模块声明的订阅远程过程调用的第一方法;
所述远程过程调用服务器根据所述第一方法接收所述联网模块发送的传输信息;
所述远程过程调用服务器根据所述第二目标地址与所述网关模块建立第二信道,并接收所述网关模块声明的订阅远程过程调用的第二方法;
所述远程过程调用服务器根据所述第二方法发送所述传输信息至所述网关模块;
所述网关模块为至少两个不同类型的网关模块,所述第二方法包括至少两个不同类型的第二子方法,且所述不同类型的网关模块与不同类型的所述第二子方法一一对应。
2.根据权利要求1所述的基于远程过程调用的多网关通信方法,其特征在于,所述远程过程调用服务器发送相同的信息至使用相同的所述第二子方法的同一类型的所述网关模块。
3.根据权利要求2所述的基于远程过程调用的多网关通信方法,其特征在于,所述联网模块连接物联网平台,并获取所述物联网平台的平台信息,所述联网模块通过所述第一方法发送所述平台信息至所述远程过程调用服务器,所述远程过程调用服务器通过所述第二子方法发送所述平台信息至使用相同所述第二子方法的网关模块。
4.根据权利要求3所述的基于远程过程调用的多网关通信方法,其特征在于,所述网关模块通过所述第二子方法发送控制信息至所述远程过程调用服务器,所述远程过程调用服务器通过所述第一方法发送所述控制信息至所述联网模块,所述联网模块发送所述控制信息至所述物联网平台。
5.根据权利要求4所述的基于远程过程调用的多网关通信方法,其特征在于,所述控制信息包括:所述网关模块的状态信息及控制指令;所述平台信息包括:连接到所述物联网平台的设备的状态信息。
6.一种基于远程过程调用的多网关通信系统,其特征在于,包括:
远程过程调用服务器接收模块,用于分别接收被联网模块及网关模块定义好的需要通信的第一目标地址和第二目标地址;
远程过程调用服务器发送模块,用于根据所述第一目标地址与所述联网模块第一信道,并接收所述联网模块声明的订阅远程过程调用的第一方法;
其中,所述远程过程调用服务器接收模块根据所述第一方法接收所述联网模块发送的传输信息;所述远程过程调用服务器发送模块根据所述第二目标地址与所述网关模块建立第二信道,并接收所述网关模块声明的订阅远程过程调用的第二方法,且所述远程过程调用服务器发送模块根据所述第二方法发送所述传输信息至所述网关模块;
所述网关模块为至少两个不同类型的网关模块,所述第二方法包括至少两个不同类型的第二子方法,且所述不同类型的网关模块与不同类型的所述第二子方法一一对应。
7.一种计算机设备,包括存储器、处理器和存储在所述存储器内并能由所述处理器运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-5中任一项所述的方法。
8.一种计算机可读存储介质,非易失性可读存储介质,其内存储有计算机程序,其特征在于,所述计算机程序在由处理器执行时实现如权利要求1-5中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911328431.XA CN111030925B (zh) | 2019-12-20 | 2019-12-20 | 基于远程过程调用的多网关通信方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911328431.XA CN111030925B (zh) | 2019-12-20 | 2019-12-20 | 基于远程过程调用的多网关通信方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111030925A CN111030925A (zh) | 2020-04-17 |
CN111030925B true CN111030925B (zh) | 2021-08-20 |
Family
ID=70212300
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911328431.XA Active CN111030925B (zh) | 2019-12-20 | 2019-12-20 | 基于远程过程调用的多网关通信方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111030925B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114172800A (zh) * | 2021-11-25 | 2022-03-11 | 浙江源创智控技术有限公司 | Knx多网关通信方法、装置、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105721512A (zh) * | 2016-05-06 | 2016-06-29 | 深圳前海大数点科技有限公司 | 一种远程过程调用系统及其方法 |
CN107959622A (zh) * | 2018-01-18 | 2018-04-24 | 博为科技有限公司 | 一种智能家庭网关系统及智能家庭网关 |
CN108512909A (zh) * | 2018-03-14 | 2018-09-07 | 日照职业技术学院 | 一种基于物联网的计算机远程控制系统 |
CN110557384A (zh) * | 2019-08-12 | 2019-12-10 | 杭州云象网络技术有限公司 | 一种基于区块链的物联网管理控制方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080033845A1 (en) * | 2006-07-21 | 2008-02-07 | Mcbride Brian | Publication Subscription Service Apparatus And Methods |
-
2019
- 2019-12-20 CN CN201911328431.XA patent/CN111030925B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105721512A (zh) * | 2016-05-06 | 2016-06-29 | 深圳前海大数点科技有限公司 | 一种远程过程调用系统及其方法 |
CN107959622A (zh) * | 2018-01-18 | 2018-04-24 | 博为科技有限公司 | 一种智能家庭网关系统及智能家庭网关 |
CN108512909A (zh) * | 2018-03-14 | 2018-09-07 | 日照职业技术学院 | 一种基于物联网的计算机远程控制系统 |
CN110557384A (zh) * | 2019-08-12 | 2019-12-10 | 杭州云象网络技术有限公司 | 一种基于区块链的物联网管理控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111030925A (zh) | 2020-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105763619B (zh) | 客户端与服务端进行通讯的方法及装置 | |
CN111885115B (zh) | 设备绑定变更方法及装置 | |
CN111885594B (zh) | 设备绑定方法及装置 | |
CN109474701A (zh) | 区块链预言机、物联设备和信息处理方法 | |
CN107343294B (zh) | 背景数据传输策略配置方法及装置 | |
CN108322437B (zh) | 用于多规约设备之间的自适应通讯方法和装置 | |
CN111901157B (zh) | 一种基于k8s的服务部署方法、装置、设备、介质 | |
CN107622771A (zh) | 家电设备及其控制方法、系统及计算机可读存储介质 | |
CN111277481B (zh) | 一种建立vpn隧道的方法、装置、设备及存储介质 | |
CN108390795B (zh) | 家电设备及其监控方法、智慧家居系统及可读存储介质 | |
CN111030925B (zh) | 基于远程过程调用的多网关通信方法及系统 | |
CN114327710B (zh) | 一种函数管理方法、管理装置、终端设备及可读存储介质 | |
CN112714146B (zh) | 一种资源调度方法、装置、设备及计算机可读存储介质 | |
US10764724B2 (en) | Method and apparatus for implementing member resource processing | |
CN105207866B (zh) | 基于空调控制网络的控制终端的通信方法及空调控制网络 | |
CN112165726A (zh) | 一种微信小程序给智能设备配网的方法及系统 | |
CN109981538A (zh) | 订阅事件的注册方法及系统、订阅事件的处理方法及系统 | |
CN111355738A (zh) | 一种网关支持多协议的方法及系统 | |
CN103974224A (zh) | 一种信用控制的方法和设备 | |
CN114968617B (zh) | Api转换系统及其访问请求处理方法、电子设备及介质 | |
CN112217845A (zh) | 一种基于Netconf协议的数据传输方法及相关设备 | |
CN111065079B (zh) | 一种本地设备绑定方法及系统 | |
CN110572271B (zh) | 一种管理语音聊天室的方法及系统 | |
CN113572816A (zh) | 设备控制处理方法、装置、存储介质及电子装置 | |
CN115915289A (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 |