著录项信息
专利名称 | 设备的网络互联方法和系统 |
申请号 | CN201410020399.X | 申请日期 | 2014-01-16 |
法律状态 | 授权 | 申报国家 | 暂无 |
公开/公告日 | 2015-07-22 | 公开/公告号 | CN104796308A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | H04L12/46 | IPC分类号 | H;0;4;L;1;2;/;4;6查看分类表>
|
申请人 | 腾讯科技(深圳)有限公司 | 申请人地址 | 广东省深圳市福田区振兴路赛格科技园2栋东403室
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 腾讯科技(深圳)有限公司 | 当前权利人 | 腾讯科技(深圳)有限公司 |
发明人 | 王跃;赵千千;马学敏;薛文庆 |
代理机构 | 广州华进联合专利商标代理有限公司 | 代理人 | 何平;邓云鹏 |
摘要
本发明提供了一种设备的网络互联方法和系统。所述方法包括:根据预设的至少一种连接方式建立当前设备与远端设备之间的连接;解析采集得到的操作数据以得到当前设备中触发的事件信息,所述操作数据为当前设备中触发的操作所产生的;通过所述建立的连接将所述事件信息同步至远端设备,以将所述当前设备中触发的操作同步至远端设备。采用本发明能简化设备之间的相互连接的操作。
1.一种设备的网络互联方法,包括如下步骤:
根据预设的多种连接方式所对应的使用顺序依次进行当前设备与远端设备之间的连接,直至成功与所述远端设备建立连接;所述连接方式的使用顺序为:最先使用设备直连的连接方式,然后再使用内网穿透的连接方式,最后使用后台中转的连接方式;其中,在通过所述设备直连和内网穿透的连接方式均未连接成功时,激活扫描功能,以对所述远端设备跳转至的包含了条码信息的扫描页面进行条码信息的扫描,以得到远端设备的标识符,所述条码信息由所述远端设备生成,并注册至设备服务器中;打包所述远端设备的标识符和所述当前设备的标识符以得到连接请求包并发送至设备服务器中,以建立所述当前设备和远端设备之间的通信转发通道;
解析通过传感器采集得到的操作数据以得到当前设备中触发的多个事件信息,所述传感器包括陀螺仪、重力感应仪、及光线感应仪中的至少一种;所述操作数据为当前设备中触发的操作所产生的;所述操作数据包括当前设备在空中划过的轨迹数据;所述事件信息包括鼠标事件信息;
根据预设频率将所述多个事件信息按照产生的先后顺序组成一个或多个数据包,并压缩得到压缩包;所述预设频率小于对所述操作数据进行采集的频率;所述预设频率为一秒2至10个包;
通过建立的连接将包含了事件信息的压缩包同步至远端设备,以将所述当前设备中触发的操作同步至远端设备,使得所述远端设备控制鼠标指针按照事件信息所对应的轨迹进行移动。
2.根据权利要求1所述的方法,其特征在于,通过所述设备直连的连接方式进行当前设备与远端设备之间的连接的步骤包括:
通过简单服务发现协议得到与当前设备相匹配的远端设备,并枚举所述与当前设备相匹配的远端设备;
根据触发的设备选定指令将所述当前设备与所述设备选定指令对应的远端设备直接连接。
3.根据权利要求2所述的方法,其特征在于,通过所述内网穿透的连接方式进行当前设备与远端设备之间的连接的步骤包括:
判断通过所述设备直连是否成功连接远端设备,若为否,则
向设备服务器发起内网穿透请求,以通过所述设备服务器进行内网穿透建立与远端设备之间的连接。
4.一种设备的网络互联方法,包括如下步骤:
根据预设的多种连接方式所对应的使用顺序依次进行当前设备与远端设备之间的连接,直至成功与所述远端设备建立连接;所述连接方式的使用顺序为:最先使用设备直连的连接方式,然后再使用内网穿透的连接方式,最后使用后台中转的连接方式;其中,在通过所述设备直连和内网穿透的连接方式均未连接成功时,激活扫描功能,以对所述远端设备跳转至的包含了条码信息的扫描页面进行条码信息的扫描,以得到远端设备的标识符,所述条码信息由所述远端设备生成,并注册至设备服务器中;打包所述远端设备的标识符和所述当前设备的标识符以得到连接请求包并发送至设备服务器中,以建立所述当前设备和远端设备之间的通信转发通道;
解析通过传感器采集得到的操作数据以得到当前设备中触发的多个事件信息,所述传感器包括陀螺仪、重力感应仪、及光线感应仪中的至少一种;所述操作数据为当前设备中触发的操作所产生的;所述操作数据包括当前设备在空中划过的轨迹数据;所述事件信息包括鼠标事件信息;
根据预设频率将所述多个事件信息按照产生的先后顺序组成一个或多个数据包,并压缩得到压缩包;所述预设频率小于对所述操作数据进行采集的频率;所述预设频率为一秒2至10个包;
通过建立的连接将包含了事件信息的压缩包同步至远端设备,以将所述当前设备中触发的操作同步至远端设备;
通过所述远端设备接收所述事件信息,根据所述事件信息在所述远端设备响应当前设备中触发的操作,使得所述远端设备控制鼠标指针按照事件信息所对应的轨迹进行移动。
5.根据权利要求4所述的方法,其特征在于,通过所述设备直连的连接方式进行当前设备与远端设备之间的连接的步骤包括:
通过简单服务发现协议得到与当前设备相匹配的远端设备,并枚举所述与当前设备相匹配的远端设备;
根据触发的设备选定指令将所述当前设备与所述设备选定指令对应的远端设备直接连接。
6.根据权利要求5所述的方法,其特征在于,通过所述内网穿透的连接方式进行当前设备与远端设备之间的连接的步骤包括:
判断通过所述设备直连是否成功连接远端设备,若为否,则
向设备服务器发起内网穿透请求,以通过所述设备服务器进行内网穿透建立与远端设备之间的连接。
7.一种设备的网络互联系统,其特征在于,包括:
连接建立模块,用于根据预设的多种连接方式所对应的使用顺序依次进行建立当前设备与远端设备之间的连接,直至成功与所述远端设备建立连接;所述连接方式的使用顺序为:最先使用设备直连的连接方式,然后再使用内网穿透的连接方式,最后使用后台中转的连接方式;其中,在通过所述设备直连和内网穿透的连接方式均未连接成功时,激活扫描功能,以对所述远端设备跳转至的包含了条码信息的扫描页面进行条码信息的扫描,以得到远端设备的标识符,所述条码信息由所述远端设备生成,并注册至设备服务器中;打包所述远端设备的标识符和所述当前设备的标识符以得到连接请求包并发送至设备服务器中,以建立所述当前设备和远端设备之间的通信转发通道;
解析模块,用于解析通过传感器采集得到的操作数据以得到当前设备中触发的多个事件信息,所述传感器包括陀螺仪、重力感应仪、及光线感应仪中的至少一种;所述操作数据为当前设备中触发的操作所产生的;所述操作数据包括当前设备在空中划过的轨迹数据;
所述事件信息包括鼠标事件信息;
组包压缩模块,用于根据预设频率将所述多个事件信息按照产生的先后顺序组成一个或多个数据包,并压缩得到压缩包;所述预设频率小于对所述操作数据进行采集的频率;所述预设频率为一秒2至10个包;
同步模块,用于通过建立的连接将包含了事件信息的压缩包同步至远端设备,以将所述当前设备中触发的操作同步至远端设备,使得所述远端设备控制鼠标指针按照事件信息所对应的轨迹进行移动。
8.根据权利要求7所述的系统,其特征在于,所述连接建立模块包括:
设备发现枚举单元,用于通过简单服务发现协议得到与当前设备相匹配的远端设备,并枚举所述与当前设备相匹配的远端设备;
直连单元,用于根据触发的设备选定指令将所述当前设备与所述设备选定指令对应的远端设备直接连接。
9.根据权利要求8所述的系统,其特征在于,所述连接建立模块包括:
直连判断单元,用于判断通过所述设备直连是否成功连接远端设备,若为否,则通知内网穿透单元;
所述内网穿透单元用于向设备服务器发起内网穿透请求,以通过所述设备服务器进行内网穿透建立与远端设备之间的连接。
10.一种设备的网络互联系统,其特征在于,所述系统包括:
连接建立模块,用于根据预设的多种连接方式所对应的使用顺序依次进行当前设备与远端设备之间的连接,直至成功与所述远端设备建立连接;所述连接方式的使用顺序为:最先使用设备直连的连接方式,然后再使用内网穿透的连接方式,最后使用后台中转的连接方式;其中,在通过所述设备直连和内网穿透的连接方式均未连接成功时,激活扫描功能,以对所述远端设备跳转至的包含了条码信息的扫描页面进行条码信息的扫描,以得到远端设备的标识符,所述条码信息由所述远端设备生成,并注册至设备服务器中;打包所述远端设备的标识符和所述当前设备的标识符以得到连接请求包并发送至设备服务器中,以建立所述当前设备和远端设备之间的通信转发通道;
解析模块,用于解析通过传感器采集得到的操作数据以得到当前设备中触发的多个事件信息,所述传感器包括陀螺仪、重力感应仪、及光线感应仪中的至少一种;所述操作数据为当前设备中触发的操作所产生的;所述操作数据包括当前设备在空中划过的轨迹数据;
所述事件信息包括鼠标事件信息;
组包压缩模块,用于根据预设频率将所述多个事件信息按照产生的先后顺序组成一个或多个数据包,并压缩得到压缩包;所述预设频率小于对所述操作数据进行采集的频率;所述预设频率为一秒2至10个包;
同步模块,用于通过建立的连接将包含了事件信息的压缩包同步至远端设备,以将所述当前设备中触发的操作同步至远端设备;
同步响应模块,用于接收所述事件信息,根据所述事件信息在所述远端设备响应当前设备中触发的操作;
所述连接建立模块、解析模块和同步模块运行于所述当前设备中,所述同步响应模块运行于所述远端设备,使得所述远端设备控制鼠标指针按照事件信息所对应的轨迹进行移动。
11.根据权利要求10所述的系统,其特征在于,所述连接建立模块包括:
设备发现枚举单元,用于通过简单服务发现协议得到与当前设备相匹配的远端设备,并枚举所述与当前设备相匹配的远端设备;
直连单元,用于根据触发的设备选定指令将所述当前设备与所述设备选定指令对应的远端设备直接连接。
12.根据权利要求11所述的系统,其特征在于,所述连接建立模块包括:
直连判断单元,用于判断通过所述设备直连是否成功连接远端设备,若为否,则通知内网穿透单元;
所述内网穿透单元用于向设备服务器发起内网穿透请求,以通过所述设备服务器进行内网穿透建立与远端设备之间的连接。
13.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至6中任一项所述方法的步骤。
14.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至6中任一项所述方法的步骤。
设备的网络互联方法和系统\n技术领域\n[0001] 本发明涉及网络应用技术,特别是涉及一种设备的网络互联方法和系统。\n背景技术\n[0002] 随着设备中各种应用的发展,设备之间通过进行相互连接而进行各种视频、图片的传送日趋频繁,进而使得设备之间的相互连接变得越来越重要。\n[0003] 然而,设备之间常常由于涉及了操作系统的不同等各种因素而难以连接,甚至常常需要用户自己考虑两台设备的状况而采用适当的连接方式实现两台设备之间的连接,例如,充分考虑两台设备中的操作系统、分别获取并输入两台设备的网络地址等,进而尝试通过一种或者多种连接方式实现两台设备之间的成功连接,操作上非常繁琐。\n发明内容\n[0004] 基于此,有必要提供一种能简化操作的设备的网络互联方法。\n[0005] 此外,还有必要提供一种能简化操作的设备的网络互联系统。\n[0006] 一种设备的网络互联方法,包括如下步骤:\n[0007] 根据预设的至少一种连接方式建立当前设备与远端设备之间的连接;\n[0008] 解析采集得到的操作数据以得到当前设备中触发的事件信息,所述操作数据为当前设备中触发的操作所产生的;\n[0009] 通过所述建立的连接将所述事件信息同步至远端设备,以将所述当前设备中触发的操作同步至远端设备。\n[0010] 一种设备的网络互联方法,包括如下步骤:\n[0011] 根据预设的至少一种连接方式建立当前设备与远端设备之间的连接;\n[0012] 解析采集得到的操作数据以得到当前设备中触发的事件信息,所述操作数据为当前设备中触发的操作所产生的;\n[0013] 通过所述建立的连接将所述事件信息同步至远端设备,以将所述当前设备中触发的操作同步至远端设备;\n[0014] 通过所述远端设备接收所述事件信息,根据所述事件信息在所述远端设备响应当前设备中触发的操作。\n[0015] 一种设备的网络互联系统,包括:\n[0016] 连接建立模块,用于根据预设的至少一种连接方式建立当前设备与远端设备之间的连接;\n[0017] 解析模块,用于解析采集得到的操作数据以得到当前设备中触发的事件信息,所述操作数据为当前设备中触发的操作所产生的;\n[0018] 同步模块,用于通过所述建立的连接将所述事件信息同步至远端设备,以将所述当前设备中触发的操作同步至远端设备。\n[0019] 一种设备的网络互联系统,所述系统包括:\n[0020] 连接建立模块,用于根据预设的至少一种连接方式建立当前设备与远端设备之间的连接;\n[0021] 解析模块,用于解析采集得到的操作数据以得到当前设备中触发的事件信息,所述操作数据为当前设备中触发的操作所产生的;\n[0022] 同步模块,用于通过所述建立的连接将所述事件信息同步至远端设备,以将所述当前设备中触发的操作同步至远端设备;\n[0023] 同步响应模块,用于接收所述事件信息,根据所述事件信息在所述远端设备响应当前设备中触发的操作;\n[0024] 所述连接建立模块、解析模块和同步模块运行于所述当前设备中,所述同步响应模块运行于所述远端设备。\n[0025] 上述设备的网络互联方法和系统,将在当前设备中根据预设的至少一种连接方式建立当前设备与远端设备之间的连接,进而解析采集得到的操作数据以得到当前设备中触发的事件信息,通过建立的连接将事件信息传送至远端设备中,以将该操作数据所对应的操作同步至远端设备中,由于可自动逐一采用预设的若干种连接方式,直至成功连接远端设备,因此大大简化了操作,不需要用户自己考虑当前设备和远端设备的状况进行连接方式的选取和逐一手动尝试,同时也实现了当前设备与远端设备之间的操作同步,扩大了设备之间可传送的数据种类。\n附图说明\n[0026] 图1为一个实施例中设备的网络互联方法的流程图;\n[0027] 图2为一个实施例中根据预设的至少一种连接方式建立当前设备与远端设备之间的连接的方法流程图;\n[0028] 图3为另一个实施例中根据预设的至少一种连接方式建立当前设备与远端设备之间的连接的方法流程图;\n[0029] 图4为另一个实施例中根据预设的至少一种连接方式建立当前设备与远端设备之间的连接的方法流程图;\n[0030] 图5为另一个实施例中设备的网络互联方法的流程图;\n[0031] 图6为一个实施例中当前设备和远端设备的交互示意图;\n[0032] 图7为一个实施例中设备的网络互联系统的结构示意图;\n[0033] 图8为一个实施例中连接建立模块的结构示意图;\n[0034] 图9为另一个实施例中连接建立模块的结构示意图;\n[0035] 图10为另一个实施例中连接建立模块的结构示意图;\n[0036] 图11为另一个实施例中设备的网络互联系统的结构示意图;\n[0037] 图12为本发明实施例的一个计算机系统的模块图。\n具体实施方式\n[0038] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。\n[0039] 除非上下文另有特定清楚的描述,本发明中的元件和组件,数量既可以单个的形式存在,也可以多个的形式存在,本发明并不对此进行限定。本发明中的步骤虽然用标号进行了排列,但并不用于限定步骤的先后次序,除非明确说明了步骤的次序或者某步骤的执行需要其他步骤作为基础,否则步骤的相对次序是可以调整的。可以理解,本文中所使用的术语“和/或”涉及且涵盖相关联的所列项目中的一者或一者以上的任何和所有可能的组合。\n[0040] 如图1所示,在一个实施例中,一种设备的网络互联方法,包括如下步骤:\n[0041] 步骤S110,根据预设的至少一种连接方式建立当前设备与远端设备之间的连接。\n[0042] 本实施例中,预先设置了若干种连接方式,当前设备与远端设备建立连接时,该当前设备将依次使用预先设置的若干种连接方式进行当前设备和远端设备的连接,直至成功与远端设备建立连接。\n[0043] 具体的,将根据连接方式所对应的使用顺序逐一使用预设的若干种连接方式,待某一连接方式成功使得当前设备与远端设备建立连接之后将不再使用下一连接方式。\n[0044] 步骤S130,解析采集得到的操作数据以得到当前设置中触发的事件信息,该操作数据为当前设备中触发的操作所产生的。\n[0045] 本实施例中,当前设备中将内置了各种传感器以采集用户在当前设备中触发的操作,得到相应的操作数据。此时,当前设备将对采集得到的操作数据进行解析,以得到对应的事件信息,进而根据该事件信息对用户的操作进行响应和反馈。\n[0046] 步骤S150,通过建立的连接将事件信息同步至远端设备,以将当前设备中触发的操作同步至远端设备。\n[0047] 本实施例中,通过成功建立的当前设备和远端设备之间的连接将事件信息同步至远端设备中,以使得远端设备将对用户在当前设备中所触发的操作进行响应和反馈。\n[0048] 通过如上所述的方案将使得当前设备中触发的操作得以同步至远端设备中,进而在远端设备中响应该操作,并向触发操作的用户进行反馈,例如,当前设备中内置了陀螺仪、重力感应仪、光线感应仪等传感器,以采集用户在当前设备中触发的各种操作。例如,当用户拿起当前设备在空中挥动时,将获取到陀螺仪中发生变化的数据,即当前设备在空中划过的轨迹数据,该轨迹数据即为操作数据,此时,将解析操作数据以得到相应的事件信息,通过与远端设备建立的连接将事件信息传送到远端设备中,远端设备可为电脑,此时接收到事件信息的电脑将控制鼠标指针按照事件信息所对应的轨迹进行移动,以将用户在当前设备中的操作同步至远端设备中,实现了设备之间的操作同步。\n[0049] 如图2所示,在一个实施例中,该连接方式包括设备直连,上述步骤S110包括:\n[0050] 步骤S111,通过简单服务发现协议得到与当前设备相匹配的远端设备,并枚举与当前设备相匹配的远端设备。\n[0051] 本实施例中,简单服务发现协议(Simple Service Discovery Protocol,简称SSDP)是uPnP(Universal Plug and Play,通用即插即用)协议簇中的一个简单设备发现协议。\n[0052] 具体的,在支持简单服务发现协议的设备都将通过简单服务发现协议中的ssdp:\nalive方法标示所提供的服务类型,并各网段中的特定端口进行广播,其中,广播的消息包括了地址和提供的服务类型等信息。\n[0053] 此时当前设备将通过ssdp:search方法根据消息中服务类型查询所在网段中使用了相同协议的设备,即提供了相同服务类型的设备,该设备即为与当前设备相匹配的远端设备。\n[0054] 同一网段中所得到的与当前设备相匹配的远端设备大都为多个,此时,将对得到的多个与当前设备相匹配的远端设备进行枚举以供当前设备的用户进行选取。\n[0055] 步骤S112,根据触发的设备选定指令将当前设备与设备选定指令对应的远端设备直接连接。\n[0056] 本实施例中,获取用户对枚举的多个与当前设备相匹配的远端设备所进行的设备选定操作以得到设备选定指令,以根据设备选定指令将当前设备与对应的远端设备进行直接连接即可实现当前设备与远端设备之间的连接。\n[0057] 如图3所示,在一个实施例中,该连接方式包括内网穿透方式,上述步骤S110包括:\n[0058] 步骤S113,判断通过设备直连是否成功连接远端设备,若为否,则进入步骤S114,若为是,则进入步骤S130。\n[0059] 本实施例中,在预设的若干种连接方式中,将最先使用设备直连的方式进行连接尝试,因此,将首先使用设备直连这一连接方式进行当前设备和远端设备之间的连接,在通过设备直连这一连接方式无法成功连接远端设备时,将进入步骤S114,以通过内网穿透方式进行当前设备和远端设备之间的连接。\n[0060] 判断得到通过设备直连无法成功连接远端设备时,将说明当前设备和远端设备并不在同一个网段中,进而导致直连不成功,未处于同一个网段中的当前设备和远端设备将处于两个不同的路由环境中,因此,将通过内网穿透的连接方式尝试进行建立与远端设备的连接。\n[0061] 步骤S114,向设备服务器发起内网穿透请求,以通过设备服务器进行内网穿透建立与远端设备之间的连接。\n[0062] 本实施例中,设备服务器将用于实现当前设备和远端设备之间的内网穿透,以使得当前设备得以建立与远端设备之间的连接。\n[0063] 分别处于不同路由环境的当前设备和远端设备是无法直接通信,以互发信息的,当前设备所在的路由环境和远端设备所在的路由环境均只允许主动向外发送的信息通过,因此,无论是当前设备直接发送给远端设备的信息还是远端设备直接发送给当前设备的信息都将被路由器认为是不被信任的而被丢弃。\n[0064] 因此,为实现当前设备和远端设备之间的通信,当前设备将连接设备服务器,以向设备服务器发起内网穿透请求,该内网穿透请求包括了当前设备的网络地址和端口号。\n[0065] 相应的,远端设备也将向设备服务器发起内网穿透请求,以向设备服务器告之远端设备所在的网络地址和端口号。\n[0066] 此时,由于当前设备和远端设备均已向外发送过信息,在所对应的路由上均存在了允许数据进出的通道,并且对当前设备和远端设备而言均已在设备服务器的作用下获知对方的网络地址和端口号,因此,可直接建立当前设备和远端设备之间的连接。\n[0067] 如图4所示,在一个实施例中,该连接方式包括后台中转,上述步骤S110包括:\n[0068] 步骤S115,判断内网穿透是否成功,若为否,则进入步骤S116,若为是,则进入步骤S130。\n[0069] 本实施例中,预设的若干种连接方式中,设备直连的使用顺序早于内网穿透的连接方式的使用顺序,因此,在尝试通过内网穿透的连接方式建立当前设备和远端设备之间的连接的过程中,若无法成功建立连接,则将进入步骤S116,以通过后台中转的方式尝试进行当前设备和远端设备之间的连接。\n[0070] 步骤S116,扫描远端设备中生成的条码信息以得到远端设备的标识符,该条码信息由远端设备生成,并注册至设备服务器中。\n[0071] 本实施例中,在通过内网穿透无法成功建立当前设备和远端设备之间的连接之后,远端设备将生成条码信息,其显示的页面跳转至包含了条码信息的扫码页面,并注册至设备服务器中,以使得设备服务器获取到远端设备所在的网络地址和标识符(GUID,Globally Unique Identifier)。\n[0072] 此时,当前设备将激活扫码功能,以对远端设备显示的扫码页面进行条码信息的扫描,在优选的实施例中,该条码信息为二维码信息。\n[0073] 步骤S117,打包远端设备的标识符和当前设备的标识符以得到连接请求包并发送至设备服务器中,以建立当前设备和远端设备之间的通信转发通道。\n[0074] 本实施例中,当前设备通过对条码信息的扫描得到了远端设备的标识符,将远端设备的标识符和当前设备的标识符打包以得到连接请求包,向设备服务器发送连接请求包,此时,由于远端设备在生成条码信息时已经向设备服务器注册,因此,设备服务器可从接收到的当前设备发起的连接请求包中提取得到当前设备的标识符和远端设备的标识符,根据远端设备的标识符得到远端设备所在的网络地址,以建立并维护远端设备和当前设备之间的通信转发通道。\n[0075] 在通过后台中转的连接方式建立当前设备和远端设备之间的连接的过程中,设备服务器将负责找到匹配的两台设备,即当前设备和远端设备,建立并维持通信转发通道,负责进行当前设备和远端设备之间的信息转发,以使得当前设备能够接收到远端设备发送至设备服务器,并由设备服务器转发的信息,远端设备也能够接收到当前设备发送至设备服务器,并由设备服务器转发的信息。\n[0076] 在分别通过设备直连、内网穿透和后台中转的连接方式尝试建立当前设备和远端设备的连接的过程中,由于设备直连的连接速度将是最快的,内网穿透的连接速度次之,后台中转的连接速度是最慢的,因此,将设置连接方式的使用顺序为:最先使用设备直连的连接方式,然后再使用内网穿透的连接方式,最后使用后台中转的连接方式,以先尝试使用连接速度最快的连接方式进行当前设备和远端设备之间的连接,以保证尽可能快速的完成当前设备和远端设备之间的连接。\n[0077] 在一个实施例中,上述步骤S150之前,该方法还包括:\n[0078] 根据预设频率对事件信息按照产生的先后顺序进行组包,并压缩得到压缩包的步骤。\n[0079] 本实施例中,内置了多种传感器进行操作数据采集的当前设备中,对操作数据进行采样的频率将是非常高的,例如,一秒种接近100赫兹,而对操作数据进行解析所得到的多个事件信息将是组为一个或者多个数据包进行传送的。\n[0080] 预设频率将是对事件信息进行组包的频率,该预设频率将是小于对操作数据进行采样的频率的,以避免高的组包的频率造成频繁的发包,进而造成网络拥堵。例如,该预设频率可为一秒2~10个包,保证了远端设备中根据事件信息进行响应和反馈的顺滑特性,即平滑性。\n[0081] 具体的,将解析所得到预设数量的事件信息按照先后顺序组成队列,以形成一个数据包,进而按照预设频率对数据包进行组包,并压缩,以避免发送过于庞大的数据包占用过多的网络资源。\n[0082] 进一步的,上述步骤S150的具体过程为:通过建立的连接将包含了事件信息的压缩包同步至远端设备。\n[0083] 本实施例中,将组包并压缩所得到的压缩包由建立的连接传送到远端设备中,以使得远端设备响应当前设备中触发的操作。\n[0084] 如图5所示,在一个实施例中,一种设备的网络互联方法,运行于当前设备和远端设备中,包括了如下步骤:\n[0085] 步骤S210,根据预设的至少一种连接方式建立当前设备与远端设备之间的连接。\n[0086] 步骤S230,解析采集得到的操作数据以得到当前设备中触发的事件信息,该操作数据为当前设备中触发的操作所产生的。\n[0087] 步骤S250,通过建立的连接将事件信息同步至远端设备,以将当前设备中触发的操作同步至远端设备。\n[0088] 步骤S270,通过远端设备接收事件信息,根据事件信息在远端设备响应当前设备中触发的操作。\n[0089] 下面结合一个具体的实施例来详细阐述上述设备的网络互联方法。该实施例中,当前设备和远端设备将通过如上所述的设备的网络互联方法实现连接,如图6所示,为与远端设备建立网络连接,当前设备将首先执行步骤S601,激活SSDP监听,并进行本端信息的广播,以发现设备,向用户枚举发现的设备,如步骤S602所描述的,用户将触发设备选定指令,以选择得到枚举的远端设备,此时将当前设备与选择的远端设备进行UDP直连,若UDP直连成功则说明当前设备和远端设备之间握手成功,可成功建立网络连接。\n[0090] 若UDP直连失败,则执行步骤S603,向设备服务器发起内网穿透请求,相应的,远端设备也将执行步骤S604向设备服务器发起内网穿透请求,进而使得当前设备和远端设备均在设备服务器的作用下获知对方的网络地址和端口号,以建立当前设备和远端设备之间的连接。\n[0091] 当前设备将执行步骤S605,远端设备也将执行步骤S606以判断内网穿透是否成功,若为是,则当前设备和远端设备握手成功,建立了网络连接,若为否,则当前设备将执行步骤S607激活扫码功能,以扫描远端设备生成的二维码,将注册设备服务器中,以使得设备服务器得到远端设备的标识符和当前设备的标识符。\n[0092] 相应的,远端设备也将执行步骤S608跳转至包含了二维码的扫码页面,生成二维码信息,并注册至设备服务器中,以使得设备服务器获取到远端设备所在的网络地址和标识符。\n[0093] 此时,当前设备和远端设备将在设备服务器的作用下建立通信转通道。\n[0094] 如图7所示,在一个实施例中,一种设备的网络互联系统,包括连接建立模块110、解析模块130和同步模块150。\n[0095] 连接建立模块110,用于根据预设的至少一种连接方式建立当前设备与远端设备之间的连接。\n[0096] 本实施例中,预先设置了若干种连接方式,当前设备与远端设备建立连接时,该当前设备中的连接建立模块110将依次使用预先设置的若干种连接方式进行当前设备和远端设备的连接,直至成功与远端设备建立连接。\n[0097] 具体的,连接建立模块110将根据连接方式所对应的使用顺序逐一使用预设的若干种连接方式,待某一连接方式成功使得当前设备与远端设备建立连接之后将不再使用下一连接方式。\n[0098] 解析模块130,用于解析采集得到的操作数据以得到当前设备中触发的事件信息,该操作数据为当前设备中触发的操作所产生的。\n[0099] 本实施例中,当前设备中将内置了各种传感器以采集用户在当前设备中触发的操作,得到相应的操作数据。此时,当前设备中的解析模块130将对采集得到的操作数据进行解析,以得到对应的事件信息,进而根据该事件信息对用户的操作进行响应和反馈。\n[0100] 同步模块150,用于通过建立的连接将事件信息同步至远端设备,以将当前设备中触发的操作同步至远端设备。\n[0101] 本实施例中,同步模块150通过成功建立的当前设备和远端设备之间的连接将事件信息同步至远端设备中,以使得远端设备将对用户在当前设备中所触发的操作进行响应和反馈。\n[0102] 通过如上所述的方案将使得当前设备中触发的操作得以同步至远端设备中,进而在远端设备中响应该操作,并向触发操作的用户进行反馈,例如,当前设备中内置了陀螺仪、重力感应仪、光线感应仪等传感器,以采集用户在当前设备中触发的各种操作。例如,当用户拿起当前设备在空中挥动时,将获取到陀螺仪中发生变化的数据,即当前设备在空中划过的轨迹数据,该轨迹数据即为操作数据,此时,将解析操作数据以得到相应的事件信息,通过与远端设备建立的连接将事件信息传送到远端设备中,远端设备可为电脑,此时接收到事件信息的电脑将控制鼠标指针按照事件信息所对应的轨迹进行移动,以将用户在当前设备中的操作同步至远端设备中,实现了设备之间的操作同步。\n[0103] 如图8所示,在一个实施例中,连接方式包括设备直连,连接建立模块110包括设备发现枚举单元111和直连单元112。\n[0104] 设备发现枚举单元111,用于通过简单服务发现协议得到与当前设备相匹配的远端设备,并枚举与当前设备相匹配的远端设备。\n[0105] 本实施例中,简单服务发现协议是uPnP协议簇中的一个简单设备发现协议。\n[0106] 具体的,在支持简单服务发现协议的设备都将通过简单服务发现协议中的ssdp:\nalive方法标示所提供的服务类型,并各网段中的特定端口进行广播,其中,广播的消息包括了地址和提供的服务类型等信息。\n[0107] 此时当前设备中的设备发现枚举单元111将通过ssdp:search方法根据消息中服务类型查询所在网段中使用了相同协议的设备,即提供了相同服务类型的设备,该设备即为与当前设备相匹配的远端设备。\n[0108] 同一网段中所得到的与当前设备相匹配的远端设备大都为多个,此时,设备发现枚举单元111将对得到的多个与当前设备相匹配的远端设备进行枚举以供当前设备的用户进行选取。\n[0109] 直连单元112,用于根据触发的设备选定指令将当前设备与设备选定指令对应的远端设备直接连接。\n[0110] 本实施例中,直连单元112获取用户对枚举的多个与当前设备相匹配的远端设备所进行的设备选定操作以得到设备选定指令,以根据设备选定指令将当前设备与对应的远端设备进行直接连接即可实现当前设备与远端设备之间的连接。\n[0111] 如图9所示,在一个实施例中,该连接方式包括内网穿透方式,该连接建立模块110包括直连判断单元113和内网穿透单元114。\n[0112] 直连判断单元113,用于判断通过设备直连是否成功连接远端设备,若为否,则通知内网穿透单元114,若为是,则通知解析模块130。\n[0113] 本实施例中,在预设的若干种连接方式中,将最先使用设备直连的方式进行连接尝试,因此,将首先使用设备直连这一连接方式进行当前设备和远端设备之间的连接,在通过设备直连这一连接方式无法成功连接远端设备时,将通知内网穿透单元114,以通过内网穿透方式进行当前设备和远端设备之间的连接。\n[0114] 直连判断单元113判断得到通过设备直连无法成功连接远端设备时,将说明当前设备和远端设备并不在同一个网段中,进而导致直连不成功,未处于同一个网段中的当前设备和远端设备将处于两个不同的路由环境中,因此,将通过内网穿透的连接方式尝试进行建立与远端设备的连接。\n[0115] 内网穿透单元114,用于向设备服务器发起内网穿透请求,以通过设备服务器进行内网穿透建立与远端设备之间的连接。\n[0116] 本实施例中,设备服务器将用于实现当前设备和远端设备之间的内网穿透,以使得当前设备得以建立与远端设备之间的连接。\n[0117] 分别处于不同路由环境的当前设备和远端设备是无法直接通信,以互发信息的,当前设备所在的路由环境和远端设备所在的路由环境均只允许主动向外发送的信息通过,因此,无论是当前设备直接发送给远端设备的信息还是远端设备直接发送给当前设备的信息都将被路由器认为是不被信任的而被丢弃。\n[0118] 因此,为实现当前设备和远端设备之间的通信,当前设备中的内网穿透单元114将连接设备服务器,以向设备服务器发起内网穿透请求,该内网穿透请求包括了当前设备的网络地址和端口号。\n[0119] 相应的,远端设备也将向设备服务器发起内网穿透请求,以向设备服务器告之远端设备所在的网络地址和端口号。\n[0120] 此时,由于当前设备和远端设备均已向外发送过信息,在所对应的路由上均存在了允许数据进出的通道,并且对当前设备和远端设备而言均已在设备服务器的作用下获知对方的网络地址和端口号,因此,可直接建立当前设备和远端设备之间的连接。\n[0121] 如图10所示,在一个实施例中,该连接方式包括后台中转,该连接建立模块110包括内网穿透判断单元115、扫描单元116和连接请求发起单元117。\n[0122] 内网穿透判断单元115,用于判断内网穿透是否成功,若为否,则通知扫描单元\n116,若为是,则通知解析模块130。\n[0123] 本实施例中,预设的若干种连接方式中,设备直连的使用顺序早于内网穿透的连接方式的使用顺序,因此,在尝试通过内网穿透的连接方式建立当前设备和远端设备之间的连接的过程中,若无法成功建立连接,则通知扫描单元116,以通过后台中转的方式尝试进行当前设备和远端设备之间的连接。\n[0124] 扫描单元116,用于扫描远端设备中生成的条码信息以得到远端设备的标识符,该条码信息由远端设备生成,并注册至设备服务器中。\n[0125] 本实施例中,在通过内网穿透无法成功建立当前设备和远端设备之间的连接之后,远端设备将生成条码信息,其显示的页面跳转至包含了条码信息的扫码页面,并注册至设备服务器中,以使得设备服务器获取到远端设备所在的网络地址和标识符。\n[0126] 此时,当前设备中的扫描单元116将激活扫码功能,以对远端设备显示的扫码页面进行条码信息的扫描,在优选的实施例中,该条码信息为二维码信息。\n[0127] 连接请求发起单元117,用于打包远端设备的标识符和当前设备的标识符以得到连接请求包并发送至设备服务器中,以建立当前设备和远端设备之间的通信转通道。\n[0128] 本实施例中,当前设备通过对条码信息的扫描得到了远端设备的标识符,连接请求发起单元117将远端设备的标识符和当前设备的标识符打包以得到连接请求包,向设备服务器发送连接请求包,此时,由于远端设备在生成条码信息时已经向设备服务器注册,因此,设备服务器可从接收到的当前设备发起的连接请求包中提取得到当前设备的标识符和远端设备的标识符,根据远端设备的标识符得到远端设备所在的网络地址,以建立并维护远端设备和当前设备之间的通信转发通道。\n[0129] 在通过后台中转的连接方式建立当前设备和远端设备之间的连接的过程中,设备服务器将负责找到匹配的两台设备,即当前设备和远端设备,建立并维持通信转发通道,负责进行当前设备和远端设备之间的信息转发,以使得当前设备能够接收到远端设备发送至设备服务器,并由设备服务器转发的信息,远端设备也能够接收到当前设备发送至设备服务器,并由设备服务器转发的信息。\n[0130] 在分别通过设备直连、内网穿透和后台中转的连接方式尝试建立当前设备和远端设备的连接的过程中,由于设备直连的连接速度将是最快的,内网穿透的连接速度次之,后台中转的连接速度是最慢的,因此,将设置连接方式的使用顺序为:最先使用设备直连的连接方式,然后再使用内网穿透的连接方式,最后使用后台中转的连接方式,以先尝试使用连接速度最快的连接方式进行当前设备和远端设备之间的连接,以保证尽可能快速的完成当前设备和远端设备之间的连接。\n[0131] 在另一个实施例中,该系统还包括了组包压缩模块。该组包压缩模块用于根据预设频率对事件信息按照产生的先后顺序进行组包,并压缩得到压缩包。\n[0132] 本实施例中,内置了多种传感器进行操作数据采集的当前设备中,对操作数据进行采样的频率将是非常高的,例如,一秒种接近100赫兹,而对操作数据进行解析所得到的多个事件信息将是组为一个或者多个数据包进行传送的。\n[0133] 预设频率将是对事件信息进行组包的频率,该预设频率将是小于对操作数据进行采样的频率的,以避免高的组包的频率造成频繁的发包,进而造成网络拥堵。例如,该预设频率可为一秒2~10个包,保证了远端设备中根据事件信息进行响应和反馈的顺滑特性,即平滑性。\n[0134] 具体的,组包压缩模块将解析所得到预设数量的事件信息按照先后顺序组成队列,以形成一个数据包,进而按照预设频率对数据包进行组包,并压缩,以避免发送过于庞大的数据包占用过多的网络资源。\n[0135] 进一步的,同步模块150还用于通过建立的连接将包含了事件信息的压缩包同步至远端设备。\n[0136] 本实施例中,同步模块150将组包并压缩所得到的压缩包由建立的连接传送到远端设备中,以使得远端设备响应当前设备中触发的操作。\n[0137] 如图11所示,在一个实施例中,一种设备的网络互联系统包括了连接建立模块\n210、解析模块230、同步模块250和同步响应模块270。\n[0138] 连接建立模块210,用于根据预设的至少一种连接方式建立当前设备与远端设备之间的连接。\n[0139] 解析模块230,用于解析采集得到的操作数据以得到当前设备中触发的事件信息,操作数据为当前设备中触发的操作所产生的。\n[0140] 同步模块250,用于通过建立的连接将事件信息同步至远端设备,以将当前设备中触发的操作同步至远端设备。\n[0141] 同步响应模块270,用于接收事件信息,根据事件信息在远端设备响应当前设备中触发的操作。\n[0142] 其中,连接建立模块210、解析模块230和同步模块250均运行于当前设备中,同步响应模块则运行于远端设备中。\n[0143] 图12为能实现本发明实施例的一个计算机系统1200的模块图。该计算机系统1200只是一个适用于本发明的计算机环境的示例,不能认为是提出了对本发明的使用范围的任何限制。计算机系统1200也不能解释为需要依赖于或具有图示的示例性的计算机系统1200中的一个或多个部件的组合。\n[0144] 图12中示出的计算机系统1200是一个适合用于本发明的计算机系统的例子。具有不同子系统配置的其它架构也可以使用。例如有大众所熟知的台式机、笔记本、个人数字助理、智能电话、平板电脑、便携式媒体播放器、机顶盒等类似设备可以适用于本发明的一些实施例。但不限于以上所列举的设备。\n[0145] 如图12所示,计算机系统1200包括处理器1210、存储器1220和系统总线1222。包括存储器1220和处理器1210在内的各种系统组件连接到系统总线1222上。处理器1210是一个用来通过计算机系统中基本的算术和逻辑运算来执行计算机程序指令的硬件。存储器1220是一个用于临时或永久性存储计算程序或数据(例如,程序状态信息)的物理设备。系统总线1220可以为以下几种类型的总线结构中的任意一种,包括存储器总线或存储控制器、外设总线和局部总线。处理器1210和存储器1220可以通过系统总线1222进行数据通信。其中存储器1220包括只读存储器(ROM)或闪存(图中都未示出),以及随机存取存储器(RAM),RAM通常是指加载了操作系统和应用程序的主存储器。\n[0146] 计算机系统1200还包括显示接口1230(例如,图形处理单元)、显示设备1240(例如,液晶显示器)、音频接口1250(例如,声卡)以及音频设备1260(例如,扬声器)。显示设备\n1240和音频设备1260是用于体验多媒体内容的媒体设备。\n[0147] 计算机系统1200一般包括一个存储设备1270。存储设备1270可以从多种计算机可读介质中选择,计算机可读介质是指可以通过计算机系统1200访问的任何可利用的介质,包括移动的和固定的两种介质。例如,计算机可读介质包括但不限于,闪速存储器(微型SD卡),CD-ROM,数字通用光盘(DVD)或其它光盘存储、磁带盒、磁带、磁盘存储或其它磁存储设备,或者可用于存储所需信息并可由计算机系统1200访问的任何其它介质。\n[0148] 计算机系统1200还包括输入装置1280和输入接口1290(例如,IO控制器)。用户可以通过输入装置1080,如键盘、鼠标、显示装置1240上的触摸面板设备,输入指令和信息到计算机系统1200中。输入装置1280通常是通过输入接口1290连接到系统总线1222上的,但也可以通过其它接口或总线结构相连接,如通用串行总线(USB)。\n[0149] 计算机系统1200可在网络环境中与一个或者多个网络设备进行逻辑连接。网络设备可以是个人电脑、服务器、路由器、智能电话、平板电脑或者其它公共网络节点。计算机系统1200通过局域网(LAN)接口1300或者移动通信单元1310与网络设备相连接。局域网(LAN)是指在有限区域内,例如家庭、学校、计算机实验室、或者使用网络媒体的办公楼,互联组成的计算机网络。WiFi和双绞线布线以太网是最常用的构建局域网的两种技术。WiFi是一种能使计算机系统1200间交换数据或通过无线电波连接到无线网络的技术。移动通信单元\n1310能在一个广阔的地理区域内移动的同时通过无线电通信线路接听和拨打电话。除了通话以外,移动通信单元1310也支持在提供移动数据服务的2G,3G或4G蜂窝通信系统中进行互联网访问。\n[0150] 应当指出的是,其它包括比计算机系统1200更多或更少的子系统的计算机系统也能适用于发明。例如,计算机系统1200可以包括能在短距离内交换数据的蓝牙单元,用于照相的图像传感器,以及用于测量加速度的加速计。\n[0151] 如上面详细描述的,适用于本发明的计算机系统1200能执行设备的网络互联方法的指定操作。计算机系统1200通过处理器1210运行在计算机可读介质中的软件指令的形式来执行这些操作。这些软件指令可以从存储设备1270或者通过局域网接口1300从另一设备读入到存储器1220中。存储在存储器1220中的软件指令使得处理器1210执行上述的设备的网络互联方法。此外,通过硬件电路或者硬件电路结合软件指令也能同样实现本发明。因此,实现本发明并不限于任何特定硬件电路和软件的组合。\n[0152] 以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
法律信息
- 2020-06-23
- 2015-09-23
实质审查的生效
IPC(主分类): H04L 12/46
专利申请号: 201410020399.X
申请日: 2014.01.16
- 2015-07-22
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| |
2012-11-28
|
2012-05-07
| | |
2
| |
2012-10-03
|
2012-04-24
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |