CN105991779B - 一种物联网短距离通信的方法、装置及中间件 - Google Patents
一种物联网短距离通信的方法、装置及中间件 Download PDFInfo
- Publication number
- CN105991779B CN105991779B CN201510053143.3A CN201510053143A CN105991779B CN 105991779 B CN105991779 B CN 105991779B CN 201510053143 A CN201510053143 A CN 201510053143A CN 105991779 B CN105991779 B CN 105991779B
- Authority
- CN
- China
- Prior art keywords
- address
- application programming
- terminal device
- programming interface
- physical address
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种物联网短距离通信的方法、装置及中间件,其中,方法应用于中间件,包括:获取应用程序发送的应用程序编程接口的虚拟地址和欲访问的终端设备的虚拟地址;匹配得到与所述应用程序编程接口的虚拟地址对应的所述应用程序编程接口的物理地址以及所述终端设备的虚拟地址对应的所述终端设备的物理地址;根据所述应用程序编程接口的物理地址调用对应的应用程序编程接口,并通过所述应用程序编程接口和所述终端设备的物理地址访问所述终端设备。本方案通过智能设备统一的虚拟地址,来控制智能设备,使用户在使用前不再需要了解智能节点所在的网络和节点的IP地址,用户使用便捷,能够很好的满足用户体验需求。
Description
技术领域
本发明涉及物联网短距离通信技术领域,特别是指一种物联网短距离通信的方法、装置及中间件。
背景技术
以智能家居***为例,现有的智能家居节点如灯光控制器、红外感应器、智能开关、环境监控器等,与智能家居网关的联网方式有多种可能,像Zigbee(低功耗局域网协议)、Wifi(高频无线协议)、BT(比特洪流协议)主流的短距离通信都有可能成为智能家居的组网方式。
家庭网关通过Wifi、Zigbee、BT广播来组网,为属于自己网络中的智能节点分配地址。家庭网关的应用程序在对智能节点控制或者获得状态信息时,需要知道智能节点是处于Zigbee、Wifi、BT的哪个网络里,通过分配的网络地址,调用对应网络的接口API来实现对智能节点的控制。
现有的家庭网关的应用程序,需要清楚不同的智能节点所属的网络和在这个网络中的地址,通过调用这个网络的API接口(应用程序编程接口)来控制节点或者获得节点的信息,这种家庭网关的缺点在于:
1.使用前需要了解智能节点所在的网络和节点的IP地址;
2.不同网络中地址的形式不同,没有形成统一的管理,例如wifi地址是点分十进制(192.168.0.100),Zigbee的地址是0-255的十进制(253);
3.不同网络调用的API接口不同;
以上缺点导致用户使用不便捷,不能很好的满足用户体验需求。
发明内容
本发明要解决的技术问题是提供一种物联网短距离通信的方法、装置及中间件,解决现有技术中由于网络地址形式和API接口不同,使用前需要了解智能节点所在的网络和节点的IP地址,导致用户使用不便捷,不能很好的满足用户体验需求的问题。
为了解决上述技术问题,本发明实施例提供一种物联网短距离通信的方法,应用于中间件,所述方法包括:
获取应用程序发送的应用程序编程接口的虚拟地址和欲访问的终端设备的虚拟地址,所述应用程序编程接口的虚拟地址和欲访问的终端设备的虚拟地址由第一通信协议分配;
匹配得到与所述应用程序编程接口的虚拟地址对应的所述应用程序编程接口的物理地址以及所述终端设备的虚拟地址对应的所述终端设备的物理地址,所述应用程序编程接口的物理地址和所述终端设备的物理地址由第二通信协议分配;
根据所述应用程序编程接口的物理地址调用对应的应用程序编程接口,并通过所述应用程序编程接口和所述终端设备的物理地址访问所述终端设备。
其中,所述第一通信协议为物联网短距离通信协议。
其中,所述第二通信协议为高频无线协议、低功耗局域网协议、比特洪流协议、非接触式射频识别协议中的任意一种或多种。
其中,匹配得到与所述应用程序编程接口的虚拟地址对应的所述应用程序编程接口的物理地址以及所述终端设备的虚拟地址对应的所述终端设备的物理地址的步骤包括:
根据所述应用程序编程接口的虚拟地址在应用程序编程接口关系表中得到所述应用程序编程接口的物理地址;
根据所述终端设备的虚拟地址在设备地址关系表中得到所述终端设备的物理地址;
其中,所述应用程序编程接口关系表存有所述应用程序编程接口的物理地址和对应的统一格式后的虚拟地址;
所述设备地址关系表存有终端设备描述信息以及对应的物理地址和对应的统一格式后的虚拟地址。
其中,所述方法还包括:
获取一个或多个应用程序编程接口的物理地址;
将所述一个或多个应用程序编程接口的物理地址分别转化为统一地址格式的虚拟地址;
将所述一个或多个应用程序编程接口的物理地址以及与所述物理地址对应的虚拟地址存储到所述应用程序编程接口关系表中。
其中,所述方法还包括:
获取终端设备的物理地址以及对应的所述终端设备的设备描述信息;
将所述终端设备的物理地址转化为统一地址格式的虚拟地址;
将所述终端设备的物理地址以及与所述物理地址对应的虚拟地址和设备描述信息存储到所述设备地址关系表中。
其中,根据所述应用程序编程接口的物理地址调用对应的应用程序编程接口,并通过所述应用程序编程接口和所述终端设备的物理地址访问所述终端设备之前还包括:
接收执行广播的指令;
根据所述执行广播的指令进行广播;
获取各个应用程序编程接口和终端设备根据所述广播反馈的在线信息;
相应地,根据所述应用程序编程接口的物理地址调用对应的应用程序编程接口,并通过所述应用程序编程接口和所述终端设备的物理地址访问所述终端设备的步骤具体为:
根据所述应用程序编程接口的物理地址调用对应的所述在线信息指示在线的应用程序编程接口,并通过所述应用程序编程接口和所述终端设备的物理地址访问所述在线信息指示在线的终端设备。
本发明还提供了一种物联网短距离通信的装置,应用于中间件,所述装置包括:
第一获取模块,用于获取应用程序发送的应用程序编程接口的虚拟地址和欲访问的终端设备的虚拟地址,所述应用程序编程接口的虚拟地址和欲访问的终端设备的虚拟地址由第一通信协议分配;
匹配模块,用于匹配得到与所述应用程序编程接口的虚拟地址对应的所述应用程序编程接口的物理地址以及所述终端设备的虚拟地址对应的所述终端设备的物理地址,所述应用程序编程接口的物理地址和所述终端设备的物理地址由第二通信协议分配;
第一处理模块,用于根据所述应用程序编程接口的物理地址调用对应的应用程序编程接口,并通过所述应用程序编程接口和所述终端设备的物理地址访问所述终端设备。
其中,所述第一通信协议为物联网短距离通信协议。
其中,所述第二通信协议为高频无线协议、低功耗局域网协议、比特洪流协议、非接触式射频识别协议中的任意一种或多种。
其中,所述匹配模块包括:
第一获取子模块,用于根据所述应用程序编程接口的虚拟地址在应用程序编程接口关系表中得到所述应用程序编程接口的物理地址;
第二获取子模块,用于根据所述终端设备的虚拟地址在设备地址关系表中得到所述终端设备的物理地址;
其中,所述应用程序编程接口关系表存有所述应用程序编程接口的物理地址和对应的统一格式后的虚拟地址;
所述设备地址关系表存有终端设备描述信息以及对应的物理地址和对应的统一格式后的虚拟地址。
其中,所述装置还包括:
第二获取模块,用于获取一个或多个应用程序编程接口的物理地址;
第二处理模块,用于将所述一个或多个应用程序编程接口的物理地址分别转化为统一地址格式的虚拟地址;
第一存储模块,用于将所述一个或多个应用程序编程接口的物理地址以及与所述物理地址对应的虚拟地址存储到所述应用程序编程接口关系表中。
其中,所述装置还包括:
第三获取模块,用于获取终端设备的物理地址以及对应的所述终端设备的设备描述信息;
第三处理模块,用于将所述终端设备的物理地址转化为统一地址格式的虚拟地址;
第二存储模块,用于将所述终端设备的物理地址以及与所述物理地址对应的虚拟地址和设备描述信息存储到所述设备地址关系表中。
其中,还包括:
接收模块,用于所述第一处理模块执行操作之前,接收执行广播的指令;
广播模块,用于根据所述执行广播的指令进行广播;
第四获取模块,用于获取各个应用程序编程接口和终端设备根据所述广播反馈的在线信息;
相应地,所述第一处理模块具体用于:
根据所述应用程序编程接口的物理地址调用对应的所述在线信息指示在线的应用程序编程接口,并通过所述应用程序编程接口和所述终端设备的物理地址访问所述在线信息指示在线的终端设备。
本发明还提供了一种中间件,包括:上述的物联网短距离通信的装置。
本发明的上述技术方案的有益效果如下:
上述方案中,所述物联网短距离通信的方法通过获取应用程序发送的应用程序编程接口的虚拟地址和欲访问的终端设备的虚拟地址,匹配得到与应用程序编程接口的虚拟地址对应的应用程序编程接口的物理地址以及终端设备的虚拟地址对应的终端设备的物理地址,进而根据应用程序编程接口的物理地址调用对应的应用程序编程接口,并通过应用程序编程接口和终端设备的物理地址访问终端设备,屏蔽了不同的短距离通信协议,对上层应用提供了统一的虚拟网络地址和接口,通过智能设备统一的虚拟地址,来控制智能设备,使用户不必关心智能设备具体是哪种协议,大大减少了应用开发的复杂度,在使用前不再需要了解智能节点所在的网络和节点的IP地址,用户使用便捷,能够很好的满足用户体验需求。
附图说明
图1为本发明实施例的物联网短距离通信的方法步骤示意图;
图2为本发明实施例根据API的虚拟地址调用对应物理地址的流程示意图;
图3为本发明实施例的物联网短距离通信的装置结构示意图;
图4为本发明实施例的Java中间件体系结构示意图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明针对现有的技术中由于网络地址形式和API接口不同,使用前需要了解智能节点所在的网络和节点的IP地址,导致用户使用不便捷,不能很好的满足用户体验需求的问题,提供一种物联网短距离通信的方法,应用于中间件,如图1所示,所述方法包括:
步骤11:获取应用程序发送的应用程序编程接口的虚拟地址和欲访问的终端设备的虚拟地址,所述应用程序编程接口的虚拟地址和欲访问的终端设备的虚拟地址由第一通信协议分配;
步骤12:匹配得到与所述应用程序编程接口的虚拟地址对应的所述应用程序编程接口的物理地址以及所述终端设备的虚拟地址对应的所述终端设备的物理地址,所述应用程序编程接口的物理地址和所述终端设备的物理地址由第二通信协议分配;
步骤13:根据所述应用程序编程接口的物理地址调用对应的应用程序编程接口,并通过所述应用程序编程接口和所述终端设备的物理地址访问所述终端设备。
本发明实施例提供的所述物联网短距离通信的方法通过获取应用程序发送的应用程序编程接口的虚拟地址和欲访问的终端设备的虚拟地址,匹配得到与应用程序编程接口的虚拟地址对应的应用程序编程接口的物理地址以及终端设备的虚拟地址对应的终端设备的物理地址,进而根据应用程序编程接口的物理地址调用对应的应用程序编程接口,并通过应用程序编程接口和终端设备的物理地址访问终端设备,屏蔽了不同的短距离通信协议,对上层应用提供了统一的虚拟网络地址和接口,通过智能设备统一的虚拟地址,来控制智能设备,使用户不必关心智能设备具体是哪种协议,大大减少了应用开发的复杂度,在使用前不再需要了解智能节点所在的网络和节点的IP地址,用户使用便捷,能够很好的满足用户体验需求。
其中,所述第一通信协议为物联网短距离通信协议;所述第二通信协议为高频无线协议、低功耗局域网协议、比特洪流协议、非接触式射频识别协议中的任意一种或多种。
具体的,匹配得到与所述应用程序编程接口的虚拟地址对应的所述应用程序编程接口的物理地址以及所述终端设备的虚拟地址对应的所述终端设备的物理地址的步骤包括:根据所述应用程序编程接口的虚拟地址在应用程序编程接口关系表中得到所述应用程序编程接口的物理地址;根据所述终端设备的虚拟地址在设备地址关系表中得到所述终端设备的物理地址;
其中,所述应用程序编程接口关系表存有所述应用程序编程接口的物理地址和对应的统一格式后的虚拟地址;所述设备地址关系表存有终端设备描述信息以及对应的物理地址和对应的统一格式后的虚拟地址。
进一步的,所述方法还包括:获取一个或多个应用程序编程接口的物理地址;将所述一个或多个应用程序编程接口的物理地址分别转化为统一地址格式的虚拟地址;将所述一个或多个应用程序编程接口的物理地址以及与所述物理地址对应的虚拟地址存储到所述应用程序编程接口关系表中。
上述获取一个或多个应用程序编程接口的物理地址的操作可以根据预设周期来执行。
更进一步的,所述方法还包括:获取终端设备的物理地址以及对应的所述终端设备的设备描述信息;将所述终端设备的物理地址转化为统一地址格式的虚拟地址;将所述终端设备的物理地址以及与所述物理地址对应的虚拟地址和设备描述信息存储到所述设备地址关系表中。
上述获取终端设备的物理地址以及对应的所述终端设备的设备描述信息的操作可以根据预设周期来执行。
为了防止用户调用的API和设备不可用,本发明实施例提供的所述方法中根据所述应用程序编程接口的物理地址调用对应的应用程序编程接口,并通过所述应用程序编程接口和所述终端设备的物理地址访问所述终端设备之前还包括:接收执行广播的指令;根据所述执行广播的指令进行广播;获取各个应用程序编程接口和终端设备根据所述广播反馈的在线信息;
相应地,根据所述应用程序编程接口的物理地址调用对应的应用程序编程接口,并通过所述应用程序编程接口和所述终端设备的物理地址访问所述终端设备的步骤具体为:根据所述应用程序编程接口的物理地址调用对应的所述在线信息指示在线的应用程序编程接口,并通过所述应用程序编程接口和所述终端设备的物理地址访问所述在线信息指示在线的终端设备。
下面对本发明实施例提供的物联网短距离通信的方法进行具体举例说明。
已知家庭网关应用是在几种短距离通信协议上,直接开发应用程序,所以本发明实施例是在几种短距离通信协议之上封装一种新的协议-物联网短距离通信协议,并在Java程序设计语言中间件的软件平台上实现该协议,屏蔽不同的短距离通信协议,提供统一的虚拟网络地址和接口。由于RFID(非接触式射频识别)技术在资产管理中得到广泛应用,因此本方案提到短距离通信协议Zigbee、Wifi、BT和RFID。
Wifi、Zigbee、BT、RFID在分别广播后,为各自网络的设备分配设备地址,分别如下表1、表2、表3和表4所示,并把组网的结果设备地址表提供给新协议-物联网短距离通信协议,物联网短距离通信协议为所有的智能设备虚拟一个统一格式的地址,对外不在区别具体是哪个短距离通信的智能设备,方便地址的统一管理。
Wifi设备 | Wifi地址 |
Wifi设备1 | 192.168.1.100 |
表1 Wifi设备地址表
Zigbee设备 | Zigbee地址 |
Zigbee设备1 | 253 |
表2 Zigbee设备地址表
BT设备 | BT地址 |
BT设备1 | AA:BB:CC:DD |
表3 BT设备地址表
RFID设备 | RFID地址 |
RFID设备1 | AED34242SDJ |
表4 RFID设备地址表
为了适应智能的节点的扩展,虚拟地址采用类wifi地址的形式,物联网短距离通信的虚拟地址对设备地址的关系如下表5所示:
虚拟地址 | 设备名 | 设备在网络中的物理地址 |
10.10.10.1 | Wifi设备1 | 192.168.1.100 |
10.10.10.2 | BT设备1 | AA:BB:CC:DD |
10.10.10.3 | Zigbee设备1 | 253 |
10.10.10.4 | RFID设备1 | AED34242SDJ |
表5 虚拟地址对设备地址表
因此,应用程序在访问智能节点(终端设备)时,不需要知道具体在哪个网络的物理地址及其形式了,只关心统一后的虚拟地址,虚拟地址到物理地址的映射由本申请提供的方案(物联网短距离通信协议栈)来完成。
除了统一虚拟地址外,本申请提供的方案(物联网短距离通信协议栈)还定义了统一的API,虚拟地址作为参数,物联网短距离通信协议根据虚拟地址对应的物理地址,调用对应网络API,实现对设备的控制和状态读取,如图2所示,应用统一的API,物联网短距离通信协议(本方案)根据统一的API参数的虚拟地址,找到对应的物理地址,然后调用对应的Wifi的API、Zigbee的API、BT的API或RFID的API。
本申请的方案(物联网短距离通信协议)可以在Java中间件上实现。
本申请提供的方案屏蔽了不同的短距离通信,统一了API接口,通过设备地址到虚拟地址的转换,统一了不同短距离通信的设备地址。本申请中物联网短距离通信协议对下屏蔽了具体的短距离通信协议如Wifi、Zigbee、Bluetooth(BT)、RFID,对上层应用提供了统一的API接口,通过智能设备统一的虚拟地址,来控制智能设备,使应用开发者不必关心智能设备是具体哪种协议,大大减少了应用开发的复杂度。
综上可知,短距离通信前景广阔,本申请引入整合各种短距离通信协议的概念,提高短距离通信的复杂度,收益可观,可以实现收益超过投入;并且随着短距离通信技术的不断发展,该协议的应用前景广阔。
为了解决上述技术问题,本发明实施例还提供了一种物联网短距离通信的装置,应用于中间件,如图3所示,所述装置包括:
第一获取模块,用于获取应用程序发送的应用程序编程接口的虚拟地址和欲访问的终端设备的虚拟地址,所述应用程序编程接口的虚拟地址和欲访问的终端设备的虚拟地址由第一通信协议分配;
匹配模块,用于匹配得到与所述应用程序编程接口的虚拟地址对应的所述应用程序编程接口的物理地址以及所述终端设备的虚拟地址对应的所述终端设备的物理地址,所述应用程序编程接口的物理地址和所述终端设备的物理地址由第二通信协议分配;
第一处理模块,用于根据所述应用程序编程接口的物理地址调用对应的应用程序编程接口,并通过所述应用程序编程接口和所述终端设备的物理地址访问所述终端设备。
本发明实施例提供的所述物联网短距离通信的装置通过获取应用程序发送的应用程序编程接口的虚拟地址和欲访问的终端设备的虚拟地址,匹配得到与应用程序编程接口的虚拟地址对应的应用程序编程接口的物理地址以及终端设备的虚拟地址对应的终端设备的物理地址,进而根据应用程序编程接口的物理地址调用对应的应用程序编程接口,并通过应用程序编程接口和终端设备的物理地址访问终端设备,屏蔽了不同的短距离通信协议,对上层应用提供了统一的虚拟网络地址和接口,通过智能设备统一的虚拟地址,来控制智能设备,使用户不必关心智能设备具体是哪种协议,大大减少了应用开发的复杂度,在使用前不再需要了解智能节点所在的网络和节点的IP地址,用户使用便捷,能够很好的满足用户体验需求。
其中,所述第一通信协议为物联网短距离通信协议;所述第二通信协议为高频无线协议、低功耗局域网协议、比特洪流协议、非接触式射频识别协议中的任意一种或多种。
具体的,所述匹配模块包括:第一获取子模块,用于根据所述应用程序编程接口的虚拟地址在应用程序编程接口关系表中得到所述应用程序编程接口的物理地址;第二获取子模块,用于根据所述终端设备的虚拟地址在设备地址关系表中得到所述终端设备的物理地址;
其中,所述应用程序编程接口关系表存有所述应用程序编程接口的物理地址和对应的统一格式后的虚拟地址;所述设备地址关系表存有终端设备描述信息以及对应的物理地址和对应的统一格式后的虚拟地址。
进一步的,所述装置还包括:第二获取模块,用于获取一个或多个应用程序编程接口的物理地址;第二处理模块,用于将所述一个或多个应用程序编程接口的物理地址分别转化为统一地址格式的虚拟地址;第一存储模块,用于将所述一个或多个应用程序编程接口的物理地址以及与所述物理地址对应的虚拟地址存储到所述应用程序编程接口关系表中。
更进一步的,所述装置还包括:第三获取模块,用于获取终端设备的物理地址以及对应的所述终端设备的设备描述信息;第三处理模块,用于将所述终端设备的物理地址转化为统一地址格式的虚拟地址;第二存储模块,用于将所述终端设备的物理地址以及与所述物理地址对应的虚拟地址和设备描述信息存储到所述设备地址关系表中。
为了防止用户调用的API和设备不可用,本发明实施例提供的所述装置还包括:接收模块,用于所述第一处理模块执行操作之前,接收执行广播的指令;广播模块,用于根据所述执行广播的指令进行广播;第四获取模块,用于获取各个应用程序编程接口和终端设备根据所述广播反馈的在线信息;
相应地,所述第一处理模块具体用于:根据所述应用程序编程接口的物理地址调用对应的所述在线信息指示在线的应用程序编程接口,并通过所述应用程序编程接口和所述终端设备的物理地址访问所述在线信息指示在线的终端设备。
本发明实施例提供的物联网短距离通信的装置可以应用于Java中间件,其中,Java中间件的体系结构如图4所示,Java中间件(Middle Ware Layer-中间件层)与Applications(应用程序)和Chip Platform(芯片平台)相连,Java中间件大概包括四个部分,分别是Porting层、Dalvik VM runtime、Embeded Third-party libraries以及corelibraries。
各个部分的具体含义及构成作用如下:
(1)Porting层(Porting layer)
移植层,封装底层平台和操作***,包括标准库的封装、驱动的封装、网络传输的封装和***功能的封装,是Java中间件正确运行的基础。
Standard library(标准库):为基础语言接口封装及平台相关的接口封装,例如字符串操作接口,文件***接口,内存管理操作接口等。
Driver wrapper(驱动程序包):对本规范定义的各类设备接口的封装如I2C(两线式串行总线),GPIO(通用输入/输出)封装等。
Network transmission(网络传输):在移植层封装http(超文本传送协议)。
System function wrapper(***功能包):底层平台软件已实现的接口,在移植层的重新封装,如短信,事件处理,线程管理等。
(2)Dalvik VM runtime
Java虚拟机的内核,用来解释Java语言,提供应用调试方法和对资源的管理。
JNI接口实现:JNI为Java语言与C语言互相调用的机制,JNI可以实现Java程序调用C函数,C程序调用Java函数。
编译器(Compiler):对Java语言的编译。
解释器(Interpretation):解释编译后的Java字节码。
对象管理(Object):Java语言基础的对象,类管理。
内存管理(Memory):包括内核运行的内存管理,垃圾回收机制,内存映射功能等。
Arch(自回归条件异方差模型):对于需高效执行的函数,通过汇编实现。
(3)Embeded Third-party libraries
虚拟机***用到的第三方库(嵌入式的第三方库),如压缩库,安全模块和多语言支持等。
压缩库(Zlib):完成文件的解压缩功能。
安全模块(SSL):提供基础的安全算法。
SQL(结构化查询语言)数据库:SQL数据库支持。
多语言支持(ICU):支持多种语言及语言管理。
(4)Core libraries
核心库,包括AMS-Application manager(remote/local)及动态加载的支持、WMMP的支持及J2ME库的支持等,提供应用程序管理和为开发应用程序的API。
应用程序管理***(AMS):支持本地和远程的应用程序管理。
WMMP通信协议接口(WMMP implementation):Java中间件必须提供WMMP协议的应用程序接口。
M2M extension:封装本规范定义的硬件外设接口,如I2C,SPI等。
Java动态加载(Java dynamic load):实现***中Java类的动态加载API,为实现AMS奠定基础。
J2ME兼容性(J2ME MIDP 2.0adaption):***会借鉴J2ME和兼容J2ME的某些功能,如接口定义方式,线程管理模块。
多任务(Multi-task):实现多个Java应用同时运行在本***上。
Dalvik VM required libraries:Dalvik虚拟机所需的库。
在Java中间件中实现物联网短距离通信协议,需要在移植层封装Wifi,BT,Zigbee,RFID四种协议,在core librares实现物联网短距离通信协议即可。
需要说明的是,上述物联网短距离通信的方法的所述实现实施例均适用于该物联网短距离通信的装置的实施例中,也能达到相同的技术效果。
为了解决上述技术问题,本发明实施例还提供了一种中间件,包括:上述的物联网短距离通信的装置。
其中,上述物联网短距离通信的装置的所述实现实施例均适用于该中间件的实施例中,也能达到相同的技术效果。
以上所述的是本发明的优选实施方式,应当指出对于本技术领域的普通人员来说,在不脱离本发明所述原理前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (15)
1.一种物联网短距离通信的方法,应用于中间件,其特征在于,所述方法包括:
获取应用程序发送的应用程序编程接口的虚拟地址和欲访问的终端设备的虚拟地址,所述应用程序编程接口的虚拟地址和欲访问的终端设备的虚拟地址由第一通信协议分配,所述第一通信协议为物联网短距离通信协议;
匹配得到与所述应用程序编程接口的虚拟地址对应的所述应用程序编程接口的物理地址以及所述终端设备的虚拟地址对应的所述终端设备的物理地址,所述应用程序编程接口的物理地址和所述终端设备的物理地址由第二通信协议分配;
根据所述应用程序编程接口的物理地址调用对应的应用程序编程接口,并通过所述应用程序编程接口和所述终端设备的物理地址访问所述终端设备。
2.如权利要求1所述的方法,其特征在于,在Java程序设计语言中间件的软件平台上实现该物联网短距离通信协议,屏蔽不同的短距离通信协议,提供统一的虚拟网络地址和接口。
3.如权利要求1所述的方法,其特征在于,所述第二通信协议为高频无线协议、低功耗局域网协议、比特洪流协议、非接触式射频识别协议中的任意一种或多种。
4.如权利要求1所述的方法,其特征在于,匹配得到与所述应用程序编程接口的虚拟地址对应的所述应用程序编程接口的物理地址以及所述终端设备的虚拟地址对应的所述终端设备的物理地址的步骤包括:
根据所述应用程序编程接口的虚拟地址在应用程序编程接口关系表中得到所述应用程序编程接口的物理地址;
根据所述终端设备的虚拟地址在设备地址关系表中得到所述终端设备的物理地址;
其中,所述应用程序编程接口关系表存有所述应用程序编程接口的物理地址和对应的统一格式后的虚拟地址;
所述设备地址关系表存有终端设备描述信息以及对应的物理地址和对应的统一格式后的虚拟地址。
5.如权利要求4所述的方法,其特征在于,所述方法还包括:
获取一个或多个应用程序编程接口的物理地址;
将所述一个或多个应用程序编程接口的物理地址分别转化为统一地址格式的虚拟地址;
将所述一个或多个应用程序编程接口的物理地址以及与所述物理地址对应的虚拟地址存储到所述应用程序编程接口关系表中。
6.如权利要求4所述的方法,其特征在于,所述方法还包括:
获取终端设备的物理地址以及对应的所述终端设备的设备描述信息;
将所述终端设备的物理地址转化为统一地址格式的虚拟地址;
将所述终端设备的物理地址以及与所述物理地址对应的虚拟地址和设备描述信息存储到所述设备地址关系表中。
7.如权利要求1所述的方法,其特征在于,根据所述应用程序编程接口的物理地址调用对应的应用程序编程接口,并通过所述应用程序编程接口和所述终端设备的物理地址访问所述终端设备之前还包括:
接收执行广播的指令;
根据所述执行广播的指令进行广播;
获取各个应用程序编程接口和终端设备根据所述广播反馈的在线信息;
相应地,根据所述应用程序编程接口的物理地址调用对应的应用程序编程接口,并通过所述应用程序编程接口和所述终端设备的物理地址访问所述终端设备的步骤具体为:
根据所述应用程序编程接口的物理地址调用对应的所述在线信息指示在线的应用程序编程接口,并通过所述应用程序编程接口和所述终端设备的物理地址访问所述在线信息指示在线的终端设备。
8.一种物联网短距离通信的装置,应用于中间件,其特征在于,所述装置包括:
第一获取模块,用于获取应用程序发送的应用程序编程接口的虚拟地址和欲访问的终端设备的虚拟地址,所述应用程序编程接口的虚拟地址和欲访问的终端设备的虚拟地址由第一通信协议分配,所述第一通信协议为物联网短距离通信协议;
匹配模块,用于匹配得到与所述应用程序编程接口的虚拟地址对应的所述应用程序编程接口的物理地址以及所述终端设备的虚拟地址对应的所述终端设备的物理地址,所述应用程序编程接口的物理地址和所述终端设备的物理地址由第二通信协议分配;
第一处理模块,用于根据所述应用程序编程接口的物理地址调用对应的应用程序编程接口,并通过所述应用程序编程接口和所述终端设备的物理地址访问所述终端设备。
9.如权利要求8所述的装置,其特征在于,在Java程序设计语言中间件的软件平台上实现该物联网短距离通信协议,屏蔽不同的短距离通信协议,提供统一的虚拟网络地址和接口。
10.如权利要求8所述的装置,其特征在于,所述第二通信协议为高频无线协议、低功耗局域网协议、比特洪流协议、非接触式射频识别协议中的任意一种或多种。
11.如权利要求8所述的装置,其特征在于,所述匹配模块包括:
第一获取子模块,用于根据所述应用程序编程接口的虚拟地址在应用程序编程接口关系表中得到所述应用程序编程接口的物理地址;
第二获取子模块,用于根据所述终端设备的虚拟地址在设备地址关系表中得到所述终端设备的物理地址;
其中,所述应用程序编程接口关系表存有所述应用程序编程接口的物理地址和对应的统一格式后的虚拟地址;
所述设备地址关系表存有终端设备描述信息以及对应的物理地址和对应的统一格式后的虚拟地址。
12.如权利要求11所述的装置,其特征在于,所述装置还包括:
第二获取模块,用于获取一个或多个应用程序编程接口的物理地址;
第二处理模块,用于将所述一个或多个应用程序编程接口的物理地址分别转化为统一地址格式的虚拟地址;
第一存储模块,用于将所述一个或多个应用程序编程接口的物理地址以及与所述物理地址对应的虚拟地址存储到所述应用程序编程接口关系表中。
13.如权利要求11所述的装置,其特征在于,所述装置还包括:
第三获取模块,用于获取终端设备的物理地址以及对应的所述终端设备的设备描述信息;
第三处理模块,用于将所述终端设备的物理地址转化为统一地址格式的虚拟地址;
第二存储模块,用于将所述终端设备的物理地址以及与所述物理地址对应的虚拟地址和设备描述信息存储到所述设备地址关系表中。
14.如权利要求8所述的装置,其特征在于,还包括:
接收模块,用于所述第一处理模块执行操作之前,接收执行广播的指令;
广播模块,用于根据所述执行广播的指令进行广播;
第四获取模块,用于获取各个应用程序编程接口和终端设备根据所述广播反馈的在线信息;
相应地,所述第一处理模块具体用于:
根据所述应用程序编程接口的物理地址调用对应的所述在线信息指示在线的应用程序编程接口,并通过所述应用程序编程接口和所述终端设备的物理地址访问所述在线信息指示在线的终端设备。
15.一种中间件,其特征在于,包括:如权利要求8至14任一项所述的物联网短距离通信的装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510053143.3A CN105991779B (zh) | 2015-02-02 | 2015-02-02 | 一种物联网短距离通信的方法、装置及中间件 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510053143.3A CN105991779B (zh) | 2015-02-02 | 2015-02-02 | 一种物联网短距离通信的方法、装置及中间件 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105991779A CN105991779A (zh) | 2016-10-05 |
CN105991779B true CN105991779B (zh) | 2019-07-05 |
Family
ID=57036612
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510053143.3A Active CN105991779B (zh) | 2015-02-02 | 2015-02-02 | 一种物联网短距离通信的方法、装置及中间件 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105991779B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108491337B (zh) * | 2018-04-03 | 2021-04-23 | 苏州和欣致远节能科技有限公司 | 一种实现群组控制的方法 |
CN111435338A (zh) * | 2019-01-14 | 2020-07-21 | ***通信集团终端有限公司 | 多智能硬件统一管控方法、平台、***、设备及存储介质 |
CN114500455B (zh) * | 2021-12-29 | 2023-08-25 | 杭州深渡科技有限公司 | 一种智能灯具的配置方法和*** |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102402472A (zh) * | 2010-09-17 | 2012-04-04 | 鸿富锦精密工业(深圳)有限公司 | 内存检测***及其检测方法 |
US20120331243A1 (en) * | 2011-06-24 | 2012-12-27 | International Business Machines Corporation | Remote Direct Memory Access ('RDMA') In A Parallel Computer |
US8935499B2 (en) * | 2011-10-17 | 2015-01-13 | International Business Machines Corporation | Interface for management of data movement in a thin provisioned storage system |
CN103188648A (zh) * | 2011-12-30 | 2013-07-03 | ***通信集团公司 | 一种物联网***及其管理方法 |
CN102568514B (zh) * | 2012-01-05 | 2015-05-27 | 青岛艾孚高清技术有限公司 | 一种3d高清多媒体播放装置 |
-
2015
- 2015-02-02 CN CN201510053143.3A patent/CN105991779B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN105991779A (zh) | 2016-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107247597B (zh) | 为智能设备提供统一抽象表示的设备对象的抽象表示方法 | |
AU2014386583B8 (en) | Inter-process communication method based on application layer of android and basic application communication system | |
CN106169976A (zh) | 一种基于新型智能家庭网关的服务*** | |
CN102857566A (zh) | 一种可软件定制的物联网智能网关 | |
CN105991779B (zh) | 一种物联网短距离通信的方法、装置及中间件 | |
WO2011137788A1 (zh) | 设备管理方法、中间件及机器通信平台、设备和*** | |
CN106385422A (zh) | 一种基于物联网和云计算的公共开放***及实现方法 | |
CN103051525A (zh) | 网关服务中间件***及方法、包含该***的装置和*** | |
CN102185898B (zh) | 一种多协议的医疗数据共享和服务集成***及实现方法 | |
CN108055688A (zh) | 一种用于智能显示设备的配网方法及装置、终端设备 | |
US10445079B2 (en) | Mapping and formatting input commands to a third party protocol | |
CN105007205A (zh) | 一种实现智能家居设备统一管理和控制的方法 | |
CN106953923A (zh) | 一种工业物联网智能*** | |
CN108683636A (zh) | 一种充电桩通讯方法及*** | |
WO2013029329A1 (zh) | 智能软件服务平台***及方法、包含该***的装置和*** | |
CN108471441A (zh) | 一种sap中间件以及利用该sap中间件的sap r3双向通讯方法 | |
CN107450993A (zh) | 一种分布式iec61850通信组件的数据交互方法 | |
CN105871968A (zh) | 设备搜索的方法、装置及*** | |
CN206640595U (zh) | 一种家庭网关 | |
CN108259281A (zh) | 基于ZigBee和Raspberry Pi的智能家居*** | |
KR102094041B1 (ko) | IoT 단말 간 실시간으로 자율적인 상호작용을 위한 RDF 그래프 기반의 Semantic 엔진을 구비한 시스템 | |
CN208001293U (zh) | 基于ZigBee和Raspberry Pi的智能家居*** | |
CN108399245B (zh) | 智能家电网关设备的数据处理方法、装置及智能家电网关 | |
CN103731345A (zh) | 一种网络报文处理方法及设备 | |
CN101404656A (zh) | 一种与第三方智能设备协议通讯的软件接口设计方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |