CN102595003B - 一种呼叫中心及其实现方法 - Google Patents
一种呼叫中心及其实现方法 Download PDFInfo
- Publication number
- CN102595003B CN102595003B CN201110008509.7A CN201110008509A CN102595003B CN 102595003 B CN102595003 B CN 102595003B CN 201110008509 A CN201110008509 A CN 201110008509A CN 102595003 B CN102595003 B CN 102595003B
- Authority
- CN
- China
- Prior art keywords
- seat
- route
- module
- processing module
- user
- 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/50—Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
- H04M3/51—Centralised call answering arrangements requiring operator intervention, e.g. call or contact centers for telemarketing
- H04M3/5166—Centralised call answering arrangements requiring operator intervention, e.g. call or contact centers for telemarketing in combination with interactive voice response systems or voice portals, e.g. as front-ends
Landscapes
- Business, Economics & Management (AREA)
- Marketing (AREA)
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Telephonic Communication Services (AREA)
- Hardware Redundancy (AREA)
Abstract
本发明公开一种呼叫中心及其实现方法,所述呼叫中心采用一个以上分布式的路由子任务处理模块;当呼叫中心的主控模块接收到用户经IVVR发送的排队请求时,将所述排队请求发送给全部或部分路由子任务处理模块;接收到所述排队请求的路由子任务处理模块从自身管辖的空闲座席中查找局部最优座席并告知主控模块;所述主控模块从获知的所有局部最优座席中查找全局最优座席,当查找成功时,通知IVVR建立所述用户与所述全局最优座席的通话。通过本发明,可以解决建设大规模呼叫中心时面临性能瓶颈的问题,并且能够提高大规模呼叫中心的可用性和稳定性,降低呼叫中心的建设成本。
Description
技术领域
本发明涉及数据通信领域,尤其涉及一种呼叫中心及其实现方法。
背景技术
呼叫中心又称为客服系统,是用于向用户提供电话、视频、传真、电子邮件等多种接入手段的信息系统,主要用来处理用户对企业提出的要求、质疑、投诉、建议和质询,如电信业中的1860,金融业中的95555等。
图1是当前呼叫中心的典型架构,其中Route(排队模块)和CTI(ComputerTelephony Integration,计算机电话集成技术模块)一一对应,或者作为CTI的一部分,一套平台包括一个IVVR(Interactive Voice and Video Response,交互式语音及视频自动应答模块)、一个CTI、一个Route和一个Agent(座席模块)。
其中,Agent是话务员(座席)使用客服系统的工具,它负责和CTI、IVVR等模块共同完成用户的路由和通话。
CTI负责座席的签入、签出、示忙、示闲、状态管理、呼叫事件通知、呼叫请求处理等。
IVVR服务提供语音及视频的自动服务以及把人工服务请求提交给Route,并且根据Route选出的座席电话,建立用户和座席之间的通话。
Route负责根据各种预定义的策略、规则,选出逻辑上最优的话务员(坐席)为用户(呼叫)服务。这种高度的智能化的过程,是通过各种复杂的算法实现的。相对于呼叫中心其他模块而言,Route是高密集运算的应用。随着呼叫中心的规模越来越大,Route已经成为呼叫中心的性能瓶颈。
发明内容
本发明要解决的技术问题提出一种适用于大规模呼叫中心及其实现方法,以避免大规模呼叫中心出现性能瓶颈的缺陷。
为了解决上述问题,本发明提供一种呼叫中心的实现方法,所述呼叫中心采用一个以上分布式的路由子任务处理模块;所述方法包括:
当呼叫中心的主控模块接收到用户经交互式语音及视频自动应答模块(IVVR)发送的排队请求时,将所述排队请求发送给全部或部分路由子任务处理模块;
接收到所述排队请求的路由子任务处理模块从自身管辖的空闲座席中查找局部最优座席并告知主控模块;
所述主控模块从获知的所有局部最优座席中查找全局最优座席,当查找成功时,通知IVVR建立所述用户与所述全局最优座席的通话。
优先地,上述方法具有以下特点:
所述排队请求为呼入虚拟呼叫中心(VC)并转接人工服务的请求;
在主控模块将所述排队请求发送给全部或部分路由子任务处理模块的步骤中,所述主控模块将所述排队请求发送给与所述VC相关联的所有路由子任务处理模块。
优先地,上述方法具有以下特点:
在所述主控模块从获知的所有局部最优座席中查找全局最优座席的步骤中,
当查找成功时,所述主控模块还通知相关路由子任务处理模块所述全局最优座席已选定;
当查找失败时,所述主控模块将所述用户作为等待服务的用户,选择与所述VC相关联的一个路由子任务处理模块管辖所述用户,或者,选择一个备用模块作为与所述VC相关联的路由子任务处理模块,管辖所述用户。
优先地,上述方法还包括:
当主控模块接收到座席经座席模块和CTI发送的示闲请求时,将所述示闲请求发送给全部或部分路由子任务处理模块;
接收到所述示闲请求的路由子任务处理模块从自身管辖的等待服务的用户中查找局部最优用户并告知主控模块;
所述主控模块从获知的所有局部最优用户中查找全局最优用户,当查找成功时,通知IVVR建立所述座席与所述全局最优用户的通话。
优先地,上述方法具有以下特点:
在主控模块将所述座席发送的示闲请求发送给全部或部分路由子任务处理模块的步骤中,
所述主控模块将所述示闲请求发送给与所述座席对应的VC相关联的所有路由子任务处理模块。
优先地,上述方法具有以下特点:
在所述主控模块从获知的所有局部最优用户中查找全局最优用户的步骤中,
当查找成功时,所述主控模块还通知相关路由子任务处理模块所述全局最优用户已选定;
当查找失败时,所述主控模块将所述座席作为空闲座席,选择与所述座席对应的VC相关联的一个路由子任务处理模块管辖所述座席,或者,选择一个备用模块作为与所述座席对应的VC相关联的路由子任务处理模块,管辖所述座席。
优先地,上述方法还包括:
当主控模块接收到座席经座席模块和CTI发送的签入请求时,所述主控模块将发送所述签入请求的座席作为空闲座席,选择与所述座席对应的VC相关联的一个路由子任务处理模块管辖所述座席,或者,选择一个备用模块作为与所述座席对应的VC相关联的路由子任务处理模块,管辖所述座席。
优先地,上述方法还包括:
当所述主控模块获知有路由子任务处理模块崩溃时,则根据崩溃的路由子任务处理模块的容量,从备用模块中选择一个或多个作为路由子任务处理模块,代替崩溃的路由子任务处理模块。
为了解决上述问题,本发明提供一种呼叫中心,包括CTI、IVVR和座席模块,还包括并行分布式路由系统,所述并行分布式路由系统包括主控模块和一个以上分布式的路由子任务处理模块,其中,
所述主控模块用于,当接收到用户经IVVR发送的排队请求时,将所述排队请求发送给全部或部分路由子任务处理模块;以及,从一个以上的路由子任务处理模块获知局部最优座席后,从获知的所有局部最优座席中查找全局最优座席,当查找成功时,通知IVVR建立所述用户与所述全局最优座席的通话;
所述路由子任务处理模块用于,接收到所述排队请求后,从自身管辖的空闲座席中查找局部最优座席并告知主控模块。
优先地,上述呼叫中心具有以下特点:
所述排队请求为呼入VC并转接人工服务的请求;
所述主控模块进一步用于,在将所述排队请求发送给全部或部分路由子任务处理模块时,将所述排队请求发送给与所述VC相关联的所有路由子任务处理模块。
优先地,上述呼叫中心还包括一个以上的备用模块;
所述主控模块进一步用于,从所有局部最优座席中查找全局最优座席时,当查找成功时,还取消相关路由子任务处理模块管辖所述全局最优座席;当查找失败时,将所述用户作为等待服务的用户,选择与所述VC相关联的一个路由子任务处理模块管辖所述用户,或者,或者,选择一个备用模块作为与所述VC相关联的路由子任务处理模块,管辖所述用户。
优先地,上述呼叫中心具有以下特点:
所述主控模块进一步用于,当接收到座席经座席模块和CTI发送的示闲请求时,将所述示闲请求发送给全部或部分路由子任务处理模块;以及,从一个以上的路由子任务处理模块获知局部最优用户后,从获知的所有局部最优用户中查找全局最优用户,当查找成功时,通知IVVR建立所述座席与所述全局最优用户的通话;
路由子任务处理模块进一步用于,接收到所述示闲请求后,从自身管辖的等待服务的用户中查找局部最优用户并告知主控模块。
优先地,上述呼叫中心具有以下特点:
所述主控模块进一步用于,在将所述座席发送的示闲请求发送给全部或部分路由子任务处理模块时,将所述示闲请求发送给与所述座席对应的VC相关联的所有路由子任务处理模块。
优先地,上述呼叫中心还包括一个以上的备用模块;
所述主控模块进一步用于,从所有局部最优用户中查找全局最优用户时,当查找成功时,还取消相关路由子任务处理模块管辖所述全局最优用户;当查找失败时,将所述座席作为空闲座席,选择与所述座席对应的VC相关联的一个路由子任务处理模块管辖所述座席,或者,选择一个备用模块作为与所述座席对应的VC相关联的路由子任务处理模块,管辖所述座席。
优先地,上述呼叫中心具有以下特点:
所述主控模块进一步用于,当接收到座席经座席模块和CTI发送的签入请求时,将发送所述签入请求的座席作为空闲座席,选择与所述座席对应的VC相关联的一个路由子任务处理模块管辖所述座席,或者,选择一个备用模块作为与所述座席对应的VC相关联的路由子任务处理模块,管辖所述座席。
优先地,上述呼叫中心具有以下特点:
所述主控模块进一步用于,通过向所有的路由子任务处理模块发送心跳消息,确定路由子任务处理模块的存活状态;当通过心跳消息获知有路由子任务处理模块崩溃时,则根据崩溃的路由子任务处理模块的容量,从备用模块中选择一个或多个作为路由子任务处理模块,代替崩溃的路由子任务处理模块。
优先地,上述呼叫中心具有以下特点:
所述主控模块包括调度模块、资源平衡模块和一个以上的结果规约模块,其中,
所述调度模块用于,当接收到用户经IVVR发送的呼入VC并转接人工服务的排队请求时,选择一个结果规约模块,将携带所选择的结果规约模块的信息的排队请求发送给与所述VC相关联的所有路由子任务处理模块;以及,从结果规约模块获知全局最优座席时,通知IVVR建立所述用户与所述全局最优座席的通话,并通知相关路由子任务处理模块所述全局最优座席已选定;从结果规约模块获知查找失败时,将所述用户作为等待服务的用户,选择与所述VC相关联的一个路由子任务处理模块管辖所述用户,或者,通过所述资源平衡模块选择一个备用模块作为与所述VC相关联的路由子任务处理模块,管辖所述用户;
所述路由子任务处理模块进一步用于,接收到携带所述结果规约模块的信息排队请求后,从自身管辖的空闲座席中查找局部最优座席并告知相应的结果规约模块;
所述结果规约模块用于从一个以上的路由子任务处理模块获知局部最优座席后,从获知的所有局部最优座席中查找全局最优座席,当查找成功时,将所述全局最优座席告知所述调度模块,当查找失败时,将查找结果告知所述调度模块。
优先地,上述呼叫中心具有以下特点:
所述调度模块进一步用于,当接收到座席经座席模块和CTI发送的示闲请求时,选择一个结果规约模块,将携带所选择的结果规约模块的信息的示闲请求发送给与所述座席对应的VC相关联的所有路由子任务处理模块;以及,从结果规约模块获知全局最优用户时,通知IVVR建立所述座席与所述全局最优用户的通话,并通知相关路由子任务处理模块所述全局最优用户已选定;从结果规约模块获知查找失败时,将所述座席作为空闲座席,选择与所述座席对应的VC相关联的一个路由子任务处理模块管辖所述座席,或者,通过所述资源平衡模块选择一个备用模块作为与所述座席对应的VC相关联的路由子任务处理模块,管辖所述座席;
路由子任务处理模块进一步用于,接收到所述示闲请求后,从自身管辖的等待服务的用户中查找局部最优用户并告知所述调度模块所选择的结果规约模块;
所述结果规约模块用于从一个以上的路由子任务处理模块获知局部最优用户后,从获知的所有局部最优用户中查找全局最优用户,当查找成功时,将所述全局最优用户告知所述调度模块,当查找失败时,将查找结果告知所述调度模块。
通过本发明,可以解决建设大规模呼叫中心时面临性能瓶颈的问题,并且,在大规模呼叫中心中通过资源的动态调配实现冗余资源的充分利用;通过分布式动态资源管理,保证当某一路由子任务处理模块崩溃时,只影响和该路由子任务处理模块相关的部分业务,避免业务的全面中断,进而提高大规模呼叫中心的可用性和稳定性,降低呼叫中心的建设成本。
附图说明
图1是当前呼叫中心普遍使用的架构模式示意图;
图2是基于本发明应用示例的并行分布式路由架构的呼叫中心示意图;
图3是基于本发明应用示例的路由系统分布在不同的硬件节点上的示意图;
图4是本发明应用示例的新节点加入所述路由系统的过程和正常运行后的心跳过程;
图5是本发明应用示例的某RouteTask崩溃时,Balancer选出合适的备用模块取而代之的过程示意图;
图6是本发明应用示例的座席登录流程示意图;
图7是本发明应用示例的为用户寻找合适座席的流程示意图;
图8是本发明应用示例的用户入队流程示意图;
图9是本发明应用示例的为空闲座席寻找合适用户的流程示意图;
图10是本发明应用示例的座席入队流程示意图;
图11本发明应用示例的可变形式示意图。
具体实施方式
下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在现有技术中,由于Route承担着大部分运算,当呼叫中心规模扩大时,Route率先成为瓶颈。另外,当Route崩溃时,在采用双机模式下,业务切换到备机,意味着当前在线等待服务的用户通话突然中断,而且所有空闲座席都要重新登陆,业务被迫中断。这种情况造成的直接和间接经济损失是非常严重的。
再者,在现有技术的架构中,一些轻量级计算的模块,比如IVVR,也独占一套硬件节点,在这些硬件节点上,CPU和内存等资源占用率不高,这些空闲的资源被浪费。
根据上述特点,随着呼叫中心的规模越来越大,采用Route和CTI一一对应的架构模式面临的挑战越来越大,采用分布式并行排队架构是一种解决问题的方法。
另一方面,如果现有冗余硬件资源、陈旧设备能够被利用起来,呼叫中心的成本会大大降低,带来更好的经济效益。
同时,我们也需要找到一种方法使得在Route进程崩溃时,将业务中断的影响范围和时间降到最小。
针对现有呼叫中心架构在大规模呼叫中心建设中面临的性能瓶颈、以及Route进程崩溃时导致业务全面中断、以及在资源使用上不能充分利用冗余资源等问题,本发明提出,采用并行分布式路由的方法以适用于大规模呼叫中心。
具体地,可采用并行分布式路由系统取代原来的Route,并行分布式路由系统包括主控模块和一个以上分布式的路由子任务处理模块(RouteTask),每个路由子任务处理模块可管辖一部分空闲座席和等待服务的用户。
下面对呼叫中心的实现方式进行具体介绍:
一、用户呼入呼叫中心的情况:
当主控模块接收到用户经IVVR发送的排队请求时,将所述排队请求发送给全部或部分路由子任务处理模块;接收到所述排队请求的路由子任务处理模块从自身管辖的空闲座席中查找局部最优座席并告知主控模块;所述主控模块从获知的所有局部最优座席中查找全局最优座席,当查找成功时,通知IVVR建立所述用户与所述全局最优座席的通话。
其中,呼叫中心通常可包含多个VC(Virtual Call Center,虚拟呼叫中心),每个VC可处理一至多个接入码。
上述排队请求为呼入一VC并转接人工服务的请求;
主控模块将该排队请求发送给与所述VC相关联的所有路由子任务处理模块。
主控模块从获知的所有局部最优座席中查找全局最优座席时,当查找成功时,所述主控模块还通知相关路由子任务处理模块所述全局最优座席已选定,即所述全局最优座席不再是空闲座席;当查找失败时,所述主控模块将所述用户作为等待服务的用户,选择与所述VC相关联的一个路由子任务处理模块管辖所述用户,或者,选择一个备用模块作为与所述VC相关联的路由子任务处理模块,管辖所述用户。
其中,当查找失败时,优先选择与所述VC相关联的一个路由子任务处理模块管辖所述用户,当没有与所述VC相关联的路由子任务处理模块,或者现有的与所述VC相关联的路由子任务处理模块已经达到或超过容量阈值,则可选择备用模块升级为路由子任务处理模块,管辖所述用户。
二、座席出现空闲的情况:
当主控模块接收到座席经座席模块和CTI发送的示闲请求时,将所述示闲请求发送给全部或部分路由子任务处理模块;接收到所述示闲请求的路由子任务处理模块从自身管辖的等待服务的用户中查找局部最优用户并告知主控模块;所述主控模块从获知的所有局部最优用户中查找全局最优用户,当查找成功时,通知IVVR建立所述座席与所述全局最优用户的通话。
具体地,可以主控模块可将所述示闲请求发送给与所述座席对应的VC相关联的所有路由子任务处理模块。
主控模块从获知的所有局部最优用户中查找全局最优用户时,当查找成功时,所述主控模块还通知相关路由子任务处理模块所述全局最优用户已选定,即该全局最优用户不再是等待排队的用户;当查找失败时,所述主控模块将所述座席作为空闲座席,选择与所述座席对应的VC相关联的一个路由子任务处理模块管辖所述座席,或者,选择一个备用模块作为与所述座席对应的VC相关联的路由子任务处理模块,管辖所述座席。
其中,当查找失败时,优先选择与所述座席对应的VC相关联的路由子任务处理模块管辖所述座席,当没有与所述座席对应的VC相关联的路由子任务处理模块,或者现有的与所述座席对应的VC相关联的路由子任务处理模块已经达到或超过容量阈值,则可选择备用模块升级为路由子任务处理模块,管辖所述座席。
三、座席签入的情况:
当主控模块接收到座席经座席模块和CTI发送的签入请求时,所述主控模块将发送所述签入请求的座席作为空闲座席,选择与所述座席对应的VC相关联的一个路由子任务处理模块管辖所述座席,或者,选择一个备用模块作为与所述座席对应的VC相关联的路由子任务处理模块,管辖所述座席。
四、路由子任务处理模块崩溃的情况:
当所述主控模块通过心跳消息获知有路由子任务处理模块崩溃时,则根据崩溃的路由子任务处理模块的容量,从备用模块中选择一个或多个作为路由子任务处理模块,代替崩溃的路由子任务处理模块。
其中,所述主控模块通过向所有的路由子任务处理模块发送心跳消息,确定路由子任务处理模块的存活状态。
上述由路由子任务处理模块从自身管辖的空闲座席中查找局部最优座席,从自身管辖的等待服务的用户中查找局部最优用户,可将复杂的运算分散到多个路由子任务处理模块,而不是一个模块集中处理。当一路由子任务处理模块崩溃时,不会影响其它正常工作的路由子任务处理模块,从而避免了业务全面中断。另外,分布式的路由子任务处理模块可位于多个节点,比如,可以位于象IVVR这种轻量级计算模块,以充分利用冗余资源。
本发明有多种实施方式,比如,上述主控模块可包括调度模块(Scheduler)、资源平衡模块(Balancer)和一个以上的结果规约模块(Resulter)。
调度模块和资源平衡模块通常位于一个节点,而结果规约模块可与调度模块和资源平衡模块位于一个节点,也可以分布于其它节点。
采用上述实施方式时,针对上述用户呼入呼叫中心的情况,可采用如下实现方式:
步骤1,当调度模块接收到用户经IVVR发送的呼入VC并转接人工服务的排队请求时,选择一个结果规约模块,将携带所选择的结果规约模块的信息的排队请求发送给与所述VC相关联的所有路由子任务处理模块;
步骤2,路由子任务处理模块接收到携带所述结果规约模块的信息排队请求后,从自身管辖的空闲座席中查找局部最优座席并告知相应的结果规约模块;
步骤3,结果规约模块从一个以上的路由子任务处理模块获知局部最优座席后,从获知的所有局部最优座席中查找全局最优座席,当查找成功时,将所述全局最优座席告知所述调度模块,当查找失败时,将查找结果告知所述调度模块;
步骤4,调度模块从结果规约模块获知全局最优座席时,通知IVVR建立所述用户与所述全局最优座席的通话,并通知相关路由子任务处理模块所述全局最优座席已选定;从结果规约模块获知查找失败时,将所述用户作为等待服务的用户,选择与所述VC相关联的一个路由子任务处理模块管辖所述用户,或者,通过资源平衡模块选择一个备用模块作为与所述VC相关联的路由子任务处理模块,管辖所述用户。
针对上述座席出现空闲的情况,可采用如下方式:
步骤1,当调度模块接收到座席经座席模块和CTI发送的示闲请求时,选择一个结果规约模块,将携带所选择的结果规约模块的信息的示闲请求发送给与所述座席对应的VC相关联的所有路由子任务处理模块;
步骤2,路由子任务处理模块接收到所述示闲请求后,从自身管辖的等待服务的用户中查找局部最优用户并告知所述调度模块所选择的结果规约模块;
步骤3,结果规约模块从一个以上的路由子任务处理模块获知局部最优用户后,从获知的所有局部最优用户中查找全局最优用户,当查找成功时,将所述全局最优用户告知所述调度模块,当查找失败时,将查找结果告知所述调度模块;
步骤4,调度模块从结果规约模块获知全局最优用户时,通知IVVR建立所述座席与所述全局最优用户的通话,并通知相关路由子任务处理模块所述全局最优用户已选定;从结果规约模块获知查找失败时,将所述座席作为空闲座席,选择与所述座席对应的VC相关联的一个路由子任务处理模块管辖所述座席,或者,通过资源平衡模块选择一个备用模块作为与所述座席对应的VC相关联的路由子任务处理模块,管辖所述座席。
针对上述座席签入的情况,可采用如下方式:
当调度模块接收到座席经座席模块和CTI发送的签入请求时,将发送所述签入请求的座席作为空闲座席,选择与所述座席对应的VC相关联的一个路由子任务处理模块管辖所述座席,或者,通过资源平衡模块选择一个备用模块作为与所述座席对应的VC相关联的路由子任务处理模块,管辖所述座席。
针对上述路由子任务处理模块崩溃的情况,可采用如下方式:
调度模块通过向所有的路由子任务处理模块发送心跳消息,确定路由子任务处理模块的存活状态;
当调度模块通过心跳消息获知有路由子任务处理模块崩溃时,则通过资源平衡模块从备用模块中选择一个或多个作为路由子任务处理模块,代替崩溃的路由子任务处理模块。
另外,为避免调度模块和资源平衡模块崩溃,也可以采用主备的方式进行备份。路由子任务处理模块也可以划分为两个模块,一个模块管辖空闲座席,用来查找局部最优座席,一个模块管辖等待服务的用户,用来查找局部最优用户。
下面以主控模块包括Scheduler、Balancer和一个以上的Resulter的应用示例进一步对本发明进行详述。
如图2所示,为本发明应用示例的并行分布式路由架构的呼叫中心的示意图,其中:
Scheduler作为整个并行分布式路由系统的对外输入输出接口,承担着系统中的主控角色。Scheduler接收来自IVVR的用户排队请求,然后把并行分布式路由系统计算的结果(即全局最优座席,也即逻辑上最优的座席)返回给IVVR,然后IVVR再建立用户和座席之间的通话。另外,Scheduler还负责把用户和座席分发到合适的RouteTask上,Scheduler分发用户和座席的规则是以VcId(虚拟呼叫中心号)和备选RouteTask的容量并且参照规定的负载分配策略来完成的。
RouteTask计算所管辖的那部分空闲座席和等待服务的用户的路由。RouteTask向Scheduler注册,并且和Scheduler之间有心跳关系。RouteTask注册时提供自身的容量信息,Scheduler收到注册请求后,会为该RouteTask分配VcId。RouteTask采用分布式锁机制来维持数据的一致性和正确性。RouteTask把路由的结果送给Resulter做进一步规约处理。
Balancer和Scheduler关系紧密,实现时可以放在同一个进程、或同一台硬件节点上,采用共享存储的方式协同工作。Balancer根据规定的策略,安排一部分RouteTask作为备用模块。当某VC的规模出现扩张时,Balancer从这些备用模块中选择合适的RouteTask,然后把扩张的容量调配到选出的备用RouteTask上。另一方面,如果某RouteTask所在硬件节点上可用资源下降时(如:此节点上其他进程占用的资源突发性变大,或此节点上启动了新的进程,导致可用资源变少),也采用上述容量调配方法,保证系统的稳定性。恶劣情况下,某个正在工作的RouteTask突然崩溃,此时Balancer可以从备选模块上选择合适的RouteTask代替崩溃的RouteTask,从而减少座席重新签入的时间,进而减少这部分业务中断的时间。
Resulter可认为是一种特殊的RouteTask。Resulter负责接收相关RouteTask送来的路由结果,采用和一般RouteTask相同的算法和策略,从中选出全局最优的座席或用户,并把结果发给Scheduler。和RouteTask一样,Resulter也要向Scheduler注册、提供自己的容量信息并且和Scheduler之间也要通过心跳保持联系。
下面以建立或改造一呼叫中心及该呼叫中心运行中的各个阶段分别详细介绍。
1.规划阶段
在新建呼叫中心或改造现有呼叫中心时,先对当前可用硬件资源进行规划,根据每台可用硬件节点上当前可用内存、CPU状况,计划每个节点上几个RouteTask进程,每个进程的容量(可容纳的座席个数、可容纳的用户个数)。规划结果如图3所示。
2.新模块注册阶段
系统运行过程中,动态添加新模块过程如图4所示。Scheduler上维护一张资源注册表,注册表内容为:{身份,VcId,座席数,用户数,地址,...};新模块维护自己的容量信息:{可容纳的座席个数,可容纳的用户个数}。
①新模块B首先向Scheduler发出注册请求消息{可容纳的座席个数,可容纳的用户个数};
②Scheduler为新模块B确定身份(即新模块B作为RouteTask、还是Resulter、还是备用模块)、分配VcId,然后向新模块B返回{身份,VcId},然后把座席数和用户数记入注册表,形成一条新的记录{身份,VcId,座席数,用户数,模块B的地址,...}。
③新模块B登录完成后进入工作状态。Scheduler会周期性地向所有工作状态的RouteTask和Resulter发心跳消息,确定每个模块的存活状态。
在步骤②中,Scheduler确定B的身份,当B充当RouteTask或Resulter时,需要为B分配VcId,这样B就只参与和该VcId相关的路由处理;如果B充当备用模块,则VcId为0。
Scheduler是根据当前各VC的规模和分布情况,结合负载均衡策略(如权重划分算法),来确定B的身份和关联的VC。
具体可采用如下的权重划分算法:
首先每个VC设定一组容量参数{座席数,用户数};为每个RouteTask/Resulter分别设定一组容量参数{座席数,座席数阈值,用户数,用户数阈值}。
其中,Resulter的容量参数中的座席数是指与其相关联的RouteTask管辖的席数之和,用户数是指与其相关联的RouteTask管辖的用户数之和。
Scheduler把注册表中所有RouteTask/Resulter划分成集合X和集合Y:
集合X:座席数或用户数达到阈值的集合;
集合Y是集合X的补集;
Scheduler据此把所有VC划分成集合N和集合M:
集合N中的VC都存在至少一个位于集合X的RouteTask/Resulter;
集合M是集合N的补集;
当新模块B加入时,Scheduler首先检查集合N为空集,如果是则把新模块B作为备用模块;否则从集合N中任选一个VC,然后把新模块B作为该VC的RouteTask/Resulter,然后把超阈值RouteTask/Resulter上的超出部分的座席和用户迁移到新模块B上。
当用户手工调低容量阈值或Balancer动态调低容量阈值时,Scheduler也采用上述方法,把超阈值RouteTask/Resulter上的超出部分的座席和用户迁移到适当的RouteTask/Resulter或备用模块上。
当用户手工或Balancer动态调高某模块A的容量阈值时,Balancer选取该VC下容量最小的模块C,检查是否能够把C模块的容量全部迁移到模块A,如果可以则进行迁移,然后把模块C置为空闲模块(备用模块);否则不做迁移动作。
3.资源动态调配阶段
用户可以通过手工调整模块的容量阈值来实现资源的调配。系统运行过程中Balancer也会动态的调配资源,使计算量合理的分散在各RouteTask/Resulter。
①Balancer设定一组全局资源动态调整参数{调整周期,最大备用模块数,期望备用模块数,最小备用模块数}
②当调整周期到时,Balancer检查当前备用模块的数量是否超过最大备用模块数,如果超过,则选出一个VC和一个备用模块,调低该VC下每个RouteTask/Resulter的{座席数阈值,用户数阈值},然后把这些RouteTask/Resulter上超出部分的座席和用户迁移到该备用模块上,这样该备用模块就成为RouteTask或Resulter;然后再选出下一个VC和下一个备用模块进行容量迁移;不断重复上述动作,直到当前备用模块的数量达到期望备用模块数为止。
③当调整周期到时,Balancer检查当前备用模块的数量是否低于最小备用模块数,如果是,则选出一个VC,调高该VC下多个RouteTask/Resulter的{座席数阈值,用户数阈值},然后选择该VC下容量最小的RouteTask/Resulter,然后把该RouteTask上的全部容量迁移到其他RouteTask/Resulter中,这样该RouteTask/Resulter就变成了备用模块;然后再选出下一个VC进行容量迁移;不断重复上述动作,直到当前备用模块的数量达到期望备用模块数为止。
4.容量替换阶段
如图5所示,系统运行过程中当某个RouteTask崩溃时,Scheduler心跳消息检查感知到该模块已崩溃。因Balancer与Scheduler位于同一节点,同样可获知该模块的崩溃情况。Balancer根据注册表中崩溃RouteTask的容量,从备用模块中选择一个或多个模块,分配给对应的VC,这样这些备用模块被提升为RouteTask,原崩溃RouteTask上的座席重新登录时,Scheduler把他们分配到刚提升的RouteTask上。
Resulter崩溃时采用和RouteTask崩溃类似的处理方式,只是不存在座席重新登录的问题。
5.座席签入阶段
①如图6所示,座席签入到CTI,CTI通知Scheduler座席签入,签入参数为{VcId,AgentId(座席号)};
②Scheduler根据VcId从注册表中找出绑定到该VC的所有RouteTask。如果找到了,则从结果集中找出(当前座席数/座席数阈值)值最小的RouteTask,不妨以RouteTaskX代替;
③如果RouteTaskX的“当前座席数”小于“座席数阈值”,则向RouteTaskX发座席签入请求{AgentId,...},这样就完成了座席的签入,流程结束。
在步骤②,如果没找到绑定到该VC的RouteTask,则从备用模块池中选择一个模块提升为RouteTask,该RouteTask作为RouteTaskX专门为该VC服务;
在步骤③如果RouteTaskX的“当前座席数”大于等于“座席数阈值”,则从备用模块池中选择一个模块提升为RouteTask,该RouteTask作为RouteTaskX专门为该VC服务;
6.路由阶段
①如图7所示,用户拨接入码进入IVVR,然后选择转人工服务,此时IVVR向Scheduler发排队请求{VcId,DlgId(会话号),会话参数,...};
②Scheduler根据VcId从注册表中找出绑定到该VC的所有RouteTask/Resulter(假设该集合名叫Set)。
③Scheduler根据负载均衡算法从Resulter中选出一个Resulter供本次路由使用(假设该Resulter名叫ResulterX)
④Scheduler把排队请求{ResulterX的地址,DlgId,会话参数,...}发给集合Set中每个RouteTask;
⑤每个RouteTask上根据排队请求,在其管辖的座席中,根据各种路由策略,寻找逻辑上最优的座席(即局部最优座席),如果找到,则向ResulterX返回AgentId,否则返回0;
⑥ResulterX收齐集合Set上所有RouteTask返回的路由结果时,根据各种路由策略(和集合Set上每个RouteTask采用的路由策略相同),从中选出逻辑上最优的座席(即全局最优座席)。然后ResulterX把该向Scheduler返回排队结果{座席电话,...};
⑦Scheduler把排队结果{座席电话,...}返回给IVVR,然后IVVR建立用户和该座席的通话。流程结束。
在步骤⑥中,如果ResulterX最终未能为用户找到合适的呼叫,则流程进入“用户入队阶段”,这将在后面介绍。
5.用户入队阶段
①如图8所示,当路由失败时,Resulter向Scheduler请求用户入队{VcId,DlgId,会话参数..};
②Scheduler根据VcId从注册表中找出绑定到该VC的所有RouteTask,然后从结果集中找出(当前用户数/用户数阈值)值最小的RouteTask,不妨以RouteTaskX代替;
③如果RouteTaskX的“当前用户数”小于“用户数阈值”,则向RouteTaskX发用户入队请求{VcId,DlgId,会话参数..},这样就完成了用户的入队,流程结束。
在步骤②,如果没找到绑定到该VC的RouteTask,则从备用模块池中选择一个模块提升为RouteTask,该RouteTask作为RouteTaskX专门为该VC服务;
在步骤③如果RouteTaskX的“当前用户数”大于等于“用户数阈值”,则从备用模块池中选择一个模块提升为RouteTask,该RouteTask作为RouteTaskX专门为该VC服务;
6.排队阶段
①如图9所示,座席空闲并且做好接听准备时,向CTI请求示闲。CTI向Scheduler发座席示闲请求{VcId,AgtId,会话参数...};
②Scheduler根据VcId从注册表中找出绑定到该VC的所有RouteTask/Resulter(假设该集合名叫Set)。
③Scheduler根据负载均衡算法从Resulter中选出一个Resulter供本次排队使用(假设该Resulter名叫ResulterX)
④Scheduler把示闲请求{AgtId,会话参数,...}发给集合Set中每个RouteTask;
⑤每个RouteTask上根据示闲请求,在其管辖的等待服务的用户中,根据各种排队策略,寻找逻辑上最优的用户(即局部最优用户)。如果找到,则向ResulterX返回排队结果{用户DlgId},否则返回0;
⑥ResulterX收齐集合Set上所有RouteTask返回的排队结果时,根据各种排队策略(和集合Set上每个RouteTask采用的排队策略相同),从中选出逻辑上最优的用户(即全局最优用户)。然后ResulterX把该向Scheduler返回排队结果{座席电话,用户DlgId,...};
⑦Scheduler把排队结果{座席电话,用户DlgId,...}返回给IVVR,然后IVVR建立用户和该座席的通话。流程结束。
在步骤⑥中,如果ResulterX最终未能为座席找到合适的用户,则流程进入“座席入队阶段”,这将在后面介绍。
7.座席入队阶段
①如图10所示,当排队失败时,Resulter向Scheduler请求座席入队{VcId,AgtId,会话参数,...};
②Scheduler根据VcId从注册表中找出绑定到该VC的所有RouteTask,然后从结果集中找出(当前座席数/座席数阈值)值最小的RouteTask,不妨以RouteTaskX代替;
③如果RouteTaskX的“当前座席数”小于“座席数阈值”,则向RouteTaskX发座席入队请求{AgtId,会话参数,...},这样就完成了座席的入队,流程结束。
在步骤②,如果没找到绑定到该VC的RouteTask,则从备用模块池中选择一个模块提升为RouteTask,该RouteTask作为RouteTaskX专门为该VC服务;
在步骤③如果RouteTaskX的“当前座席数”大于等于“座席数阈值”,则从备用模块池中选择一个模块提升为RouteTask,该RouteTask作为RouteTaskX专门为该VC服务;
如前所述,本发明有多种可变形式,比如图11所示,为本发明的可变形式之一,把RouteTask进一步分成RouteTask和QueueTask,其中RouteTask专门负责座席队列管理和为用户寻找逻辑最优的座席;QueuTask专门负责用户队列管理和为座席寻找逻辑最优的呼叫。
另外,也可以把Resulter和Scheduler合设。这样Scheduler即负责调度又负责结果规约。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现,相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (16)
1.一种呼叫中心的实现方法,其特征在于,所述呼叫中心采用一个以上分布式的路由子任务处理模块;所述呼叫中心的一个CTI与主控模块相连;所述方法包括:
当呼叫中心的主控模块接收到用户经交互式语音及视频自动应答模块IVVR发送的排队请求时,将所述排队请求发送给全部或部分路由子任务处理模块;
接收到所述排队请求的路由子任务处理模块从自身管辖的空闲座席中查找局部最优座席并告知主控模块;
所述主控模块从获知的所有局部最优座席中查找全局最优座席,当查找成功时,通知IVVR建立所述用户与所述全局最优座席的通话。
2.如权利要求1所述的方法,其特征在于,
所述排队请求为呼入虚拟呼叫中心VC并转接人工服务的请求;
在主控模块将所述排队请求发送给全部或部分路由子任务处理模块的步骤中,所述主控模块将所述排队请求发送给与所述VC相关联的所有路由子任务处理模块。
3.如权利要求2所述的方法,其特征在于,
在所述主控模块从获知的所有局部最优座席中查找全局最优座席的步骤中,
当查找成功时,所述主控模块还通知相关路由子任务处理模块所述全局最优座席已选定;
当查找失败时,所述主控模块将所述用户作为等待服务的用户,选择与所述VC相关联的一个路由子任务处理模块管辖所述用户,或者,选择一个备用模块作为与所述VC相关联的路由子任务处理模块,管辖所述用户。
4.如权利要求1所述的方法,其特征在于,所述方法还包括:
当主控模块接收到座席经座席模块和CTI发送的示闲请求时,将所述示闲请求发送给全部或部分路由子任务处理模块;
接收到所述示闲请求的路由子任务处理模块从自身管辖的等待服务的用户中查找局部最优用户并告知主控模块;
所述主控模块从获知的所有局部最优用户中查找全局最优用户,当查找成功时,通知IVVR建立所述座席与所述全局最优用户的通话。
5.如权利要求4所述的方法,其特征在于,
在主控模块将所述座席发送的示闲请求发送给全部或部分路由子任务处理模块的步骤中,
所述主控模块将所述示闲请求发送给与所述座席对应的VC相关联的所有路由子任务处理模块。
6.如权利要求5所述的方法,其特征在于,
在所述主控模块从获知的所有局部最优用户中查找全局最优用户的步骤中,
当查找成功时,所述主控模块还通知相关路由子任务处理模块所述全局最优用户已选定;
当查找失败时,所述主控模块将所述座席作为空闲座席,选择与所述座席对应的VC相关联的一个路由子任务处理模块管辖所述座席,或者,选择一个备用模块作为与所述座席对应的VC相关联的路由子任务处理模块,管辖所述座席。
7.如权利要求6所述的方法,其特征在于,所述方法还包括:
当主控模块接收到座席经座席模块和CTI发送的签入请求时,所述主控模块将发送所述签入请求的座席作为空闲座席,选择与所述座席对应的VC相关联的一个路由子任务处理模块管辖所述座席,或者,选择一个备用模块作为与所述座席对应的VC相关联的路由子任务处理模块,管辖所述座席。
8.如权利要求1~7中任意一项所述的方法,其特征在于,所述方法还包括:
当所述主控模块获知有路由子任务处理模块崩溃时,则根据崩溃的路由子任务处理模块的容量,从备用模块中选择一个或多个作为路由子任务处理模块,代替崩溃的路由子任务处理模块。
9.一种呼叫中心,包括一个CTI、IVVR和座席模块,其特征在于,还包括并行分布式路由系统,所述并行分布式路由系统包括主控模块和一个以上分布式的路由子任务处理模块,其中,
所述主控模块用于,当接收到用户经IVVR发送的排队请求时,将所述排队请求发送给全部或部分路由子任务处理模块;以及,从一个以上的路由子任务处理模块获知局部最优座席后,从获知的所有局部最优座席中查找全局最优座席,当查找成功时,通知IVVR建立所述用户与所述全局最优座席的通话;
所述路由子任务处理模块用于,接收到所述排队请求后,从自身管辖的空闲座席中查找局部最优座席并告知主控模块。
10.如权利要求9所述的呼叫中心,其特征在于,
所述排队请求为呼入VC并转接人工服务的请求;
所述主控模块进一步用于,在将所述排队请求发送给全部或部分路由子任务处理模块时,将所述排队请求发送给与所述VC相关联的所有路由子任务处理模块。
11.如权利要求10所述的呼叫中心,其特征在于,所述呼叫中心还包括一个以上的备用模块;
所述主控模块进一步用于,从所有局部最优座席中查找全局最优座席时,当查找成功时,还取消相关路由子任务处理模块管辖所述全局最优座席;当查找失败时,将所述用户作为等待服务的用户,选择与所述VC相关联的一个路由子任务处理模块管辖所述用户,或者,或者,选择一个备用模块作为与所述VC相关联的路由子任务处理模块,管辖所述用户。
12.如权利要求9所述的呼叫中心,其特征在于,
所述主控模块进一步用于,当接收到座席经座席模块和CTI发送的示闲请求时,将所述示闲请求发送给全部或部分路由子任务处理模块;以及,从一个以上的路由子任务处理模块获知局部最优用户后,从获知的所有局部最优用户中查找全局最优用户,当查找成功时,通知IVVR建立所述座席与所述全局最优用户的通话;
路由子任务处理模块进一步用于,接收到所述示闲请求后,从自身管辖的等待服务的用户中查找局部最优用户并告知主控模块。
13.如权利要求12所述的呼叫中心,其特征在于,
所述主控模块进一步用于,在将所述座席发送的示闲请求发送给全部或部分路由子任务处理模块时,将所述示闲请求发送给与所述座席对应的VC相关联的所有路由子任务处理模块。
14.如权利要求13所述的呼叫中心,其特征在于,所述呼叫中心还包括一个以上的备用模块;
所述主控模块进一步用于,从所有局部最优用户中查找全局最优用户时,当查找成功时,还取消相关路由子任务处理模块管辖所述全局最优用户;当查找失败时,将所述座席作为空闲座席,选择与所述座席对应的VC相关联的一个路由子任务处理模块管辖所述座席,或者,选择一个备用模块作为与所述座席对应的VC相关联的路由子任务处理模块,管辖所述座席。
15.如权利要求14所述的呼叫中心,其特征在于,
所述主控模块进一步用于,当接收到座席经座席模块和CTI发送的签入请求时,将发送所述签入请求的座席作为空闲座席,选择与所述座席对应的VC相关联的一个路由子任务处理模块管辖所述座席,或者,选择一个备用模块作为与所述座席对应的VC相关联的路由子任务处理模块,管辖所述座席。
16.如权利要求9~15中任意一项所述的呼叫中心,其特征在于,
所述主控模块进一步用于,通过向所有的路由子任务处理模块发送心跳消息,确定路由子任务处理模块的存活状态;当通过心跳消息获知有路由子任务处理模块崩溃时,则根据崩溃的路由子任务处理模块的容量,从备用模块中选择一个或多个作为路由子任务处理模块,代替崩溃的路由子任务处理模块。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110008509.7A CN102595003B (zh) | 2011-01-14 | 2011-01-14 | 一种呼叫中心及其实现方法 |
PCT/CN2011/076150 WO2012094873A1 (zh) | 2011-01-14 | 2011-06-22 | 一种呼叫中心及其实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110008509.7A CN102595003B (zh) | 2011-01-14 | 2011-01-14 | 一种呼叫中心及其实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102595003A CN102595003A (zh) | 2012-07-18 |
CN102595003B true CN102595003B (zh) | 2015-03-25 |
Family
ID=46483189
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110008509.7A Active CN102595003B (zh) | 2011-01-14 | 2011-01-14 | 一种呼叫中心及其实现方法 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN102595003B (zh) |
WO (1) | WO2012094873A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2895953B1 (en) * | 2012-09-12 | 2019-03-27 | Greeneden U.S. Holdings II, LLC | System and method for providing dynamic elasticity of contact center resources |
CN110278334A (zh) * | 2018-03-14 | 2019-09-24 | 北京京东尚科信息技术有限公司 | 分派呼叫请求的方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101197881A (zh) * | 2006-12-05 | 2008-06-11 | 中兴通讯股份有限公司 | 广域集中控制呼叫中心系统 |
CN101924841A (zh) * | 2010-08-13 | 2010-12-22 | 厦门雅迅网络股份有限公司 | 一种呼叫中心和数据中心分布式结构的搭建及控制方法 |
CN101924842A (zh) * | 2009-06-10 | 2010-12-22 | 中兴通讯股份有限公司 | 计算机电信集成设备及资源管理和呼入控制方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7321657B2 (en) * | 2003-12-19 | 2008-01-22 | At&T Delaware Intellectual Property, Inc. | Dynamic force management system |
-
2011
- 2011-01-14 CN CN201110008509.7A patent/CN102595003B/zh active Active
- 2011-06-22 WO PCT/CN2011/076150 patent/WO2012094873A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101197881A (zh) * | 2006-12-05 | 2008-06-11 | 中兴通讯股份有限公司 | 广域集中控制呼叫中心系统 |
CN101924842A (zh) * | 2009-06-10 | 2010-12-22 | 中兴通讯股份有限公司 | 计算机电信集成设备及资源管理和呼入控制方法 |
CN101924841A (zh) * | 2010-08-13 | 2010-12-22 | 厦门雅迅网络股份有限公司 | 一种呼叫中心和数据中心分布式结构的搭建及控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102595003A (zh) | 2012-07-18 |
WO2012094873A1 (zh) | 2012-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102611735B (zh) | 一种应用服务的负载均衡方法及系统 | |
RU2641477C1 (ru) | Способ и устройство для конфигурирования обеспечивающего резервирование решения в архитектуре облачных вычислений | |
CA2477868C (en) | Management of queues in contact centres | |
US9703610B2 (en) | Extensible centralized dynamic resource distribution in a clustered data grid | |
JP3301648B2 (ja) | サービス・アクセス・ポイントに接続を分散する通信制御システム | |
CN103516759B (zh) | 云系统资源管理方法、云呼叫中心坐席管理方法和云系统 | |
JP2015537307A (ja) | コンポーネント指向ハイブリッドクラウドオペレーティングシステムのアーキテクチャ及びその通信方法 | |
JP2002044261A (ja) | 階層化された制御アーキテクチャを持つマルチメディア顧客ケアセンタ | |
CN102137197B (zh) | 一种座席及其工作方法 | |
JPH10503306A (ja) | 顧客−サーバアーキテクチャを有するコンピュータシステム | |
US9451089B2 (en) | Calling center system and calling processing method thereof | |
CN110166524A (zh) | 数据中心的切换方法、装置、设备及存储介质 | |
US20120069987A1 (en) | Computer Telephony Integration Device and Resource Management Method and Incoming Call Control Method | |
CN101645988A (zh) | 下一代呼叫中心系统及其排队方法 | |
US20150186489A1 (en) | System and method for supporting asynchronous invocation in a distributed data grid | |
CN103458131A (zh) | 坐席登录、调度的方法及坐席中心 | |
CN110297698A (zh) | 一种多优先级动态限流方法、装置、服务器及存储介质 | |
CN107689879A (zh) | 虚拟网元的管理方法及装置 | |
US20110153826A1 (en) | Fault tolerant and scalable load distribution of resources | |
CN102595003B (zh) | 一种呼叫中心及其实现方法 | |
WO2008110118A1 (fr) | Procédé de transfert d'appel et système de communication | |
CN105491253A (zh) | 一种呼叫中心的资源分配方法及系统 | |
US7519626B2 (en) | Management of contacts in a network of contact centers | |
US11882174B2 (en) | Virtual machine as a service for an autonomous edge | |
CN103516758A (zh) | 资源路由、呼叫中心坐席的业务请求处理方法及装置 |
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 |