CN117978567A - 一种显示设备及对非Matter设备的控制方法 - Google Patents
一种显示设备及对非Matter设备的控制方法 Download PDFInfo
- Publication number
- CN117978567A CN117978567A CN202311831382.8A CN202311831382A CN117978567A CN 117978567 A CN117978567 A CN 117978567A CN 202311831382 A CN202311831382 A CN 202311831382A CN 117978567 A CN117978567 A CN 117978567A
- Authority
- CN
- China
- Prior art keywords
- endpoint
- protocol
- matter
- service
- display device
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000004891 communication Methods 0.000 claims abstract description 70
- 230000006870 function Effects 0.000 claims description 242
- 230000004044 response Effects 0.000 claims description 54
- 230000008569 process Effects 0.000 description 28
- 238000010586 diagram Methods 0.000 description 19
- 238000012217 deletion Methods 0.000 description 13
- 230000037430 deletion Effects 0.000 description 13
- 230000003993 interaction Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 8
- 238000005304 joining Methods 0.000 description 6
- 239000004744 fabric Substances 0.000 description 4
- 239000000463 material Substances 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000005266 casting Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Landscapes
- Computer And Data Communications (AREA)
Abstract
本申请提供一种显示设备及非Matter设备的控制方法。显示设备为支持第一协议的Matter设备,并且可以作为桥接设备。显示设备基于第一协议与第一设备建立通信之后,创建第一设备对应的第二端点和第二业务功能,第二业务功能对应第一设备支持的业务能力。显示设备在基于Matter协议与主控设备配网之后,向主控设备提供第二端点和第二业务功能,以令主控设备获知可以控制第一设备,以及第一设备所具备的业务能力。显示设备将主控设备向第一设备发送的第一指令,转换为支持第一协议的第二指令之后发送至第一设备,以令第一设备可以响应主控设备的控制。这样,可以实现主控设备对非Matter设备的控制。
Description
技术领域
本申请涉及物联网技术领域,尤其涉及一种显示设备及对非Matter设备的控制方法。
背景技术
Matter协议是一项智能家居的开源标准协议,由连接标准联盟制定、认证、推广。支持的Matter协议的物联网设备可以称为Matter设备,各Matter设备之间可以进行互联和通信。其中,主控设备可以基于Matter协议对被控设备进行配网,以将被控设备加入主控设备的Matter网络,即虚拟域(Fabric)中。在被控设备加入主控设备的虚拟域之后,主控设备具备被控设备的控制权限,即主控设备可以控制被控设备。
但是,对于不支持Matter协议的非Matter设备,主控设备无法基于Matter协议对非Matter设备进行配网,也就无法将非Matter设备加入自己的虚拟域,从而无法对非Matter设备进行控制。由此,基于Matter协议形成的物联网无法兼容非Matter设备。
发明内容
本申请提供了一种显示设备及对非Matter设备的控制方法,主控设备可以通过桥接设备对非Matter设备进行控制,以实现对非Matter设备的兼容。
第一方面,本申请提供了一种显示设备,所述显示设备为Matter设备,且支持第一协议,所述第一协议为非Matter协议,包括:
存储器,被配置为:存储有端点信息,所述端点信息包括第一端点和对应于所述第一端点的第一业务功能,每个所述第一端点对应一种Matter协议中定义的设备类型,其中,所述第一端点包括对应Matter协议中定义的桥接设备类型的指定端点,所述指定端点对应的第一业务功能包括所述显示设备支持作为桥接设备;
控制器,被配置为:
基于所述第一协议与第一设备建立通信,所述第一设备为非Matter设备,且支持所述第一协议;
创建所述第一设备对应的第二端点和对应于所述第二端点的第二业务功能,所述第二业务功能对应于所述第一设备支持的业务能力;
将所述第二端点和所述第二业务功能添加至所述端点信息;
在基于Matter协议与主控设备进行配网之后,向所述主控设备提供所述第二端点和所述第二业务功能;
接收所述主控设备向所述第一设备发送的第一指令,并将所述第一指令转换为支持所述第一协议的第二指令,以及将所述第二指令发送至所述第一设备。
在本申请的一些实施例中,所述控制器基于所述第一协议与第一设备建立通信,被配置为:
响应于用户的搜索指令,基于所述第一协议搜索周围的设备,并在发现所述第一设备之后,与所述第一设备建立通信;
或者,响应于所述第一设备发送的配对请求,与所述第一设备建立通信。
在本申请的一些实施例中,所述控制器创建所述第一设备对应的第二端点和对应于所述第二端点的第二业务功能,被配置为:
获取所述第一设备的设备信息,所述设备信息包括所述第一设备的设备类型和所述第一设备支持的业务能力;
根据Matter协议、所述第一设备的设备类型和所述第一设备支持的业务能力,创建与所述第一设备对应的第二端点,以及根据所述第一设备支持的业务能力,创建所述第二端点对应的第二业务功能。
在本申请的一些实施例中,所述控制器根据Matter协议、所述第一设备的设备类型和所述第一设备支持的业务能力,创建与所述第一设备对应的第二端点,以及根据所述第一设备支持的业务能力,创建所述第二端点对应的第二业务功能,被配置为:
在获取到所述第一设备的设备信息之后,直接根据Matter协议、所述第一设备的设备类型和所述第一设备支持的业务能力,创建所述第二端点,以及根据所述第一设备支持的业务能力,创建所述第二业务功能。
在本申请的一些实施例中,所述设备信息还包括所述第一设备的设备名称,所述控制器在获取所述第一设备的设备信息之后,还被配置为:
根据所述设备名称,控制显示器显示第一设备列表,所述第一设备列表包括第二设备的项目,所述第二设备的项目上显示有相应的设备名称,所述第二设备为与所述显示设备基于所述第一协议建立通信,且未在所述显示设备上创建端点的非Matter设备,其中,所述第二设备包括所述第一设备;
所述控制器根据Matter协议、所述第一设备的设备类型和所述第一设备支持的业务能力,创建与所述第一设备对应的第二端点,以及根据所述第一设备支持的业务能力,创建所述第二端点对应的第二业务功能,被配置为:
响应于用户基于所述第一设备的项目输入的添加指令,根据Matter协议、所述第一设备的设备类型和所述第一设备支持的业务能力,创建所述第二端点,以及根据所述第一设备支持的业务能力,创建所述第二业务功能。
在本申请的一些实施例中,所述控制器响应于用户基于所述第一设备的项目输入的添加指令,根据Matter协议、所述第一设备的设备类型和所述第一设备支持的业务能力,创建所述第二端点,以及根据所述第一设备支持的业务能力,创建所述第二业务功能,被配置为:
响应于所述添加指令,根据Matter协议、所述第一设备的设备类型和所述第一设备支持的业务能力,创建所述第二端点,以及根据所述第一设备支持的业务能力,控制所述显示器显示添加页面,所述添加页面包括所述第一设备支持的业务能力;
响应于用户基于目标业务能力输入的选择指令,创建相应的所述第二业务功能。
在本申请的一些实施例中,所述控制器根据Matter协议、所述第一设备的设备类型和所述第一设备支持的业务能力,创建与所述第一设备对应的第二端点,以及根据所述第一设备支持的业务能力,创建所述第二端点对应的第二业务功能,被配置为:
查询Matter协议中的设备类型列表,所述设备类型列表包括对设备类型的第一定义,所述第一定义包括所述设备类型对应的设备标识和与所述设备标识对应的设备名称,所述设备名称对应至少一种业务能力;
根据所述设备类型列表、所述第一设备的设备类型和所述第一设备支持的业务能力,确定所述第一设备对应的目标设备标识和目标设备名称;
根据所述目标设备标识和所述目标设备名称创建所述第二端点;
查询Matter协议中的业务功能列表,所述业务功能列表包括对业务功能的第二定义,所述第二定义包括业务功能与业务能力的对应关系;
根据所述业务功能和业务能力的对应关系,确定所述第一设备支持的业务能力对应的所述第二业务功能;
为所述第二端点添加所述第二业务功能。
在本申请的一些实施例中,所述控制器在基于Matter协议与主控设备进行配网之后,向所述主控设备提供所述第二端点和所述第二业务功能,被配置为:
在基于Matter协议与所述主控设备进行配网之后,主动向所述主控设备提供所述端点信息,所述端点信息包括所述第一端点和所述第一业务功能,以及所述第二端点和所述第二业务功能;
或者,响应于所述主控设备发送的读取请求,向所述主控设备发送所述第二端点和所述第二业务功能,所述读取请求用于请求读取所述第一设备的端点信息。
在本申请的一些实施例中,在基于Matter协议与主控设备进行配网之后,所述控制器,还被配置为:
基于所述第一协议与第三设备建立通信,所述第三设备为非Matter设备,且支持所述第一协议;
创建所述第三设备对应的第三端点和对应于所述第三端点的第三业务功能,所述第三业务功能对应于所述第三设备支持的业务能力;
将所述第三端点和所述第三业务功能添加至所述端点信息,并向所述主控设备提供所述第三端点和所述第三业务功能。
第二方面,本申请提供一种显示设备,所述显示设备为Matter设备,且支持第一协议,所述第一协议为非Matter协议,包括:
存储器,被配置为:存储有端点信息,所述端点信息包括第一端点和对应于所述第一端点的第一业务功能,每个所述第一端点对应一种Matter协议中定义的设备类型,其中,所述第一端点包括对应Matter协议中定义的桥接设备类型的指定端点,所述指定端点对应第一业务功能包括所述显示设备支持作为桥接设备;
控制器,被配置为:
在基于Matter协议与主控设备进行配网之后,响应于所述主控设备发送的搜索指令,搜索周围的设备;
在发现第一设备之后,获取所述第一设备的设备名称,并向所述主控设备发送所述设备名称,所述第一设备为非Matter设备,且支持所述第一协议;
响应于所述主控设备发送的控制指令,与所述第一设备建立通信;
创建所述第一设备对应的第二端点和对应于所述第二端点的第二业务功能,所述第二业务功能对应于所述第一设备支持的业务能力;
将所述第二端点和所述第二业务功能添加至所述端点信息,并向所述主控设备提供所述第二端点和所述第二业务功能;
接收所述主控设备向所述第一设备发送的第一指令,并将所述第一指令转换为支持所述第一协议的第二指令,以及将所述第二指令发送至所述第一设备。
第三方面,本申请还提供一种主控设备,包括:
控制器,被配置为:
在基于Matter协议对显示设备进行配网之后,从所述显示设备获取端点信息,所述显示设备为Matter设备,且支持第一协议,所述第一协议为非Matter协议,所述端点信息包括第一端点和对应于所述第一端点的第一业务功能,每个所述第一端点对应一种Matter协议中定义的设备类型,其中,所述第一端点包括对应Matter协议中定义的桥接设备类型的指定端点,所述指定端点对应第一业务功能包括所述显示设备支持作为桥接设备;所述端点信息还包括第一设备对应的第二端点和对应于所述第二端点的第二业务功能,所述第一设备为非Matter设备,且支持所述第一协议,所述显示设备基于所述第一协议与所述第一设备建立通信,所述第二业务功能对应于所述第一设备支持的业务能力;
根据所述端点信息控制显示器显示被控设备列表,所述被控设备列表包括所述显示设备的项目和所述第一设备的项目,其中,所述第一设备的项目带有第一标识,所述第一标识用于指示所述第一设备为非Matter设备。
在本申请的一些实施例中,所述控制器根据所述端点信息控制显示器显示被控设备列表,还被配置为:
在所述被控设备列表内显示所述显示设备的项目,并在对应于所述显示设备的项目的第一区域内显示所述第一设备的项目,其中,显示于所述第一区域的项目对应的设备为以所述显示设备为桥接设备被所述主控设备控制的非Matter设备。
第四方面,本申请提供一种对非Matter设备的控制方法,应用于如第一方面中任一所述的显示设备,所述显示设备为Matter设备,且支持第一协议,所述第一协议为非Matter协议;所述显示设备存储有端点信息,所述端点信息包括第一端点和对应于所述第一端点的第一业务功能,每个所述第一端点对应一种Matter协议中定义的设备类型,其中,所述第一端点包括对应Matter协议中定义的桥接设备类型的指定端点,所述指定端点对应第一业务功能包括所述显示设备支持作为桥接设备;
所述方法包括:
基于所述第一协议与第一设备建立通信,所述第一设备为非Matter设备,且支持所述第一协议;
创建所述第一设备对应的第二端点和对应于所述第二端点的第二业务功能,所述第二业务功能对应于所述第一设备支持的业务能力;
将所述第二端点和所述第二业务功能添加至所述端点信息;
在基于Matter协议与主控设备进行配网之后,向所述主控设备提供所述第二端点和所述第二业务功能;
接收所述主控设备向所述第一设备发送的第一指令,并将所述第一指令转换为支持所述第一协议的第二指令,以及将所述第二指令发送至所述第一设备。
第五方面,本申请还提供一种对非Matter设备的控制方法,应用于如第二方面所述的显示设备,所述显示设备为Matter设备,且支持第一协议,所述第一协议为非Matter协议;所述显示设备存储有端点信息,所述端点信息包括第一端点和对应于所述第一端点的第一业务功能,每个所述第一端点对应一种Matter协议中定义的设备类型,其中,所述第一端点包括对应Matter协议中定义的桥接设备类型的指定端点,所述指定端点对应第一业务功能包括所述显示设备支持作为桥接设备;
所述方法包括:
在基于Matter协议与主控设备进行配网之后,响应于所述主控设备发送的搜索指令,搜索周围的设备;
在发现第一设备之后,获取所述第一设备的设备名称,并向所述主控设备发送所述设备名称,所述第一设备为非Matter设备,且支持所述第一协议;
响应于所述主控设备发送的控制指令,与所述第一设备建立通信;
创建所述第一设备对应的第二端点和对应于所述第二端点的第二业务功能,所述第二业务功能对应于所述第一设备支持的业务能力;
将所述第二端点和所述第二业务功能添加至所述端点信息,并向所述主控设备提供所述第二端点和所述第二业务功能;
接收所述主控设备向所述第一设备发送的第一指令,并将所述第一指令转换为支持所述第一协议的第二指令,以及将所述第二指令发送至所述第一设备。
第六方面,本申请还提供一种对非Matter设备的控制方法,应用于如第三方面中任一所述的主控设备,所述方法包括:
在基于Matter协议对显示设备进行配网之后,从所述显示设备获取端点信息,所述显示设备为Matter设备,且支持第一协议,所述第一协议为非Matter协议,所述端点信息包括第一端点和对应于所述第一端点的第一业务功能,每个所述第一端点对应一种Matter协议中定义的设备类型,其中,所述第一端点包括对应Matter协议中定义的桥接设备类型的指定端点,所述指定端点对应第一业务功能包括所述显示设备支持作为桥接设备;所述端点信息还包括第一设备对应的第二端点和对应于所述第二端点的第二业务功能,所述第一设备为非Matter设备,且支持所述第一协议,所述显示设备基于所述第一协议与所述第一设备建立通信,所述第二业务功能对应于所述第一设备支持的业务能力;
根据所述端点信息显示被控设备列表,所述被控设备列表包括所述显示设备的项目和所述第一设备的项目,其中,所述第一设备的项目带有第一标识,所述第一标识用于指示所述第一设备为非Matter设备。
显示设备为支持第一协议的Matter设备,显示设备存储有指定端点,该指定端点对应的第一业务功能包括支持作为桥接设备。显示设备基于第一协议与第一设备建立通信,第一设备为支持第一协议的非Matter设备,显示设备可以创建第一设备对应的第二端点和第二业务功能,该第二业务功能对应第一设备支持的业务能力。显示设备在基于Matter协议与主控设备配网之后,可以向主控设备提供第二端点和第二业务功能,以令主控设备获知可以控制第一设备,以及第一设备所具备的业务能力。显示设备将主控设备向第一设备发送的第一指令,转换为支持第一协议的第二指令,并将该第二指令发送至第一设备,以令第一设备响应主控设备的控制。这样,可以实现主控设备对非Matter设备的控制。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例中主控设备和被控设备的使用场景示意图;
图2为本申请实施例中显示设备的配置图;
图3为本申请实施例中显示设备的操作系统配置图;
图4为本申请实施例中主控设备与显示设备配网的流程图;
图5为本申请实施例中实现主控设备对非Matter设备的控制的整体架构的示意图;
图6为本申请实施例中端点信息列表的示意图;
图7为本申请实施例中显示设备支持主控设备控制非Matter设备的流程图;
图8为本申请实施例中显示设备支持主控设备控制非Matter设备的底层交互示意图;
图9为本申请实施例中显示设备有针对性地创建第二端点和第二业务功能的流程图;
图10为本申请实施例中第一设备列表的示意图;
图11为本申请实施例中显示设备创建第二业务功能的流程图;
图12为本申请实施例中添加页面的示意图;
图13为本申请实施例中显示设备创建第二端点和第二业务功能的流程图;
图14为本申请实施例中被控设备列表的示意图;
图15为本申请实施例中被控设备列表的另一种示意图;
图16为本申请实施例中主控设备、显示设备和第一设备的使用场景示意图;
图17为本申请实施例中示例1对应的交互示意图;
图18为本申请实施例中示例2对应的交互示意图;
图19为本申请实施例中显示设备在与主控设备配网之后继续添加非Matter设备的流程图;
图20为本申请实施例中示例3对应的交互示意图;
图21为本申请实施例中示例4对应的交互示意图;
图22为本申请实施例中显示设备支持主控设备控制非Matter设备的另一种流程图;
图23为本申请实施例中示例5对应的交互示意图;
图24为本申请实施例中示例6对应的交互示意图。
具体实施方式
下面将详细地对实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下实施例中描述的实施方式并不代表与本申请相一致的所有实施方式。仅是与权利要求书中所详述的、本申请的一些方面相一致的系统和方法的示例。
需要说明的是,本申请中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本申请的实施方式。除非另有说明,这些术语应当按照其普通和通常的含义理解。
本申请中说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别类似或同类的对象或实体,而不必然意味着限定特定的顺序或先后次序,除非另外注明。应该理解这样使用的用语在适当情况下可以互换。
术语“包括”和“具有”以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的所有组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
Matter协议是一项智能家居的开源标准协议,由连接标准联盟制定、认证、推广。支持的Matter协议的物联网设备可以称为Matter设备,各Matter设备之间可以进行互联和通信。其中,主控设备可以基于Matter协议对被控设备进行配网,以将被控设备加入主控设备的Matter网络,即虚拟域(Fabric)中。在被控设备加入主控设备的虚拟域之后,主控设备具备被控设备的控制权限,即主控设备可以控制被控设备。
本申请实施方式提供的主控设备和被控设备可以具有多种实施形式,例如,主控设备和被控设备可以为显示设备或者非显示设备,本申请实施例以主控设备和被控设备均为具有显示功能的显示设备为例进行说明。
主控设备(Controller)具有对应的虚拟域(Fabric),虚拟域包括该主控设备以及由主控设备控制的全部被控设备,即加入主控设备的虚拟域的物联网设备。同属一个虚拟域的主控设备与被控设备接入同一个局域网(也即指定网络),虚拟域中的设备由其所持有的节点操作凭证证书(Node Operational Certificate,NOC)标识所属的虚拟域,以及其在虚拟域中的身份。当主控设备为被控设备配网时,通过为该被控设备分配NOC证书,以标志将被控设备加入至自己的虚拟域。虚拟域中各设备所持有的NOC证书包括:用于唯一标识该虚拟域的虚拟域标识,如Fabric ID,以及用于在该虚拟域中唯一标识该设备的节点标识,如Node ID。也就是说,不同主控设备的虚拟域具有不同的Fabric ID,同一个虚拟域中各设备的Node ID不同,但是分属不同虚拟域的设备的Node ID可以相同。在同一个局域网内,可以包括一个或者多个虚拟域,各虚拟域之间可以存在交叉。
图1为根据实施例中主控设备和被控设备的使用场景示意图。以主控设备为显示设备加入自己的虚拟域为例,如图1所示,主控设备100将显示设备200加入自己的虚拟域,如Fabric1。主控设备100具有显示设备200的控制权限,即用户可以通过主控设备100控制显示设备200。其中,主控设备100持有的NOC证书包括Fabric ID:1,以及Node ID:1。主控设备100为显示设备200分配的NOC证书包括Fabric ID:1,以及Node ID:2。
显示设备200可以具有多种实施形式,例如,可以是智能电视、激光投影设备、显示器(monitor)、电子白板(electronic bulletin board)、电子桌面(electronic table)等,也可以是手机、平板电脑、智能手表等带有显示屏的设备。
图2示出了根据示例性实施例中显示设备200的配置框图。
显示设备200包括调谐解调器210、通信器220、检测器230、外部装置接口240、控制器250、显示器260、音频输出接口270、存储器、供电电源、用户接口280中的至少一种。
在一些实施例中,显示设备200可以通过通信器220与主控设备100、其它设备建立控制信号和数据信号的发送和接收。在一些实施例中,检测器230包括声音采集器。显示设备200可以通过声音采集器采集用户语音,并将采集到的用户语音传输至控制器250进行处理。在一些实施例中,控制器250和调谐解调器210可以位于不同的分体设备中,即调谐解调器210也可在控制器250所在的主体设备的外置设备中,如外置机顶盒等。在一些实施例中,控制器250,通过存储在存储器上中各种软件控制程序,来控制显示设备的工作和响应用户的操作。控制器250控制显示设备200的整体操作。在一些实施例中,控制器250包括中央处理器(Central Processing Unit,CPU),视频处理器,音频处理器,图形处理器(GraphicsProcessing Unit,GPU),RAM(Random Access Memory),ROM(Read-Only Memory),用于输入/输出的第一接口至第n接口,通信总线(Bus)等中的至少一种。在一些实施例中,显示器260包括用于呈现页面的显示屏组件,以及驱动图像显示的驱动组件,用于接收源自控制器250输出的图像信号,进行显示视频内容、图像内容以及菜单操控界面的组件以及用户操控UI界面。在一些实施例中,显示器260可以为液晶显示器、OLED显示器、以及投影显示器,还可以为一种投影装置和投影屏幕。在一些实施例中,用户可在显示器260上显示的图形用户界面(Graphic User Interface,GUI)输入用户命令,则用户输入接口通过图形用户界面(GUI)接收用户输入命令。或者,用户可通过输入特定的声音或手势进行输入用户命令,则用户输入接口通过传感器识别出声音或手势,来接收用户输入命令。在一些实施例中,“用户界面”是应用程序或操作系统与用户之间进行交互和信息交换的介质接口,它实现信息的内部形式与用户可以接受形式之间的转换。用户界面常用的表现形式是图形用户界面(GUI),是指采用图形方式显示的与计算机操作相关的用户界面。它可以是在电子设备的显示屏中显示的一个图标、窗口、控件等界面元素,其中控件可以包括图标、按钮、菜单、选项卡、文本框、对话框、状态栏、导航栏、Widget等可视的界面元素中的至少一种。
参见图3,在一些实施例中,将显示设备200的操作系统分为四层,从上至下分别为应用程序(Applications)层(简称“应用层”),应用程序框架(Application Framework)层(简称“框架层”),安卓运行时(Android runtime)和系统库层(简称“系统运行库层”),以及内核层。在一些实施例中,应用程序层中运行有至少一个应用程序,这些应用程序可以是操作系统自带的窗口(Window)程序、系统设置程序或时钟程序等,如直播应用,该直播应用用于播放直播节目;也可以是第三方开发者所开发的应用程序。
在一些实施例中,主控设备100可以具有多种实施形式,例如,可以是智能电视、激光投影设备、显示器(monitor)、电子白板(electronic bulletin board)、电子桌面(electronic table)等,也可以是手机、平板电脑、智能手表等带有显示屏的设备。主控设备100为显示设备时,可以参考图2和3所示的显示设备200,此处不赘述。
主控设备100和显示设备200均为支持Matter协议的Matter设备,主控设备100与显示设备200可以按照图4所示的流程进行配网,具体步骤如下:
S401,显示设备200开启设备发现服务。
在一些实施例中,显示设备200可以通过域名系统(Domain Name System,DNS)在网络中让主控设备100发现自己。
在一些实施例中,显示设备200可以通过多播域名系统(Multicast DNS,mDNS)在网络中让主控设备100发现自己。
在一些实施例中,显示设备200可以配置为支持近距离无线通讯技术(Near FieldCommunication,NFC),如果主控设备100配置为支持NFC,则可以通过将主控设备100靠近或者碰触显示设备200,或者可以通过将显示设备200靠近或者碰触主控设备100,令主控设备100通过NFC发现显示设备200。
在一些实施例中,显示设备200可以配置为支持蓝牙低功耗技术(Bluetooth LowEnergy,BLE),如果主控设备100配置为支持BLE,则显示设备200可以通过向周围发送蓝牙广播的方式,令主控设备100发现自己。
S402,主控设备100在发现显示设备200之后,与显示设备200建立第一连接,并获取显示设备200的设备信息。
主控设备100在发现显示设备200之后,可以基于两者支持的通信协议建立第一连接。例如,如果主控设备100基于BLE发现显示设备200,则可以与显示设备200建立BLE连接。
主控设备100可以在发现显示设备200时,获取到显示设备200携带在广播、请求中的设备信息。主控设备100也可以在与显示设备200建立第一连接之后,通过该第一连接向显示设备200请求设备信息,或者由显示设备200主动通过该第一连接向主控设备100发送设备信息。该设备信息可以为显示设备200的基本设备信息,如设备名称。
S403,主控设备100与显示设备200基于第一连接建立第一安全会话。
主控设备100在获取到显示设备200的设备信息之后,可以在设备搜索页面上展示显示设备200的设备信息,以向用户展示已发现的显示设备200,以及向用户展示显示设备200的基本信息。
如果用户想要通过主控设备100控制显示设备200,则可以基于设备搜索页面上显示设备200的项目输入添加指令,以向主控设备100指示将显示设备200添加为被控设备。
主控设备100响应于该添加指令,开启将显示设备200加入虚拟域的过程。为了保证该过程的安全性,主控设备100与显示设备200建立第一安全会话,以在该第一安全会话执行将显示设备200加入虚拟域的过程。
第一安全会话可以为密码认证会话建立(Passcode-Authenticated SessionEstablishment,PASE)会话,主控设备100可以基于第一连接向显示设备200请求密码信息,或者由显示设备200基于第一连接主动向显示设备200发送密码信息,该密码信息用于建立PASE会话。
S404,在第一安全会话下,主控设备100对显示设备200进行设备认证。
在第一安全会话下,主控设备100在将显示设备200加入虚拟域之前,首先对显示设备200进行设备认证,以保证加入的显示设备200的安全性。
例如,主控设备100可以向显示设备200请求数字访问证书(Digital AccessCertificate,DAC)。DAC证书为Matter协议规定的证书,为专门机构签发的证书,每个设备对一个唯一的DAC,需要提前在工厂生产时烧录到设备。由此,主控设备100可以根据显示设备200的DAC证书对显示设备200进行设备认证。
显示设备200响应于主控设备100的请求向主控设备100发送DAC证书,主控设备100在接收到DAC证书之后,对该DAC证书进行认证。例如,主控设备100可以将DAC证书发送至服务器,如分布式控制语言(Distributed Control Language,DCL)服务器,DCL服务器为Matter提出的联盟的服务器,可以用于验证DAC证书的合法性。如果DAC证书合法,则显示设备200已经通过Matter认证;如果DAC证书不合法或者未收到显示设备200发送的DAC证书,则显示设备200未通过Matter认证。
S405,在显示设备200通过设备认证之后,主控设备100为显示设备200分配NOC证书,以及在显示设备200未加入指定网络时,为显示设备200进行配网。
如果显示设备200通过设备认证,则主控设备100为显示设备200分配所在虚拟域的NOC证书,该NOC证书包括该虚拟域的Fabric ID和显示设备200在该虚拟域中的Node ID,可以参考图1。主控设备100为显示设备200分配NOC证书,标志以将显示设备200加入所在的虚拟域。
指定网络可以为主控设备100接入的网络。如果显示设备200当前还未加入指定网络,即显示设备200还未与主控设备100接入同一网络,例如,显示设备200通过DNS、BLE、NFC等被主控设备100发现,则主控设备100向显示设备200发送网络配置信息,如指定网络的网络名称、密码等,以令显示设备200可以根据网络配置信息接入该指定网络。
如果显示设备200是通过mDNS被主控设备100发现,则可以认为显示设备100已接入指定网络,即已与主控设备100接入同一网络。
S406,主控设备100和显示设备200基于指定网络建立第二连接,并根据各自持有的NOC证书基于该第二连接建立第二安全会话。
该指定网络可以为WiFi网络,主控设备100和显示设备200可以基于WiFi网络建立第二连接,以通过该第二连接传输控制指令和更大的数据量。为了保证基于第二连接传输控制指令和数据的安全性,可以基于该第二连接建立第二安全会话,以在该第二安全会话下传输控制指令和数据。
第二安全会话可以为证书认证会话建立(Certificate-Authenticated SessionEstablishment,CASE)会话,主控设备100和显示设备200可以根据各自持有的NOC证书建立第二安全会话。在CASE会话下,主控设备100与显示设备200之间传输的指令和数据均需要进行加密。
S407,在第二安全会话下,主控设备100对显示设备200进行控制。
在第二安全会话下,主控设备100响应于用户操作向显示设备200发送相应的控制指令,以控制显示设备200。
控制权限的类型可以包括View、Operate、Manage、Administer。其中,View的权限为读取或订阅数据、Operate的权限为写操作数据和调用操作命令、Manage的权限为写配置数据和调用配置命令、Administer的权限为写管理数据和调用管理命令。
主控设备100可以配置为具有最高的控制权限,如Administer。
由上述过程可知,主控设备100可以将被控设备加入虚拟域,对被控设备进行配网,以及对被控设备进行控制的基础是被控设备需要支持Matter协议,即被控设备为Matter设备。而对于不支持Matter协议的非Matter(no-Matter)设备,主控设备100无法基于Matter协议对非Matter设备进行配网,也就无法将非Matter设备加入自己的虚拟域,从而无法对非Matter设备进行控制。由此,基于Matter协议形成的物联网无法兼容非Matter设备。
为了解决上述问题,本申请提供一种显示设备200,显示设备200为Matter设备,即支持Matter协议,并且显示设备200还支持非Matter协议,如第一协议。主控设备100将显示设备200加入虚拟域之后,可以将显示设备200作为连接非Matter设备的桥梁(Bridge),在显示设备200与非Matter设备建立通信之后,主控设备100可以通过显示设备200控制非Matter设备,相当于将非Matter设备桥接至主控设备100的虚拟域。这样,显示设备200可以称为桥接设备(Bridge Device),非Matter设备可以称为被桥接设备(Bridged Device)。
参考图5所示的整体架构,基于该整体架构可以实现主控设备100对非Matter设备的控制。如图5所示,该整体架构包括Controller、Matter设备和非Matter设备。
其中,Controller可以为主控设备100,如安装有相应App的手机、音响设备等。
Matter设备可以为显示设备200,显示设备200中可以集成有Matter软件开发工具包(Software Development Kit,SDK)、桥接服务(Bridge Server)SDK和其他功能。其中,显示设备200通过Matter SDK,可以实现通过Matter协议与Controller进行设备发现、配网、控制等功能。Bridge Server SDK是基于非Matter协议的实现,如基于第一协议的实现。第一协议可以包括消息队列遥测传输协议(Message Queuing Telemetry Transport,MQTT)、其他私有协议,如用户数据报协议(User Datagram Protocol Broadcasting,UDP)广播、mDNS等网络通信协议。
在Matter协议的定义中,每个Matter设备为一个节点Node,每个节点包括很多端点(endpoint),每个endpoint对应至少一个业务功能(cluster),该业务功能对应于Matter设备支持的业务能力,Matter设备支持的业务能力由Matter设备定义。例如,Matter设备支持的业务能力包括开关机(on/off),对应的业务功能为on/off cluster,即开关机的功能。
显示设备200在存储器中存储有端点信息,该端点信息包括第一端点和对应于第一端点的第一业务功能,每个第一端点对应一种Matter协议中定义的设备类型(DeviceType),第一业务功能对应于显示设备200支持的业务能力。
在一些实施例中,显示设备200可以以列表的形式管理和存储端点信息。可以参考图6所示的端点信息列表。以显示设备200为电视为例,显示设备200的端点信息包括endpoint 0,该端点对应的设备类型为根节点(Root Node),该端点对应用于实现根节点的cluster(图中未示出)。显示设备200还包括endpoint 1,endpoint 1为实现的电视的设备类型,作为电视功能的节点,该设备类型可以为基本被控的实现,如基本视频播放器(basicvideo player)/投射视频播放器(casting video player),该端点对应用于实现电视功能的cluster(图中未示出)。
第一端点还包括指定端点,该指定端点对应Matter协议中定义的桥接设备类型,如聚合(Aggregator),该指定端点对应的第一业务功能包括显示设备200支持作为桥接设备的cluster。以该指定端点为显示设备200的第N个端点为例,可以参考图6,显示设备200的端点信息还包括endpoint n,对应的设备类型为Aggregator,该端点对应用于实现桥接的cluster(图中未示出)。
显示设备200的其它的端点可以根据厂商的实现按照Matter标准进行定义和配置。
非Matter设备可以为不支持Matter协议的灯、电视等设备,非Matter设备中集成了非Matter协议的实现,如桥接设备(Bridge Device SDK),Bridge Device SDK也是基于非Matter协议的实现,如基于第一协议的实现。第一协议此处不赘述。
主控设备100可以通过显示设备200控制非Matter设备包括:显示设备200发现并与非Matter设备连接,以及通过显示设备200控制该非Matter设备。
实施例1
显示设备200发现并与非Matter设备连接的过程,可以不受主控设备100控制,在该过程中,显示设备200可以未与主控设备100进行配网,也可以已完成与主控设备100的配网,加入主控设备100的虚拟域。
显示设备200可以按照图7所示的流程支持主控设备100控制非Matter设备,结合图8所示的底层交互示意图,对显示设备200支持主控设备100控制非Matter设备的过程做出具体说明:
S701,基于第一协议与第一设备建立通信。
第一设备为非Matter设备,且支持第一协议。
显示设备200与非Matter设备分别通过Bridge Server和Bridge Device进行设备发现。显示设备200与非Matter设备建立通信之前,显示设备200对Matter SDK执行初始化协议栈,并对Bridge Server执行初始化,以及由Bridge Server订阅Bridge Device。
显示设备200在与非Matter设备建立连接(通信)之后,存储并管理这些非Matter设备的设备信息和设备状态,非Matter设备的设备状态包括上线状态和下线状态,其中,如果非Matter设备处于上线状态,则显示设备200可以与该非Matter设备进行交互;如果非Matter设备处于下线状态,则显示设备200不能与该非Matter设备进行交互。显示设备200在启动Bridge Server之后,确定各非Matter设备的设备状态,如当前已上线的非Matter设备,后续新上线的非Matter设备,以及后续下线的非Matter设备。如果显示设备200发现其他非Matter设备,可以根据已存储的非Matter设备的设备信息查询该非Matter设备是否连接过,如果未连接过,则显示设备200和该非Matter设备基于Bridge Server和BridgeDevice的实现进行连接,并在建立连接之后,存储并管理该非Matter设备的设备信息。
以非Matter设备为第一设备,且显示设备200查询到该非Matter设备未连接过为例,对显示设备200与第一设备建立通信的过程进行说明。
在一些实施例中,显示设备200可以响应于用户的搜索指令,基于第一协议搜索周围的设备,并在发现第一设备之后,与第一设备建立通信。
用户可以在需要添加对第一设备的控制时,向显示设备200发送搜索指令,以指示显示设备200搜索第一设备。
例如,用户可以向显示设备200发送搜索指令,该搜索指令为指示显示设备200搜索周围的全部设备,显示设备200在发现周围的设备之后,可以显示一张设备发现列表,该设备发现列表可以包括全部已发现的非Matter设备的项目,如果用户在这些已发现的非Matter设备中发现想要控制的第一设备,则可以基于该第一设备的项目输入指令,以指示显示设备200与第一设备建立连接。
又如,用户可以向显示设备200发送搜索指令,该搜索指令为指示显示设备200发现第一设备。用户可以通过第一操作向显示设备200发送该搜索指令,以显示设备200和第一设备均支持NFC为例,该第一操作可以为将第一设备靠近或者碰触显示设备200。显示设备200在发现第一设备之后,可以基于第一协议与第一设备建立通信。
在另一些实施例中,显示设备200可以响应于第一设备发送的配对请求,与第一设备建立通信。无需用户对显示设备200进行额外操作,显示设备200可以自动接收到第一设备发送的配对请求,并基于第一协议与第一设备建立通信。其中,显示设备200在接收到第一设备发送的配对请求之后,可以显示询问信息,该询问信息用于询问用户是否与第一设备建立连接,并在用户指示可以建立连接时,再基于第一协议与第一设备建立通信。显示设备200在接收到第一设备发送的配对请求之后,还可以在用户无感知的情况下直接基于第一协议与第一设备建立通信,以减少用户的操作。
显示设备200在与第一设备建立通信时,可以对第一设备进行设备验证,在第一设备通过验证之后,再与第一设备建立通信,以此保证第一设备的设备可靠性,以及保证与第一设备之间的信息安全性。
基于不同的第一协议,显示设备200与第一设备建立连接的过程也有所不同,结合以下几种第一协议进行示例性说明。
第一协议为MQTT协议,可以使用MQTT协议中的共享主题(Shared Topic)进行设备发现,基于MQTT协议的共享主题,第一设备可以发布到一个共享主题,显示设备200可以通过订阅该共享主题来发现第一设备。例如,第一设备可以发布到共享主题“device uuid/+/status”,显示设备200可以通过订阅“device uuid/+/status”,以获取该共享主题的设备列表,该设备列表包括发布到该共享主题的设备,这些设备包括第一设备,这样,显示设备200可以发现第一设备。其中,共享主题可以自定义,本实施例对其不加以限制。显示设备200在发现第一设备之后,与第一设备建立通信。
第一协议为专门的设备发现服务。该专门的设备发现服务可以使用UDP广播、mDNS协议等实现,第一设备可以通过这些专门的设备发现服务机制广播自己的存在,显示设备200可以通过监听这些设备发现服务的广播消息,以发现第一设备。例如,显示设备200在监听到第一设备发送的广播之后,确定发现第一设备。
S702,创建第一设备对应的第二端点和对应于第二端点的第二业务功能,该第二业务功能对应于第一设备支持的业务能力。
由于显示设备200具备指定端点,即Aggregator,因此,显示设备200具备创建和添加非Matter设备的端点的能力。
显示设备200按照标准Matter device type的形式为第一设备创建相应的端点(即第二端点)和该端点对应的业务功能(即第二业务功能)。
显示设备200可以按照图8所示的流程创建第二端点和第二业务功能,具体步骤如下:
S801,获取第一设备的设备信息,设备信息包括第一设备的设备类型和第一设备支持的业务能力。
在一些实施例中,第一设备可以在与显示设备200建立通信之前,向显示设备200发送设备信息,如第一设备在向外发送的广播中携带设备信息。在另一些实施例中,显示设备200可以在与第一设备建立通信之后,向第一设备请求设备信息。在另一些实施例中,第一设备可以在与显示设备200建立通信之后,主动向显示设备200发送设备信息。
设备信息至少包括第一设备的设备类型和支持的业务能力。设备信息还可以包括第一设备的其它属性信息,如设备名称、设备的唯一ID、设备的位置、生产厂商等。
S802,根据Matter协议、第一设备的设备类型和第一设备支持的业务能力,创建与第一设备对应的第二端点,以及根据第一设备支持的业务能力,创建第二端点对应的第二业务功能。
在一些实施例中,显示设备200在获取到第一设备的设备信息之后,直接根据Matter协议、第一设备的设备类型和第一设备支持的业务能力,创建第二端点,以及根据第一设备支持的业务能力,创建第二业务功能。这样,无需用户对显示设备200进行额外操作,显示设备200就可以在用户无感知的情况下,为第一设备创建第二端点和第二业务功能。
其中,如果第一设备为多个,且每个第一设备支持至少一种业务能力,则显示设备200可以为全部第一设备创建第二端点,以及为第一设备支持的业务能力创建第二业务功能。
或者,显示设备200可以按照预设条件,为该多个第一设备中的目标第一设备创建第二端点,以及为目标第一设备支持的至少一种业务能力的目标业务能力创建第二业务功能。该预设条件可以包括默认的/用户预先设定的设备添加条件和业务功能添加条件。例如,用户预先设定的设备添加条件为添加设备类型为灯和开关的设备,业务功能添加条件为添加on/off功能。
在另一些实施例中,显示设备200在获取到第一设备的设备信息之后,如果用户想要通过主控设备100对第一设备进行控制,以及想要控制第一设备支持的部分/全部业务能力,则响应于用户的选择,根据Matter协议、第一设备的设备类型和第一设备支持的业务能力,创建第二端点,以及根据第一设备支持的业务能力,创建第二业务功能。这样,显示设备200可以有针对性地为第一设备创建第二端点,以及为第一设备支持的业务能力创建第二业务功能。由此,主控设备100仅可以通过显示设备200控制用户选择的非Matter设备,以及用户选择的业务功能,以有效限制主控设备100对非Matter设备的控制范围,避免主控设备100无限制的控制非Matter设备。
其中,显示设备200可以按照图9所示的流程有针对性地创建第二端点和第二业务功能,具体步骤如下:
S901,根据设备名称,显示第一设备列表。
显示设备200从第一设备获取的设备信息包括第一设备的设备名称,显示设备200在与第一设备建立通信,以及获取到第一设备的设备信息之后,根据设备名称显示第一设备列表。
第一设备列表包括第二设备的项目,第二设备的项目上显示有相应的设备名称。第二设备为与显示设备200基于第一协议建立通信,且未在显示设备200上创建端点的非Matter设备,其中,第二设备包括第一设备,也即第一设备列表包括第一设备的项目,该项目上显示有第一设备的设备名称。
显示设备200在获取到第二设备的设备信息之后,存储并管理这些第二设备的设备信息,显示设备200获取第二设备的设备信息和与第二设备建立通信的过程可以参考步骤S701,此处不赘述。显示设备200可以根据各第二设备的设备信息,显示第一设备列表。可以参考图10所示的第一设备列表,第一设备列表包括各第二设备的项目,并显示第二设备的设备名称,如开关(Switch)、加湿器和灯,其中,灯为第一设备。
在一些实施例中,第一设备列表还可以包括第四设备的项目,第四设备的项目上显示有相应的设备名称。第四设备为与显示设备200基于第一协议建立通信,且已在显示设备200上创建端点的非Matter设备。为了区分第二设备和第四设备,可以在第二设备的项目上携带第一标识,以及在第四设备的项目上携带第二标识。可以参考图10,第一设备列表还包括视频播放器,该视频播放器为第四设备。在开关、加湿器和灯的项目上显示第一标识,如添加按钮,以通过该第一标识提示用户可以显示设备200上创建相应设备的端点,即将相应设备添加为主控设备100的被控设备。在视频播放器的项目上显示第二标识,如删除按钮,以通过该第二标识提示可以从显示设备200中删除相应设备的端点,即取消主控设备100对相应设备的控制。
在一些实施例中,第一设备列表还可以包括第五设备的项目,该第五设备的项目上显示有相应的设备名称。第五设备为与显示设备200基于Matter协议建立通信的Matter设备。为了识别第五设备,可以在第五设备的项目上携带第三标识。可以参考图10,第一设备列表还包括手机,该手机为第五设备,在手机的项目上显示第三标识,如“matter”,以通过该第三标识提示用户相应设备为Matter设备。
在一些实施例中,可以将第二设备、第四设备、第五设备分区显示,可以参考图10所示的第一设备列表。这样,用户可以通过浏览不同的分区快速找到相应的设备,并进行相应的操作。
在一些实施例中,显示设备200可以在与第一设备建立通信,以及获取到第一设备的设备名称之后,直接显示第一设备列表。
其中,如果显示设备200在与第一设备建立通信之前获取到第一设备的设备信息,则显示设备200在与第一设备建立通信之后,直接显示第一设备列表。例如,显示设备200在发现周围的设备之后,可以显示设备发现列表,并响应于用户基于第一设备的项目输入的添加指令,与第一设备建立通信,以及在与第一设备建立通信之后,直接显示第一设备列表。
如果显示设备200在与第一设备建立通信之后获取到第一设备的设备信息,则显示设备200在获取到第一设备的设备信息之后,直接显示第一设备列表。
在另一些实施例中,显示设备200可以响应于用户的指令显示第一设备列表。例如,显示设备200可以在菜单中设置第一设备列表的入口,用户可以通过显示设备200的控制设备,如遥控器等,选中该入口,以令显示设备200显示第一设备列表。
S902,响应于用户基于第一设备的项目输入的添加指令,根据Matter协议、第一设备的设备类型和第一设备支持的业务能力,创建第二端点,以及根据第一设备支持的业务能力,创建第二业务功能。
如果用户想要通过主控设备100对第一设备进行控制,则用户可以通过浏览第一设备列表确定该第一设备,并基于该第一设备的项目向显示设备200输入添加指令,以指示显示设备200为第一设备创建第二端点和第二业务功能。以图10所示的第一设备列表为例,用户可以基于灯对应的添加按钮输入添加指令。当然,如果用户想要通过主控设备100控制其它第二设备,如开关,则可以基于开关对应的添加按钮输入添加指令。显示设备200可以对第一设备列表配置多选功能,即用户可以同时选择多个第二设备,以基于这些第二设备发送一个添加指令,指示显示设备200为这些第二设备分别创建第二端点和第二业务功能。
显示设备200响应于用户的添加指令,为第一设备创建第二端点和第二业务功能。
在一些实施例中,显示设备200响应于用户的添加指令,为第一设备创建第二端点,以及对应于第一设备支持的全部业务能力创建第二业务功能,或者按照预设条件创建第二业务功能,该预设条件可以包括默认的/用户预先设定的业务功能添加条件,如用户预先设定的业务功能添加条件为添加on/off功能,则显示设备200仅针对第一设备支持的on/off业务能力创建对应的on/off功能。
在另一些实施例中,显示设备200可以根据用户的选择为第二端点创建对应的第二业务功能。显示设备200可以按照图11所示的流程创建第二业务功能,具体步骤如下:
S1101,响应于添加指令,根据Matter协议、第一设备的设备类型和第一设备支持的业务能力,创建第二端点,以及根据第一设备支持的业务能力,显示添加页面。
显示设备200响应于用户基于第一设备的项目输入的添加指令,为第一设备创建第二端点,并显示第一设备对应的添加页面。该添加页面包括第一设备支持的业务能力。
以第一设备为灯,灯支持的业务能力包括on/off能力和Dimmable Light为例,如果用户基于图10中灯对应的添加按钮输入添加指令之后,显示设备200显示如图12所示的添加页面,该添加页面包括on/off和Dimmable Light项目,以及每个项目对应的添加按钮。
S1102,响应于用户基于目标业务能力输入的选择指令,创建相应的第二业务功能。
用户通过浏览添加页面确定想要通过主控设备100控制第一设备的业务能力,即目标业务能力,并基于该目标业务能力的项目输入选择指令,以指示显示设备200创建该目标业务能力对应的第二业务功能。显示设备200不会为第一设备支持的业务能力中未被用户选择的能力创建对应的业务功能。
参考图12所示的添加页面,如果用户想要通过主控设备100控制灯的on/off能力,则可以基于on/off能力对应的添加按钮输入选择指令,显示设备200响应于该选择指令,创建on/off能力对应的on/off功能,而不会对Dimmable Light能力创建对应的DimmableLight功能。
显示设备200可以按照图13所示的流程创建第二端点和第二业务功能,具体步骤如下:
S1301,查询Matter协议中的设备类型列表。
设备类型(Device Type)列表包括对设备类型的第一定义,该第一定义包括设备类型对应的设备标识(Device ID)和与设备标识对应的设备名称(Device Name),设备名称对应至少一种业务能力。该至少一种业务能力包括与该设备名称相匹配的一种业务能力,以及在设备类型列表中位于该设备名称之前的各设备名称对应的业务能力。
以设备类型包括灯(lighting)和媒体设备(media)为例,设备类型列表可以参考表1,具体如下:
表1Matter协议中定义的device type
基于表1可知,设备类型灯对应的Device ID包括0x0100、0x0101、0x010C和0x010D。其中,0x0100对应的Device Name为开/光灯(On/Off Light),该Device Name对应的至少一种业务能力包括On/Off能力;0x0101对应的Device Name为可调光灯(DimmableLight),该Device Name对应的至少一种业务能力包括On/Off能力和Dimmable能力;0x010C对应的Device Name为色温灯(Color Temperature Light),该Device Name对应的至少一种业务能力包括On/Off能力、Dimmable能力和Color Temperature能力;0x010D对应的Device Name为扩展色彩灯(Extended Color Light),该Device Name对应的至少一种业务能力包括On/Off能力、Dimmable能力、Color Temperature能力和Extended Color能力。
S1302,根据设备类型列表、第一设备的设备类型和第一设备支持的业务能力,确定第一设备对应的目标设备标识和目标设备名称。
第一设备对应的目标设备名称对应的至少一种业务能力包括第一设备支持的业务能力,此处第一设备支持的业务能力为将要受主控设备100控制的业务能力。基于前文可知,如果用户未通过添加指令特殊指示所要添加的业务能力,则此处的第一设备支持的业务能力可以为第一设备支持的全部业务能力,也可以为显示设备200根据预设条件确定的业务能力;如果用户通过添加指令指示所要添加的业务能力,则此处的第一设备支持的业务能力为用户指示添加的业务能力。
以第一设备的设备类型为灯,此处第一设备支持的业务能力为on/off能力为例,根据第一设备的设备类型和设备类型列表,可以确定第一设备的设备类型对应至Matter协议为lighting,根据此处第一设备支持的业务能力和设备类型列表中对应于lighting的部分,可以确定第一设备对应的目标设备名称为On/Off Light,以令On/Off Light对应的业务能力覆盖此处第一设备支持的业务能力,对应的目标设备标识为0x0100。
以第一设备的设备类型为灯,此处第一设备支持的业务能力为on/off能力和Color Temperature能力为例,根据第一设备的设备类型和设备类型列表,可以确定第一设备的设备类型对应至Matter协议为lighting,根据此处第一设备支持的业务能力和设备类型列表中对应于lighting的部分,可以确定第一设备对应的目标设备名称为ColorTemperature Light,以令Color Temperature Light对应的业务能力覆盖此处第一设备支持的业务能力,对应的目标设备标识为0x010C。
S1303,根据目标设备标识和目标设备名称创建第二端点。
以显示设备200当前包括如图6所示的第一端点(endpoint 0-endpoint N)为例,显示设备200为第一设备创建的第二端点为endpoint N+1,endpoint N+1对应的设备类型具体为目标设备标识对应的目标设备名称。例如,目标设备标识为0x0100,目标设备名称为On/Off Light,endpoint N+1对应的设备类型为0x0100对应的On/Off Light。
S1304,查询Matter协议中的业务功能列表。
基于上述步骤创建的第二端点,虽然其所具有的设备名称对应至少一种业务能力,但是,该至少一种业务能力的能力范围可能会大于第一设备所支持的业务能力,为了保证主控设备100对第一设备控制的有效性,令主控设备100可以精准控制第一设备支持的业务能力,需要对应于第二端点针对第一设备创建相应的第二业务功能。
业务功能列表包括对业务功能的第二定义,该第二定义包括业务功能与业务能力的对应关系。在一些实施例中,业务功能列表可以对应于不同的设备类型,即每一种设备类型对应一个业务功能列表,该业务功能列表包括该设备类型对应的全部业务能力与业务功能的对应关系。
以设备类型为On/Off Light为例,业务功能列表可以参考表2,具体如下:
表2On/Off Light Cluster需求
S1305,根据业务功能和业务能力的对应关系,确定第一设备支持的业务能力对应的第二业务功能。
以第一设备支持的业务能力包括On/Off和Level Control为例,显示设备200基于表2可以确定第二业务功能为On/Off Cluster和Level Control Cluster。此外,第二业务功能还包括表2中示出的On/Off Light基于Matter协议必须支持的业务功能,如IdentifyCluster、Groups Cluster和Scenes Cluster。
S1306,为第二端点添加第二业务功能。
在确定第二业务功能之后,为第二端点添加这些第二业务功能,以完成对第二端点的端点信息的创建。该端点信息至少包括第二端点对应的Device ID和支持的cluster。
如果第一设备为多个,则显示设备200可以按照上述流程为每个第一设备创建第二端点和第二业务功能。
S703,将第二端点和第二业务功能添加至端点信息。
在为第一设备创建第二端点和第二业务功能之后,将第一设备对应的端点信息(第二端点和第二业务功能)添加至存储器中存储的端点信息中,可以参考图6,将第一设备对应的端点信息添加至端点信息列表中,以对添加的第一设备的端点信息进行存储和管理。
S704,在基于Matter协议与主控设备进行配网之后,向主控设备提供第二端点和第二业务功能。
显示设备200与主控设备100进行配网,加入主控设备100的虚拟域的过程可以参考步骤S401-S407,此处不赘述。
显示设备200在加入主控设备100的虚拟域之后,可以作为主控设备100的被控设备被主控设备100控制。
在一些实施例中,显示设备200可以在与主控设备100进行配网的过程中向显示设备200提供端点信息。
其中,端点信息可以包括第一端点和第一业务功能,以及第二端点和第二业务功能。这样,主控设备100可以直接获得显示设备200上的全部端点的端点信息,以便于主控设备100在控制各端点时直接使用获得的端点信息。
该端点信息可以仅包括第一端点和第一业务功能。主控设备100在端点信息中查询到device type为Aggregator的指定端点时,可以确定显示设备200作为桥接设备,并且可能会存在以显示设备200为桥接设备的被桥接设备(非Matter设备),由此,主控设备100可以主动向显示设备200发送读取请求,以向显示设备200请求第二端点和第二业务功能。这样,显示设备200可以在主控设备100存在控制第一设备的需求时,有针对性地向主控设备100提供第二端点和第二业务功能,以减少每次向主控设备100传输的数据量。
而且上述显示设备200向主控设备100提供端点信息的过程,无需用户进行额外的操作,可以在用户无感知的情况下完成端点信息的同步,从而简化用户的操作。
在另一些实施例中,显示设备200可以在与主控设备100进行配网之后,主动向主控设备100提供端点信息。
其中,该端点信息可以包括第一端点和第一业务功能,以及第二端点和第二业务功能。这样,主控设备100可以直接获得显示设备200上的全部端点的端点信息,以便于主控设备100在控制各端点时直接使用获得的端点信息。
该端点信息可以仅包括第一端点和第一业务功能。主控设备100在端点信息中查询到device type为Aggregator的指定端点时,可以主动向显示设备200发送读取请求,以向显示设备200请求第二端点和第二业务功能,此处不赘述。这样,显示设备200可以在主控设备100存在控制第一设备的需求时,有针对性地向主控设备100提供第二端点和第二业务功能,以减少每次向主控设备100传输的数据量。
在另一些实施例中,显示设备200可以响应于主控设备100发送的读取请求,向主控设备100发送第二端点和第二业务功能,该读取请求用于请求读取第一设备的端点信息。
其中,主控设备100可以在需要浏览以显示设备200为桥接设备的被桥接设备时,向显示设备200发送读取请求,以向显示设备200请求第二端点和第二业务功能。
在上述过程中,显示设备200向主控设备100提供的端点信息还可以包括端点对应的设备的设备名称等其他属性信息。
主控设备100在获取到显示设备200的端点信息之后,可以根据端点信息显示被控设备列表。
其中,如果端点信息仅包括第一端点和第一业务功能,则该被控设备列表包括显示设备200的项目。以主控设备100为手机,显示设备200为TV1,参考图14中①所示的被控设备列表,该被控设备列表包括TV1的项目。根据端点信息包括的指定端点,TV1的项目可以被配置为可展开项目。用户可以通过选择TV1的项目,展开以TV1为桥接设备的被桥接设备。其中,主控设备100可以响应于用户点击TV1的项目的操作,向TV1发送读取请求,以向TV1请求第二端点和第二业务功能,以及第一设备的其它属性信息,如设备名称等。主控设备100在接收到TV1发送的第二端点、第二业务功能以及其它属性信息之后,根据这些信息显示TV1的项目对应的第一设备的项目。以第一设备为TV2为例,参考图14中②所示的被控设备列表,在用户选择展开TV1的项目之后,在TV1的项目的下方显示TV2的项目。
如果端点信息包括第一端点和第一业务功能,以及第二端点和第二业务功能,则该被控设备列表包括显示设备200和第一设备的项目,可以参考图14中②所示。
在一些实施例中,为了区分显示设备200和第一设备是否支持Matter协议,可以在第一设备的项目上显示第一标识,以通过第一标识提示用户相应设备为非Matter设备。相应的,不带有第一标识的项目对应的设备为Matter设备。
主控设备100还可以在显示设备200的项目上显示第二标识,以通过第二标识提示用户相应设备为Matter设备。相应的,不带有第二标识的项目对应的设备为非Matter设备。
主控设备100还可以在第一设备的项目上显示第一标识,在显示设备200的项目上显示第二标识,以更加清楚地向用户展示Matter设备和非Matter设备。如图14中②所示,在TV2的项目上显示第一标识,如“非matter”,在TV1的项目上显示第二标识,如“matter”。
在另一些实施例中,主控设备100在被控设备列表内显示显示设备200的项目,并在对应于显示设备200的项目的第一区域内显示第一设备的项目。其中,显示于第一区域的项目对应的设备为以显示设备200为桥接设备被主控设备100控制的非Matter设备。由此,可以令用户更加准确、快速的确定Matter设备与非Matter设备之间的桥接关系,可以便于用户对各Matter设备和非Matter设备的管理。例如,如果用户不想再通过主控设备100控制某个非Matter设备,则可以根据该非Matter设备在被控设备列表中的显示位置,确定该非Matter设备对应的Matter设备,进而通过对该Matter设备进行操作,删除该非Matter设备。
在另一些实施例中,主控设备100在被控设备列表内显示显示设备200和第一设备的项目时,可以按照各设备摆放的空间区域(如客厅、卧室等)、各设备的功能(灯、电视、厨具、卫浴等)等维度进行分类显示。其中,为了区分各设备是否支持Matter协议,可以在设备的项目上显示相应的第一标识或者第二标识。
仍以上述示例中的TV1和TV2为例,可以参考图15所示的被控设备列表,TV1对应第一区域1501,第一区域1501在屏幕上的位置在TV1的项目的右后方,符合用户通常对从属关系的显示习惯,TV2的项目显示在第一区域1501内,以表示TV2为以TV1为桥接设备的被桥接设备。
S705,接收主控设备向第一设备发送的第一指令,并将第一指令转换为支持第一协议的第二指令,以及将第二指令发送至第一设备。
主控设备100在与显示设备200配网之后,可以通过Matter协议向显示设备200的各个endpoint发送控制指令,以控制显示设备200响应于该控制指令执行相应endpoint对应的业务功能。其中,如果主控设备100想要控制第一设备实现第二业务功能,则主控设备100可以向显示设备200中与第一设备对应的第二端点发送控制指令,如第一指令,以控制显示设备200响应于该第一指令执行第二端点对应的第二业务功能,其中,显示设备200响应于该第一指令执行第二端点对应的第二业务功能具体为,显示设备200将该第一指令发送至第二端点,并由Bridge Server调用非Matter的接口,以将第一指令转换为基于第一协议的第二指令,并通过第一协议将第二指令发送至第一设备。第一设备通过Bridge Device接收到该第二指令,并进行相应的处理,以响应主控设备100的控制。
主控设备100通过显示设备200向第一设备发送第一指令的过程为一个消息传递和处理的过程。具体可以为:主控设备100向显示设备200发送第一指令,显示设备200将接收到的消息传递至Matter SDK,并由Matter SDK将该消息传递至Bridge Server,以通过Bridge Server进行消息转换,并将转换后的消息分发至Bridge Device。Bridge Device将接收到的消息发送至第一设备进行处理。由Matter SDK向主控设备100返回结果。
可以参考图16所示的主控设备100、显示设备200和第一设备300的使用场景示意图。如图16所示,显示设备200与第一设备300建立通信之后,为第一设备300创建第二端点和第二业务功能。与图1相比,主控设备100为显示设备200配网,以将显示设备200加入Fabric1之后,可以从显示设备200获取端点信息,该端点信息包括第一设备300对应的第二端点和第二业务功能。主控设备100可以对显示设备200中各端点发送控制指令,以令显示设备200实现该端点对应的业务功能。如图16所示,第一设备300未加入主控设备100的Fabric1,但是,如果主控设备100通过Matter协议向显示设备200发送对第一设备300的第一指令,如off指令,则显示设备200将作为桥接设备将该off指令发送至第一设备300对应的第二端点,如endpoint N+1:0x0100,On/Off Light,其中,endpoint N+1可以对应On/OffCluster和Level Control Cluster。显示设备200可以通过Bridge Server将该off指令匹配为第一协议的第二指令,如MQTT协议的off指令,并通过与第一设备300的通信将该转换后的off指令发送至第一设备300。第一设备300通过Bridge Device接收到该off指令,并进行相应的处理,如关闭灯光,以响应主控设备100的控制。
在一些实施例中,用户需要通过主控设备100控制被控设备时,可以控制主控设备100显示被控设备列表,该被控设备列表包括显示设备200和第一设备300的项目。用户通过浏览该被控设备列表可以确定想要控制的目标设备,如第一设备300。用户可以通过点击第一设备300的项目,指示主控设备100显示第一设备300的控制页面或者控制选项,其中,控制页面包括第一设备的控制选项。第一设备300的控制选项与为第一设备300创建的第二业务功能一一对应。例如,如果为第一设备300创建的第二业务功能包括On/Off Cluster和Level Control Cluster,则控制选项包括On/Off选项和Level Control选项。用户可以基于控制选项输入第一指令,例如,可以点击On/Off选项向主控设备100输入第一指令。主控设备100将向显示设备200发送该第一指令,并指示该第一指令作用于第一设备300。显示设备200将该第一指令发送至第一设备300对应的第二端点,并将转换后的第二指令发送至第一设备300,以令第一设备300响应该第二指令。
这样,如果第一设备为非Matter设备,不能直接加入主控设备100的虚拟域,以被主控设备100直接控制,则可以通过将第一设备添加为显示设备200的一个端点,通过显示设备200向主控设备100提供端点信息的方式,向主控设备100展示第一设备,并且主控设备100可以像向显示设备200本身配置的端点一样,向第一设备对应的端点发送控制指令,通过显示设备200将该控制指令转换为第一设备支持的协议的指令,并向第一设备发送该转换后的指令,以令第一设备可以识别并响应该指令,实现对主控设备100的控制的响应。由此,可以有效兼容非Matter设备。
示例1
以主控设备100为手机、显示设备200为电视A、第一设备为电视B为例,结合图17,对主控设备100通过显示设备200控制第一设备的过程做出说明。
电视B通过MQTT协议发布到共享主题,如“device uuid/+/status”,电视A通过订阅该共享主题发现电视B。电视A可以与电视B建立通信,并从电视B获取设备信息,如电视B的设备类型和支持的业务能力,如开/关机、通道控制、频道控制、按键控制等。电视B的设备信息还可以包括电视B的其它属性信息,如设备名称、设备ID、设备位置、生产厂商等。电视A根据电视B的设备类型和支持的业务能力,为电视B创建对应的第二端点,如endpoint N+1,对应的设备类型为media,对应的cluster包括开/关机cluster、通道控制cluster、频道控制cluster和按键控制cluster,并将电视B对应的第二端点和第二业务功能存储至端点信息。
如图17中①所示,电视A与手机进行配网并加入手机的虚拟域之后,手机可以从电视A读取端点信息。如果用户想要通过手机控制被控设备,则可以控制手机显示被控设备列表,如图17中②所示,该被控设备列表包括电视A和电视B的项目,其中,电视A的项目带有标识“matter”,电视B的项目带有标识“非matter”,而且,电视B显示在电视A对应的第一区域内,表示电视B为以电视A为桥接设备的被桥接设备。如果用户想要控制电视B,如控制电视B关机,则用户可以点击电视B的项目,以控制手机显示电视B的控制页面。如图17中③所示,电视B的控制页面包括开/关机、通道控制、频道控制和按键控制的控件,用户可以基于开/关机输入第一指令,该第一指令指示关机。如图17中④所示,手机通过Matter协议将该第一指令发送至电视A,并由电视A将第一指令转换为支持MQTT协议的第二指令,以及将该第二指令发送至电视B。电视B在接收到该第二指令之后关机,以实现对手机的控制的响应。
示例2
以主控设备100为手机、显示设备200为电视、第一设备为灯为例,结合图18,对主控设备100通过显示设备200控制第一设备的过程做出说明。
灯开启BLE功能,并向周围发送广播。用户想要添加灯为被控设备时,可以通过遥控器向电视发送搜索指令,指示电视搜索周围的设备。如果电视发现灯,则可以显示如图18中①所示的设备发现页面,该设备发现页面包括灯的项目,还可以包括其它发现的设备的项目,如音响的项目。如果用户想要将灯添加为被控设备,则可以通过遥控器选中灯的项目,以指示电视与灯建立通信。在电视与灯建立通信之后,电视可以从灯获取设备信息,如设备类型和支持的业务能力,如on/off能力和Level Control能力,设备信息还可以包括灯相关的其它属性信息,如设备名称、设备ID、设备位置等。电视在与灯建立通信之后,可以显示如图18中②所示的第一设备列表,该第一设备列表包括灯的项目,还包括第二设备的项目,如开关的项目,该第一设备列表还对应于各项目显示添加按钮。如果用户想要添加灯为被控设备,则可以基于灯对应的添加按钮输入添加指令。电视响应于该添加指令,显示如图18中③所示的灯的添加页面,该添加页面包括灯的业务能力的项目,如on/off能力和LevelControl能力。用户可以从中选择部分或者全部能力添加为可以被控制的能力,例如,用户可以基于on/off能力对应的添加按钮输入添加指令,以指示添加on/off能力。电视响应于该添加指令,为on/off能力创建第二业务功能,即on/off cluster。电视将灯对应的第二端点和第二业务功能存储至端点信息。
如图18中④所示,电视与手机进行配网并加入手机的虚拟域之后,手机可以从电视读取端点信息。如果用户想要通过手机控制被控设备,则可以控制手机显示被控设备列表,如图18中⑤所示,该被控设备列表包括电视和灯的项目,其中,电视的项目带有标识“matter”,灯的项目带有标识“非matter”,而且,电视和灯均显示在客厅区域,表示电视和灯位于客厅内。如果用户想要控制灯,如控制灯关机,则用户可以点击灯的项目,以控制手机在灯的项目对应的位置显示功能控件。如图18中⑥所示,灯的功能控件包括开启控件1801和关闭控件1802。用户可以基于关闭控件1802输入第一指令,该第一指令指示关闭。如图18中⑦所示,手机通过Matter协议将该第一指令发送至电视,并由电视将第一指令转换为支持BLE协议的第二指令,以及将该第二指令发送至灯。灯在接收到该第二指令之后关闭灯光,以实现对手机的控制的响应。
在一些实施例中,显示设备200与主控设备100配网并加入主控设备100的虚拟域之后,如果发现新的非Matter设备,则可以继续添加该新的非Matter设备,并向主控设备100提供该新的非Matter设备。显示设备200可以按照图19所示的流程在与主控设备100配网之后继续添加非Matter设备,具体步骤如下:
S1901,基于第一协议与第三设备建立通信。
第三设备为显示设备200在与主控设备100配网并加入主控设备100的虚拟域之后新发现的非Matter设备,第三设备支持第一协议。
S1902,创建第三设备对应的第三端点和对应于第三端点的第三业务功能,第三业务功能对应于第三设备支持的业务能力。
步骤S1901-S1902可以参考步骤S701-S702,此处不赘述。
S1903,将第三端点和第三业务功能添加至端点信息,并向主控设备提供第三端点和第三业务功能。
以显示设备200当前包括如图6所示的第一端点(endpoint 0-endpoint N)和第二端点(endpoint N+1),第三设备为开关为例。显示设备200为第三设备创建的第三端点为endpoint N+2,endpoint N+2对应的设备类型可以为0x0200对应的On/Off Switch。
在一些实施例中,显示设备200在创建第三端点和第三业务功能之后,可以主动向主控设备100发送更新请求,该更新请求携带该第三端点和第三业务功能,以及第三设备相关的其它属性信息,如设备名称等,用于请求主控设备100更新显示设备200对应的端点信息,以添加第三端点和第三业务功能。
主控设备100响应于该更新请求,可以直接更新显示设备200的端点信息,以添加第三端点和第三业务功能。主控设备100响应于该更新请求,还可以显示更新通知,该更新通知用于通知用户显示设备200存在新加入的非Matter设备,如第三设备,并询问用户是否更新添加对第三设备的控制。如果用户输入同意添加的指令,则主控设备100响应于该指令,更新显示设备200的端点信息,以添加第三端点和第三业务功能。
如果主控设备100更新显示设备200的端点信息,则根据更新后的端点信息更新被控设备列表,更新后的被控设备列表新增第三设备的选项。用户通过主控设备100控制第三设备的过程可以参考步骤S705,此处不赘述。
示例3
以主控设备100为手机、显示设备200为电视A、第一设备为电视B,第三设备为灯为例,基于示例1,结合图20,对显示设备200在与主控设备100配网之后添加第三设备的过程做出说明。
电视A可以基于BLE协议发现灯,并与灯建立通信,以及为灯创建第三端点和第三业务功能,该过程可以参考示例2,此处不赘述。电视A在端点信息中添加第三端点和第三业务功能之后,可以向手机发送更新请求,该更新请求可以携带灯的端点信息以及相关的其它属性信息。手机根据该更新请求可以显示如图20中①所示的更新通知2001,更新通知2001呈弹窗形式,包括信息如“已连接灯,是否对该设备添加控制?”更新通知2001还可以包括同意按钮和拒绝按钮。如果用户基于同意按钮输入同意添加的指令,则手机响应于该指令,更新电视A的端点信息,以在端点信息中添加第三端点和第三业务功能。如果用户控制手机显示被控设备列表,则手机显示如图20中②所示更新后的被控设备列表,相较于图17中②所示的被控设备列表,该更新后的被控设备列表新增灯的项目,灯的项目上带有标识“非matter”,并显示于电视A的第一区域内,表示等为以电视A为桥接设备的被桥接设备。如果用户想要通过手机控制灯,则可以参考示例1中通过手机控制电视B的过程,此处不赘述。
在一些实施例中,如果用户想要删除对非Matter设备的控制,则可以通过显示设备200的第一设备列表中目标设备的项目输入删除指令,显示设备200响应于该删除指令,从端点信息中删除该目标设备对应的端点信息,并向主控设备100发送删除请求,该删除请求携带目标设备的设备信息,用于请求从显示设备200对应的端点信息中删除目标设备对应的端点信息。
主控设备100响应于该删除请求,从端点信息中删除目标设备对应的端点信息,以更新显示设备200对应的端点信息,并显示删除通知,该删除通知用于通知用户已终止对目标设备的控制权限,以及根据更新后的端点信息更新被控设备列表,更新后的被控设备列表不再包括目标设备的项目。
示例4
基于示例3,结合图21,对在显示设备200侧删除目标设备的过程做出说明。
如果用户想要删除对电视B的控制,则可以控制电视A显示第一设备列表。电视A可以显示如图21中①所示的第一设备列表,该第一设备列表包括电视B、灯的项目,并对应于每个项目显示删除按钮。如果用户想要删除对电视B的控制,则可以基于电视B的项目对应的删除按钮输入删除指令,电视A响应于该删除指令,从端点信息中删除电视B对应的端点信息,并更新第一设备列表,更新后的第一设备列表可以如图21中②所示。
电视A响应于该删除指令还向手机发送删除请求,该删除请求用于请求从电视A对应的端点信息中删除电视B对应的端点信息。手机响应于该删除请求删除电视B对应的端点信息,以更新端点信息。如果用户控制手机显示被控设备列表,则手机根据更新后的端点信息显示如图21中③所示更新后的被控设备列表,相较于图20中②所示的被控设备列表,该更新后的被控设备列表不包括电视B的项目。
在另一些实施例中,如果非Matter设备断开与显示设备200的连接,则显示设备200从端点信息中删除该非Matter设备对应的端点信息,并通知主控设备100删除该非Matter设备对应的端点信息,上述过程此处不赘述。
实施例2
显示设备200发现并与非Matter设备连接的过程,可以受主控设备100控制,在执行该过程之前,显示设备200已完成与主控设备100的配网,加入主控设备100的虚拟域。
显示设备200可以按照图22所示的流程支持主控设备100控制非Matter设备,具体步骤如下:
S2201,在基于Matter协议与主控设备进行配网之后,响应于主控设备发送的搜索指令,搜索周围的设备。
主控设备100与显示设备200进行配网,可以将显示设备200加入虚拟域,以对显示设备200进行控制。如果用户想要通过显示设备200添加非Matter设备,则用户可以控制主控设备100显示被控设备列表,该被控设备列表包括显示设备200的项目。用户可以基于显示设备200的项目输入指令,指示主控设备100显示显示设备200的控制页面。显示设备200的控制页面可以配置有搜索入口,用户可以基于该搜索入口输入指令,主控设备200响应于该指令,将向显示设备200发送搜索指令,以控制显示设备200搜索周围的设备。
显示设备200主动搜索周围的设备,并发现第一设备的过程可以参考步骤S701中的相关部分,此处不赘述。
S2202,在发现第一设备之后,获取第一设备的设备名称,并向主控设备发送设备名称。
第一设备为非Matter设备,且支持第一协议。
在一些实施例中,显示设备200在发现第一设备之后,可以直接与第一设备建立通信,该过程可以参考步骤S701中的相关部分,此处不赘述。
在另一些实施例中,显示设备200在发现第一设备之后,获取该第一设备的设备名称,还可以获取第一设备的其它属性信息,并向主控设备100发送第一设备的设备名称。主控设备100可以根据获取到的第一设备的设备名称等属性信息,在第一设备的控制页面中显示设备发现结果。用户通过主控设备100浏览控制页面,并确定想要控制的非Matter设备,如第一设备。
S2203,响应于主控设备发送的控制指令,与第一设备建立通信。
用户可以通过点击控制页面中设备发现结果中第一设备的项目,以向主控设备100发送连接指令,主控设备100响应于该连接指令,向显示设备200发送连接指令,以控制显示设备200与第一设备建立通信。
显示设备200与第一设备建立通信的过程可以参考步骤S701中的相关部分,此处不赘述。
S2204,创建第一设备对应的第二端点和对应于第二端点的第二业务功能,第二业务功能对应于第一设备支持的业务能力。
步骤S2204可以参考步骤S702,步骤S801-S802,步骤S901-S902,步骤S1101-S1102,步骤S1301-S1306,此处不赘述。
其中,显示设备200创建第一设备对应的第二端点和第二业务功能的过程均可以受主控设备100的控制。
在一种实现方式中,显示设备200可以将执行过程中产生的相关数据同步至主控设备100,主控设备100根据这些相关数据更新显示设备200的控制页面,用户可以基于更新后的控制页面通过主控设备100向显示设备200发送相应的控制指令,以指示显示设备200创建第二端点以及第二业务功能。
在另一种实现方式中,显示设备200可以将执行过程中产生的相关页面同步至主控设备100,主控设备100同步显示这些相关页面。由于主控设备100同步显示的相关页面通常无法提供控件的功能,因此,主控设备100可以根据用户在屏幕上点击的位置和各控件在屏幕上的位置,计算用户作用的目标控件,并生成对应于该目标控件的控制指令,以及向显示设备200发送该控制指令,以控制显示设备200实现该目标控件相应的功能,从而控制显示设备200创建第二端点以及第二业务功能。
S2205,将第二端点和第二业务功能添加至端点信息,并向主控设备提供第二端点和第二业务功能。
S2206,接收主控设备向第一设备发送的第一指令,并将第一指令转换为支持第一协议的第二指令,以及将第二指令发送至第一设备。
步骤S2205-S2206可以参考步骤S704-S705,此处不赘述。
示例5
以主控设备100为手机、显示设备200为电视A、第一设备为电视B为例,结合图23,对主控设备100通过显示设备200控制第一设备的过程做出说明。
手机与电视A进行配网并且将电视A加入虚拟域。如果用户想要通过电视A添加被控设备,则用户可以控制手机显示被控设备列表,如图23中①所示,被控设备列表包括电视A的项目。用户基于电视A的项目输入选择指令,手机响应于该选择指令显示如图23中②所示的电视A的控制页面,该控制页面包括搜索入口2301。用户可以基于搜索入口2301输入搜索指令,手机响应于该搜索指令向电视A发送搜索指令,以指示电视A主动搜索周围的设备,如电视B通过BLE协议向外发送广播如果电视A扫描到电视B发送的广播,则发现电视B。电视A发现电视B之后,可以获取电视B的设备信息,并向手机发送电视B的设备信息。手机接收到电视B的设备信息之后,可以如图23中③所示,在电视A的控制页面中显示设备发现结果,该设备发现结果包括电视B的项目,并对应电视B的项目显示连接按钮。如果用户想要添加对电视B的控制,则可以点击电视B的项目对应的连接按钮输入点击指令。手机响应于该点击指令,向电视A发送连接指令,以指示电视A与电视B建立通信。电视A与电视B建立通信、获取电视B的设备信息、为电视B创建第二端点和第二业务功能、以及手机通过电视A控制电视B的过程均可以参考示例1,此处不赘述。
在一些实施例中,用户可以通过主控设备100删除对非Matter设备的控制。用户可以控制主控设备100显示被控设备列表,该被控设备列表包括显示设备200和第一设备的项目,其中,被控设备列表还可以对应于第一设备的项目配置删除按钮,或者在第一设备的控制页面内配置删除按钮。如果用户想要删除对第一设备的控制,则用户可以基于第一设备的项目对应的删除按钮输入删除指令。主控设备100响应于该删除指令,从显示设备200对应的端点信息中删除第一设备对应的端点信息,以更新端点信息。主控设备100根据更新后的端点信息更新被控设备列表,更新后的被控设备列表不再包括第一设备的项目。主控设备100响应于该删除指令,还向显示设备200发送删除指示,该删除指示用于指示显示设备200从端点信息中删除第一设备对应的端点信息。例如,主控设备100通过Bridge Server删除该非Matter设备的相关设备信息,并通知到Matter SDK,Matter SDK会调用接口将非Matter设备相应的endpoint删除。
示例6
以主控设备100为手机、显示设备200为电视A、第一设备为电视B为例,结合图24,对主控设备100侧删除非Matter设备的过程做出说明。
如果用户想要删除对非Matter设备的控制,如删除对电视B的控制,则用户可以控制手机显示被控设备列表。手机可以显示如图24中①所示的被控设备列表,该被控设备列表包括电视A和电视B的项目。并且,该被控设备列表对应于该项目还显示有删除按钮。用户可以基于电视B的项目对应的删除按钮输入点击指令,手机响应于该点击指令,删除电视B对应的端点信息,并更新显示被控设备列表,更新后的被控设备列表可以如图24中②所示,不包括电视B的项目。手机响应于该点击指令,如图24中①所示,还向电视A发送删除指示,该删除指示用于指示电视A从端点信息中删除电视B的端点信息。
为了方便解释,已经结合具体的实施方式进行了上述说明。但是,上述在一些实施例中讨论不是意图穷尽或者将实施方式限定到上述公开的具体形式。根据上述的教导,可以得到多种修改和变形。上述实施方式的选择和描述是为了更好的解释本公开的内容,从而使得本领域技术人员更好的使用实施方式。
Claims (15)
1.一种显示设备,其特征在于,所述显示设备为Matter设备,且支持第一协议,所述第一协议为非Matter协议,包括:
存储器,被配置为:存储有端点信息,所述端点信息包括第一端点和对应于所述第一端点的第一业务功能,每个所述第一端点对应一种Matter协议中定义的设备类型,其中,所述第一端点包括对应Matter协议中定义的桥接设备类型的指定端点,所述指定端点对应第一业务功能包括所述显示设备支持作为桥接设备;
控制器,被配置为:
基于所述第一协议与第一设备建立通信,所述第一设备为非Matter设备,且支持所述第一协议;
创建所述第一设备对应的第二端点和对应于所述第二端点的第二业务功能,所述第二业务功能对应于所述第一设备支持的业务能力;
将所述第二端点和所述第二业务功能添加至所述端点信息;
在基于Matter协议与主控设备进行配网之后,向所述主控设备提供所述第二端点和所述第二业务功能;
接收所述主控设备向所述第一设备发送的第一指令,并将所述第一指令转换为支持所述第一协议的第二指令,以及将所述第二指令发送至所述第一设备。
2.根据权利要求1所述的显示设备,其特征在于,所述控制器基于所述第一协议与第一设备建立通信,被配置为:
响应于用户的搜索指令,基于所述第一协议搜索周围的设备,并在发现所述第一设备之后,与所述第一设备建立通信;
或者,响应于所述第一设备发送的配对请求,与所述第一设备建立通信。
3.根据权利要求1所述的显示设备,其特征在于,所述控制器创建所述第一设备对应的第二端点和对应于所述第二端点的第二业务功能,被配置为:
获取所述第一设备的设备信息,所述设备信息包括所述第一设备的设备类型和所述第一设备支持的业务能力;
根据Matter协议、所述第一设备的设备类型和所述第一设备支持的业务能力,创建与所述第一设备对应的第二端点,以及根据所述第一设备支持的业务能力,创建所述第二端点对应的第二业务功能。
4.根据权利要求3所述的显示设备,其特征在于,所述控制器根据Matter协议、所述第一设备的设备类型和所述第一设备支持的业务能力,创建与所述第一设备对应的第二端点,以及根据所述第一设备支持的业务能力,创建所述第二端点对应的第二业务功能,被配置为:
在获取到所述第一设备的设备信息之后,直接根据Matter协议、所述第一设备的设备类型和所述第一设备支持的业务能力,创建所述第二端点,以及根据所述第一设备支持的业务能力,创建所述第二业务功能。
5.根据权利要求3所述的显示设备,其特征在于,所述设备信息还包括所述第一设备的设备名称,所述控制器在获取所述第一设备的设备信息之后,还被配置为:
根据所述设备名称,控制显示器显示第一设备列表,所述第一设备列表包括第二设备的项目,所述第二设备的项目上显示有相应的设备名称,所述第二设备为与所述显示设备基于所述第一协议建立通信,且未在所述显示设备上创建端点的非Matter设备,其中,所述第二设备包括所述第一设备;
所述控制器根据Matter协议、所述第一设备的设备类型和所述第一设备支持的业务能力,创建与所述第一设备对应的第二端点,以及根据所述第一设备支持的业务能力,创建所述第二端点对应的第二业务功能,被配置为:
响应于用户基于所述第一设备的项目输入的添加指令,根据Matter协议、所述第一设备的设备类型和所述第一设备支持的业务能力,创建所述第二端点,以及根据所述第一设备支持的业务能力,创建所述第二业务功能。
6.根据权利要求5所述的显示设备,其特征在于,所述控制器响应于用户基于所述第一设备的项目输入的添加指令,根据Matter协议、所述第一设备的设备类型和所述第一设备支持的业务能力,创建所述第二端点,以及根据所述第一设备支持的业务能力,创建所述第二业务功能,被配置为:
响应于所述添加指令,根据Matter协议、所述第一设备的设备类型和所述第一设备支持的业务能力,创建所述第二端点,以及根据所述第一设备支持的业务能力,控制所述显示器显示添加页面,所述添加页面包括所述第一设备支持的业务能力;
响应于用户基于目标业务能力输入的选择指令,创建相应的所述第二业务功能。
7.根据权利要求3-6中任一所述的显示设备,其特征在于,所述控制器根据Matter协议、所述第一设备的设备类型和所述第一设备支持的业务能力,创建与所述第一设备对应的第二端点,以及根据所述第一设备支持的业务能力,创建所述第二端点对应的第二业务功能,被配置为:
查询Matter协议中的设备类型列表,所述设备类型列表包括对设备类型的第一定义,所述第一定义包括所述设备类型对应的设备标识和与所述设备标识对应的设备名称,所述设备名称对应至少一种业务能力;
根据所述设备类型列表、所述第一设备的设备类型和所述第一设备支持的业务能力,确定所述第一设备对应的目标设备标识和目标设备名称;
根据所述目标设备标识和所述目标设备名称创建所述第二端点;
查询Matter协议中的业务功能列表,所述业务功能列表包括对业务功能的第二定义,所述第二定义包括业务功能与业务能力的对应关系;
根据所述业务功能和业务能力的对应关系,确定所述第一设备支持的业务能力对应的所述第二业务功能;
为所述第二端点添加所述第二业务功能。
8.根据权利要求1所述的显示设备,其特征在于,所述控制器在基于Matter协议与主控设备进行配网之后,向所述主控设备提供所述第二端点和所述第二业务功能,被配置为:
在基于Matter协议与所述主控设备进行配网之后,主动向所述主控设备提供所述端点信息,所述端点信息包括所述第一端点和所述第一业务功能,以及所述第二端点和所述第二业务功能;
或者,响应于所述主控设备发送的读取请求,向所述主控设备发送所述第二端点和所述第二业务功能,所述读取请求用于请求读取所述第一设备的端点信息。
9.根据权利要求1所述的显示设备,其特征在于,在基于Matter协议与主控设备进行配网之后,所述控制器,还被配置为:
基于所述第一协议与第三设备建立通信,所述第三设备为非Matter设备,且支持所述第一协议;
创建所述第三设备对应的第三端点和对应于所述第三端点的第三业务功能,所述第三业务功能对应于所述第三设备支持的业务能力;
将所述第三端点和所述第三业务功能添加至所述端点信息,并向所述主控设备提供所述第三端点和所述第三业务功能。
10.一种显示设备,其特征在于,所述显示设备为Matter设备,且支持第一协议,所述第一协议为非Matter协议,包括:
存储器,被配置为:存储有端点信息,所述端点信息包括第一端点和对应于所述第一端点的第一业务功能,每个所述第一端点对应一种Matter协议中定义的设备类型,其中,所述第一端点包括对应Matter协议中定义的桥接设备类型的指定端点,所述指定端点对应第一业务功能包括所述显示设备支持作为桥接设备;
控制器,被配置为:
在基于Matter协议与主控设备进行配网之后,响应于所述主控设备发送的搜索指令,搜索周围的设备;
在发现第一设备之后,获取所述第一设备的设备名称,并向所述主控设备发送所述设备名称,所述第一设备为非Matter设备,且支持所述第一协议;
响应于所述主控设备发送的控制指令,与所述第一设备建立通信;
创建所述第一设备对应的第二端点和对应于所述第二端点的第二业务功能,所述第二业务功能对应于所述第一设备支持的业务能力;
将所述第二端点和所述第二业务功能添加至所述端点信息,并向所述主控设备提供所述第二端点和所述第二业务功能;
接收所述主控设备向所述第一设备发送的第一指令,并将所述第一指令转换为支持所述第一协议的第二指令,以及将所述第二指令发送至所述第一设备。
11.一种主控设备,其特征在于,包括:
控制器,被配置为:
在基于Matter协议对显示设备进行配网之后,从所述显示设备获取端点信息,所述显示设备为Matter设备,且支持第一协议,所述第一协议为非Matter协议,所述端点信息包括第一端点和对应于所述第一端点的第一业务功能,每个所述第一端点对应一种Matter协议中定义的设备类型,其中,所述第一端点包括对应Matter协议中定义的桥接设备类型的指定端点,所述指定端点对应第一业务功能包括所述显示设备支持作为桥接设备;所述端点信息还包括第一设备对应的第二端点和对应于所述第二端点的第二业务功能,所述第一设备为非Matter设备,且支持所述第一协议,所述显示设备基于所述第一协议与所述第一设备建立通信,所述第二业务功能对应于所述第一设备支持的业务能力;
根据所述端点信息控制显示器显示被控设备列表,所述被控设备列表包括所述显示设备的项目和所述第一设备的项目,其中,所述第一设备的项目带有第一标识,所述第一标识用于指示所述第一设备为非Matter设备。
12.根据权利要求11所述的主控设备,其特征在于,所述控制器根据所述端点信息控制显示器显示被控设备列表,还被配置为:
在所述被控设备列表内显示所述显示设备的项目,并在对应于所述显示设备的项目的第一区域内显示所述第一设备的项目,其中,显示于所述第一区域的项目对应的设备为以所述显示设备为桥接设备被所述主控设备控制的非Matter设备。
13.一种对非Matter设备的控制方法,其特征在于,应用于如权利要求1-9中任一所述的显示设备,所述显示设备为Matter设备,且支持第一协议,所述第一协议为非Matter协议;所述显示设备存储有端点信息,所述端点信息包括第一端点和对应于所述第一端点的第一业务功能,每个所述第一端点对应一种Matter协议中定义的设备类型,其中,所述第一端点包括对应Matter协议中定义的桥接设备类型的指定端点,所述指定端点对应第一业务功能包括所述显示设备支持作为桥接设备;
所述方法包括:
基于所述第一协议与第一设备建立通信,所述第一设备为非Matter设备,且支持所述第一协议;
创建所述第一设备对应的第二端点和对应于所述第二端点的第二业务功能,所述第二业务功能对应于所述第一设备支持的业务能力;
将所述第二端点和所述第二业务功能添加至所述端点信息;
在基于Matter协议与主控设备进行配网之后,向所述主控设备提供所述第二端点和所述第二业务功能;
接收所述主控设备向所述第一设备发送的第一指令,并将所述第一指令转换为支持所述第一协议的第二指令,以及将所述第二指令发送至所述第一设备。
14.一种对非Matter设备的控制方法,其特征在于,应用于如权利要求10所述的显示设备,所述显示设备为Matter设备,且支持第一协议,所述第一协议为非Matter协议;所述显示设备存储有端点信息,所述端点信息包括第一端点和对应于所述第一端点的第一业务功能,每个所述第一端点对应一种Matter协议中定义的设备类型,其中,所述第一端点包括对应Matter协议中定义的桥接设备类型的指定端点,所述指定端点对应第一业务功能包括所述显示设备支持作为桥接设备;
所述方法包括:
在基于Matter协议与主控设备进行配网之后,响应于所述主控设备发送的搜索指令,搜索周围的设备;
在发现第一设备之后,获取所述第一设备的设备名称,并向所述主控设备发送所述设备名称,所述第一设备为非Matter设备,且支持所述第一协议;
响应于所述主控设备发送的控制指令,与所述第一设备建立通信;
创建所述第一设备对应的第二端点和对应于所述第二端点的第二业务功能,所述第二业务功能对应于所述第一设备支持的业务能力;
将所述第二端点和所述第二业务功能添加至所述端点信息,并向所述主控设备提供所述第二端点和所述第二业务功能;
接收所述主控设备向所述第一设备发送的第一指令,并将所述第一指令转换为支持所述第一协议的第二指令,以及将所述第二指令发送至所述第一设备。
15.一种对非Matter设备的控制方法,其特征在于,应用于如权利要求11或12所述的主控设备,所述方法包括:
在基于Matter协议对显示设备进行配网之后,从所述显示设备获取端点信息,所述显示设备为Matter设备,且支持第一协议,所述第一协议为非Matter协议,所述端点信息包括第一端点和对应于所述第一端点的第一业务功能,每个所述第一端点对应一种Matter协议中定义的设备类型,其中,所述第一端点包括对应Matter协议中定义的桥接设备类型的指定端点,所述指定端点对应第一业务功能包括所述显示设备支持作为桥接设备;所述端点信息还包括第一设备对应的第二端点和对应于所述第二端点的第二业务功能,所述第一设备为非Matter设备,且支持所述第一协议,所述显示设备基于所述第一协议与所述第一设备建立通信,所述第二业务功能对应于所述第一设备支持的业务能力;
根据所述端点信息显示被控设备列表,所述被控设备列表包括所述显示设备的项目和所述第一设备的项目,其中,所述第一设备的项目带有第一标识,所述第一标识用于指示所述第一设备为非Matter设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311831382.8A CN117978567A (zh) | 2023-12-27 | 2023-12-27 | 一种显示设备及对非Matter设备的控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311831382.8A CN117978567A (zh) | 2023-12-27 | 2023-12-27 | 一种显示设备及对非Matter设备的控制方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117978567A true CN117978567A (zh) | 2024-05-03 |
Family
ID=90844956
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311831382.8A Pending CN117978567A (zh) | 2023-12-27 | 2023-12-27 | 一种显示设备及对非Matter设备的控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117978567A (zh) |
-
2023
- 2023-12-27 CN CN202311831382.8A patent/CN117978567A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108702389B (zh) | 用于遥控iot(物联网)设备的架构 | |
JP5952301B2 (ja) | 移動通信端末における周辺デバイスを遠隔制御するための装置及び方法 | |
US8271649B2 (en) | Access rights used for resource discovery in peer-to-peer networks | |
US10187474B2 (en) | Method and device for resource sharing between devices | |
KR100681625B1 (ko) | 장치간 동적 네트워킹을 구성하여 리소스 공유를 구현하는 방법 | |
US20160080041A1 (en) | Arrangement for managing wireless communication between devices | |
KR101613320B1 (ko) | 와이파이를 이용하여 무선 네트워크 연결을 위한 정보를 제공하는 장치 및 방법과 그 시스템 | |
EP2461523B1 (en) | Systems and methods for operating an appliance control device for an appliance | |
JP2004252974A (ja) | ホームネットワークデバイスへの効率的なアクセスが可能な制御ポイントサーバシステム及びそのための方法 | |
CN112335204A (zh) | 由助理客户端设备本地控制和/或注册智能设备 | |
CN105703979A (zh) | 设备联动的方法、用于设备联动的设备和网络设备 | |
RU2666636C2 (ru) | Система и способ управления окружающими устройствами на основе топологии | |
WO2023138285A1 (zh) | 一种智能家居设备的绑定方法和终端 | |
KR20180061314A (ko) | 멀티미디어 리소스 재생 시스템, 방법 및 서버 | |
CN111372222A (zh) | 设备连接方法、系统以及相应的终端设备和服务器 | |
US8176343B2 (en) | Method for providing information for power management of devices on a network | |
JP2008059578A (ja) | ホームネットワークでデバイスのサービスを管理する方法及び装置 | |
KR20040013465A (ko) | UPnP 기반 네트워크의 동기화 시스템 및 방법 | |
CN117978567A (zh) | 一种显示设备及对非Matter设备的控制方法 | |
JP4774473B2 (ja) | 機器登録方法及びサーバ装置 | |
KR20110131764A (ko) | 원격 사용자 인터페이스 시스템에서 콘텐츠 서비스 제공장치 및 방법 | |
CN117811741A (zh) | 第三方设备及设备间基于第三方设备管理控制权限的方法 | |
US11888641B1 (en) | Dynamic provisioning of IoT devices from an online application marketplace | |
CN117811859A (zh) | 主控设备及被控设备的设备管理方法 | |
US20240098457A1 (en) | Distributed Maintenance of Operational Data Among IoT Devices, with Soft-Wiring or Other Configuration |
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 |