用于聚合对话的系统和方法
【专利摘要】一种用于使用对话应用来聚合由不同网站上所嵌入的小工具接收的评论的系统和方法。对话应用包括授权模块、代码生成器、标识生成器、简档引擎、内容解析器、聚合模块、分析引擎、广告引擎以及时事通讯引擎。内容解析器从网站上所嵌入的小工具接收由用户发表的评论并且标识用户和网站标识符。聚合模块标识包括小工具的其他网站。聚合模块然后在其他网站上所嵌入的小工具上聚合内容。分析引擎确定用户的兴趣。广告引擎基于用户的兴趣向网站提供广告。时事通讯引擎基于用户的兴趣来生成时事通讯并且用户发送时事通讯。
【专利说明】用于聚合对话的系统和方法
【技术领域】
[0001]本说明书涉及用于使得不同网站的用户能够参与全局对话。具体而言,本说明书涉及聚合不同网站上所嵌入的内容,从而使得那些网站中每个网站的用户能够参与全局对话。
【背景技术】
[0002]随着社交联网服务的出现,网站开发者向其网站添加社交层的行为已经变得愈加普遍。这允许访问网站的人例如通过发表评论和与享有相同兴趣的其他人对话来进行交互。过去数十年以来,专用于单个感兴趣的话题的网站的数目已经有了急剧上升。经常地,人们由于诸如缺少时间之类的各种原因而选择仅仅查看几个网站。人们因而错过参与在具有相同感兴趣的话题的其他网站上发生的有趣对话的机会。
[0003]另外,从开发者角度而言,这样的评论和对话提供有价值的信息和反馈。利用当前方法,开发者因为他们被限于从仅仅访问他们的网站的人接收评论而处于不利地位。例如,开发者难以得知在特定城市出售的产品在国际上是否会广受欢迎,这是因为不是顾客或会员的人相当不可能会在网站上发表评论。
[0004]因此,需要一种方式来跨网站扩散对话并且使对话为全局的以使网站的用户和开发者受益。
【发明内容】
[0005]在一些示例中,说明书描述一种用于生成和嵌入代码的系统和方法,该代码使用对话应用来聚合由不同网站上所嵌入的小工具接收的评论。在一个实施例中,对话应用使得第二网站的开发者能够嵌入显示在第一网站上生成的内容的小工具。
[0006]对话应用包括授权模块、代码生成器、标识生成器、简档引擎、内容解析器、聚合模块、分析引擎、广告引擎以及时事通讯引擎。内容解析器从第二网站上所嵌入的小工具接收由用户发表的评论,并且标识用户和用于内容所起源的网站的网站标识符。标识生成器生成用于在索引中维持的每个网站的网站标识符。简档引擎生成用于用户的简档。聚合模块在第一网站上所嵌入的小工具上聚合内容。分析引擎通过分析内容和用户信息来确定用户的兴趣。分析引擎然后向第一网站的开发者发送分析。广告引擎基于与用户相关联的兴趣向第一网站提供广告。如果用户是公共成员则时事通讯引擎基于与相关联的兴趣生成时事通讯并且向用户发送时事通讯。
[0007]根据本公开所描述的主题的、可以在方法中体现的有创新性的方面,该方法包括从第二网站上所嵌入的小工具接收由用户发表的内容、标识用户、标识其上嵌入有小工具的第一网站并且在第一网站上所嵌入的小工具上聚合内容。这些方面中的一个或多个方面的其他实现方式包括对应的系统、装置和在计算机存储设备上编码的计算机程序,该计算机程序被配置为执行方法的动作。
[0008]这些实现方式和其他实现方式每个可以可选地包括如下特征中的一个或多个特征。例如,特征包括:其中聚合内容包括向第一网站发送在第二网站上显示的内容以用于显示;其中响应于确定用户是公共成员,还包括基于用户的兴趣来为用户生成时事通讯并且向用户发送时事通讯;并且其中内容是来自如下组中的至少一项:文本、视频、音频、图像以及对投票或问卷的响应。
[0009]例如,操作还包括:还包括从与用户相关联的用户简档获得用户信息,以及分析内容和用户信息以生成包括用户的兴趣的分析;向第一网站的开发者发送分析;基于用户的兴趣来选择去往第一网站的广告;确定用户是否是公共用户;生成与用户相关联的简档,该简档响应于用户发表评论而可访问;使得用户能够使用网上已有的简档来登入以发表评论;授权来自第三网站的开发者对在第三网站上嵌入小工具的请求、生成用于第三网站的网站标识符、生成用于将小工具嵌入第三网站上的代码,以及向索引添加第三网站的网站标识符,索引包括小工具的标识符、第一网站的网站标识符以及第二网站的网站标识符。
[0010]对话应用跨多个网站聚合内容,这允许不同网站的访问者从相同内容中得益。
【专利附图】
【附图说明】
[0011]本说明书在附图中的图画中通过示例的方式而非限制的方式加以说明,在附图中相似的参考标号用以指代相似的元件。
[0012]图1是图示用于聚合由不同网站上所嵌入的小工具接收的内容的系统的一个实施例的框图。
[0013]图2是图示对话元件的一个实施例的框图。
[0014]图3A是用于聚合由不同网站上所嵌入的小工具接收的内容的第一实施例的图形表不。
[0015]图3B是用于聚合由不同网站上所嵌入的小工具接收的内容的第二实施例的图形表不。
[0016]图4是包括用于小工具的用户接口的第一网站的一个实施例的图形表示。
[0017]图5是与将小工具从第一网站嵌入到第二网站上相关联的设定的一个实施例的图形表示。
[0018]图6是包括开发者在第二网站上嵌入小工具所需的代码的第一网站的一个实施例的图形表示。
[0019]图7是第二网站上所嵌入的小工具的一个实施例的图形表示。
[0020]图8是用于用户登陆和发表评论的用户接口的一个实施例的图形表示。
[0021]图9是图示用于聚合由不同网站上所嵌入的小工具接收的内容的方法的第一实施例的流程图。
[0022]图10是图示用于聚合由不同网站上所嵌入的小工具接收的内容的方法的第二实施例的流程图。
【具体实施方式】
[0023]用于聚合由不同网站上所嵌入的小工具接收的内容的系统和方法。在以下描述中,出于阐释的目的而阐述了许多具体细节以便提供对说明书的透彻理解。然而,对于本领域技术人员而言显而易见的是,本说明书的实施例能够在没有这些具体细节的情况下被实施。在其他实例中,结构和设备以框图形式示出以避免使说明书内容模糊。本说明书适用于能够接收数据和命令的任何类型的计算设备以及任何提供服务的外围设备。
[0024]本说明书中的指代“一个实施例”或“实施例”的意思是结合实施例进行描述的特定特征、结构或特性被包括在至少一个实施例中。在说明书中各处出现的用语“在一个实施例中”不必要都指代相同的实施例。
[0025]以下【具体实施方式】的某些部分在算法方面和对计算机存储器内的数据位的操作的符号表示方面被呈现。这些算法描述和呈现是数据处理领域的技术人员用以向其他本领域技术人员有效传达他们工作实质的手段。在这里和一般情况下的算法被构思为引起想要的结果的步骤的自相合序列。所述步骤是那些需要对物理量的物理操纵的步骤。虽然不是必要地但是经常地,这些量采取能够被存储、发送、结合、比较或者其他方式来操纵的电信号或磁信号的形式。已经证明方便的是有时主要出于习惯用语的原因而将这些信号指代为位、值、元件、符号、字符、术语、数字等等。
[0026]然而应当牢记所有这些术语和相似的术语在于与适当的物理量关联并且仅仅是应用于这些量的方便的标记。除非具体说明,则根据以下论述显而易见,要理解的是贯穿利用诸如“处理”、“计算”、“确定”、或“显示”之类的术语的描述、论述指代计算机系统或相似的电子计算设备的动作和过程,该动作和过程将表现为计算机系统的寄存器和存储器内的物理量(电子量)的数据转变成类似地表现为计算机系统存储器或寄存器或者其他这样的信息存储设备、传输设备或显示设备内的物理量的其他数据。
[0027]描述还涉及用于执行这里的操作的装置。这一装置可以被特定构建用于所需的目的,或者它可以包括由在计算机中存储的计算机程序选择性激活或者重新配置的通用计算机。这样的计算机程序可以被存储在计算机可读存储介质中,该计算机可读存储介质例如但不限于任意类型的盘,包括软盘、光盘、⑶-R0M,以及磁盘、只读存储器(ROM)、随机存取存储器(RAM)、EPROM、EEPR0M、磁卡或电卡、具有非易失性存储器的包括USB钥匙的闪速存储器,或者任何类型适于存储电子指令的介质,每个介质被耦合至计算机系统总线。
[0028]一些实施例可以采取全硬件实施例、全软件实施例或包含硬件元素和软件元素两者的实施例的形式。在优选实施例中,规范以软件实现,软件包括但不限于固件、常驻软件、微码等。
[0029]此外,一些实施例可以采取从计算机可使用介质或计算机可读介质可访问计算机程序产品的形式,该计算机可使用介质或计算机可读介质提供程序代码以供计算机或任何指令执行系统使用或者与之相关。出于此描述的目的,计算机可使用或计算机可读介质可以是能够包含、存储、进行通信、传播或者传送程序以供计算机或任何指令执行系统、装置或设备使用或者与之相关的任何装置。
[0030]适于存储和/或执行程序代码的数据处理系统会包括通过系统总线直接或间接地被耦合至存储器元件的至少一个处理器。存储器元件可以包括在程序代码的实际执行期间采用的本地存储器、大容量存储、高速缓冲存储器,其提供至少某些程序代码的临时存储以便减少在执行期间必须从大容量存储取回编码的次数。
[0031]输入/输出或I/O设备(包括但不限于键盘、显示器、定点设备等等)可以直接地或者通过居间I/o控制器被耦合至系统。
[0032]网络适配器也可以被耦合至系统以使得数据处理系统能够变得通过居间专用网络或公用网络耦合至其他数据处理系统或远程打印机或存储设备。调制解调器、线缆调制解调器和以太网卡仅仅是当前可用的网络适配器类型中的几种。
[0033]最后,在此呈现的算法和显示并不固有地与任何特定计算机或其他装置相关。可以依据这里的教导将各种通用系统与程序一起使用,或者可以证明方便的是构建更为专用的装置来执行所需的方法步骤。各种此类系统所需的结构会通过以下描述而出现。另外,规范并不参考任何特定的编程语言进行描述。要意识到的是可以使用各种各样的编程语言来实现如在此描述的规范的教导。
[0034]系统总览
[0035]图1图示了根据一个实施例用于聚合由不同网站上所嵌入的小工具接收的内容的系统100的框图。图示的系统100包括由用户125a、125n访问的用户设备115a、115n、社交网络服务器101、网站服务器160和第三方服务器107。在图1和其余图中,例如“115a”的参考标号之后的字母是对具有该参考标号的元件的任何或所有实例的一般性指代。在图示的实施例中,这些实体经由网络105通信地进行耦合。
[0036]图1中的用户设备115a、115n作为示例使用。虽然仅仅图示出两个用户设备,但是本领域一般技术人员会意识到任意数量的用户设备可用于任意数量的用户。另外,虽然被耦合至用户设备115a、115η、社交网络服务器101、网站服务器160和第三方服务器107的仅有一个网络105,但是实际上被连接至实体的可以是任意数目的网络105。此外,虽然仅示出一个第三方服务器107和一个社交网络服务器101,但是系统100可以包括一个或多个第三方服务器107和一个或多个社交网络服务器101。
[0037]用户设备115a、115n是包括存储器和处理器的任意计算设备。例如,用户设备115a、115n包括个人计算机、膝上型计算机、平板计算机或者诸如蜂窝电话、个人数字助理或智能电话之类的移动设备。在一个实施例中,用户设备115a包括网页浏览器120。网页浏览器120是在存储器中存储并且由设备115a的处理器执行的代码和例程。例如,浏览器120是加载由网站服务器160主控的网站的浏览器应用。用户125a经由信号线110访问用户设备115a。用户设备115a经由信号线108被连接至网络105。
[0038]在一个实施例中,对话应用103a存储在网站服务器160上,该网站服务器160经由信号线152被连接至网络105。网站服务器160还包括为网站生成内容的网页开发者应用165。每个网站存储在单独的网站服务器160上。本领域一般技术人员会意识到每个网站服务器160包含对话应用103a,或者仅某些网站服务器160包含对话应用103a。
[0039]对话应用103a生成例如具有自含式软件的小工具,该小工具显示在包括在线社区的网站上。小工具显示在由网页开发者应用165生成的网站上。虽然将对话应用103a图示为单独的应用,但是在一个实施例中对话应用103a是网页开发者应用165的组件。
[0040]在另一实施例中,对话应用103b存储在第三方服务器107上。第三方服务器107经由信号线106被连接至网络105。对话应用103b经由网络105与网页开发者应用165进行通信以提供用于合并到网页中的小工具。在又一实施例中,在第三方服务器107上可操作的对话应用103b包括用于生成网页内容的软件,而不具有如网站服务器160示例中图示的单独的应用。本领域一般技术人员会意识到对话应用103能够以在设备和服务器上的任意组合的形式进行存储。
[0041]社交网络服务器101经由信号线104被耦合至网络105,该社交网络服务器101包含社交网络应用109。社交网络是其中用户通过共同特征连接的任意类型的社交结构,例如Orkut0共同特征包括友谊、家庭、工作、兴趣等。共同特征由一个或多个社交联网系统,t匕如被包括在系统100中的那些社交联网系统来提供,该共同特征包括明确定义的关系和由与其他在线用户的社交联系暗示的关系。
[0042]网络105是有线或无线的传统类型,并且可以具有诸如星形配置、令牌环配置之类的任意数目的配置,或者对于本领域技术人员已知的其他配置。另外,网络105可以包括本地局域网(LAN)、广域网(WAN)(例如因特网),和/或多个设备可以通过其进行通信的任意其他互连数据路径。在又一实施例中,网络105可以是点对点网络。网络105还可以被耦合至、或者包括电信网络的部分以用于以各种不同的通信协议发送数据。在又一实施例中,网络105包括蓝牙通信网络或蜂窝通信网络以用于诸如经由短消息服务(SMS)、多媒体消息服务(丽S)、超文本传输协议(HTTP)、直接数据连接、WAP、电子邮件之类的手段发送和接收数据。
[0043]在一个实施例中,对话应用103使得第二网站的开发者能够将最初被嵌入到第一网站上的小工具嵌入在第二网站上。对话应用103从第二网站上所嵌入的小工具接收用户所发表的内容。然后对话应用103在第一网站上所嵌入的小工具上聚合接收的内容。聚合包括向第一网站发送第二网站上所显示的内容。作为聚合的结果,具有嵌入的小工具的网站显示相同的内容。因而,当用户在第二网站上做出评论并且然后访问第一网站时,用户期望查看相同的内容并且能够无缝地与其他小工具用户继续对话。
[0044]在另一实施例中,对话应用103分析网站上所嵌入的小工具所接收的内容并且基于分析例如向用户提供时事通讯、为网站提供广告等等。本领域一般技术人员会意识到小工具可以被嵌入在任意数目的网站上,并且在任意网站上接收的内容都能够在所有包括小工具的网站中聚合。
[0045]小工具是当由处理器执行时提供网站上所嵌入的服务(即网页内容)的软件和例程。在一个实施例中,小工具不需要发起独立的应用来提供服务,而是在管理多个小工具的环境中运行。在一个实施例中,网站注册有第三方服务器107,并且第三方服务器107
向网站提供对包括小工具在内的不同服务的访问。例如,网站注册有Google? Friend
Connect,且G_00gle? Friend Connect向网站提供对插件服务的访问。
[0046]对话应用103
[0047]现参照图2,以更详细的方式示出了对话应用103。图2是计算设备200的框图,该设备200包括被耦合至总线220的对话应用103、存储器237、处理器235和通信单元240。在一个实施例中,计算设备200是网站服务器160。在另一实施例中,计算设备200是第三方服务器107。
[0048]处理器235包括算数逻辑单元、微处理器、通用控制器或用于执行计算并且向显示设备提供电子显示信号的另一些处理器阵列。处理器235被耦合至总线220以用于经由信号236与其他组件进行通信。处理器235处理数据信号并且可以包括各种计算架构,包括复杂指令集计算机(CISC)架构、精简指令集计算机(RISC)架构,或实施指令集的组合的架构。虽然在图2中仅示出了单个处理器,但是可以包括多个处理器。处理能力可以限于支持图像的显示和图像的捕捉及传输。处理能力可能足以执行更复杂的任务,包括特种类型的特征提取和采样。对于本领域技术人员而言明显的是其他的处理器、操作系统、传感器、显示器和物理配置是可能的。
[0049]存储器237存储可以由处理器235执行的指令和/或数据。存储器237被耦合至总线220以用于经由信号线238与其他组件进行通信。指令和/或数据可以包括用于执行在这里描述的任何和/或所有技术的代码。存储器237可以是动态随机存取存储器(DRAM)设备、静态随机存取存储器(SRAM)设备、闪速存储器或另一些已知的存储器设备。在一个实施例中,存储器237还包括非易失性存储器或类似的永久性存储设备,以及诸如硬盘驱动器、软盘驱动器、CD-ROM设备、DVD-ROM设备、DVD-RAM设备、DVD-Rff设备、闪存设备之类的介质,或者其他已知的海量存储设备,以用于在更永久性的基础上存储信息。
[0050]通信单元240取决于对话应用103存储在何处而从第三方服务器107、网站服务器160和/或用户设备115接收数据。通信单元240向对话应用103传输数据。通信单元240经由信号线242被耦合至总线220。在一个实施例中,通信单元240包括用于直接物理连接至网络105或另一通信信道的端口。例如,通信单元240包括USB、SD、CAT-5或用于与网络105进行有线通信的类似端口。在另一实施例中,通信单元240包括无线收发器,用于使用一种或多种无线通信方法与网络105或另一通信信道交换数据,所述一种或多种无线通信方法比如是IEEE802.1UIEEE802.16、BLUETOOTH?、近场通信(NFC)或另一适
合的无线通信方法。在一个实施例中,通信单元240包括生成用于短距离通信的射频(RF)的NFC芯片。
[0051]在一个实施例中,对话应用103包括授权模块202、代码生成器207、标识生成器211、简档引擎213、内容解析器215、聚合模块217、分析引擎219、广告引擎221、时事通讯引擎233以及图形用户接口(⑶I)引擎245。
[0052]授权模块202是包括例程的软件,该例程用于对来自网站的开发者的、针对嵌入来自另一网站的小工具的请求进行授权。在一个实施例中,授权模块202是可由处理器235执行的指令的集合,其由处理器235执行以提供如下描述用于对来自开发者的、针对嵌入小工具的请求进行授权的功能。在另一实施例中,授权模块202被存储在计算设备200的存储器237中并且可由处理器235访问和执行。在这两个实施例中,授权模块202都被耦合至总线220以用于经由信号线222与处理器235、⑶I引擎245、通信单元240、代码生成器207、标识生成器211、聚合模块217以及计算设备200的其他组件进行协作和通信。
[0053]根据一个实施例,授权模块202经由通信单元240或者经由由⑶I引擎245生成的用户接口从第二网站的开发者接收针对将第一网站上所嵌入的小工具嵌入到第二网站上的请求。授权模块202通过如下方式对请求进行授权:确定与第一网站上所嵌入的小工具相关联的设定并且确定小工具是否能够被嵌入在任何网站上、确定第二网站是否已经被列入黑名单或者被列入白名单、验证第二网站的开发者的标识、确定因特网协议地址等等。在图5中图示了与网站上所嵌入的小工具相关联的设定的示例。
[0054]代码生成器207是包括例程的软件,该例程用于生成用于在网站上嵌入小工具的代码。在一个实施例中,代码生成器207是可由处理器235执行的指令的集合,其由处理器235执行以提供如下描述用以生成用于嵌入小工具的嵌入代码的功能。在另一实施例中,代码生成器207被存储在计算设备200的存储器237中并且可由处理器235访问和执行。在这两个实施例中,代码生成器207都被耦合至总线以用于经由信号线223与处理器235、⑶I引擎245、通信单元240、授权模块202以及计算设备200的其他组件进行协作和通信。在一个实施例中,代码生成器207生成代码,该代码显示在由⑶I引擎245生成的用户接口上。在另一实施例中,代码经由通信单元240被传输至请求者。
[0055]标识(ID)生成器211是包括例程的软件,该例程用以生成用于网站的网站标识符。在一个实施例中,ID生成器211是可由处理器235执行的指令的集合,其由处理器235执行以提供如下描述用以生成用于网站的网站标识符的功能。在另一实施例中,ID生成器211被存储在计算设备200的存储器237中并且可由处理器235访问和执行。在这两个实施例中,ID生成器211都适于经由信号线224与处理器235、存储器237、授权模块202、聚合模块217以及计算设备200的其他组件进行协作和通信。
[0056]一旦对在第二网站上嵌入小工具的请求被授权,授权模块202通知ID生成器211。ID生成器211接收通知并且生成用于第二网站的网站标识符。在一个实施例中,ID生成器211创建包括如下项的索引:用于小工具的标识符、用于第二网站的网站标识符以及用于小工具首先被嵌入所在的第一网站的网站标识符。本领域一般技术人员会意识到索引可以包括嵌入有小工具的任意数目的网站的网站标识符。在其中已经存在用于小工具的索引的另一实施例中,ID生成器211向现有的索引添加新生成的网站标识符。ID生成器211将网站标识符和索引存储在存储器237中。
[0057]简档引擎213是包括例程的软件,该例程用以生成用户用于登入网站和发表评论的简档。内容包括文本、音频、视频、相片、对投票或问卷的响应以及对本领域一般技术人员而言已知的任何其他内容。在一个实施例中,简档引擎213是可由处理器235执行的指令的集合,其由处理器235执行以提供如下描述用于生成简档的功能。在另一实施例中,简档引擎213被存储在计算设备200的存储器237中并且可由处理器235访问和执行。在这两个实施例中,简档引擎213都被耦合至总线220,以用于经由信号线225与处理器235、存储器237、通信单元240、内容解析器215、分析引擎219、时事通讯引擎233以及计算设备200的其他组件进行协作和通信。简档引擎将生成的简档存储在存储器237中。
[0058]在一个实施例中,简档引擎213生成可由相同服务的其他成员查看的用户简档。用户简档包括用户的名称(实名或匿名)及其他用户属性,比如用户订阅的网站列表、用户的内容的链接、用户的兴趣的列表、图像、人口统计(demographic)信息等。如果用户不想要提供电子邮件地址以与账户关联,则在一个实施例中,用户匿名地进行发表,并且简档引擎213基于用于用户设备115的因特网协议(IP)地址或者从在用户设备115上存储的cookie来辨识出用户。
[0059]内容解析器215是包括例程的软件,该例程用于经由通信单元240从网站上所嵌入的小工具接收用户所发表的内容,并且用于识别与内容相关联的用户和网站标识符。在一个实施例中,内容解析器215是可由处理器235执行的指令的集合,其由处理器235执行以提供如下描述用于接收内容和识别用户的功能。内容包括话题、评论、图像、视频等等。在另一实施例中,内容解析器215被存储在计算设备200的存储器237中并且可由处理器235访问和执行。在这两个实施例中,内容解析器215都被耦合至总线220,以用于经由信号线226与处理器235、⑶I引擎245、通信单元240、简档引擎213、聚合模块217以及计算设备200的其他组件进行协作和通信。
[0060]聚合模块217是包括例程的软件,该例程用于聚合经由通信单元240从不同的网站上所嵌入的小工具接收的内容。在一个实施例中,聚合模块217是可由处理器235执行的指令的集合,其由处理器235执行以提供如下描述用于从内容解析器215接收用户内容和与用户内容相关联的网站的标识、以及经由通信单元240向另一小工具发送用户内容的功能。在另一实施例中,聚合模块217被存储在计算设备200的存储器237中并且可由处理器235访问和执行。在这两个实施例中,聚合模块217都被耦合至总线220,以用于经由信号线227与处理器235、⑶I引擎245、通信单元240、内容解析器215以及计算设备200的其他组件进行协作和通信。
[0061]分析引擎219是包括例程的软件,该例程用于分析经由通信单元240接收的内容和发表内容的用户的信息。在一个实施例中,分析引擎219是可由处理器235执行的指令的集合,其由处理器235执行以提供如下描述用于分析接收的内容和用户的人口统计信息的功能。在另一实施例中,分析引擎219被存储在计算设备200的存储器237中并且可由处理器235访问和执行。在这两个实施例中,分析引擎219都被耦合至总线220,以用于经由信号线228与处理器235、⑶I引擎245、通信单元240、简档引擎213、内容解析器215、广告引擎221、时事通讯引擎223以及计算设备200的其他组件进行协作和通信。
[0062]分析引擎219分析用户所发表的内容。分析引擎219还获得并分析简档信息,诸如用户的人口统计信息。
[0063]分析引擎219分析简档信息和用户提交的内容来推断用户是否对特定话题按兴趣。例如,分析引擎219分析内容以确定用户正在做出正面表述还是负面表述。正面表述的示例为:“印度食品好美味。”负面表述的示例为:“芝士汉堡不健康。”通过这些表述,分析引擎219推断用户喜爱印度烹调而不喜爱芝士汉堡。在一个实施例中,分析引擎219经由通信单元240向网站的开发者发送分析(例如统计报告)。在一个实施例中,用户信息被匿名,使得个人标识信息未被包括。这样的分析是有利的,因为它们为开发者提供可贵的反馈。开发者例如可以利用分析来修改它们的网站以迎合用户的喜好和需求、向用户发送个人化的时事通讯或推广出价(offer)等等。
[0064]广告引擎221是包括例程的软件,该例程用于向包括嵌入的小工具的网站提供广告。在一个实施例中,广告引擎221是可由处理器235执行的指令的集合,其由处理器235执行以提供如下描述用于从存储器237取回匹配用户兴趣的广告并且向其他网站提供广告的功能。在一个实施例中,用户信息被匿名并且广告是基于对一组具有相似兴趣的匿名用户享受什么的确定的。在另一实施例中,广告引擎221被存储在计算设备200的存储器237中并且可由处理器235访问和执行。在这两个实施例中,广告引擎221都被耦合至总线220,以用于经由信号线230与处理器235、⑶I引擎245、通信单元240、分析引擎219以及计算设备200的其他组件进行协作和通信。
[0065]广告引擎221使用分析引擎219所做出的推断向网站提供广告。基于上述示例,广告引擎221可能提供关于用户当地可得的印度餐厅、出售印度香料的杂货店等等的广告。在另一实施例中,代替直接提供广告的是,广告引擎221发送用于从广告服务器取回广告的广告码。
[0066]时事通讯引擎233是包括例程的软件,该例程用于生成时事通讯和向用户发送时事通讯。在一个实施例中,时事通讯引擎233是可由处理器235执行的指令的集合,其由处理器235执行以提供如下描述用于生成和发送时事通讯的功能。在另一实施例中,时事通讯引擎233被存储在计算设备200的存储器237中并且可由处理器235访问和执行。在这两个实施例中,时事通讯引擎233都被耦合至总线220,以用于经由信号线232与处理器235、简档引擎213、内容解析器215、分析引擎219以及计算设备200的其他组件进行协作和通fg O
[0067]时事通讯引擎233使用分析引擎219所做出的推断来生成个性化的时事通讯并且经由通信单元240向用户发送个性化的时事通讯。或者将时事通讯显示为由⑶I引擎245生成的用户接口的部分。基于上述示例,时事通讯引擎233可能生成包括如下项的时事通讯:用户当地可得的印度餐厅和杂货店,用于烹调印度食品的、新闻文章食谱等等。
[0068]⑶I引擎245包括例程的软件,该例程用于生成用户接口。⑶I引擎245接收用以生成用于用户的简档的信息,并且向简档引擎213发送信息。在一个实施例中,Gn引擎245接收针对用于将小工具嵌入在网站上的代码的请求,该代码由代码生成器207生成。一旦授权模块202提供授权并且代码生成器207生成代码,⑶I引擎245就显示代码。在另一实施例中,GUI引擎245生成用户接口以用于开发者选择由广告引擎221生成的广告和由时事通讯引擎233生成的时事通讯。
[0069]现参照图3A至图3B,将对各种实施例进行描述。图3A是用于聚合由不同网站上所嵌入的小工具接收的内容的第一实施例的图形表示300。图示的实施例包括其中嵌入有小工具320的网站310a、310b和310c。虽然仅图示了三个网站,但是本领域一般技术人员会意识到可以有任意数目的网站嵌入有小工具320。网站310a、310b和310c由单独的网站服务器160主控。在这一实施例中,对话应用103存储在网站服务器160上,该网站服务器160还主控WebsiteR.0rg。当网站310c上所嵌入的小工具320从用户接收内容时,对话应用103在网站310a和31b上所嵌入的小工具320上聚合接收的内容。因此网站310a、310b的用户能够从他们相应的网站查看和回复内容。
[0070]图3B是用于聚合由不同网站上所嵌入的小工具接收的内容的第二实施例的图形表示350。与以上示例相似,图示的实施例包括其中嵌入有小工具380的三个网站360a、360b和360c。图示的实施例还包括第三方服务器107,其中存储有对话应用103。当网站360c所嵌入的小工具380从用户接收内容时,对话应用103经由网络105 (未示出)接收内容并且通过向网站160a和160b上所嵌入的小工具发送内容来聚合内容以用于显示。
[0071]在网站h嵌入小工具
[0072]图4至图7图示用于将第一网站上所嵌入的小工具嵌入到第二网站上的用户接口。图4是第一网站的图形表示400。在图示的示例中,第一网站被称为人的公告板(Billboard for People),其包括嵌入的小工具。嵌入的小工具是显示网站成员的成员小工具405和允许网站的成员和用户发表评论的评论小工具410。当第二网站的开发者偶然发现第一网站并决定嵌入评论小工具410及评论小工具410在第二网站上的内容时,开发者例如通过点击链接420来提交请求。
[0073]授权模块202接收请求并且通过验证第一网站的设定来确定评论小工具410能否被嵌入在第二网站上。图5图示了由⑶I引擎245生成的用户接口的图形表示500,其显示为第一网站进行配置的设定。在这一示例中,如果第二网站被列入白名单510,则授权模块202授权请求,并且如果第二网站被列入黑名单520,则不授权请求。如果第二网站未被列入两个名单的任一名单中,则授权模块202向开发者发送包括该请求的电子邮件。[0074]一旦授权模块202已经授权请求,代码生成器207生成用于将评论小工具410嵌入在第二网站上的代码。另外,ID生成器211生成对第二网站而言独特的网站ID。图6是包括由代码生成器207生成的代码610的、由⑶I引擎245为第一网站生成的用户接口的图形表示600。在这一示例中,生成的代码610是超文本标记语言(HTML)代码,开发者可以将该代码复制并粘贴到用于第二网站的编码中。在一个实施例中,代码生成器207在第二网站中自动嵌入代码,使得用户不必复制和粘贴它。本领域一般技术人员会意识到代码能够以诸如HTML、JavaScript之类的任意计算机编程语言生成。
[0075]图7是包括评论小工具710及其从第一网站嵌入的内容的第二网站的图形表示700。评论小工具710包括去往第一网站的链接720以使得第二网站的用户知道评论小工具710的来源。这有助于扩散产品的品牌以便病毒式接受。此外,评论小工具710包括与链接420相似的链接730,其他开发者能够使用该链接720来提交针对在他们的网站上嵌入小工具的请求。
[0076]允许用户发表评论
[0077]一旦开发者已经将评论小工具嵌入在第二网站上,评论小工具准备好从它的成员和用户接收评论。为了能够发表评论,用户例如通过点击链接740提交请求来利用简档登入评论小工具。在一个实施例中,简档包括匿名用户。当没有简档的新用户提交请求时,简档引擎213为新用户创建简档。
[0078]图8图示由⑶I引擎245生成用于请求来自新用户的信息来创建简档的用户接口805的一个实施例。在图示的示例中,用户接口 805请求诸如用户名称和相片之类的信息。本领域一般技术人员会意识到可以请求诸如位置、出生日期、密码之类的用户信息来生成用户的简档。简档引擎213利用用户所输入的信息来生成用户的简档,该简档通过GUI引擎245进行显示。用户继而使用这一简档来登入并且发表评论。⑶I引擎245提供使用户成为从其嵌入评论小工具的第一网站的成员的选项815。用户通过成为成员而有权享有更多网站的特权,比如使网站个性化、接收时事通讯、推广出价等等。
[0079]在一个实施例中,用户通过点击链接810选择利用已有的简档登入评论小工具。已有的简档是另一网站、社交网络、电子邮件账户或对本领域一般技术人员已知的网页上任何其他的简档。这一用于允许用户利用任意用户简档发表评论而不必成为该网站的成员的模型是有利的。例如,如果用户想要在评论小工具上发表负面评论,则很可能用户可能不想要成为成员或者创建该网站的简档。
[0080]方法
[0081]现参照图9至图10,将描述用于聚合内容的方法的各种实施例。图9是图示用于聚合由不同网站上所嵌入的小工具接收的内容的方法的第一实施例的流程图900。内容解析器215经由通信单元240从网站上所嵌入的小工具接收(902)用户所发表的内容。接收的内容是文本、音频、视频、相片、对投票或问卷的响应或对本领域一般技术人员已知的任意其他内容。内容解析器215标识(904)提交内容的用户和与网站相关联的网站标识符,利用网站标识符从该网站接收内容。聚合模块217从内容解析器215接收解析出的内容并且利用索引确定(906)其上嵌入小工具的其他网站。索引包括小工具的标识符和所有其他网站的网站标识符。然后,聚合模块217通过发送内容来在其他网站上所嵌入的小工具上聚合(908)接收的内容以用于在其他网站上显示。[0082]图10是图示用于聚合由不同网站上所嵌入的小工具接收的内容的方法的第二实施例的流程图1000。在这一示例中,第二网站的开发者将来自第一网站的小工具嵌入到第二网站上。内容解析器215从第二网站上所嵌入的小工具接收(1002)用户所发表的内容。内容解析器215利用用户用来登入以发表内容的简档来标识(1004)用户。在这一实施例中,用户利用简档引擎213所创建的简档进行登入。在另一实施例中,用户利用诸如社交网络简档之类的网页上已有的简档进行登入。内容解析器215还通过从内容解析网站标识符来标识(1006)从其接收内容的第二网站。聚合模块217从内容解析器215接收解析出的内容并且利用索引确定(1008)第一网站,并且通过向其他包括小工具的网站发送内容来在第一网站上所嵌入的小工具上聚合(1010)内容。小工具在第一网站上显示来自小工具的内容。
[0083]分析引擎219从简档信息获得(1012)用户的诸如人口统计信息之类的用户信息。分析引擎219然后分析(1014)内容和用户信息以确定用户的兴趣。在一个实施例中,分析引擎219使用用户信息以基于具有相似人口统计信息的人的兴趣来预测用户的兴趣。在另一实施例中,分析引擎219通过推断用户做出正面表述还是负面表述来从内容确定兴趣。例如,如果用户在第二网站上发表的内容是“品牌X的鞋是最好的,希望他们不久在盐湖城开新店”,则分析引擎219推断用户喜爱品牌X的鞋。然后分析引擎219向第一网站的开发者发送(1016)分析。在一个实施例中,这一信息被匿名。在一个实施例中,分析引擎219向所有开发者发送分析,使得开发者能够全体地了解小工具用户。通过针对多个用户收集这一信息,开发者能够了解未访问他们网站但是可能对他们网站感兴趣的用户的兴趣。
[0084]广告引擎221基于用户的兴趣为第一网站选择(1018)广告。广告引擎221将例如基于用户的性别来提供关于品牌X鞋的广告。广告引擎221还提供在盐湖城内或盐湖城附近的出售品牌X鞋的其他商店的广告。在一个实施例中,广告引擎221向第一网站和第二网站两者提供广告。
[0085]时事通讯引擎233通过验证用户的简档来确定(1020)用户是否是公共成员。如果用户是公共成员,则时事通讯引擎233基于用户的兴趣向用户发送(1022)个性化的时事通讯。时事通讯例如包括推广出价、新产品、网站更新、时事新闻等。在一个实施例中,时事通讯引擎233基于对总体上来自用户的内容的推断来生成时事通讯并且向网站的所有用户发送时事通讯。
[0086]已经出于说明和描述的目的而呈现前述的对实施例的描述。其并不旨在于是详尽的或者将描述限于公开的精确形式。鉴于以上教导,许多修改和变化时可能的。旨在于的是本描述的范围并非由【具体实施方式】限制,而是由本申请的权利要求限制。如将被本领域技术人员所理解的,说明书可以以其他特定形式体现而不偏离其精神和实质特征。同样,模块、例程、特征、属性、方法及其他方面的特定命名和划分并非是强制性或重要的,并且实现本描述的机构或其特征可以具有不同的名称、划分和/或格式。此外,如将对相关领域一般技术人员想而易见的是,本描述的模块、例程、特征、属性、方法以及其他方面能够作为软件、硬件、固件或三者的组合来实现。另外,在部件(其示例为模块)被实现为软件的各处,部件能够被实现为孤立的程序、更大程序的部分、多个单独的程序、静态链接库或动态链接库、内核可加载的模块、设备驱动器、和/或以对计算机编程领域的一般技术人员现在或将来已知的每个任何方式和任意其他方式来实现。附加地、说明书不旨在于以任何方式限于利用任何特定编程语言的实现、或针对任何特定操作系统或环境的实现。因此,本公开旨在于对说明书的范围时说明性而非限制性的,说明书的范围在如下权利要求中阐述。
【权利要求】
1.一种用于聚合由小工具接收的内容的计算机实现的方法,所述方法包括: 从第二网站上所嵌入的所述小工具接收用户所发表的内容; 标识所述用户; 标识其上嵌入有所述小工具的第一网站;以及 在所述第一网站上所嵌入的所述小工具上聚合所述内容。
2.根据权利要求1所述的计算机实现的方法,其中聚合所述内容包括向所述第一网站传输在所述第二网站上显示的所述内容以用于显示。
3.根据权利要求1所述的计算机实现的方法,还包括从与所述用户相关联的用户简档获得用户信息;以及 分析所述内容和所述用户信息以生成包括所述用户的兴趣的分析。
4.根据权利要求3所述的计算机实现的方法,还包括向所述第一网站的开发者发送所述分析。
5.根据权利要求3所述的计算机实现的方法,还包括基于所述用户的所述兴趣选择去往所述第一网站的广告。
6.根据权利要求3所述的计算机实现的方法,还包括确定所述用户是否是公共成员。
7.根据权利要求6所述的计算机实现的方法,其中响应于确定所述用户是公共成员,还包括如下步骤: 基于所述用户的所述兴趣为所述用户生成时事通讯;以及 向所述用户发送所述时事通讯。
8.根据权利要求1所述的计算机实现的方法,还包括生成与所述用户相关联的简档,所述简档响应于所述用户发表所述内容而可访问。
9.根据权利要求1所述的计算机实现的方法,还包括使得所述用户能够使用网上已有的简档来登入以发表所述内容。
10.根据权利要求1所述的计算机实现的方法,其中所述内容是来自如下组中的至少一项:文本、视频、音频、图像以及对投票或问卷的响应。
11.根据权利要求1所述的计算机实现的方法,还包括如下步骤: 授权来自第三网站的开发者对在所述第三网站上嵌入所述小工具的请求; 为所述第三网站生成网站标识符; 生成用于将所述小工具嵌入在所述第三网站上的代码;以及 向索引添加所述第三网站的所述网站标识符,所述索引包括所述小工具的标识符、所述第一网站的网站标识符以及所述第二网站的网站标识符。
12.一种用于聚合由小工具接收的内容的系统,所述系统包括: 内容解析器,所述内容解析器用于从第二网站上所嵌入的所述小工具接收由用户发表的内容、标识所述用户以及标识其上嵌入有所述小工具的第一网站;以及 耦合至所述内容解析器的聚合模块,所述聚合模块用于在所述第一网站上所嵌入的所述小工具上聚合所述内容。
13.根据权利要求12所述的系统,其中所述内容通过向所述第一网站传输在所述第二网站上显示的所述内容以用于显示来聚合。
14.根据权利要求12所述的系统,还包括被耦合至所述内容解析器的分析引擎,所述分析引擎用于获得用户信息、分析所述内容和所述用户信息以生成包括所述用户的兴趣的分析以及向所述第一网站的开发者传输所述分析。
15.根据权利要求14所述的系统,还包括被耦合至所述分析引擎的广告引擎,所述广告引擎用于基于所述用户的所述兴趣选择去往所述第一网站的广告。
16.根据权利要求14所述的系统,还包括被耦合至所述分析引擎的时事通讯引擎,所述时事通讯引擎用于确定所述用户是否是公共成员。
17.根据权利要求16所述的系统,其中所述时事通讯引擎还响应于确定所述用户是公共成员而基于所述用户的所述兴趣生成时事通讯并且向所述用户发送所述时事通讯。
18.根据权利要求12所述的系统,还包括被耦合至所述内容解析器的简档引擎,所述简档引擎用于生成针对所述用户登入和发表所述内容的简档。
19.根据权利要求12所述的系统,还包括被耦合至所述聚合模块的授权模块,所述授权模块用于授权来自第三网站的开发者对在所述第三网站上嵌入所述小工具的请求。
20.根据权利要求19所述的系统,还包括被耦合至所述授权模块的代码生成器,所述代码生成器用于生成用于将所述小工具嵌入在所述第三网站上的代码。
21.根据权利要求19所述的系统,还包括被耦合至所述授权模块的标识生成器,所述标识生成器用于创建针对所述第三网站的网站标识,以及向索引添加所述第三网站的所述网站标识符,所述索引包括所述小工具的标识符、所述第一网站的标识符以及所述第二网站的标识符。
22.一种包括包含计算机可读程序的计算机可使用介质的计算机程序产品,其中所述计算机可读程序当在计算机上执行时使得所述计算机: 从第二网站上所嵌入的小工具接收由用户发表的内容; 标识所述用户; 标识其上嵌入有所述小工具的第一网站;以及 在所述第一网站上所嵌入的所述小工具上聚合所述内容。
【文档编号】G06F17/00GK103649943SQ201280034789
【公开日】2014年3月19日 申请日期:2012年7月26日 优先权日:2011年7月26日
【发明者】S·沙拉比, J·特勒斯基, M·肖尔, C·多尔 申请人:谷歌公司