在即时消息传递期间传输媒体内容的制作方法

文档序号:11779767阅读:202来源:国知局
在即时消息传递期间传输媒体内容的制作方法与工艺



背景技术:

基于分组的通信系统允许诸如个人计算机的设备的用户使用诸如因特网协议(ip)的分组协议跨计算机网络进行通信。基于分组的通信系统可以用于各种类型的通信事件。可以建立的通信事件包括语音呼叫、视频呼叫、即时消息传递、语音邮件,文件传输和其它。

这些系统对用户是有益的,因为它们通常比固定线路或移动网络显著降低成本。长途通信的情况尤其如此。要使用基于分组的系统,用户在其设备上安装并执行客户端软件。客户端软件提供基于分组的连接以及其他功能,如注册和认证。

通信系统允许设备的用户跨诸如互联网的计算机网络进行通信。可以建立的通信事件包括语音呼叫、视频呼叫,即时消息、语音邮件、文件传送和其它。

即时消息传递通信会话允许经由计算机网络在计算机设备的用户之间进行聊天。每个用户可以将文本输入域中,激活发送按钮,从而创建即时消息,该即时消息被传达给另一个用户。

已知网站的网址(以统一资源定位符(url)的形式)可以由发送者在即时消息中传输。接收方在接收到该即时消息后,可以选择选定该url,并将会被引导到网站。通常在发送者的即时消息传递中分享视频托管网站、图像托管网站、社交媒体网站和新闻故事等的链接。



技术实现要素:

根据本公开的第一方面,提供了一种在通过通信网络在多个用户终端之间进行的即时消息传递通信会话期间在网络实体处实现的方法,所述方法包括:通过所述通信网络从一个所述用户终端接收请求,所述请求包括在即时消息传递通信会话期间在即时消息中交换的统一资源定位符;从连接到所述网络的另一网络实体取回与所述统一资源定位符相关联的媒体内容;将取回的媒体内容存储在连接到所述网络的数据存储库中;并且向所述用户终端传输响应,所述响应包括以下之一:(i)数据存储库中存储所取回的媒体内容的位置的至少一个标识符;和(ii)取回的媒体内容。

根据本公开的另一方面,提供了一种包括网络接口和模块的网络实体,其中所述模块被配置为:经由所述网络接口接收在用户终端和至少一个另外的用户终端之间通过通信网络进行的即时消息传递通信会话期间,从用户终端通过通信网络传输的请求,该请求包括在即时消息传递通信会话期间在即时消息中交换的统一资源定位符;从连接到所述网络的另一网络实体取回与所述统一资源定位符相关联的媒体内容;将取回的媒体内容存储在连接到所述网络的数据存储库中;并且向所述用户终端传输响应,所述响应包括以下之一:(i)数据存储库中存储所取回的媒体内容的位置的至少一个标识符;和(ii)取回的媒体内容。

根据本公开的另一方面,提供了一种计算机程序产品,该计算机程序产品被体现在非暂时性计算机可读介质上并且被配置为当在多个用户终端之间通过通信网络进行的即时消息传递通信会话期间在网络实体的处理器上执行时,执行本文所述的任何方法。

根据本公开的另一方面,提供了一种在通过通信网络与至少一个另外的用户终端进行的即时消息传递通信会话期间在用户终端处实现的方法,所述方法包括:在用户终端的显示器上显示在即时消息传递通信会话期间交换的消息;检测到该消息包括统一资源定位符;响应于所述检测,通过所述通信网络自动地向网络实体传输请求,所述请求包括所述统一资源定位符;从所述网络实体接收响应,所述响应包括以下中的至少一个:(i)连接到所述网络的数据存储库中存储与所述统一资源定位符相关联的媒体内容的位置的至少一个标识符;和(ii)与统一资源定位符相关联的媒体内容;以及根据至少与所述统一资源定位符相关联的媒体内容来修改所显示的消息。

提供该发明内容以便以简化的形式来引入下面的具体实施方式中进一步描述的概念的选择。该发明内容不旨在确定所要求保护的主题的关键特征或主要特征,也不旨在用于限定所要求保护的主题的范围。

附图说明

为了更好地理解本公开内容并且显示如何实施本发明,现在将通过举例的方式参考以下附图,其中:

图1示出了通信系统;

图2示出了用户终端的示意图;

图3a示出了由通信客户端应用执行的用于显示媒体内容的过程的流程图;

图3b示出了由网络实体执行的用于向通信客户端应用提供网页元数据的过程的流程图;

图4示出了由通信客户端应用提供的示例客户端用户界面;以及

图5a-e示出根据各种示例性实施例的显示经修改的接收的即时消息的客户端用户界面。

具体实施方式

