CN102790753A - 一种查询即时通讯客户端能力信息的方法及装置 - Google Patents
一种查询即时通讯客户端能力信息的方法及装置 Download PDFInfo
- Publication number
- CN102790753A CN102790753A CN2011101317814A CN201110131781A CN102790753A CN 102790753 A CN102790753 A CN 102790753A CN 2011101317814 A CN2011101317814 A CN 2011101317814A CN 201110131781 A CN201110131781 A CN 201110131781A CN 102790753 A CN102790753 A CN 102790753A
- Authority
- CN
- China
- Prior art keywords
- ability
- unit
- information
- client
- query
- 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.)
- Granted
Links
Images
Abstract
本发明公开了一种查询即时通讯IM客户端能力信息的方法及装置。该方法包括:查询IM客户端中安装的插件/软件,获取插件/软件的能力信息并存储;根据接收的能力查询请求中携带的能力标识,查询存储的插件/软件能力信息,获取查询结果;向发送能力查询请求的IM客户端返回查询结果以便该IM客户端根据查询结果执行相应操作。应用本发明,可以扩展查询适用范围、提高查询可靠性。
Description
技术领域
本发明涉及计算机网络技术,特别涉及一种查询即时通讯(IM,InstantMessaging)客户端能力信息的方法及装置。
背景技术
随着计算机网络技术的发展,通过点对点的技术来实现互联网上的即时沟通的即时通讯工具应用越来越普遍,IM已经被大多数的用户所接受并成为用户日常生活以及工作中必不可少的一部分。
随着用户越来越多的利用安装有IM工具软件的IM客户端进行日常的交流与沟通,用户对IM客户端的易用性以及个性化服务等方面提出了越来越高的要求。由于IM客户端中安装的IM工具软件类型多样,各自能兼容不同的应用功能,但即使是对于同一应用功能,不同的IM客户端之间,由于安装的IM软件不同,或者,安装的IM软件版本不同,或者,同一IM软件选择安装的内容不同,均可能导致对该应用功能的不兼容。例如,在发送方(IM客户端)具有交互功能的IM软件中,向接收方(对方IM客户端)发送一个魔法表情,如果接收方不支持该应用功能,将调用通用逻辑,通知发送方自身不支持该应用功能。因而,在IM客户端相互交互中,为了有效节约不兼容应用功能导致的资源开销,在IM客户端相互交互之前,发送方需要首先查询获取接收方的能力信息,根据接收方的能力信息确定接收方不支持待交互的应用功能,则取消应用功能交互,以有效节约资源,降低用户成本。当然,对于其他非IM客户端,也可以通过相互查询能力信息的方法获取对方相关能力信息。
图1为现有查询即时通讯客户端能力信息的方法流程示意图。参见图1,该流程包括:
步骤101,发送方向接收方发送待交互的应用功能所属软件版本信息获取请求;
本步骤中,一般地,如果通过IM软件安装某一应用功能,则假定该应用功能在该IM软件后续改进的软件中一直得到支持,也就是说,安装该应用功能的当前IM软件版本的所有后续版本都能够支持该应用功能。
实际应用中,发送方如果需要与接收方进行多个应用功能的交互,则可以向接收方发送版本信息获取请求,携带所有待交互的应用功能信息。
步骤102,接收方接收应用功能所属软件版本信息获取请求,将应用功能所属的软件版本信息向发送发返回;
本步骤中,接收方根据接收的获取请求中的应用功能信息,查询获取自身该应用功能对应的软件版本信息。
步骤103,发送方判断接收的应用功能所属的软件版本信息中包含的版本号是否不小于自身存储的该应用功能所属的软件版本号,如果是,执行步骤104,如果小于,执行步骤105;
本步骤中,通过获取接收方安装该应用功能的软件版本信息,与自身安装该应用功能的软件版本信息进行对比,如果获取的软件版本号不小于自身存储的该应用功能的软件版本号,则表明接收方能够兼容该应用功能。例如,如果发送方安装了软件版本V3中增加的魔法表情功能,如果接收方返回的该魔法表情功能对应的软件版本号为V3.1,则表明接收方能够兼容该魔法表情功能;而如果收方返回的该魔法表情功能对应的软件版本号为V2或没有软件版本号信息,则表明接收方不支持该魔法表情功能。
步骤104,与接收方进行应用功能交互;
步骤105,取消与接收方的应用功能交互。
由上述可见,现有的查询即时通讯客户端能力信息的方法,一方面,该方法基于在后的软件能够兼容在前的软件安装的应用功能,使得应用功能在软件中只能增加,不能删减,造成在后软件容量越来越大,占用较多的存储空间,而如果在后版本的软件将在前版本的应用功能下架,则发送方会发生误判,导致资源浪费,增加用户成本,查询可靠性较低;而且,同一版本的软件,由于用户选择安装的内容不同,也可能造成不同IM客户端的同一版本的软件对同一应用功能的不兼容;进一步地,软件具有某一应用功能的能力信息,并不表示该能力当前可用,因为有些能力需要依赖特定平台服务,例如,如果该能力对应的应用功能需要即时通讯客户端平台的服务,而该平台没有提供该服务,则该能力在即时通讯客户端中当前处于不可用状态,因而,虽然接收方该应用功能对应的软件版本号大于发送方对应应用功能的版本号,也会导致应用功能不兼容;另一方面,随着基于平台加插件模型的客户端的软件升级技术的出现,即通过只升级插件的方式实现轻量级的软件升级的插件升级等技术的应用,应用功能会与IM客户端软件版本脱钩,在该情况下,现有查询即时通讯客户端能力信息的方法显然不能适用。
发明内容
有鉴于此,本发明的主要目的在于提出一种查询即时通讯客户端能力信息的方法,扩展查询适用范围、提高查询可靠性。
本发明的另一目的在于提出一种查询即时通讯客户端能力信息的装置,扩展查询适用范围、提高查询可靠性。
为达到上述目的,本发明提供了一种查询即时通讯客户端能力信息的方法,该方法包括:
查询IM客户端中安装的插件/软件,获取插件/软件的能力信息并存储;
根据接收的能力查询请求中携带的能力标识,查询存储的插件/软件能力信息,获取查询结果;
向发送能力查询请求的IM客户端返回查询结果以便该IM客户端根据查询结果执行相应操作。
所述查询IM客户端中安装的插件/软件,获取插件/软件的能力信息具体包括:
预先在每一插件中设置用于描述对应插件具备的能力信息的初始能力配置文件;
在IM客户端中安装插件时,根据插件中设置的初始能力配置文件获取安装的插件对应的能力信息并存储为安装能力配置文件。
进一步包括:
遍历各个插件的安装能力配置文件,形成能力列表。
所述初始能力配置文件中包含以能力标识进行区别的多种能力信息。
所述安装能力配置文件中包含区分能力信息是否需要依赖特定平台服务的能力状态标识,并存储能力状态标识为不可用时该能力对应的能力提供者信息。
所述初始以及安装能力配置文件包括:可扩展标记语言格式的文件、文本格式的文件以及记事本格式的文件。
通过客户端对客户端的自定义网络协议发起所述能力查询请求。
所述根据接收的能力查询请求中携带的能力标识,查询存储的插件/软件能力信息,获取查询结果具体包括:
根据接收的能力查询请求中携带的能力标识,查询能力列表:
如果能力列表中有相同的能力标识且能力状态标识为可用,则查询结果中包含可用信息;
如果能力列表中有相同的能力标识且能力状态标识为不可用,判断该IM客户端是否具备该能力,根据判断结果生成查询结果;
如果能力列表中没有相同的能力标识,则查询结果中包含未查询到相关能力信息。
所述判断该IM客户端是否具备该能力,根据判断结果生成查询结果具体包括:
根据能力状态标识对应的能力提供者信息,查询该能力提供者是否提供了该能力需要的服务,如果是,判断该IM客户端用户是否具备享有该服务的权限,如果是,则查询结果中包含可用信息;如果该能力提供者没有提供该能力需要的服务、或,该即时通讯客户端用户不具备享有该服务的权限,则查询结果中包含不可用信息。
所述获取查询结果之后,向发送能力查询请求的IM客户端返回查询结果之前,进一步包括:
设置能力发送策略,判断当前状态是否满足能力发送策略,如果是,执行所述向发送能力查询请求的IM客户端返回查询结果的步骤,否则,结束该流程。
所述能力发送策略包括:如果用户向发送能力查询请求对应的IM客户端设置了隐身,则不发送查询结果,如果用户当前在线且不隐身,则发送查询结果。
一种查询即时通讯IM客户端能力信息的装置,该装置包括:平台模块以及插件模块,其中,
平台模块,用于接收能力查询请求,根据能力查询请求中携带的能力标识,查询插件模块存储的插件能力信息,获取查询结果,向发送能力查询请求的IM客户端返回查询结果以便该IM客户端根据查询结果执行相应操作;
插件模块,查询即时通讯客户端中安装的插件,获取插件的能力信息并存储。
所述平台模块包括:能力中心单元以及图形用户接口单元,其中,
能力中心单元接收能力查询请求,根据能力查询请求中携带的能力标识,查询插件模块存储的插件能力信息,获取查询结果,通过图形用户接口单元向用户展示,并向发送能力查询请求的即时通讯客户端返回查询结果以便该即时通讯客户端根据查询结果执行相应操作。
所述平台模块进一步包括:
能力发送策略单元,用于存储能力发送策略,将用户当前状态对应的能力发送策略输出至能力中心单元,以便能力中心单元根据用户当前状态对应的能力发送策略处理查询结果。
所述平台模块进一步包括:
能力列表存储单元,用于在IM客户端初始化时,遍历插件模块存储的插件能力信息并存储。相应地,
能力中心单元,用于接收能力查询请求,根据能力查询请求中携带的能力标识,查询能力列表存储单元,获取查询结果。
所述插件模块包括:安装能力配置文件单元以及能力提供者单元,其中,
安装能力配置文件单元,用于在IM客户端中安装插件时,根据插件中设置的初始能力配置文件,获取安装的插件对应的能力信息并存储,接收能力查询请求,如果能力查询请求中携带的能力标识对应的存储的能力状态标识为不可用,向能力提供者单元输出能力标识;接收能力提供者单元返回的查询结果,向能力中心单元发送;如果能力查询请求中携带的能力标识对应的存储的能力状态标识为可用,向能力中心单元发送包含可用信息的查询结果;
能力提供者单元,用于存储即时通讯客户端提供的能力所需的服务信息以及即时通讯客户端用户享有该服务的权限信息,接收能力标识,如果存储有该能力所需的服务信息、且该即时通讯客户端用户享有该服务的权限,输出包含可用信息的查询结果;否则,输出包含不可用信息的查询结果。
由上述的技术方案可见,本发明提供的一种查询即时通讯客户端能力信息的方法及装置,通过查询IM客户端中安装的插件/软件,获取插件/软件的能力信息并存储;根据接收的能力查询请求中携带的能力标识,查询存储的插件/软件能力信息,获取查询结果;向发送能力查询请求的IM客户端返回查询结果以便该IM客户端根据查询结果执行相应操作。这样,通过对IM客户端中安装的插件/软件具备的能力信息进行统一的管理,可以避免通过版本信息查询能力导致的误判以及资源浪费,有效提高了查询可靠性;同时,通过安装软件具备的能力信息进行查询,适用于应用功能与IM客户端软件版本脱钩的情形,扩展了查询适用范围。
附图说明
图1为现有查询即时通讯客户端能力信息的方法流程示意图。
图2为本发明实施例查询即时通讯客户端能力信息的方法流程示意图。
图3为本发明实施例查询即时通讯客户端能力信息的装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明作进一步地详细描述。
现有技术中,基于在后软件能够兼容在前软件安装的应用功能前提的查询即时通讯客户端能力信息的方法,在后软件如果为了降低自身安装容量而将在前软件中的应用功能下架,将降低查询的可靠性;进一步地,该方法不能适用于应用功能与IM客户端软件版本脱钩的情形。本发明实施例中,通过获取安装的插件(软件)具备的能力信息,在IM客户端中设置统一管理IM客户端能力信息的客户端能力中心,对客户端具有的能力信息进行统一的管理,从而可以动态灵活地查询客户端是否具备哪些能力,以提高客户端间交互应用功能的开发效率。
图2为本发明实施例查询即时通讯客户端能力信息的方法流程示意图。参见图2,该流程包括:
步骤201,查询即时通讯客户端中安装的插件/软件,获取插件/软件的能力信息并存储;
本步骤中,插件(软件)提供各种应用业务逻辑,插件(软件)具有的应用功能能力通过应用业务逻辑体现。以下以插件为例进行说明。
本发明实施例中,在每一插件中设置初始能力配置文件,用于描述对应插件具备的能力信息。
实际应用中,一个插件可以具有多种能力,则在初始能力配置文件中,每种能力信息以能力标识进行区别,该能力标识具有唯一性。
如前所述,有些能力需要依赖特定平台服务,在该情况下,设置能力信息的状态标识(ID,Identification)以区分该能力信息是否需要依赖特定平台服务。如果能力信息的状态ID为可用,表示该能力信息不依赖于特定平台服务,如果能力信息的状态ID为不可用,表示该能力信息需依赖于特定平台服务,对于能力状态ID为不可用的情形,存储该能力对应的能力提供者信息。
实际应用中,对于同一插件,在安装过程中,由于用户选择的不同,使得安装后的插件对同一应用功能具有不同的兼容模式,因而,本发明实施例中,在IM客户端中安装插件时,根据插件中设置的初始能力配置文件获取安装的插件对应的能力信息并存储为安装能力配置文件。在后续插件的更新或升级中,只需要根据更新的能力信息更新安装能力配置文件中相应内容即可,可以动态灵活地存储IM客户端中安装的插件具有的能力信息。
能力配置文件包括:可扩展标记语言(XML,Extensible MarkupLanguage)格式的文件、文本格式的文件以及记事本格式的文件等。
每一安装的插件可以对应一个安装能力配置文件。
较佳地,在即时通讯客户端初始化时,遍历各个插件的安装能力配置文件,获取插件的能力信息,形成能力列表并存储。在能力列表中,各插件的能力信息以插件ID进行区别,当然,在能力列表中,各插件的能力信息也可以分别以能力ID进行区别。
这样,通过在插件中设置初始能力配置文件,用以描述插件具备的能力信息,在IM客户端中安装插件时,根据插件中设置的初始能力配置文件获取安装的插件对应的能力信息并存储为安装能力配置文件,并在即时通讯客户端初始化时,遍历获取各插件对应的安装能力配置文件中包含的能力信息,形成能力列表,避免了在后软件将在前软件中的应用功能下架导致的应用功能查询发生错误的情形;同时,在应用功能与即时通讯客户端软件版本脱钩后,通过安装能力配置文件,可以获取该安装的插件支持的应用功能,从而可以进行能力信息查询。
步骤202,根据接收的能力查询请求中携带的能力标识,查询存储的插件/软件能力信息,获取查询结果;
本步骤中,如果即时通讯客户端A需要查询即时通讯客户端B是否具备某一能力,可以通过客户端对客户端的自定义网络协议向即时通讯客户端B发起能力查询请求,携带待查询的能力标识。如果需要查询多项能力,则可以在能力查询请求中携带该待查询的多项能力对应的标识。也可以在能力查询请求中,不携带有任何能力标识,则默认为查询该即时通讯客户端A的所有能力信息。
如前所述,安装配置文件中描述的插件具备的能力信息,并不表示该能力当前可用,举例来说,对于QQShow,如果即时通讯客户端平台没有播放flash的功能,则该即时通讯客户端中,应用功能QQShow当前不可用。
本发明实施例中,如果在即时通讯客户端初始化时,已遍历各个插件的安装能力配置文件形成能力列表,则根据能力查询请求中携带的能力标识,查询能力列表;如果未形成能力列表,则遍历各个插件的安装能力配置文件:
如果有相同的能力标识且能力状态标识为可用,则表明该IM客户端支持该应用功能能力;
如果有相同的能力标识且能力状态标识为不可用,需要进一步判断该即时通讯客户端是否具备该能力,具体步骤包括:
根据能力状态标识对应的能力提供者信息,查询该能力提供者是否提供了该能力需要的服务,例如,查询IM客户端平台是否能播放flash,如果是,判断该即时通讯客户端用户是否具备享有该服务的权限,如果是,表示该即时通讯客户端具备该能力,如果该能力提供者没有提供该能力需要的服务、或,该即时通讯客户端用户不具备享有该服务的权限,则表明该即时通讯客户端不具备该能力。
步骤203,向发送能力查询请求的即时通讯客户端返回查询结果以便该即时通讯客户端根据查询结果执行相应操作。
本步骤中,如果即时通讯客户端B存储的能力列表中包含能力查询请求中携带的能力标识对应的能力,则进一步获取该能力的能力状态标识,如果该能力状态标识为可用,则向即时通讯客户端A返回包含该能力可用信息的查询结果;如果该能力状态标识为不可用,则进一步判断该即时通讯客户端是否具备该能力,如果具备,向即时通讯客户端A返回包含该能力可用信息的查询结果;如果即时通讯客户端B存储的能力列表中不包含能力查询请求中携带的能力标识对应的能力、或,在该能力状态标识为不可用时,判断该即时通讯客户端不具备该能力,向即时通讯客户端A返回包含该能力不可用信息的查询结果。
可以通过客户端对客户端的自定义网络协议返回查询结果。
实际应用中,对于即时通讯客户端B来说,当接收到即时通讯客户端A发送的能力查询请求前,如果一直处于隐身状态,而在接收到即时通讯客户端A发送的能力查询请求后,也不希望与该即时通讯客户端A进行应用功能交互,如果自动将查询结果向即时通讯客户端A发送,则即时通讯客户端A可以知道该即时通讯客户端B处于在线状态,则可以通过发送应用功能交互信息与即时通讯客户端B进行联系,使得即时通讯客户端B不得不被动应答,为了避免此类尴尬,进一步地,在向发送能力查询请求的即时通讯客户端返回查询结果之前,包括:
设置能力发送策略,判断当前状态是否满足能力发送策略,如果是,执行步骤203,否则,结束该流程。
能力发送策略可以是如果设置了隐身,则不发送查询结果,而如果用户当前在线且不隐身,则可以发送查询结果。这样,即时通讯客户端B在得到查询结果后,判断用户当前所处的状态,如果用户对该发送能力查询请求的即时通讯客户端设置了隐身,则不发送查询结果或返回用户未在线信息,以避免被动应答的情形。
由上述可见,本发明实施例的查询即时通讯客户端能力信息的方法,查询即时通讯客户端中安装的插件/软件,获取插件/软件的能力信息并存储;根据接收的能力查询请求中携带的能力标识,查询存储的插件/软件能力信息,获取查询结果;向发送能力查询请求的即时通讯客户端返回查询结果以便该即时通讯客户端根据查询结果执行相应操作。这样,通过对IM客户端安装的插件/软件具备的能力信息进行统一的管理,避免了通过版本信息查询能力导致的在后版本的软件将在前版本的应用功能下架,使得发送方发生误判造成的资源浪费,用户成本增加,查询可靠性较低的技术问题,提高了查询可靠性;而且,也避免了通过版本信息查询能力导致的由于用户选择安装的内容不同,造成不同IM客户端的同一版本的软件对同一应用功能不兼容的现象;进一步地,可以解决有些能力需要依赖特定平台服务来确定是否可用的缺陷;此外,通过安装软件具备的能力信息进行查询,适用于应用功能与IM客户端软件版本脱钩的情形,扩展了查询适用范围;还可以动态灵活地查询IM客户端是否具备哪些能力,满足了交互功能中问询对方能力的通用需求,极大地提高了此类需求的用户体验。
图3为本发明实施例查询即时通讯客户端能力信息的装置结构示意图。参见图3,该装置包括:平台(Platform)模块以及一个或多个插件(Plugin)模块,其中,
平台模块,用于接收能力查询请求,根据能力查询请求中携带的能力标识,查询插件模块存储的插件能力信息,获取查询结果,向发送能力查询请求的即时通讯客户端返回查询结果以便该即时通讯客户端根据查询结果执行相应操作;
插件模块,查询即时通讯客户端中安装的插件,获取插件的能力信息并存储。
本发明实施例中,平台模块提供通用的、基础的逻辑,插件提供各种业务逻辑,能力通过业务逻辑体现。
查询结果中可以包括:该能力可用信息,表示该IM客户端具备该能力,可以进行应用功能交互、该能力不可用信息,表示该IM客户端虽然具备该能力,但不能进行应用功能交互、以及未查询到相关能力信息,表示该IM客户端不具备该能力。
平台模块包括:能力中心(Ability Center)单元以及图形用户接口(GUI,Graphic User Interface)单元,其中,
能力中心单元,用于接收能力查询请求,根据能力查询请求中携带的能力标识,查询插件模块存储的插件能力信息,获取查询结果,通过图形用户接口单元向用户展示,并向发送能力查询请求的即时通讯客户端返回查询结果以便该即时通讯客户端根据查询结果执行相应操作。
本发明实施例中,能力中心单元用于控制能力查询逻辑。
进一步包括:
能力发送策略单元,用于存储能力发送策略,将用户当前状态对应的能力发送策略输出至能力中心单元,以便能力中心单元根据用户当前状态对应的能力发送策略处理查询结果。
本发明实施例中,如果用户当前状态为隐身,对应的能力发送策略为不发送查询结果或返回用户未在线信息,则能力中心单元根据该能力发送策略,不发送查询结果或返回用户未在线信息;如果用户当前状态为在线且未隐身,对应的能力发送策略为发送查询结果,则能力中心单元根据该能力发送策略发送查询结果。
进一步包括:
能力列表存储单元,用于在IM客户端初始化时,遍历插件模块存储的插件能力信息并存储。相应地,
能力中心单元,用于接收能力查询请求,根据能力查询请求中携带的能力标识,查询能力列表存储单元,获取查询结果。
插件模块包括:安装能力配置文件单元以及能力提供者单元,其中,
安装能力配置文件单元,用于在IM客户端中安装插件时,根据插件中设置的初始能力配置文件,获取安装的插件对应的能力信息并存储,接收能力查询请求,如果能力查询请求中携带的能力标识对应的存储的能力状态标识为不可用,向能力提供者单元输出能力标识;接收能力提供者单元返回的查询结果,向能力中心单元发送;如果能力查询请求中携带的能力标识对应的存储的能力状态标识为可用,向能力中心单元发送包含可用信息的查询结果;
本发明实施例中,安装能力配置文件单元可以与插件一一对应,即一个插件对应于一个安装能力配置文件单元,能力配置文件用于描述对应插件具备哪些能力,并指明能力对应的能力提供者信息。
如前所述,如果平台模块中未包含能力列表存储单元,则能力中心单元将接收的能力查询请求同时向各安装能力配置文件单元发送,或,依序向各安装能力配置文件单元发送,即向某一安装能力配置文件单元发送能力查询请求后,如果返回的查询结果为未查询到相关能力信息,则依序向下一安装能力配置文件单元发送能力查询请求。
当然,如前所述,实际应用中,即时通讯客户端在初始化的时候,能力列表存储单元可以遍历各个插件的安装能力配置文件单元,生成或初始化能力列表,这样,能力中心单元就可以直接从能力列表单元获取能力查询请求相关的信息。也就是说,在初始化时,能力列表存储单元遍历各个插件的安装能力配置文件单元,初始化能力列表,能力中心单元根据能力列表单元确定是否有插件支持该能力,如果没有,则认为即时通讯客户端B没有该能力;如果有且能力列表单元明确不需要向能力提供者单元求证(能力状态标识为可用),则认为即时通讯客户端B具有该能力;如果有且能力列表单元明确需要向能力提供者单元求证(能力状态标识为不可用),则调用对应的能力提供者单元的IsAvailable方法,求证该能力是否可用。
能力提供者单元,用于存储即时通讯客户端提供的能力所需的服务信息以及即时通讯客户端用户享有该服务的权限信息,接收能力标识,如果存储有该能力所需的服务信息、且该即时通讯客户端用户享有该服务的权限,输出包含可用信息的查询结果;否则,输出包含不可用信息的查询结果。
本发明实施例中,安装配置文件或能力列表中描述了插件具备某项能力,并不代表该能力当前可用,因而,该能力当前是否可用由能力提供者单元来评判。
如果是安装能力配置文件单元发送能力标识,则向安装能力配置文件单元发送包含可用信息或不可用信息的查询结果;如果是能力列表存储单元发送能力标识,则向能力列表存储单元发送包含可用信息或不可用信息的查询结果。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换以及改进等,均应包含在本发明的保护范围之内。
Claims (16)
1.一种查询即时通讯IM客户端能力信息的方法,其特征在于,该方法包括:
查询IM客户端中安装的插件/软件,获取插件/软件的能力信息并存储;
根据接收的能力查询请求中携带的能力标识,查询存储的插件/软件能力信息,获取查询结果;
向发送能力查询请求的IM客户端返回查询结果以便该IM客户端根据查询结果执行相应操作。
2.如权利要求1所述的方法,其特征在于,所述查询IM客户端中安装的插件/软件,获取插件/软件的能力信息具体包括:
预先在每一插件中设置用于描述对应插件具备的能力信息的初始能力配置文件;
在IM客户端中安装插件时,根据插件中设置的初始能力配置文件获取安装的插件对应的能力信息并存储为安装能力配置文件。
3.如权利要求1所述的方法,其特征在于,进一步包括:
遍历各个插件的安装能力配置文件,形成能力列表。
4.如权利要求2或3所述的方法,其特征在于,所述初始能力配置文件中包含以能力标识进行区别的多种能力信息。
5.如权利要求4所述的方法,其特征在于,所述安装能力配置文件中包含区分能力信息是否需要依赖特定平台服务的能力状态标识,并存储能力状态标识为不可用时该能力对应的能力提供者信息。
6.如权利要求4所述的方法,其特征在于,所述初始以及安装能力配置文件包括:可扩展标记语言格式的文件、文本格式的文件以及记事本格式的文件。
7.如权利要求4所述的方法,其特征在于,通过客户端对客户端的自定义网络协议发起所述能力查询请求。
8.如权利要求4所述的方法,其特征在于,所述根据接收的能力查询请求中携带的能力标识,查询存储的插件/软件能力信息,获取查询结果具体包括:
根据接收的能力查询请求中携带的能力标识,查询能力列表:
如果能力列表中有相同的能力标识且能力状态标识为可用,则查询结果中包含可用信息;
如果能力列表中有相同的能力标识且能力状态标识为不可用,判断该IM客户端是否具备该能力,根据判断结果生成查询结果;
如果能力列表中没有相同的能力标识,则查询结果中包含未查询到相关能力信息。
9.如权利要求8所述的方法,其特征在于,所述判断该IM客户端是否具备该能力,根据判断结果生成查询结果具体包括:
根据能力状态标识对应的能力提供者信息,查询该能力提供者是否提供了该能力需要的服务,如果是,判断该IM客户端用户是否具备享有该服务的权限,如果是,则查询结果中包含可用信息;如果该能力提供者没有提供该能力需要的服务、或,该即时通讯客户端用户不具备享有该服务的权限,则查询结果中包含不可用信息。
10.如权利要求9所述的方法,其特征在于,所述获取查询结果之后,向发送能力查询请求的IM客户端返回查询结果之前,进一步包括:
设置能力发送策略,判断当前状态是否满足能力发送策略,如果是,执行所述向发送能力查询请求的IM客户端返回查询结果的步骤,否则,结束该流程。
11.如权利要求10所述的方法,其特征在于,所述能力发送策略包括:如果用户向发送能力查询请求对应的IM客户端设置了隐身,则不发送查询结果,如果用户当前在线且不隐身,则发送查询结果。
12.一种查询即时通讯IM客户端能力信息的装置,其特征在于,该装置包括:平台模块以及插件模块,其中,
平台模块,用于接收能力查询请求,根据能力查询请求中携带的能力标识,查询插件模块存储的插件能力信息,获取查询结果,向发送能力查询请求的IM客户端返回查询结果以便该IM客户端根据查询结果执行相应操作;
插件模块,查询即时通讯客户端中安装的插件,获取插件的能力信息并存储。
13.如权利要求12所述的装置,其特征在于,所述平台模块包括:能力中心单元以及图形用户接口单元,其中,
能力中心单元接收能力查询请求,根据能力查询请求中携带的能力标识,查询插件模块存储的插件能力信息,获取查询结果,通过图形用户接口单元向用户展示,并向发送能力查询请求的即时通讯客户端返回查询结果以便该即时通讯客户端根据查询结果执行相应操作。
14.如权利要求13所述的装置,其特征在于,所述平台模块进一步包括:
能力发送策略单元,用于存储能力发送策略,将用户当前状态对应的能力发送策略输出至能力中心单元,以便能力中心单元根据用户当前状态对应的能力发送策略处理查询结果。
15.如权利要求14所述的装置,其特征在于,所述平台模块进一步包括:
能力列表存储单元,用于在IM客户端初始化时,遍历插件模块存储的插件能力信息并存储。相应地,
能力中心单元,用于接收能力查询请求,根据能力查询请求中携带的能力标识,查询能力列表存储单元,获取查询结果。
16.如权利要求15所述的装置,其特征在于,所述插件模块包括:安装能力配置文件单元以及能力提供者单元,其中,
安装能力配置文件单元,用于在IM客户端中安装插件时,根据插件中设置的初始能力配置文件,获取安装的插件对应的能力信息并存储,接收能力查询请求,如果能力查询请求中携带的能力标识对应的存储的能力状态标识为不可用,向能力提供者单元输出能力标识;接收能力提供者单元返回的查询结果,向能力中心单元发送;如果能力查询请求中携带的能力标识对应的存储的能力状态标识为可用,向能力中心单元发送包含可用信息的查询结果;
能力提供者单元,用于存储即时通讯客户端提供的能力所需的服务信息以及即时通讯客户端用户享有该服务的权限信息,接收能力标识,如果存储有该能力所需的服务信息、且该即时通讯客户端用户享有该服务的权限,输出包含可用信息的查询结果;否则,输出包含不可用信息的查询结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110131781.4A CN102790753B (zh) | 2011-05-20 | 2011-05-20 | 一种查询即时通讯客户端能力信息的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110131781.4A CN102790753B (zh) | 2011-05-20 | 2011-05-20 | 一种查询即时通讯客户端能力信息的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102790753A true CN102790753A (zh) | 2012-11-21 |
CN102790753B CN102790753B (zh) | 2015-11-04 |
Family
ID=47156054
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110131781.4A Active CN102790753B (zh) | 2011-05-20 | 2011-05-20 | 一种查询即时通讯客户端能力信息的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102790753B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014086222A1 (zh) * | 2012-12-05 | 2014-06-12 | 小米科技有限责任公司 | 设置视频通话参数、和发送能力参数的方法及装置 |
CN107766093A (zh) * | 2016-08-18 | 2018-03-06 | 腾讯科技(深圳)有限公司 | 一种功能模块的共享方法及客户端 |
CN110891246A (zh) * | 2018-09-11 | 2020-03-17 | 成都鼎桥通信技术有限公司 | 一种组播媒体数据的处理方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1731806A (zh) * | 2005-08-23 | 2006-02-08 | 中国移动通信集团公司 | 移动终端的软件更新方法 |
CN1906576A (zh) * | 2004-09-20 | 2007-01-31 | 索尼计算机娱乐公司 | 分布软件应用的方法与设备 |
US20070061481A1 (en) * | 2005-08-15 | 2007-03-15 | Haub Andreas P | Method for Intelligent Storing and Retrieving in an Enterprise Data System |
-
2011
- 2011-05-20 CN CN201110131781.4A patent/CN102790753B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1906576A (zh) * | 2004-09-20 | 2007-01-31 | 索尼计算机娱乐公司 | 分布软件应用的方法与设备 |
US20070061481A1 (en) * | 2005-08-15 | 2007-03-15 | Haub Andreas P | Method for Intelligent Storing and Retrieving in an Enterprise Data System |
CN1731806A (zh) * | 2005-08-23 | 2006-02-08 | 中国移动通信集团公司 | 移动终端的软件更新方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014086222A1 (zh) * | 2012-12-05 | 2014-06-12 | 小米科技有限责任公司 | 设置视频通话参数、和发送能力参数的方法及装置 |
CN107766093A (zh) * | 2016-08-18 | 2018-03-06 | 腾讯科技(深圳)有限公司 | 一种功能模块的共享方法及客户端 |
CN107766093B (zh) * | 2016-08-18 | 2021-04-23 | 腾讯科技(深圳)有限公司 | 一种功能模块的共享方法及客户端 |
CN110891246A (zh) * | 2018-09-11 | 2020-03-17 | 成都鼎桥通信技术有限公司 | 一种组播媒体数据的处理方法 |
CN110891246B (zh) * | 2018-09-11 | 2022-07-05 | 成都鼎桥通信技术有限公司 | 一种组播媒体数据的处理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102790753B (zh) | 2015-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103152402A (zh) | 通过移动终端进行登录的方法与系统以及云端服务器 | |
US20130191526A1 (en) | Open plug-in management platform and plug-in management method implemented on browser | |
CN104965726A (zh) | 配置更新方法、装置及系统 | |
CN107566541A (zh) | 容器网络资源分配方法、系统、存储介质和电子设备 | |
CN109391649A (zh) | 页面加载的方法、装置和系统 | |
CN105553741A (zh) | 一种基于云计算的应用系统自动化部署方法 | |
CN102368214A (zh) | 界面自动生成方法及系统 | |
CN109905431A (zh) | 消息处理方法及系统、存储介质、电子设备 | |
CN103207813B (zh) | 管理资源的方法和装置 | |
CN102790753A (zh) | 一种查询即时通讯客户端能力信息的方法及装置 | |
CN104571930A (zh) | 一种安全域存储空间的管理方法、系统和多应用开放平台装置 | |
CN103003809B (zh) | 用于管理远程用户界面的设备和方法及系统 | |
CN108829402A (zh) | 应用程序的多开方法及系统、存储介质和处理器 | |
CN101588359B (zh) | 一种基于网络的软件按需更新的方法及其系统 | |
CN108933844A (zh) | 提供dhcp服务的方法及设备 | |
CN102647395B (zh) | 一种分流网络游戏服务器人数的方法、装置和系统 | |
CN106534342A (zh) | 连接控制方法、主机及系统 | |
CN116827854A (zh) | 一种基于冗余信息反馈的车载通信系统及方法 | |
CN106843971A (zh) | Bios刷新方法、服务器、bmc、介质及存储控制器 | |
CN114024822B (zh) | 基于区块链的物联网设备管理方法、设备、服务器及介质 | |
CN103188117B (zh) | 信息交互服务器仿真测试装置及方法 | |
CN104063451A (zh) | 一种数据库连接管理方法及系统 | |
CN101296196B (zh) | 一种鉴权方法及鉴权装置 | |
CN114327556A (zh) | 基于物联网边云协同的应用配置热更新的实现装置及方法 | |
CN101336425B (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 | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |