著录项信息
| 专利名称 | 一种基于扩展XMPP协议的设备控制方法及系统 |
| 申请号 | CN201210534417.7 | 申请日期 | 2012-12-12 |
| 法律状态 | 授权 | 申报国家 | 中国 |
| 公开/公告日 | 2014-01-15 | 公开/公告号 | CN103516708A |
| 优先权 | 暂无 | 优先权号 | 暂无 |
| 主分类号 | H04L29/06 | IPC分类号 | H;0;4;L;2;9;/;0;6;;;H;0;4;L;2;9;/;0;8查看分类表>
|
| 申请人 | TCL集团股份有限公司 | 申请人地址 | 广东省惠州市鹅岭南路6号TCL工业大厦8楼技术中心
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
| 权利人 | TCL集团股份有限公司 | 当前权利人 | TCL集团股份有限公司 |
| 发明人 | 赵云华 |
| 代理机构 | 深圳市君胜知识产权代理事务所(普通合伙) | 代理人 | 王永文;刘文求 |
摘要
本发明公开了一种基于扩展XMPP协议的设备控制方法及系统,所述方法包括步骤:用户终端和设备终端通过扩展XMPP协议向XMPP服务器发送各自的身份信息;XMPP服务器根据所述身份信息判断发送终端的类型;授予用户终端发出控制命令控制对应设备终端的权限;授予设备终端执行对应用户终端控制命令的权限;所述用户终端通过扩展XMPP协议向XMPP服务器发送控制命令,对应设备终端接收XMPP服务器转发的所述控制命令并执行。由于在XMPP协议内附带终端的类型,对用户终端和设备终端进行区分并分别授予不同的权限,实现了用户可通过XMPP协议发送控制命令控制对应的设备的效果,给设备控制带来了便利。
1.一种基于扩展XMPP协议的设备控制方法,其特征在于,包括步骤:
A、用户终端和设备终端通过扩展XMPP协议向XMPP服务器发送各自的身份信息,其中,扩展XMPP协议是在XMPP协议中增加终端类型和对应权限信息;
B、XMPP服务器接收所述身份信息并判断发送身份信息的终端的类型;当所述发送身份信息的终端的类型为用户终端时,授予所述用户终端发出控制命令控制对应设备终端的权限;当所述发送身份信息的终端的类型为设备终端时,授予所述设备终端执行对应用户终端控制命令的权限;
C、当所述用户终端控制对应设备终端时,所述用户终端通过扩展XMPP协议向XMPP服务器发送控制命令,对应设备终端接收XMPP服务器转发的所述控制命令并执行所述控制命令;
所述步骤C中还包括步骤:XMPP服务器转发所述控制命令之前,根据所述控制命令的接收终端的类型对所述控制命令进行过滤处理。
2.根据权利要求1所述基于扩展XMPP协议的设备控制方法,其特征在于,所述步骤A具体包括:
A1、用户终端和设备终端发送各自的用户名和密码到XMPP服务器请求登录,XMPP服务器验证所述用户终端和设备终端是否可登录;
A2、所述用户终端和设备终端登录到XMPP服务器后,通过扩展XMPP协议向所述XMPP服务器发送各自的身份信息。
3.根据权利要求1或2所述基于扩展XMPP协议的设备控制方法,其特征在于,其中所述身份信息具体为:
若为用户终端,则包括用户姓名、手机号码和邮箱;
若为设备终端,则包括设备条形码、生产日期和设备型号。
4.根据权利要求3所述基于扩展XMPP协议的设备控制方法,其特征在于,所述步骤B具体包括:所述XMPP服务器接收所述身份信息,当检测到所述身份信息中包含用户姓名时,则判断所述身份信息的发送终端类型为用户终端;当检测到所述身份信息中包含设备型号时,则判断所述身份信息的发送终端类型为设备终端。
5.一种基于扩展XMPP协议的设备控制系统,其特征在于,包括一XMPP服务器,以及分别与所述XMPP服务器通信连接的至少一个用户终端和至少一个设备终端,其中,扩展XMPP协议是在XMPP协议中增加终端类型和对应权限信息;
所述XMPP服务器用于接收所述用户终端和设备终端发送的身份信息,并判断发送所述身份信息的终端的类型;以及当发送身份信息的终端的类型为用户终端时,授予所述用户终端发出控制命令控制对应设备终端的权限;当发送身份信息的终端的类型为设备终端时,授予所述设备终端执行对应用户终端控制命令的权限;
当用户终端控制对应的设备终端时,所述用户终端用于向XMPP服务器发送控制命令;
对应的所述设备终端用于接收XMPP服务器转发的所述控制命令并执行所述控制命令;
在用户终端控制对应的设备终端时,接收所述用户终端发送的控制命令,并根据所述控制命令的接收终端的类型对所述控制命令进行过滤处理,将经过过滤处理的控制命令转发给对应的设备终端。
6.根据权利要求5所述的系统,其特征在于,所述XMPP服务器还用于根据所述用户终端和设备终端发送的登录用户名和密码信息验证所述用户终端和设备终端是否可登录。
7.根据权利要求5所述的系统,其特征在于,其中,所述身份信息具体为:
若为用户终端,则包括用户姓名、手机号码和邮箱;
若为设备终端,则包括设备条形码、生产日期和设备型号。
8.根据权利要求7所述的系统,其特征在于,所述XMPP服务器还用于,当收到的所述身份信息中包含用户姓名时,则判断所述身份信息的发送终端类型为用户终端;当收到的所述身份信息中包含设备型号时,则判断所述身份信息的发送终端类型为设备终端。
一种基于扩展XMPP协议的设备控制方法及系统\n技术领域\n[0001] 本发明涉及网络通信领域,尤其涉及的是一种基于扩展XMPP协议的设备控制方法及系统。\n背景技术\n[0002] XMPP(The Extensible Messaging and Presence Protocol,可扩展消息处理现场协议)是基于可扩展标记语言XML的协议,其核心部分是一个在网络上分段发送XML的流协议,也因此使得XMPP能够在一个比以往的网络通信协议更规范的平台上,常被用于即时消息以及在线现场探测。\n[0003] XMPP中定义了三个角色:客户端、服务器和网关。基本的网络形式是客户端通过TCP/IP连接到服务器,然后在之上传输XML流,通信的基本模式为:先建立一个stream并协商关于安全之类的东西,然后客户端发送XML Stanza,服务器根据客户端发送的信息以及程序的逻辑,发送XML Stanza给客户端,最后是关闭流,以及关闭TCP/IP连接。基于XMPP协议的应用具有超强的可扩展性,经过扩展的XMPP协议可以通过发送扩展的信息来满足用户的不同需求。\n[0004] 现有的XMPP协议一般用于实现用户终端之间的消息传送或文件传输功能。如图1所示,其客户端均为用户终端,用户不需要区分通信对方的类型。因此通过这种XMPP协议无法确认通信对方终端的类型,无法满足用户多样化的需求,因而不适合在用户终端和设备终端之间传送控制命令,例如不适合在用户和设备之间传送关机、开机、待机、或者查询机器状态等控制命令。同时现有技术中对其中作为客户端的所有用户终端实行的是统一管理,也存在较大应用局限。\n[0005] 因此,现有技术还有待于改进和发展。\n发明内容\n[0006] 本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种基于扩展XMPP协议的设备控制方法及系统,旨在解决现有技术中通过XMPP协议无法实现用户终端对设备终端进行管理控制的技术问题。\n[0007] 本发明解决技术问题所采用的技术方案如下:\n[0008] 一种基于扩展XMPP协议的设备控制方法,其中,包括步骤:\n[0009] A、用户终端和设备终端通过扩展XMPP协议向XMPP服务器发送各自的身份信息;\n[0010] B、XMPP服务器接收所述身份信息并判断发送身份信息的终端的类型;当所述发送身份信息的终端的类型为用户终端时,授予所述用户终端发出控制命令控制对应设备终端的权限;当所述发送身份信息的终端的类型为设备终端时,授予所述设备终端执行对应用户终端控制命令的权限;\n[0011] C、当所述用户终端控制对应设备终端时,所述用户终端通过扩展XMPP协议向XMPP服务器发送控制命令,对应设备终端接收XMPP服务器转发的所述控制命令并执行所述控制命令。\n[0012] 所述基于扩展XMPP协议的设备控制方法,其中,所述步骤A具体包括:\n[0013] A1、用户终端和设备终端发送各自的用户名和密码到XMPP服务器请求登录,XMPP服务器验证所述用户终端和设备终端是否可登陆;\n[0014] A2、所述用户终端和设备终端登陆到XMPP服务器后,通过扩展XMPP协议向所述XMPP服务器发送各自的身份信息。\n[0015] 所述基于扩展XMPP协议的设备控制方法,其中,其中所述身份信息具体为:\n[0016] 若为用户终端,则包括用户姓名、手机号码、和邮箱;\n[0017] 若为设备终端,则包括设备条形码、 生产日期、 和设备型号。\n[0018] 所述基于扩展XMPP协议的设备控制方法,其中,所述步骤B具体包括:所述XMPP服务器接收所述身份信息,当检测到所述身份信息中包含用户姓名时,则判断所述身份消息的发送终端类型为用户终端;当检测到所述身份信息中包含设备型号时,则判断所述身份消息的发送终端类型为设备终端。\n[0019] 所述基于扩展XMPP协议的设备控制方法,其中,所述步骤C中还包括步骤:XMPP服务器转发所述控制命令之前,根据所述控制命令的接收终端的类型对所述控制命令进行过滤处理。\n[0020] 一种基于扩展XMPP协议的设备控制系统,其中,包括一XMPP服务器,以及分别与所述XMPP服务器通信连接的至少一个用户终端和至少一个设备终端,其中,\n[0021] 所述XMPP服务器用于接收所述用户终端和设备终端发送的身份信息,并判断发送所述身份信息的终端的类型;以及当发送身份信息的终端的类型为用户终端时,授予所述用户终端发出控制命令控制对应设备终端的权限;当发送身份信息的终端的类型为设备终端时,授予所述设备终端执行对应用户终端控制命令的权限;\n[0022] 当用户终端控制对应的设备终端时,所述用户终端用于向XMPP服务器发送控制命令;对应的所述设备终端用于接收XMPP服务器转发的对应控制命令并执行所述控制命令。\n[0023] 所述的系统,其中,所述XMPP服务器还用于根据所述用户终端和设备终端发送的登录用户名和密码信息验证所述用户终端和设备终端是否可登陆。\n[0024] 所述的系统,其中,所述身份信息具体为:\n[0025] 若为用户终端,则包括用户姓名、手机号码、和邮箱;\n[0026] 若为设备终端,则包括设备条形码、 生产日期、 和设备型号。\n[0027] 所述的系统,其中,所述XMPP服务器还用于,当收到的所述身份信息中包含用户姓名时,则判断所述身份信息的发送终端类型为用户终端;当收到的所述身份信息中包含设备型号时,则判断所述身份信息的发送终端类型为设备终端。\n[0028] 所述的系统,其中,所述XMPP服务器还用于,在用户终端控制对应的设备终端时,接收所述用户终端发送的控制命令,并根据所述控制命令的接收终端的类型对所述控制命令进行过滤处理,将经过过滤处理的控制命令转发给对应的设备终端。\n[0029] 本发明所提供的一种基于扩展XMPP协议的设备控制方法及系统,由于对XMPP协议进行了扩展,在XMPP协议中增加终端的类型信息,对用户终端和设备终端进行区分并分别授予不同的权限,以此为基础,用户终端可通过扩展XMPP协议发送控制命令,对应的设备终端执行所述控制指令,拓展了XMPP协议的应用,有利于实现用户对设备的远程控制,给设备控制带来了便利。\n附图说明\n[0030] 图1是现有XMPP协议的系统结构示意图。\n[0031] 图2是本发明一种基于扩展XMPP协议的设备控制方法的较佳实施例的流程图。\n[0032] 图3是对本发明一种基于扩展XMPP协议的设备控制方法的较佳实施例的细化流程图。\n[0033] 图4是本发明一种基于扩展XMPP协议的设备控制系统的较佳实施例的结构示意图。\n具体实施方式\n[0034] 为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。\n[0035] 本发明提供的一种基于扩展XMPP协议的设备控制方法的实施例中,首先用户终端和设备终端需要登录到XMPP服务器。具体方式为用户终端和设备终端发送各自的登录用户名和登录密码到XMPP服务器请求登录,XMPP服务器根据接收到的登录用户名和登录密码验证所述用户终端和设备终端是否可登陆。例如,当是用户终端时,用户可使用智能设备(手机/PAD/PC)通过预先注册的用户名和密码登陆到XMPP服务器;当是设备终端时,设备(智能冰箱/智能空调/智能洗衣机)可通过出厂时预先注册的用户名和密码登陆到XMPP服务器,XMPP服务器根据接收到的登录用户名和登录密码查找对应数据库中是否有相应的记录,若有,则向相应终端返回登录成功的提示信息;若没有,则返回用户名或者密码错误的消息给相应的请求终端。\n[0036] 所述用户终端和设备终端登录到XMPP服务器之后,如图2所示,本发明的一种基于扩展XMPP协议的设备控制方法的较佳实施例包括如下步骤:\n[0037] S100、用户终端和设备终端分别通过扩展XMPP协议向所述XMPP服务器发送各自的身份信息。\n[0038] 其中,用户终端的所述身份信息可包括用户姓名、手机号码、邮箱以及其他属性信息;设备终端的所述身份信息可包括设备条形码、 生产日期、 和设备型号以及其他属性信息。XMPP服务器将终端发送的所述身份信息持久存储,如存入其数据库或以文件的形式存储。所述扩展XMPP协议可在XMPP协议中增加终端类型和对应权限信息。\n[0039] S200、XMPP服务器接收所述身份信息并判断发送身份信息的终端的类型;当所述发送身份信息的终端的类型为用户终端时,授予所述用户终端发出控制命令控制对应设备终端的权限;当所述发送身份信息的终端的类型为设备终端时,授予所述设备终端执行对应用户终端控制命令的权限。\n[0040] S300、当所述用户终端控制对应设备终端时,所述用户终端通过扩展XMPP协议向XMPP服务器发送控制命令,对应设备终端接收XMPP服务器转发的所述控制命令并执行所述控制命令。\n[0041] 进一步的,下面举具体实施例对本发明的一种基于扩展XMPP协议的设备控制方法做进一步的说明,如图3所示,包括如下过程:\n[0042] S20、用户终端和设备终端通过各自的用户名和密码登录到XMPP服务器。\n[0043] S21、用户终端和设备终端分别向所述XMPP服务器发送各自的身份信息。\n[0044] 若为设备终端,如冰箱,其身份信息中设备型号用明文字符串在message消息中表示为 devicetype=BR; ‘devicetype’表示这一字符串用来描述设备型号,‘BR’(此终端为冰箱)则为具体设备型号,具体的message消息为:\n[0045] [0046] \n[0047] devicetype=BR;deviceid=123334409QWBNST12334;\n[0048] \n[0049] rbhc3T\n[0050] 。\n[0051] 其中,devicetype=BR表示此设备终端为冰箱, deviceid=123334409QWBNST12334表示设备终端的条形码。\n[0052] 如果是用户终端,如用户姓名为‘zhaoyun’,则以明文字符串在message消息中出现:username=zhaoyun;其中‘username’表示这一字符串用来描述用户姓名,‘zhaoyun’则为用户姓名。在本实施例中,该用户终端的身份信息对应的message消息为:\n[0053] [0054] \n[0055] username=zhaoyun;tel=XXXXXXXXXXX;mail=XXXX@XX.com\n[0056] \n[0057] rbhc3T\n[0058] 。\n[0059] 其中username=zhaoyun描述此用户的姓名, tel=135XXXXXXX用来描述用户的手机号码,mail=XXXX@XX.com则用来描述用户的邮箱。\n[0060] S22、XMPP服务器根据接收到的所述身份信息判断对应的发送终端的类型。\n[0061] 判断方式为:当检测到所述身份信息中包含用户姓名时,在本实施例中即当接收到的message消息中包含username描述时,则判断所述身份信息的发送终端类型为用户终端,进入步骤S23;当检测到所述身份信息中包含设备型号时,即当接收到的message消息中包含devicetype描述时,则判断所述身份信息的发送终端类型为设备终端,进入步骤S24。\n[0062] S23、所述发送终端类型为用户终端时,授予所述用户终端发出控制命令控制对应设备终端的权限。\n[0063] 可根据实际需要,赋予不同用户终端不同的设备控制权限。比如,所述用户终端可以控制对应设备终端的开关机、休眠或查看对应设备终端当前的状态;并且,一个用户终端可以控制多个设备终端,一个设备终端可被多个用户终端控制,但用户终端不能控制其他用户终端。\n[0064] 本实施例中,扩展XMPP协议中控制设备关机的控制命令示例如下:\n[0065] [0066] poweroff\n[0067] rbhc3T\n[0068] 。\n[0069] 此消息扩展了原XMPP协议的部分, 用poweroff来描述设备关机。类似的,控制设备待机的控制命令为:\n[0070] [0071] sleep\n[0072] rbhc3T\n[0073] 。\n[0074] 查看设备终端状态的控制命令:\n[0075] [0076] showstatus\n[0077] rbhc3T\n[0078] 。\n[0079] S24、所述发送终端类型为设备终端时,赋予所述设备终端执行对应用户终端发的控制命令的权限。在此权限下设备终端只能执行对应用户终端的命令。\n[0080] S25、当用户终端控制对应设备终端时,用户终端通过扩展XMPP协议向XMPP服务器发送控制对应设备终端的控制命令。\n[0081] S26、XMPP服务器接收所述控制命令将其转发给对应的设备终端,对应设备终端执行所述控制命令,例如关机/开机/待机/查询。\n[0082] 其中,XMPP服务器转发所述控制命令之前,根据所述控制命令的接收终端的类型对所述控制命令进行过滤处理。例如将非法发给用户终端的关机控制命令过滤掉。\n[0083] 通过上述实施例所述的一种基于扩展XMPP协议的设备控制方法,由于在XMPP协议中增加了终端的类型信息,可对连接到XMPP服务器的用户终端和设备终端进行区分并分别授予不同的权限,以此为基础,可实现用户终端通过XMPP协议发送控制命令控制对应的设备终端的效果。\n[0084] 基于上述实施例,本发明实施例还提供了一种基于扩展XMPP协议的设备控制系统,如图4所示,其设置基于上述基于扩展XMPP协议的设备控制方法,该系统包括一XMPP服务器S1,以及分别与所述XMPP服务器S1通信连接的至少一个用户终端C1和至少一个设备终端C2,其中,\n[0085] 所述XMPP服务器S1用于接收所述用户终端C1和设备终端C2发送的身份信息,并判断发送所述身份信息的终端的类型;以及当发送身份信息的终端的类型为用户终端时,授予所述用户终端发出控制命令控制对应设备终端的权限;当发送身份信息的终端的类型为设备终端时,授予所述设备终端执行对应用户终端控制命令的权限;具体如上述实施例所述。\n[0086] 基于所述系统,在用户终端C1控制对应的设备终端C2时,所述用户终端C1通过扩展XMPP协议向XMPP服务器S1发送控制命令;对应的所述设备终端C2接收XMPP服务器S1转发的所述控制命令并执行所述控制命令。具体如上述实施例所述。\n[0087] 较佳的,所述XMPP服务器S1还用于根据所述用户终端C1和设备终端C2发送的登录用户名和密码信息验证所述用户终端和设备终端是否可登陆。\n[0088] 较佳的,所述身份信息具体为:若为用户终端,则包括用户姓名、手机号码、邮箱以及其他属性信息;若为设备终端,则包括设备条形码、 生产日期、 设备型号以及其他属性信息。\n[0089] 进一步的,所述XMPP服务器S1还用于,当收到的所述身份信息中包含用户姓名时,则判断所述身份信息的发送终端类型为用户终端;当收到的所述身份信息中包含设备型号时,则判断所述身份信息的发送终端类型为设备终端。以及用于在用户终端控制对应设备终端的过程中,接收所述用户终端发送的控制命令,并根据所述控制命令的接收终端的类型对所述控制命令进行过滤处理,将经过过滤处理的控制命令转发给对应的设备终端。\n[0090] 综上所述,本发明提供的一种基于扩展XMPP协议的设备控制方法及系统,所述方法通过对XMPP协议的扩展,在XMPP协议中增加终端类型和对应权限信息,可对用户终端和设备终端进行区分并分别授予不同的权限,有利于对终端的管理,解决了现有技术通过XMPP协议无法实现用户终端对对应设备终端控制的技术问题,同时拓展了XMPP的应用,实现了用户对设备的远程控制的效果,为用户进行相应设备控制带来了便利。\n[0091] 应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
法律信息
- 2017-03-08
- 2014-02-19
实质审查的生效
IPC(主分类): H04L 29/06
专利申请号: 201210534417.7
申请日: 2012.12.12
- 2014-01-15
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 |
1
| | 暂无 |
2011-12-27
| | |
2
| |
2012-09-26
|
2012-05-25
| | |
3
| |
2009-05-20
|
2007-11-16
| | |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |