控制电子消息及其在传递之后的响应的计算机系统和方法与流程

文档序号:18226627发布日期:2019-07-19 23:30阅读:170来源:国知局
控制电子消息及其在传递之后的响应的计算机系统和方法与流程

本公开总体涉及改善消息传递设备、系统和/或平台的性能,这是通过修改能力并向这样的设备、系统和/或平台提供非本机功能,以用于用来控制消息在它们从发送设备或服务器的传递之后的能力和功能的新颖且改进的框架。



背景技术:

电子邮件和消息传递服务通常依赖于“射后不理(fire-and-forget)”范例,其中一旦消息被发送,则发送者就失去对对话的控制。在如果用户的消息未得到回复则用户需要采取特定动作的情况下,这种范例非常不理想。

例如,用户已经申请了多家公司的工作。用户将期望在特定时间帧内接收到响应,并且如果没有从他/她的最佳选择接收到回复,则用户可能决定接受竞争录取通知。另一更经典的场景涉及聚会计划,其中用户发送邀请客人参加聚会的电子邮件。在发送邀请之后,用户期望接收被邀请者的及时响应,被邀请者通常被要求及时响应。在这两个示例(或场景)中,责任仅在于发送用户通过向尚未回复的接受者发送提醒来记住跟进(followup)先前的电子邮件。随着等待响应的电子邮件的数量的增加,以及在跟踪可能已经响应的用户时的混乱,此任务变得繁琐且容易出错。



技术实现要素:

本公开提供了一种新颖的消息传递框架,用于高效地监测和跟踪针对其用户期望和/或需要回复的消息。出于本公开的目的,这些类型的消息将被称为“rsvp”消息。所公开的系统和方法实现了该消息传递框架,其包括与rsvp消息的生命周期中的两个阶段相关的若干计算机化组件:阶段1包括将传出消息标识为rsvp消息,并且阶段2包括管理这些rsvp消息直到已接收到“满意”回复。

根据一些实施例,如下面更详细讨论的,阶段1涉及自动地分析传出消息,并且基于包括标识消息内的文本、内容或其他数据的这种分析,将消息标识为rsvp消息-这意味着需要跟进。在一些实施例中,该标识过程还可以涉及向发送用户呈现选项,该选项使得用户能够设置将发送跟进的日期。在一些实施例中,基于所分析的消息的数据自动地确定对跟进消息的日期的标识,其触发阶段1,这将在下面更详细地讨论。

然后,阶段2涉及维护rsvp消息的列表(例如,对所传递的消息的指针、消息的副本等,存储在服务器和/或发送设备的数据库中)以确定是否接收到响应,以及接收到的响应是否“满意”。该维护的列表包括以下信息:i)指示接收到的响应消息中的数据是否构成“满意的响应”(即解决rsvp消息的上下文的消息)、ii)在截止日期接近或经过时通知发送用户的信息、以及iii)提供可以作为跟进而发送的自动生成的消息的信息。

因此,所公开的系统和方法使得传递消息能够由发送设备(例如,客户端或服务器设备)自动地监测和控制。这为消息传递平台提供了附加功能,包括但不限于在传递之前或传递时自动地确定哪些消息需要跟进(如下所述),然后在传递之后并且确定该跟进将发生时,自动地使得这类跟进发生(通过向用户提供跟进的选项或者自动地跟进而无需用户输入)。因此,在一些实施例中,所公开的消息传递框架提供了一种计算机化解决方案,用于自动地管理用户的收件箱以及从其发送和接收的消息,从而确保以及时的方式处理具有未完成或拖欠回复的任何传出消息。

本公开提供了对重要邮件“穿过裂缝(throughthecracks)”而从用户的收件箱/发件箱掉落的现有问题的解决方案。如本文所讨论的,所公开的技术使得传出消息能够由发送设备、消息传递平台、执行消息传递平台的应用或其某种组合来自动管理,从而确保对所传递的消息的控制得到维持,直到已经接收到适当响应为止。这确保了重要消息或甚至仅需要回复的消息被及时地给予接收者所需的正确的相应关注。

根据一个或多个实施例,本公开提供了用于执行本文所讨论的消息传递框架的计算机化方法,以及用于执行消息传递框架的上述技术步骤的非暂态计算机可读存储介质。非暂态计算机可读存储介质具有有形地存储在其上,或者有形地编码在其上的计算机可读指令,这些计算机可读指令在由设备(例如,消息传递服务器、客户端设备等)执行时,使得至少一个处理器执行用于控制消息在它们从发送设备或服务器的传递之后的能力和功能的新颖且改进的框架的方法。

根据一个或多个实施例,提供了一种系统,包括被配置为提供根据这样的实施例的功能的一个或多个计算设备。根据一个或多个实施例,功能被体现在由至少一个计算设备执行的方法的步骤中。根据一个或多个实施例,由计算设备的(一个或多个)处理器执行以实现根据一个或多个这样的实施例的功能的程序代码(或程序逻辑)被体现在非暂态计算机可读介质中、由非暂态计算机可读介质体现和/或在非暂态计算机可读介质上体现。

附图说明

根据如附图中所示的实施例的以下描述,本公开的前述内容和其他目的、特征和优点将是明显的,其中,附图标记在各个视图中指代相同的部分。附图不一定按比例绘制,而是将重点放在示出本公开的原理:

图1是示出根据本公开的一些实施例的在其中可以实现本文讨论的系统和方法的网络的示例的示意图;

图2描绘了示出根据本公开的一些实施例的客户端设备的示例的示意图;

图3是示出了根据本公开的实施例的示例性系统的组件的示意性框图;

图4是示出根据本公开的一些实施例执行的步骤的流程图;

图5a-5d示出了根据本公开的一些实施例的消息控制功能的非限制性实施例;

图6是示出根据本公开的一些实施例执行的步骤的流程图;以及

图7是示出了根据本公开的一个或多个实施例的示例性硬件设备的架构的框图。

具体实施方式

现在将在下文中参考附图更全面地描述本公开,附图形成本公开的一部分,并且通过图示的方式示出了某些示例实施例。然而,主题可以以各种不同的形式体现,因此,所涵盖或要求保护的主题旨在被解释为不限于本文所述的任何示例实施例;提供示例实施例仅用于说明。同样,所要求保护或涵盖的主题的范围旨在相当广泛。除其他项外,例如,主题可以被体现为方法、设备、组件或系统。因此,实施例可以例如采用硬件、软件、固件或其任何组合的形式(除软件本身之外)。因此,以下详细描述不应被视为限制意义。

在整个说明书和权利要求书中,术语可以具有超出所明确说明的含义的在上下文中建议或暗示的细微差别的含义。同样地,如本文使用的短语“在一个实施例中”不一定指代同一实施例,并且如本文使用的短语“在另一实施例中”不一定指代不同的实施例。例如,所要求保护的主题旨在包括整个或部分示例实施例的组合。

通常,术语可以至少部分地从上下文中的使用来理解。例如,如本文所使用的诸如“和”、“或”或“和/或”之类的术语可包括多种含义,这些含义可以至少部分地取决于使用这些术语的上下文。通常,“或”如果用于关联列表(例如a、b或c),则意指a、b和c,此处以包含性意义使用,以及a、b或c,此处以排他性含义使用。此外,至少部分地取决于上下文,如本文所使用的术语“一个或多个”可以用于以单数意义描述任何特征、结构或特征,或者可以以复数含义描述特征、结构或特征的组合。类似地,至少部分地取决于上下文,诸如“一”、“一个”或“该”之类的术语也可以被理解为传达单数用法或传达复数用法。此外,至少部分地取决于上下文,术语“基于”可以被理解为不一定旨在传达因素的排他性组合,并且替代地,可以允许存在不一定被明确描述的其他因素。

下面参考方法和设备的框图和操作说明来描述本公开。应当理解,框图或操作说明的每个框以及框图或操作说明中的框的组合可以借助于模拟或数字硬件和计算机程序指令来实现。这些计算机程序指令可以被提供给通用计算机(以改变其如本文详述的功能)、专用计算机、asic或其他可编程数据处理装置的处理器,使得通过计算机或其他可编程数据处理装置的处理器执行的指令实现方框图或一个或多个操作块中指定的功能/动作。在一些替代实现方式中,框中提到的功能/动作可以不按照操作说明中所指出的顺序发生。例如,连续示出的两个方框实际上可以基本上同时执行,或者这些方框有时可以以相反的顺序执行,这取决于所涉及的功能/动作。

可以将这些计算机程序指令提供给下列项的处理器:通用计算机(以改变其如本文详述的功能)、专用计算机、asic或其他可编程数据处理装置,使得通过计算机或其他可编程数据处理装置的处理器执行的指令实现方框图或一个或多个操作块中指定的功能/动作,从而根据本文的实施例来转换它们的功能。

为了本公开的目的,计算机可读介质(或一个或多个计算机可读存储介质)以计算机可读的形式存储计算机数据,该数据可以包括可由计算机执行的计算机程序代码(或计算机可执行指令)。通过示例而非限制的方式,计算机可读介质可以包括用于数据的有形或固定存储的计算机可读存储介质,或用于对包含代码的信号进行瞬时解释的通信介质。如本文使用的计算机可读存储介质是指物理或有形存储装置(与信号相反),并且包括但不限于以用于信息(计算机可读指令、数据结构、程序模块或其他数据)的有形存储的方法或技术实现的易失性和非易失性、可移除和不可移除介质。计算机可读存储介质包括但不限于ram、rom、eprom、eeprom、闪存或其他固态存储器技术、cd-rom、dvd、或其他光学存储装置、磁带盒、磁带、磁盘存储装置或其他磁存储设备、或可用于有形地存储所需信息或数据或指令并且可由计算机或处理器访问的任何其他物理或材料介质。

出于本公开的目的,术语“服务器”应该被理解为指代提供处理、数据库和通信设施的服务点。通过示例而非限制的方式,术语“服务器”可以指具有相关联的通信和数据存储装置和数据库设施的单个物理处理器,或者它可以指代处理器和相关联的网络和存储设备,以及支持服务器提供的服务的操作软件和一个或多个数据库系统和应用软件的联网或集群复合体。服务器的配置或功能可以有很大不同,但通常服务器可以包括一个或多个中央处理单元和存储器。服务器还可以包括一个或多个大容量存储设备、一个或多个电源、一个或多个有线或无线网络接口、一个或多个输入/输出接口、或一个或多个操作系统,例如,windowsserver、macosx、unix、linux、freebsd等。

出于本公开的目的,“网络”应该被理解为指代可以耦合设备以便可以交换通信的网络,例如,在服务器和客户端设备之间或者其他类型的设备之间交换通信,例如,包括在通过无线网络耦合的无线设备之间交换通信。网络还可以包括大容量存储装置,例如附接网络的存储装置(nas)、存储区域网络(san)或其他形式的计算机或机器可读介质。网络可以包括互联网、一个或多个局域网(lan)、一个或多个广域网(wan)、有线类型连接、无线类型连接、蜂窝或其任何组合。同样地,可以采用不同架构或者可以服从或兼容不同协议的子网可以在更大的网络内互操作。例如,可以使得各种类型的设备可用于为不同的架构或协议提供可互操作的能力。作为一个说明性示例,路由器可以提供其他分离和独立lan之间的链路。

通信链路或信道可以包括模拟电话线,例如双绞线、同轴电缆、包括t1、t2、t3或t4类型线的全数字线或分数数字线、综合业务数字网络(isdn)、数字订户线(dsl)、包括卫星链路的无线链路、或其他通信链路或信道,如本领域技术人员可能已知的。此外,计算设备或其他相关电子设备可以例如通过有线或无线线路或链路而远程耦合到网络。

出于本公开的目的,“无线网络”应被理解为将客户端设备与网络耦合。无线网络可以采用独立自组网络、网状网络、无线lan(wlan)网络、蜂窝网络等。无线网络还可以包括通过无线无线电链路等耦合的终端、网关、路由器等的系统,其可以自由地、随机地移动或任意地组织自身,使得网络拓扑可以改变,有时甚至快速地改变。

无线网络还可以采用多种网络接入技术,包括wi-fi、长期演进(lte)、wlan、无线路由器(wr)网、或者第2代,第3代或第4代(2g、3g、4g或5g)蜂窝技术等。网络接入技术可以实现设备的广域覆盖,例如具有不同程度的移动性的客户端设备。

例如,网络可以通过一种或多种网络接入技术来实现rf或无线类型通信,例如,全球移动通信系统(gsm)、通用移动电信系统(umts)、通用分组无线电服务(gprs)、增强型数据gsm环境(edge)、3gpp长期演进(lte)、lte高级、宽带码分多址(wcdma)、蓝牙、802.11b/g/n等。无线网络实际上可以包括任何类型的无线通信机制,通过这些机制,信号可以在诸如客户端设备或计算设备之类的设备之间、网络之间或之内等进行传送。

计算设备能够例如经由有线或无线网络来发送或接收信号,或者能够例如在存储器中作为物理存储器状态来处理或存储信号,并且因此可以用作服务器。因此,能够用作服务器的设备可以包括例如专用机架式服务器、台式计算机、膝上型计算机、机顶盒、组合各种特征(例如前述设备的两个或更多个特征)的集成设备等。服务器的配置或功能可以有很大不同,但通常服务器可以包括一个或多个中央处理单元和存储器。服务器还可以包括一个或多个大容量存储设备、一个或多个电源、一个或多个有线或无线网络接口、一个或多个输入/输出接口、或一个或多个操作系统,例如,windowsserver、macosx、unix、linux、freebsd等。

出于本公开的目的,客户端(或消费者或用户)设备可以包括能够例如经由有线或无线网络发送或接收信号的计算设备。客户端设备可以例如包括台式计算机或便携式设备,例如蜂窝电话、智能电话、显示寻呼机、射频(rf)设备、红外(ir)设备和近场通信(nfc)设备、个人数字助理(pda)、手持式计算机、平板计算机、平板电话、笔记本计算机、机顶盒、可穿戴计算机、智能手表、组合各种特征(例如上述设备的特征)的集成或分布式设备等。

客户端设备在能力或特征方面可以不同。所要求保护的主题旨在涵盖广泛的潜在变化。例如,简单的智能电话、平板计算机或平板电话可以包括数字小键盘或功能有限的显示器,例如用于显示文本的单色液晶显示器(lcd)。然而,相比之下,作为另一示例,支持网络的客户端设备可以包括高分辨率屏幕、一个或多个物理或虚拟键盘、大容量存储装置、一个或多个加速度计、一个或多个陀螺仪、全球定位系统(gps)、或者其他位置标识类型能力、或具有高度功能的显示器,例如触敏彩色2d或3d显示器。

客户端设备可以包括或可以执行各种操作系统,包括个人计算机操作系统(例如,windows、ios或linux)或移动操作系统(例如,ios、android或windowsmobile等)。

客户端设备可以包括或可以执行各种可能的应用,例如,能够与其他设备进行通信的客户端软件应用,例如,传送一个或多个消息,例如通过电子邮件,例如,mail、短消息服务(sms)或多媒体消息服务(mms),例如,yahoo!包括通过网络,例如社交网络,包括例如instagramtm,仅提供一些可能的示例。客户端设备还可以包括或执行应用以传送内容,例如文本内容、多媒体内容等。客户端设备还可以包括或执行应用以执行各种可能的任务,例如,浏览、搜索、播放、流式传输或显示各种形式的内容,包括本地存储或上传的图像和/或视频、或游戏(例如幻想体育联盟)。提供前述内容是为了说明所要求保护的主题旨在包括宽泛范围的可能的特征或能力。

如本文所讨论的,对“广告”的引用应被理解为包括但不限于被体现为提供由另一用户、服务、第三方、实体等所提供的信息的媒体项的数字媒体内容。这样的数字广告内容可以包括可由计算设备呈现的任何类型的已知或将已知的媒体,包括但不限于视频、文本、音频、图像和/或任何其他类型的已知或将已知的多媒体项或对象。在一些实施例中,数字广告内容可以被格式化为提供深度链接特征和/或能力的超链接多媒体内容。因此,虽然某个内容被称为广告,但它仍是可由计算设备呈现的数字媒体项,并且这种数字媒体项包括中继由网络关联方提供的促销内容的内容。

本文描述的原理可以以许多不同的形式体现。所公开的系统和方法提供了用于消息平台和服务以及它们的所提供的邮箱和用户界面(ui)的新颖框架,用于在消息的传递之后监测、跟踪和控制消息,作为对不具有用于确定哪些消息在其传递之前、期间或之后要求回复的能力的传统邮件或消息传递系统的解决方案。

如下面更详细讨论的,所公开的系统和方法提供了来自消息传递平台高级功能,用于高效地监测和跟进针对其用户期望和/或要求回复的消息(称为rsvp消息)。所公开的系统和方法包括若干计算机化组件,其将传出消息标识为rsvp消息,并然后实现对这些消息的在其传递之后的管理。这种管理跨设备并且网络上发生,因为它涉及确定是否已经接收到及时响应、在未接收到响应时发送跟进消息、以及确定所接收的响应是否正确地包括寻址rsvp消息的上下文的内容。

如下面更详细讨论的(参见例如图4),由所公开的系统和方法实现的消息传递框架分析出站消息(也称为合成消息),并自动地提供确定出站消息是否为rsvp消息(即要求回复的消息)。这使得能够设置目标回复日期,使得当确定目标日期接近或已经过去时,可以发送跟进消息,其提醒接收者他们有义务响应rsvp消息。此外,在一些实施例中,所公开的框架为消息传递ui提供了新颖的用户界面(ui)功能,其中,提供rsvp消息的特殊视图,其显示关于哪些消息已被标记为rsvp消息、哪些消息具有未完成的回复、以及用于用户甚至在rsvp消息的传递之后来管理目标日期的能力的的指示符(参见下面讨论的图5a-5d)。

在一些实施例中,所公开的框架自动地标识已经以“满意”的方式回复的rsvp消息。出于本公开的目的,如下面更详细地讨论的,“满意”是指包括寻址rsvp消息中所包括的内容的内容的响应消息。例如,如果发件人向收件人发送消息询问“你星期五晚上有空吗?”,则所公开的框架可以识别出来自收件人的陈述“我稍后会回复你”的响应消息是不够的。在一些实施例中,已经接收到“满意”响应的rsvp消息可以在视图内被不同地标记(直到手动移除,或在目标回复日期自动移除),或者在响应时被自动移除(从rsvp文件夹,如下面结合图5a-5d更详细讨论的)。

在一些实施例中,所公开的框架自动地生成rsvp到期日期正在接近或已经过去的通知,其可以与提醒消息相关联,该提醒消息包括前面为预定模板响应的原始rsvp标记消息,例如,如“这是一个礼貌的提醒,我们期待您回复以下请求。”在这样的实施例中,可以自动地发送这些消息,并且在一些实施例中,用户可以决定按原样转发提醒、对其进行编辑并发送、或者简单地忽略它。

通过非限制性示例的方式,在星期一,用户bob起草要发送给用户jane的消息。在消息中,bob键入:“你是否在星期日过来观看巨人队和牛仔队之间的比赛?”在发送消息时,所公开的框架可以分析消息并确定至少在星期五之前需要回复。该框架还确定消息的上下文与确认或拒绝观看足球(或体育)赛事的可用性有关。消息被传递给jane,并且bob等待回复。

在一些实施例中,在星期四,注意到bob尚未接收到回复,框架生成跟进消息并发送给jane,向她通知她有来自bob的未完成消息。在一些实施例中,可以在跟进消息的递送之后的任何一天发送跟进消息。

在一些实施例中,当jane响应时,分析她的响应以确定其是否解决了bob的消息的上下文。bob的消息询问她是否在星期日过来观看比赛,因此,如果jane没有在她的回复消息中进行解决,则可以向她发送跟进,指示响应仍未完成。例如,如果jane简单回复-“去牛仔队”-则这并不一定指示她是否会观看比赛-因此,可以发送重述bob的问题的跟进。

虽然将关于被发送给单个接收者的消息来讨论本文的公开内容,但本领域技术人员应理解,本公开提供对具有多个接收者的传出消息的支持。在一些实施例中,对于具有多个接收者的消息,被标记为rsvp消息的出站消息将具有针对每个接收者的单独标记(或标志),其可以针对在目标(或到期)日期之前尚未响应的那些接受者来单独地维护。

一些传统系统提供用于实现消息跟进的功能;然而,不仅它们的功能与所公开的框架不同,而且它们的能力也未覆盖本文提供的消息管理的范围。

例如,一些传统系统通常跟踪已发送但尚未接收到响应的消息。这些系统不提供本文公开的个性化框架,该个性化框架学习并检测到用户在时间范围内对他/她的消息的响应感兴趣,并且自动设置(或建议用户设置)跟进通知以防在该时刻未收到任何回复。因此,这些类型的传统系统与提供针对用户发送的任何消息的跟踪不同。此外,在接收到响应的情况下,所公开的框架自动检测这是否是会话的结束或者是否需要进一步的跟进,这未由任何已知系统执行。因此,所公开的系统和方法基于端到端对应的个性化监测和检测,并且不仅仅提供将消息标记为等待响应的能力。

在另一示例中,一些传统系统提供用于监测所接收的消息上的接收者活动的协议。这与所公开的功能不同,因为本公开集中于跟踪来自发送者侧的关于它们是否已经接收到对标记消息的响应(例如,针对发送者的需要)的活动,并且不跟踪所接收的消息上的接收者活动。

因此,所公开的系统和方法提供了一种高级框架,其将新颖的能力和功能集成到用户正用于通过互联网参与消息传递活动的消息传递平台中。所公开的功能为用户提供了完全自动化、个性化、简单且高效的方式来标识和管理需要回复的传出邮件消息。所公开的系统和方法建议将出站消息标记为rsvp消息,rsvp消息是被确定为需要回复的那些消息。这种功能基于所公开的框架区分“满意”响应(即包括所需信息的响应)和不满意响应的能力。

如下面至少关于图6更详细地讨论的,根据一些实施例,如本文所讨论的,在提供、传递、或实现对于通过网络提供的消息、媒体和/或应用的这种设备访问时,与消息传递(包括rsvp(或出站)消息和响应消息)相关联的、在消息传递期间导出的或者以其他方式标识的、或者作为消息传递的结果的信息可以用于货币化目的和有针对性的广告。向与这些所发现的内容相关联的用户提供有针对性的广告可以使得这些广告的点击率(ctr)增加和/或广告商服务由第三方提供的这种内容(例如,由广告商提供的数字广告内容,其中广告商可以是第三方广告商,或者是直接与本文讨论的系统和方法相关联或托管本文讨论的系统和方法的实体)的投资回报率(roi)的增加。

现在将参考附图更详细地描述某些实施例。一般地,参考图1,示出了根据本公开的实施例的系统100。图1示出了在其中可以实施本文所讨论的系统和方法的一般环境的组件。并非需要所有组件来实施本公开,并且可以在不脱离本公开的精神或范围的情况下进行组件的布置和类型的变化。如图所示,图1的系统100包括局域网(“lan”)/广域网(“wan”)-网络105、无线网络110、移动设备(客户端设备)102-104和客户端设备101。图1还包括各种服务器,例如,内容服务器106、应用(或“app”)服务器108、消息(或消息传递)服务器120和广告(“ad”)服务器130。

以下更详细地描述移动设备102-104的一个实施例。然而,通常,移动设备102-104实际上可以包括能够通过网络(例如网络105、无线网络110等)接收和发送消息的任何便携式计算设备。移动设备102-104通常还可以被描述为被配置为便携式的客户端设备。因此,移动设备102-104实际上可以包括能够连接到另一计算设备并接收信息的任何便携式计算设备。这些设备包括多点触摸和便携式设备,例如,蜂窝电话、智能电话、显示寻呼机、射频(rf)设备、红外(ir)设备、个人数字助理(pda)、手持式计算机、膝上型计算机、可穿戴计算机、智能手表、平板计算机、平板电话、组合一个或多个前述设备的集成设备等。这样,移动设备102-104通常在能力和特征方面范围很广。例如,蜂窝电话可以具有数字小键盘和在其上只能显示文本的几行单色lcd显示器。在另一示例中,支持网络的移动设备可以具有触敏屏幕、触控笔和在其上可以显示文本和图形的hd显示器。

支持网络的移动设备可以包括浏览器应用,其被配置为接收和发送网页、基于网络的消息等。浏览器应用可以被配置为采用几乎任何基于网络的语言来接收和显示图形、文本、多媒体等,包括无线应用协议消息(wap)等。在一个实施例中,浏览器应用能够采用手持设备标记语言(hdml)、无线标记语言(wml)、wmlscript、javascript、标准通用标记语言(smgl)、超文本标记语言(html)、可扩展标记语言(xml)等来显示和发送消息。

移动设备102-104还可以包括被配置为从另一计算设备接收内容的至少一个客户端应用。客户端应用可以包括提供和接收文本内容、图形内容、音频内容等的能力。客户端应用还可以提供标识其自身的信息,包括类型、能力、名称等。在一个实施例中,移动设备102-104可以通过各种机制中的任何一种来唯一地标识它们自己,包括电话号码、移动识别码(min)、电子序列号(esn)或其他移动设备标识符。

在一些实施例中,移动设备102-104还可以与非移动客户端设备(例如客户端设备101等)进行通信。在一个实施例中,这种通信可以包括发送和/或接收消息、搜索、查看和/或共享照片、音频剪辑、视频剪辑或任何各种其他形式的通信。客户端设备101实际上可以包括能够通过网络进行通信以发送和接收信息的任何计算设备。这种设备的集合可以包括通常使用有线或无线通信介质进行连接的设备,例如个人计算机、多处理器系统、基于微处理器或可编程的消费电子产品、网络pc等。因此,客户端设备101还可以具有用于显示信息的可导航视图的不同能力。

客户端设备101-104计算设备能够例如经由有线或无线网络来发送或接收信号,或者能够例如在存储器中作为物理存储器状态来处理或存储信号,并且因此可以用作服务器。因此,能够用作服务器的设备可以包括例如专用机架式服务器、台式计算机、膝上型计算机、机顶盒、组合各种特征(例如前述设备的两个或更多个特征)的集成设备等。

无线网络110被配置为将移动设备102-104及其组件与网络105相耦合。无线网络110可以包括可进一步覆盖独立自组网络等的各种无线子网络中的任何一个,以便为移动设备102-104提供面向基础设施的连接。这种子网络可以包括网状网络、无线lan(wlan)网络、蜂窝网络等。

网络105被配置为将内容服务器106、应用服务器108等与其他计算设备(包括客户端设备101)相耦合,并通过无线网络110耦合到移动设备102-104。网络105能够采用任何形式的计算机可读介质来将信息从一个电子设备传送到另一电子设备。此外,除了局域网(lan)、广域网(wan)、直接连接(例如通过通用串行总线(usb)端口)、其他形式的计算机可读介质或其任何组合之外,网络105还可以包括互联网。在互连的一组lan(包括基于不同架构和协议的lan)上,路由器用作lan之间的链路,使得消息能够从一个lan发送到另一lan、和/或其他计算设备。

在用于或被理解为适用于本公开的通信网络内,这种网络将采用用于通过网络进行通信的各种协议。经由网络(例如参与数字通信网络的网络)传送的信号分组可以兼容或服从一个或多个协议。所采用的信令格式或协议可以包括例如tcp/ip、udp、quic(快速udp互联网连接)、decnet、netbeui、ipx、appletalktm等。互联网协议(ip)的版本可以包括ipv4或ipv6。互联网是指网络的分散全球网络。互联网包括局域网(lan)、广域网(wan)、无线网络或例如允许信号分组在lan之间进行传送的长途公共网络。信号分组可以在网络的节点之间进行传送,例如,传送到采用本地网络地址的一个或多个站点。例如,信号分组可以经由耦合到互联网的接入节点通过互联网从用户站点进行传送。同样地,例如,信号分组可以经由网络节点被转发到经由网络接入节点耦合到网络的目标站点。经由互联网传送的信号分组可以例如经由网关、服务器等的路径来路由,其可以根据目标地址和到目标地址的网络路径的可用性来路由信号分组。

根据一些实施例,本公开还可以在电子社交网站内使用或可以访问电子社交网站。社交网络通常是指通过通信网络或通过各种子网络耦合的个体的电子网络,例如但不限于熟人、朋友、家人、同事或工友。潜在地,附加关系可能由于通过通信网络或子网络的社交互动而后续形成。在一些实施例中,多模通信可以在社交网络的成员之间发生。一个或多个社交网络内的个体可以经由各种设备与社交网络的其他成员进行交互或通信。多模通信技术是指允许跨多个设备或平台(例如,蜂窝电话、智能电话、平板计算设备、平板手机、个人计算机、电视、机顶盒、sms/mms、电子邮件、即时消息客户端、论坛、社交网站等)进行可互操作通信的一组技术。

在一些实施例中,所公开的网络110和/或105可以包括(一个或多个)内容分发网络。“内容传递网络”或“内容分发网络”(cdn)通常是指分布式内容传递系统,其包括由一个或多个网络链接的计算机或计算设备的集合。cdn可以采用软件、系统、协议或技术来促进各种服务,例如,存储、缓存、内容传送或流媒体或应用。cdn还可以使得实体能够全部或部分地操作或管理另一cdn的站点基础设施。

内容服务器106可以包括具有用于经由网络向另一设备提供内容的配置的设备。内容服务器106可以例如托管站点、服务或相关联的应用,例如,电子邮件平台(例如,mail)、社交网站、照片共享站点/服务(例如,)、搜索平台或站点、或个人用户站点(例如博客、视频博客、在线约会站点等)等。内容服务器106还可以托管各种其他站点,包括但不限于商业站点、教育站点、词典站点、百科全书站点、维基、金融站点、政府站点等。可以用作内容服务器106的设备包括个人计算机、台式计算机、多处理器系统、基于微处理器或可编程的消费电子产品、网络pc、服务器等。

内容服务器106还可以提供各种服务,包括但不限于流媒体服务和/或下载媒体服务、搜索服务、电子邮件服务、照片服务、网络服务、社交网络服务、新闻服务、第三方服务、音频服务、视频服务、即时消息传递(im)服务、sms服务、mms服务、ftp服务、ip语音(voip)服务等。可以经由应用服务器108来提供这样的服务,例如邮件应用和/或电子邮件平台,由此用户能够在用户被认证、验证或标识时利用这种服务。内容的示例可以包括视频、文本、音频、图像等,其可以以物理信号的形式(例如电信号)进行处理,或者可以例如作为物理状态存储在存储器中。

广告服务器130包括存储用于呈现给用户的在线广告的服务器。“广告服务”是指用于在网站、应用或用户更可能看到它们的其他地方放置在线广告的方法,例如,在在线会话期间或在计算平台使用期间。可以结合赞助广告使用各种货币化技术或模型,包括与用户相关联的广告。这种赞助广告包括货币化技术,包括赞助搜索广告、非赞助搜索广告、保证和非保证传递广告、广告网络/交换、广告定向、广告服务和广告分析。此类系统可以在网页创建期间合并广告投放机会的近乎实时的拍卖(在一些情况下不到500毫秒),并且具有更高质量的广告投放机会,产生更高的每广告收入。也就是说,当广告商相信他们的广告被投放在被呈现给用户的高度相关内容中或者与被呈现给用户的高度相关内容一起投放时,他们将支付更高的广告费。减少量化高质量广告投放所需的时间可以为广告平台带来竞争优势。因此,更高的速度和更相关的情境检测改善了这些技术领域。

例如,购买或销售在线广告的过程可能涉及许多不同的实体,包括广告商、发布商、代理商、网络或开发者。为了简化该过程,被称为“广告交换”的组织系统可以关联广告商或发布商,例如通过平台来促进从多个广告网络购买或销售在线广告库存。“广告网络”是指来自发布商的广告空间供应的聚合,例如用于全体供应给广告商。对于像这样的门户网站,广告可以至少部分地基于一个或多个搜索项来在产生自用户定义的搜索的网页上或应用中显示。如果所显示的广告与一个或多个用户的兴趣相关,则广告可能对用户、广告商或门户网站有益。因此,已经开发了各种技术来推断用户兴趣、用户意图或随后将相关广告定向到用户。呈现目标广告的一种方法包括采用人口统计特性(例如,年龄、收入、性别、职业等)来例如按组预测用户行为。可以至少部分地基于所预测的(一个或多个)用户行为来向目标观众中的用户呈现广告。

另一方法包括简档类型(profile-type)广告定向。在该方法中,可以生成特定于用户的用户简档以模拟用户行为,例如,通过跟踪用户通过站点的网站或网络的路径,并至少部分地基于最终传递的页面或广告来编辑简档。例如,可以标识相关性以例如用于用户购买。通过将内容或广告定向到特定用户,所标识的相关性可以用于定向潜在购买者。在呈现广告期间,呈现系统可以收集关于被呈现给用户的广告的类型的描述性内容。可以收集广泛的描述性内容,包括特定于广告呈现系统的内容。所收集的广告分析可以被发送到远离广告呈现系统的位置以进行存储或用于进一步评估。在广告分析发送不能立即可用的情况下,所收集的广告分析可以由广告呈现系统存储,直到那些广告分析的发送变为可用。

服务器106、108、120和130能够例如经由有线或无线网络来发送或接收信号,或者能够例如在存储器中作为物理存储器状态来处理或存储信号。能够用作服务器的设备可以包括例如专用机架式服务器、台式计算机、膝上型计算机、机顶盒、组合各种特征(例如前述设备的两个或更多个特征)的集成设备等。服务器的配置或功能可以有很大不同,但通常服务器可以包括一个或多个中央处理单元和存储器。服务器还可以包括一个或多个大容量存储设备、一个或多个电源、一个或多个有线或无线网络接口、一个或多个输入/输出接口、或一个或多个操作系统,例如,windowsserver、macosx、unix、linux、freebsd等。

在一些实施例中,用户能够访问由服务器106、108、120和/或130提供的服务。在非限制性示例中这可以包括使用它们的各种设备101-104通过网络105的认证服务器、搜索服务器、电子邮件服务器、社交网络服务服务器、sms服务器、im服务器、mms服务器、交换服务器、照片共享服务服务器和旅行服务服务器。在一些实施例中,诸如邮件或消息传递应用(例如,mail、messenger)、照片共享/用户生成内容(ugc)应用(例如,等)、流视频应用(例如,amazonhbo等)、博客、照片或社交网络应用(例如,等)、搜索应用(例如,搜索)等之类的应用可以由应用服务器108(或内容服务器106、消息服务器120等)托管。因此,应用服务器108可以存储各种类型的应用和应用相关信息,包括应用数据和用户简档信息(例如,与用户相关联的标识和行为信息)。还应理解,内容服务器106还可以存储与内容服务器106在相关联的内容数据库107中提供的内容和服务有关的各种类型的数据,如下面更详细地讨论的。存在这样的实施例,其中,网络105还与可信搜索服务器(tss)相耦合/连接,该可信搜索服务器(tss)可用于根据本文所讨论的实施例来呈现内容。存在这样的实施例,其中,tss功能可以被体现在服务器106、108、120和/或130内。

此外,尽管图1将服务器106、108、120和130分别示出为单个计算设备,但本公开不限于此。例如,服务器106、108、120和/或130的一个或多个功能可以分布在一个或多个不同的计算设备上。此外,在一个实施例中,服务器106、108、120和/或130可以被集成到单个计算设备中,而不脱离本公开的范围。

图2是示出客户端设备的示意图,该客户端设备示出了可以在本公开内使用的客户端设备的示例实施例。客户端设备200可以包括比图2中所示的组件更多或更少的组件。然而,所示出的组件足以公开用于实现本公开的说明性实施例。客户端设备200可以表示例如上面关于图1所讨论的客户端设备。

如图所示,客户端设备200包括经由总线224与大容量存储器230进行通信的处理单元(cpu)222。客户端设备200还包括电源226、一个或多个网络接口250、音频接口252、显示器254、键盘256、照明器258、输入/输出接口260、触觉接口262、可选全球定位系统(gps)接收器264以及(一个或多个)相机或者其他光学、热或电磁传感器266。如本领域技术人员所理解的,设备200可以包括一个相机/传感器266、或多个相机/传感器266。(一个或多个)相机/(一个或多个)传感器266在设备200上的定位可以根据设备200模型、每设备200能力等或其某种组合而改变。

电源226向客户端设备200提供电力。可以使用可充电或不可充电电池来提供电力。电力还可以由外部电源提供,例如,ac适配器或补充和/或对电池进行充电的电动对接支架。

客户端设备200可选地可以与基站(未示出)进行通信,或者直接与另一计算设备进行通信。网络接口250包括用于将客户端设备200耦合到一个或多个网络的电路,并且被构造用于与如上所述的一个或多个通信协议和技术一起使用。网络接口250有时被称为收发器、收发设备或网络接口卡(nic)。

音频接口252被布置为产生和接收音频信号,例如人声的声音。例如,音频接口252可以耦合到扬声器和麦克风(未示出)以实现与其他项的电信和/或生成用于某一动作的音频确认。显示器254可以是液晶显示器(lcd)、气体等离子体、发光二极管(led)或与计算设备一起使用的任何其他类型的显示器。显示器254还可以包括触敏屏幕,该触敏屏幕被布置为接收来自诸如手写笔之类的对象或来自人手的手指的输入。

键盘256可以包括被布置为从用户接收输入的任何输入设备。例如,键盘256可以包括按钮数字拨号盘或键盘。键盘256还可以包括与选择和发送图像相关联的命令按钮。照明器258可以提供状态指示和/或提供光。照明器258可以在特定时间段内或响应于事件而保持有效。例如,当照明器258有效时,它可以从背后照亮键盘256上的按钮并在客户端设备通电时保持开启。此外,当执行特定动作(例如,拨打另一客户端设备)时,照明器258可以以各种模式来从背后照亮这些按钮。照明器258还可以使得位于客户端设备的透明或半透明壳体内的光源响应于动作而发光。

客户端设备200还包括输入/输出接口260,用于与外部设备(例如耳机)或图2中未示出的其他输入或输出设备进行通信。输入/输出接口260可以利用一种或多种通信技术,例如usb、红外、蓝牙tm等。触觉接口262被布置为向客户端设备的用户提供触觉反馈。例如,当客户端设备200从另一用户接收到通信时,可以采用触觉接口来以特定方式振动客户端设备200。

可选gps收发器264可以确定客户端设备200在地球表面上的物理坐标,其通常将位置输出为纬度和经度值。gps收发器264还可以采用其他地理定位机制,包括但不限于三角测量、辅助gps(agps)、e-otd、ci、sai、eta、bss等,以进一步确定客户端设备200在地球表面上的物理位置。可以理解,在不同条件下,gps收发器264可以确定客户端设备200在毫米内的物理位置;并且在其他情况下,所确定的物理位置可能不太精确,例如,在一米内或显著更大的距离内。然而,在一个实施例中,客户端设备可以通过其他组件提供可用于确定设备的物理位置的其他信息,包括例如mac地址、互联网协议(ip)地址等。

大容量存储器230包括ram232、rom234和其他存储装置。大容量存储器230示出了用于存储诸如计算机可读指令、数据结构、程序模块或其他数据之类的信息的计算机存储介质的另一示例。大容量存储器230存储用于控制客户端设备200的低级操作的基本输入/输出系统(“bios”)240。大容量存储器还存储用于控制客户端设备200的操作的操作系统241。应理解,该组件可以包括通用操作系统,例如unix或linuxtm的版本,或专用客户端通信操作系统,例如,windowsclienttm操作系统。操作系统可以包括java虚拟机模块或者与其相接口,该java虚拟机模块能够通过java应用来控制硬件组件和/或操作系统操作。

存储器230还包括客户端设备200除其他选项外还可以用来存储应用242和/或其他数据的一个或多个数据存储。例如,可以采用数据存储来存储描述客户端设备200的各种能力的信息。然后可以基于各种事件中的任何事件将信息提供给另一设备,包括在通信期间作为头部的一部分进行发送、根据要求进行发送等。至少一部分能力信息也可以被存储在客户端设备200内的磁盘驱动器或其他存储介质(未示出)上。

应用242可以包括计算机可执行指令,当由客户端设备200执行时,发送、接收和/或以其他方式处理音频、视频、图像,并且实现与服务器和/或另一客户端设备的另一用户的通信。在一些实施例中,应用程序或“app”的其他示例包括浏览器、日历、联系人管理器、任务管理器、代码转换器、照片管理、数据库程序、文字处理程序、安全性应用、电子表格程序、游戏、搜索程序等。应用242还可以包括搜索客户端245,其被配置为使用任何已知或将已知的通信协议来发送、接收和/或以其他方式处理搜索查询和/或搜索结果。尽管示出了单个搜索客户端245,但应该清楚可以采用多个搜索客户端。例如,一个搜索客户端可以被配置为输入搜索查询消息,其中,另一搜索客户端管理搜索结果,并且又一搜索客户端被配置为管理服务数字内容(例如,广告)或与(但不限于)im、电子邮件和其他类型的已知消息等相关联的其他形式的数字数据。

已经描述了在所公开的系统和方法内采用的一般架构的组件,现在将参考图3-图6来描述关于所公开的系统和方法的组件的一般操作。

图3是示出用于执行本文所讨论的系统和方法的组件的框图。图3包括消息引擎300、网络315和数据库320。消息引擎300可以是专用机器或处理器,并且可以由消息传递服务器、应用服务器、内容服务器、社交网络服务器、网络服务器、搜索服务器、内容提供商、电子邮件服务提供商、广告服务器、用户的计算设备等、或其任何组合托管。

根据一些实施例,消息引擎300可以被体现为在用户设备上执行的独立应用。在一些实施例中,消息引擎300可以用作安装在用户的设备上的应用,并且在一些实施例中,这样的应用可以是用户设备通过网络访问的基于网络的应用。在一些实施例中,消息引擎300可以作为增强脚本、程序或应用而被安装到另一消息传递和/或媒体内容托管/服务应用,例如,mail、messenger、search、等。

数据库320可以是任何类型的数据库或存储器,并且可以与网络上的内容服务器(例如,来自图1的内容服务器106、消息服务器120、广告服务器130或应用服务器108)或者用户的设备(例如,来自图1-2的设备101-104或设备200)相关联。数据库320可以包括例如内容项的数据集、设备数据和相关联的元数据、以及用户数据和相关联的用户元数据。这样的信息可以被独立地和/或作为链接或关联的数据集而存储在数据库320中。应理解,在不脱离本公开的范围的情况下,数据库320中的数据(和元数据)可以与任何类型的内容、用户、设备或网络信息和类型相关联,无论是已知的还是将已知的。

数据库320包括与内容项相关联的数据和元数据的数据集。出于本公开的目的,将关于作为整体的电子消息(包括数字内容)来参考内容项目;然而,不应将其解释为限制本文所讨论的系统和方法的应用。尽管本公开通篇引用了电子消息,但可以由消息引擎300根据本文讨论的系统和方法来传送和/或访问并处理其他形式的电子文档或传输(例如,短消息服务(sms)消息、多媒体消息服务(mms)消息等)。例如,对需要跟进的消息的检测可以基于消息或电子文档或文件中的任何类型的项,并且这样的项可以包括任何类型的已知或将已知形式的数字内容,无论是作为整个文件还是包括在文件中,包括消息、文本、音频、视频、短格式视频、多媒体等。

根据所公开的系统和方法处理并存储在数据库320中的消息以及这些消息的数据和元数据可以是任何类型的消息。这类消息的示例可包括但不限于电子邮件消息、html格式sms/mms消息、消息、消息和其他社交消息、对文章或网站的评论、在线论坛帖子/条目、文字处理文档、帮助台消息、便携式文档格式(pdf)文档和/或其他类型的文档。消息可以被提供给消息引擎300,或者可以由可以访问消息的计算机程序或设备访问。在一些实施例中,消息可以被存储在与电子邮件提供商(例如yahoo!)相关联的存储消息320的数据库中。

数据库320还可以包括与和用户、设备、服务、应用、用户生成的内容、第三方提供的内容等相关的本地和/或网络信息相关联的数据和元数据的数据集。这些信息可以被独立地和/或作为链接或关联的数据集而被存储和索引在数据库320中。如上所述,应理解,数据库320中的数据(和元数据)可以是任何类型的信息和类型,无论是已知的还是将已知的,而不脱离本公开的范围。

根据一些实施例,数据库320可以存储用户的数据,即用户数据。根据一些实施例,所存储的用户数据可以包括但不限于与用户的简档、(一个或多个)用户帐户、用户兴趣、用户行为信息、用户属性、用户偏好或设置、用户人口统计信息、用户位置信息、用户传记信息等、或其某种组合相关联的信息。

根据一些实施例,用户数据还可以包括用于搜索、接收和/或显示消息、呈现和/或显示内容、和/或下载、流式传输和/或访问网络上或网络上方的应用的目的,设备信息包括但不限于设备标识信息、设备能力信息、语音/数据载体信息、互联网协议(ip)地址、所安装的或能够在此类设备上安装或执行的应用、和/或其任何或某种组合。应理解,数据库320中的数据(和元数据)可以是与用户、内容、设备、应用、服务提供商、内容提供商有关的任何类型的信息,无论是已知的还是将已知的,而不脱离本公开的范围。

根据一些实施例,数据库320可以包括与内容提供商相关联的信息,例如但不限于使得用户能够发送、接收、搜索、上载、下载、共享、编辑、或以其他方式有益于用户的消息传递平台、应用、站点或提供商(例如,search、mobileapplication、mail、等)。在一些实施例中,数据库320可以包括与来自托管站点的一个或各种媒体的此类信息相关联的数据和元数据。在一些实施例中,这种内容提供商信息可以包括但不限于由用户设备驻留或访问,和/或能够被下载、执行、访问或在用户设备上运行以呈现内容的应用的版本、类型和/或能力。

在一些实施例中,存储在数据库320中的信息可以被表示为针对每个所存储的数据/元数据项的n维向量(或特征向量),其中,与例如所存储的数据和/或元数据相关联的信息可以对应于向量上的(一个或多个)节点。这样,数据库320可以将所存储的信息作为链接的数据和元数据的集合来在数据库320中存储和索引,其中,数据和元数据关系可以被存储为上面讨论的n维向量。这种存储装置可以通过任何已知的或将已知的向量或阵列存储装置来实现,包括但不限于散列树、队列、堆栈、vlist、或任何其他类型的已知或将已知的动态存储器分配技术或工艺。虽然对一些实施例的讨论涉及对所存储的信息的向量分析,但如上所述,可以根据任何已知的或将已知的计算分析技术或算法来分析、存储和索引信息,例如但不限于word2vec分析、聚类分析、数据挖掘、贝叶斯网络分析、隐马尔可夫模型、人工神经网络分析、逻辑模型和/或树分析等。

在一些实施例中,数据库320可以是容纳与一个或多个设备、用户、服务和/或内容提供商相关联的信息的单个数据库,并且在一些实施例中,数据库320可以被配置作为提供这样的信息的链接的数据存储的集合,因为该集合中的每个数据存储与特定用户、设备、服务和/或内容提供商相关联和/或对于它们是唯一的。

如上所述,参考图1,网络315可以是任何类型的网络,例如但不限于无线网络、局域网(lan)、广域网(wan)、互联网或其组合。网络315促进消息引擎300和存储资源的数据库320的连接。实际上,如图3所示,消息引擎300和数据库320可以通过任何已知的或将已知的连接和/或实现这些设备和资源之间的通信的方法来直接连接。

包括根据本文的专用功能所编程的硬件的主处理器、服务器或设备的组合为了方便起见而被称为消息引擎300,并且包括消息分析模块302、rsvp标识模块304、响应模块306、以及rsvp管理模块308。应理解,本文所讨论的(一个或多个)引擎和模块是非穷举的,因为额外的或更少的引擎和/或模块(或子模块)可以适用于所讨论的系统和方法的实施例。下面将讨论每个模块的操作、配置和功能,以及它们在本公开的实施例中的作用。

转到图4,过程400详细描述了根据本公开的一些实施例所执行的用于高效地监测和跟进针对其用户期望和/或需要回复的传递消息的步骤。所公开的功能提供了一种全自动化、个性化、简单且高效的方式来通过将出站消息标记为rsvp消息并确定是否接收到正确的回复来标识和管理需要回复的传出邮件消息。如本文所讨论的,这种功能基于所公开的框架区分“满意”响应(即包括所需信息的响应)和不满意响应的能力。

过程400的步骤402-404由消息引擎300的消息分析模块302执行;步骤406-410由rsvp标识模块304执行;步骤412和418-420由响应模块306执行;并且步骤414和416由rsvp管理模块308执行。

过程400开始于步骤402,其中,用户开始向接收者起草消息。如本文所讨论的,步骤402可以涉及用户在任何类型的消息通信平台上将任何类型的数据键入到消息中。这样的数据可以包括但不限于文本、媒体、附件等。平台可以包括但不限于电子邮件平台、im平台、社交媒体平台等。因此,例如,如本领域技术人员所理解的,步骤402涉及用户起草或编写寻址到(一个或多个)接收者的消息。该消息被称为出站消息,在该过程中的此时,它尚未被发送到接收者。

在步骤404中,在发送之前或在发送时(例如,从发送者接收发送命令,其中将消息发送到服务器以进行处理),分析消息以便标识其中所包括的属性。这些属性对应于用户在起草出站消息期间所输入的数据。例如,属性包括与出站消息的消息主体相关的信息、与发送者相关的信息和与接收者相关的信息。

根据一些实施例,在步骤404中发生的这种分析和标识可以通过实现和/或执行执行下列项(但不限于这些项)的任何已知或将已知的软件或技术来执行:自然语言处理(nlp)、n元(n-gram)分析、向量转换和分析等、或其某种组合。因此,作为步骤404的结果,消息引擎300解析、标识、然后提取消息的属性。

根据一些实施例,消息属性包括消息特征(例如,来自消息主体)、发送者特征和接收者特征。可以从消息本身(例如,消息主体内的内容和元数据)提取消息特征。这些特征的示例包括但不限于频繁的句子和n元以及它们在消息中的位置、主题和主体二者中的标点符号;发送/抄送/密件抄送的接收者的数目;附件(类型)等。可以从发送者的邮箱中提取发送者功能。它们代表发送者过去的消息传递行为,其可以包括例如发送者所发送的消息的数目、发送者接收到的回复的数目、发送者使用本文所讨论的rsvp功能的次数等。可以从用于起草消息的消息平台之上/上的涉及接收者的传入和传出流量中提取接收者特征。例如,这些特征可以包括但不限于由接收者执行的与整个用户集相关的动作,例如,特定接收者进行回复的消息的数目,或者其他接收者从该接收者所发送的消息中执行的动作。

在标识这些属性/特征之后,消息引擎300生成用于出站消息的特征向量。向量上的节点表示消息、发送者和接收者的属性/特征。这种向量的生成可以由任何类型的已知或将已知的向量生成软件、工艺或技术来执行,包括但不限于word2vec分析、聚类分析、数据挖掘、贝叶斯网络分析、隐马尔可夫模型、人工神经网络分析、逻辑模型和/或树分析等。

因此,步骤404产生用于出站消息的向量m,其中,向量上的每个节点对应于消息的属性。向量m还包括二进制位(上面称为标记),其指示m是否是rsvp消息。

如下面更详细讨论的,消息引擎300可以实现机器学习(ml)分类器,其可以具有两个子分类器:用于确定传出消息是否是rsvp消息的第一分类器,以及在rsvp消息的情况下,确定响应消息是否是对rsvp消息的满意响应的第二分类器。

如本文所讨论的,并且在下面更详细描述的,第一分类器基于所创建的特征向量和指示给定消息是否是rsvp消息的标签(其中,如果是,则位/标志可以被设置为“1”,并且如果否,则被设置为“0”)。第一分类器可以基于一组标记的示例,这些示例可以从被称为rsvp消息或非rsvp消息的过去的传出消息生成。在一些实施例中,可以从用户的收件箱或从多个用户的收件箱收集这些消息。在一些实施例中,关于这些训练消息是否是rsvp消息的指示可以基于用户和/或编辑评论。

基于该组训练消息,提取消息的特征并将其馈送到ml算法,并学习ml分类器。如本文所讨论的,ml分类器的第一分类器可以获得新消息、提取其特征、生成向量、并应用将把消息分类为rsvp消息或非rsvp消息的ml模型。类似地,对于第二分类器,消息对(例如,传出消息和响应)的标记示例可以指示对传出消息的响应是否是满意的,并且可以从中训练第二分类器。因此,当分析响应消息时,第二分类器可以应用其ml模型以确定该响应是否是满意的,如下面更详细讨论的。因此,对第一和第二分类器的训练实现了对由消息引擎300应用的ml分类器的构建/训练。

因此,在一些实施例中,步骤404涉及实现ml分类器的第一分类器,其确定出站消息是否是rsvp消息,并且该确定指示位的值(并且如下面更详细讨论的,步骤418-420涉及实现第二分类器以便确定所接收的对rsvp消息的响应是否是满意的。

在一些实施例中,在步骤404中发生的分析和标识可以涉及通过搜索发送者的邮箱以标识先前在发送者和接收者之间传送的消息,来标识出站消息的发送者和接收者之间的关系。然后可以以类似的方式来分析这些消息以标识和提取这些消息的属性,这可以补充针对出站消息所标识的属性。

这些被称为发送者-接收者特征,其表示发送者和接收者之间的对应模式。例如,这些特征提供指示下列项的数据:发送者向接收者发送的消息的数目(反之亦然)、接收到的回复的数目、通信频率、或发送者和接收者对这些消息(传入消息和传出消息二者)执行的过去的动作。因此,在一些实施例中,可以将这些附加属性添加到出站消息的编译向量m中并在其中表示。

在步骤406中,在发送之前或在服务器进行发送时(以与上面关于步骤404所讨论的类似的方式),还分析消息以便确定出站消息的上下文。这种上下文分析可以基于上面关于消息特征所讨论的分析。因此,基于消息的特征,可以确定上下文。

例如,经由消息引擎300所执行的nlp,对消息的文本的消息分析指示该消息包括对接收者的问题。因此,确定消息的上下文可以涉及通过添加消息的响应必须至少肯定地或否定地回答的指定来修改向量m,如下所述。该指定可以由向量m上的节点或位表示。

在步骤408中,以与上面关于步骤404-406所讨论的类似的方式,可以为消息设置响应期限(或目标日期)。可以通过对消息执行分析(基于上面讨论的分析或单独的分析过程)来设置目标日期,其中,消息的消息特征指示请求或需要回复的日期。

例如,如果消息表明发送者在2017年12月25日举行聚会,并且在2017年12月10日之前想要知道接收者是否参加,则通过例如nlp可以标识12月10日的日期,从而可以相应地设置目标日期。这样,消息可以具有所附加的指示所确定的目标日期的另外的指定,其可以由向量m上的节点或位表示。

在一些实施例中,目标日期可以由用户设置。在一些实施例中,目标日期可以由用户在发送出站消息之后或在起草出站消息期间设置,如下面关于图5b和5d更详细讨论的。在一些实施例中,可以向用户推荐目标日期,并且用户可以从一组推荐日期中进行选择。在一些实施例中,即使在传递消息之后,用户也可以修改目标日期。

在一些实施例中,步骤406-408可以在同一计算过程中执行,并且在一些实施例中,步骤406-408可以在步骤404的处理期间执行,因为从步骤404导出的属性/特征至少形成在步骤406-408中发生的确定的基础。

在步骤410中,将出站消息标记为rsvp消息,指示根据设置的目标日期而预期回复,并将其发送给接收者以在接收者的收件箱中传递。该标记涉及将位(或标志)应用和设置于向量m,从而指示出站消息经受所公开的rsvp功能(如步骤404中设置的)。因此,在一些实施例中,在步骤410中,基于对至少步骤404的分析,如上面所讨论的,通过实现由消息引擎300应用的ml分类器的第一分类器,可以将出站消息标记为rsvp信息。

在步骤412中,在将消息发送给接收者之后,发送者的邮箱针对对rsvp消息的响应而被连续地或周期性地(根据预定的时间段)监测。这种监测涉及确定是否接收到响应,并且如果否,则这是否表示到那时应该接收到回复的情况。例如,如果昨天发送了rsvp消息,并且目标日期是从那时起的一个星期,则在步骤412中发生的确定将产生不需要接收回复(或尚未预期接收)的决定。

在确定应已经接收到回复但尚未接收到回复时(例如,通过比较当前监测时间与满足阈值时间的目标日期从而指示应该已经接收到响应),过程400从步骤412继续进行到步骤414,其中,生成跟进消息。例如,如果昨天应接收到回复但尚未接收到回复,或者预期2小时内的回复,但在发送者的邮箱中没有检测到来自与所发送的rsvp消息相关的接收者的活动,则步骤414由消息引擎300执行。可以根据各种不同的技术生成所生成的跟进消息。

在一些实施例中,跟进消息可以由用户从预设的跟进消息的列表中选择。例如,可以向用户呈现列表,其包括可选模板响应的列表-例如,“仅跟进我的日期为____的消息。请让我知道”,这可以作为rsvp消息的转发的标题(或主题行)来提供。在一些实施例中,跟进消息可以由消息引擎300自动生成,并且它可以包括与原始消息类似的内容以及原始消息具有未完成回复的通知。

在一些实施例中,所生成的跟进消息可以在其生成时被自动传递到接收者,步骤416,这可以在其由引擎300生成时发生,或者在发送者选择时发生,如上所述。在一些实施例中,跟进消息也可以以与上面关于步骤402-412所讨论的类似的方式被标记为rsvp消息。

回到步骤412,如果在发送者的邮箱中检测/接收到来自接收者的响应消息(或可交换使用的回复消息),则过程400从步骤412进行到步骤418,其中,分析响应消息和rsvp消息以便确定响应消息是否是对rsvp消息的“满意”响应。

根据一些实施例,步骤418涉及使用ml分类器的第二分类器(如上所述并且在下面更详细讨论的)来分析响应消息和rsvp消息二者以提取每个消息的特征。例如,在发送者的邮箱中检测到响应消息时,响应消息和rsvp消息由ml分类器分析,该ml分类器解析每个消息并提取每个消息的特征。然后,ml分类器生成基于响应消息和rsvp消息二者的特征向量r。向量r还可以包括从包含其中一个消息的线程中的先前的消息中提取的特征。向量r还可以取决于任何其他信息,例如但不限于发送者和接收者的一般用户信息和/或它们之间的过去的对话等。

在步骤420中,然后由ml分类器的第二分类器分析向量r,并且确定响应消息是否是对rsvp消息的“满意”响应。如上所述,第二分类器将基于特征和标签来对响应消息进行分类,其中,在一些实施例中,可以基于用户与手动rsvp特征的过去的交互来获得训练集中的标签。

在一些实施例中,步骤418-420涉及确定响应消息的属性并为响应制定向量r(以与上面针对向量m所讨论的类似的方式)。在一些实施例中,向量r的生成可以基于从响应消息(即由给定rsvp消息的接收者发送的入站消息)的属性的消息引擎300分析所标识的属性、该rsvp消息的属性、以及包含rsvp消息和响应消息的线程中的所有先前的消息(其可以包括应已经发送的跟进消息-来自步骤416)的属性。此外,消息引擎300分析关于发送者和接收者的信息,并且发送者和接收者之间的过去的对应关系可以被包括在向量r中。

如上所述,在一些实施例中,标识出站消息的属性(或特征)、将出站消息标识为rsvp消息、标识响应消息的属性、以及标识响应消息“满意”可以由执行任何已知的或将已知的机器学习技术、算法、软件或工艺的消息引擎300来执行,该消息引擎300标识数字项的属性、将其与已知或学习的训练集(例如,发送者的收件箱中的消息活动)进行比较、并且确定先前应用的状态(例如,被标记为rsvp消息的消息、和/或该rsvp消息是否已经收到满意回复)是否改变了比较的结果。这种机器学习(ml)技术可以包括但不限于稀疏因子分析(sfa)、深度神经网络(dnn)、隐马尔可夫模型(hmm)、支持向量机(svm)、贝叶斯方法等。

例如,在编写出站消息时,消息引擎300可以执行ml分类器(即如上所述的第一和第二分类器),其将提取与发送者的帐户相关的离线数据,并确定出站消息的属性以包括在所生成的向量m中。在发送该消息时,可以将其标记为rsvp消息(通过ml分类器的第一分类器,如上所述)。在接收到响应消息并生成向量r(如上所述)时,应用ml分类器的第二分类器以确定响应消息是否是对rsvp消息的“满意”响应。

转到图5a-5d,各自分别提供了在发送和编写rsvp消息时的发送者收件箱的非限制性示例。在图5a-5b中,描绘了发送者邮箱ui500,其包括文件夹部分502、消息列表504(描绘用户的收件箱消息活动)和接口项506和508,其分别指示消息刚刚被发送,以及存在被分配给它的rsvp功能。

文件夹部分502描绘了“rsvp”文件夹(项502a),其向发送者的收件箱提供单独生成的子文件夹以用于管理rsvp消息。在一些实施例中,当发送rsvp消息时,将其发送(或发送副本)到rsvp文件夹502a,并且当接收到“满意”响应时,将其从rsvp文件夹502a中移除。在一些实施例中,如果rsvp消息具有多个接收者,则仅当所有接收者都提供“满意”响应时,rsvp消息将从rsvp文件夹502a中移除。

项506是提供用户刚刚发送了消息的指示的界面项。如上面关于过程400所讨论的,可以将所发送的出站消息标记为rsvp消息;因此,当这发生时,显示项目508,其提供消息是rsvp消息的指示,或者,在一些实施例中,提供由用户指定为rsvp消息的发送消息的功能。

在一些实施例中,如图5b所示,项508携带使得用户能够进行交互以选择目标日期的功能-项508a,其示出了被显示为从项508生成的下拉或弹出窗口。在一些实施例中,所提供的目标日期选项的列表可以由消息引擎300确定,并且在一些实施例中,用户可以输入特定日期。

图5c-5d描绘了ui550,其是消息编写接口,其中,发送用户编写出站消息以传递到接收者。ui550包括工具栏552,其为发送者提供交互式工具以修改消息、消息文本、插入图形等。工具栏552可以被显示为消息主体的一部分,或者被包括在ui550的工具栏、ui500或显示ui的浏览器或应用界面中。除了其他功能之外,工具栏552还包括发送消息的功能(项554)和指示消息的rsvp功能(如本文所讨论的)的功能(项556)。

在一些实施例中,当用户编写消息时,或者在完成消息之后,或者在用户选择发送项554时,消息引擎300可以确定该消息是rsvp消息(如上所述),并且项556可以自动显示在工具栏552中。在一些实施例中,显示项556,并且它允许发送者将该消息指定为rsvp消息,从而在选择项556时,显示项556a(如图5d所示)。项556a提供与上面讨论的项508a类似的功能,其使得能够选择、查看或输入出站消息的目标日期,从而将该消息指定为rsvp消息。

图6是用于基于与所发送的消息相关联的信息来对与广告相关联的或包括广告的相关数字媒体内容(例如数字广告内容)进行服务的工作流程示例600,如上面关于图3-5d所讨论的。被称为“消息信息”的这种信息仅供参考,可以包括但不限于与rsvp消息相关联的信息(例如,如上所述的出站消息的属性)、响应消息的信息(例如,属性)、响应到期日期、出站消息的上下文、响应消息的上下文等、和/或其某种组合。

如上所述,对“广告”的引用应被理解为包括但不限于提供由另一用户、服务、第三方、实体等所提供的信息的数字媒体内容。这样的数字广告内容可以包括可由计算设备呈现的任何类型的已知或将已知的媒体,包括但不限于视频、文本、音频、图像和/或任何其他类型的已知或将已知的多媒体。在一些实施例中,数字广告内容可以被格式化为提供深度链接特征和/或能力的超链接多媒体内容。因此,虽然内容被称为广告,但它仍是可由计算设备呈现的数字媒体项,并且这种数字媒体项包括中继由网络关联第三方提供的促销内容的数字内容。

在步骤602中,标识消息信息。如上所述,消息信息可以基于来自上面关于图3-5d所概述的过程的任何信息。出于本公开的目的,过程600将参考单个所发送的消息及响应来作为服务(一个或多个)数字广告的基础;然而,不应该将其解释为限制性的,因为在不脱离本公开的范围的情况下,任何数目的消息以及所使用的程序和/或其中包括的内容项可以形成这样的基础。

在步骤604中,基于所标识的消息信息来确定上下文。该上下文形成了用于服务与消息信息相关的广告的基础。在一些实施例中,上下文可以根据rsvp消息或响应消息的上下文,如上面关于图4所讨论的。例如,消息可以包括指示狩猎季节在11月1日开始的内容;因此,在步骤604中标识的上下文可以与“狩猎”或其他“季节性户外活动”相关,并且可以被利用以便标识与这些活动相关的数字广告内容,如本文中关于过程600的步骤所讨论的。在一些实施例中,来自步骤604的对上下文的标识可以在上面关于过程400所详细描述的分析之前、期间和/或之后发生,或者它可以是完全独立的过程、或其某种组合。

在步骤606中,与包括广告服务器130和广告数据库的广告平台通信(或共享)所确定的上下文。在接收到上下文时,广告服务器130执行(例如,使得根据从执行消息引擎300的设备接收到的指令来执行)对相关联的广告数据库内的相关广告的搜索。对广告的搜索至少基于所标识的上下文。

在步骤608中,广告服务器130针对与所标识的上下文匹配的(一个或多个)数字广告来搜索广告数据库。在步骤610中,基于步骤608的结果来选择(或检索)广告。在一些实施例中,可以修改所选择的广告以符合在其上将显示广告的页面、界面、消息、平台、应用或方法和/或针对其将显示广告的应用和/或设备的属性或能力。在一些实施例中,经由用户用来查看、编写、发送、接收和/或呈现消息或媒体的应用来共享或传送所选择的广告,步骤612。在一些实施例中,将所选择的广告直接发送到每个用户(发送者和接收者)的计算设备。在一些实施例中,所选择的广告被显示在界面的一部分内或者在与用于发送/接收消息的消息传递接口相关联的重叠或弹出界面内。

如图7所示,(一个或多个)计算设备、计算系统、计算平台等的内部架构700包括一个或多个处理单元、处理器或处理核(本文也称为cpu)712,其与至少一个计算机总线702相接口。还与计算机总线702相接口的是一个或多个计算机可读介质706、网络接口714、存储器704(例如,随机存取存储器(ram)、运行时瞬态存储器、只读存储器(rom))、媒体磁盘接口708和/或媒体磁盘驱动器接口720(作为驱动器的接口,该驱动器可以读取和/或写入包括诸如软盘、cd-rom、dvd、介质之类的可移除介质的介质)、显示接口710(作为用于监视器或其他显示设备的接口)、键盘接口716(作为用于键盘的接口)、定位设备接口718(作为鼠标或其他定位设备的接口)、以及未单独示出的各种其他接口722,例如,并行和串行端口接口以及通用串行总线(usb)接口。

存储器704与计算机总线702相接口,以便在执行软件程序期间向cpu712提供存储在存储器704中的信息,软件程序例如,操作系统、应用程序、设备驱动程序和包括程序代码的软件模块、和/或计算机可执行处理步骤,包括本文描述的功能,例如,本文描述的一个或多个处理流程。cpu712首先从存储装置加载计算机可执行处理步骤,例如,存储器704、一个或多个计算机可读存储介质706、可移除介质驱动器和/或其他存储设备。然后,cpu712可以执行所存储的处理步骤以便执行所加载的计算机可执行处理步骤。在计算机可执行处理步骤的执行期间,cpu712可以访问所存储的数据,例如,由存储设备存储的数据。

永久存储装置(例如,一个或多个介质706)可以用于存储操作系统和一个或多个应用程序。永久存储装置还可以用于存储设备驱动器,例如下列项中的一项或多项:数码相机驱动器、监视器驱动器、打印机驱动器、扫描仪驱动器或其他设备驱动器、网页、内容文件、播放列表和其他文件。永久存储装置可以进一步包括用于实现本公开的一个或多个实施例的程序模块和数据文件,例如,(一个或多个)列表选择模块、(一个或多个)目标信息收集模块、以及(一个或多个)列表通知模块、本文详细讨论的在本公开的实现方式中的功能和使用。

网络链路728通常使用传输介质通过一个或多个网络来向使用或处理信息的其他设备提供信息通信。例如,网络链路728可以提供通过本地网络724到主计算机726或由网络或互联网服务提供商(isp)730操作的设备的连接。isp设备进而通过现在通常称为互联网732的网络的公共全球分组交换通信网络来提供数据通信服务。

连接到互联网732的被称为服务器主机734的计算机托管响应于通过互联网732接收到的信息而提供服务的过程。例如,服务器主机734托管提供表示图像和/或视频数据的信息以在显示器710处进行呈现的过程。预期系统700的组件可以以各种配置被部署在其他计算机系统(例如,主机和服务器)中。

本公开的至少一些实施例涉及使用用于实现本文描述的一些或所有技术的计算机系统700。根据一个实施例,那些技术由计算机系统700响应于执行包含在存储器704中的一个或多个处理器指令的一个或多个序列的处理单元712而执行。这种指令(也称为计算机指令、软件和程序代码)可以从诸如存储设备或网络链路之类的另一计算机可读介质706读入存储器704。包含在存储器704中的指令的序列的执行使得处理单元712执行本文描述的一个或多个方法步骤。在替代实施例中,代替软件或与软件组合可以使用诸如asic之类的硬件。因此,除非本文另有明确说明,否则本公开的实施例不限于硬件和软件的任何特定组合。

通过通信接口在网络链路和其他网络上发送的信号将信息运载到计算机系统700并从计算机系统700运载信息。计算机系统700可以通过网络等、通过网络链路和通信接口来发送和接收包括程序代码的信息。在使用互联网的示例中,服务器主机通过互联网、isp设备、本地网络和通信接口来发送由从计算机发送的消息所请求的特定应用的程序代码。所接收的代码在其被接收时可以由处理器702执行、或者可以被存储在存储器704中或存储设备或其他非易失性存储装置中以供稍后执行、或两者。

出于本公开的目的,模块是(在有或没有人类交互或增强的情况下)执行或促进本文描述的过程、特征和/或功能的软件、硬件或固件(或其组合)系统、过程或功能、或其组件。模块可以包括子模块。模块的软件组件可以被存储在计算机可读介质上以供处理器执行。模块可以被集成到一个或多个服务器,或者由一个或多个服务器加载和执行。可以将一个或多个模块分组为引擎或应用。

出于本公开的目的,术语“用户”、“订户”、“消费者”或“客户”应当被理解为指代如本文所述的一个或多个应用的用户和/或由数据提供商提供的数据的消费者。通过示例而非限制的方式,术语“用户”或“订户”可以指代在浏览器会话中通过互联网接收由数据或服务提供商提供的数据的人,或者可以指代接收数据并存储或处理数据的自动化软件应用。

本领域技术人员将认识到,本公开的方法和系统可以以许多方式实现,并且因此不受前述示例性实施例和示例的限制。换句话说,由单个或多个组件、在硬件和软件或固件的各种组合中、以及各个功能执行的功能元件可以在客户端等级或服务器等级或两者分布在软件应用中。在这方面,任何数目的本文描述的不同实施例的特征可以被组合成单个或多个实施例,并且具有少于或多于本文描述的所有特征的替代实施例是可能的。

功能也可以以现在已知的或变为已知的方式全部地或部分地分布在多个组件中。因此,无数的软件/硬件/固件组合可以实现本文描述的功能、特征、接口和偏好。此外,本公开的范围涵盖用于执行所描述的特征和功能和接口的传统的已知方式,以及可以对本文描述的硬件或软件或固件组件做出的那些变化和修改,如现在和将来的本领域技术人员将理解的。

此外,通过示例的方式提供了在本公开中被呈现和描述为流程图的方法的实施例,以便提供对本技术的更完整的理解。所公开的方法不限于本文呈现的操作和逻辑流程。设想了替代实施例,其中,改变了各种操作的顺序,并且其中,被描述为作为较大操作的一部分的子操作被独立执行。

尽管已经出于本公开的目的描述了各种实施例,但是不应认为这些实施例将本公开的教导限制于那些实施例。可以对上述元件和操作进行各种改变和修改,以获得保持在本公开中描述的系统和过程的范围内的结果。

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