用户通过社交网络系统与商家的通信的制作方法

文档序号:11334004阅读:456来源:国知局
用户通过社交网络系统与商家的通信的制造方法与工艺

本发明的一个或多个实施方式总体涉及社交网络系统。更具体地,本发明的一个或多个实施方式涉及经由社交网络系统促成社交网络系统用户与第三方服务提供者或者商家的通信。



背景技术:

尽管在“实体”商店中身体力行地购物是普遍的,但是从在线商家购买货物的欢迎度持续增长。从他们自己的家的简易性和舒适性来说,在线购物者通常发现浏览在线商家的目录非常方便。此外,在线购物者通常仅需要等待一两天就接收到他们在线购买的货物。与为了购买他们想要的东西但不必离开家的便利性相比,在线购物者通常将这个短暂的等待时间视为极小的不便。

然而,在线购物的一些方面对于普通在线购物者来说可能变得十分不便。例如,有时在线购物者对于在线商家可能有关于特定产品或者公司政策的问题。为了咨询问题,在线购物者通常局限于包括呼叫在线商家的服务热线的选项。对于没有时间等待呼叫或就是不喜欢用电话交流的在线购物者来说,这个选项通常是不受欢迎的。在一些情况下,在线商家可为在线购物者提供向在线商家发送电子邮件的选项。因为在线购物者的电子邮件通常包括在线购物者希望私人的识别信息(例如,在线购物者的名字和/或电子邮件地址),所以这个选项通常也是不受欢迎的。此外,电子邮件回复时间是不统一的,经常延迟,并且不提供实时反馈。

此外,在线购物者与在线商家之间的购买交易完成之后,为了有关在线商家处理了该交易多少的少量信息,在线购物者通常花费接下来的几个小时或者甚至几天的时间。在一些情况下,在线购物者可能从在线商家接收告知在线购物者订单“正在处理”或者“已经发货”的样板文件电子邮件。这些电子邮件经常被忽略,因为他们对于用户不是个性化的并且他们提供来自在线商家的少量信息。此外,在线购物者可能不希望允许在线商家保存在线购物者的电子邮件地址的记录。

因此,用于管理在线购物者与在线商家之间的通信的当前方法存在数个缺点。



技术实现要素:

本文中描述的一个或多个实施方式利用经由社交网络系统提供商家与用户之间的匿名通信的系统和方法提供了益处和/或解决本领域中的一个或多个上述问题或者其他问题。本文中描述的一个或多个实施方式包括用于允许用户和商家经由社交网络系统实时通信的系统和方法,使得用户的身份对于商家来说是模糊的,从而保护用户的身份。至少一个实施方式通过生成和交换令牌或者密钥允许用户与商家之间的匿名通信。

此外,本文中描述的一个或多个实施方式包括用于允许商家经由社交网络系统将交易更新和其他通信发送至用户的系统和方法。例如,系统和方法通过利用包括不与用户直接相关的标识符的令牌,允许商家经由社交网络系统将更新发送至用户。因此,系统和方法确保保持用户对于商家的匿名。此外,系统和方法在用于用户的单一通信线程中组织商家的更新,使得用户不需要接收与同一交易相关的多个电子邮件。

本发明的其他特征和优点将在随后描述中进行阐述,并且部分从描述中将是明显的,或者可通过这种示例性实施方式的实践获悉。这种实施方式的特征和优点可通过所附权利要求中具体指出的仪器和组合实现和获得。从以下描述和所附权利要求中这些和其他特征将变得更加清晰可见,或者可通过下文中阐述的这种示例性实施方式的实践获悉。

尤其在所附权利要求中公开了根据本发明的实施方式,涉及一种方法、存储介质、系统和计算机程序产品,其中,还可以在另一个权利要求范畴(例如,系统)中要求在一个权利要求范畴(例如,方法)中提及的任何特征。仅为了形式原因,选择了所附权利要求中的从属权利要求或者后向引用。然而,也可要求保护故意后向引用任何上述权利要求(具体地,多个从属权利要求)导致的任何主题内容,以致权利要求及其特征的任何组合被公开并且不管在所附权利要求中选择的从属都可要求保护。可以要求保护的主题内容不仅包括所附权利要求中阐述的特征的组合而且包括权利要求中的任何其他组合的特征,其中,权利要求中提到的每个特征都可以与任何其他特征或者权利要求中的其他特征的组合结合。此外,本文中描述或者描绘的任何实施方式和特征可以在单独权利要求中和/或与本文中描述或描绘的任何实施方式或特征或者与所述权利要求的任何特征的任何组合中要求保护。

在实施方式中,可提供一种计算机实现方法,该方法包括:

在计算装置处,接收来自网页插件的通信请求,该网页插件具体与商家计算系统相关并且在与用户相关的客户端计算装置上执行,

响应于所接收的通信请求,由该计算装置生成令牌,该令牌至少对商家计算系统是不透明的并且与用户相关,并且该令牌包括与商家计算系统相关的标识符和与用户相关的标识符的加密组合;

将所生成的不透明令牌提供至商家计算系统;

使用不透明令牌促成商家计算系统与用户之间的通信,其中,促成通信包括:

在计算装置处,接收来自商家计算系统的消息和不透明令牌;

由计算装置解密所接收的不透明令牌,并且由计算装置识别与用户相关的标识符;

由计算装置并且基于与用户相关的标识符,生成通信项;并且

由计算装置并且基于与用户相关的标识符,在与用户相关的客户端装置处将通信项提供至用户。

在实施方式中,网页插件可作为预注册过程的一部分而提供至商家,其中,预注册过程可包括从商家接收商家通信端点。

在实施方式中,预注册过程可包括:响应于接收到商家通信端点,将多个社交网络系统通信端点提供至商家。

在实施方式中,促成商家与用户之间的通信可进一步包括:

经由多个社交网络系统通信端点中的一个或多个并且从商家接收消息和不透明令牌;

解密所接收的不透明令牌以识别与用户相关的标识符;

基于从商家接收的消息和多个通信端点中的一个或多个生成通信;

基于与用户相关的标识符,在与用户相关的客户端装置处将所生成的通信对象提供至用户。

在实施方式中,通信可以是丰富通信对象。在实施方式中,丰富通信对象可包括文本、数码照片、数字图像、超链接和交互控件中的一个或多个。

在实施方式中,可以基于通过其接收通信的一个或多个通信端点提供使通信(具体地,丰富通信对象)格式化的进一步步骤。

在实施方式中,可以提供以下进一步步骤中的至少一个:

响应于所生成的通信从用户接收指向商家的通信;

识别所生成的与用户相关的不透明令牌;

将来自用户的通信和不透明令牌提供至商家。

在实施方式中,促成商家与用户之间的通信可包括通过社交网络系统通信应用的方式将通信从商家提供至用户,并且通过社交网络系统的方式将通信从用户提供至商家,其中,促成商家与用户之间的通信可选地进一步包括通过专用网络地址的方式从商家接收寻址至用户的通信。

在另一实施方式中,可以提供一种系统,具体为计算机系统,该系统包括:至少一个处理器;以及存储指令的至少一个非暂时性计算机可读存储介质,当由至少一个处理器执行时,该指令使得该系统执行根据如本文中描述的至少一个实施方式的方法。

在另一实施方式中,可以提供存储指令的非暂时性计算机可读介质,当由至少一个处理器执行时,该指令使得至少一个处理器执行根据本文中描述的至少一个实施方式的方法。

在另一实施方式中,可以提供计算机程序产品,该计算机程序产品包括计算机可执行指令,优选地存储在非暂时性计算机可读存储介质上,当在计算机或者计算机系统的一个或多个处理器上执行时,该指令使得计算机或者计算机系统执行根据本文中描述的至少一个实施方式的方法。

附图说明

为了描述可以获得以上陈述的和其他优点以及特征的方式,以上简要描述的一个或多个实施方式的方面的更具体描述将参考附图中示出的特定实施方式实施。应当注意的是,附图不必按比例绘制,并且为了贯穿附图说明的目的,类似结构或者功能的元件通常由相同参考标号表示。应理解,这些附图仅描绘了典型的实施方式,并且因此并不应视为是范围的限制,通过使用附图,将利用另外的特异性和细节描述和解释本发明的一个或多个实施方式,其中:

图1示出了根据一个或多个实施方式的通信系统的详细示意图;

图2示出了根据一个或多个实施方式的用于实现通信系统的环境的框图;

图3a至图3b示出了根据一个或多个实施方式的经由社交网络系统的用户与商家之间的通信过程的交互的序列流程图;

图4a至图4f示出了根据一个或多个实施方式的包括通信系统的特征的用户界面;

图5示出了根据一个或多个实施方式的促成用户与商家之间的匿名通信的方法中的一系列动作的流程图;

图6示出了根据一个或多个实施方式的示例性计算装置的框图;

图7是根据一个或多个实施方式的社交网络系统的示例性网络环境;以及

图8示出了根据一个或多个实施方式的社交图谱。

具体实施方式

本文中描述的一个或多个实施方式利用促成商家与用户之间的匿名通信的系统和方法提供了益处和/或解决本领域中的一个或多个上述问题或者其他问题。例如,通信系统可以生成与社交网络系统用户以及特定在线商家相关的不透明令牌。在一个或多个实施方式中,社交网络系统可以将不透明令牌提供至商家,使得来自商家的任何进一步通信(即,实时聊天、交易更新等)基于不透明令牌。社交网络系统可以从商家接收包括不透明令牌的通信并且将该通信提供至与不透明令牌相关的社交网络系统用户。类似地,社交网络系统可以接收来自社交网络系统用户的针对商家的通信,并且基于不透明令牌将该通信提供至商家。因此,保持用户对于商家的匿名。

通过说明的方式,在一个实施方式中,用户通过与作为商家的网站的一部分所呈现的插件的交互,表示从商家接收交易更新和其他通信的偏好。商家的网站将插件作为结账过程的一部分而呈现给用户,用户在该过程期间从商家购买产品。响应于检测到的与插件的交互,社交网络系统生成与用户和商家相关的不透明令牌,并且将该不透明令牌发送至商家。从此以后,商家利用不透明令牌通过社交网络系统与用户通信。因为不透明令牌不能直接识别用户,所以商家几乎没有从社交网络系统接收到用户的身份的指示。

如本文中使用的,术语“社交网络系统”是指支持并且使用户之间能够在线通信、输入、交互、内容共享和协作的系统。社交网络系统的用户可以经由社交网络系统具有一个或多个“好友”。如本文中使用的,术语“好友”是指经由社交网络系统与用户相关的共同用户(即,联系人或者关系人)。

还如本文中使用的,“插件”是可以作为标准网络浏览器的一部分而预安装的附加模块。交替地,用户可以安装插件作为标准网络浏览器的一部分。在一个或多个实施方式中,插件包括提高网络浏览器的能力的程序代码。网络浏览器可以与插件相互作用,以便利用由插件提供的添加功能。在一个或多个实施方式中,插件可以包括与社交网络系统相关的后端功能。以下关于图3a至图3b进一步描述插件的操作。

此外,如本文中使用的,“像素(pixel)”是指包括在商家的网页中的代码片段,其自动追踪某些信息并且经由商家的网页为用户提供一个或多个选项的。例如,响应于商家表示希望在商家的一个或多个网页中包括社交网络系统像素,社交网络系统为商家提供像素代码以及专用于商家的社交网络系统像素id。商家然后将像素代码以及商家的社交网络系统像素id包括在用于一个或多个网页的代码或者脚本中。一旦用户加载了包括像素代码的商家的网页,则像素自动收集信息并且将信息发送至社交网络系统。在一些实施方式中,如果用户之前已经选择(例如,作为账号设置的一部分)经由社交网络系统接收来自商家的通信,像素才自动收集信息并且将信息发送至社交网络系统。此外,在一些实施方式中,像素还为用户呈现某些信息。

如本文中使用的,“商家”是为顾客提供货物和/或服务的商家或者其他服务提供者。在一个或多个实施方式中,商家可以经由一个或多个网站通过互联网提供货物或者服务以供购买。在一些实施方式中,除了一个或多个网站之外,商家可具有实体零售地点。

图1示出了通信系统100(或者简称为“系统100”)的示例性实施方式的示意图。如图1所示,系统100可包括用于执行本文中描述的过程和特征的各种组件。例如,如图1所示,系统100包括但不限于社交网络系统116、通信管理器118和一个或多个客户端计算装置102。通信管理器118包括但不限于令牌管理器120、商家通信器122、通信发生器124和数据存储装置126,该数据存储装置包括用户数据128、商家数据130、令牌数据132、通信数据134、节点数据136和边线数据138。客户端计算装置102包括社交网络应用程序104,该社交网络应用程序包括显示管理器106和输入检测器108、以及插件管理器110和网络浏览器112。在一个或多个实施方式中,系统100还可包括商家114(例如,由网络浏览器112访问并且与社交网络系统116通信链接的商家服务器)。

社交网络系统116、通信管理器118的每一个组件120至138、客户端计算装置102的每一个组件104至112、以及商家114可以使用包括执行使得系统100执行本文中描述的过程的指令的至少一个处理器的计算装置来实现。在一些实施方式中,组件102至138全部都可以通过单一服务器装置实现或者跨多个服务器装置实现。此外或者可替换地,一个或多个服务器装置和一个或多个客户端装置的组合可以实现组件102至138。此外,在一个实施方式中,组件102至138可以包括硬件,诸如,执行某些功能的专用处理装置。此外或者可替换地,组件102至138可以包括计算机可执行指令和硬件的组合。

在一个或多个实施方式中,社交网络应用程序104可以是安装在客户端计算装置102上的本地应用程序。例如,社交网络应用程序104可以是安装在移动装置(诸如,智能电话或者平板)上并且在移动装置上运行的移动应用程序。可替换地,社交网络应用程序104可以是台式机应用程序、小部件或者其他形式的本地计算机程序。可替换地,社交网络应用程序104可以是由客户端计算装置102访问的远程应用程序。例如,社交网络应用程序104可以是在客户端计算装置104的网络浏览器内执行的网络应用程序。

