用于减少联络中心中的存储空间的系统和方法与流程

文档序号:16532105发布日期:2019-01-05 10:49阅读:180来源:国知局
用于减少联络中心中的存储空间的系统和方法与流程

本公开的实施例总体上涉及存储与联络中心交互相关的数据,具体地涉及减少存储该数据所需的存储空间量。



背景技术:

许多新产品和服务提供专业的在线客户支持,导致联络中心数量增大。此外,由于技术现在允许这些联络中心提供基于多媒体的支持,与客户的交互现在涉及文本数据、语音数据、视频数据、聊天数据、电子邮件附件、图像数据以及这些不同类型的数据中的一种或多种数据的组合。因此,现在可以由联络中心接收和生成大量的数据,联络中心可能需要存储这些数据。

由于商业原因,联络中心可能希望存储这些数据中的一部分,并可能因监管原因,需要存储这些数据中的一部分。因此,可能需要大量存储空间来存储在联络中心与其客户之间的交互期间产生的数量巨大的各种类型的数据。



技术实现要素:

本公开的一个方面涉及一种用于存储在涉及联络中心的联络和所述联络中心的代理的对话中的消息的方法。该方法包括由所述联络中心的计算机接收所述消息,其中所述对话包括多个消息;由所述联络中心的所述计算机基于所述多个消息中的一个或多个消息来识别接收到的消息中的冗余的冗余信息;并且由所述联络中心的所述计算机识别能从接收到的消息外部的数据源导出的可导出信息。所述方法还包括由所述联络中心的所述计算机通过从接收到的消息中消除所述冗余信息和所述可导出信息来生成修改消息;并且由所述联络中心的所述计算机存储所述修改消息。根据此方面,数据源是多个消息中的一个或多个、存储在可由联络中心的计算机访问的存储器中的一个或多个文件,或两者的组合。

在另一方面,所述修改消息包括多个单独部分,每个单独部分具有对应的相应数据类型,并且所述方法包括:由所述联络中心的所述计算机单独地压缩所述多个单独部分中的每一个。之后,所述联络中心的所述计算机将所述单独压缩的部分组合成单元,其中存储所述修改消息包括存储所述单元。此外,所述方法可以包括由所述联络中心的所述计算机基于所述单独部分的对应的数据类型来为每个所述单独部分选择相应压缩算法。

根据本公开的一个方面,存储修改后的消息可以包括:在元数据储存库中存储与接收到的消息相对应的条目;以及在内容储存库中存储与接收到的消息相对应的条目。具体而言,内容储存库包括与多个消息相对应的多个条目,并且元数据储存库中的条目可以与内容储存库的多个条目中的一个或多个条目相链接,该多个条目包括从其识别可导出信息的内容。而且,元数据储存库中的条目可以与内容储存库的多个条目中的一个或多个条目相链接,该多个条目包括从其识别冗余信息的内容。

本公开的另一方面涉及一种用于存储在涉及联络中心的联络和所述联络中心的代理的对话中的消息的系统,该系统包括存储可执行指令的存储器设备和与所述存储器设备通信的处理器。具体而言,由处理器执行可执行指令使得处理器:a)接收所述消息,其中所述对话包括多个消息;b)基于所述多个消息中的一个或多个消息来识别接收到的消息中的冗余的冗余信息;c)识别能从接收到的消息外部的数据源导出的可导出信息;d)通过从接收到的消息中消除所述冗余信息和所述可导出信息来生成修改消息;以及e)存储修改消息。

根据此方面,数据源是多个消息中的一个或多个、存储在可由联络中心的计算机访问的存储器中的一个或多个文件,或两者的组合。

在另一方面,所述修改消息包括多个单独部分,每个单独部分具有对应的相应数据类型,并且处理器单独地压缩所述多个单独部分中的每一个。之后,所述处理器将所述单独压缩的部分组合成单元,其中存储所述修改消息包括存储所述单元。此外,所述处理器基于所述单独部分的对应的数据类型来为每个所述单独部分选择相应压缩算法。

根据本公开的一个方面,存储修改后的消息可以包括:在元数据储存库中存储与接收到的消息相对应的条目;以及在内容储存库中存储与接收到的消息相对应的条目。具体而言,内容储存库包括与多个消息相对应的多个条目,并且元数据储存库中的条目可以与内容储存库的多个条目中的一个或多个条目相链接,该多个条目包括从其识别可导出信息的内容。而且,元数据储存库中的条目可以与内容储存库的多个条目中的一个或多个条目相链接,该多个条目包括从其识别冗余信息的内容。

附图说明

因此,可以详细理解本公开的上述特征的方式,对上面简要总结的本公开的实施例的更具体描述可以通过参考在附图中例示的实施例来得到。然而,要注意的是,附图仅例示了包含在本公开的范围内的典型实施例,并且因此不应被认为是限制性的,因为本公开可以允许其他等效实施例,其中:

图1例示了根据本公开的原理的通信系统架构;

图2例示了根据本公开的原理的联络中心的各方面;

图3例示了根据本公开的原理的联络中心服务器;

图4是根据本公开的原理的减少用于存储内容的空间的示例方法的流程图;

图5a是根据本公开的原理的减少用于存储内容的空间的另一示例方法的流程图;

图5b例示了根据本公开的原理的示例储存库配置;以及

图6例示了根据本公开的原理的示例计算机平台。

具体实施方式

以下将结合示例性通信系统来说明本公开。虽然非常适合用于例如,具有自动呼叫或联络分配(acd)系统或其他类似的联络处理交换机的系统,但是,本公开不限于任何特定类型的通信系统交换机或系统元件的配置。本领域技术人员将认识到,所公开的技术可以用于期望提供改进的联络处理的任何通信应用中。

在以下详细描述中,阐述了许多具体细节以便提供对本文描述的实施例或其他示例的透彻理解。在一些情况下,没有详细描述公知的方法、过程、组件和电路,以免混淆下面的描述。此外,所公开的示例仅用于说明性目的,而不应被解释为限制本公开的实施例的范围。

术语“一”或“一个”实体是指一个或多个该实体。如此,术语“一”(或“一个”)、“一个或多个”和“至少一个”在本文中可以互换使用。还应该指出,术语“包括”、“包含”和“具有”可以互换使用。

如本文所使用的,术语“自动”及其变体指的是任何过程或操作,当执行该过程或操作时无需实质性的人工输入即可完成。然而,如果在执行过程或操作之前接收到输入,即使过程或操作的执行使用了实质性或非实质性的人工输入,则过程或操作可以是自动的。如果人工输入会影响过程或操作的执行方式,那么这些输入被认为是实质性的。同意过程或操作的执行的人工输入不被视为“实质性的”。

本文所使用的术语“计算机可读介质”是指参与存储指令和/或向处理器提供指令以供执行的任何有形存储和/或传输介质。这样的介质可以采取许多形式,包括但不限于非易失性介质、易失性介质和传输介质。非易失性介质包括例如nvram或磁盘或光盘。易失性介质包括动态存储器,诸如主存储器。计算机可读介质的常见形式包括,例如,软盘、柔性盘、硬盘、磁带,或任何其他磁性介质,磁光介质、cd-rom,任何其他光学介质,穿孔卡片、纸带,具有孔的图案的任何其他物理介质,ram、prom,以及eprom,flash-eprom,固态介质(如存储器卡)、任何其他存储器芯片或盒,如下面所描述的载波,或计算机可以从其中读取的任何其他介质。向电子邮件或其他独立的信息存档或存档组的数字文件附件被视为相当于有形存储介质的分发介质。当计算机可读介质被配置为数据库时,可以理解,数据库可以是任何类型的数据库,诸如关系型、层次型、和/或面向对象的等等。相应地,本公开被视为包括其中存储了本公开的软件实现的有形的存储介质或分发介质和现有技术认识到的等价物和后继介质。

如本文结合本公开的实施例所使用的,术语“联络”是指来自用户或客户的通信。通信可以通过任何通信介质,例如但不限于电话呼叫、电子邮件、即时消息、网络聊天等等。术语“用户”和“客户”表示联络中心外部的一方,并且在此用于指代联络或通信会话的另一方。例如,用户或客户可以包括,例如,请求帮助的人或为第三方请求帮助的人,并且还可以包括,例如,与联络中心或与由联络中心所代表的企业有商业关系的人。

对于由联络中心接收到的每个“联络”,联络中心的计算机都将实例化“联络对象”,该“联络对象”可以包括表示该联络的一个或多个变量、函数和数据结构。每个联络对象都包含多个属性,根据其相应的联络,给这些属性分配值。每个联络对象都还可以包括到与其相应联络相关联的其他数据和/或属性的指针、链接或引用。联络对象可以在联络中心的不同队列、数据库、系统、软件应用和其他基于计算机的资源之间传递。每个联络对象还可以包括对另一个联络对象的前向引用和对再一个联络对象的后向引用。以这种方式,可以构建联络对象的优先级化列表或队列。“联络对象”在本文中通常被简称为“联络”,因为在上下文中清楚的是,计算机操纵的联络对象是正在描述的内容。

如本文所使用的术语“确定”、“算出”、“计算”及其变体可互换使用,并且包括任何类型的方法、过程、数学运算或技术。

如本文所使用的,术语“网关”通常可以包括在设备之间发送和接收数据的任何设备。例如,网关可以包括路由器、交换机、网桥、防火墙、其他网络元件等及其任何组合。

如本文所使用的术语“模块”是指能够执行与该元件相关联的功能的任何已知或以后开发的硬件、软件、固件、人工智能、模糊逻辑或者硬件和软件的组合。而且,尽管根据示例性实施例描述了本公开,但应该理解的是,可以单独要求保护本公开的这些单独方面。

如本文所使用的,术语“信号”可以包括电信号、无线电信号、光学信号、声学信号等中的一种或多种。

如本文所使用的术语“交换机”、“服务器”、“联络中心服务器”或“联络中心计算机服务器”应当被理解为包括程控交换机(pbx)、acd系统、企业交换机或其他类型电信系统交换机或服务器,以及其他类型的基于处理器的通信控制设备,诸如,但不限于媒体服务器、计算机、附属设备等。

自动呼叫或联络分配(acd)是一种通信服务器软件特征,用于处理呼入、呼出和内部呼叫,并将它们分配到称为寻线组(huntgroup)或分组(split)的分机群组。通信服务器还将关于acd操作的信息发送到呼叫管理系统(cms),该系统存储和格式化数据并产生关于acd活动的实时和历史报告。联络中心使用acd将呼入路由到专门分配的分组/技能和代理。acd允许系统管理员创建高效的呼叫管理环境。

本公开的一个或多个实施例可以利用会话发起协议(sip)作为通信协议。sip是已知的通信协议,在互联网工程任务组(ietf)请求注释(rfc)3261中对其进行了描述,其内容通过引用整体并入在此。sip是用于建立多种实时通信会话的开放式信令协议。可以使用sip来建立的通信会话类型的示例包括语音、视频和/或即时消息。sip还有助于对等通信会话。这些通信会话可以在诸如个人计算机、膝上型计算机、个人数字助理、电话、移动电话、蜂窝电话等之类的任何类型的通信设备上执行。sip的一个关键特征是它能够将最终用户的记录地址(aor)用作所有通信的单个统一公用地址。因此,在sip增强型通信世界中,用户的aor成为其单一地址,其将用户链接到与该用户相关联的所有通信设备。通过使用此aor,呼叫者可以到达用户的通信设备(也称为用户代理(ua))中的任何一个,而无需知道唯一设备地址或电话号码中的每一个。

sip框架中的用户或任何其他可寻址实体由统一资源标识符(uri)来标识。每个这样的互联网风格的地址(例如,sip:johndoe@avaya.com)都映射到一个或多个联络,每个联络通常都代表可以用于联络到相应用户的设备或服务。示例包括电话、桌面多媒体客户端、即时消息帐户、电子邮件帐户等。sip框架负责将寻址到给定url的对等会话请求路由到该url的一个或多个适当的联络。sip框架可以利用关于由url标识的用户的偏好、存在和位置的信息来确定最合适的联络。该协议还提供了指定所请求的会话类型的机制,以及更改会话参数的方式。

sip不是一个垂直集成的通信系统。相反,sip是一个可以与其他ietf协议一起使用来构建完整多媒体体系结构的组件。通常,这些体系结构将包括诸如用于传输实时数据并提供服务质量(qos)反馈的实时传输协议(rtp)(rfc3550)、用于控制流媒体的传送的实时流协议(rtsp)(rfc2326)、用于控制到公共交换电话网(pstn)的网关的媒体网关控制协议(megaco)(rfc3015)以及用于描述多媒体会话的会话描述协议(sdp)(rfc4566)之类的协议。因此,sip可以与其他协议结合使用,以便为用户提供完整的服务。但是,sip的基本功能和操作并不依赖于这些协议中的任何一个。

实时传输控制协议(rtcp)是已知的协议,在ietcrfc3550中对其进行了描述。rtcp为rtp媒体流提供带外统计和控制信息。它在媒体流的传送和打包中与rtp相关联,但不会传输媒体流本身。通常,rtp媒体流将在偶数编号的用户数据报协议(udp)端口上发送,rtcp消息通过下一较高的奇数编号端口发送。rtcp可用于通过周期性地将统计信息发送给流式多媒体会话中的参与者来提供关于媒体分发中的qos的反馈。实现rtcp的系统收集媒体连接的统计信息以及诸如传输的八位字节和数据包计数、丢失的数据包计数、抖动和往返延迟时间之类的信息。应用程序可以使用该信息来控制qos参数,例如通过限制流速率或通过使用不同的编解码器。

图1示出了根据本公开的包括联络中心100的通信系统的说明性实施例。联络中心100经由通信链路150和通信网络154与一个或多个外部通信设备174-1至174-m进行通信,其中m是整数,m≥1。外部通信设备174-1至174-m与一个或多个联络或客户相关联,并且可以包括例如蜂窝电话、膝上型计算机、个人计算机(pc)、个人数字助理(pda)、数字电话、模拟电话等等。外部通信设备174-1至174-m可以被配置为支持诸如音频媒体流和/或视频媒体流之类的的一种或多种类型的流媒体。通信网络154可以是分组交换和/或电路交换的,并且可以包括例如诸如互联网的广域网(wan)、pstn、普通老式电话服务(pots)网络、蜂窝通信网络或其组合。分组交换网络可以包括任何数据和/或分布式处理网络,并且通常包括用于管理数据包流的代理服务器(未示出)、注册器(未示出)和路由器(未示出)。电路交换网络可以包括多个中继线(未单独标记)。

如结合图2更详细解释的那样,联络中心100包括在联络中心100内的边界设备130、中央联络中心服务器110、媒体服务器148、一个或多个其他服务器126以及一组数据存储或数据库114(参见图1),包含可能提高联络处理的价值和效率的联络或客户相关信息和其他信息。联络中心100的一些或所有组件可以通过诸如局域网(lan)或wan之类的网络142互连。尽管图1中描绘了一个中央联络中心服务器110,但是,可以在单个联络中心100中或者在单个企业拥有和运营但由通信网络154分开的多个单独的lan142中提供两个或更多个服务器110。类似地,可以在联络中心100中提供两个或更多个媒体服务器148。在联络中心100包括两个或更多个服务器110和/或媒体服务器148的配置中,每个服务器110、148都可以包括类似的功能,但是可以被配置为将其特征仅提供给所有联络中心用户的子集。另外,应该理解的是,在图1-3中描绘的一些或全部功能可以共同托管和/或共同驻留在单个服务器和/或处理器上。

联络中心100进一步包括操作分组交换(第一)通信设备134-1到134-n(诸如计算机工作站或个人计算机)和/或电路交换(第二)通信设备138-1到138-n的多个工作代理,其中n是整数,n≥1。第一代理通信设备134-1至134-n可以包括,例如,ip硬电话(诸如avayainc.的4600seriesipphonestm)、ip软电话(诸如avayainc.的ipsoftphonetm)、个人数字助理(pda)、个人计算机(pc)、笔记本电脑、基于分组的h.320视频电话和会议单元、基于分组的语音消息传送和响应单元、基于分组的传统计算机电话附属设备、基于对等的通信设备以及任何其他合适的通信设备。在一个配置中,服务器110、网络154和第一代理通信设备134-1到134-n是sip兼容的,并且可以包括用于诸如轻量级目录访问协议(ldap)、h.248、h.323、简单邮件传输协议(smtp)、imap4、isdn、e1/t1和模拟线路或中继线之类的各种其他协议的接口。第二代理通信设备138-1至138-n可以分别对应于一组内部分机ext1至extn中的一个,并且可以包括例如有线和无线电话、pda、h.320可视电话和会议单元、语音消息传送和响应单元、传统的计算机电话附属设备以及任何其他合适的通信设备。第二代理通信设备138-1至138-n可以经由一个或多个链路152与外部通信设备174-1至174-m进行通信。用虚线示出链路152以指出它表示外部通信设备174-1至174-m与第二通信设备138-1至138-n之间的连接的逻辑表示。这些设备之间的实际的物理连接可以包括通过网络142(可能是边界设备130)以及服务器110、148、126中的一个或多个的各种路由。

应该注意的是,本公开不需要联络中心100的组件之间的任何特定类型的信息传输介质,即,本公开可以用任何期望类型的传输介质以及不同类型的传输信道的组合来实现。还应该强调的是,如图1所示的联络中心100的元件的配置仅用于说明的目的,并不应被解释为将本公开限制为任何特定的元件布置。

图2例示了根据本公开的原理的联络中心100的各方面,其包括边界设备130、联络中心服务器110、媒体服务器148、呼叫记录器144、生物识别引擎136和外出竞争(outboundcampaign)132。联络中心100还可以包括多个附加服务器,即语音邮件服务器118、交互式响应单元(例如ivr)122以及一个或多个其他服务器126。尽管被描绘为单独的服务器和/或应用,但应该理解的是,图2中所描绘的一些或全部功能可以共同托管和/或共同驻留在单个服务器和/或处理器上,例如,联络中心服务器110。

联络中心服务器110和媒体服务器148可以分别经由其各自的通信链路140、146(如图所示)或经由交换机158(未示出)连接到lan142。联络中心服务器110还可以经由一个或多个可选的通信链路(未示出)连接到联络中心100的一个或多个其他组件,包括例如媒体服务器148、呼叫记录器144、生物识别引擎136,以及外出竞争132。可以理解,一个或多个其他服务器126还可以包括扫描仪(其通常不连接到交换机130)、voip软件、视频通话软件、语音消息传送软件、ip语音服务器、传真服务器、web服务器、电子邮件服务器等等。

边界设备130可以包括交换机158、计算机电话集成(cti)接口160、sip网关162或安全网关164中的一个或多个的功能。交换机158和/或服务器110可以包括用于将联络引导到一个或多个代理通信设备134、138(参见图1)的任何体系结构。在一些实施例中,交换机158可以通过在多个逻辑和/或地理上不同的联络中心100之间分配呼入或呼出联络来执行负载平衡功能。说明性地,交换机158和/或服务器110可以是由avayainc.出售的、名为definitytmpbx-basedacd系统、multivantagetmpbx、communicationmanagertm、s8300tm媒体服务器和任何其他媒体服务器、sipenabledservicestm、intelligentpresenceservertm、和/或avayainteractioncentertm的订户驻地设备的修改形式,以及由avaya或其它公司提供的任何其他产品或解决方案。通常,交换机158和/或服务器110是存储程序控制的系统,其通常包括到外部通信链路、通信交换结构、服务电路(例如音调发生器、通告电路等)的接口、用于存储控制程序和数据的存储器,以及用于执行存储的控制程序以控制接口和结构并提供自动联络分配功能的处理器(即计算机)。其他类型的已知交换机和服务器在本领域中是公知的,因此在此不再详细描述。

如图1和2所示,cti接口160和sip网关162可以促进外部通信设备174-1至174-m与第一和第二代理通信设备134、138之间的通信。例如,sip网关162可以与来自通信网络154的一个或多个sip中继线连接,并将进入的聚合sip流量分成单独的sip会话,并聚集单个外出sip会话。安全网关164可以位于服务器110和通信网络154之间,以处理在服务器110和通信网络154之间传递的信息。安全网关164可以是例如avayainc.的g700mediagatewaytm,并且可以诸如经由附属处理器(如图所示)实现为硬件或实现为服务器110中的芯片。

联络中心100的服务器和/或计算机还可以包括上下文存储127和收获模块129。这两个特征在图2中被示为分开的系统,但它们也可以在单个服务器或单个服务器集群上执行,这可以称为体验管理器。收获模块129被配置为建立上下文存储127或向其添加数据(或客户的相关信息)。上下文存储127包括存储各种转接数据(例如与客户交互有关的数据)的数据库或储存库。收获模块129可利用附加数据库来处理数据并存储其他数据。联络或客户可以与联络中心100内的不同系统进行通信,并且这些系统可以从上下文存储127检索数据或者提供要存储在上下文存储127中的数据。

在一个实施例中,收获模块129可与票务系统、订购工具系统、情绪分析引擎、客户关系管理(crm)系统和业务流程管理系统(bpm)进行通信,以建立上下文存储127或向其添加数据。收获模块129可以与这些系统进行通信,并根据联络中心100内正在处理和监视的各种联络,将更新的数据提供给上下文存储127。

在一个示例中,在客户与联络中心100的代理交互之后,收获模块129可以更新上下文存储127。在另一个实施例中,票务系统、订购工具系统、情绪分析引擎、客户关系管理(crm)系统和业务流程管理系统(bpm)可以直接推送信息,以及从上下文存储127中提取信息。

作为一个示例,情绪分析数据可以包括在联系人与联络中心代理进行交互期间联系人的情绪,例如,快乐、愤怒、抱怨等。

crm更新可能包含有关客户或联系人与企业或联络中心的关系的任何更新的数据。订单更新信息可以包括关于联系人发出的总订单的更新。呼叫/交互度量可以包括呼叫持续时间、参与者数量、呼叫是否被转移、是否涉及主管等。此外,联络中心100的任何组件或系统(例如,自助服务系统)可以访问上下文存储127、检索上下文信息、更新它、改变它、再次放回,等等。

收获模块129可以从与客户有关的不同来源收获相关数据。例如,收获模块129可以从上下文存储127收获与客户有关的相关数据。在一个实施例中,如上所述,收获模块129收获情绪分析数据、crm更新、订单更新信息、发布呼叫/交互调查、呼叫/交互度量以及任何交互上下文数据。收获模块129收集这些数据以及在客户交互期间和之后已经改变的其他信息。

上下文存储127还可以存储任何信息,例如与交互相关的信息、与交互的上下文有关的信息、当前信息或案例信息以及更新信息。例如,一旦代理完成呼叫,收获模块129就可开始处理,并将信息存储在上下文存储127中。

上下文存储127向联络中心100中的各种应用提供集中式数据缓存。上下文存储127可以提供restfulweb服务api,使得其他应用可以设置或获取上下文信息。尽管可以设想各种数据库方案,但是存储关于联络的上下文信息,使得可以基于存储在其中的各种数据中的任何数据来搜索和检索信息。例如,上下文存储中的每个条目都可以包含a)contextid,其是包含上下文条目的唯一标识符的文本字段;b)可以包含多个键值对的数据;以及c)允许创建相关上下文条目的逻辑组的groupid。

如本文所述,可以生成、检索和存储关于联络的各种数据或上下文。该上下文信息可以包括关于联络的当前属性、与联络相关联的设备、与联络相关联的用户的位置、与联络相关联的用户的身份;与涉及相关联的用户或用户设备的过去的联络相关联设备和/或位置、关于与联络相关联的用户的社交媒体信息,以及关于与联络相关联的用户的过去的购物、过去的询问、组从属关系和人口统计信息。上下文信息还可以包括关于联络中心资源、代理和与过去和与联络相关联的用户的交互相关联的问题解决的各种信息。

虽然参照客户端-服务器体系结构讨论了一些实施例,但应该理解,本公开的原理适用于其他网络体系结构。例如,本公开适用于对等网络,诸如由sip设想的那些。在客户端-服务器模型或范例中,描述了网络服务和最终用户访问服务所使用的程序。客户端侧为用户提供从网络请求服务的接口,而服务器侧负责接受用户对服务的请求,并提供对用户透明的服务。相比之下,在对等模型或范例中,每个联网主机都运行应用的客户端和服务器部分。另外,本公开不需要分组网络或电路交换网络的存在。

参考图3,描绘了联络中心100的中央服务器110的一种可能的配置。服务器110与多个客户通信线路200a-y(其可以是一个或多个中继线、电话线等)以及代理通信线路204(其可以是语音和数据传输线路,诸如lan142和/或电路交换语音线)进行通信。服务器110可以包括avayainc.的具有在线分析处理(olap)技术的operationalanalysttm(oa)或者收集联络记录和联络中心统计数据以用于生成联络中心报告的呼叫管理系统(cms)228。oa和cms将在下文中共同称为cms228。

从图3中可以看出,存储在服务器110中的数据中包括一组工作项目队列208a-n和一组单独的代理队列212a-n。每个工作项目队列208a-n都对应于不同的一组代理技能,每个代理队列212a-n也如此。常规地,工作项目被优先级化,并且按照它们的优先级顺序排列在工作项目队列208a-n中的各个工作项目队列中,或者排列在多个工作项目队列208a-n中对应于不同优先级的不同工作项目队列中。同样,每个代理的技能都根据他或她在该技能中的专业水平被优先级化,并且按其专业水平的顺序将代理排列在代理队列212a-n中的各个代理队列中,或者排列在多个代理队列212a-n中的、对应于技能并且其中的每一个代理队列都对应于不同的专业水平的不同代理队列中。

服务器110中的控制程序包括工作项目矢量216。基于包括客户身份、客户需求、联络中心需求、当前联络中心队列长度、客户价值以及正确处理联络所需的代理技能等若干预定标准,由工作项目矢量216将到达联络中心的联络分配到不同工作项目队列208a-n。可用于处理工作项目的代理根据他们拥有的技能被分配给代理队列212a-n。一个代理可以具有多种技能,因此可以同时分配给多个代理队列212a-n。此外,一个代理可以具有不同水平的技能专长(例如,在一个配置中,技能水平1-n或者在另一配置中,仅仅主要技能水平和辅助技能水平),因此,可以被分配给不同专业水平的不同的代理队列212a-n。

在一个配置中,联络中心可由合同运营商运营,每个工作项目队列208a-n并且可能地,每个代理队列212a-n都对应于不同的客户。每个客户都可以与合同运营商就客户各自队列的性能期望、目标、要求或规格,签订单独的服务级别协议或其他类型的工作指标协议。服务级别协议可能会因未能遵守服务级别协议的要求而规定处罚,诸如经济处罚。

接收传入的工作项目的通信组件(例如,交换机130、传真服务器、电子邮件服务器、web服务器和/或其他服务器)可以经由lan142将传入的工作项目通知给联络中心服务器110。传入的工作项目由接收电信组件保留,直到服务器110将指令转发给组件以将联络转发或路由到特定联络中心资源(诸如ivr122),其他服务器中的一个或多个(例如语音邮件服务器118),和/或与所选代理相关联的第一或第二代理通信设备134、138。

基于上述的预定标准,服务器110将这些工作项目分配并连接到可用代理的第一或第二代理通信设备134、138。当服务器110将语音联络(或第一工作项目)转发给代理时,服务器110还将来自数据库114的客户相关信息转发给代理的计算机工作站以供查看(诸如,通过弹出式显示),以允许代理更好地为客户服务。取决于联络中心配置,服务器110可以在将工作项目本身及与其相关联的数据转发给代理之前,将工作项目列表转发给可用代理以进行预览。代理处理由服务器110发送给他们的工作项目或联络。本实施例特别适用于客户被允许使用任何媒体来联系企业的客户关系管理(crm)环境。在crm环境中,实时和非实时联络必须以相同的效率和有效性进行处理和分配。

根据本公开的实施例,如图3所示,在服务器110上执行的程序还包括代理和工作项目选择器220和控制器224。选择器220和控制器224被存储在联络中心100的主存储器中或外围存储器(例如,盘、cdrom等)或一些其他计算机可读介质中。选择器220和控制器224以趋向于针对当前联络中心状态而使联络中心效率最大化的方式共同实现可用工作项目(或联络)和可用代理之间的分配。选择器220在选择合适的代理以服务工作项目时使用预定义的标准。控制器224协助工作项目矢量216将联络路由到适当的工作项目队列208a-n,并协助选择器220将联络路由到代理队列212a-n中的最理想的代理。具体而言,控制器224针对多个联络中心目标或目的中的每一个获得状态信息或关于相应目标(例如,服务级别协议)是否被达到或未被达到的信息和/或相应目标被达到或未被达到的级别。

代理和客户简档通常由简档生成器(未示出)进行维护和更新。在完成对工作项目的处理后,生成器可以收集工作项目的选定度量。这些度量包括服务工作项目所涉及的技能、服务代理的标识符、联络持续时间、交易或联络类型(例如目录销售、信息请求、投诉等)、一天中的时间、结果(例如,销售类型,售出的单元数、产生的收入、服务票据关闭(ticketclosure)或升级(escalation)、提供的信息等)、服务代理对代理处理工作项目的熟练程度的自评、客户对代理处理工作项目的熟练程度的评价、另一方(诸如代理的主管或另一观察员)对工作项目被服务得如何的评价、代理是否请求帮助,以及代理的培训是否完成,并将信息存储在数据库114中,诸如cms228中。在选定时间段内的度量通常存储在每个代理的简档中,并且可以包括与代理为每个代理技能服务的多个工作项目相关联的度量。每位代理的简档也可能包含他或她的技能和/或技能专业水平。每个客户简档都包括与客户的多个联络相关联的度量。

控制器224可以访问每个代理资源的各种工作指标以及系统中资源的联络处理历史。控制器224还被配置为使用本领域已知的各种系统来评估各个代理资源在处理工作项目中的表现。控制器224还被配置为基于他们的工作指标和联络处理历史来为每个代理资源找到胜任领域。控制器224还被配置为利用这些发现来最大化联络中心效率。

如上所述,cti接口160和sip网关162可以促进外部通信设备174-1至174-m与第一和第二代理通信设备134、138之间的通信。例如,sip网关162可以与来自提供商的通信网络154的一个或多个sip中继线连接,并将进入的聚合sip流量分成单独的sip会话,并聚合单个外出sip会话,诸如例如,avayainc.的sessionbordercontrollertm

另外,联络中心可以包括isdn网关(未示出),该网关可以例如与来自提供商网络的一个或多个isdn中继线连接,使得isdn接口在isdn网关的提供商网络一侧实现,sip接口在isdn网关的联络中心一侧实现,诸如例如avayainc.的communicationmanagertm。isdn网关从提供商的网络(诸如例如从公共交换电话网络(pstn)的中心局(co))接收基于isdn的消息,并生成相应的基于sip的消息,该消息被发送到联络中心内的一个或更多计算机或系统。在相反的方向上,isdn网关从联络中心内接收基于sip的消息,并生成相应的基于isdn的消息,其被发送给提供商的网络。以这种方式,联络中心内的sip会话(即,正在进行的呼叫)与提供商网络内的相应isdn呼叫相关联。不管是否存在一个或两个不同的网关,联络中心100内的sip会话可以与联络中心100内的一个或多个应用或服务器(例如服务器110)(诸如例如avayainc.的oceanatm)连接。联络中心100内的参与sip会话的该应用或服务器可以在正在进行的呼叫的不同阶段期间改变,使得基于sip的消息被发送到这些其他服务器,诸如例如avayainc.的auracontactcentertm或auraexperienceportaltm。联络中心服务器可以从提供商网络的方向(例如,从isdn网关或sip网关162)接收基于sip的消息,并提供传出的基于sip的消息(例如,到isdn网关或sip网关162),以使基于isdn的消息或基于sip的消息被发送到提供商网络154。在联络中心100内,该服务器或另一个服务器可以经由例如会议桥来管理sip会话(即,正在进行的呼叫),在会议桥中不同的参与方在正在进行的呼叫期间连接到会议桥并与会议桥断开连接,以便可以在连接的各方之间交换“媒体”。各方可以包括呼叫方、与联络中心有附属关系的人员代理和主管,但也可以包括不同的媒体流、等候音乐、广告、监视器或记录连接、ivr菜单等。sip消息和sip会话提供了用于管理哪些方与正在进行的呼叫连接的控制机制。

如本文所使用的,上述环境中的“消息”包括在与联络中心联络期间收集或生成的任何上下文信息,并且还包括一连串的在客户与联络中心之间的交互或在联络中心内的内部交互的某些部分。这些客户交互或内部交互可以涉及人员代理或自动代理。交互可以是构成“对话”的一连串的相关交互的一部分。如下所述,将相关交互分组到一个对话中允许节约用于存储关于该对话的信息的存储空间。

图4是根据本公开的原理的减少用于存储内容的空间的示例方法的流程图。在在联络中心100处处理联络的过程中,在步骤402中,由联络中心100接收消息或者由服务器110或联络中心100的其他服务器之一生成消息。因此,“接收”消息包括从联络中心外部的源接收消息或接收由联络中心100内部的服务器生成的消息。消息可以包括各种不同的数据格式,诸如音频数据、视频数据、文本数据、电子邮件消息、电子邮件附件、聊天数据等。

该消息可以与联络中心100内的其他消息相关。例如,一个消息可以与之前的消息具有相同的收件人,或与之前的消息相同的主题有关,或者与之前的消息在同一天收到。可以选择分组消息的基础,以创建一组相关联的消息。在该组相关联的消息内,通过引用该组的其他消息中的重复内容,可以减少为一个消息存储的信息。可以关联或分组消息的一个示例方式是,它们都是涉及与联络中心和联络中心的代理进行的联络的一连串消息或消息的“对话”的一部分。每条消息都对应于对话内的交互。对话有一个时间序列,以便每个交互都相对于对话内的其他交互按照特定顺序进行。

相应地,在步骤404中,联络中心100的服务器110可以在消息内识别与对话内的之前的消息相比是冗余信息的任何信息。例如,在电子邮件链中,可能有以前的电子邮件消息正文和附件包含在任何回复消息或转发的消息中。而且,在步骤406中,服务器110可以识别当前消息中的任何可导出的信息。

可导出的信息可以是可以相对于先前确定的信息确定的各种信息中的任何一种。例如,对话中的第一条消息可以具有与其始发时间相对应的时间戳。后续消息可以具有相对于原始时间戳的时间戳。因此,在随后的消息中,对应的时间戳不需要包括整个时间戳信息(例如,日、月、年、小时、分钟、秒),而仅包括相对于原始时间戳的值。该相对值可以是例如“s+10”或“m+5”,以指出分别在原始消息之后10秒或5分钟被发起。例如,在自动聊天会话中,可以有一个预定的脚本,其中总是询问一系列的问题以开始和结束会话。这些预定问题可以用标签或其他标识符来引用,而不必引用它们的实际内容。类似地,ivr或代理可以遵循脚本的预定问候部分和脚本的终止部分,其中这两个部分之间的内容是联络中心100要保存的感兴趣的内容。例如,在电子邮件消息中,可以在所有电子邮件消息中包括签名块或免责声明,或者可以将图像包含在徽标或其他类似的多媒体数据中。在这些情况中的每一个中,这些数据项的内容都可以从消息本身外部的数据源导出,而不包括消息中的项的实际内容。

在步骤408中,修改消息以消除冗余或可导出的内容。在某些情况下,内容可以完全消除。在其他情况下,用对内容的引用来替换内容。因此,可以提供指向内容的链接,链接的大小小于实际内容的大小。在其他情况下,修改消息的内容以指出它与先前的一个或多个消息如何相关或不同。如上所述,相对时间戳是一种相对类型的内容。另一个示例是转发的电子邮件,其中只识别一个新消息正文,并识别原始电子邮件消息的未改变正文。

因此,来自步骤408的修改后的消息将在大小上更小,因为其不包括冗余信息或可从其他源导出的信息的全部内容。在步骤410中,服务器110智能地压缩修改后的消息。例如,根据被压缩数据的类型,有许多可用的已知的压缩算法被认为比其他压缩算法更适合。文本数据的压缩算法可能不像为压缩图像而优化的其他算法那样适合于图像压缩。jpeg图像和tiff图像可以分别具有各自的压缩算法,以实现更高的压缩率。对于语音数据,用于对语音数据进行编码的编解码器可以确定哪些压缩算法对于特定的一组语音数据达到最高压缩率。因此,在步骤410中,选择先前确定的压缩算法来压缩修改后的消息的至少某些部分。在步骤412中,存储已修改和压缩的消息。以这种方式,可以存储涉及联络中心的对话中的消息,以便减少用于保存对话记录的存储空间。

图5a是根据本公开的原理的压缩数据的示例方法的流程图。图4包括智能地压缩对话中的消息的步骤410。图5a提供了关于此步骤的更多细节。

在步骤502中,修改后的消息由服务器110接收,以便消除了冗余或可导出的信息。例如,该消息可以是具有不同部分的多部分mime消息,每个部分都具有不同的格式。不同的格式可以包括应用数据(例如excel、pdf等)或文本数据或音频数据或图像数据或视频数据等。因此,在步骤504中,服务器识别修改后的消息的不同部分及其相应的数据格式或媒体类型。

如上所述,不同的媒体类型可以具有比其他压缩算法更好地执行的专用或优化的压缩算法。因此,每种不同的媒体类型具有先前已经被识别为用于实现针对该媒体类型的最高压缩率的算法的相关联的压缩算法。除了压缩率之外,还可以考虑算法的速度,因为通过选择更快的算法,可以避免相对于更快的算法仅提供最小改进的慢得多的算法。在步骤506中,使用针对与该消息部分对应的媒体类型的相应的所选择的算法,压缩修改后的消息的每个单独部分。

在步骤508中,可以计算每个压缩消息部分的散列值或摘要。散列值(或简称为散列)也称为消息摘要,是从数据块中生成的数字。散列比数据块本身小得多,并且以使得某个其他数据块极不可能产生相同的散列值的方式通过公式生成。服务器110可计算并使用散列值来确定后续消息的哪些部分不同于对话中之前的消息的对应部分。

然后,在步骤510中,可以将修改后的消息的压缩部分以将它们关联为随后被存储的一个单元的方式进行组合。在一个简单的示例中,不同的压缩部分可以作为单个文件存储或存储在服务器110可访问的文件系统中的单个文件夹中。在另一个示例中,可以将不同的部分与将它们彼此相关联的键或索引值一起分别存储在一个或多个数据库中。不同部分彼此的关联也可以以分层方式执行,其中消息的不同部分被组合,使得它们与同一消息的其他部分相关联,但同样也与同一对话的其他消息相关联。

以上讨论描述了本公开的各方面的一般原理。在下面的段落中,提供了根据本公开的原理的详细示例。这个详细的示例并非旨在将所附权利要求限制为仅包含示例的具体方面,而是代之以旨在提供突出本文描述的特征的具体实现。

本示例与碰巧通过电子邮件发生的交互有关。可以发生其他类型的交互,例如语音呼叫、即时消息、聊天、遍历ivr菜单等。如图5b所示,联络中心100的数据库114可以包括配置用于电子邮件交互的元数据储存库550和内容储存库570。元数据储存库550存储用于交换电子邮件消息的交互的相应条目552,而内容储存库存储对应于元数据储存库550中的一个或多个条目552的相应条目572。

作为示例,元数据储存库中的每个条目552具有用于存储电子邮件消息的收件人的身份的字段554、用于存储电子邮件消息的发件人的身份的字段556、用于存储电子邮件消息何时被发送的时间戳的字段558、用于存储电子邮件消息的类型(例如,原始、转发、回复等)的字段560、用于存储交互类型的字段562(例如进入、外出、内部等)以及用于存储某种类型的链接标签的字段564。

如上所述,元数据储存库550中的每个条目552在内容储存库570中都具有对应的条目(一个或多个)572。条目552、572中的相应链接标签可以用于创建两个条目之间的逻辑关联。可以存在链接标签564以链接所有彼此相关的条目552,并且可以存在链接标签564以将条目552链接到内容储存库570中的特定条目(一个或多个)572。链接标签564、582可以是这样的,即它们是单向关联的或双向关联的。如果它们是单向关联的,则使用特定条目552的链接标签564来识别与该特定条目552相关联的条目572。如果它们是双向关联的,则使用特定条目572的链接标签582来识别与该特定条目572相关联的所有条目552。本领域的普通技术人员将认识到,有许多其他技术,其中一些在现代关系型数据库中自动实现,这允许实现两个储存库550、570中的条目之间的关联或链接。

条目552和572的字段是与电子邮件消息相关的示例。如果消息的类型不同,诸如语音呼叫或视频呼叫,则条目的字段可能不同,以至于要捕获与这些类型的消息相关的细节。

如之前所描述的,内容储存库570存储对应于元数据储存库550中的一个或多个条目552的相应条目572。条目572可以诸如具有用于存储与条目572相关联的数据类型的标识符的字段574。对于电子邮件消息,示例“数据类型”可以包括电子邮件的不同部分,例如“主题”、“正文”、“附件”等。条目572还包括用于存储数据的实际内容的字段576以及用于存储数据的格式的标识符的字段578。示例格式可以是“文本”、“jpeg”、“mp3”、“图像”、“xls”。例如,多部分mime消息具有可以存储在字段578中的标准化格式类型(例如,“图像/jpg”、“应用/xls”等)。这些格式类型已经包含在mime消息的不同部分之间的边界部分中,并且它们的存在可以通过对消息的简单词汇分析来检测,并且用于将电子邮件的不同部分彼此分开,以及识别电子邮件消息的内容的该部分的相应格式。在各示例中,在利用电子邮件消息的该特定示例之外,服务器110可以使用文件扩展名来识别数据格式类型,或者服务器110可以基于发送或创建数据的发件人的身份来识别数据格式类型(例如,语音邮件应用、视频媒体服务器等),或服务器110可以分析数据的起始字节,以确定在那些字节中编码的数据格式类型信息。

条目572还可以包括用于存储存储在字段576中的内容的散列的字段580。内容的散列,诸如例如md-5摘要,是用于计算对应于相对较大数据的小得多的值的已知技术。当应用于两个单独数据片段的相同散列算法产生相同的散列值时,则两个单独数据片段的内容被认为是彼此的副本。

如上所述,条目572还可以具有用于存储链接标签的字段582,所述链接标签用于在逻辑上将不同的条目572与彼此相关联,所述不同条目572与联络中心100处的正在进行的对话相关联。

1.代理接收来自客户的电子邮件

作为第一步,在此详细示例中,联络中心的代理接收来自客户的电子邮件。例如,电子邮件可以包含两个图像附件。服务器110部分地基于发件人身份、收件人身份和消息始发时间,在元数据储存库550中创建并存储条目552,其用字段554-564填充。例如,字段560可以存储“原始”,字段562可以存储“进入”。链接标签字段564可以包括标识符“c-1”,例如,以将该条目识别为与特定对话相关。例如,链接标签字段574还可以包括标识符“m-x”,例如以将其识别为其对话的第x个消息或条目(例如,c-1)。链接标签字段574还可以识别内容储存库570中的内容条目与该特定元数据条目552有关。普通技术人员将认识到,上面讨论的示例链接标签仅仅是如何识别联络中心中的消息的一个示例。作为替代,联络中心的服务器已经具有用于追踪例如到联络中心的进入的联络的实地机制。当通过联络中心的计算机处理该联络时,数据和消息与该联络相关联,从而构建一个数据结构,用于存储在由联络中心处理联络期间生成的消息,数据和其他媒体的内容和序列。然后,该联络数据结构可以存储在联络中心的一个或多个数据库114中。

服务器110在内容储存库570中创建并存储四个单独的条目572。四个条目中的第一个在其字段574中具有“电子邮件主题”,而在其字段578中具有“txt”。然后,服务器110可以选择被识别为与其他压缩算法相比,特别适合于压缩“txt”类型的内容的预定压缩算法。然后,根据选定的压缩算法压缩电子邮件的主题行,并将其存储在字段576中。基于压缩的内容来计算散列,并存储在字段580中。例如,链接标签字段582可以存储“c-1:m-x”以指出该第一条目与元数据储存库中与对话“c-1”中的一系列消息中的第x个消息相对应的条目有关。

四个条目中的第二个在其字段574中具有“电子邮件正文”,而在其字段578中具有“txt”。然后,服务器110可以选择被识别为与其他压缩算法相比,特别适合于压缩“txt”类型的内容的预定压缩算法。然后,根据选定的压缩算法压缩电子邮件的正文,并将其存储在字段576中。基于压缩的内容来计算散列,并存储在字段580中。例如,链接标签字段582可以存储“c-1:m-x”以指出该第二条目与元数据储存库中与对话“c-1”中的一系列消息中的第x个消息相对应的条目有关。

四个条目中的第三个在其字段574中具有“附件”,而在其字段578中具有“图像/jpg”。然后,服务器110可以选择被识别为与其他压缩算法相比,特别适合于压缩“图像/jpg”类型的内容的预定压缩算法。因此,可以选择与选择用于压缩电子邮件正文不同的压缩算法来压缩附件。然后,根据选定的压缩算法,压缩附件图像,并将其存储在字段576中。基于压缩的内容来计算散列,并存储在字段580中。例如,链接标签字段582可以存储“c-1:m-x”以指出该第二条目与元数据储存库中与对话“c-1”中的一系列消息中的第x个消息相对应的条目有关。

四个条目中的最后一个在其字段574中具有“附件”,而在其字段578中具有“图像/jpg”。然后,服务器110可以选择被识别为与其他压缩算法相比,特别适合于压缩“图像/jpg”类型的内容的预定压缩算法。因此,可以选择与选择用于压缩电子邮件正文的不同压缩算法来压缩附件。然后,根据选定的压缩算法,压缩所附图像,并将其存储在字段576中。基于压缩的内容来计算散列,并存储在字段580中。例如,链接标签字段582可以存储“c-1:m-x”以指出该第二条目与元数据储存库中与对话“c-1”中的一系列消息中的第x个消息相对应的条目有关。

2.代理将电子邮件转发给主管

随着示例的继续,代理将电子邮件消息转发给主管,而不更改有关从客户处收到的原始电子邮件消息的任何内容。服务器110可以通过计算电子邮件消息的原始部分的散列值,并确定没有内容被修改来确定这一点。新数据包括电子邮件消息正文,在其中代理向主管提出有关原始邮件的查询。服务器110在元数据储存库550中存储新条目552,并在内容储存库570中存储新条目572。

如上所述,新条目552包括时间戳558,该时间戳558可以具有相对于先前存储的条目的时间戳的格式。字段560可以存储该新条目552是“转发”类型的电子邮件消息,并且字段562可以指示该新条目552是“内部”类型的交互。链接标签字段564可以反映该条目与对话“c-1”中的其他条目相关,并且甚至包括指示对话“c-1”内条目的序列的标签“m-2”(即,“m-2”,第二条消息)。链接标签字段564还可以识别内容储存库570中的什么条目与该特定消息有关。

在内容储存库570中创建的条目572包括具有代理对主管的查询的新电子邮件消息的正文。因此,条目572在其字段574中存储“电子邮件正文”,而在其字段578中存储“txt”。压缩的电子邮件正文被存储在字段578中,并计算散列,并将其存储在字段580中。元数据条目的链接标签564将该条目链接到内容储存库570中的前四个条目和内容储存库570中的这个新的相关条目。因此,先前的四个条目在内容储存库570内不被复制,但是仍然可以作为代理与主管之间的消息或交互的一部分被引用。换句话说,当当前消息被存储在内容储存库570中时,考虑到对话的先前消息而在该当前消息中是冗余的信息不被复制。然而,该完整内容是可用的,并且可以使用对应于当前消息的元数据条目来识别,因为该元数据条目与内容储存库570中的所有相关条目链接。

3.主管用电子表格附件回复

作为对代理查询的回应,主管利用附有电子表格的电子邮件消息回复,但省略了原始消息的其他两个附件。服务器110在元数据储存库550中创建条目552,并在内容储存库570中创建两个新条目。可以计算散列值以确定相关的先前消息的哪些部分不变。

条目552包括反映当前消息是从主管到代理的回复消息并且是内部交互类型的字段。链接标签字段564存储了数据,该数据将该元数据条目552与内容储存库570中的对应于原始主题行、原始电子邮件正文、转发的电子邮件正文的条目和两个新条目链接。因为附加到原始电子邮件的两个图像未包含在主管的回复消息中,所以该条目552的链接标签564不识别内容储存库570中的那两个图像相关条目。

内容储存库570中的两个新条目对应于用于从主管到代理的回复电子邮件消息正文的条目以及所附电子表格的条目。如上所述,这些条目中的每一个都包括适当压缩然后散列的内容。然后,存储链接标签,以便可以识别元数据储存库550中的一个或多个相关条目。

4.代理回复客户

此示例对话的下一步是代理通过附加由主管提供的电子表格来回复客户的电子邮件消息。服务器计算散列值以确定没有对以前的电子邮件内容进行更改。因此,服务器110在元数据储存库550中创建并存储一个条目552,并在内容储存库570中创建并存储一个条目572。

一个条目552指示该消息是从代理到客户的外出回复消息,并且是该特定对话中的第四条消息。条目552还与内容储存库570中的新条目572以及与原始电子邮件主题行、原始电子邮件正文和来自主管的电子表格附件相对应的条目链接。内容储存库570中的新条目572包括作为压缩文本的回复消息的正文以及对应的散列值。

在上述示例中,元数据储存库550为交互的链或对话中的每个电子邮件交互存储相对少量的数据。然而,内容储存库570存储这些交互的内容而不复制冗余内容。交互的存储内容可以引用先前的交互,以便仅存储相对于先前交互的改变,不存储未改变的数据。

附图中的流程图和框图例示了根据本公开的各个方面的系统、方法和计算机程序产品的可能实现的体系结构、功能和操作。就这一点而言,流程图或框图中的每个框都可以表示包括用于实现指定的逻辑功能的一个或多个可执行指令的模块、段或代码部分。另外,虽然是参考特定事件序列讨论和说明流程图的,但是应当理解,可以在不实质性地影响本公开的操作的情况下对该序列进行改变、添加和省略。例如,取决于涉及的功能,依次显示的两个框可以,事实上,基本上同时地执行,或者,各框有时也可以按相反的顺序执行。还应该注意,框图和/或流程图例示的每一个框,以及框图和/或流程图例示中的框的组合,可以通过执行指定的功能或动作,或专用硬件以及计算机指令的组合的基于专用硬件的系统来实现。

如本领域技术人员将理解的,本公开的各方面可以在许多可授予专利的类别和上下文中的任何一个——其中包括任何新的和有用的工艺、机器、制造或物质组成,或其任何新的和有用的改进——中示出和描述。因此,本公开的各方面可以实现为完全硬件、完全软件(包括固件、常驻软件、微代码等),或组合软件和硬件实现,所有前述的各项在本文中都可以一般性地称为“电路”、“模块”、“组件”或“系统”。此外,本公开的各方面可以采取在其上包含有计算机可读程序代码的一个或多个计算机可读介质中体现的计算机程序产品的形式。

可以使用一个或多个计算机可读介质的任何组合。计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以是,例如,但不限于电子的、磁性的、光学的、电磁的、或半导体系统、装置或设备,或前述的各项的任何适当的组合。计算机可读存储介质的更具体的示例(非穷举列表)将包括以下内容:便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪存)、带有中继器的合适的光纤、便携式光盘只读存储器(cd-rom)、光存储设备、磁存储设备或前述的各项的任何适当组合。在本文档的上下文中,计算机可读存储介质可以是可包含或存储由指令执行系统、装置或设备使用或与其结合使用的程序的任何有形介质。

计算机可读信号介质可以包括其中(例如在基带中或者作为载波的一部分)包含有计算机可读程序代码的传播数据信号。这样的传播信号可以呈现多种形式(包括但不限于电磁、光学或其任何适当的组合)中的任何一种。计算机可读信号介质可以是不是计算机可读存储介质并且可以传送、传播或传输供指令执行系统、装置或设备使用或与其结合使用的程序的任何计算机可读介质。体现在计算机可读信号介质上的程序代码可以使用任何适当的介质来传输,所述介质包括但不限于无线、有线、光缆、rf等,或前述的各项的任何适当组合。

用于实现本公开的各方面的操作的计算机程序代码可以用一种或多种编程语言的任意组合来编写,所述编程语言包括诸如java、scala、smalltalk、eiffel、jade、emerald、c++、cii、vb.net、python等等之类的面向对象编程语言,诸如“c”编程语言、visualbasic、fortran2003、perl、cobol2002、php、abap之类的常规过程编程语言,诸如python、ruby和groovy等之类的动态编程语言,或者其他编程语言。程序代码可以完全在用户的计算机上、部分在用户的计算机上、作为独立的软件包、部分在用户的计算机上且部分在远程计算机上,或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络(包括lan或wan)连接到用户的计算机,或者可以连接到外部计算机(例如,使用互联网服务提供商通过互联网)或在云计算环境中进行连接或作为诸如软件即服务(saas)之类的服务来提供连接。

此处参考根据本公开的各实施例的方法、设备(系统)、以及计算机程序产品的流程图例示和/或框图描述了本公开的各方面。可以理解,流程图和/或框图的每一框,流程图和/或框图中的框的组合,都可以通过计算机程序指令来实现。这些计算机程序指令可以被提供给通用计算机、专用计算机,或其他可编程数据处理设备的处理器,以产生机器,以便通过计算机或其他可编程指令执行设备的处理器执行的指令产生用于实现在该流程图和/或框图的一个或多个框所指定的功能/动作的一种机制。或者,可以使用对称多处理器(smp)系统或包括多个处理器的其他配置。

这些计算机程序指令还可以存储在计算机可读介质中,该计算机可读介质在被执行时可以指示计算机,其他可编程数据处理设备或其他设备以特定方式运行,使得指令在被存储在计算机可读介质中时产生包括当被执行时使计算机实现在流程图和/或框图的一个或多个框中指定的功能/动作的指令的制品。计算机程序指令还可以加载到计算机、其他可编程指令执行设备,或其他设备中,以使一系列操作步骤在计算机上、其他可编程设备上或其他设备上执行,以产生计算机实现的过程,以便在计算机或其他可编程设备上执行的指令提供用于实现在流程图和/或框图的一个或多个框中所指定的功能/动作的过程。

尽管本文例示的示例性实施例示出了并置的系统的各种组件,但是系统的某些组件可以远程定位,位于分布式网络(例如lan和/或互联网)的远处,或者位于专用系统中。因此,应该理解的是,系统的组件可以组合到一个或多个设备中,诸如交换机、服务器和/或附属设备,或者并置在分布式网络的特定节点上,例如模拟和/或数字电信网络、分组交换网络或电路交换网络。从前面的描述中可以理解,并且出于计算效率的原因,可以将系统的组件安排在组件的分布式网络内的任何位置而不影响系统的操作。例如,各种组件可以位于交换机中,诸如pbx和媒体服务器、网关、一个或多个通信设备中,在一个或多个用户的房屋中,或其一些组合。类似地,系统的一个或多个功能部分可以分布在电信设备和相关联的计算设备之间。

此外,还应该理解的是,连接元件的各种链路可以是有线或无线链路或其任何组合,或者任何其他已知的或以后开发的能够从/向已连接的元件提供数据和/或来往于已连接的元件交换数据的元件。这些有线或无线链路也可以是安全链路,并且可以能够传送加密信息。例如,用作链路的传输介质可以是用于电信号的任何合适的载体,包括同轴电缆、铜线和光纤,并且可以呈现声波或光波的形式,诸如在进行无线电和红外数据通信中产生的那些。

现在参考图6,描绘了根据本公开的数据处理系统的框图。数据处理系统600,诸如可用于实现计算机或其各方面(例如,如图1-5b中更详细阐述的)的系统,可包括对称多处理器(smp)系统或包括连接到系统总线604的多个处理器602的其他配置。作为替代,可以采用单个处理器602。也连接到系统总线604的是存储器控制器/高速缓存606,其向本地存储器608提供接口。i/o桥610连接到系统总线404,并提供到i/o总线612的接口。i/o总线可用于支持一个或多个总线和相应的设备614,诸如总线桥、输入/输出设备(i/o设备)、存储装置、网络适配器等。网络适配器也可以耦合到系统,以使数据处理系统能够通过中间私人或公共网络与其他数据处理系统或远程打印机或存储设备耦合。

连接到i/o总线的还可以是诸如图形适配器616、存储装置618和其上包含有计算机可用程序代码的计算机可用存储介质620之类的设备。计算机可用程序代码可以被执行以执行本公开的任何方面,例如以实现图图1-图5b中所示的任何方法、计算机程序产品和/或系统组件的方面。

可以使用本公开的许多变化和修改。可以提供本公开的一些特征而不提供其他特征。例如,在一个可替代实施例中,本公开的系统和方法可以结合专用计算机、编程的微处理器或微控制器和外围集成电路元件、asic或其他集成电路、数字信号处理器,诸如分立元件电路之类的硬连线电子或逻辑电路、可编程逻辑器件、或门阵列,诸如pld、pla、fpga、pal、专用计算机、任何相当的装置等等来实现。通常,能够实施本文所示的方法的任何设备或装置可以用于实现本公开的各个方面。可以用于本公开的示例性硬件包括计算机、手持设备、电话(例如,蜂窝式、能上网的、数字式、模拟式、混合型等)以及本领域已知的其他硬件。这些设备中的一些包括处理器(例如,单个或多个微处理器)、存储器、非易失性存储装置、输入设备和输出设备。此外,还可以构建可替代软件实现,包括,但不限于,分布式处理或组件/对象分布式处理、并行处理或虚拟机处理,以实现本文所述的方法。

尽管本公开参考特定标准和协议描述了在实施例中实施的组件和功能,但是本公开不限于这些标准和协议。本文未提及的其他类似标准和协议存在并被认为包括在本公开内容中。此外,本文提及的标准和协议以及本文未提及的其他类似标准和协议周期性地被具有基本相同功能的更快或更有效的等同物所取代。具有相同相同功能的这种替换标准和协议被认为是包含在本公开中的等同物。

尽管前述的内容涉及本公开的各实施例,但是,在不偏离其基本范围的情况下,可以设计本公开的其他以及进一步的实施例。应该理解,在不脱离本文所包含的范围的情况下,可以将本文描述的各种实施例与所描述的任何其他实施例结合使用。此外,前面的描述并非旨在穷举或将本公开限制为所公开的确切形式。根据上述教导,修改和变化也是可能的,并且可以通过对本公开的实施来获得修改和变化。

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