CN111030925B - 基于远程过程调用的多网关通信方法及系统 - Google Patents

基于远程过程调用的多网关通信方法及系统 Download PDF

Info

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
Application number
CN201911328431.XA
Other languages
English (en)
Other versions
CN111030925A (zh
Inventor
刘波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Tuya Information Technology Co Ltd
Original Assignee
Hangzhou Tuya Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Tuya Information Technology Co Ltd filed Critical Hangzhou Tuya Information Technology Co Ltd
Priority to CN201911328431.XA priority Critical patent/CN111030925B/zh
Publication of CN111030925A publication Critical patent/CN111030925A/zh
Application granted granted Critical
Publication of CN111030925B publication Critical patent/CN111030925B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/133Protocols for remote procedure calls [RPC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup 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中任一项所述的方法。
CN201911328431.XA 2019-12-20 2019-12-20 基于远程过程调用的多网关通信方法及系统 Active CN111030925B (zh)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114172800A (zh) * 2021-11-25 2022-03-11 浙江源创智控技术有限公司 Knx多网关通信方法、装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080033845A1 (en) * 2006-07-21 2008-02-07 Mcbride Brian Publication Subscription Service Apparatus And Methods

Patent Citations (4)

* Cited by examiner, † Cited by third party
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