CN102413131B - 基于会话的合作过滤 - Google Patents
基于会话的合作过滤 Download PDFInfo
- Publication number
- CN102413131B CN102413131B CN201110362997.1A CN201110362997A CN102413131B CN 102413131 B CN102413131 B CN 102413131B CN 201110362997 A CN201110362997 A CN 201110362997A CN 102413131 B CN102413131 B CN 102413131B
- Authority
- CN
- China
- Prior art keywords
- client
- message
- conversation
- list
- filter
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/42—Systems providing special services or facilities to subscribers
- H04M3/436—Arrangements for screening incoming calls, i.e. evaluating the characteristics of a call before deciding whether to answer it
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/212—Monitoring or handling of messages using filtering or selective blocking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/142—Managing session states for stateless protocols; Signalling session states; State transitions; Keeping-state mechanisms
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
各种实施例提供了基于会话的过滤以在客户端和服务提供商之间以合作的方式来过滤消息。在至少一些实施例中,服务提供商可以与客户端建立消息收发会话并将消息递送到客户端。客户端可以实现各种客户端侧技术以基于各种客户端指定准则来过滤所述消息中的一些。服务提供商可以从客户端获得反馈,该反馈指示已被过滤的所递送的消息中的一个或多个。服务提供商可以基于反馈动态地创建基于会话的列表,并在会话期间使用该列表以根据客户端指定准则在服务器侧阻止消息。当会话结束时,基于会话的列表可以被丢弃。通过这种方式,无须在服务提供商处持续存储用于过滤的状态数据,消息过滤也可以发生。
Description
背景技术
在客户端-服务器的环境中,服务提供商在服务器侧实现消息收发服务以将消息递送给客户端,该消息收发服务通常被配置成在服务器侧基于各种过滤准则过滤一些消息。在一些传统的方法中,过滤可基于过滤相关的状态数据,如拒绝列表、阻止列表、过滤准则和/或由服务提供商在服务器侧为众多客户持续维护的其他状态数据。
然而,为众多客户端维护状态数据可能是昂贵的,因为由服务提供商为其他目的可能另外征召(enlist)的资源(比如存储器和处理容量)被状态数据的存储和管理所占用。而且,在服务提供商处为可能不频繁连接和/或可能连接一次然后绝不会再次重新连接的客户端持续存储状态数据是低效且浪费的。
发明内容
提供本发明内容以通过简化形式介绍概念的选择,其在下文的具体实施方式中进一步描述。本发明内容并非旨在确定要求保护的主题的关键特征或必要特征,也不旨在用于限制要求保护的主题的范围。
各种不同的实施例提供了设计用于在客户端与服务提供商之间以合作方式实现消息过滤的基于会话的过滤。在至少一些实施方案中,服务提供商可以与客户端建立消息收发会话并将消息递送给客户端。客户端可以实现各种不同的客户端侧过滤技术以基于发送端、内容、风险因素和/或其他客户端指定的过滤准则来过滤一些消息。服务提供商可以从客户端获得指示已在客户端处根据客户端指定准则过滤的一个或多个所递送的消息的反馈。服务提供商可以基于反馈动态地为客户端创建基于会话的列表,并在会话的持续时间使用此列表在服务器侧按照客户端指定准则过滤消息。当会话结束时,基于会话的列表可以被丢弃,以避免与在服务提供商处存储和维护针对客户端的过滤准则相关的成本。通过这种方式,可以在没有在服务提供商处持续存储过滤状态数据的情况下发生消息过滤。
附图说明
遍及各附图,相同的数字用于引用相似的特征。
图1示出根据一个或多个实施例的可以利用本文描述的各种原理的操作环境。
图2示出根据一个或多个实施例的将发送端添加到基于会话的列表的示例交互。
图3示出根据一个或多个实施例的根据基于会话的列表阻止发送端的示例交互。
图4 是描述根据一个或多个实施例的方法的步骤的流程图。
图5 是描述根据一个或多个实施例的方法的步骤的流程图。
图6 示出可以用于实现一个或多个实施例的示例***。
具体实施方式
概述
各种不同的实施例提供了基于会话的过滤,其设计用于在客户端和服务提供商之间以合作方式实现消息过滤。在至少一些实施方案中,服务供应商可以与客户端建立用于消息收发的会话,并将消息递送到客户端。客户端可以实现各种不同的客户端侧过滤技术以基于发送端、内容、风险因素和/或其他客户端指定的过滤准则过滤所述消息中的一些。服务提供商可以从客户端获得指示已在客户端处根据客户端指定准则过滤的一个或多个所递送的消息的反馈。服务提供商可以基于反馈动态地创建针对客户端的基于会话的列表并在会话的持续时间使用该列表在服务器侧上按照客户端指定准则过滤消息。当会话结束时,基于会话的列表可以被丢弃,以避免与在服务提供商处存储和维护针对客户端的过滤准则相关联的成本。通过这种方式,可以在没有在服务提供商处持续存储过滤状态数据的情况下进行消息过滤。
在随后的讨论中,提供题为“操作环境”的部分,并且该部分描述了一种可以利用一个或多个实施例的环境。在此之后,题为“基于会话的过滤示例”的部分描述了根据一个或多个实施例的可以在基于会话的过滤时发生的示例交互。接下来,题为“示例方法”的部分描述了根据一个或多个实施例的用于基于会话的过滤的示例技术。最后,题为“示例***”的部分描述了可以用于实现一个或多个实施例的示例计算***和设备。
操作环境
图1在100处总体示出根据一个或多个实施例的操作环境。环境100包括客户端102,其具有一个或多个处理器104、一个或多个计算机可读介质106和一个或多个驻留于计算机可读介质上且可由处理器执行的应用108。客户端102可以体现为任何合适的计算***和/或设备,例如(仅为举例而非限制):台式计算机、便携式计算机、诸如个人数字助理(PDA)之类的手持式计算机、蜂窝电话、机顶盒等等。下面图6示出并描述了可以表示包括客户端102的各种***和/或设备的计算***的一个示例。
计算机可读介质可包括(仅为举例而非限制)典型地与计算设备相关联的所有形式的易失性和非易失性存储器和/或存储介质。这样的介质可以包括ROM、RAM、闪存、硬盘、可移动介质等。计算机可读介质可以包括计算机可读存储介质和通信介质,其示例可在图6的示例计算***的讨论中找到。
此外,客户端102包括通信模块110形式的软件应用,其包括或以其他方式利用如上文和下文描述地操作的消息过滤器111。通信模块110表示客户端102可操作以与各种其他实体(例如,其他的客户端、供应商、服务器、网站)通信并与之交互的功能。与其他实体的交互可包括在实体之间发送和接收各种形式的电子消息(例如,电子邮件、即时消息、特定于应用的通知、文本消息等)。
在该上下文中,消息过滤器111表示客户端102可操作以使用任何合适的技术执行消息过滤的功能。例如,消息过滤器111可以实现成基于客户端维护的状态数据选择性地允许或阻止来自各种实体的消息。要做到这一点,消息过滤器111可以包含或利用允许列表和/或阻止列表,以确定是允许还是阻止特定消息和/或发送端。消息过滤也可以在客户端处以其他方式发生,比如根据发送端的声誉、分配给消息的风险评级和/或基于内容的过滤,列举若干个示例。
客户端102可以通过诸如因特网之类的网络112与一个或多个可以从其接收并向其发送包括各种消息的内容的服务提供商114通信地耦合,如上文和下文所述。每个服务提供商114被描述为具有一个或多个处理器116和一个或多个计算机可读介质118。
服务提供商114被描绘为包括资源管理器120。资源管理器120表示可由服务供应商114操作以管理可通过网络112获得的各种资源122。例如,可以经由通过网络传递以便客户端102输出的网页或其他用户界面来提供各种资源122。资源管理器120可以管理对资源122的访问、资源122的性能、用户界面或数据的配置以提供资源 122等等。
如图所示,可由服务提供商114访问的资源122可包括一个或多个服务124和/或内容126。服务提供商114可以提供一个或多个Web服务器和/或站点,客户端102可以导航到该web服务器和/或站点以便访问资源122。资源122可以包括典型地由一个或多个提供商可通过网络获得的服务124和/或内容126的任何适合的组合。服务124的一些示例包括但不限于:搜索服务、发送和接收电子邮件的电子邮件服务、在客户端102之间提供即时消息的即时消息收发服务、以及促进共享共同的兴趣和活动的用户群体之间的联系和交互的社交联网服务。服务124的附加示例包括购物服务、网络日志服务、生产率服务、认证服务、新闻服务、广告服务,仅举几例。内容126可以包括文本、视频、广告、音频、多媒体流、动画、图像、网页、web应用、设备应用,通过浏览器或其他设备应用显示的内容等的各种组合。
此外,资源管理器120可以包括或以其他方式利用消息收发服务128,其表示可操作以管理客户端102和其他实体之间的消息130的通信的功能。消息收发服务128可以单独和/或结合其他服务124***作以提供用于一个或多个不同类型消息收发的功能。作为举例而非限制,由消息收发服务提供的多个不同类型的消息收发可以包括:电子邮件、文本消息、应用和/或操作***通知、社交联网通知和邀请、即时消息收发,语音消息,对等消息收发等等。消息收发服务128也可以配置为以各种不同的方式执行服务器侧消息过滤以在垃圾消息、恶意消息和/或其他不想要的消息到达客户端102之前控制它们。在至少一些实施例中,消息收发服务128被配置成动态地创建和利用基于会话的列表132来过滤和控制消息,如上文和下文中所描述。基于会话的列表132被配置成描述客户指定的过滤准则,其可用于在服务器侧上过滤消息。为了避免在服务提供商114处与存储和维护针对多个客户端的基于会话的列表132相关联的成本,消息收发服务128可配置成在对应的会话完成时丢弃基于会话的列表132。针对与客户端的每一个单独对话,可以创建、使用且然后丢弃不同的基于会话的列表132。换句话说,基于会话的列表可以针对每一个单独的会话按照需要来动态地创建并且不必由服务提供商114持续存储。
已经描述了示例操作环境,现在考虑讨论根据一个或多个实施例的一些基于会话过滤的示例。
基于会话过滤的示例
在一个或多个实施例中,基于会话的过滤可以被实现成在客户端和服务提供商之间以合作的方式过滤消息。通过这样做,服务提供商不必持续存储用于过滤的状态数据,比如过滤列表和/或其他过滤准则。替代的方式是,服务提供商可以动态地创建用于与客户端的特定会话的基于会话的列表,然后丢弃。这使得提供商能够避免与存储可能被一些客户端不频繁使用或根本不被它们使用的状态数据相关联的成本。
在该上下文中,考虑以下的基于会话的过滤示例,在一个或多个实施例中这些示例针对服务供应商114和客户端102之间的交互而被描述以过滤消息。这些交互被表示为可能发生以实现基于会话的过滤并使用不同的字母被指定的各种示例动作。
特别地,图2 描述了发送端被添加到基于会话的列表的图200。发送端202可以发送消息以便递送给客户端(动作A)。该消息可以以如先前所讨论的各种方式来配置并且可以包括元数据或标识符以标识发送端和/或描述该消息的特性。
该消息可以通过服务提供商114的消息收发服务128来接收,该服务用于处理消息。例如,消息收发服务128可以确定特定的消息或发送端是否应该被阻止。这可以通过确定与该消息相关联的发送端、URL或域是否被指定为要被阻止而发生。这还可以通过确定该消息是否匹配或另外地满足由单独的客户端、由服务提供商、由用户团体(例如声誉)或其它方面建立的其他指定过滤准则而发生。可以基于各种不同的原因建立过滤准则以过滤消息,这些原因包括但不限于消息内容、消息类别、关键词、主题行触发器,风险评级、声誉、发送端标识等。
如前所述,服务提供商可以被配置成使得服务提供商无需持续存储用于过滤的状态数据。因此,在会话开始后一会可以创建针对特定客户端和会话的基于会话的列表132,并且最初不可用于会话。因此,最初,在基于会话的列表创建之前,消息收发服务128可以配置成:在不执行服务器侧过滤的情况下可将消息递送到客户端。替代的是,过滤最初留待在客户端侧由客户端执行。换言之,在从客户端收集对过滤消息的反馈之前消息可“直通”到客户端。
在会话期间,消息收发服务128可以从客户端收集反馈,其指示已被客户端允许/阻止的消息以及相应的原因,例如由客户端指定的且在客户端处应用的过滤准则。使用这样的反馈,消息收发服务128可以创建基于会话的列表132,其针对会话的其余部分使用以在服务器基于先前在会话期间在客户端处应用的过滤准则作出决定并过滤消息。
因此,如图2的示例所表示,消息收发服务128可以确定从发送端202接收到的消息不被阻止(动作B)。这最初可在基于会话的列表创建之前发生。一旦基于会话的列表已经建立,该确定可在基于会话的列表应用于消息时发生,但不会导致消息被阻止。如果消息没有被阻止,消息收发服务128将消息递送给客户端(动作C)。
然后消息过滤可以在客户端侧以任何适当方式发生。例如,客户端的消息过滤器111可以被实现为对在客户端接收到的消息应用各种不同的过滤准则。在所描绘的示例中,消息过滤器111确定来自发送端202的消息将被阻止(动作D)。这个确定可基于由客户端建立并应用的发送端ID和/或其它过滤准则。消息过滤器111可以利用过滤列表(阻止和/或允许)、风险或声誉评级***、基于内容的过滤和/或其他典型的客户端侧消息过滤技术。基于在客户端应用的过滤,消息在客户端被阻止(动作E)。例如,消息过滤器111可以确定发送端202在过滤列表中,或否则是不可信任的,并基于发送端身份阻止消息。消息过滤111也可以基于内容、关键字或其他准则确定阻止消息。在这种情况下,消息可以被丢弃、封锁、移动到过滤文件夹(例如,阻止的或“垃圾”消息文件夹),或否则作为被阻止的消息处理。
此外,消息过滤器可以被配置成提供状态数据形式的反馈,该反馈向服务提供商指示该消息在客户端被阻止(动作F)。关于消息的状态数据可以指示哪些消息在客户端被阻止和/或允许。状态数据还包括描述在客户端处应用的过滤技术和准则的信息。这使得消息收发服务128能够创建基于会话的列表,其再创建客户端所使用的过滤。
因此,响应于消息过滤器111提供的反馈,消息收发服务128将发送端202和/或客户端所使用的过滤准则添加到基于会话的列表(动作G)。这可涉及当列表已经不存在时创建基于会话的列表和/或向现有列表添加新的条目/数据。在至少一些实例中,基于会话的列表可以被配置为阻止列表,其指示要阻止的发送端和/或用于阻止特定消息的准则。在这种情况下,被客户端确定为不可信任的发送端202可以被添加到阻止列表。此外或可替代地,消息过滤器111可以被配置成使用允许列表,该列表指示允许的发送端和/或用于允许特定消息的准则。
一旦基于会话的列表已被建立,基于会话的列表132可以被应用于剩余的会话以执行服务器侧过滤。图3 中描绘了使用用于服务器侧过滤的基于会话的列表132的示例。
特别地,图3表示可发生以在服务器阻止来自发送端202的消息的示例动作。图3中描绘的动作可以在创建基于会话的列表之后发生,如相对于图2中所示的示例交互所讨论。发送端202可再次发送消息以便递送到客户端(动作H)。消息收发服务128可以处理该消息并确定该消息将被阻止(动作I)。响应于该确定,消息收发服务在服务器阻止该消息(动作J),并且因此此消息不被递送至客户端(动作K)。
例如,消息收发服务128可以参考如本文所述被创建的对应于客户端的基于会话的列表132,并且确定来自发送端202的消息将被阻止。在另一个示例中,来自基于会话的列表的过滤准则,比如内容或关键字限制,可以被应用于消息,这导致消息被阻止。如所讨论,应用于服务器侧的基于会话的列表可以在会话期间基于在相同的会话期间应用在客户端侧的过滤准则来动态地创建。以此方式,基于会话的列表可以被用来对在会话中稍后在服务器接收的消息执行在会话期间较早应用在客户端的过滤准则。
在会话的某一时刻,消息过滤器111可以被修改来移除或者另外地改变导致消息和/或发送端202被阻止的过滤准则(动作L)。例如,用户可决定改变在客户端侧的消息过滤器111来解除阻止(unblock)先前在会话期间被阻止的发送端。响应于这些修改,消息过滤器111可被配置成向消息收发服务128发送状态数据,这种情况下该状态数据描述为修改消息过滤器111所进行的改变。在消息收发服务128处,可以应用在客户端102进行的改变以从相应的基于会话的列表132中移除发送端202和/或过滤准则(动作M)。通过这种方式,客户端102具有了在会话期间通过在客户端侧改变消息过滤器111来随后修改基于会话的列表132的能力,这使得基于会话的列表132在服务器侧被更新。
在考虑了这些基于会话的过滤的一些示例之后,现在考虑根据一个或多个实施例的用于基于会话的过滤的示例过程。
示例方法
图4是描述根据一个或多个实施例的方法的步骤的流程图。该方法可以结合任何合适的硬件、软件、固件或它们的组合来实现。在至少一些实施例中,该方法可以通过适当配置的计算设备实现,比如图1的示例服务提供商114,其包括或以其他方式利用消息收发服务128和/或基于会话的列表132。
步骤400建立与客户端的消息收发会话。例如,客户端102可以登录到服务提供商114的账户,其使得客户端通过网络112可获得各种资源122 。资源122可以包括消息收发服务128,其被配置成使得客户端能够以各种不同的形式发送和接收消息130,像电子邮件、即时消息以及如上文及下文所述的其他消息。
步骤402获得由客户端传递的消息状态数据。例如,当在会话期间消息被客户端接收并处理时,客户端可以传递状态数据。状态数据被配置为指示由客户端作出的针对消息的过滤决策(例如允许或阻止)以及用于该决策的过滤准则。在至少一些实施例中,客户端也可以被配置为最初在建立会话时提供至少一些状态数据。例如,在会话被建立时和/或在消息被向和从客户端传递之前,客户端可以传递描述阻止准则和/或一组被阻止的发送端的初始阻止列表。
步骤404创建基于会话的列表用于过滤到客户端的消息。基于会话的列表可以使用由客户端传递的状态数据来创建。基于会话的列表被配置成再创建由客户端应用的且由状态数据描述的过滤准则。例如,特定发送端或域被客户端阻止,由客户端提供的状态数据将指示该发送端或域被阻止,并且因此基于会话的列表将被配置成阻止该发送端或域。同样,由客户端使用的任何过滤准则可以被合并到基于会话的列表中。
一旦列表被创建,步骤406在会话持续期间使用此基于会话的列表。特别地,消息过滤可以在服务器侧使用基于会话的列表进行。当附加消息被发送到客户端并被处理时,基于会话的列表可以被更新以合并由客户端传递的附加状态数据。通过这种方式,在会话期间由客户端产生和传递的状态数据可用于实现服务器侧的过滤,其再创建客户端应用的过滤准则。对于给定的会话,过滤任务最初放置于客户端。一旦特定的发送端或用于过滤的准则针对会话而建立,则通过应用基于会话的列表,服务器接管(take over)基于特定准则的过滤或来自被阻止的发送端的后续消息的过滤。为了以另一种方式阐述它,基于会话的列表可以在服务器侧被创建并被使用以根据从客户端获得的反馈选择性地阻止或允许特定消息,该反馈描述在消息收发会话期间在客户端侧被阻止或允许的发送端和/或消息类型或内容。
步骤408在会话结束时丢弃基于会话的列表。例如,当客户端退出登录或停止会话时可以丢弃列表。如果客户端发起了后续的会话,则可以针对后续会话重复刚刚描述的过程。这可涉及在没有和/或不使用先前存储在服务器的状态数据的情况下再次开始。取而代之,在后续会话期间使用的另一个基于会话的列表可以在后续会话期间由客户端产生并传递状态数据时创建。每个会话之后丢弃基于会话的列表释放了用于存储和管理状态数据的资源。有效地,服务器侧的过滤准则在每个会话后被重置。从服务器侧的观点来看,当定义阻止的基于会话的列表被丢弃时,被“阻止”的发送端或消息类型变为“非阻止的”。因此,在每个单独的会话期间,来自特定发送端的或某消息类型(例如匹配特定过滤准则的消息)的第一个消息被递送到客户端。之后,在特定会话内来自客户端的反馈被用于在服务器侧过滤后续消息。通过这种方式,可以使用合作的过滤方法,该方法利用了可从客户端和服务提供商二者获得的资源,而不使其任一个超负荷。
图5是描述根据一个或多个实施例的方法的步骤的流程图。特别地,图5示出示例过程,其中来自发送端的消息可以在服务器基于发送端的身份而被选择性地阻止。当然,各种其他过滤准则也可用于以可比拟的方式过滤消息。所述方法可以结合任何适当的硬件、软件、固件或其组合来实现。在至少一些实施例中,所述方法可以通过适当配置的计算设备来实现,比如图1中的示例服务提供商114,其包括或另外利用消息收发服务128和/或基于会话的列表132。
步骤500在会话期间检查与从发送端到客户端的消息相关联的元数据。例如,用于递送到客户端的从发送端进入的消息可以被检查以识别消息的发送端。发送端可以是特定的人、域、公司实体或其他发送端。元数据也可以被检查以确定消息的其它特性,比如内容类型、关键字、附件或脚本的包括等等。
步骤502确定针对所述会话是否已阻止发送端。例如,将在步骤500中确定的发送端的身份与基于会话的列表132中对应于客户端的条目进行比较,从而确定该发送端的条目是否包含在列表中。如前所述,基于会话的列表可以被配置为阻止列表或允许列表。出于举例的目的,假设基于会话的列表132在这里是阻止列表。在这种情况下,列表中包括发送端指示来自发送端的消息被阻止并且不应当被递送至客户端。同样,允许列表中包含发送端指示来自发送端的消息被允许并且可以被递送至客户端。
相应地,当发送端包含在阻止列表上时,步骤504在会话的持续期间阻止来自发送端的消息。否则,当此发送端未被阻止时,步骤506将消息递送给客户端。
在这种情况下,客户端可以被配置成以任何适当的方式实现它本身的消息过滤技术并将该技术应用于消息使之通过服务器。而且,客户端可以以如先前所述的状态数据的形式提供关于过滤决策的反馈。
当客户端将针对消息的这种反馈回传给服务提供商时,步骤508获得反馈并可以处理该反馈以确定消息是如何被客户端处理的。特别地,步骤510基于反馈来确定消息是被客户端阻止还是允许。比如,这个反馈可以指示基于发送端的身份阻止消息。可替代地,反馈可以指示发送端被批准或者仅仅消息在客户端被允许。
如果客户端批准发送端或另外地允许消息,则步骤512在会话期间允许该发送端发送的下一消息。在这种情况下,发送端可以保持不进入阻止列表或被加入允许列表。另一方面,如果消息被阻止,步骤514将发送端添加到被配置为每个在前示例的阻止列表的基于会话的列表。然后,基于会话的列表被用来在服务器侧处理对后续消息的过滤。假设来自同一发送端的另一个消息在会话期间被接收,基于会话的列表可以被参考并且步骤516在会话期间基于发送端包含在基于会话的列表上而阻止来自发送端的后续消息。
如前所述,除了刚刚的发送端身份之外其他各种准则也可以被用于如上文和下文所述地过滤消息。如果替代基于发送端身份阻止或允许消息,特定的准则被用于作出针对消息的过滤决定,则基于会话的列表可以被配置为反映由客户端针对过滤决策使用的准则。这使得会话持续期间、适当时在服务器匹配准则的后续消息被阻止或允许。
在考虑了用于基于会话的过滤的各种示例方法之后,现在来考虑可用于实现根据一个或多个实施例的基于会话的过滤的各个方面的示例***。
示例***
图6在600处总体示出示例***,其包括示例计算设备602,其表示可以实现上述各种实施例的一个或多个这样的计算***和/或设备。例如,计算设备602可以是服务提供商114的服务器、与客户端102相关联的设备、芯片上***和/或任何其它适当的计算设备或计算***。
示例计算设备602包括:一个或多个处理器604或处理单元;一个或多个计算机可读介质606,其可包括一个或多个存储器和/或存储部件608;一个或多个用于输入/输出(I/O)设备的输入/输出(I/O)接口610;以及允许各种部件和设备相互通信的总线612。计算机可读介质606和/或一个或多个I/O设备可作为部件包含在计算设备602中或可替代地可以耦合到计算设备602。总线612表示若干类型的总线结构中的一个或多个,包括存储器总线或存储器控制器、***总线、加速的图形端口以及使用多种总线结构中任一种的处理器或局部总线。总线612可以包括有线和/或无线总线。
存储器/存储部件608表示一个或多个计算机可读介质。存储器/存储部件606可包括易失性介质(如随机存取存储器(RAM)) 和/或非易失性介质(如只读存储器(ROM)、闪存、光盘、磁盘等等)。存储器/存储部件608可包括固定介质(如RAM、ROM、固定硬盘等)以及可移除介质(如闪存驱动器,可移除硬盘驱动器,光盘等等)。
输入/输出接口610允许用户将命令和信息输入到计算设备602,并且还允许使用各种输入/输出设备向用户和/或其它部件或设备呈现信息。输入设备的示例包括键盘、光标控制设备(如鼠标)、麦克风、扫描仪等等。输出设备的示例包括显示设备(例如监视器或投影仪)、扬声器、打印机、网卡等等。
本文可以在软件、硬件(固定的逻辑电路)或程序模块的通用背景中描述各种技术。一般地,这样的模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、元素、组件、数据结构等等。这些模块和技术的实现方式可被存储在某形式的计算机可读介质上或通过某形式的计算机可读介质进行传输。计算机可读介质可包括多种可以被计算设备访问的介质或媒质。作为举例而非限制,计算机可读介质可以包括“计算机可读存储介质”和“通信介质”。
与纯粹的信号传输、载波、信号本身形成对照,“计算机可读存储介质”可以指实现信息的持续的和/或非暂时的存储的介质和/或设备。因此,计算机可读存储介质指的是非信号承载介质。计算机可读存储介质还包括具有可以在一些实施例中使用以实现所述技术的各方面的、以硬件形式实现的指令、模块和/或固定设备逻辑的硬件元件。
计算机可读存储介质包括易失性和非易失性、可移除和不可移除介质和/或适合用于存储诸如计算机可读指令、数据结构、程序模块、逻辑元件/电路或其它数据之类的信息的方法和技术中实现的存储设备。计算机可读存储介质的示例包括但不限于RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光学存储装置、硬盘、磁盘、磁带、磁盘存储装置或其它磁性存储设备、集成电路或芯片的硬件元件(固定逻辑)或其它存储设备、有形介质或适用于存储期望的信息且可被计算机访问的制造产品。
“通信介质”可以指被配置为比如通过网络112传输指令至计算设备的硬件的信号承载介质。通信介质典型地可收录计算机可读指令、数据结构、程序模块或已调制数据信号(如载波、数据信号或其它传输机制)中的其他数据。通信介质也可包括任何信息递送介质。术语“已调制数据信号”意指使其特性的一个或多个以编码信号中信息的方式来设置或改变的信号。作为举例而非限制,通信介质包括有线介质,比如有线网络或直接有线连接,以及无线介质,比如声学、RF、红外及其它无线介质。
以上所提及介质的任何组合也包括在计算机可读介质的范围内。相应地,包括通信模块110、消息过滤器111、资源管理器120和其它程序模块的软件、硬件或程序模块可体现为收录在某形式的计算机可读介质上的一个或多个指令和/或逻辑。
因此,本文所描述的特定的模块、功能、组件和技术可以在软件、硬件、固件和/或其组合中实现。计算设备602可被配置成实现对应于计算机可读介质上实现的软件和/或硬件模块的特定指令和/或功能。所述指令和/或功能可通过一个或多个制造产品(例如一个或多个计算设备602和/或处理器604)执行/操作以实现基于会话的过滤技术以及其他技术。这样的技术包括但不限于本文所述的示例过程。因此,计算机可读介质可被配置用来存储或另外地提供指令,当该指令被本文所述的一个或多个设备执行时,产生用于基于会话的过滤的各种技术。
结论
各种不同的实施例提供设计用于在客户端和服务提供商之间以合作方式实现消息过滤的基于会话的过滤。服务提供商可从客户端获得反馈,该反馈指示已经在客户端按照客户端指定准则过滤的一个或多个递送的消息。服务提供商可基于反馈动态创建针对客户端的基于会话的列表并且在会话期间使用该列表以在服务器侧按照客户端指定准则过滤消息。当会话结束时,基于会话的列表可被丢弃以避免与在服务提供商处存储并维护针对客户端的过滤准则相关联的成本。
虽然通过特定于结构特征和/或方法动作的语言描述了本主题,但应当理解,所附权利要求中限定的本主题不必限于上文所述的特定特征或动作。相反,上文所述的特定特征和动作作为实现权利要求的示例形式而被公开。
Claims (10)
1.一种实现消息收发服务的方法,包括:
建立与客户端的消息收发会话(400)以通过网络将消息从在服务器侧的服务提供商递送到在客户端侧的客户端;
获得按照在所述消息收发会话期间从客户端传送到消息收发服务的过滤器状态数据的形式的反馈(402),所述过滤器状态数据指示由客户端在所述消息收发会话期间用来在客户端侧过滤消息的过滤准则;
基于来自客户端的反馈动态地创建合并了应用于客户端侧的过滤准则的、将由所述消息收发服务在所述会话期间使用的、基于会话的列表(404),所述消息收发服务被配置成按要求为独立的会话创建不同的基于会话的列表,所述独立的会话具有在所述独立的会话结束时被丢弃以避免在服务器侧永久存储针对其的过滤器准则的客户端;
在所述消息收发会话的持续期间使用基于会话的列表(406)来在服务器侧使用在客户端侧应用的过滤准则来过滤消息;以及
当所述消息收发会话结束时,丢弃基于会话的列表(408)。
2.权利要求1的方法,其中所述消息包括电子邮件消息。
3.权利要求1的方法,其中所述消息包括即时消息收发消息。
4.权利要求1的方法,其中所述过滤准则被配置成基于消息发送端的身份过滤消息。
5.权利要求1的方法,其中所述过滤准则被配置成基于消息的内容过滤消息。
6.权利要求1的方法,其中消息收发服务被进一步配置成执行以下动作,所述动作包括:
在消息收发会话期间,从特定发送端向客户端递送第一个消息;
在消息收发会话期间,根据从客户端获得的反馈,在服务器侧选择性地阻止或允许来自特定发送端的后续消息,其中所述反馈描述了在客户端侧第一个消息被客户端阻止还是允许。
7.权利要求1的方法,其中消息收发服务被配置成向客户端提供多种不同类型的消息收发。
8.一种计算机实现的方法,包括:
在服务器侧的服务提供商和客户端侧的客户端之间的消息收发会话期间,通过网络从特定发送端向客户端递送第一个消息(506);
从客户端获得反馈(508),这些反馈是关于第一个消息在客户端侧被客户端阻止还是允许的;
在消息收发会话期间,根据从客户端获得的反馈,在服务器侧选择性地阻止或允许来自特定发送端的后续消息(510,512,514,516)。
9.权利要求8的计算机实现的方法,其中选择性地阻止或允许来自于特定发送端的后续消息包括:
基于反馈,确定在客户端侧所述特定发送端被客户端阻止;
添加所述发送端到描述被阻止的发送端的基于会话的列表;
在消息收发会话期间,在服务器侧应用基于会话的列表以阻止来自服务器侧的发送端的后续消息。
10.权利要求9的计算机实现的方法,进一步包括:
响应于消息收发会话结束,丢弃基于会话的列表;以及
在不同的消息收发会话期间,递送在该不同消息收发会话期间从特定发送端发送到客户端的第一个消息。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/947419 | 2010-11-16 | ||
US12/947,419 US9209993B2 (en) | 2010-11-16 | 2010-11-16 | Cooperative session-based filtering |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102413131A CN102413131A (zh) | 2012-04-11 |
CN102413131B true CN102413131B (zh) | 2015-05-06 |
Family
ID=45914981
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110362997.1A Active CN102413131B (zh) | 2010-11-16 | 2011-11-16 | 基于会话的合作过滤 |
Country Status (2)
Country | Link |
---|---|
US (2) | US9209993B2 (zh) |
CN (1) | CN102413131B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9209993B2 (en) | 2010-11-16 | 2015-12-08 | Microsoft Technology Licensing, Llc | Cooperative session-based filtering |
US8934015B1 (en) * | 2011-07-20 | 2015-01-13 | Google Inc. | Experience sharing |
CN103209398B (zh) | 2012-01-17 | 2015-12-09 | 阿里巴巴集团控股有限公司 | 灰名单建立的方法和***以及短信发送的方法和*** |
US10652191B2 (en) * | 2014-12-31 | 2020-05-12 | C. Douglass Thomas | Data transmission management for computer based inter-user communication |
US10650621B1 (en) | 2016-09-13 | 2020-05-12 | Iocurrents, Inc. | Interfacing with a vehicular controller area network |
KR102019173B1 (ko) * | 2016-10-31 | 2019-09-09 | 삼성에스디에스 주식회사 | 웹 응용 서버의 클라이언트 세션 차단 방법 및 장치 |
CN117675743A (zh) * | 2022-08-31 | 2024-03-08 | 华为云计算技术有限公司 | 消息显示方法、装置、消息处理方法、服务器及*** |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1470999A (zh) * | 2002-06-27 | 2004-01-28 | 用于网络浏览的内容过滤 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7370071B2 (en) | 2000-03-17 | 2008-05-06 | Microsoft Corporation | Method for serving third party software applications from servers to client computers |
US7249162B2 (en) * | 2003-02-25 | 2007-07-24 | Microsoft Corporation | Adaptive junk message filtering system |
US7293038B2 (en) | 2003-02-25 | 2007-11-06 | Bea Systems, Inc. | Systems and methods for client-side filtering of subscribed messages |
US7222158B2 (en) * | 2003-12-31 | 2007-05-22 | Aol Llc | Third party provided transactional white-listing for filtering electronic communications |
US20050198173A1 (en) * | 2004-01-02 | 2005-09-08 | Evans Alexander W. | System and method for controlling receipt of electronic messages |
US7613777B2 (en) | 2004-03-11 | 2009-11-03 | Microsoft Corporation | Rapidly obtaining a subset of message data from a server for filtering |
US20060036690A1 (en) | 2004-07-12 | 2006-02-16 | O'neil Patrick J | Network protection system |
FI20041159A0 (fi) * | 2004-09-07 | 2004-09-07 | Nokia Corp | Menetelmä viestien suodattamiseksi tietoverkossa |
WO2008009197A1 (fr) | 2006-07-14 | 2008-01-24 | Huawei Technologies Co., Ltd. | Réseau par paquets et procédé permettant de réaliser ce réseau |
WO2008100542A1 (en) | 2007-02-12 | 2008-08-21 | Remoba, Inc. | Systems and methods for managing information in mobile devices |
CN101127744B (zh) | 2007-09-29 | 2010-10-13 | 杭州华三通信技术有限公司 | 对非法客户端进行隔离提示的方法和***以及网关设备 |
US20090132579A1 (en) * | 2007-11-21 | 2009-05-21 | Kwang Edward M | Session audit manager and method |
US20090141023A1 (en) * | 2007-11-29 | 2009-06-04 | Brian Mark Shuster | Selective filtering of user input data in a multi-user virtual environment |
US9209993B2 (en) | 2010-11-16 | 2015-12-08 | Microsoft Technology Licensing, Llc | Cooperative session-based filtering |
-
2010
- 2010-11-16 US US12/947,419 patent/US9209993B2/en not_active Expired - Fee Related
-
2011
- 2011-11-16 CN CN201110362997.1A patent/CN102413131B/zh active Active
-
2015
- 2015-11-30 US US14/954,575 patent/US9762518B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1470999A (zh) * | 2002-06-27 | 2004-01-28 | 用于网络浏览的内容过滤 |
Also Published As
Publication number | Publication date |
---|---|
CN102413131A (zh) | 2012-04-11 |
US9762518B2 (en) | 2017-09-12 |
US20120124144A1 (en) | 2012-05-17 |
US9209993B2 (en) | 2015-12-08 |
US20160080302A1 (en) | 2016-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102413131B (zh) | 基于会话的合作过滤 | |
US8849917B2 (en) | Use of information channels to provide communications in a virtual environment | |
AU2006242410B2 (en) | Methods and apparatus for enabling a dynamic network of interactors according to personal trust levels between interactors | |
JP5615922B2 (ja) | 電話で見いだされるマッシュアップとプレゼンス | |
CN102138156B (zh) | 维持即时消息接发应用程序中的群 | |
CN103535004B (zh) | 用于促进匿名音频和视频通信的方法和基于web的*** | |
CN102754387B (zh) | 在允许通用即插即用的电话设备与广域网设备之间进行多媒体会议的***和方法 | |
CN102150443A (zh) | 用于在即时消息用户和短消息服务用户之间进行通信的***和方法 | |
US20070005711A1 (en) | System and method for building instant messaging applications | |
CN102739635A (zh) | 自动的会议重新加入 | |
CN103533189A (zh) | 移动座席呼叫的分配方法和装置 | |
CN102422655A (zh) | 多模会话保持和恢复 | |
CN102484655B (zh) | 专用网络中的公用机器人管理方法和*** | |
US20200051024A1 (en) | Establishing a communication event | |
WO2011155996A2 (en) | Group messaging integration system, method and apparatus | |
CN107528767B (zh) | 会话的处理方法和装置 | |
US10453160B2 (en) | Embeddable communications software module | |
CN102655538A (zh) | 智能创建日程的方法和*** | |
JP5172850B2 (ja) | セッションベースの通信 | |
CN102792719A (zh) | 通过集中式通知的多模态会话状态和转移 | |
CN104365161A (zh) | 在进行中的通信会话期间向用户通知活动的方法和*** | |
CN103384295A (zh) | 一种呼叫即时聊天好友的方法及*** | |
US9473430B2 (en) | Method and system for group number-based microblog aggregation | |
CN103327087A (zh) | 一种会议控制的方法及装置 | |
Evans | An introduction to unified communications: challenges and opportunities |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
ASS | Succession or assignment of patent right |
Owner name: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150617 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20150617 Address after: Washington State Patentee after: Micro soft technique license Co., Ltd Address before: Washington State Patentee before: Microsoft Corp. |