仅通过示例来描述本公开的实施例。图1示出了包括与用户终端102相关联的第一用户104(用户a)和与用户终端108相关联的第二用户110(用户b)的通信系统100。用户终端102和108可以在通信系统100中通过通信网络106通信,从而允许用户104和110通过通信网络106彼此通信。通信网络106可以是任何合适的网络,其具有在用户终端102和第二用户终端108之间提供通信信道的能力。例如,通信网络106可以是因特网或诸如例如第三代(“3g”)移动网络的高数据速率移动网络的另一类型的网络。

注意,在替代的实施例中,用户终端可以经由图1中未示出的附加中间网络连接到通信网络106。例如,如果用户终端102是移动设备,则它可以经由蜂窝移动网络(图1中未示出),例如gsm或umts网络连接到通信网络106。参与通过通信网络106进行的即时消息传递通信的用户终端可以经由相同或不同类型的网络连接而连接到网络106。例如,用户终端102可以经由wi-fi连接来连接到通信网络106,并且用户终端108可以经由蜂窝移动网络(例如,2g/3g/4g等)连接到通信网络106。

用户终端102可以是例如移动电话,个人数字助理(“pda”),个人计算机(“pc”)(包括例如windowstm,macostm和linuxtmpc),平板计算机,游戏设备或能够连接到通信网络106的其他嵌入式设备。用户终端102被布置为从用户a104接收信息并向用户a104输出信息。

用户终端102执行由与通信系统100相关联的软件提供商提供的通信客户端应用112。通信客户端应用112是在用户终端102中的本地处理器上执行的软件程序。通信客户端应用112执行用户终端102所需要的处理,以便用户终端102通过通信系统100传输和接收数据。在用户终端102处执行的通信客户端应用112可通过数字证书的呈现被认证以通过通信系统进行通信(例如,以证明用户104是通信系统的真正订户,这在wo2005/009019中有更详细的描述)。

用户终端108可以对应于用户终端102。用户终端108在本地处理器上执行对应于在用户终端102中执行的通信客户端应用112的通信客户端应用114。在用户终端108处的通信客户端应用114执行允许用户110通过网络106进行通信所需的处理,其方式与用户终端102处的通信客户端应用112执行允许用户a104通过网络106通信所需的处理相同。用户终端102和108是通信系统中的端点。为了清楚起见,图1仅示出了两个用户(104和110)和两个用户终端(102和108),但是可以在通信系统100中包括更多的用户和用户设备,并且可以使用在各个用户设备上执行的相应的通信客户端在通信系统100上进行通信,如本领域中已知的。

在即时消息传递通信会话期间交换的消息通过网络106传输。连接到网络106的是与上述软件提供商相关联的网络实体(例如,服务器116),因此与服务器116交换数据的通信客户端应用不会暴露于任何病毒、恶意软件,间谍软件或任何其他恶意代码。因此,服务器116在这里被称为“可信服务器”。服务器116包括url预览模块117(将在下面更详细地描述)和用于通过通信网络传输和接收数据的网络接口119。

如图1所示,可信服务器116连接到存储器18,存储器18可以是用于存储数据的数据高速缓存的形式。尽管图1示出了通信网络106中的单个服务器116和单个高速缓存118,服务器116和高速缓存118的功能(下面更详细地描述)可以分布在与通信网络106连接的多个计算设备上,例如在“云计算”环境中。高速缓存可以例如是本领域已知的内容传递网络(cdn)的组件。

图1进一步示出了连接到通信网络106的另一服务器120。服务器120是被配置为将网页存储、处理和传递到客户端设备的web服务器。服务器120不与上述软件提供商相关联,因此在本文中被称为“第三方服务器”。尽管为了清楚起见,在图1中示出了单个第三方服务器120,但是本领域技术人员将意识到,许多第三方服务器可以连接到通信网络106。

图2示出了用户终端108的详细视图,在其上执行通信客户端应用114,用于通过通信系统100进行通信。用户终端108包括中央处理单元(“cpu”)202,诸如屏幕或触摸屏的显示器204、诸如键盘206的输入设备、相机208和触摸屏204连接到所述cpu202。输出音频设备210(例如,扬声器)和输入音频设备212(例如,麦克风)连接到cpu202。显示器204、键盘206、摄像机208、输出音频设备210和输入音频设备212可以集成到用户终端108中,如图2所示。在替代的用户终端中,显示器204、键盘206、相机208、输出音频设备210和输入音频设备212中的一个或多个可以不被集成到用户终端102中,并且可以经由相应的接口连接到cpu202。这种接口的一个例子是usb接口。cpu202连接到诸如用于与通信网络106通信的调制解调器的网络接口224。如图2所示,网络接口224可以集成到用户终端108中。在替代的用户终端中,网络接口224不集成到用户终端108中。用户终端108还包括用于存储如本领域已知的数据的存储器226。存储器226可以是诸如rom的永久存储器。存储器226可以替代地是诸如ram的临时存储器。

用户终端108安装有通信客户端应用114,其中通信客户端应用114存储在存储器226中并且被布置为在cpu202上执行。图2还示出了在cpu202上执行的操作系统(“os”)214。在os214之上运行的是用于上述通信客户端应用114的软件栈216。软件栈示出了i/o层218、客户端引擎层220和客户端用户界面层(“ui”)222。每层负责特定功能。因为每个层通常与其他两个层通信,所以它们被认为被布置成如图2所示的堆叠。操作系统214管理计算机的硬件资源,并经由数据网络接口224处理传输到通信网络106和从通信网络106传输的数据。i/o层218包括音频和/或视频编解码器,其接收输入的编码流并对其进行解码,以便适当地输出到扬声器210和/或显示器204,并且其接收来自麦克风212和/或相机208的未编码的音频和/或视频数据,并将其编码为用于作为流传输到通信系统100的其他终端用户终端。客户端引擎层220处理如上所述的voip系统的连接管理功能,诸如通过基于服务器或p2p地址查找和认证建立呼叫或其他连接。客户端引擎也可能对其中未讨论的其他次要功能负责。客户端引擎220还与客户端用户界面层222进行通信。客户端引擎220可以被布置为控制客户端用户界面层222以经由显示在显示器204上的通信客户端应用114的用户界面向用户终端108的用户呈现信息,并经由用户界面从用户终端108的用户接收信息。

现在将参考图3a,3b和3c以及图4,5a,5b,5c,5d和5e描述在通过通信网络106在多个用户设备(此处另外称为用户终端)之间的通信事件期间实现的方法,其示出了在各种实施例中呈现的示例性的客户端用户界面。

参考参与即时消息传递对话从而在即时消息传递通信会话中在第一用户终端102和第二用户终端108之间传输和接收消息的用户a104和用户b110,来描述本公开的实施例。

在即时消息传递对话期间,消息可以在两个方向(即,从第一用户终端102到第二用户终端108,以及反之亦然)上传输,用户a104响应于接收到来自用户b110的接收的消息而开始新消息的传输,反之亦然。即时消息传递对话可以包括两个以上的用户,并且即时消息可以在对话中的任何用户之间传输。

通信会话中的消息通过通信网络106来传输。

首先参考图3a,图3a是由在第二用户终端108上执行的通信客户端应用114执行的过程300的流程图。

在步骤s302中,通信客户端应用114从第一用户终端102接收即时消息,并且在步骤s304中,通信客户端应用114在第二用户终端108的显示器204上显示的客户端用户界面中显示所接收的消息。

在步骤s306中,通信客户端应用114处理所接收的即时消息以确定所接收的即时消息是否包含url。

如图3所示,如果在步骤s306确定接收到的即时消息不包含url,则处理300结束。

图4示出了由第二用户终端108的显示器204上显示的通信客户端应用114提供的示例客户端用户界面。

客户端用户界面可操作以显示由用户b110输入以在即时消息传递通信会话的消息中传输但尚未被传输的文本。具体地,客户端114经由客户端用户界面显示消息域402,用户b110能够使用例如触摸屏204或键盘206来向消息域402输入文本。客户端用户界面显示可选的发送选项408,用户b110可以在输入该文本后选定发送选项408。作为响应,客户端114创建包含输入文本的消息,并且经由通信网络106将创建的消息传输到第一用户终端102。如图4所示,客户端用户界面包括区域406,在即时消息传递通信会话期间在区域406中显示传输和接收的消息。

图4示出了由第二用户终端108从第一用户终端102接收的三个即时消息。如图4所示,第三即时消息包括url410“http://www.exampleurl.com”。

返回参考图3a,如果在步骤s306确定接收到的即时消息确实包含url,则过程300进行到步骤s308。在步骤s308,通信客户端应用114通过通信网络106向可信服务器116传输对元数据的请求,该请求指定在步骤s306检测到的url。

现在参考图3b,图3b是由url预览模块117在可信服务器116上执行的过程320的流程图。

在步骤s322,url预览模块117经由网络接口119接收对元数据的请求,该请求对应于上述参考过程s300的步骤s308所描述的由通信客户端应用114传输的请求。

在步骤s324,url预览模块117确定是否先前已经分析了由在步骤s322接收到的请求中的url识别的内容。

如果url预览模块117在步骤s324确定其先前没有分析由在步骤s322中接收到的请求中的url识别的内容,则处理进行到步骤s326。

在步骤s326,url预览模块117分析由url识别的内容以确定与该url相关联的元数据。术语“元数据”在本文中用于指代与第三方媒体内容相关联或描述第三方媒体内容的数据。

应当理解,url可以指向html网页。在这种场景中,在步骤s326,url预览模块117与第三方服务器120进行通信,以下载由url标识的网页的html页面源代码文本,并对下载的html页面源代码文本执行html页面解析处理。url预览模块117可以下载由url标识的网页的完整的html页面源代码文本,或者仅仅是准备url预览图片/缩略图所需的源代码文本的部分(用于直接链接到图像、视频、文档、存档、可执行文件等)。html页面解析处理包括从html页面源代码文本中提取元数据。html页面解析的过程对于本领域技术人员来说是众所周知的,因此这里没有详细描述。

应当理解,url可以直接指向内容(例如图像、视频、归档、文档等)。在这种场景中,在步骤s326,url预览模块117与第三方服务器120进行通信,以下载请求中的url可访问的内容。一旦将内容下载到可信服务器116,url预览模块117就能够确定与该内容相关联的元数据。

在步骤s326确定的元数据包括已被分析的url,并且可以根据url所指向的内容的类型包括以下属性中的一个或多个:

(i)网页上的标题-例如视频、图像、文本段(例如新闻故事)的标题。

(ii)与经分析的url相关联的网站图标(favicon)(小图标)的url。

(iii)可以表示分析的url所指向的内容的图像的url。

(iv)由经分析的url所指向的内容的描述(例如html页面,但也可以是:图像、视频、文档、存档、可执行文件)。

(v)经分析的url所指向的内容类型的指示,例如网页上的文本的html,网页上显示的图像的jpeg,以及在网页上可播放的视频的mpeg-4。

(vi)类别-提供url所指向的内容的分类。这通知通信客户端应用应该使用哪个可视化模板来提供url的预览。

(vii)用户名-当url是社交媒体网页时适用,这样就可以指示网页上的数据的所有者,由此所有者使用用户名登录他们的社交媒体账户。

(viii)用户图片-当url是社交媒体网页时适用,网页上的数据的所有者用来向其他用户表示其自己的图像(例如头像)的url。

(ix)简档名称-当url是社交媒体网页时适用,这样就可以指示网页上数据的所有者,由此所有者使用简档名称来向其他用户标识其自己。

(x)创建时间-指示创建内容的时间,取决于创建内容后所经过的时间,这可以指定内容创建的确切时间,或指定内容创建之后经过的时间。

(xi)大小–当经分析的url直接指向内容(例如图像、视频、存档、文档等)时适用,给出内容的大小的指示。

(xii)持续时间-适用于直接指向视频内容的url(例如,到存储在网络106中的存储位置的视频文件的直接链接),给出了可在网页上播放的视频长度的指示。

(xiii)状态代码-由url预览模块117传输到第三方服务器120的请求可能由于几个原因而失败(例如:给定的url不再有效,访问被拒绝,例如所需的授权,站点使用一个不正确/过时的ssl证书)。此属性用于向通信客户端应用通知关于url预览生成失败的原因。

(xiv)价格-当url是在线零售商的网页时适用。

一旦url预览模块117分析了由url标识的内容以确定与url相关联的元数据,则处理320进行到步骤s330,其中url预览模块117将提取的元数据(从html页面解析过程输出)存储在服务器116上的存储器中和高速缓存118(持久存储)中。

在url指向html网页的场景中,url预览模块117能够根据所提取的url的元数据确定所提取的元数据包括由第三方服务器120存储的可被一个或多个另外的url访问的媒体内容的指示。响应于确定所提取的元数据包括由第三方服务器120存储的可由一个或多个另外的url访问的媒体内容的指示,在步骤s332,url预览模块117与存储该媒体内容的第三方服务器120通信以访问在另外的url处可访问的内容。一旦取回媒体内容,则url预览模块117在步骤s334将媒体内容存储在高速缓存118中。

应当理解,在url直接指向内容的情况下,步骤s332不被执行,因为url预览模块117获取媒体内容作为步骤s326的一部分。

不管在步骤s326或s332是否取回媒体内容,在步骤s334,url预览模块117将取回的媒体内容存储在高速缓存118中。

在实施例中,url预览模块117可以以从第三方服务器120取回的形式在步骤s334将媒体内容存储在高速缓存118中。

在步骤s336,url预览模块117传输高速缓存118中的在步骤s334中存储了媒体内容的存储位置的指示。在步骤s336,url预览模块117还可以传输在步骤s326确定的其他元数据。

返回步骤s324,可以看出,通过确定包含url(在步骤s322接收到的请求中识别)的元数据是否存储在服务器116的存储器中,url预览模块117能够确定是否先前对由步骤s322接收到的请求中的url标识的网页执行了html页面解析过程。

如果url预览模块117在步骤s324确定其先前对由步骤s322接收到的请求中的url标识的网页执行了html页面解析过程,则url预览模块117从服务器116上的存储器中取回先前提取的元数据,然后过程320进行到步骤s336。

参考回至由在第二用户终端108上执行的通信客户端应用114执行的过程300(图3a所示)。

在步骤s310,通信客户端应用114从可信服务器116接收元数据。该元数据对应于上述参考过程s320的步骤s336所述的url预览模块117传输的元数据。

在步骤s311,通信客户端应用114检测到从可信服务器116接收到的元数据包括可由一个或多个url访问的高速缓存118中存储的媒体内容的指示。例如,网站图标的url、视频或其他图像的预览图像的url或用户图片的url。

在步骤s312,对于在步骤s311检测到的每个url,通信客户端应用114自动地(没有与通信客户端应用114的任何用户交互)向高速缓存118传输对媒体内容的请求,该请求包括在步骤s311中检测到的url。

在步骤s314,通信客户端应用114从在步骤s312请求的高速缓存中接收媒体内容。

在步骤s316,通信客户端应用114根据在步骤s310接收的元数据和在步骤s314接收的媒体内容中的至少一个修改在步骤s304显示的即时消息,以提供url的预览。通信客户端应用114显示元数据和媒体内容的方式在通信客户端应用程序114中被预配置。

虽然上面已经描述了,url预览模块117可以以从第三方服务器120取回的形式在步骤s334将媒体内容存储在高速缓存118中。发明人已经认识到,该媒体内容可以是高分辨率,因此具有大的数据大小,因此可能不适合于通信客户端应用114以其原始形式访问媒体内容。例如,由于第二用户终端的显示器204的大小意味着它只能以有限的分辨率显示媒体内容的事实,和/或可信服务器116与第二用户终端108之间通过通信网络的网络连接的能力,会由于网络连接的低数据速率而导致差的性能。可选地,可信服务器116可以在通过缩放图像以减小其数据大小而将媒体内容存储在高速缓存118中之前来优化媒体内容。该可选优化可以基于检测到的第二用户终端108的设备能力和/或可信服务器116与第二用户终端108之间的网络连接的检测的特性。

通信客户端应用114可以对在步骤308中传输到可信服务器116的元数据的请求中识别第二用户终端108的设备能力和/或检测到的可信服务器116与第二用户终端108之间的网络连接的特性。

第二用户终端108的设备能力可以包括显示器204的分辨率、在第二用户终端108上执行的通信客户端应用114的版本中的一个或多个。可信服务器116和第二用户终端108之间的网络连接的特性可以包括网络连接类型(例如wi-fi或诸如gsmedge-evolution、umts、lte等的移动连接),网络连接的速度和网络连接的延迟中的一个或多个。

现在参考示出在各种实施例中呈现的示例性的客户端用户界面的5a,5b,5c,5d和5e。

图5a示出了响应于在接收的im消息中检测到视频托管网站的url“http://www.exampleurl.com/video”,通信客户端应用114呈现的客户端用户界面。

在图5a的示例中,在步骤s310从可信服务器116接收的元数据包括url“http://www.exampleurl.com/video”、视频的标题、高速缓存118中的视频的预览图像的存储位置的url和在高速缓存118中网站图标的存储位置的url。根据上述实施例,通信客户端应用114向高速缓存118传输对该网站图标的请求(包括在所接收的元数据中标识的该网站图标的url的请求)以及对该高速缓存118的预览图像的请求(该请求包括在接收的元数据中标识的缩略图图像的url)。响应于传输这些请求,通信客户端应用114从高速缓存118接收网站图标和缩略图图像。

通信客户端应用114根据接收的元数据和媒体内容来修改在客户端用户界面中显示的接收到的即时消息。

如图5a所示,在区域501中,所接收的即时消息被替换为接收的缩略图502图像、视频的标题503、url504和接收的网站图标505。如图5a所示,视频的标题503、url504和接收的网站图标505都可以覆盖在所显示的缩略图502上。

图5b示出了响应于检测到新闻网站的url“http://www.exampleurl.com/news_story”而由通信客户端应用114呈现的客户端用户界面。

在图5a的示例中,在步骤s310从可信服务器116接收的元数据包括url“http://www.exampleurl.com/news_story”,新闻故事的标题和高速缓存118中的网站图标的存储位置的url。在该示例中,接收的元数据不包括高速缓存118中的与新闻故事相关联的缩略图图像的存储位置的url。根据上述实施例,通信客户端应用114向高速缓存118传输对该网站图标的请求(该请求包括在所接收的元数据中标识的该网站图标的url)。响应于传输该请求,通信客户端应用114从高速缓存118接收该网站图标。

通信客户端应用114根据接收的元数据和媒体内容来修改在客户端用户界面中显示的接收到的即时消息。

如图5b所示,在区域511中,接收到的即时消息被新闻故事513的标题、url514和与url“http://www.exampleurl.com/news_story”相关联的收到的网站图标515所代替。

图5c示出响应于检测到图像托管网站的url而由通信客户端应用114呈现的客户端用户界面。“http://www.exampleurl.com/image”在接收到的im消息中。

在图5c的示例中,在步骤s310从可信服务器116接收到的元数据包括url“http://www.exampleurl.com/image”、图像的标题和网站图标的url,以及在高速缓存118中在url“http://www.exampleurl.com/image”上显示的图像的存储位置的url。根据上述实施例,通信客户端应用114向高速缓存118传输对该网站图标的请求(包括在所接收的元数据中标识的该网站图标的url的请求),以及对高速缓存118的图像的请求(该请求包括在所接收的元数据中标识的图像的url)。响应于传输这些请求,通信客户端应用114从高速缓存118接收网站图标和缩略图图像。

通信客户端应用114根据接收的元数据和媒体内容来修改在客户端用户界面中显示的接收到的即时消息。

如图5c所示,在区域521中,所接收的即时消息被替换为接收的缩略图522图像、图像523的标题、url524和与url“http://exampleurl.com/image”相关联的接收到的网站图标525。如图5c所示,图像523,url524和网站图标525的标题都可以覆盖在显示的缩略图522上。

图5d示出了响应于检测到在接收到的im消息中的社交媒体网站的url“http://www.exampleurl.com/bruno_noname/post”而由通信客户端应用114呈现的客户端用户界面。

在图5d的示例中,在步骤s310从可信服务器116接收到的元数据包括url“http://www.exampleurl.com/bruno_noname/post”、社交媒体帖子的图像在高速缓存118中的存储位置的url,网站图标在高速缓存118中的存储位置的url、创建时间、简档名称、用户名以及用户图片在高速缓存118中的存储位置的url。根据上述实施例,通信客户端应用114将对于社交媒体帖子的图像的请求传输到高速缓存118(该请求包括在接收的元数据中标识的社交媒体帖子的图像的url),将对于网站图标的请求传输到高速缓存118(请求包含在接收到的元数据中标识的网站图标的url),向高速缓存118传输对用户图片的请求(该请求包括在所接收的元数据中标识的用户图片的url)以及对社交媒体帖子的缩略图图像的请求。响应于传输这些请求,通信客户端应用114从高速缓存118接收网站图标、用户图片和缩略图图像。

通信客户端应用114根据接收的元数据和媒体内容来修改在客户端用户界面中显示的接收到的即时消息。

如图5d所示,在区域531中,所接收的即时消息被接收到的社交媒体帖子532的缩略图图像、url534、与url相关联的网站图标535、创建时间536、简档名称537、用户名538和接收的用户图片539替代。

图5e示出了响应于检测到显示在接收的im消息中的地图图像的网页的url而由通信客户端应用114呈现的客户端用户界面。

在图5e的示例中,在步骤s310从可信服务器116接收到的元数据包括网页的url、地图图像在高速缓存118中的存储位置的url,以及显示在url处的网页的地图图像的标题(例如显示在url处的网页上的映射图中示出的地址或位置)。

根据上述实施例,通信客户端应用114将对地图图像的请求传输到高速缓存118。响应于传输该请求,通信客户端应用114从高速缓存118接收地图图像。

通信客户端应用114根据接收的元数据和媒体内容来修改在客户端用户界面中显示的接收到的即时消息。

如图5e所示,在区域541中,接收到的即时消息被地图图像的缩略图图像542和地图图像的标题543替代。

在步骤s306中检测到的url可以以多种方式显示在修改后的即时消息中。在步骤s306所检测到的全长url可以显示在修改后的即时消息中,如图5b和图5c所示。在其他实施例中,通信客户端应用114被配置为仅在修改的即时消息中显示检测到的url的域名(域加域后缀),如图5a所示。在其他实施例中,通信客户端应用114被配置为仅在所修改的即时消息中显示检测到的url的域,如图5d所示。在其他实施例中,如图5e所示,通信客户端应用114被配置为完全不显示检测到的url(即,不以其原始或修改的形式显示)。通信客户端应用114在修改图像中显示步骤s306处检测到的url的方式可以由通信客户端应用114的软件提供商来配置。

以上已经参考两阶段方法描述了实施例,其中通信客户端应用114(i)传输对由所接收的即时消息中的url指向的网页的元数据的请求;和(ii)将请求传输到高速缓存118以便取回元数据中标识的媒体内容。这种两阶段方法的优点在于它可以由包括任何基于web的通信客户端应用的任何通信客户端应用来支持。然而,由于可信服务器116将媒体内容保存到高速缓存118所花费的时间,两阶段方法的等待时间可能受损。

本公开的实施例扩展到多部分响应方法,由此通信客户端应用114向可信服务器116发送单个请求,该请求指定在所接收的即时消息中检测到的url。在多部分响应方法中,url预览模块117一旦对url预览模块117都可用,就将单个响应(包括元数据和媒体内容)发送到通信客户端应用114。

也就是说,一旦在html页面源代码文本上执行html页面解析过程之后提取了元数据数据,并且已经从第三方服务器120下载了提取的元数据中标识的所有图像,则包括提取的元数据和图像的单个响应从url预览模块117传输到通信客户端应用114。

一旦下载的图像已被url预览模块117优化,则单个响应可以被传输。

在多部分响应方法中,url预览模块117不等待直到在将响应传输到通信客户端应用114之前图像已经保存在高速缓存118中。

应当意识到,在多部分响应方法中,url预览模块117将媒体内容(在单个响应中)传输到通信客户端应用114,而不是高速缓存118中的媒体内容可以由通信客户端应用114访问的存储位置的指示。

多部分响应方法的优点在于,与上述两阶段方法相比,其实现较低的等待时间,因为通信客户端应用114不必等待媒体内容向高速缓存118的传送的完成。本领域技术人员应当意识到,基于web的通信客户端应用不能处理多部分响应,因此基于web的通信客户端应用应当使用上述的两阶段方法。原生通信客户端应用(例如,对于ios,windowsmobile,macos,windows等)将在步骤s308向传输到可信服务器116的请求添加特殊报头字段,以将它们的能力(即它们对消耗多部分响应的准备)通知url预览模块117。基于web的通信客户端应用不会将该报头字段添加到请求中,因此可信服务器116能够相应地进行响应。

根据上述实施例,通信客户端应用114通过利用媒体内容增强消息来提供在所接收的即时消息中检测到的url的预览,以使得在即时消息传递通信会话期间url的共享更具吸引力。

根据上述实施例,通信客户端应用114不与第三方服务器120通信。与第三方服务器120的所有通信由可信服务器116执行。因此,为了修改接收到的包含url的即时消息,该通信客户端应用114仅需要与可信服务器116和高速缓存118通信(在两级方法中)。这有利地确保维护用户b110的隐私,即他的ip地址和其他私人身份信息不与第三方服务器120共享。此外,第二用户终端108在生成修改后的即时消息时不暴露于任何非法内容或任何病毒、恶意软件、间谍软件或任何其他恶意代码。在实施例中,如果可信服务器116确定在步骤s322中接收到的请求中标识的url指向有害/非法内容,则可信服务器116被配置为:在步骤s336中在传输到通信客户端应用114的元数据中通过类别属性将该知识传递给通信客户端应用114(例如类别:[有害|非法])。

在某种场景中,url的确定的元数据可以不包括对图像的任何引用。例如,url可以指向私人存储空间,因此url预览模块117不能访问内容,因为需要用户的授权来访问该内容。在这种场景中,内容不会从私人存储空间中获取,但是仍然可以确定与url相关联的元数据(例如,文件格式、链接指向的内容的类型以及托管该内容的托管服务)并将其返回到通信客户端应用114。响应于接收该元数据,通信客户端应用114可以通过显示表示文件格式、内容类型和托管服务的预定图标来修改所显示的即时消息以提供url的预览。

在上述实施例中,包含url410的接收消息不包括任何其他文本。应当理解,接收到的消息可以是复合消息,即它包括文本和url410,例如“checkthisout:http://www.exampleurl.com”。如上所述,在步骤s306中,通信客户端应用114处理所接收的即时消息,以确定所接收的即时消息是否包含url。因此,在上述实施例中,通信客户端应用114可操作以修改接收到的包括url410的即时消息,而不管所接收的即时消息是否包括其他文本。在替代的实施例中,只有在接收到的消息不包含其他文本(即不是复合消息)时,通信客户端应用114可操作以修改包含url410的接收到的即时消息。

虽然上面已经参考通信客户端应用114修改包含url410的接收的即时消息来描述实施例。本公开的实施例还扩展到显示的包括url410的传输的即时消息的修改。

上面参考用户a104和用户b110参与即时消息传递对话来描述本公开的实施例。由通信客户端应用114提供的客户端用户界面在显示器204的可用区域400中显示包括传输和接收的消息的内容。如图4所示,显示器的可用区域是整个显示器。然而,设想显示器的可用区域(即客户端108可用的区域)可以仅构成显示器的一部分,例如,其中显示器的其余部分被操作系统和/或其上执行以显示其他内容的其它应用使用。

虽然上面已经参考在两个用户之间进行的即时消息传递通信会话描述了实施例。应当意识到,实施例扩展到群组即时消息传递通信会话,由此三个或更多个用户参与。

以上已经描述了本公开的第一方面。

该方法还可以包括确定与统一资源定位符相关联的元数据,以确定存储媒体内容的另一网络实体上的存储位置。

统一资源定位器可以指代超文本标记语言(html)网页,并且确定网页的元数据可以包括:访问与统一资源定位符相关联的网页以取回网页的源代码文本;并解析取回的网页的源代码文本。

取回与所述统一资源定位符相关联的媒体内容可以包括使用从所述解析步骤识别的至少一个另外的统一资源定位符从所述另外的网络实体取回所述媒体内容。

从另外的网络实体取回的媒体内容可以包括以下中的一个或多个:与该网页相关联的网站图标;作为网页上的数据的所有者的用户的图像;以及网页上显示的图像。

统一资源定位符可以指由另外的网络实体存储的媒体内容。

取回与统一资源定位符相关联的媒体内容可以包括从另外的网络实体取回图像。

确定与统一资源定位符相关联的元数据可以包括确定与取回的图像相关联的元数据。

该方法还可以包括在将取回的媒体内容存储在数据存储库之前优化所取回的媒体内容。

优化所取回的媒体内容可以包括对媒体内容进行重新缩放以减少其数据大小。

该方法还可以包括基于检测所述用户终端的能力和/或检测用户终端和网络实体之间的通过通信网络的网络连接的特性来执行所述优化。

所述用户终端的能力可以包括用户终端上的显示器的分辨率。

该请求还可以包括所述用户终端的能力的指示,所述方法还包括基于所接收到的请求而检测所述用户终端的能力。

网络连接的特性包括网络连接类型。

该请求还可以包括网络连接的特性的指示,该方法还包括基于接收到的请求检测网络连接的特性。

在其中响应包括确定的元数据和存储取回的媒体内容的数据存储库中的位置的至少一个标识符的实施例中,该方法可以包括延迟响应的传输,直到所取回的媒体内容已被存储在数据存储库中。

在其中响应包括所确定的元数据和取回的媒体内容的实施例中,该方法可以包括传输响应,而不管取回的媒体内容在数据存储库中的存储是否完成。

该方法还可以包括确定与统一资源定位符相关联的媒体内容被存储在另一网络实体上的私人存储位置;并且响应于所述确定,向所述用户终端传输响应,仅包括所确定的元数据。

通信网络可以是基于分组的网络。

图3a和图3b中分别示出的步骤可以或可以不被实现为单独的步骤。

通常,本文描述的任何功能可以使用软件、固件、硬件(例如,固定逻辑电路)或这些实现的组合来实现。本文所用的术语“控制器”,“功能”,“组件”,“模块”和“应用”通常表示软件、固件、硬件或其组合。在软件实现的情况下,控制器、功能、组件、模块或应用表示在处理器(例如一个cpu或多个cpu)上执行时执行指定任务的程序代码。程序代码可以存储在一个或多个计算机可读存储器设备中。下面描述的技术的特征是平台无关的,这意味着这些技术可以在具有各种处理器的各种商业计算平台上实现。

例如,用户终端还可以包括使得用户终端的硬件执行操作的实体(例如,软件),例如处理器功能块等等。例如,用户终端可以包括计算机可读介质,其可以被配置为维护引起用户终端且更具体地用户终端的操作系统和相关联的硬件来执行操作的指令。因此,该指令用于配置操作系统和相关联的硬件以执行操作,并且以这种方式导致操作系统和相关联的硬件的变换以执行功能。指令可以由计算机可读介质通过各种不同的配置提供给用户终端。

计算机可读介质的一种这样的配置是信号承载介质,因此被配置为例如经由网络将指令(例如,作为载波)传输到计算设备。计算机可读介质还可以被配置为计算机可读存储介质,因此不是信号承载介质。计算机可读存储介质的示例包括随机存取存储器(ram)、只读存储器(rom)、光盘、闪速存储器、硬盘存储器以及可以使用磁性、光学和其它技术来存储指令和其他数据的任何其他存储器设备。

虽然已经以对结构特征和/或方法动作特有的语言描述了主题,但是应当理解,所附权利要求中限定的主题不一定限于上述具体特征或动作。相反,上述的具体特征和动作被公开为实现权利要求的示例形式。

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