如上所述,并且如图1所示,社交网络应用程序104包括显示管理器106。显示管理器106可以提供、管理和/或控制允许用户编写、查看并且提交社交网络系统帖子和消息的图形用户界面(或者简称为,“用户界面”)。例如,显示管理器106提供促成社交网络系统用户的新鲜事、留言墙、通信线程等的显示的用户界面。类似地,显示管理器106提供用户界面,其显示由社交网络系统用户接收到的一个或多个电子消息或者通信线程。

更具体地,显示管理器106(例如,通过与客户端计算装置102相关的显示装置的方式)促成用户界面的显示。例如,显示管理器106可编写允许用户编写、发送并且接收电子消息和/或社交网络系统帖子的多个图形组件、对象和/或元件的用户界面。更具体地,显示管理器106可引导客户端计算装置102显示使用户能够查看电子消息、通信线程或者社交网络系统帖子的一组图形组件、对象和/或元件。

此外,显示管理器106引导客户端计算装置102显示促成用户输入用于编写、发送和/或提交社交网络系统帖子和/或电子消息的一个或多个图形对象、控制或者元件。为了说明,显示管理器106提供用户界面,其允许用户将用户输入提供至社交网络应用程序104。例如,显示管理器106提供一个或多个用户界面,其允许用户将一种或多种类型的内容输入到社交网络系统帖子或者电子消息中。如本文中使用的,“内容”是指作为社交网络系统帖子或者电子消息的一部分而包括的任何数据或者信息。例如,术语“内容”将在本文中通常用于描述文本、图像、数字媒体、文件、位置信息、支付信息、或者可以作为社交网络系统帖子或者电子消息的一部分被包括的任何其他数据。

显示管理器106也可以促成被包括在社交网络系统帖子或者电子消息中的文本或者其他数据的输入。例如,显示管理器106提供包括触摸显示键盘的用户界面。用户可以使用一个或多个触摸手势与触摸显示键盘交互,以输入将被包括在社交网络系统帖子或者电子消息中的文本。例如,用户可以使用触摸显示键盘来编写消息。除了文本之外,包括触摸显示键盘的用户界面可促成各种其他字符、符号、图标或者其他信息的输入。

此外,显示管理器106能够在两个或更多个图形用户界面之间转换。例如,在一个实施方式中,显示管理器106将来自经由社交网络系统与该用户相关的共同用户的新鲜事(包含一个或多个社交网络系统帖子)提供至社交网络系统用户。随后,响应于从用户检测到的输入,gui管理器120转换为第二图形用户界面,其包括用户与对方之间的一个或多个通信线程的列表。

如图1中进一步示出的,社交网络应用程序104包括输入检测器108。在一个或多个实施方式中,输入检测器108可以任何合适的方式检测、接收和/或促成用户输入。在一些实例中,输入检测器108检测关于用户界面的一个或多个用户交互。如本文中指出的,“用户交互”意指通过一个或多个输入装置从用户接收的单个交互、或者交互的组合。

例如,输入检测器108从键盘、鼠标、触摸页面、触摸屏和/或任何其他输入装置检测用户交互。如果客户端计算装置102包括触摸屏,则输入检测器108从形成用户交互的用户检测一个或多个触摸手势(例如,滑动手势、敲击手势、收缩手势或者反向收缩手势)。在一些实例中,用户可以提供关于和/或指向用户界面的一个或多个图形对象或者图形元件的触摸手势。

此外或者可替换地,输入检测器108可接收表示用户交互的数据。例如,输入检测器108可从用户接收一个或多个用户可配置的参数、从用户接收一个或多个用户命令、和/或任何其他合适的用户输入。输入检测器108可从社交网络系统116的一个或多个组件或者从一个或多个远程位置接收输入数据。

社交网络应用程序104响应于输入检测器108检测到用户输入和/或接收到其他数据而执行一个或多个功能。通常,用户可以通过提供输入检测器108可以检测的一个或多个用户输入来控制、在内部操纵、并且以其他方式使用社交网络应用程序104。例如,响应于输入检测器108检测到用户输入,社交网络应用程序104的一个或多个组件允许用户选择消息的接收者,编写消息,选择消息中包含的内容,和/或将消息发送至接收者。此外,响应于输入检测器108检测到用户输入,社交网络应用程序104的一个或多个组件允许用户通过一个或多个用户界面来操纵以审阅所接收的电子消息并且对其做出响应等。

还如图1所示,客户端计算装置102还包括插件管理器110和网络浏览器112。如上所述,网络浏览器112是接收并且交互显示网络资源(即,网页)的软件应用程序。在一个或多个实施方式中,插件管理器110提供网络浏览器112与安装在客户端计算装置102上的一个或多个插件之间的接口。在至少一个实施方式中,插件管理器110提供网络浏览器112与社交网络系统116相关的插件之间的接口。

如图1所示,系统100包括社交网络系统116。社交网络系统116也可以(例如,通过个人资料、新鲜事、通信线程、时间轴或者“涂鸦墙”的方式)将社交网络系统帖子和消息(文本或者其他)提供至社交网络系统116的一个或多个用户。例如,一个或多个实施方式将来自经由社交网络系统116与用户相关的一个或多个共同用户的社交网络系统新鲜事和电子消息呈现给用户。在一个或多个实施方式中,用户滚动社交网络系统新鲜事以便查看经由社交网络系统116与用户相关的一个或多个共同用户所提交的最近的社交网络系统帖子。在一个实施方式中,社交网络系统116在用户的社交网络系统新鲜事中将社交网络系统帖子按时间顺序组织。在可替换的实施方式中,社交网络系统116根据用户与共同用户之间的关系系数等,按照利益群体,在地理上地组织社交网络系统帖子。此外,在一个或多个实施方式中,用户可以下载社交网络系统新鲜事的副本作为在其上显示的社交网络系统帖子的记录。

此外,社交网络系统116在包括通信线程的显示中提供并且组织两个或更多个社交网络系统用户之间的私人的电子消息。如本文中使用的,“通信线程”是在两个实体(例如,社交网络系统用户和商家)之间往复发送的一组通信(即,电子消息)。在至少一个实施方式中,社交网络系统116还提供用户参与其中的所有通信线程的列表。通过在列表中选择特定的通信线程,用户可以查看特定的通信线程内的全部消息。社交网络系统116组织通信线程,使得来自不同方的电子消息以表示每个电子消息的作者的方式被格式化和显示。如上所述,通信线程可以包括由文本、多媒体、超链接、表情符号、便签、丰富通信对象等组成的电子消息。

如本文中使用的,“丰富通信对象”是包括结构化数据的所显示的通信。在一个或多个实施方式中,“结构化数据”可以包括结构化为特定群组、领域或者范畴、和/或与电子消息的具体方面相关的任何数据。结构化数据可以包括元数据,该元数据与以下各项相关:与电子消息相关的边线和节点信息、与电子消息作者相关的信息、与电子消息中特有的具体项目相关的信息、以及与社交网络系统内的电子消息相关的交互信息。为了说明,用于电子消息的结构化数据可以包括格式化信息、电子消息作者的名字和位置、电子消息的内容、或者与电子消息相关的任何其他特定类型的信息/数据。结构化数据还可包括各种多媒体内容,诸如,图像(例如,数字图片、数字地图图像)、视频、音频等。使用这个结构化数据,社交网络系统可以促成“丰富”对象插入通信线程或者其他地方内,这种丰富的对象提供比一般文本消息更多的信息和/或内容。

此外,在至少一个实施方式中,丰富通信对象可以包括支付工具。例如,丰富通信对象可以包括允许用户通过社交网络系统116直接提交支付的控件。进一步地,其他支付工具可以包括托管工具、汇款工具、信用卡交易工具、银行路由工具等。

此外,在一个实施方式中,社交网络系统116在用户之间传输社交网络系统帖子和/或电子消息。例如,响应于用户经由社交网络系统116将电子消息提交至一个或多个社交网络系统用户,社交网络系统116更新通信会话中的其他参与者的通信线程以包括该电子消息。在另外的或者可替换实施方式中,社交网络系统116进一步提供通信线程内的额外指示符,其表明通信会话中的具体用户是否已看到或者读了通信线程内的具体电子消息。

如上所述,并且如图1所示,社交网络系统116进一步包括通信管理器118,该通信管理器管理社交网络系统116、社交网络系统用户和/或第三方(即,商家114)之间的全部通信。通信管理器118包括令牌管理器120。在一个或多个实施方式中,响应于经由第三方网站(即,由商家114承载的网站)上的插件从用户接收的用户愿意与该第三方网站匿名通信的指示,令牌管理器120生成永久不透明令牌。通信管理器118使用通过令牌管理器120生成的永久不透明令牌以引导商家与社交网络系统用户之间的通信。

在一个或多个实施方式中,令牌管理器120通过基于以下各项创建散列而生成永久不透明令牌:与具体社交网络系统用户相关的唯一标识符、与具体商家相关的唯一标识符、以及诸如创建令牌的日期和时间的其他信息。例如,在至少一个实施方式中,经由插件接收的、用户想要从具体商家接收通信的指示(即,“状态属性”)包括包含用于具体商家的唯一标识符的信息。令牌管理器120然后可以识别社交网络系统116内的用户的唯一标识符以便创建永久不透明令牌所基于的散列。

如本文中使用的,“散列”仅是包括已知值(诸如,用户的唯一标识符、商家的唯一标识符以及日期和时间)的任意计算的结果。这个计算的“散列”结果始终是唯一的,但是可以通过了解任意计算的人来确定以便识别该结果所基于的值。通过利用散列,令牌管理器120可以生成表示作为唯一的并且基本上使包含其中的值加密的用户/商家对的永久不透明令牌。

因此,在至少一个实施方式中,除了生成永久不透明令牌之外,令牌管理器120还解密永久不透明令牌所基于的散列,以便识别用户的唯一标识符和/或商家的唯一标识符。例如,在一个或多个实施方式中并且如以上所列出的,令牌管理器120了解用户的唯一标识符和商家的唯一标识符按照其散列的任意计算,以便创建永久不透明令牌。因此,为了随后识别用户的唯一标识符和/或商家的唯一标识符,令牌管理器120仅确定永久不透明标识符所基于的散列。

还如上所述,通信管理器118可以包括商家通信器122。在一个或多个实施方式中,商家通信器122管理包括具体商家的预注册过程。例如,在至少一个实施方式中并且在商家可以包括社交网络系统插件作为商家的网站的一部分之前,商家需要向社交网络系统116预注册。因此,为了预注册商家,商家通信器122从商家接收具体通信端点,并且转而将一组社交网络系统通信端点提供至商家。商家通信器122然后将唯一商家标识符分配给商家并且存储唯一的商家标识符以及相关的通信端点以供随后使用。

如本文中使用的,“通信端点”是指特定的统一资源定位符(“url”)、服务器端口、或者表明在该端点处接收的信息类型的网络地址。例如,在一种情况下,由商家在通信端点“www.merchant.com/social_networking_system”接收的信息是来自社交网络系统116的信息。类似地,由社交网络系统116在“www.socialnetworkingsystem.com/transaction_update”接收的信息可以是来自具体商家并且用于通信至具体社交网络系统用户的交易更新信息。

此外,一旦具体商家完成了预注册过程,商家通信器122就促成社交网络系统118与具体商家之间的通信。例如,一旦令牌管理器120生成与具体用户和商家相关的永久不透明令牌,商家通信器122将除了消息和其他信息之外还将所生成的永久不透明令牌通过将令牌和其他信息发送至通过上述预注册过程中由商家提供的通信端点而通信至商家。以下参考图3更详细地说明这个通信过程。

此外,商家通信器122从具体商家接收通信。例如,在一个实施方式中,商家将通信和具体的永久不透明标识符发送至通信管理器118。在那种情况下,如上所述,商家通信器122接收通信并且将具体的永久不透明标识符提供至令牌管理器120用于解密。一旦令牌管理器120从具体的永久不透明标识符解密用户的唯一标识符,商家通信器就可以将商家的通信提供至通信发送器124用于在发送至与解密的唯一用户标识符相关的用户之前重新格式化。

在一个或多个实施方式中,如图1所示,通信管理器118还包括通信发生器124。一旦商家通信器122接收到来自商家114的通信,如上所述,通信发生器124就生成包括商家的通信的丰富通信对象。在一个实施方式中,通信发生器124基于在其处接收商家的通信的社交网络系统的通信端点生成丰富通信对象。例如,如果商家通信器122在通信端点“www.socialneworkingsystem.com/delivery_status”处接收到商家的通信,则通信发生器124可以按照专用于发送状态通知的预定方式使商家的通信格式化为丰富通信对象。在一个或多个实施方式中,使商家的通信格式化为丰富通信对象包括:改变通信的布局、字号、色彩主题、添加图像和图片等。此外,通信发生器124可以包括格式化为丰富通信对象的非显示信息,诸如但不限于,标题信息(例如,通信源、通信的日期和时间等)、节点和边线信息、以及其他结构化数据。

此外,如上所述,并且如图1所示,通信管理器118还包括数据存储装置126。如所示,数据存储装置126包括用户数据128、商家数据130、令牌数据132、通信数据134、节点数据136和边线数据138。在一个或多个实施方式中,用户数据128表示诸如本文中描述的用户信息。类似地,在一个或多个实施方式中,商家数据130表示诸如本文中描述的商家信息。在一个或多个实施方式中,通信数据134表示诸如本文中描述的通信信息。进一步地,在一个或多个实施方式中,令牌数据132表示诸如本文中描述的令牌信息。此外,在一个或多个实施方式中,节点数据134和边线数据136分别表示诸如本文中描述的节点和边线信息。

图2示出了通信系统100的示例性示意图。如图2所示,通信系统100包括客户端计算装置102、社交网络系统116和商家114,它们通过网络202通信地耦接。还如图2所示,用户204与客户端计算装置102交互以便在社交网络系统116和/或商家114上访问内容和/或服务,或者访问由社交网络系统116和/或商家114提供的内容和/或服务。如以上参考图1所述,客户端计算装置102经由社交网络应用程序104访问社交网络系统116。类似地,如以上参考图1所述,客户端计算装置102可经由网络浏览器112,并且在一些情况下利用插件管理器110,访问商家114。此外,在一个或多个实施方式中,商家114经由在诸如以上所述的预注册过程期间定义的一个或多个通信端点访问社交网络系统116。

客户端计算装置102、商家114和社交网络系统116经由网络202通信,该网络可包括一个或多个网络并且可使用适用于传输数据和/或通信信号的一个或多个通信平台或者技术。在一个或多个实施方式中,网络202包括互联网或者万维网。然而,网络202可以包括使用各种通信技术和协议的各种其他类型的网络,诸如,企业内部网、虚拟专用网络(vpn)、局域网(lan)、无线局域网(wlan)、蜂窝网络、广域网(wan)、城域网(man)或者两个或更多个这种网络的组合。尽管图2示出了客户端计算装置102、社交网络系统116、商家114和网络202的具体布置,但是可以是各种其他布置。例如,客户端计算装置102可绕过网络202直接与社交网络系统116和/或商家114通信。以下参考图6说明关于网络202的其他细节。

如图2所示,通信系统100包括用户204。如上所述,用户204可以是个体(即,人类用户)、公司、群体或者其他实体。尽管图2示出了一个用户204,但是应理解的是,通信系统100可以包括多个用户,其中,多个用户中的每一个通过对应的多个客户端计算装置与通信系统100交互。

客户端计算装置102可以是各种类型的计算装置中的任一个或多个。例如,客户端计算装置102包括移动装置,诸如,移动电话、智能电话、pda、平板电脑、笔记本电脑;或者非移动装置,诸如,台式机、服务器;或者另一类型的计算装置。进一步地,客户端计算装置102可运行与社交网络系统116相关的专用的社交网络应用程序(例如,诸如以上关于图1所描述的社交网络应用程序104)以访问与通信系统100相关的社交网络内容(例如,帖子、消息、个人资料等)。以下关于图6讨论关于客户端计算装置102的其他细节。

如上所述,参考图1至图2列出的系统和方法可以促成社交网络系统用户与商家之间经由社交网络系统的匿名通信。图3a至图3b示出了通过以上讨论的系统100实现的过程的一个或多个示例性实施方式的示例性过程图。与图1和图2中示出的系统100一致,图3a至图3b示出了用户204利用客户端计算装置102、商家114和社交网络系统116促成客户端计算装置102与商家114之间的匿名通信。

在一个或多个实施方式中,如图3a所示,示出的过程开始于商家114参与预注册(302)。如上所述,在一个或多个实施方式中并且为了使商家114在具体网页上显示社交网络系统插件,商家114必须首先向社交网络系统116预注册。预注册过程包括商家和社交网络系统116交换多个通信端点。如上所述,通信端点为商家114和社交网络系统116两者提供特定的url、服务器端口、网络地址等,在此处,商家114和社交网络系统116可以发送通信。例如,在预注册期间(302),商家114可以向社交网络系统116提供通信端点“www.merchant.com/social_networking_system”。类似地,在预注册期间(302),社交网络系统116可以向商家114提供多个通信端点,包括“www.socialnetworkingsystem.com/transaction_update”、“www.socialnetworkingsystem.com/shipping_confirmation”、“www.socialnetworkingsystem.com/purchase_receipt”等。因此,在一个或多个实施方式中,社交网络系统116可以将商家通信引导至“www.merchant.com/social_networking_system”,并且商家114可以将与运输确认相关的社交网络系统通信引导至“www.socialnetworkingsystem.com/shipping_confirmation”。

此外,如果商家114选择在具体网页中除了插件之外还包括社交网络系统像素,或者如果商家114选择在具体网页中包括社交网络系统像素而非插件,则预注册(302)包括从社交网络系统接收专用于商家114的像素代码和社交网络系统像素id。商家114将像素代码和社交网络系统像素id插入到用于具体网页的代码或者脚本语言中。例如,像素代码包括使社交网络系统能够经由网页追踪信息的各种方法调用和条件语句。为了说明,对于订单确认网页,代码片段使社交网络系统能够追踪信息,该信息包括但不限于,收据id、时间戳、开户人id、接收者姓名、支付额、小计、运费、税收总额、总成本、使用的货币、支付方法、运输地址、以及一列购买物品以及描述所购买物品的信息(例如,品牌、尺寸、颜色、性别等)。响应于用户表示希望经由社交网络系统116(例如,通过在购买之前设置的账号)从商家114接收通信,社交网络系统116可以利用所追踪的信息将来与用户通信。

此外,在预注册期间(302),社交网络系统116可以将唯一标识符分配至商家114。例如,如上所述,通信管理器118可以生成表示社交网络系统用户与商家的唯一配对的永久不透明令牌。这个永久不透明令牌随后可以用于引导用户与商家之间的匿名通信。因此,当商家114向社交网络系统116预注册时,社交网络系统116可以生成唯一标识符并且将唯一标识符分配至商家114。社交网络系统116可以生成唯一商家标识符以包括字母数字序列、散列、或者任何其他合适的唯一标识符。

在商家向社交网络系统116预注册(302)之后的某点,客户端计算装置102的用户可以经理嵌入在由商家114承载的网页中的社交网络系统插件。在一个或多个实施方式中并且为了使客户端计算装置102的用户利用插件,客户端计算装置102保持社交网络系统会话(304)。例如,在至少一个实施方式中,在社交网络系统插件起作用之前,社交网络系统插件需要某些社交网络系统凭证(例如,登录、用户标识符等)。这个信息可以通过客户端计算装置102存储在由客户端计算装置102存储的具体文件(例如,“收藏夹”)中。在至少一个实施方式中,当尝试加载包含社交网络系统插件的商家网页时,网络浏览器112可以访问收藏夹。在一个或多个实施方式中,如果网络浏览器112尝试在没有活跃的社交网络系统会话还在网络浏览器内打开(如通过收藏夹表示的)的情况下使插件初始化,则该插件将不能初始化。

社交网络系统插件可以从打开的社交网络系统会话自动识别所需要的凭证。在一个实施方式中,当客户端计算装置102是移动装置(例如,移动电话),并且客户端计算装置102的用户登录到社交网络应用程序104(如图3a中的虚线框表示的)内的社交网络系统116中并且还浏览安装在移动装置上的网络浏览器内的与商家114相关的网站时,保持社交网络系统会话(304)发生。在其他或者可替换的实施方式中,当客户端计算装置102的用户在网络浏览器的一个标签中登录到社交网络系统116中时,同时在网络浏览器的另一个标签中浏览与商家114相关的网站,简单地保持社交网络系统会话(304)。在又一实施方式中,如果验证/登录凭证在客户端计算装置102上是以其他方式可用的,则保持该会话。

如果客户端计算装置102具有目前保持的社交网络系统会话(304),则客户端计算装置可以加载包含与社交网络系统116相关的插件的商家网页(306)。例如,在一个实施方式中并且如上所述,如果与客户端计算装置102的用户204相关的收藏夹未表明存在目前打开的社交网络系统会话(304),则在商家的网页上嵌入的插件将不能初始化。然而,如果收藏夹确实表明已经通过客户端计算装置102保持社交网络系统会话(304),则包含插件的商家的网页可以成功加载(306)。

在一个或多个实施方式中,初始化的插件导致网络浏览器112在商家的网页内显示交互控件。在一个或多个实施方式中,交互控件允许客户端计算装置102的用户204选择用于允许商家114经由社交网络系统116与用户204匿名通信的选项。另外或者可替换地,交互控件可以仅向用户204通知用户将从商家114接收匿名通信,并且为用户204提供退出该通信的选项。不管与插件相关的交互控件的配置,客户端计算装置102可以经由插件接收用户有关通过社交网络系统116与商家114通信的选项的选择(308)。

在一个实施方式中,网络浏览器112可以在与用户204和商家114之间的购买交易相关的网页内加载经初始化的社交网络系统插件(306)。例如,用户204可利用商家114的电子商务网站选择并购买物品。购买交易可包括数个网页,用户204通过这些网页可以提供支付和配送信息。在一个实施方式中,并且就在用户204确认订单之前,网络浏览器112可以向用户204显示与初始化的插件相关的交互控件,这为用户提供允许商家114通过社交网络系统116与用户204通信的选项。在其他实施方式中,在用户确认订单之后,或者在电子商务过程中的另一点处,网络浏览器112可以向用户204提供与初始化的插件相关的交互控件。此外或可替换地,网络浏览器112可以在商家的网站内的结账和确认过程中的不同点显示与初始化的插件相关的不同的交互控件(例如,如果用户204选择退出在结账过程中的一个点处经由插件接收商家通信,则网络浏览器112可以在结账过程中的另一点显示具有“加售”选项的插件以询问用户204确认该退出等)。

在其他或者可替换的实施方式中,不是使用网络浏览器和插件访问商家网站,用户可利用专用的商家移动应用程序查看和购买货物。在那种情况下,用户可将商家移动应用程序安装在移动装置(例如,智能电话或者平板电脑)上。在一个或多个实施方式中,商家移动应用程序可依赖应用程序编程接口(api)以便经由移动装置向用户提供显示,并且与商家通信。

响应于经由插件接收到用户有关与商家114的匿名通信的选择,客户端计算装置102可以将用户的插件选择以及状态属性通信至社交网络系统116(310)。在一个或多个实施方式中,与商家114相关的状态属性可以包括(例如,在预注册期间(302)社交网络系统116分配给商家114)商家的唯一标识符、(例如,从社交网络系统收藏夹所取的)用户的唯一标识符、状态信息、以及涉及用户204与商家114之间的交易的其他信息。在一个或多个实施方式中,状态属性由插件生成,并且用于将上下文提供给有关用户204与社交网络系统116之间或者社交网络系统116与商家114之间的交易的任何进一步通信。例如,状态属性与永久不透明令牌结合,允许商家114将从社交网络系统116接收的通信与具体交易和社交网络系统用户204互相关。应当注意的是,尽管商家114可以使具体交易与具体用户204互相关,商家114从未获得对于具体地识别用户204的任何信息(例如,电子邮件地址、社交网络系统116内的用户的唯一标识符等)的访问。

一旦社交网络系统116接收到状态属性和用户的选择的指示(310),社交网络系统116就可以生成与用户204和商家114相关的永久不透明令牌(312)。如上所述,在一个或多个实施方式中,社交网络系统116可以通过基于与商家114相关的唯一标识符以及与客户端计算装置102的用户204相关的唯一标识符创建散列,生成永久不透明令牌。例如,社交网络系统116可以从通过插件通信(310)的状态属性中提取与商家114相关的唯一标识符以及与用户204相关的唯一标识符。社交网络系统116然后可以基于这些标识符生成永久不透明令牌。在其他实施方式中,社交网络系统116也可以基于同样从状态属性提取的日期和时间生成永久不透明令牌。

如上所述,永久不透明令牌表示用户204与商家114之间的配对。因此,在至少一个实施方式中,社交网络系统116存储永久不透明令牌,使得永久不透明令牌不仅可以与用户204和商家114之间的目前交易相关的通信结合使用,而且可以与用户204和商家114之间的未来交易相关的通信结合使用。因此,在至少一个实施方式中,社交网络系统116可以不管交易而利用生成的永久不透明令牌引导商家114与用户204之间的全部通信。如果永久不透明令牌存在表示用户204与商家114之间的配对,则社交网络系统116可以在步骤312中仅识别所需的永久不透明令牌,而非生成新的永久不透明令牌。

此外,在一个或多个实施方式中,社交网络系统116也可以创建与所生成的永久不透明令牌相关的节点和/或从客户端计算装置102接收的状态属性所引用的交易。例如,节点可以包括与通过永久不透明令牌表示的用户/商家配对相关的信息。此外,社交网络系统116可以创建表示用户204与商家114之间的每个交易的节点。在至少一个实施方式中,社交网络系统116可以利用边线将表示用户204与商家114之间的交易的每个节点连接至表示永久不透明令牌的节点。以此方式,社交网络系统116可以使用节点和边线以表示用户204与商家114之间的整体商业关系。包含在其中的节点、边线和/或信息的替换布置是可能的。

接下来,一旦社交网络系统116生成永久不透明标识符(312),社交网络系统116就可以将永久不透明令牌和状态属性发送至商家(314)。应当注意的是,社交网络系统116可以在将状态属性发送至商家(314)之前改变状态属性。例如,在状态属性中,社交网络系统116可仅包括商家114正确识别与永久不透明令牌相关的交易所需要的信息。此时,商家114可以存储永久不透明令牌和状态属性(316)。如上所述,商家114可以存储这个信息,使得永久不透明令牌以及状态属性内的交易日期相关。

因此,当商家114随后识别与状态属性相关的交易中的更新(318)时,商家114可以经由社交网络系统116将通信发送至用户204。例如,如果交易是通过用户204做出的购买,则该更新可以是用户的信用卡已经处理或者由用户购买的产品已经离开仓库进行配送。如果交易是由用户204提交的有关产品的问题,则该更新可以是由商家114的客户服务代表提交的回复。

一旦已经识别到该更新(318),商家就可以生成与交易更新相关的通信(320)。在一个或多个实施方式中,生成用于交易更新的通信(320)可以包括编写消息,该消息包括自然语言(例如,“谢谢您的订单!”“您的订单已发货。”“您的订单已配送。”)、多媒体(例如,收据的数字图像、产品的数字图像等)、超链接(例如,产品网页的超链接)、交互控件(例如,按钮、文字框)等。此外,生成用于交易更新的通信(320)可以进一步包括使编写消息格式化,使得该消息易于读取和理解。

在商家114可以发送生成的与交易更新相关的通信(320)之前,商家114也可以基于状态属性识别与交易相关的永久不透明令牌(322)。如上所述,状态属性用作商家追踪具体交易的途径。因为在步骤316中商家114与状态属性相关地存储永久不透明令牌,所以在步骤322中商家114可以仅基于状态属性检索所存储的永久不透明令牌。一旦商家114识别与状态属性相关的永久不透明令牌(322),商家114就可以将所生成的通信和永久不透明令牌发送至社交网络系统116(324)。如上所述,商家114可以根据已经出现的交易更新的类型,将通信和永久不透明令牌发送至与社交网络系统116相关的具体通信端点。

在接收到来自商家114的通信和永久不透明令牌时,社交网络系统116可以解密该永久不透明令牌以便识别用户204的唯一标识符(326)。如上所述,为了正确引导从商家114接收的通信,社交网络系统116必须首先确定用户的唯一标识符。此外,社交网络系统116可以解密永久不透明令牌,以便识别商家114的唯一标识符。社交网络系统116可以使用这个信息组织在客户端计算装置102处由社交网络应用程序104显示的通信。

此外,社交网络系统116可以基于从商家114接收的通信,生成丰富通信对象(328)。如上所述,除了其他结构化数据之外,丰富通信对象还可以包括商家的通信。在一个或多个实施方式中,社交网络系统116可以不仅基于从商家114接收的通信而且基于在此接收通信的社交网络系统116通信端点,生成丰富通信对象(328)。例如,社交网络系统116可为在通信端点“www.socialnetworkingsystem.com/delivery_status”接收的通信生成一种类型的丰富通信对象,以及为在通信端点“www.socialnetworkingsystem.com/purchase_receipt”接收的通信生成另一种类型的丰富通信对象。在其他或者可替换实施方式中,社交网络系统116基于从商家114接收的通信生成基于文本的标准通信。

一旦社交网络系统116生成丰富通信对象(328),社交网络系统116可以将丰富通信对象发送至与(即,如在步骤326中)所解密的唯一用户标识符相关的用户(330)。在接收到丰富通信对象时,客户端计算装置102(例如,经由社交网络应用程序104)可以显示丰富通信对象(332)。在一个或多个实施方式中,客户端计算装置102可以在其中用户204和商家114是线程参与者的通信线程内显示丰富通信对象(332)。

在其他实施方式中,社交网络系统116可以通过大体上相同的方式利用永久不透明标识符将来自用户204的任何响应通信回到商家114。例如,用户可以响应(例如,如在步骤332中)所显示的丰富通信对象。在至少一个实施方式中,用户可以通过在社交网络应用程序104中编写通信来响应所显示的丰富通信对象,该社交网络应用程序可以接收从用户204至商家114的通信(334)。客户端计算装置102随后可以将用户的通信发送至社交网络系统116(336)。

响应于从客户端计算装置102接收通信,社交网络系统116可以识别与用户204和商家114配对相关的永久不透明令牌(338)。如上所述,社交网络系统116可以将永久不透明令牌存储在与社交网络系统用户(即,用户204)相关的节点中,其中,永久不透明令牌基于该社交网络系统用户的唯一用户标识符。如果社交网络系统与多于一个永久不透明令牌相关(即,用户可具有与多个商家的通信线程),则社交网络系统116可以从发送通信(例如,如在步骤336中)的通信线程识别正确的商家。因此,社交网络系统116可以基于用户204和商家114的配对识别正确的永久不透明令牌(338)。

社交网络系统116然后可以将通信和永久不透明令牌发送至商家114(340)。在一个或多个实施方式中,商家114可以在预注册过程期间指定的通信端点处接收通信和永久不透明令牌(302)。响应于接收通信和永久不透明令牌,商家114可以将永久令牌与存储的状态属性匹配(342)。如上所述,商家114存储的状态属性用来识别涉及具体用户的具体交易。因此,商家114可以确定哪个存储的状态属性与所接收的永久不透明令牌相关(342)。

最后,商家114可以基于所识别的状态属性显示该通信(344)。在一个或多个实施方式中,商家114可以经由允许来自用户204的通信显示为通信线程的一部分的专用网页或者应用程序,显示所接收的通信。因此,所接收的通信可以显示为商家114与用户204之间的通信的历史的一部分。

如以下将更详细描述的,如关于图1至图3b描述的系统100的组件可以连同和/或结合其他组件提供一个或多个图形用户界面(“gui”)。具体地,组件可以允许用户出于各种目的而与各种显示元件交互。具体地,图4a至图4f和随后的描述示出了根据如上所述的一般原则的用户界面和特征的各种示例性实施方式。

例如,图4a示出了社交网络系统用户(例如,用户204)的客户端计算装置400,其可实现通信系统100的一个或多个组件或者特征。如所示,客户端计算装置是手持装置,诸如,移动电话装置(例如,智能电话)。如本文中使用的,术语“手持装置”是指被制定大小并且被配置为在用户的单手中保持/操作的装置。然而,在其他或可替换的实例中,任何其他合适的计算装置可以执行本文中描述的一个或多个过程和/或操作,诸如但不限于,平板装置、较大的无线装置、笔记本电脑或台式计算机、个人数字辅助装置、和/或任何其他合适的计算装置。

如图4a所示,客户端计算装置400包括触摸屏显示器402,该显示器可以显示用户界面并且通过其可以接收和/或检测用户输入。如本文中使用的,“触摸屏显示器”是指触摸屏装置的显示器。在一个或多个实施方式中,触摸屏装置可以是具有用户可在其上执行触摸手势的至少一个表面的客户端计算装置102(例如,笔记本电脑、平板电脑、个人数字助理、媒体播放器、移动电话等)。此外或可替换地,客户端计算装置300可包括任何其他合适的输入装置,诸如,触摸板或者以下参考图6所描述的那些。

在图4a中,客户端计算装置400的触摸屏显示器402显示通过安装在其上的网络浏览器112提供的网络浏览器gui404a。如上所述,网络浏览器112提供网络浏览器gui404a以提供交互式显示器,从而用户可以阅读网页并且与网页交互。如图4a所示,网络浏览器gui404a显示下单前结账网页406a。在一个或多个实施方式中,商家114可显示下单前结账网页406a作为在结账过程中呈现给用户的最后网页。因此,下单前结账网页406a包括订单和运输详情以及确认按钮(例如,“下订单”按钮)。

还如图4a所示,下单前结账网页406a包括插件显示408。如上所述,如果客户端计算装置400的用户同时登录到社交网络系统116中(例如,在另一应用程序或者网络浏览器标签中),则社交网络插件可以初始化并且向用户提供一个或多个选项的插件显示408。在可替换实施方式中,如果客户端计算装置400的用户没有同时登录到社交网络系统116上,则插件可能不能初始化,并且插件显示408可包括消息,诸如,“登录到您的社交网络系统账号以接收实时运输更新!”尽管插件显示408具有“选择加入”复选框,但是在可替换实施方式中,插件显示408可具有“选择退出”复选框。另外,在另一可替换实施方式中,不管客户端计算装置400是否同时登录到社交网络系统116上,只要客户端计算装置400存储收藏夹或者包括用户204的社交网络系统登录信息的其他数据,插件就可以初始化。

响应于客户端计算装置400的用户在插件显示408中选择复选框并且在下单前结账网页406a详情中下订单,如图4b所示,网络浏览器112可以在客户端计算装置400的触摸屏显示器402上的网络浏览器gui404a中显示下单后确认网页406b。在一个或多个实施方式中,下单后确认网页406b确认用户下的订单。此外,如图4b所示,因为用户在插件显示408中选择“选择加入”选项,如图4a所示,插件或者像素显示器408也可以提供选择确认。例如,插件或者像素显示408可以包括客户端计算装置400的用户将接收实时更新的确认、以及用户的身份(例如,“richardherner”)的确认和取消选项(例如,“不是您本人?”)。在一个或多个实施方式中,如以上所列出的,插件管理器110基于与用户打开的社交网络系统会话相关的收藏夹提取用户的身份。响应于用户点击“不是您本人?”,插件管理器110可以停用该插件,和/或允许用户在一不同账号下登录到社交网络系统116。

响应于客户端计算装置400的用户选择经由社交网络系统116接收来自商家114的实时更新,社交网络应用程序104的显示管理器106可以将来自商家114的通信显示为通信线程的一部分。图4c至图4e中示出了商家通信的各种实例。例如,如图4c所示,安装在客户端计算装置400上的社交网络应用程序104的显示管理器106可以在客户端计算装置400的触摸屏显示器402上显示通信gui404b。在一个或多个实施方式中,通信gui404b可以包括商家指示符412和通信线程410,该商家指示符表示正与客户端计算装置400的用户(即,用户204)通信的商家。如上所述,通信线程410可以包括在两个或更多个实体之间来回发送的电子消息和丰富通信对象。

在一个或多个实施方式中,如图4c至图4e所示,通信线程410可以包括一个或多个丰富通信对象414a、414b、414c。例如,如图4c所示,丰富通信对象414a包括来自商家114的消息和销售收据的结构化显示。如图4d所示,丰富通信对象414b包括来自商家114的消息、表示递送的当前位置的图形、以及具有预计送达的结构化通信。如图4e所示,丰富通信对象414c包括来自商家114的消息以及具有送达确认的结构化通信。如上所述,社交网络系统116可以基于接收来自的商家114的下层通信所处的通信端点,确定丰富通信对象414a、414b和414c的格式和内容。此外,在基于收到的通信确定丰富通信对象的最佳格式和内容时,社交网络系统116可以利用自然语言处理、网络查找、数据库、语法、以及其他合适的技术。

除了丰富通信对象之外,通信线程410还可以包括标准电子消息。例如,如图4e所示,通信线程410可以包括电子消息416a、416b和416c。如上所述,客户端计算装置400的用户可以仅仅通过在社交网络应用程序104内(即,在通信gui404b中)编写和发送书面消息(例如,电子消息416a)或者其他类型的消息(例如,如电子消息416c中的数字图像)与商家114通信。社交网络系统116可以在通信线程410(例如,电子消息416b)内显示来自商家114的任何响应。

在一个或多个实施方式中,电子消息416a至416c表示“实况聊天”。例如,不是包括以编程方式创建的丰富通信对象(诸如,丰富通信对象414a至414c),社交网络系统116可以允许用户204与商家114的在线操作员之间的实时非结构化通信。因此,如图4e所示,电子消息416b可以通过商家114的在线操作员提交。以此方式,用户204可以接收有关订单修改、订单取消、运输变化、支付变化或者任何其他类型的商家支持或者服务的实时信息。

此外,如上所述,安装在客户端计算装置400上的社交网络应用程序104可以为用户204提供通信线程的列表。例如,如图4f所示,显示管理器106可以在客户端计算装置400的触摸屏显示器402上提供线程列表gui404c。在一个或多个实施方式中,线程列表gui404c可以包括通信线程列表418,该通信线程列表包括一个或多个通信线程元420a至420h。在至少一个实施方式中,每个通信线程元420a至420h表示包括客户端计算装置400的用户和至少一个另一参与者的通信线程。每一个通信线程中的另一参与者可以是(例如,如通信线程元420b和420d中表示的)商家、(例如,如通信线程元420a、420c、420e至420h中表示的)单独的社交网络系统用户、或者社交网络系统用户群。响应于检测与任何通信线程元420a至420h的交互,显示管理器106可以更新触摸屏显示器402以包括通信gui(例如,通信gui404b),该通信gui包括对应的通信线程。

在其他实施方式中,以上描述的插件也可以追踪用户204对商家114承载的网站所执行的动作。例如,用户204可针对特定产品搜索商家的网站但发现该特定产品没有库存,然后导航离开该商家的网站。该插件可按照上述参考图3a至图3b的方式追踪该搜索并且将该搜索通信至商家114。随后,当商家114增加该特定产品的新库存时,商家114可以通过社交网络系统116将这个信息通信至用户204。因此,社交网络系统16可以向用户204发送丰富通信对象,该对象包括诸如“您在solitudecamping寻找的帐篷有货了!”的消息。

在一个或多个实施方式中,除了在社交网络应用程序104中的通信线程中提供丰富通信对象之外,社交网络系统116也可以将推送通知提供至客户端计算装置400。例如,推送通知可以包括弹出通知、警报、振动、图标等。这个特征对商家114的用处在于:商家114不需要开发专用的应用程序来容易地与顾客通信。相反地,商家114可以简单地利用社交网络系统116的特征和能力,与商家的顾客通信。

图1至图4f、相应文本和实例提供了用于促成商家与社交网络系统用户之间的通信的多种不同的方法、系统和装置。除了上述之外,也可以根据包括用于实现特定结果的方法中的动作和步骤的流程图描述实施方式。例如,图5可以利用或多或少的步骤/动作执行或者步骤/动作可以在不同订单中执行。此外,本文中描述的步骤/动作可相互同时或者与相同或者类似步骤动作的不同情况同时重复或者执行。

图5示出了促成商家与社交网络系统用户之间的通信的一个示例性方法500的流程图。方法500包括接收通信请求的动作510。具体地,动作510可以包括通过与商家(例如,商家114)相关的网页插件的方式,从与用户(例如,用户204)相关的客户端计算装置(例如,客户端计算装置102)接收通信请求。在至少一个实施方式中,方法500进一步包括将网页插件提供至商家,作为预注册过程的一部分,该预注册过程包括从商家接收商家通信端点。例如,预注册过程可以进一步包括响应于接收商家通信端点,将多个社交网络系统通信端点提供至商家。

方法500还包括生成与用户相关的不透明令牌的动作520。具体地,动作520可以包括,响应于所接收的通信请求,生成与用户相关的不透明令牌,该不透明令牌包括与商家相关的标识符以及与用户相关的标识符的加密组合。在至少一个实施方式中,加密组合可以进一步包括创建不透明令牌的日期和时间。

此外,方法500包括提供不透明令牌的动作530。具体地,动作530可以包括将所生成的不透明令牌提供至商家。在至少一个实施方式中,可以经由至少一个通信端点,向商家提供所生成的不透明令牌。

此外,方法500包括基于不透明令牌,促成商家与用户之间的通信的动作540。具体地,动作540可以包括:使用不透明令牌,促成商家与用户之间的基于不透明令牌的通信。在一个或多个实施方式中,促成商家与用户之间的通信包括:从商家接收消息和不透明令牌;解密所接收的不透明令牌以识别与用户相关的标识符;基于从商家接收的消息生成丰富通信对象;并且基于与用户相关的标识符,在与用户相关的客户端装置将所生成的丰富通信对象提供至用户。此外或可替换地,促成商家与用户之间的通信包括:经由多个社交网络系统通信端点中的一个或多个,从商家接收消息和不透明令牌;解密所接收的不透明令牌以识别与用户相关的标识符;基于从商家接收的消息和多个通信端点中的一个或多个,生成丰富通信对象;并且基于与用户相关的标识符,在与用户相关的客户端装置将所生成的丰富通信对象提供至用户。在一个或多个实施方式中,丰富通信对象包括文本、数码照片、数字图像、超链接和交互控件中的一个或多个。此外,方法500可以包括基于通过其从商家接收通信的一个或多个通信端点使丰富通信对象格式化。

在至少一个实施方式中,方法500进一步包括:响应于所生成的丰富通信对象,从用户接收指向商家的通信;识别所生成的与用户相关的不透明令牌;并且将不透明令牌和来自用户的通信提供至商家。在一些实施方式中,促成商家与用户之间的通信包括:通过社交网络系统通信应用程序的方式将来自商家的通信提供至用户,并且通过社交网络系统的方式将来自用户的通信提供至商家。在该情况下,促成商家与用户之间的通信可以进一步从商家接收通过专用网络地址的方式寻址至用户的通信。

如以下将更详细地讨论的,本公开内容的实施方式可包括或者利用包括计算机硬件(诸如,一个或多个处理器和系统存储器)的专用或者通用计算机。本公开内容的范围内的实施方式还包括用于承载或者存储计算机可执行指令和/或数据结构的物理的和其他计算机可读介质。具体地,本文中描述的一个或多个过程可以如非暂时性计算机可读介质中体现的指令至少部分地实现并且通过一个或多个计算装置(例如,本文中描述的任何介质内容访问装置)可执行的。通常,处理器(例如,微处理器)从非暂时性计算机可读介质(例如,存储器等)接收指令,并且执行那些指令,从而执行一个或多个过程,该过程包括本文中描述的一个或多个过程。

计算机可读介质可以是可以由通用或者专用计算机系统访问的任何可用的介质。存储计算机可执行指令的计算机可读介质是非暂时性计算机可读存储介质(装置)。承载计算机可执行指令的计算机可读介质是传输介质。因此,通过举例的方式,并且不受限制,本公开内容的实施方式可以包括至少两种明显不同种类的计算机可读介质:非暂时性计算机可读存储介质(装置)和传输介质。

非暂时性计算机可读存储介质(装置)包括ram、rom、eeprom、cd-rom、(例如,基于ram的)固态驱动(“ssd”)、闪速存储器、相变存储器(“pcm”)、其他类型的存储器、其他光盘存储、磁盘存储或者其他磁存储装置、或者可以意指以计算机可执行指令或者数据结构的形式用于存储期望程序代码并且可以通过通用或者专用计算机访问的任何其他介质。

“网络”被定义为使电子数据能够在计算机系统和/或模块和/或其他电子装置之间输送的一个或多个数据链路。当信息在网络或者另一通信连接(硬连线、无线的或者硬连线或无线的组合)上传递或者提供至计算机时,计算机适当地将该连接视作传输介质。传输介质可以包括可以意指以计算机可执行指令或者数据结构的形式用于携带期望程序代码并且可以通过通用或者专用计算机访问的网络和/或数据链路。上述的组合也应包括在计算机可读介质的范围内。

进一步地,根据达到各种计算机系统组件,意指以计算机可执行指令或者数据结构的形式的程序代码可以从传输介质自动地传递至非暂时性计算机可读存储介质(装置)(或者反之亦然)。例如,在网络或者数据链路上接收的计算机可执行指令或者数据结构可以在网络接口模块(例如,“nic”)内的ram中缓冲,然后最终传递至计算机系统ram和/或在计算机系统传递至较少易失的计算机存储介质(装置)。因此,应当理解,非暂时性计算机可读存储介质(装置)可以包括在还(或者甚至主要)利用传输介质的计算机系统组件中。

例如,计算机可执行指令包括当在处理器执行时使得通用计算机、专用计算机或者专用处理装置执行某个功能或者功能组的指令和数据。在一些实施方式中,计算机可执行指令在通用计算机上执行以将通用计算机转变为本公开内容的专用计算机实现元件。例如,计算机可执行指令可以是二进制、诸如汇编语言的中级格式指令、或者甚至是源代码。尽管通过结构特征和方法动作专用的语言描述了主题,但是应理解的是,在所附权利要求内限定的主题不必局限于上面描述的特征或动作。相反地,公开了所描述的特征和动作作为实现权利要求的实例形式。

本领域技术人员将理解,本公开内容可以利用许多类型的计算机系统配置在网络计算环境中实践,包括,个人计算机、台式计算机、膝上型计算机、信息处理器、手持装置、多处理器系统、基于微处理器或者可编程的消费性电子产品、网络pc、微型计算机、大型计算机、移动电话、pda、平板、传呼机、路由器、开关等。本公开内容还可以在分布式系统环境中实践,在该分布式系统环境中本地和远程计算机系统通过网络链接(通过硬连线数据链路、无线数据链路、或者通过硬连线和无线数据链路的组合),两者都执行任务。在分布式系统环境中,程序模块可以位于本地和远程存储器存储装置这两者中。

本公开内容的实施方式也可以在云计算环境中实现。在这个描述中,“云计算”被限定为用于能够点播网络访问可配置的计算资源的共享池的模式。例如,云计算可以从事于市场以提供普遍存在的且便利的点播访问可配置的计算资源的共享池。可配置的计算资源的共享池可以经由虚拟化迅速供应并且以低管理努力或者服务提供者交互进行释放,然后相应地缩放。

云计算模式可以由各种特性组成,诸如,自助点播、广网络访问、资源池、迅速弹性、测量服务等。云计算模式也可以暴露各种服务模式,诸如,软件即服务(“saas”)、平台即服务(“paas”)和基础设施即服务(“iaas”)。云计算模式也可以使用不同的部署模式进行部署,诸如,私有云、社群云、公有云、混合云等。在这个描述中并且在权利要求中,“云计算环境”是其中采用云计算的环境。

图6示出了可被配置为执行上述一个或多个过程的示例性计算装置600的框图。应该理解,诸如计算装置600的一个或多个计算装置可实现系统100。如由图6所示,计算装置600可以包括处理器602、存储器604、存储装置606、i/o接口608、以及通信接口610,其可以通过通信基础设施612的方式通信地耦接。尽管图6中示出了示例性计算装置600,但是图6中示出的组件不旨在限制。在其他实施方式中,可以使用其他或者可替换的组件。此外,在某些实施方式中,计算装置600可以包括比图6中示出的那些更少的组件。现在将额外详细地描述图6中示出的计算装置600的组件。

在一个或多个实施方式中,处理器602包括用于执行诸如组成计算机程序的指令的硬件。作为实例而非限制性方式,为了执行指令,处理器602可以从内部寄存器、内部缓存、存储器604或者存储装置606检索(或者取来)指令并且解码和执行它们。在一个或多个实施方式中,处理器602可包括用于数据、指令或地址的一个或多个内部缓存。作为实例而非限制性方式,处理器602可包括一个或多个指令缓存、一个或多个数据缓存以及一个或多个转换后备缓冲器(tlb)。指令缓存中的指令可以是存储器604或者存储装置606中的指令的副本。

存储器604可用于存储用于由处理器执行的数据、元数据和程序。存储器604可包括一个或多个易失性和非易失性存储器,诸如,随机存取存储器(“ram”)、只读存储器(“rom”)、固态盘(“ssd”)、闪存、相变存储器(“pcm”)或者其他类型的数据存储装置。存储器604可以是内部的或者分布式存储器。

存储装置606包括用于存储数据或者指令的存储装置。作为实例并不作为限制性方式,存储装置606可以包括上述非暂时性存储介质。存储装置606可包括硬盘驱动器(hdd)、软盘驱动器、闪速存储器、光盘、磁光盘、磁带、或者通用串行总线(usb)驱动器或者它们中两个或更多个的组合。在适当情况下,存储装置606可包括可移除的或者不可移除的(或固定的)介质。存储装置606可以在计算装置600的内部或者外部。在一个或多个实施方式中,存储装置606是非易失性存储器、固态存储器。在其他实施方式中,存储装置606包括只读存储器(rom)。在适当情况下,该rom可以是掩码编程rom、可编程rom(prom)、可擦prom(eprom)、电可擦prom(eeprom)、电可改写rom(earom)或闪速存储器或者这些的两个或更多个的组合。

i/o接口608允许用户将输入提供至计算装置600、接收来自计算装置600的输出,并且以其他方式将数据传输至计算装置600并且接收来自计算装置600的数据。i/o接口608可包括鼠标、小键盘或者键盘、触摸屏、照相机、光学扫描器、网络接口、调制解调器、其他已知的i/o装置或者这种i/o接口的组合。i/o接口608可包括用于向用户呈现输出的一个或多个装置,包括但不限于图形引擎、显示器(例如,显示屏)、一个或多个输出驱动器(例如,显示驱动器)、一个或多个音频扬声器、以及一个或多个音频驱动器。在某些实施方式中,i/o接口608被配置为将图形数据提供至显示器,用于呈现给用户。因为可提供特定实现,所以图形数据可表示一个或多个图形用户界面和/或任何其他图形内容。

通信接口610可以包括硬件、软件或者这两者。在任何情况下,通信接口610都可以为计算装置600与一个或多个其他计算装置或者网络之间的通信(诸如,基于数据包的通信)提供一个或多个接口。作为实例而非限制性方式,通信接口610可包括用于与以太网或其他基于有线网络通信的网络接口控制器(nic)或网络适配器,或者用于与无线网络(诸如,wi-fi)通信的无线nic(wnic)或无线适配器。

此外或可替换地,通信接口610可促成与自组织网络、个人局域网(pan)、局域网(lan)、广域网(wan)、城域网(man)或者互联网的一个或多个部分或者这些中的两个或更多个的组合通信。这些网络中的一个或多个的一个或多个部分可以是有线或无线的。作为实例,通信接口610可促成与无线pan(wpan)(诸如,bluetoothwpan)、wi-fi网络、wi-max网络、蜂窝电话网络(诸如,全球移动通信系统(gsm)网络)或其他合适的无线网络或者它们的组合通信。

此外,通信接口610可促成各种通信协议的通信。可以使用的通信协议的实例包括但不限于数据传输介质、通信装置、传输控制协议(“tcp”)、网络协议(“ip”)、文件传送协议(“ftp”)、远程登录系统(telnet)、超文本传送协议(“http”)、安全超文本传送协议(“https”)、会话初始协议(“sip”)、简单对象访问协议(“soap”)、可扩展标记语言(“xml”)及其变形、简单邮件传送协议(“smtp”)、实时传输协议(“rtp”)、用户数据报协议(“udp”)、全球移动通信系统(“gsm”)技术、码分多址(“cdma”)技术、时分多址(“tdma”)技术、短消息服务(“sms”)、多媒体消息服务(“mms”)、射频(“rf”)信令技术、长期演进(“lte”)技术、无线通信技术、带内和带外信令技术、以及其他合适的通信网络和技术。

通信基础设施612可包括使计算装置600的组件相互耦接的硬件、软件、或者这两者。作为实例并不作为限制性方式,通信基础设施612可包括加速图形端口(agp)或者其他图形总线、增强工业标准结构(eisa)总线、前端总线(fsb)、hypertransport(ht)互连、工业标准结构(isa)总线、infiniband互连、低接脚数(lpc)总线、存储器总线、微通道结构(mca)总线、外围部件互连(pci)总线、pci快速(pcie)总线、串行高级技术附件(sata)总线、视频电子标准协会局部(vlb)总线、或者另一合适的总线或者它们的组合。

如上所述,系统100可以包括社交网络系统。社交网络系统可使它的用户(诸如个人或者组织)能够与系统交互并且彼此交互。社交网络系统可以利用用户输入在社交网络系统中创建和存储与用户相关的用户个人资料。用户个人资料可包括用户的人口统计信息、通信信道信息以及个人兴趣信息。社交网络系统还可以利用用户输入创建和存储该用户与社交网络系统的其他用户之间的关系记录,并且为促成两个用户或多个用户之间的社交交互提供服务(例如,帖子、照片共享、活动组织、消息传送、游戏或广告)。

社交网络系统可以存储用户以及社交图谱中的用户之间的关系的记录,社交图谱包括多个节点和连接节点的多个边线。节点可包括多个用户节点和多个概念节点。社交图谱的用户节点可对应于社交网络系统的用户。用户可以是个体(人类用户)、实体(例如,企业、公司或者第三方应用程序)、或者(例如,个体或者实体的)群体。对应于用户的用户节点可包括用户提供的信息以及通过各种系统(包括社交网络系统)搜集的信息。

例如,用户可提供他或她的姓名、个人资料图片、居住城市、联系信息、出生日期、性别、婚姻状况、家庭状况、职业、教育背景、喜好、兴趣爱好以及将被包括在用户节点中的其他人口统计信息。社交图谱的每个用户节点可具有相应的网页(通常被称为个人资料页面)。响应于包括用户名的请求,社交网络系统可以访问对应于用户名的用户节点,并且构造包括姓名、个人资料图片、以及与用户相关的其他信息的个人资料页面。第一用户的个人资料页面可以基于第一用户的一个或多个隐私设置以及第一用户与第二用户之间的关系向第二用户显示第一用户的所有信息或一部分信息。

概念节点可对应于社交网络系统的概念。例如,概念可以表示真实世界的实体,诸如,电影、歌曲、运动团体、名人、群体、餐馆或者地点或位置。对应于概念的概念节点的管理用户可通过提供概念的信息(例如,通过填写在线形式)创建或者更新概念节点,从而使社交网络系统将概念节点与该信息相关。例如并且不限于,与概念相关的信息可以包括姓名或者标题、一个或多个图像(例如,一本书的封面的图像)、网站(例如,url地址)或者联系信息(例如,电话号码、电子邮件地址)。社交图谱的每个概念节点可对应于网页。例如,响应于包括姓名的请求,社交网络系统可以访问对应于姓名的概念节点,并且构成包括姓名以及与概念相关的其他信息的网页。

一对节点之间的边线可表示该对节点之间的关系。例如,两个用户节点之间的边线可以表示两个用户之间的友谊。另一实例,社交网络系统可结合网页中的一个或多个可选选项或者可选元件(例如,“喜欢”、“签到”)构成概念节点(例如,餐馆、名人)的网页(或者结构文档)。用户可以使用用户的客户端装置承载的网络浏览器访问页面并且选择可选选项或者可选元件,从而使客户端装置将请求传送到社交网络系统以在用户的用户节点与概念的概念节点之间创建边线,从而指示用户与概念之间的关系(例如,用户在餐馆签到,或者用户“喜欢”名人)。

例如,用户可以提供(或者改变)他或她的居住城市,从而使社交网络系统在对应于用户的用户节点与对应于用户宣告为他或她的居住城市的概念节点之间创建边线。此外,任何两个节点之间的分离度被定义为从一个节点到另一节点遍历社交图谱所需的最小跳数。两个节点之间的分离度可被视为由社交图谱中的两个节点表示的用户或者概念之间的关联性的量度。例如,具有通过边线直接地连接的用户节点(即,是一级节点)的两个用户可以描述为“连接用户”或者“好友”。类似地,具有仅通过另一用户节点连接的用户节点(即,是二级节点)的两个用户可以描述为“好友的好友”。

社交网络系统可支持各种应用程序,诸如,照片共享、在线日历和事件、打游戏、即时消息和广告。例如,社交网络系统还可包括媒体共享功能。另外,社交网络系统可允许用户将照片和其他多媒体内容项目张贴至用户的个人资料页面(通常被称为“涂鸦墙”或者“时间轴贴”)或者张贴在相册中,根据用户配置的隐私设置,个人资料页面和相册两者都可以由社交网络系统的其他用户访问。社交网络系统还可以允许用户来配置事件。例如,第一用户可以属性配置事件,该属性包括事件的时间和日期、事件的地点以及被邀请至该事件的其他用户。被邀请的用户可以接收事件的邀请并回应(诸如,接受邀请或拒绝邀请)。此外,社交网络系统可以允许用户保留个人日历。与事件相似,日历条目可包括时间、日期、地点和其他用户的身份。

图7示出了社交网络系统的示例性网络环境700。网络环境700包括通过网络704连接至彼此的客户端装置706、社交网络系统702以及第三方系统708。尽管图7示出了客户端装置706、社交网络系统702、第三方系统708和网络704的具体布置,但是本公开内容考虑了客户端装置706、社交网络系统702、第三方系统708和网络704的任何合适的布置。作为实例而非限制性方式,客户端装置706、社交网络系统702和第三方系统708中的两个或更多个可绕过网络704而直接彼此连接。如另一实例,客户端装置706、社交网络系统702和第三方系统708中的两个或更多个可物理地或逻辑地整体或部分共同位于同一位置。此外,尽管图7示出了客户端装置706、社交网络系统702、第三方系统708和网络704的具体数量,但是本公开内容考虑了任何合适数量的客户端装置706、社交网络系统702、第三方系统708和网络704。作为实例而非限制性方式,网络环境700可包括多个客户端装置706、社交网络系统702、第三方系统708和网络704。

本公开内容考虑了任何合适的网络704。作为实例而非限制性方式,网络704的一个或多个部分可包括自组织网络、内联网、外联网、虚拟专用网络(vpn)、局域网(lan)、无线lan(wlan)、广域网(wan)、无线wan(wwan)、城域网(man)、互联网的一部分、公用交换电话网(pstn)的一部分、蜂窝电话网络或者这些中的两个或更多个的组合。网络704可包括一个或多个网络704。

链路可将客户端装置706、社交网络系统702和第三方系统708连接至通信网络704或者相互连接。本公开内容考虑了任何合适的链路。在具体实施方式中,一个或多个链路包括一个或多个有线线路(诸如,数字用户线路(dsl)或者有线电缆数据服务接口规范(docsis))、无线(诸如,wi-fi或者微波存取全球互通(wimax))、或者光学(诸如,同步光纤网(sonet)或者同步数字系列(sdh))链路。在具体实施方式中,一个或多个链路都包括自组织网络、内联网、外联网、vpn、lan、wlan、wan、wwan、man、互联网的一部分、pstn的一部分、基于蜂窝技术的网络、基于卫星通信技术的网络、另一链路或者两个或更多个这种链路的组合。链路在整个网络环境700中不必相同。一个或多个第一链路可以在一个或多个方面不同于一个或多个第二链路。

在具体实施方式中,客户端装置706可以是包括硬件、软件、或嵌入式逻辑组件或者两个或更多个这样的组件的组合并且能够执行由客户端装置706实现或支持的适当功能的电子装置。作为实例而非限制性方式,客户端装置706可包括计算机系统,诸如,台式计算机、笔记本或便携式计算机、上网本、平板电脑、电子书阅读器、gps装置、照相机、个人数字助理(pda)、手持电子装置、蜂窝电话、智能电话、其他合适的电子装置、或者它们任何合适的组合。本公开内容考虑了任何合适的客户端装置706。客户端装置706可使网络用户在客户端装置706能够访问网络704。客户端装置706可使它的用户能够与在其他客户端装置706处的其他用户通信。

在具体实施方式中,客户端装置706可包括网络浏览器,诸如,微软互联网浏览器(microsoftinternetexplorer)、谷歌浏览器(googlechrome)或火狐浏览器(mozillafirefox),并且可具有一个或多个添加、插件或其他扩展,诸如,工具栏(toolbar)或雅虎工具栏(yahootoolbar)。客户端装置706中的用户可输入将网络浏览器引导至特定服务器(诸如,服务器或者与第三方系统708相关的服务器)的统一资源定位器(url)或者其他地址,并且网络浏览器可生成超文本传送协议(http)请求并且将http请求通信至服务器。服务器可接受http请求并且响应于http请求将一个或多个超文本标记语言(html)文件通信至客户端装置706。客户端装置706可基于来自服务器的html文件渲染用于呈现给用户的网页。本公开内容考虑了任何合适的网页文件。作为实例而非限制性方式,网页可根据具体需要从html文件、可扩展的超文本标记语言(xhtml)文件或者可扩展标记语言(xml)文件进行渲染。这些网页还可执行脚本程序,诸如,例如但不限于,以javascript、java、microsoftsilverlight,诸如ajax(异步javascript和xml)等标记语言和脚本程序组合编写的程序。本文中,在适当的情况下,参考网页包括一个或多个相应的网页文件(浏览器可以用其渲染网页),反之亦然。

在具体实施方式中,社交网络系统702可以是可承载在线社交网络的网络可寻址计算系统。社交网络系统702可生成、存储、接收以及发送社交网络数据,诸如,用户个人资料数据、概念个人资料数据、社交图谱信息或者与在线社交网络相关的其他合适的数据。社交网络系统702可直接地或者经由网络704通过网络环境700的其他组件访问。在具体实施方式中,社交网络系统702可包括一个或多个服务器。每个服务器均可以是单一服务器或跨越多台计算机或多个数据中心的分布式服务器。服务器可以是各种类型的,诸如,例如但不限于,网络服务器、新闻服务器、邮件服务器、消息服务器、广告服务器、文件服务器、应用服务器、交换服务器、数据库服务器、代理服务器、适合于执行在本文中描述的功能或过程的另一服务器、或它们的任意组合。在具体实施方式中,每个服务器可包括硬件、软件、或嵌入式逻辑部件或者两个或更多个这种组件的组合以用于执行由服务器实现或支持的适合功能。在具体实施方式中,社交网络系统702可包括一个或多个数据存储器。数据存储器可用于存储各种类型的信息。在具体实施方式中,可根据特定数据结构组织存储在数据存储器中的信息。在具体实施方式中,每个数据存储器均可以是关系数据库、列式数据库、相关数据库、或其他合适的数据库。尽管本公开内容描述或者示出了具体类型的数据库,但是本公开内容考虑了任何合适类型的数据库。具体实施方式可提供能够使客户端装置706、社交网络系统702或者第三方系统708管理、检索、修改、添加或者删除存储在数据存储器中的信息的接口。

在具体实施方式中,社交网络系统702可将一个或多个社交图谱存储在一个或多个数据存储器中。在具体实施方式中,社交图谱可包括多个节点和连接节点的多条边线,该多个节点可包括多个用户节点(每个用户节点对应于具体用户)或多个概念节点(每个概念节点对应于具体概念)。社交网络系统702可向在线社交网络的用户提供与其他用户通信和交互的能力。在具体实施方式中,用户可以经由社交网络系统702加入在线社交网络,然后添加连接(例如,关系)至其想要连接的社交网络系统702的多个其他用户。本文中,术语“好友”可指的是用户经由社交网络系统702与其形成连接、关联或者关系的社交网络系统702的任何其他用户。

在具体实施方式中,社交网络系统702可向用户提供对通过社交网络系统702支持的各种类型的项目或对象采取行动的能力。作为实例而非限制性方式,项目和对象可包括社交网络系统702的用户可能属于的群体或者社交网络、用户可能感兴趣的事件或日历条目、用户可以使用的基于计算机的应用程序、允许用户经由服务购买或出售项目的交易、用户可以执行的与广告的交互、或者其他合适的项目或对象。用户可与能够在社交网络系统702中或者通过第三方系统708(其独立于社交网络系统702并且经由网络704耦接至社交网络系统702)的外部系统表示的任何事物交互。

在具体实施方式中,社交网络系统702可以能够链接各种实体。作为实例而非限制性方式,社交网络系统702可以能够使用户彼此交互,以及从第三方系统708或者其他实体接收内容,或者允许用户通过应用编程接口(api)或者其他通信信道与这些实体交互。

在具体实施方式中,第三方系统708可包括一个或多个类型的服务器、一个或多个数据存储器、一个或多个接口(包括但不限于api)、一个或多个网络服务、一个或多个内容源、一个或多个网络、或者例如服务器可与其通信的任何其他合适组件。可以由与操作社交网络系统702的实体不同的实体来操作第三方系统708。然而,在具体实施方式中,社交网络系统702和第三方系统708可以彼此结合进行操作以将社交网络服务提供给社交网络系统702或者第三方系统708的用户。在这种意义上,社交网络系统702可以提供平台或者主干网,诸如第三方系统708的其他系统可使用平台或者主干网将社交网络服务和功能通过互联网提供给用户。

在具体实施方式中,第三方系统708可包括第三方内容对象提供商。第三方内容对象商家可包括可以被传达至客户端装置706的内容对象的一个或多个来源。作为实例而非限制性方式,内容对象可包括有关用户感兴趣的事物或活动的信息,诸如,电影放映次数、电影评论、餐馆评论、餐馆菜单、产品信息和评论、或者其他合适的信息。作为另一个实例而非限制性方式,内容对象可包括激励性内容对象,诸如,优惠券、打折票、礼品券、或者其他合适的激励对象。

在具体实施方式中,社交网络系统702还包括用户产生的内容对象,其可以提高用户与社交网络系统702的交互。用户产生的内容可包括用户可添加、上传、发送、或者“张贴(post)”到社交网络系统702的任何事项。作为实例而非限制性方式,用户将帖子从客户端装置706传送至社交网络系统702。帖子可包括诸如状态更新或者其他文本数据、位置信息、照片、视频、链接、音乐或者其他类似数据或媒体的数据。第三方通过诸如新鲜事或者媒体流等“通信信道”还可将内容添加到社交网络系统702。

在具体实施方式中,社交网络系统702可包括各种服务器、子系统、程序、模块、日志以及数据存储器。在具体实施方式中,社交网络系统702可包括下列中的一个或多个:网络服务器、动作记录器、api请求服务器、相关性和排名引擎、内容对象分类器、通知控制器、动作日志、第三方内容对象曝光日志、推理模块、授权/私人性服务器、检索模块、广告目标模块、用户界面模块、用户个人资料存储器、连接存储器、第三方内容存储器或者位置存储器。社交网络系统702还可包括诸如网络接口的合适的组件、安全机构、负载均衡器、故障转移服务器、管理和网络操作控制台、其他合适的组件、或其任何合适的组合。在具体实施方式中,社交网络系统702可包括用于存储用户个人资料的一个或多个用户个人资料存储器。例如,用户个人资料可包括传记信息、人口统计信息、动作信息、社交信息或者其他类型的描述性信息,诸如,工作经历、教育背景、业余爱好或者偏好、兴趣、亲和性或者位置。兴趣信息可包括与一个或多个种类相关的兴趣。种类可以是总体的或者具体的。作为实例而非限制性方式,如果用户“喜欢”关于一个品牌鞋子的物品,该种类可以是该品牌、或者“鞋子”或“衣物”的总体种类。连接存储器可用于存储关于用户的连接信息。连接信息可显示具有相似或者共同工作经历、群体成员关系、业余爱好、教育背景、或者以任何方式与共同属性有关或者享有共同属性的用户。连接信息还可包括不同用户与内容(内部内容和外部内容两种)之间的用户定义的连接。网络服务器可以用于将社交网络系统702经由网络704链接至一个或多个客户端装置706或者一个或多个第三方系统708。网络服务器可包括用于接收和路由社交网络系统702与一个或多个客户端装置706之间的消息的邮件服务器或者其他消息功能。api请求服务器可以允许第三方系统708通过调用一个或多个api来访问来自社交网络系统702的信息。动作日志记录器可以用于接收来自网络服务器的关于用户在社交网络系统702之上或之外的行动的信息。结合动作日志,可以保存用户暴露给第三方内容对象的第三方内容对象日志。通知控制器可以将有关内容对象的信息提供给客户端装置706。信息可作为通知推送给客户端装置706,或者响应于从客户端装置706接收的请求,可以从客户端装置706推送信息。授权服务器可用于执行社交网络系统702的用户的一个或多个隐私设置。用户的隐私设置确定可分享与用户相关的特定信息的方式。授权服务器可以允许用户选择将它们的动作通过社交网络系统702记录或不记录,或者诸如例如通过设置适当的隐私设置由其他系统(例如,第三方系统708)共享。第三方内容对象存储器可用于存储从第三方(诸如,第三方系统708)接收的内容对象。位置存储器可用于存储从与用户相关的客户端装置706接收的位置信息。广告定价模块可将社交信息、当前时间、位置信息、或者其他合适的信息组合,以通过通知形式将相关广告提供给用户。

图8示出了示例性社交图谱800。在具体实施方式中,社交网络系统702可将一个或多个社交图谱800存储在一个或多个数据存储器中。在具体实施方式中,社交图谱800可包括多个节点以及连接节点的多个边线806,该多个节点可包括多个用户节点802或者多个概念节点804。为了启发式的目的,以二维直观图示出了图8中示出的示例性社交图谱800。在具体实施方式中,社交网络系统702、客户端装置706或第三方系统708可访问社交图谱800以及用于适合应用的相关社交图谱信息。例如,在数据存储器(诸如,社交图谱数据库)中社交图谱800的节点和边线可被存储为数据对象。这种数据存储器可包括社交图谱800的节点或边线的一个或多个可搜索或可查询的索引。

在具体实施方式中,用户节点802可对应于社交网络系统702的用户。作为实例而非限制性方式,用户可以是与社交网络系统702或者通过社交网络系统702进行交互或者通信的个体(人类用户)、实体(例如,企业、公司或者第三方应用程序)或者(例如,个人或者实体的)群体。在具体实施方式中,当用户向社交网络系统702注册账号时,社交网络系统702可创建对应于该用户的用户节点802,并且在一个或多个数据存储器中存储用户节点802。在适当情况下,本文中所描述的用户和用户节点802可以称为注册用户以及与注册用户相关的用户节点802。此外或者作为可替换的,在适当情况下,本文中所描述的用户和用户节点802可以称为没有注册社交网络系统702的用户。在具体实施方式中,用户节点802可以与用户提供的信息或者各种系统(包括社交网络系统702)收集的信息相关。作为实例而非限制性方式,用户可以提供他或她的姓名、资料图片、联系信息、出生日期、性别、婚姻状况、家庭状况、职业、教育背景、偏好、兴趣或其他人口统计信息。在具体实施方式中,用户节点802可以与对应于与用户相关的信息的一个或多个数据对象相关。在具体实施方式中,用户节点802可以对应于一个或多个网页。

在具体实施方式中,概念节点804可对应于一个概念。作为实例而非限制性方式,一个概念可对应于一个地点(诸如,电影院、餐馆、地标或城市);网站(诸如,与社交网络系统702相关的网站或者与网络应用服务器相关的第三方网站);实体(诸如,个人、公司、群体、运动队或名人);可位于社交网络系统702内或外部服务器(诸如,网络应用服务器)上的资源(诸如,音频文件、视频文件、数码相片、文本文件、结构化文档或应用程序);不动产或知识产权(诸如,雕塑、绘画、电影、游戏、歌曲、想法、照片或书面著作);游戏;活动;想法或理论;另一个合适的概念;或者两个以上这种概念。概念节点804可以与用户提供的概念信息或者通过各种系统(包括社交网络系统702)收集的信息相关。作为实例而非限制性方式,概念信息可包括:姓名或标题;一个或多个图像(例如,书的封面的图像);位置(例如,地址或地理位置);网站(其可以与url相关);联系信息(例如,电话号码或电子邮件地址);其他合适的概念信息;或者这种信息的任何合适的组合。在具体实施方式中,概念节点804可以与对应于与概念节点804相关的信息的一个或多个数据对象相关。在具体实施方式中,概念节点804可以对应于一个或多个网页。

在具体实施方式中,社交图谱800中的节点可以表示网页(其可被称为“个人资料页面”)或者由网页表示。个人资料页面可以由社交网络系统702承载或者可访问社交网络系统702。个人资料页面还可以在与第三方服务器708相关的第三方网站上承载。作为实例而非限制性方式,对应于具体的外部网页的个人资料页面可以是具体的外部网页,并且个人资料页面可以对应于具体的概念节点804。个人资料页面可以是所有人或者其他用户的选择子集可见的。作为实例而非限制性方式,用户节点802可具有对应的用户个人资料页面,其中,对应的用户可以添加内容,做出声明或者他或她自己的其他表达。作为另一个实例而非限制性方式,概念节点804可具有对应的概念个人资料页面,一个或多个用户可在概念个人资料页面中添加内容,做出声明或者表达他们自己的想法,具体地,涉及与对应于概念节点804的概念。

在具体实施方式中,概念节点804可以表示第三方网页或者由第三方系统708承载的资源。除了其他元素,第三方网页或资源可包括内容、可选择的或其他图标、或者表示动作或活动的其他可交互对象(例如,其可以在javascript、ajax或php编码中实施)中。作为实例而非限制性方式,第三方网页可包括可选择的图标,诸如,“喜欢”、“签到”、“吃”、“推荐”或者另一个合适的动作或活动。浏览第三方网页的用户可以通过选择一个图标(例如,“吃”)来执行动作,导致客户端装置806将指示用户动作的消息发送至社交网络系统702。响应于该消息,社交网络系统702可以在对应于用户的用户节点802与对应于第三方网页或资源的概念节点804之间创建边线(例如,“吃”边线)并且在一个或多个数据存储器中存储边线806。

在具体实施方式中,社交图谱800中的一对节点可以通过一条或多条边线806彼此连接。连接一对节点的边线806可以表示该对节点之间的关系。在具体实施方式中,边线806可包括或表示一个或多个数据对象或者对应于一对节点之间的关系的属性。作为实例而非限制性方式,第一用户可以指示第二用户是第一用户的“好友”。响应于该指示,社交网络系统702可以将“好友请求”发送至第二用户。如果第二用户确认该“好友请求”,则社交网络系统702可以在社交图谱800中创建将第一用户的用户节点802连接到第二用户的用户节点802的边线806,并且在一个或多个数据存储器中存储边线806作为社交图谱信息。在图8的实例中,社交图谱800包括指示用户“a”与用户“b”的用户节点802之间的好友关系的边线806,以及指示用户“c”与用户“b”的用户节点802之间的好友关系的边线。尽管本公开内容描述或示出了具有连接具体用户节点802的具体属性的具体边线806,但是本公开内容考虑了具有连接用户节点802的任何合适属性的任何合适的边线806。作为实例而非限制性方式,边线806可表示友谊、家庭关系、公司或工作关系、爱好者关系、粉丝关系、访客关系、客户关系、上级/下属关系、互惠关系、非互惠关系、另一合适类型的关系或者两个或更多个这种关系。此外,尽管本公开内容总体将节点描述为被连接的,但是本公开内容还将用户或概念描述为被连接的。在本文中,在适当情况下,对于连接的用户或概念的引用可以称为对应于通过一个或多个边线806在社交图谱800中被连接的这些用户或概念的节点。

在具体实施方式中,用户节点802与概念节点804之间的边线806可表示由与用户节点802相关的用户向与概念节点804相关的概念执行的具体动作或活动。作为实例而非限制性方式,如图8中所示,用户可以“喜欢”、“参加”、“播放”、“收听”、“烹饪”、“工作”或“观看”一个概念,其中的每个可以对应于边线的类型或子类型。例如,对应于概念节点804的概念个人资料页面可包括可选择的“签到”图标(诸如,可点击的“签到”图标)或者可选择的“添加到收藏夹”图标。类似地,在用户点击这些图标之后,响应于对应于相应动作的用户的动作,社交网络系统702可创建“收藏夹”边线或“签到”边线。作为另一实例而非限制性方式,用户(用户“c”)可以使用具体的应用程序(spotify,它是在线音乐应用程序)收听具体的歌曲(“rambleon”)。在这种情况下,社交网络系统702可在对应于用户的用户节点802与对应于歌曲和应用程序的概念节点804之间创建“收听”边线806和“使用”边线(如图8中所示),以指示用户听过该歌曲并且使用过该应用程序。此外,社交网络系统702可以在对应于歌曲和应用程序的概念节点804之间创建“播放”边线806(如图8中所示),以指示通过具体的应用程序播放了具体的歌曲。在这种情况下,“播放”边线806对应于通过外部应用程序(spotify)对外部音频文件(歌曲“imagine”)执行的动作。尽管本公开内容描述了具有连接用户节点802和概念节点804的具体属性的具体边线806,但是本公开内容考虑了具有连接用户节点802和概念节点804的任何合适属性的任何合适的边线806。此外,尽管本公开内容描述了表示单一关系的用户节点802与概念节点804之间的边线,但是本公开内容考虑了表示一个或多个关系的用户节点802与概念节点804之间的边线。作为实例而非限制性方式,边线806可表示用户喜欢并且以具体概念使用了边线806。可替换地,另一边线806可表示用户节点802与概念节点804之间(如图8中示出的用户“e”的用户节点802与“spotify”的概念节点804之间)的每个类型的关系(或者多个单一关系)。

在具体实施方式中,社交网络系统702可以在社交图谱800中的用户节点802与概念节点804之间创建边线806。作为实例而非限制性方式,浏览概念个人资料页面(诸如,通过使用由用户的客户端装置706承载的网络浏览器或者专用应用程序)的用户可通过单击或者选择“喜欢”图标指示他或者她喜欢通过概念节点804表示的概念,这可使得用户的客户端装置706将指示用户喜欢与概念个人资料页面相关的概念的消息发送至社交网络系统702。响应于该消息,社交网络系统702可以在与用户相关的用户节点802与概念节点804之间创建边线806,如所示出的,通过用户与概念节点804之间的“喜欢”边线806。在具体实施方式中,社交网络系统702可在一个或多个数据存储器中存储边线806。在具体实施方式中,响应于具体的用户动作,边线806可以自动地由社交网络系统702形成。作为实例而非限制性方式,如果第一用户上传图片,观看电影或者听歌,则边线806可在对应于第一用户的用户节点802与对应于这些概念的概念节点804之间形成。尽管本公开内容描述了以具体的方式形成具体边线806,但是本公开内容考虑了以任何合适的方式形成任何合适的边线806。

在具体实施方式中,广告可以是文本(其可以是html链接)、一个或多个图像(其可以是html链接)、一个或多个视频、音频、一个或多个adobeflash文件、这些的合适的组合,或者以在一个或多个网页上、一个或多个电子邮件中、或者关联用户请求的搜索结果呈现的任何合适的数字格式的任何其他合适的广告。此外或者可替换地,广告可以是一个或多个赞助故事(例如,社交网络系统702上的新鲜事或者即时动态项)。赞助故事可以是广告商通过将该社交动作呈现在用户的个人资料页面的预定区域或者其他页面内,呈现与广告商相关的附加信息,提高或者以其他方式在新闻馈送或者其他用户的即时动态内强调来推广或者以其他方式推广的用户的社交动作(诸如,“喜欢”页面、在页面上的帖子上“喜欢”或者评论、回复与页面相关的事件、为页面上发布的问题投票、在一个地点签到、使用应用程序或者玩游戏、或者“喜欢”或共享网站)。广告商可以付费以推广社交动作。作为实例而非限制性方式,广告可以包括在搜索结果页面的搜索结果之中,在该结果之中,赞助内容高于非赞助内容得到宣传。

在具体实施方式中,可以请求广告在社交网络系统网页、第三方网页、或其他页面内显示。可以在页面的专用部分中(诸如在页面的顶部的横幅区域、在页面的侧面的列中、在页面的gui中、在弹出式窗口中、在下拉菜单中、在页面的输入栏中、在页面的内容的顶部、或者关于页面的其它地方)显示广告。此外或者可替换地,可以在应用程序内显示广告。可以在专用页面内显示广告,这就需要在用户可能访问页面或利用应用程序之前与广告交互或观看广告。例如,用户可通过网络浏览器看广告。

用户可通过任何合适的方式与广告交互。用户可以点击或以其他方式选择广告。通过选择广告,可以将用户(或者由用户使用的浏览器或其他应用程序)引导至与广告相关的页面。用户可在与广告相关的页面上采取其他动作,诸如,购买与广告相关的产品或者服务、接收与广告相关的信息、或者订阅与广告相关的时事通讯。通过选择广告的组件(如“播放按钮”)可以播放具有音频或者视频的广告。可替换地,通过选择广告,社交网络系统702可以执行或者修改用户的特定动作。

广告还可以包括用户可以与其交互的社交网络系统功能。作为实例而非限制性方式,广告可使用户能够通过选择与背书相关的图标或链接“喜欢”或以其他方式支持广告。作为另一实例而非限制性方式,广告可使用户能够搜索(例如,通过执行询问)与广告商相关的内容。类似地,用户可与另一用户(例如,通过社交网络系统702)共享广告或者(例如,通过社交网络系统702)对与广告相关的事件进行rsvp。此外或者可替换的,广告可包括引导向用户的社交网络系统上下文。作为实例而非限制性方式,广告可以显示关于用户在社交网络系统702内的采取与广告的主题相关的动作的好友的信息。

在具体实施方式中,社交网络系统702可以确定各种社交图谱实体彼此的社交图谱亲密度(其在本文中称为“亲密度”)。亲密度可表示与在线社交网络相关的具体对象(诸如,用户、概念、内容、动作、广告、与在线社交网络相关的其他对象、或者其任意合适的组合)之间的关系强度或者兴趣程度。还可确定与第三方系统808或者其他合适系统相关的对象的亲密度。可以建立社交图谱实体对每个用户、主题、或者内容类型的整体亲密度。基于对与社交图谱实体相关的动作或者关系的连续监控可以改变整体亲密度。尽管本公开内容描述了以具体方式确定具体亲密度,但是本公开内容考虑了以任何合适方式确定任何合适亲密度。

在具体实施方式中,社交网络系统702可使用亲密系数(本文中可被称之为“系数”)测量或者量化社交图谱亲密度。系数可表示或者量化与在线社交网络相关的具体对象之间的关系的强度。系数还可表示基于用户感兴趣的动作测量用户将执行具体动作的预测概率的概率或者函数。以此方式,基于用户的之前动作可以预测用户的未来动作,其中,可以至少部分基于用户的动作历史来计算系数。系数可以用于预测任意数量的动作,其可以在在线社交网络内或在在线社交网络外部。作为实例而非限制性形式,这些动作可包括:各种类型的通信,诸如,发送消息、发布内容或评论内容;各种类型的观察动作,诸如,访问或者查看个人资料页面、媒体、或者其他合适的内容;关于两个或更多个社交图谱实体的各种类型的相符合信息,诸如,在相同群体内、加标签于相同照片、在相同位置处签到、或者参与相同事件;或者其他合适的动作。尽管本公开内容描述了以具体方式测量亲密度,但是本公开内容考虑了以任意合适方式测量亲密度。

在具体实施方式中,社交网络系统702可使用各种因素计算系数。例如,这些因素可包括用户动作、对象之间的关系的类型、位置信息、其他合适的因素、或者它们的任何组合。在具体实施方式中,当计算系数时,可以对不同的因素施加不同的权重。每个因素的权重可以是静态的或者权重可以根据例如用户、关系类型、动作类型、用户位置等改变。根据其权重可以组合各种因素的等级,从而确定用户的整体系数。作为实例而非限制性方式,具体用户动作可以被分配评级和权重这两者,同时与具体用户动作相关的关系被分配评级和相关的权重(例如,因此总权重为100%)。为了计算用户对具体对象的系数,被分配给用户动作的等级可包括例如整个系数的60%,而用户与对象之间的关系可包括整个系数的40%。在具体实施方式中,社交网络系统702可考虑确定用于计算系数的各种因素的权重的各种变化,诸如,自从信息被访问后的时间、衰减因素、访问频率、与信息的关系或者与访问的信息的对象的关系、连接至对象的社交图谱实体的关系、用户动作的长短期平均值、用户反馈、其他合适的变化、或者其任意组合。作为实例而非限制性方式,系数可包括促使由具体动作提供的信号的强度随时间衰减的衰减因素,使得在计算系数时越近的动作越相关。基于以系数为基础连续跟踪动作可以连续更新等级和权重。关于对各种因素的等级和被分配给各种因素的权重的分配、组合、平均等,可以采用任意类型的过程或者算法。在具体实施方式中,社交网络系统702可使用基于历史动作和之前用户响应训练的机器学习算法、或者通过将用户暴露于各种选项并且测量响应而从用户获取的数据确定系数。尽管本公开内容描述了以具体方式计算系数,但是本公开内容考虑了以任意合适方式计算系数。

在具体实施方式中,社交网络系统702可基于用户的动作计算系数。社交网络系统702可监视在线社交网络、第三方系统808、其他合适系统、或者其任意组合上的动作。可以跟踪或者监视任意合适类型的用户动作。典型的用户动作包括查看个人资料页面、创建或者发布内容、与内容交互、加入群体、列出并且确认参与事件、在位置处签到、喜欢具体页面、创建页面、并且执行促成社交动作的其他任务。在具体实施方式中,社交网络系统702可基于用户对具体类型内容的动作计算系数。内容可以与在线社交网络、第三方系统808、或者另一合适的系统相关。内容可包括用户、个人资料页面、帖子、新闻报道、大字标题、即时消息、聊天室对话、电子邮件、广告、图片、视频、音乐、其他合适的对象、或者其任意组合。社交网络系统702可对用户动作进行分析,以确定一个或多个动作是否表示对主题、内容、其他用户等的亲密度。作为实例而非限制性方式,如果用户可频繁地发布与“咖啡”或者其变形有关的内容,则社交网络系统702可确定用户对概念“咖啡”具有较高的系数。具体动作或者具体的动作类型可比其他动作分配更高的权重和/或等级,从而可影响整体计算系数。作为实例而非限制性方式,如果第一用户发送电子邮件给第二用户,则该动作的权重或评级会比如果第一用户简单地查看第二用户的用户个人资料页面更高。

在具体实施方式中,社交网络系统702可基于具体对象之间的关系类型计算系数。参考社交图谱800,当计算系数时,社交网络系统702可分析连接具体用户节点802与概念节点804之间的边线806的数量和/或类型。作为实例而非限制性方式,通过配偶类型边线(表示两个用户已结婚)连接的用户节点802可比通过朋友类型边线连接的用户节点802分配更高的系数。换言之,根据分配给具体用户的动作和关系的权重,可以确定关于用户配偶的内容比关于用户朋友的内容具有更高的整体亲密度。在具体实施方式中,当计算对该对象的系数时,用户与另一对象的关系可影响用户的动作的权重和/或等级。作为实例而非限制性方式,如果用户将第一张照片加标签,但是仅喜欢第二张照片,则社交网络系统702可确定用户相对于第二张照片对第一张照片具有更高的系数,因为具有加标签类型关系的内容可比具有喜欢类型关系的内容分配更高的权重和/或等级。在具体实施方式中,社交网络系统702可基于一个或多个第二用户与具体对象的关系计算对第一用户的系数。换言之,其他用户与对象的连接和系数可影响第一用户对该对象的系数。作为实例而非限制性方式,如果第一用户连接至一个或多个第二用户或者第一用户对一个或多个第二用户具有较高系数,并且这些第二用户连接至具体对象或者这些第二用户对具体对象具有较高系数,则社交网络系统702可确定第一用户还应对具体对象具有相对较高的系数。在具体实施方式中,系数可基于具体对象之间的分离度。更低系数可表示第一用户在间接连接至社交图谱800中的第一用户的用户的内容对象中共享兴趣的减少可能性。作为实例而非限制性方式,在社交图谱800中更靠近的社交图谱实体(即,更少隔离度)可比社交图谱800中距离较远的社交图谱实体具有更高的系数。

在具体实施方式中,社交网络系统702可基于位置信息计算系数。在地理上更靠近于彼此的对象可被视为比彼此更远距离的对象更为相关或者更为感兴趣。在具体实施方式中,用户对具体对象的系数可基于对象的位置与用户相关的当前位置(或者用户的客户端装置806的位置)的接近度。第一用户可能对更靠近于第一用户的其他用户或者概念更为感兴趣。作为实例而非限制性方式,如果用户距离机场一英里并且距离加油站两英里,则社交网络系统702可基于机场与用户的接近度确定用户对机场比加油站具有更高的系数。

在具体实施方式中,社交网络系统702可基于系数信息执行关于用户的具体动作。可以使用系数预测用户是否基于用户感兴趣的动作执行具体动作。当生成任何类型的对象并且将任何类型的对象呈现给用户时,诸如,广告、搜索结果、新闻报道、媒体、消息、通知、或者其他合适的对象等可以使用系数。在适当情况下,系数还可以用来对这种对象排列以及排序。以此方式,社交网络系统702可提供与用户的兴趣和当前情况相关的信息,从而增加用户找出该感兴趣的信息的可能性。在具体实施方式中,社交网络系统702可基于系数信息生成内容。可基于用户专用的系数提供或者选择内容对象。作为实例而非限制性方式,系数可以用于为用户生成媒体,其中可向用户呈现用户关于媒体对象具有高整体系数的媒体。作为另一实例而非限制性方式,该系数可用于为用户生成广告,其中,可向用户呈现用户相对于广告对象具有高整体系数的广告。在具体实施方式中,社交网络系统702可基于系数信息生成搜索结果。可以基于与查询用户有关的搜索结果相关的系数将对具体用户的搜索结果打分或者排列。作为实例而非限制性方式,与对应于具有更低系数的对象的结果相比,对应于具有更高系数的对象的搜索结果可在搜索结果页面上排序得更高。

在具体实施方式中,响应于来自具体系统或者具体过程的对系数的请求,社交网络系统702可计算系数。在给定情形中,为了预测用户采取的可能动作(或者可以是主题),任何过程可请求对用户的计算系数。该请求还可包括用于计算系数的各个因素使用的一组权重。该请求可来自于在线社交网络、第三方系统708(例如,经由api或者其他通信信道)、或者来自另一合适系统中运行的过程。响应于该请求,社交网络系统702可计算该系数(或者如果之前已经计算并且存储该系数,则访问该系数信息)。在具体实施方式中,社交网络系统702可测量相对于具体过程的亲密度。不同过程(在线社交网络的内部和外部)可请求具体对象或者一组对象的系数。社交网络系统702可提供亲密度测量,即,与请求亲密度测量的具体过程相关。以此方式,每个过程均接收亲密度测量,即,专用于该过程使用亲密度测量的该不同上下文。

关于社交图谱亲密度和亲密系数,具体实施方式可利用2006年8月11日提交的美国专利申请第11/503093号、2010年12月22日提交的美国专利申请第12/977027号、2010年12月23日提交的美国专利申请第12/978265号以及2012年10月1日提交的美国专利申请第13/632869号中公开的一个或多个系统、组件、元件、功能、方法、操作或者步骤,通过引证结合每一个申请。

在具体实施方式中,在线社交网络的一个或多个内容对象可与隐私设置相关。用于对象的隐私设置(或者“访问设置”)可以诸如与对象相关的任意合适的方式存储在授权服务器上的索引中,以另一合适方式或者其任意组合。对象的隐私设置可使用在线社交网络指定可以如何访问(例如,查看或分享)对象(或者与对象相关的具体信息)。在用于对象的隐私设置允许具体用户访问该对象时,该对象可被描述为相对于该用户是“可见的”。作为实例而非限制性方式,在线社交网络的用户可指定用于用户个人资料页面的隐私设置来识别可访问关于用户个人资料页面的工作经历信息的一组用户,因此不包括其他用户访问该信息。在具体实施方式中,隐私设置可指定“阻挡列表”用户,该“阻挡列表”用户不应被允许访问与该对象相关的某些信息。换言之,阻挡列表可指定对于其而言,对象不可见的一个或多个用户或实体。作为实例而非限制性方式,用户可指定不可以访问与用户相关的相册的一组用户,因此拒绝那些用户访问该相册(尽管也有可能使得未在该组用户内的某些用户也不可以访问该相册)。在具体实施方式中,隐私设置可与具体社交图谱元素相关。社交图谱元素的隐私设置(诸如,节点或边线)可使用在线社交网络来指定可以如何访问社交图谱元素、与社交图谱元素相关的信息或者与社交图谱元素相关的内容对象。作为实例而非限制性方式,对应于具体相片的具体概念节点804可具有隐私设置,该隐私设置指定相片仅可由用户在相片中标记的用户以及它们的朋友访问。在具体实施方式中,隐私设置可允许用户确定采用或确定不采用使它们的动作被社交网络系统702记录或者与其他系统(例如,第三方系统808)共享它们的动作。在具体实施方式中,与对象相关的隐私设置可指定允许访问或拒绝访问的任何合适的粒度。作为实例而非限制性方式,可指定访问或者拒绝访问,具体用户(例如,仅我自己、我的室友和我的老板)、具体分离度内的用户(例如,好友或者好友的好友)、用户群体(例如,游戏俱乐部、我的家人)、用户网络(例如,具体雇主的员工、具体大学的学生或者毕业生)、所有用户(“公共的”)、没有用户(“隐私的”)、第三方系统808的用户、具体应用程序(例如,第三方应用程序、外部网站)、其他合适的用户或者实体、或者其任意组合。尽管本公开内容描述了以具体方式使用具体隐私设置,但是本公开内容考虑了以任意合适方式使用任意合适的隐私设置。

在具体实施方式中,一个或多个服务器可以是用于增强隐私设置的授权服务器/隐私服务器。响应于来自用户(或者其他实体)的针对存储在数据存储器中的具体对象的请求,社交网络系统702可将针对该对象的请求发送至数据存储器。该请求可识别与请求相关的用户,并且如果授权服务器基于与对象相关的隐私设置确定用户被授权访问对象,则可将该请求仅发送至该用户(或者该用户的客户端装置806)。如果请求的用户未被授权访问对象,则授权服务器可防止来自数据存储器的请求对象被检索,或者可防止请求对象被发送至用户。在搜索查询环境中,如果查询用户被授权访问对象,则该对象可仅生成为搜索结果。换言之,该对象必须具有对于查询用户可见的可见度。如果该对象具有对用户不可见的可见度,则该对象可从搜索结果中排除。尽管本公开内容以具体方式描述了增强隐私设置,但是本公开内容考虑了以任意合适方式的增强隐私设置。

参考说明书的具体示例性实施方式,描述了上述说明书。参考本文中讨论的详情,描述了本公开内容的各种实施方式和方面,并且附图示出了各种实施方式。以上描述和附图是说明性的而不被解释为限制性的。描述了许多具体细节以提供对各种实施方式的透彻理解。

在不偏离其精神和基本特征的情况下,其他的或者可替换实施方式可以按照其他具体形式体现。所描述的实施方式在所有方面仅被视为示出性而非限制性。因此,本发明的范围由所附权利要求而非上述描述表示。所有在权利要求的等效物的含义和范围内的变化均包含在其范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1