具有协作约束的社交社区生成的回答系统转让专利

申请号 : CN201010233848.0

文献号 : CN101958848A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : M·E·贝彻尔

申请人 : 埃森哲环球服务有限公司

摘要 :

本申请公开了一种具有协作约束的社交社区生成的回答系统。更具体地,公开了一种用于社交网络协作的方法,解决用于以有效且高效方式获得信息的需要。该方法从协作的社交网络成员处获得响应于源协作消息的聚合信息。该方法提供需求驱动的信息产生,使得信息显著地更为相关和准确。

权利要求 :

1.一种用于社交网络协作的方法,包括:在存储器中存储关于社交网络输入的第一协作约束;

在所述存储器中存储从消息源获得的源协作消息;

在所述存储器中定义由所述消息源指定的、包括第一网络成员的第一社交网络定义;

利用处理器执行存储在所述存储器中的协作程序,所述协作程序包括逻辑,当所述逻辑被执行时,其致使所述处理器:向每个所述第一网络成员传输所述源协作消息;

从任意数目的所述第一网络成员获得关于所述源协作消息的协作输入;

通过所述第一协作约束对每个所述协作输入进行约束,以获得受约束的协作输入;

将所述受约束的协作输入聚合到聚合协作响应中;以及向所述消息源返回所述聚合协作响应。

2.如权利要求1所述的方法,进一步包括:在所述存储器中存储关于所述社交网络输入的第一完成约束;以及其中:所述协作程序进一步包括逻辑,当所述逻辑被执行时,其致使所述处理器:确定何时满足所述第一完成约束,以及作为响应而向所述消息源返回所述聚合协作响应。

3.如权利要求2所述的方法,其中所述第一完成约束包括时间条件。

4.如权利要求2所述的方法,其中所述第一完成约束规定在向所述消息源返回所述聚合协作响应之前必须提供所述聚合输入中的聚合输入的所述第一网络成员的数目。

5.如权利要求1所述的方法,其中所述第一协作约束包括所述聚合协作响应中的最大字符数。

6.如权利要求1所述的方法,其中所述协作输入中的协作输入包括由所述第一协作约束进行约束的、响应于所述源协作消息的文本条目。

7.如权利要求1所述的方法,其中所述协作输入中的协作输入包括指定同意所述聚合协作响应的确认指示符。

8.如权利要求1所述的方法,其中所述协作程序进一步包括逻辑,当所述逻辑被执行时,其致使所述处理器:向每个所述协作输入指派唯一的特性,以区别至少两个所述第一网络成员。

9.如权利要求1所述的方法,其中所述协作程序进一步包括逻辑,当所述逻辑被执行时,其致使所述处理器:提供协作输入域;以及

锁定所述协作输入域,使得只有所述第一网络成员中选定的一个网络成员可以通过所述协作输入域,来在每个所述协作输入中提供初始协作输入。

10.如权利要求1所述的方法,进一步包括:在所述存储器中定义由至少一个所述第一网络成员指定的、包括第二网络成员的第二社交网络定义;

其中所述协作输入包括第一协作输入;以及其中所述协作程序进一步包括逻辑,当所述逻辑被执行时,其致使所述处理器:向每个所述第二网络成员传输所述源协作消息;

从任意数目的所述第二网络成员获得由所述第一协作约束进行约束的附加协作输入;

以及

将所述第一协作输入和所述附加协作输入聚合到结果协作消息中。

11.一种制品,包括:

计算机可读存储器;以及

存储在所述计算机可读存储器上的:

关于社交网络输入的第一协作约束;

协作程序,包括逻辑,当所述逻辑被执行时,其致使处理器:向第一社交网络定义中指定的每个第一网络成员传输从消息源获得的源协作消息;

从任意数目的所述第一网络成员获得关于所述源协作消息的协作输入;

通过所述第一协作约束对每个所述协作输入进行约束,以获得受约束的协作输入;

将所述受约束的协作输入聚合到聚合协作响应中;以及向所述消息源返回所述聚合协作响应。

12.如权利要求11所述的制品,其中所述存储器进一步包括:关于所述社交网络输入的第一完成约束;并且其中:所述协作程序进一步包括逻辑,当所述逻辑被执行时,其致使所述处理器:确定何时满足所述第一完成约束,以及作为响应而向所述消息源返回所述聚合协作响应。

13.如权利要求12所述的制品,其中所述第一完成约束包括时间条件。

14.如权利要求12所述的制品,其中所述第一完成约束规定在向所述消息源返回所述聚合协作响应之前必须提供所述聚合输入中的聚合输入的所述第一网络成员的数目。

15.如权利要求11所述的制品,其中所述第一协作约束包括所述聚合协作响应中的最大字符数。

16.如权利要求11所述的制品,其中所述协作输入中的协作输入包括由所述第一协作约束进行约束的、响应于所述源协作消息的文本条目。

17.如权利要求11所述的制品,其中所述协作输入中的协作输入包括指定同意所述聚合协作响应的确认指示符。

18.如权利要求11所述的制品,其中所述协作程序进一步包括逻辑,当所述逻辑被执行时,其致使所述处理器:向每个所述协作输入指派唯一的特性,以区别至少两个所述第一网络成员。

19.如权利要求11所述的制品,其中所述协作程序进一步包括逻辑,当所述逻辑被执行时,其致使所述处理器:提供协作输入域;以及

锁定所述协作输入域,使得只有所述第一网络成员中选定的一个网络成员可以通过所述协作输入域来在每个所述协作输入中提供初始协作输入。

20.如权利要求11所述的制品,其中:所述协作输入包括第一协作输入;以及

所述协作程序进一步包括逻辑,当所述逻辑被执行时,其致使所述处理器:向第二社交网络定义中指定的每个第二网络成员传输所述源协作消息;

从任意数目的所述第二网络成员获得由所述第一协作约束进行约束的附加协作输入;

以及

将所述第一协作输入和所述附加协作输入聚合到结果协作消息中。

21.一种用于社交网络协作的系统,所述系统包括:处理器;以及

存储在与所述处理器耦合的计算机可读存储器上的:关于社交网络输入的第一协作约束;

协作程序,所述协作程序包括逻辑,当所述逻辑被执行时,其致使所述处理器:向第一社交网络定义中指定的每个第一网络成员传输从消息源获得的源协作消息;

从任意数目的所述第一网络成员获得关于所述源协作消息的协作输入;

通过所述第一协作约束对每个所述协作输入进行约束,以获得受约束的协作输入;

将所述受约束的协作输入聚合到聚合协作响应中;以及向所述消息源返回所述聚合协作响应。

22.如权利要求21所述的系统,所述计算机可读存储器进一步包括:关于所述社交网络输入的第一完成约束;

所述协作程序进一步包括逻辑,当所述逻辑被执行时,其致使所述处理器:确定何时满足所述第一完成约束,以及作为响应而向所述消息源返回所述聚合协作响应。

23.如权利要求22所述的系统,其中所述第一完成约束包括时间条件。

24.如权利要求22所述的系统,其中所述第一完成约束规定在向所述消息源返回所述聚合协作响应之前必须提供所述聚合输入中的聚合输入的所述第一网络成员的数目。

25.如权利要求21所述的系统,其中所述第一协作约束包括所述聚合协作响应中的最大字符数。

26.如权利要求21所述的系统,其中所述协作输入中的协作输入包括由所述第一协作约束进行约束的、响应于所述源协作消息的文本条目。

27.如权利要求21所述的系统,其中所述协作输入中的协作输入包括指定同意所述聚合协作响应的确认指示符。

28.如权利要求21所述的系统,其中所述协作程序进一步包括逻辑,当所述逻辑被执行时,其致使所述处理器向每个所述协作输入指派唯一的特性,以区别至少两个所述第一网络成员。

29.如权利要求21所述的系统,其中所述协作程序进一步包括逻辑,当所述逻辑被执行时,其致使所述处理器:提供协作输入域;以及

锁定所述协作输入域,使得只有所述第一网络成员中选定的一个网络成员可以通过所述协作输入域来在每个所述协作输入中提供初始协作输入。

30.如权利要求21所述的系统,其中:所述协作输入包括第一协作输入;以及

所述协作程序进一步包括逻辑,当所述逻辑被执行时,其致使所述处理器:向第二社交网络定义中指定的每个第二网络成员传输所述源协作消息;

从任意数目的所述第二网络成员获得由所述第一协作约束进行约束的附加协作输入;

以及

将所述第一协作输入和所述附加协作输入聚合到结果协作消息中。

说明书 :

具有协作约束的社交社区生成的回答系统

技术领域

[0001] 本公开涉及跨计算机网络进行通信以便从社交网络获得协作输入的协作方法和系统。

背景技术

[0002] 尽管连通性极大提高并且便携式通信设备在普及,但是以协作方式获得有用信息的难度只是增加了。在今天的竞争社会中,在正确的时间和地点掌握有用的信息是至关重要的,并且是在竞争的商业环境中取得成功的关键之一。此外,同样非常需要获得纯社交上下文中的有用信息,诸如朋友需要协作以确定何时何地会面。
[0003] 今天,因特网上的计算机服务器实现了强大的搜索引擎,其极大地改进了先前的人工信息搜集过程。搜寻信息的任何人可以在连接至因特网的设备所提供的用户界面上输入搜索查询。搜索引擎搜索针对查询的匹配,并且向用户界面返回最相关的匹配。尽管因特网搜索引擎极大地促进了定位有用信息,但是搜索仍然限于从预先存在的信息池中找到个体最接近的匹配。因此,需要解决上面提到以及其他先前存在的问题。

发明内容

[0004] 本发明的技术目的是实现响应产生中的数据完整性。
[0005] 按照本发明,该目的是通过独立权利要求的特征来实现的。本发明的优选实施方式是从属权利要求的主题。
[0006] 用于社交网络协作的方法和系统,提供获得有用信息的较为有效和高效的方式。该方法和系统从消息源获得源协作消息,并且从社交网络的成员处获得响应于源协作消息的输入。向输入应用协作约束,并且该方法和系统对输入进行聚合以产生单个集中响应。结果,通过提供需求驱动的、协作式信息产生,该方法和系统有助于获得关于消息源提出的任何特定主题的、更为相关和准确的输入。
[0007] 由此,跨社交网络成员的输入聚合提供了协作响应产生中的数据完整性这一技术优势。尤其是产生了增强的完整性,因为系统仅需要创建、更新、跟踪和存储单一的协作响应,而不是潜在的多个单独的并且分离响应消息。此外,通过对输入施加协作约束,提供了以下技术优势,即跨其成员对所述源协作消息做出响应的潜在多个社交网络的一致性和兼容性的增强。特别地,可以选择协作约束,以确保由任何社交网络的成员提供的任何响应全都是兼容的(例如,格式、长度或者其他标准)。此外,该系统提供了增加的存储和处理效率这一技术优势。实现了增强的存储效率是因为保存单个协作响应,而不是针对多个单独的、分离的响应消息分配和维护存储。实现了增强的处理效率是因为,该系统仅需要向进行查询的人返回单个协作响应,而不是返回潜在多个单独的、分离的消息。此外,该系统了提供了以下进一步的技术优势,即最小化了响应消息中的回答之间的差异,因为系统将回答集中到了单个协作响应中。由此,单个协作响应不太可能包括冲突的信息。
[0008] 在研究附图和详细描述之后,其他系统、方法、特征和优势对于本领域技术人员而言将是易见的或变得易见。意在将所有这些附加的系统、方法、特征和优势包括在本说明书之中,包括在本发明的范围之中,并且受到所附权利要求的保护。

附图说明

[0009] 参考下面的附图和描述可以更好地理解所述系统。图中的组件未必是按照比例绘制的,而是将强调的重点放在示出本发明的原理上。而且在附图中,贯穿不同视图,相似的标号表示相应的部分。
[0010] 图1示出了协作系统从社交网络成员处获得输入的总体流程。
[0011] 图2示出了一个协作系统。
[0012] 图3示出了协作系统中的协作程序可以实现的逻辑的流程图的第一部分。
[0013] 图4示出了协作系统中的协作程序可以实现的逻辑的流程图的第二部分。
[0014] 图5示出了源消息输入界面的一个示例。
[0015] 图6示出了在网络成员设备上显示的源协作消息的一个示例。
[0016] 图7示出了在网络成员设备上显示的协作输入域的一个示例。
[0017] 图8示出了消息源用户界面的一个示例。

具体实施方式

[0018] 图1示出了协作系统从一个或多个社交网络的成员处获得协作输入的总体信息流100的示例。消息源提供源协作消息,搜寻的是针对该源协作消息的响应(102)。消息源可以是已经向协作系统输入或提交了协作消息的人,可以是诸如计算机系统的实体,或者可以是另一输入源。源协作消息的形式例如可以是问题、声明、音乐、照片或者关于其搜寻输入的任何其他形式。
[0019] 一旦协作系统接收到源协作消息,协作系统在知识库(KnowledgeBase)120中进行搜索,以确定知识库120中是否存在针对该源协作消息的预先存在响应(104)。知识库120可以实现为计算机数据库或者其他数据存储库,并且可以存储包括对其他先前源协作消息的响应在内的任何信息。如果协作系统在知识库120中找到了相关响应,协作系统向消息源返回该响应。协作系统向消息源返回响应所需的响应相关程度可以由消息源、协作系统或者由另一实体来改变。不论协作系统如何认为相关响应如何相关,协作系统可以查询来自一个或多个社交网络的成员针对源协作消息的输入。
[0020] 由此,不论协作系统是否在知识库120中找到相关响应(106),协作系统可以向消息源所选择的社交网络的网络成员传输源协作消息(108)。社交网络例如可以是朋友TM的群组、联系人列表的成员、公司部门的成员或者在线社交社区(诸如,Facebook 社区、TM
Twitter 社区或者其他社交社区)的成员。
[0021] 当社交网络成员接收到源协作消息时,他们可以选择向源协作消息提供输入。如下文详述的,协作系统对来自网络成员的输入施加协作约束。例如,当第一网络成员利用关于源协作消息的输入进行响应时,协作系统可以按照协作约束来限制网络成员的输入(110)。协作约束例如可以是网络成员可以在其针对源协作消息的响应中提供的最大字符数。在一个实现中,最大字符数是250,但是其他实施方式可以设置另一数目的最大字符数,或者附加地或备选地应用不同的协作约束。协作系统将由第一网络成员提供的输入聚合为聚合协作响应。最初,聚合协作响应可以是空白或者为空,并且聚合协作响应的第一迭代可以仅包括来自第一网络成员的输入。在其他实现中,聚合协作响应最初可以预先填入任何期望的初始信息而不是空白的。
[0022] 一旦第一网络成员已经完成了其输入,随后的网络成员可以开始提供关于源协作消息的进一步输入(112)。协作系统也可以通过一个或多个协作约束来限制随后的网络成员的输入。随后的网络成员可以通过确认由一个或多个之前网络成员提供的输入,或者通过添加、删除或修改聚合协作响应的全部或部分,来改善聚合协作响应的当前版本。协作系统将每个随后网络成员的输入聚合到聚合协作响应中。由此,聚合协作响应捕获了每个网络成员的输入序列的有效效果。
[0023] 协作系统可以允许或者禁止(例如,基于消息源输入的设置或者偏好)网络成员选择向另一社交网络重新传输源协作消息或者当前聚合协作响应。换言之,协作系统可以允许任何给定的网络成员向其他社交网络转发源协作消息或者响应。结果,多个社交网络的成员可以提供关于源协作消息或者关于源协作消息的当前未决输入的进一步输入。系统还可以实现权限特征,其允许网络成员仅向授权的社交网络转发源协作消息。
[0024] 一旦网络成员已经提供了关于源协作消息的输入,便向消息源返回聚合协作响应。然而在此之前,协作系统可以强制对于源协作消息的一个或多个完成约束。例如,完成约束可以规定:在返回聚合协作消息之前需要最大或者最小数目的网络成员输入;允许至少在最小时间内或者不超过最大时间(或者二者)从网络成员获取输入;或者其他协作约束。协作系统还可以将聚合协作响应索引编制到知识库120中,以供将来参考。
[0025] 现有的搜索引擎提供的协作获得信息的能力有限,因为用于处理查询和输出搜索结果的标准随不同的搜索引擎而变化很大。对输入施加约束提供了以下技术优势,即跨其成员对源协作消息做出响应的潜在多个社交网络的一致性和兼容性提高。特别地,可以选择协作约束,以确保由任何社交网络的成员所提供的任何响应都是兼容的(例如,格式、长度或者其他标准)。
[0026] 此外,跨社交网络成员的输入聚合提供了协作响应产生中的数据完整性这一技术优势。实现了增强的完整性,因为系统仅需要创建、更新、跟踪和存储单个协作响应,而非潜在的多个独立的、分离的响应消息。此外,系统提供了提高的存储和处理效率这一技术优势。实现了增强的存储效率是因为,存储单个协作响应而不是进行分配和维护针对多个独立的并且分离的响应消息的存储。实现了增强的处理效率是因为,仅需要向进行查询的人返回单个协作响应,而不是返回潜在多个独立的、分离的响应。而且,系统提供了以下进一步的技术优势,即最小化了响应消息中的回答之间的差异,因为系统将回答集中到了单个协作响应中。由此,单个协作响应不太可能包括冲突的信息。
[0027] 图2示出了用于社交网络协作的协作系统200(“系统200”)的一个示例。在系统200中,处理器202耦合至存储器204、网络通信接口206以及知识库120。处理器202还可以耦合至源数据库208。网络通信接口206耦合至网络210,使得网络通信接口促进系统与消息源设备289以及网络成员设备299之间的通信。网络210可以包括例如一个或多个无线或者有线局域网或广域网,包括因特网。网络210提供传输机制或者多个传输机制的互联,以用于协作系统200、消息源设备289以及网络成员设备299之间的数据交换,该数据交换可以是直接的,或者通过诸如其他处理系统的中介。消息源设备289和网络成员设备299可以是连接至网络210的通信设备,包括膝上型计算机、电子邮件客户端、蜂窝电话、个TM TM TM
人计算机(PC)、个人数字助理(PDA,例如iPhone 、Blackberry 或者SmartPhone 设备)或者能够与网络210通信的其他电子设备。
[0028] 系统200接收经由特定消息源设备而从消息源(例如,消息源289s)获得的源协作消息212,并将其存储在存储器204中。存储器还可以包括聚合协作响应214,在系统200基于经由网络成员设备299从网络成员处接收的输入而生成了聚合协作响应214之后,该聚合协作响应214将被返回给消息源。存储器204还包括协作约束定义216,其建立或者定义对社交网络输入的一个或多个协作约束,诸如“最大字符数”协作约束218到第n个协作约束220。在图2所示的示例中,第一协作约束218规定了来自社交网络成员的响应中允许的最大字符数。表1说明了协作约束的附加示例,但是系统200可以定义或应用附加地、更少的或者不同的协作约束。
[0029]
[0030] 存储器204进一步包括完成约束定义222,其建立或者定义关于社交网络输入的一个或多个完成约束,诸如时间完成约束224、输入数目完成约束226、直到第n个完成约束228。时间完成约束224例如可以规定在返回聚合协作响应214之前需要运行的时段。表
2说明了完成约束的示例,但是系统200可以定义和应用附加的、更少的或者不同的完成约束。
[0031]
[0032] 系统200可以对存储器204中存储或操纵的源消息输入域230以及协作输入域232进行操作。源消息输入域230可以为源消息设备289s上显示的源消息输入域提供本地数据存储,并且可以从消息源接收源协作消息212。协作输入域232可以为接收自网络成员设备299和通过网络成员设备299上显示的输入域获得的输入提供本地数据存储。
[0033] 第一社交网络定义232也存储在存储器204中。第一社交网络定义232约束第一社交网络标识符(ID)234以及一个或多个网络成员标识符(ID)236。如上所述,系统200可以与附加社交网络交互,诸如由第二社交网络标识符240代表的网络。附加社交网络可以是由不同社交网络的任何网络成员所建立、定义或者指定的社交网络。图2示出了一个示例,其中第一社交网络的网络成员236已经指定他或她连接至由第二社交网络定义240定义的第二社交网络。第二社交网络定义240包括第二社交网络ID 242以及一个或多个网络成员标识符(ID)244。
[0034] 存储器204还包括协作程序250。协作程序250实现如下逻辑,在由处理器202执行时,该逻辑致使处理器执行社交网络协作处理(例如,作为处理器可执行指令使用)。
[0035] 图3示出了系统200中的协作程序250可以实现的流程图300的第一部分。协作程序250首先读取、接收或者以其他方式确定一个或多个协作约束定义216和完成约束定义222。协作约束定义216和完成约束定义222可以从消息源接收,可以是存储器204中定义的(302),可以被硬编码到协作程序250的逻辑中,或者可以通过其他方式确定。接下来,逻辑从消息源接收源协作消息212(304)。源协作消息212的形式例如可以是问题、声明、音乐、照片或者针对其搜寻输入的源消息的任何其他形式。将接收的协作约束定义216、完成约束定义222以及源协作消息212存储在存储器204中(306)。
[0036] 暂时转到图5,该图示出了消息源设备289s上显示的源消息输入界面502的示例。源消息输入界面502提供了程序250可以通过其来接收源协作消息212、协作约束216、完成约束222或者来自消息源设备289s的其他信息的界面。在图5所示的示例中,源消息输入界面502显示用于源协作消息的提示504、源消息输入域505以及“提问”按钮510,该按钮510触发源消息设备289s向程序250传送源协作信息。
[0037] 消息源设备289s还可以显示用于完成约束的完成约束提示506,以及消息源设备289s可以通过其来接收完成约束的完成约束输入域508。在图5所示的示例中,完成约束规定:不能晚于5月23目上午11点返回回答。消息源设备289s还可以显示协作约束提示,以及协作程序250可以通过其来接收协作约束的协作约束输入域。此外,消息源设备289s可以提供输入域,消息源设备289s可以通过该输入域来规定针对程序250的社交网络定义(例如,第一社交网络定义232和第二社交网络定义240)。
[0038] 返回图3,程序250随后在知识库120中搜索存储在知识库中的、可响应于源协作消息212的有关信息(308)。知识库120可以是计算机数据库或者可以在其中索引和存储信息的任何其他信息存储库。如果在知识库120中找到了适当的响应,向消息源(例如,消息源设备289s)返回该响应(310)。定义任何一个或多个搜索结果是否被认为适当的标准可以硬编码到程序250中,作为输入从消息源获得,或者可以通过其他方式建立。
[0039] 即使在找到适当的响应之后,程序250也可以继续社区协作。作为示例,程序250可以被预配为总是持续向社交网络提交源协作消息,或者程序250可以查询消息源设备289s是否继续向社交网络的提交。如果程序250将不提交源协作消息,则程序可以向消息源提示附加的源协作消息。如果接收到否定答复,程序250将结束。如果接收到肯定答复,则程序250可以返回(302)。可以在源消息输入界面502上做出针对回复的提示,并且可以通过在源消息输入域中键入、点击提示或者以另一方式来做出回复。
[0040] 如果程序250没有在知识库120中找到适当的信息项,或者程序将以其他方式提交源协作消息,则程序使用第一社交网络ID 234来标识第一社交网络定义232(312)。一旦标识了第一社交网络定义232,则程序250标识将向其提交源协作消息212的、第一社交网络的网络成员236(314)。程序250继而向网络成员236传输源协作消息(316)。
[0041] 如上所述,程序250可以从消息源接收社交网络定义,或者社交网络定义可以在存储器204中预定义。而且,程序250可以允许消息源使用社交网络分组方法(诸如,TMFacebook Filters或者Groups上可用的方法)来指示可以向其传输源协作消息212的、整个可用社交网络的子集。在一个实施方式中,除非消息源另有规定,程序250可以默认为向整个可用的社交网络提交源协作消息212。换言之,消息源可以对程序250指定,仅向社交网络定义中的选定个体而非向整个社交网络传送源协作消息。
[0042] 程序250还可以从消息源接收权限定义254,其定义程序可以向其传输源协作消息212的社交网络的范围。权限定义254也可以由消息源所属的组织预先定义在存储器204中。组织可以基于消息源的身份来定义权限定义254,将例如消息源的职衔、跟随组织的时间长度以及与消息源的先前经历纳入考虑。例如,组织的首席执行官(CEO)可以与允许CEO向整个组织传输源协作消息212的权限定义254相关联,而首席法律顾问可以与允许该顾问仅向法律部门传输源协作消息的权限定义相关联。
[0043] 程序250可以通过向网络成员236的网络成员设备299传输源协作消息,来向该特定网络成员传输源协作消息212。在一个实施方式中,程序250可以基于预定义的传输算法按照顺序方式向网络成员236传输源协作消息212。传输算法可以用以确定递送源协作消息212的顺序的因素包括但不限于:
[0044] a.总体上回答查询的过去可能性,
[0045] b.回答特定消息源的过去可能性,
[0046] c.网络成员具有关于主题的现成知识的概率,
[0047] d.存在,以及
[0048] e.消息源指定的显示序列。
[0049] 程序250可以通过咨询知识库120来确定因素a.和b.,其中知识库120可以存储关于先前对源协作消息212做出响应的网络成员236或者244的信息。程序250可以通过搜索专家库来确定因素c.,该专家库可以耦合至系统200,存储网络成员的专业知识的有关信息。程序250可以通过读取存在指示符来确定因素d.,该存在指示符指示网络成员目TM TM前是否可用。该指示符例如可以是诸如Microsoft OfficeCommunicator 的存在系统中实现的在线/离线指示符。在顺序传输消息源212的一个实现中,程序250可以实现的逻辑可以包括:向网络成员传输源协作消息212,等待直至该网络成员已经提供输入或者直至满足预定条件,以及向下一网络成员传输源协作消息。
[0050] 在其他实现中,程序250可以并行传输源协作消息212(也即,同时向多个网络成员236传输源协作消息)。程序250还可以按照协作授权方式接收来自网络成员的输入,这可以是接近实时的。
[0051] 程序250还可以锁定协作输入域232,使得每次只有一个网络成员可以提供输入。换言之,一旦一个网络成员开始输入过程,程序250可以阻止协作输入域232接收来自其他网络成员的输入。在之前的网络成员已经结束输入过程之后,程序250可以解锁消息,并且另一网络成员可以提供输入。
[0052] 图4示出了协作程序250可以实现的逻辑流程图300的第二部分。在程序250向网络成员设备299传输源协作消息212之后,网络成员设备可以向网络成员236显示源协作消息。
[0053] 如图6的示例中所示,网络成员设备299可以显示网络成员设备界面602,包括源协作消息212、标识消息源的消息源标识符604以及标识网络成员236的网络成员标识符606。网络成员设备299可以接收指示,用以通过提供例如网络成员可以点击的按钮608,来提供响应于来自网络成员236的源协作消息212的输入。在程序250顺序地向网络成员传输源协作消息的情况中,如果不存在提供响应于源协作消息的输入的网络成员指示,则程序250可以等待直至经过预定义的时段,并且允许另一网络成员提供输入。当网络成员
236提供了提供输入的指示时,网络成员设备299可以显示协作输入域232(402)。在程序
250并行地向网络成员传输源协作消息的情况下,网络成员设备299可以不显示协作输入域232,并且如果另一网络成员目前正在向源协作消息212提供输入,则程序可以阻止该网络成员提供输入(“锁定”协作输入域232)。
[0054] 图7示出了现实输入界面702的网络成员设备299的示例。输入界面702显示源协作消息212、协作输入域界面703、“改善回答”按钮704、“确认回答”按钮706、“向好友发送”按钮708以及提交按钮710。协作输入域界面703显示协作输入域232的内容。而且,程序250可以经由协作输入域界面703接收来自网络成员的输入,并且将该输入存储在协作输入域232中。对于提供响应于源协作消息212的输入的初始网络成员236而言,协作输入域232以及由此协作输入域界面703可以是空白的。作为响应于源协作消息212的输入,初始网络成员可以向协作输入域提供文本输入,而程序250强制实施上文讨论的协作约束216。如果提供输入的网络成员不是初始网络成员,将具有来自其他网络成员的聚合输入的先前聚合协作响应214存储在协作输入域232上,并且显示在协作输入域界面703上。程序250可以使用下划线712、斜体714、双下划线716以及粗体718字符向来自每个网络成员的文本输入指派唯一的特性。其他唯一的特性包括但不限于:颜色、声音或者还可以使用的触觉反馈。
[0055] 如果网络成员期望提供文本输入,该网络成员可以点击“改善回答”按钮704,并且程序250可以在协作输入域界面703上接收输入。程序250还可以接收作为来自网络成员236的输入的确认指示。网络成员可以提供确认指示,这意在指示对当前聚合协作响应214的赞同。网络成员236可以例如通过点击“确认回答”按钮706来“确认”来自先前网络成员的文本输入(目前的聚合协作响应214,其可以显示在协作输入域界面703上)。输入界面702还可以显示已经提供文本输入的网络成员的数目(722),以及已经确认文本输入的网络成员的数目(724)。在程序250接收到来自网络成员的输入(文本输入,或者确认指示)之后,当网络成员通过例如点击提交按钮710来指示期望提交时,程序可以将该输入聚合到聚合协作响应214中。输入界面702还可以显示聚合约束指示符720,该聚合约束指示符720提醒聚合约束216的网络成员有效。
[0056] 返回并参考图4,一旦网络成员设备299显示了输入界面702,程序250可以从网络成员接收向第二社交网络传输源协作消息212的指示。程序250例如可以在网络成员236点击“向好友发送”按钮708时接收此类指示。在接收到向第二社交网络传输源协作消息212的指示之后,程序250基于第二社交网络ID 242来标识第二社交网络定义240(404)。
一旦标识了第二社交网络定义232,程序250标识将向其提交源协作消息212的、第二社交网络的网络成员244(406)。程序250继而向第二网络成员244传输源协作消息212(408)。
网络成员设备299可以显示向网络成员244传输的源协作消息212。
[0057] 程序250确定是否满足完成约束216。如果没有满足完成约束216,在一个实施方式中,程序250进一步确定提供输入的网络成员是否是提供输入的初始网络成员。如果提供输入的网络成员是初始网络成员(例如,此前没有网络成员响应于源协作消息212而提供输入),则程序250锁定协作输入域232,使得仅有该初始网络成员可以向协作输入域232提供输入(410)。如上所述,程序250还可以向网络成员236或者244的、在协作输入域232上做出的每个文本输入指派唯一特性(412)。程序250继而可以获得协作输入域232上的初始文本输入(414),这受制于完成约束222。如果违反了协作约束222,则程序250使网络成员设备299向初始网络成员显示警示,提示初始网络成员提供符合完成约束的输入(416)。当接收到符合完成约束222的输入以及期望提交该输入的指示时,程序250解锁协作输入域232,使得其他网络成员可以提供响应于源协作消息212的进一步输入(418),并且将输入聚合到聚合协作响应214中(420)。在系统的一个实施方式中,每当将新的输入聚合到聚合协作响应214中时,程序250还将聚合协作响应存储在聚合协作响应(“ACR”)历史存储库256中。ACR历史存储库可以保持在存储器204、知识库120或者其他数据库中,随附有提供最后输入的网络成员的网络成员ID、最后输入的时间戳或者其他标识数据。每当把新的输入聚合到聚合协作响应214中时,可以在ACR历史存储库256中创建和存储新的条目。由此,ACR历史存储库256可以存储每个聚合协作响应的“快照”,如同其在网络成员的每个输入被聚合到聚合协作响应214中之后存在的那样。“快照”可以表示聚合协作响应在特定时间点或者在已经接收特定数目输入之后的内容。
[0058] 如果响应于源协作消息212而提供输入的网络成员不是初始网络成员(例如,此前某网络成员已经响应于源协作消息212提供了输入),则程序250将聚合协作响应214存储到协作输入域232上,并且网络成员设备299将其内容显示在协作输入域界面703上(422)。程序250进一步为网络成员236或者244的每个文本输入指派唯一的特性(424)。可以从网络成员获得输入(426),这受制于活跃的或者消息源所选择的完成约束222。如果违反了协作约束222,则网络成员设备299向网络成员显示警示,提示网络成员提供符合完成约束的输入(428)。与初始网络成员类似,输入可以是经由协作输入域界面703在协作输入域232上进行的文本输入。然而,在非初始网络成员的情况下,如上所述,网络成员还可以提供确认由先前网络成员提供的文本输入的指示(文本输入由协作输入域界面703上显示的聚合协作响应214来表示)。可以将已经确认了聚合协作响应214的网络成员的数目存储在确认计数252中,该确认计数252可以存储在存储器204中。在其他实施方式中,确认计数252可以存储在聚合协作响应214中。当程序接收到符合完成约束222的输入以及期望提交的指示时,程序将输入聚合到聚合协作响应214中(420)。在一个实施方式中,每当把新文本输入聚合到聚合协作响应214中时,重置确认计数252。具有相应确认计数的每个聚合协作响应的记录可以存储在存储器204中。
[0059] 其他实施方式也是可能的,其中程序250可以针对非初始网络成员也锁定/解锁协作输入域232,或者程序可以对于初始和非初始网络成员二者都不锁定协作输入域。而且,“文本输入”还可以包括对聚合协作响应214中已经存在的信息进行添加、删除或者修改的任何非确认类型的输入。在其他实施方式中,从网络成员收集的输入可以包括音频(例如,说出的评述)、视频或者其他类型输入。
[0060] 在程序250将输入聚合到聚合协作响应214中之后,程序250可以再次确定网络成员是否被选择向另一社交网络传输源协作消息212以及是否满足完成约束222。如果满足完成约束222,则程序250可以向消息源返回聚合协作响应214(430)。在向消息源返回聚合协作响应214的同时或者之后,程序250可以将聚合协作响应存储在如上所述的知识库120中(432)。还可以向消息源返回ACR历史存储库256。
[0061] 程序250可以确定是否将聚合协作响应214存储在知识库120中。程序250可以如何确定是否存储聚合协作响应的示例包括但不限于以下:
[0062] 提问者的权限:在这种情况下,程序250可以从消息源接收是否要将聚合协作响应存储在知识库120中的指示。该指示可以响应于在接收到源协作消息时在源消息输入界面502上显示的提示和输入界面而接收,或者在向消息源返回聚合协作响应214之后在消息源界面800(如图8所示,将在下文详述)上显示的提示和输入界面上接收。
[0063] 社区权限:在这种情况下,只要确认计数252大于某确认阈值,则程序250便可以将聚合协作响应214存储在知识库120中。确认阈值可以是预定义数目,其可以存储在存储器204中。
[0064] 混合权限(布尔“与”):在这种情况下,如果确认计数252大于确认阈值,并且程序250从消息源接收到了将协作响应存储在知识库中的指示(满足提问者的权限“与”社区权限),则该程序250可以将聚合协作响应214存储在知识库120中。
[0065] 混合权限(布尔“或”):在这种情况下,当确认计数252大于确认阈值,或者程序250从消息源接收到了将协作响应存储在知识库中的指示时(满足提问者的权限“或”社区权限),则该程序250可以将聚合协作响应214存储在知识库120中。
[0066] 在返回聚合协作响应之后,程序250可以允许消息源修订源协作消息和/或完成约束,并且针对响应输入而向网络成员重新传输源协作消息。而且,程序250还可以允许消息源阅览存储在ACR历史存储库256中的聚合协作响应的快照。消息源可以例如通过使用计算机鼠标的滚轮、或者通过使用键盘上的前进和后退箭头、或浏览快照的用户界面,来对每个快照进行浏览。
[0067] 图8示出了消息源用户界面800的一个示例。消息源设备289s或者耦合至网络210的其他计算机设备可以显示消息源用户界面800。消息源用户界面800可以显示消息源的各个源协作消息的状态的概要802。消息源用户界面800还可以显示已完成消息(程序
250已经向其返回了聚合协作响应214或者满足完成约束222的源协作消息)的状态804。
已完成消息的状态804可以包括向网络成员传输的源协作消息,以及由程序250返回的聚合协作响应。已完成消息的状态804还可以包括确认计数252,以及已经向返回的聚合协作响应提供输入的网络成员的数目。消息源用户界面800还可以显示未决消息(程序250尚未返回针对其的聚合协作响应214或者完成约束222尚未得到满足的源协作消息)的状态806。未决消息的状态806可以显示仍然未决的源协作消息。概要802、已完成消息的状态804以及未决消息的状态806可以存储在源数据库208中,源数据库208耦合至处理器
202、存储器204以及网络通信接口206。
[0068] 知识库120可以使用以下一个或多个来实现:1.核心关系数据库管理系统TM TM TM(RDBMS);2.内容或者知识管理系统,诸如Documentum 、Filenet 、SharePoint ;以及
3.wiki平台。在RDBMS实现的情况下,知识库可以包含源协作消息/聚合协作响应对,其具有相关联的元数据,诸如确认计数、消息源标识符以及日期。RDBMS可以经由诸如SQL的数据库软件语言或者通过图形用户界面直接访问。内容或者知识管理系统可以提供数据模型、搜索能力以及用户接口。Wiki平台可以提供将数据的多个版本存储在知识库120以及存储器204二者中的方法,并带有编辑和锁定能力。
[0069] 社交网络定义可以使用诸如MicrosoftTM Town SquareTM、NewsGatorTM GroupsTM、TM TM TMLinkedIn Facebook 以及mySpace 的软件来提供和维护。网络通信接口206可以使用用TM TM TM
于实现即时信使服务、电子邮件、web应用、桌面应用、Window Mobile App 、Blackberry TM
App、iPhone App以及RSS的硬件和软件来实现。
[0070] 上面描述的协作程序250可以通过硬件和软件的任意结合来实现。例如,软件库中提供的程序可以提供以下功能:接收社交网络ID;标识与社交网络ID相对应的社交网络,标识社交网络的网络成员以及向网络成员传输源协作消息。这种软件库可以包括动态链接库(DLL)或者其他应用编程接口(API)。上面描述的逻辑可以存储在计算机可读介质上,诸如CDROM、硬驱动、软盘、闪存或者其他计算机可读介质。逻辑还可以编码在信号中,信号在从源向目的地传播时承载该逻辑。
[0071] 此外,系统200可以实现为特定机器。例如,特定机器可以包括CPU、GPU以及用于执行上文提到的协作程序中实现的逻辑的软件库。由此,特定机器可以包括CPU、GPU以及存储上文描述的协作程序的存储器。添加协作程序可以包括:构建从处理上文描述的接收、存储、传输、确定、强制实施以及聚合逻辑的软件库对应用的功能调用,或者提供API调用封装和程序逻辑以处理上述处理。然而,应用或者应用的执行环境可以通过其他方式扩展,以促使与协作程序的交互。
[0072] 按照本发明的一个方面,提供一种计算机程序,特别地,其具体化为信号或者数据流或者制品,包括:计算机可读存储器;以及存储在计算机可读存储器上的:对于社交网络输入的第一协作约束;协作程序,其包括如下逻辑,当所述逻辑被执行时致使处理器:向第一社交网络定义中指定的每个第一网络成员传输从消息源获得的源协作消息;从任意数目的第一网络成员获得关于源协作消息的输入;由第一协作约束来约束每个协作输入,以获得受约束的协作输入;将手约束的协作输入聚合到聚合协作响应中;以及向消息源返回聚合协作响应。
[0073] 特别地,存储器还包括:对与社交网络输入的第一完成约束;并且其中:协作程序还包括如下逻辑,该逻辑在被执行时致使处理器确定何时满足第一完成约束,以及作为响应而向消息源返回聚合协作响应。
[0074] 特别地,第一完成约束包括时间条件。
[0075] 特别地,第一完成约束规定在向消息源返回聚合协作响应之前,必须提供所述协作输入中的协作输入的第一网络成员的数目。
[0076] 特别地,第一协作约束包括聚合协作响应中的最大字符数。
[0077] 特别地,所述协作输入中的协作输入包括由第一协作约束进行约束的、响应于源协作消息的文本输入。
[0078] 特别地,所述协作输入中的协作输入包括指定同意聚合协作响应的确认指示符。
[0079] 特别地,协作程序还包括如下逻辑,当该逻辑被执行时,致使处理器为每个协作输入指派唯一的特性,以区别至少两个第一网络成员。
[0080] 特别地,协作程序还包括如下逻辑,当该逻辑被执行时,致使处理器:提供协作输入域;以及锁定协作输入域,使得仅有第一网络成员中选定的一个网络成员可以通过协作输入域来在每个协作输入中提供初始协作输入。
[0081] 特别地,协作输入包括第一协作输入;并且协作程序还包括如下逻辑,当该逻辑被执行时,致使处理器:向第二社交网络定义中指定的每个第二网络成员传输源协作消息;从任意数目的第二网络成员获得由第一协作约束进行约束的附加协作输入;以及将第一协作输入和附加协作输入聚合到结果聚合消息中。
[0082] 尽管已经描述了本发明的各种实施方式,但是对于本领域技术普通技术人员而言易见的是,在本发明的范围内还有很多实施方式和实现是可行的。由此,本发明仅受到根据所附权利要求书及其等效项的限制。