CN112003987A - 一种外呼调度装置和外呼调度方法 - Google Patents

一种外呼调度装置和外呼调度方法 Download PDF

Info

Publication number
CN112003987A
CN112003987A CN202010870901.1A CN202010870901A CN112003987A CN 112003987 A CN112003987 A CN 112003987A CN 202010870901 A CN202010870901 A CN 202010870901A CN 112003987 A CN112003987 A CN 112003987A
Authority
CN
China
Prior art keywords
outbound
object data
queue
level cache
outbound object
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.)
Granted
Application number
CN202010870901.1A
Other languages
English (en)
Other versions
CN112003987B (zh
Inventor
徐千惠
宁凯
王晴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
E Capital Transfer Co ltd
Original Assignee
E Capital Transfer Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by E Capital Transfer Co ltd filed Critical E Capital Transfer Co ltd
Priority to CN202010870901.1A priority Critical patent/CN112003987B/zh
Publication of CN112003987A publication Critical patent/CN112003987A/zh
Application granted granted Critical
Publication of CN112003987B publication Critical patent/CN112003987B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/22Arrangements for supervision, monitoring or testing
    • H04M3/36Statistical metering, e.g. recording occasions when traffic exceeds capacity of trunks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/147Network analysis or design for predicting network behaviour

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开涉及一种外呼调度装置和外呼调度方法。本公开的外呼调度装置包括:第一级缓存;第一导入单元,其用于控制从外呼数据库成批地导入外呼对象数据至第一级缓存;加权单元,其用于对第一级缓存中的外呼对象数据进行权重计算以及基于计算的权重值在第一级缓存中更新形成关于外呼对象数据的加权队列;第二级缓存;第二导入单元,其用于基于加权队列中的外呼对象数据的权重大小按顺序地从第一级缓存成批地导入加权队列中的外呼对象数据至第二级缓存,以及在第二级缓存中形成关于外呼对象数据的待呼队列;以及外呼调用控制单元。本公开的外呼调度装置效率高、处理性能好,并且有效避免优先级低的客户等待时间过长造成阻塞。

Description

一种外呼调度装置和外呼调度方法
技术领域
本发明属于外呼技术领域,尤其涉及一种外呼调度装置、计算机执行的外呼调度方法、以及用于实现该方法的计算机设备和计算机可读存储介质。
背景技术
外呼系统(例如智能外呼机器人)可以融合传统呼叫中心通信技术、智能AI等计算机技术,通过服务器分配外呼线路资源,主动发起对客户(即呼叫对象)的呼叫。在呼叫时,服务器端拥有客户的相关信息(即呼叫对象数据),如客户电话号码、客户名称、客户优先级等,服务器基于客户优先级进行外呼调度操作,例如根据客户优先级信息将呼叫对象数据导入缓存中形成等待队列,等待队列中的呼叫对象数据按照其客户优先级信息进行从高到低地排序。
然而,实际场景下,由于线路资源有限、客户数量多、优先级复杂等因素影响下,如何高效合理地进行外呼调度就成为了一个待解决的问题。
发明内容
为有效解决或者至少缓解现有技术中存在的上述问题和其他方面的问题中的一个或多个,本公开提供以下技术方案。
按照本公开的一方面,提供一种外呼调度装置,其包括:
第一级缓存;
第一导入单元,其用于控制从外呼数据库成批地导入外呼对象数据至所述第一级缓存;
加权单元,其用于对所述第一级缓存中的外呼对象数据进行权重计算以及基于计算的权重值在所述第一级缓存中更新形成关于外呼对象数据的加权队列;
第二级缓存;
第二导入单元,其用于基于所述加权队列中的外呼对象数据的权重大小按顺序地从所述第一级缓存成批地导入所述加权队列中的外呼对象数据至所述第二级缓存,以及在所述第二级缓存中形成关于外呼对象数据的待呼队列;以及
外呼调用控制单元,其用于基于所述待呼队列的排序为所述待呼队列中的外呼对象数据调用外呼资源。
根据附加或替代实施方案,所述外呼调度装置是为能够同时多租户服务的基于多租户模式的外呼调度装置;
其中,所述外呼数据库对应于每个所述租户而设置。
根据附加或替代实施方案,所述加权单元进一步用于在所述第一级缓存中为每个所述租户形成相应的关于该租户的外呼对象数据的加权队列;
所述第二导入单元进一步用于在所述第二级缓存中为每个所述租户形成相应的关于该租户的外呼对象数据的待呼队列。
根据附加或替代实施方案,所述加权单元进一步用于至少基于所述第一级缓存中的外呼对象数据在其中等待的时间长度和外呼对象的优先级对所述外呼对象数据进行权重计算。
根据附加或替代实施方案,所述等待的时间长度通过所述外呼对象数据在所述第一级缓存中经历的时间周期的个数来反映,其中,所述时间周期表现为向所述第一级缓存成批地导入所述外呼数据库的外呼对象数据的时间间隔。
根据附加或替代实施方案,所述加权单元基于以下关系式计算导入有新一批外呼对象数据的加权队列的每一外呼对象数据的权重值R:
R =
Figure 100002_DEST_PATH_IMAGE001
×
Figure 300216DEST_PATH_IMAGE002
+T×
Figure 100002_DEST_PATH_IMAGE003
其中,t表示所述加权队列的当前第t个待加权的外呼对象数据,T表示外呼对象数据在第一级缓存中经历的所述时间周期的个数,
Figure 641067DEST_PATH_IMAGE003
表示时间权值,
Figure 523572DEST_PATH_IMAGE002
表示外呼对象的优先级,
Figure 876056DEST_PATH_IMAGE001
表示优先级权值。
根据附加或替代实施方案,所述第一导入单元还被配置为:
在所述加权队列的当前外呼对象数据的数量小于预设的数量下限时,新导入一批外呼对象数据至所述加权队列,每次成批导入的外呼对象数据的数量通过以下关系式计算:
M =
Figure 490708DEST_PATH_IMAGE004
- A ;
其中,M为成批导入的外呼对象数据的数量,
Figure 172051DEST_PATH_IMAGE004
为预设的所述加权队列的外呼对象数据的数量上限,A表示所述加权队列的当前外呼对象数据的数量。
根据附加或替代实施方案,所述第二导入单元还被配置为:
当所述待呼队列中当前的外呼对象数据的数量少于预设的所述待呼队列的数量下限时,从所述加权队列中按照所述加权队列的排序新导入一批外呼对象数据至所述待呼队列,每次成批导入至所述待呼队列的外呼对象数据的数量按照以下关系式确定:
m =
Figure 100002_DEST_PATH_IMAGE005
- C;
其中,m为成批导入至所述待呼队列的外呼对象数据的数量,
Figure 45198DEST_PATH_IMAGE005
为预设的所述待呼队列的数量上限,C为所述待呼队列中当前的外呼对象数据的数量。
按照本公开的又一方面,提供一种计算机执行的外呼调度方法,其包括:
从外呼数据库成批地导入外呼对象数据至第一级缓存;
对所述第一级缓存中的外呼对象数据进行权重计算以及基于计算的权重值在所述第一级缓存中更新形成关于外呼对象数据的加权队列;
基于所述加权队列中的外呼对象数据的权重大小按顺序地从所述第一级缓存成批地导入所述加权队列中的外呼对象数据至第二级缓存,从而在所述第二级缓存中形成关于外呼对象数据的待呼队列;以及
基于所述待呼队列的排序为所述待呼队列中的外呼对象数据调用外呼资源。
根据附加或替代实施方案,使用所述外呼调度方法同时为多租户进行外呼调度。
根据附加或替代实施方案,在进行权重计算的过程中,至少基于所述第一级缓存中的外呼对象数据在其中等待的时间长度和外呼对象的优先级对所述外呼对象数据进行权重计算。
根据附加或替代实施方案,所述等待的时间长度通过所述外呼对象数据在所述第一级缓存中经历的时间周期(T)的个数来反映,其中,所述时间周期表现为向所述第一级缓存成批地导入所述外呼数据库的外呼对象数据的时间间隔。
根据附加或替代实施方案,在进行权重计算的过程中,基于以下关系式计算导入有新一批外呼对象数据的加权队列的每一外呼对象数据的权重值R:
R =
Figure 189872DEST_PATH_IMAGE001
×
Figure 490272DEST_PATH_IMAGE002
+T×
Figure 353186DEST_PATH_IMAGE003
其中,t表示所述加权队列的当前第t个待加权的外呼对象数据,T表示外呼对象数据在第一级缓存中经历的所述时间周期的个数,
Figure 577494DEST_PATH_IMAGE003
表示时间权值,
Figure 216154DEST_PATH_IMAGE002
表示外呼对象的优先级,
Figure 625139DEST_PATH_IMAGE001
表示优先级权值。
根据附加或替代实施方案,在成批地导入外呼对象数据至所述第一级缓存的过程中,
在所述加权队列的当前外呼对象数据的数量小于预设的数量下限时,新导入一批外呼对象数据至所述加权队列,每次成批导入的外呼对象数据的数量(M)通过以下关系式计算:
M =
Figure 772086DEST_PATH_IMAGE004
- A ;
其中,M为成批导入的外呼对象数据的数量,
Figure 737768DEST_PATH_IMAGE004
为预设的所述加权队列的外呼对象数据的数量上限,A表示所述加权队列的当前外呼对象数据的数量。
根据附加或替代实施方案,在成批地导入所述加权队列中的外呼对象数据至所述第二级缓存的过程中,
当所述待呼队列中当前的外呼对象数据的数量少于预设的所述待呼队列的数量下限时,从所述加权队列中按照所述加权队列的排序新导入一批外呼对象数据至所述待呼队列,每次成批导入至所述待呼队列的外呼对象数据的数量按照以下关系式确定:
m =
Figure 236795DEST_PATH_IMAGE005
- C;
其中,m为成批导入至所述待呼队列的外呼对象数据的数量,
Figure 629730DEST_PATH_IMAGE005
为预设的所述待呼队列的数量上限,C为所述待呼队列中当前的外呼对象数据的数量。
按照本公开的还一方面,提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器运行所述程序时实现以上任一所述外呼调度方法的步骤。
按照本公开的再一方面,提供一种计算机可读存储介质,其上存储有计算机程序,其中,该程序可被处理器执行以实现以上任一所述外呼调度方法的步骤。
根据以下描述和附图本发明的以上特征、操作和优点将变得更加明显。
附图说明
从结合附图的以下详细说明中,将会使本发明的上述和其他目的及优点更加完整清楚,其中,相同或相似的要素采用相同的标号表示。
从结合附图的以下详细说明中,将会使本发明的上述和其他目的及优点更加完整清楚,其中,相同或相似的要素采用相同的标号表示。
图1是按照本公开一实施例的外呼调度装置的模块结构示意图。
图2是按照本公开一实施例的外呼调度装置或计算机设备的基本结构示意图。
图3是按照本公开一实施例的外呼调度方法的流程图。
具体实施方式
现在将参照附图更加完全地描述本发明,附图中示出了本发明的示例性实施例。但是,本发明可按照很多不同的形式实现,并且不应该被理解为限制于这里阐述的实施例。相反,提供这些实施例使得本公开变得彻底和完整,并将本发明的构思完全传递给本领域技术人员。
虽然本发明的特征是结合若干实施/实施例的仅其中之一来公开的,但是如针对任何给定或可识别的功能可能是期望和/或有利的,可以将此特征与其他实施/实施例的一个或多个其他特征进行组合。
附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或者在一个或多个硬件模块或集成电路中实现这些功能实体,或者在不同处理装置和/或微控制器装置中实现这些功能实体。
在本公开中,为方便理解,先说明以下术语的基本含义:
多租户:其是指一个单独的实体可以为多个组织或对象服务;
外呼:外呼是通过客户服务中心系统的呼出服务主动发起对外呼对象(例如客户)的呼叫;
先来先服务调度算法:系统按照作业到达的先后次序来进行调度,或者说它优先考虑在系统中等待时间最长的作业,而基本不管该作业所需执行时间的长短,从后备作业队列中选择几个最先进入该队列的作业,将它们调入内存,为它们分配资源和创建进程;然后把它放入就绪队列。
图1所示为按照本公开一实施例的外呼调度装置的模块结构示意图。如图1所示,本公开一实施例的外呼调度装置10使用了两级缓存,即第一级缓存110和第二级缓存140,第一级缓存110中的外呼对象数据从外呼数据库910导入,第二级缓存140中的外呼对象数据从第一级缓存110中导入。第一级缓存110和第二级缓存140具体可以使用计算机已经存在的二级缓存结构来实现。
进一步,对应第一级缓存110设置有第一导入单元120,第一导入单元120用于控制从外呼数据库910成批地导入外呼对象数据(例如客户数据)至第一级缓存110;将理解,外呼数据库910可以预先地存储有相应组织或实体的客户数据,其例如可以以数据池的方式呈现。
在一实施例中,外呼调度装置10是为能够同时多租户服务的基于多租户模式的外呼调度装置10,外呼数据库910对应于每个租户而设置,外呼数据库910的具体布置形式不是限制性的。具体地,每个外呼数据库910独立地设置并将相应租户的外呼对象数据(例如客户数据)通过打标签方式进行存放在其中,外呼对象数据(例如客户数据)可以包括但不限于客户电话号码、客户名称、客户优先级等,其中,客户优先级表示客户电话号码在外呼调度时的优先程度,是外呼调度优先级的一个影响因子,在导入客户数据时,可以以客户优先级为标准按比例导入数据,导入数据中高优先级的用户数量可以高于低优先级的用户数量。
在一实施例中,第一导入单元120控制从租户的外呼数据库910中成批地导入一定量的外呼对象数据至第一级缓存110,以使第一级缓存110的加权队列119的外呼对象数据的数量不大于预先设置的数量上限
Figure 778821DEST_PATH_IMAGE004
也基本不小于预先设置的数量下限
Figure 344931DEST_PATH_IMAGE006
;在第一级缓存110的加权队列119的当前外呼对象数据的数量A小于数量下限
Figure DEST_PATH_IMAGE007
时,第一导入单元120新导入一批外呼对象数据至第一级缓存110;每次成批导入的外呼对象数据的数量M通过以下关系式(1)计算:
M =
Figure 505654DEST_PATH_IMAGE004
- A (1);
其中,
Figure 131807DEST_PATH_IMAGE004
为预先设置的第一级缓存110中的加权队列119的外呼对象数据的数量上限,A表示第一级缓存110中的加权队列119的当前外呼对象数据的数量。
在一实施例中,成批导入的新一批外呼对象数据(例如M条外呼对象数据)可以加入到加权队列119中(如果加权队列119已经存在),或者形成新的初始加权队列(如果加权队列119先前不存在)。
继续如图1所示,对应第一级缓存110还设置有加权单元130,加权单元130可以对第一级缓存110中的外呼对象数据(例如客户数据)进行权重计算以及基于计算的权重值R在第一级缓存110中更新形成关于外呼对象数据的加权队列119,例如按照权重值由大到小重新排列形成加权队列119。在本公开一实施例中,加权单元130并不是简单地仅基于外呼对象的优先级(例如客户优先级)对诸多外呼对象数据进行权重计算,而是将进一步考虑了导入后的外呼对象数据在第一级缓存110中等待的时间长度等时间参数,也即,加权单元130进一步至少基于第一级缓存110中的外呼对象数据在其中等待的时间长度和外呼对象的优先级对外呼对象数据进行权重计算,外呼对象数据等待的时间长度越长,在权重计算时对其配置的相应的权值增加。
具体地,等待的时间长度可以通过外呼对象数据在第一级缓存110中经历的时间周期T的个数来反映,其中,时间周期T表现为向第一级缓存110成批地导入外呼数据库910的外呼对象数据的时间间隔;例如,从加权队列119在被导入数据之后会持续将数据传给第二级缓存140,当加权队列119中的数据数量少于
Figure 253347DEST_PATH_IMAGE006
时,加权队列119会再从外呼数据库910提取数据,这个过程可以定义为一个时间周期T。
具体地,加权单元130被配置为通过以下关系式(2)对加权队列119中的所有外呼对象数据进行权重计算,即通过以下关系式(2)计算权重值R:
R =
Figure 810099DEST_PATH_IMAGE001
×
Figure 966274DEST_PATH_IMAGE002
+T×
Figure 701012DEST_PATH_IMAGE003
(2);
其中,t表示当前第t个待加权的外呼对象数据,T反映外呼对象数据在第一级缓存110中经历的时间周期的个数,
Figure 309848DEST_PATH_IMAGE003
表示时间权值,
Figure 217761DEST_PATH_IMAGE001
表示优先级权值,
Figure 228442DEST_PATH_IMAGE002
表示外呼对象的优先级。需要说明的是,在外呼数据库910的数据中,可以预先定义外呼对象的优先级的集合为P = {
Figure 383349DEST_PATH_IMAGE008
,
Figure DEST_PATH_IMAGE009
,...
Figure 479481DEST_PATH_IMAGE002
,...
Figure 128768DEST_PATH_IMAGE010
},其中t表示当前待加权的外呼对象数据,n代表外呼对象的优先级种类的总数量(n为大于或等于2的整数);优先级权值的集合预先定义为W,其可表示为W={
Figure DEST_PATH_IMAGE011
,...,
Figure 446486DEST_PATH_IMAGE001
,...
Figure 585343DEST_PATH_IMAGE012
}。
将理解,通过以上关系式(2)可以更新地计算出被导入新一批外呼对象数据后的加权队列119中的每一外呼对象数据的权重值R,也即权重值被更新;进一步,加权单元130基于更新计算的权重值在第一级缓存110中形成新的加权队列119,也即新的加权队列119可以相对之前的加权队列119被重新排序,例如,依据权重值从大到小对原加权队列119进行排序形成新的加权队列119。这样,新的加权队列119的排序不仅仅反映优先级因子、还反映外呼对象数据在第一级缓存110中经历的时间周期T的多少,例如,在第一级缓存110中经历的较多时间周期T的外呼对象数据的排序将会被提前,从而,在导入至第二级缓存140时可以被优先导入。
需要说明的是,以上实施例中,使用时间周期T而不是使用基本时间单位(时、分、秒)作为加权运算的参数的原因在于:如果使用基本时间单位作为参数,当某一个提取周期(即时间周期)的时间较长时,加权队列119中的客户优先级低的数据会获得过多的时间权重,导致客户优先级低的数据权重比刚进来的客户优先级高的数据权重还要高,一旦发生这样的情况,加权队列119的排列结果就类似于先进先出的结构,从而基本丧失了优先级权重的意义;而如果使用时间周期T作为等待的时间长度的时间参数,加权队列119中的未被导入至第二级缓存140的数据在经历一个时间周期T后都会获得一定量的时间权重,不会出现时间权重随着时间周期消耗的时间变化而变化的情况,从而可以得到有效的时间权重。
需要说明的是,在外呼调度装置10是基于多租户模式的外呼调度装置时,加权单元130进一步可以在第一级缓存110中为每个租户形成相应的关于该租户的外呼对象数据的加权队列119,例如,第一级缓存110中的每个加权队列119对应每个租户而设置。
继续如图1所示,对应第二级缓存140还设置有第二导入单元150,第二导入单元150被配置为基于加权队列119中的外呼对象数据的权重大小按顺序地从第一级缓存110导入加权队列119中的外呼对象数据至第二级缓存140,并且还被配置为在第二级缓存140中形成关于外呼对象数据的待呼队列149。需要说明的是,在一实施例中,加权队列119已经按外呼对象数据的权重大小从大到小地依序排列好的情况下,第二导入单元150可以基于加权队列119的排序依次导入至第二级缓存140中即可,相应地,加权队列119可以简单地按照先进先出的方式排列;待呼队列149的外呼对象数据可以按照其导入时间顺序来排列。
在一实施例中,待呼队列149的外呼对象数据的数量上限为
Figure 840875DEST_PATH_IMAGE005
、数量下限为
Figure DEST_PATH_IMAGE013
;当该待呼队列149中当前的外呼对象数据的数量C少于
Figure 356170DEST_PATH_IMAGE013
时,第二导入单元150就从加权队列119中导入数据,导入规则为,权重高的数据优先,导入的外呼对象数据的数量按照以下关系式(3)确定:
m =
Figure 528394DEST_PATH_IMAGE005
- C (3)。
在一实施例中,为保证每次待呼队列149从加权队列119中提取数据都能够提取到m个数据,
Figure 775836DEST_PATH_IMAGE005
的值不大于
Figure 580981DEST_PATH_IMAGE006
的值。
需要说明的是,在外呼调度装置10是基于多租户模式的外呼调度装置时,第二导入单元150进一步可以在所述第二级缓存140中为每个租户形成相应的关于该租户的外呼对象数据的待呼队列149,例如,第二级缓存140中的每个待呼队列149对应每个租户而设置。
继续如图1所示,外呼调度装置10中还设置有外呼调用控制单元160,外呼调用控制单元160基于待呼队列149的排序为待呼队列149中的外呼对象数据调用外呼资源,从而完成各个外呼对象的自动呼叫。将理解,外呼资源的具体形式不是限制性的,其能基于外呼对象数据的数据内容自动完成呼叫。
在一实施例中,外呼调用控制单元160可以按照先来先服务调度算法来进行调用操作。
以上实施例的外呼调度装置10 具有以下效果的一方面或多方面:
第一,可以利用二级缓存的结构将外呼数据库910、加权队列119和待打队列149分隔开,使得每个模块的操作都能够在不影响其他模块的条件下独立地进行;例如,加权队列119以及加权单元130 基本只需要专注于进行一个操作——加权计算操作,这个操作基本相对待打队列149和外呼数据库910完全独立,既不需要与外呼数据库910进行交互也不需要与待打队列149进行交互,直到下一个数据提取周期的到来,加权队列119的加权操作既不影响待打队列149也不影响外呼数据库910);同理,第二级缓存140对应设置待呼队列149,存放的是将要进行的外呼任务且在等待外呼资源的客户信息,该级缓存也不会去与加权队列119或者外呼数据库910做交互,直到待呼队列149中的客户信息数量低于最低阈值才会从加权队列119导入新数据;因此,可以保证作为外呼调度装置10的服务器性能的利用效率,有效提高该服务器的处理性能。
第二,加权运算时引入时间参数(例如时间周期)能够使原始优先级低但是等待时间过长的外呼对象获得优先排序,从而避免了在资源紧张或者消费力低的情况下,优先级低的客户等待时间过长造成阻塞。
将理解,在外呼调度装置10是基于多租户模式的外呼调度装置10的情况下,以上第一方面效果将显得更为突出。
;图2所示为按照本公开一实施例的外呼调度装置或计算机设备的基本结构示意图。如图2所示外呼调度装置10可以通过本公开一实施例的计算机设备200实现,该计算机设备200可以是通用计算机、服务器、专用计算机或具有基于预定程序进行计算处理功能的机器,其甚至可以通过云计算来实现。
参见图2所示实施例的计算机设备200的具体示例性框架结构,在基本配置201中,计算机设备200典型地包括系统存储器220和一个或者多个处理器210。存储器总线230可以用于在处理器210和系统存储器220之间的通信。
取决于期望的配置,处理器210可以是任何类型的处理,包括但不限于:微处理器(μP)、微控制器(μC)、数字信息处理器(DSP)或者它们的任何组合。处理器210可以包括诸如第一级缓存110和第二级缓存140,第一级缓存110中存储有关于外呼对象数据的加权队列119、第二级缓存140存储有关于外呼对象数据的待呼队列149;处理器210还可以包括处理器核心215和寄存器217。示例的处理器核心215可以包括运算逻辑单元(ALU)、浮点数单元(FPU)、数字信号处理核心(DSP核心)或者它们的任何组合。示例的存储器控制器219可以与处理器210一起使用,或者在一些实施例中,存储器控制器219可以是处理器210的一个内置部分。
取决于期望的配置,系统存储器220可以是任意类型的存储器,包括但不限于:易失性存储器(诸如RAM)、非易失性存储器(诸如ROM、闪存等)或者它们的任何组合。系统存储器220可以包括操作系统221、一个或者多个应用223以及程序数据229。在一些实施方式中,应用223可以布置为在操作系统上利用程序数据229进行操作。
计算机设备200还可以包括接口总线290,其有助于从各种接口设备(例如,输出设备260、外设接口270和通信设备280)经由总线/接口控制器250到基本配置201的通信。示例的输出设备260包括图形处理单元261和音频处理单元263。它们可以被配置为有助于经由一个或者多个A/V端口265与诸如显示器或者扬声器之类的各种外部设备进行通信。示例的外设接口270可以包括串行接口控制器 和并行接口控制器,它们可以被配置为有助于经由一个或者多个I/O端口和诸如输入设备(例如,键盘、鼠标、笔、语音输入设备、触摸输入设备)或者其他外设(例如打印机、扫描仪等)之类的外部设备进行通信。示例的通信设备280可以包括网络控制器281,其可以被布置为适于经由一个或者多个通信端口283与一个或者多个其他计算机设备(例如机器乘客90上的计算机设备)进行通信。
继续如图2所示,在一实施例中,计算机设备200的应用223中还包括第一导入单元120、加权单元130、第二导入单元150、外呼调用控制单元160等。第一导入单元120、加权单元130、第二导入单元150和外呼调用控制单元160等可以作为一个独立的软件安装于计算机设备200中,或仅体现为一段代码;将理解,第一导入单元120、加权单元130、第二导入单元150和外呼调用控制单元160在计算机设备200中的存在形式不是限制性的,它们与第一级缓存110、第二级缓存140一起可以控制调度针对诸多外呼对象数据的外呼操作。
需要说明的是,本公开实施例的外呼调度装置10并不限于通过以上图2所示具体实施例的计算机200来实现。
图3所示为按照本公开一实施例的外呼调度方法的流程图;以下结合图1和图3示例说明多租户模式下的外呼调度方法。
首先,步骤S310,将多租户的客户数据通过打标签和独立数据库的方式进行存放。
步骤S320,从相应的外呼数据库910成批地导入外呼对象数据至第一级缓存110。
步骤S330,新导入的一批外呼对象数据存入至已有的加权队列119。
在步骤S320和S330中,第一级缓存110的加权队列119的外呼对象数据的数量不大于预先设置的数量上限
Figure 634388DEST_PATH_IMAGE004
也基本不小于预先设置的数量下限
Figure 491197DEST_PATH_IMAGE006
;在第一级缓存110的加权队列119的当前外呼对象数据的数量A小于数量下限
Figure 909540DEST_PATH_IMAGE007
时,第一导入单元120新导入一批外呼对象数据至第一级缓存110的相应加权队列119;每次成批导入的外呼对象数据的数量M通过以上关系式(1)计算。
步骤S340,对加权队列119中的外呼对象数据进行权重计算,基于计算的权重值在第一级缓存110中更新形成新的加权队列119,也即加权队列119的排序基于计算的权重值被更新。
具体地,通过以上关系式(2)对加权队列119中的所有外呼对象数据重新进行权重计算,并基于计算得到的权重值按由大到小地顺序排序外呼对象数据以形成的加权队列119。
步骤S350,判断第二级缓存140中的待呼队列149的当前外呼对象数据的数量是否小于预设的数量下限
Figure 467560DEST_PATH_IMAGE013
;如果判断为“是”,进入步骤S360,否则不进行步骤S360的导入操作。
步骤S360,从第一级缓存110成批地导入加权队列119中的外呼对象数据至第二级缓存140的待呼队列149。
具体地,待呼队列149的外呼对象数据的数量上限为
Figure 246029DEST_PATH_IMAGE005
、数量下限为
Figure 205895DEST_PATH_IMAGE013
;当该待呼队列149中当前的外呼对象数据的数量C少于
Figure 795139DEST_PATH_IMAGE013
时,第二导入单元150就从加权队列119中导入数据,导入规则为,权重高的数据优先,导入的外呼对象数据的数量按照以上关系式(3)确定。在一实施例中,为保证每次待呼队列149从加权队列119中提取数据都能够提取到m个数据,
Figure 761827DEST_PATH_IMAGE005
的值不大于
Figure 157036DEST_PATH_IMAGE006
的值。
步骤S370,基于待呼队列149的排序为待呼队列中的外呼对象数据调用外呼资源,具体可以按照先来先服务调度算法来进行调用操作。
步骤S380,判断加权队列119的当前外呼对象数据的数量是否小于预设的数量下限
Figure 971408DEST_PATH_IMAGE006
。如果判断为“是”,返回步骤S320,否则不进行步骤S320的导入操作。
需要说明的是,以上步骤S320至S380可以对应每个租户独立地进行,也就是说,在多租户模式下,多个租户的外呼调度可以基于步骤S320至S380并行地进行。
需要要说明的是,将时间作为参数参与外呼优先级的加权运算过程,从而可以保证等待时间过长的外呼对象能够得到优先处理;同时,时间参数的单位选择为上述时间周期T而不是时间的基本单位(时、分、秒),也有利于避免在单个时间周期比较长的情况下低优先级的外呼对象获得过大的时间权重加成。
需要说明的是,以上示例的各种外呼调度方法可以主要地在计算机设备200中实现。
需要说明的是,本发明的以上实施例的计算机设备200可以由计算机程序指令实现,可以将这些计算机程序指令提供给通用计算机、专用计算机或其他可编程数据处理设备的处理器以构成本发明实施例的计算机设备200,并且,可以由计算机或其他可编程数据处理设备的处理器执行的这些指令来创建用于实施这些流程图和/或框和/或一个或多个流程框图中指定的功能/操作的单元或部件。
并且,可以将这些计算机程序指令存储在计算机可读存储器中,这些指令可以指示计算机或其他可编程处理器以特定方式实现功能,以便存储在计算机可读存储器中的这些指令构成包含实施流程图和/或框图的一个或多个框中指定的功能/操作的指令部件的制作产品。
还应该注意在一些备选实现中,框中所示的功能/操作可以不按流程图所示的次序来发生。例如,依次示出的两个框实际可以基本同时地执行或这些框有时可以按逆序执行,具体取决于所涉及的功能/操作。
需要说明的是,本文公开和描绘的元件(包括附图中的流程图、方块图)意指元件之间的逻辑边界。然而,根据软件或硬件工程实践,描绘的元件及其功能可通过计算机可执行介质在机器上执行,计算机可执行介质具有能够执行存储在其上的程序指令的处理器,所述程序指令作为单片软件结构、作为独立软件模块或作为使用外部程序、代码、服务等的模块,或这些的任何组合,且全部这些执行方案可落入本公开的范围内。
虽然不同非限制性实施方案具有特定说明的组件,但本发明的实施方案不限于这些特定组合。可能使用来自任何非限制性实施方案的组件或特征中的一些与来自任何其它非限制性实施方案的特征或组件组合。
虽然示出、公开和要求了特定步骤顺序,但应了解步骤可以任何次序实施、分离或组合,除非另外指明,且仍将受益于本公开。
前述描述是示例性的而非定义成受限于其内。本文公开了各种非限制性实施方案,然而,本领域的一般技术人员将意识到根据上述教示,各种修改和变更将落入附属权利要求的范围内。因此,将了解在附属权利要求的范围内,可实行除了特定公开之外的公开内容。由于这个原因,应研读附属权利要求来确定真实范围和内容。

Claims (17)

1.一种外呼调度装置,其特征在于,包括:
第一级缓存;
第一导入单元,其用于控制从外呼数据库成批地导入外呼对象数据至所述第一级缓存;
加权单元,其用于对所述第一级缓存中的外呼对象数据进行权重计算以及基于计算的权重值在所述第一级缓存中更新形成关于外呼对象数据的加权队列;
第二级缓存;
第二导入单元,其用于基于所述加权队列中的外呼对象数据的权重大小按顺序地从所述第一级缓存成批地导入所述加权队列中的外呼对象数据至所述第二级缓存,以及在所述第二级缓存中形成关于外呼对象数据的待呼队列;以及
外呼调用控制单元,其用于基于所述待呼队列的排序为所述待呼队列中的外呼对象数据调用外呼资源。
2.如权利要求1所述的外呼调度装置,其特征在于,所述外呼调度装置是为能够同时多租户服务的基于多租户模式的外呼调度装置;
其中,所述外呼数据库对应于每个所述租户而设置。
3.如权利要求2所述的外呼调度装置,其特征在于,所述加权单元进一步用于在所述第一级缓存中为每个所述租户形成相应的关于该租户的外呼对象数据的加权队列;
所述第二导入单元进一步用于在所述第二级缓存中为每个所述租户形成相应的关于该租户的外呼对象数据的待呼队列。
4.如权利要求1所述的外呼调度装置,其特征在于,所述加权单元进一步用于至少基于所述第一级缓存中的外呼对象数据在其中等待的时间长度和外呼对象的优先级对所述外呼对象数据进行权重计算。
5.如权利要求4所述的外呼调度装置,其特征在于,所述等待的时间长度通过所述外呼对象数据在所述第一级缓存中经历的时间周期的个数来反映,其中,所述时间周期表现为向所述第一级缓存成批地导入所述外呼数据库的外呼对象数据的时间间隔。
6.如权利要求5所述的外呼调度装置,其特征在于,所述加权单元基于以下关系式计算导入有新一批外呼对象数据的加权队列的每一外呼对象数据的权重值R:
R =
Figure DEST_PATH_IMAGE001
×
Figure 854750DEST_PATH_IMAGE002
+T×
Figure DEST_PATH_IMAGE003
其中,t表示所述加权队列的当前第t个待加权的外呼对象数据,T表示外呼对象数据在第一级缓存中经历的所述时间周期的个数,
Figure 36333DEST_PATH_IMAGE003
表示时间权值,
Figure 226005DEST_PATH_IMAGE002
表示外呼对象的优先级,
Figure 188145DEST_PATH_IMAGE001
表示优先级权值。
7.如权利要求1所述的外呼调度装置,其特征在于,所述第一导入单元还被配置为:
在所述加权队列的当前外呼对象数据的数量小于预设的数量下限时,新导入一批外呼对象数据至所述加权队列,每次成批导入的外呼对象数据的数量通过以下关系式计算:
M =
Figure 754256DEST_PATH_IMAGE004
- A ;
其中,M为成批导入的外呼对象数据的数量,
Figure 55924DEST_PATH_IMAGE004
为预设的所述加权队列的外呼对象数据的数量上限,A表示所述加权队列的当前外呼对象数据的数量。
8.如权利要求1或7所述的外呼调度装置,其特征在于,所述第二导入单元还被配置为:
当所述待呼队列中当前的外呼对象数据的数量少于预设的所述待呼队列的数量下限时,从所述加权队列中按照所述加权队列的排序新导入一批外呼对象数据至所述待呼队列,每次成批导入至所述待呼队列的外呼对象数据的数量按照以下关系式确定:
m =
Figure DEST_PATH_IMAGE005
- C;
其中,m为成批导入至所述待呼队列的外呼对象数据的数量,
Figure 478815DEST_PATH_IMAGE005
为预设的所述待呼队列的数量上限,C为所述待呼队列中当前的外呼对象数据的数量。
9.一种计算机执行的外呼调度方法,其特征在于,包括:
从外呼数据库成批地导入外呼对象数据至第一级缓存;
对所述第一级缓存中的外呼对象数据进行权重计算以及基于计算的权重值在所述第一级缓存中更新形成关于外呼对象数据的加权队列;
基于所述加权队列中的外呼对象数据的权重大小按顺序地从所述第一级缓存成批地导入所述加权队列中的外呼对象数据至第二级缓存,从而在所述第二级缓存中形成关于外呼对象数据的待呼队列;以及
基于所述待呼队列的排序为所述待呼队列中的外呼对象数据调用外呼资源。
10.如权利要求9所述的外呼调度方法,其特征在于,使用所述外呼调度方法同时为多租户进行外呼调度。
11.如权利要求9所述的外呼调度方法,其特征在于,在进行权重计算的过程中,至少基于所述第一级缓存中的外呼对象数据在其中等待的时间长度和外呼对象的优先级对所述外呼对象数据进行权重计算。
12.如权利要求11所述的外呼调度方法,其特征在于,所述等待的时间长度通过所述外呼对象数据在所述第一级缓存中经历的时间周期的个数来反映,其中,所述时间周期表现为向所述第一级缓存成批地导入所述外呼数据库的外呼对象数据的时间间隔。
13.如权利要求12所述的外呼调度方法,其特征在于,在进行权重计算的过程中,基于以下关系式计算导入有新一批外呼对象数据的加权队列的每一外呼对象数据的权重值R:
R =
Figure 865934DEST_PATH_IMAGE001
×
Figure 235736DEST_PATH_IMAGE002
+T×
Figure 126331DEST_PATH_IMAGE003
其中,t表示所述加权队列的当前第t个待加权的外呼对象数据,T表示外呼对象数据在第一级缓存中经历的所述时间周期的个数,
Figure 991562DEST_PATH_IMAGE003
表示时间权值,
Figure 600398DEST_PATH_IMAGE002
表示外呼对象的优先级,
Figure 773890DEST_PATH_IMAGE001
表示优先级权值。
14.如权利要求9所述的外呼调度方法,其特征在于,在成批地导入外呼对象数据至所述第一级缓存的过程中,
在所述加权队列的当前外呼对象数据的数量小于预设的数量下限时,新导入一批外呼对象数据至所述加权队列,每次成批导入的外呼对象数据的数量通过以下关系式计算:
M =
Figure 784572DEST_PATH_IMAGE004
- A ;
其中,M为成批导入的外呼对象数据的数量,
Figure 814845DEST_PATH_IMAGE004
为预设的所述加权队列的外呼对象数据的数量上限,A表示所述加权队列的当前外呼对象数据的数量。
15.如权利要求9或14所述的外呼调度方法,其特征在于,在成批地导入所述加权队列中的外呼对象数据至所述第二级缓存的过程中,
当所述待呼队列中当前的外呼对象数据的数量少于预设的所述待呼队列的数量下限时,从所述加权队列中按照所述加权队列的排序新导入一批外呼对象数据至所述待呼队列,每次成批导入至所述待呼队列的外呼对象数据的数量按照以下关系式确定:
m =
Figure 97927DEST_PATH_IMAGE005
- C;
其中,m为成批导入至所述待呼队列的外呼对象数据的数量,
Figure 183433DEST_PATH_IMAGE005
为预设的所述待呼队列的数量上限,C为所述待呼队列中当前的外呼对象数据的数量。
16.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器运行所述程序时实现如权利要求9-15中任一项所述方法的步骤。
17.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序可被处理器执行以实现如权利要求9-15中任一项所述方法的步骤。
CN202010870901.1A 2020-08-26 2020-08-26 一种外呼调度装置和外呼调度方法 Active CN112003987B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010870901.1A CN112003987B (zh) 2020-08-26 2020-08-26 一种外呼调度装置和外呼调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010870901.1A CN112003987B (zh) 2020-08-26 2020-08-26 一种外呼调度装置和外呼调度方法

Publications (2)

Publication Number Publication Date
CN112003987A true CN112003987A (zh) 2020-11-27
CN112003987B CN112003987B (zh) 2022-03-11

Family

ID=73470361

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010870901.1A Active CN112003987B (zh) 2020-08-26 2020-08-26 一种外呼调度装置和外呼调度方法

Country Status (1)

Country Link
CN (1) CN112003987B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6408066B1 (en) * 1999-12-15 2002-06-18 Lucent Technologies Inc. ACD skill-based routing
US7804953B1 (en) * 2005-12-30 2010-09-28 At&T Intellectual Property Ii, Lp Redirection of outbound calling
CN105979107A (zh) * 2016-07-13 2016-09-28 上海携程商务有限公司 基于语音识别的自动外呼方法及系统
CN106506883A (zh) * 2016-10-25 2017-03-15 上海携程商务有限公司 呼叫中心的外呼方法及系统
CN106572274A (zh) * 2016-11-11 2017-04-19 上海携程商务有限公司 呼叫中心的自动外呼方法及系统
CN107786757A (zh) * 2017-02-17 2018-03-09 平安科技(深圳)有限公司 银行卡业务参数调整方法和装置
CN107979704A (zh) * 2017-12-01 2018-05-01 中国联合网络通信集团有限公司 排队方法、排队系统
CN110166632A (zh) * 2019-04-15 2019-08-23 中国平安人寿保险股份有限公司 智能外呼处理方法、装置、计算机设备及存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6408066B1 (en) * 1999-12-15 2002-06-18 Lucent Technologies Inc. ACD skill-based routing
US7804953B1 (en) * 2005-12-30 2010-09-28 At&T Intellectual Property Ii, Lp Redirection of outbound calling
CN105979107A (zh) * 2016-07-13 2016-09-28 上海携程商务有限公司 基于语音识别的自动外呼方法及系统
CN106506883A (zh) * 2016-10-25 2017-03-15 上海携程商务有限公司 呼叫中心的外呼方法及系统
CN106572274A (zh) * 2016-11-11 2017-04-19 上海携程商务有限公司 呼叫中心的自动外呼方法及系统
CN107786757A (zh) * 2017-02-17 2018-03-09 平安科技(深圳)有限公司 银行卡业务参数调整方法和装置
CN107979704A (zh) * 2017-12-01 2018-05-01 中国联合网络通信集团有限公司 排队方法、排队系统
CN110166632A (zh) * 2019-04-15 2019-08-23 中国平安人寿保险股份有限公司 智能外呼处理方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN112003987B (zh) 2022-03-11

Similar Documents

Publication Publication Date Title
CN109408215B (zh) 一种计算节点的任务调度方法和装置
CN110287003A (zh) 资源的管理方法和管理系统
CN104765640B (zh) 一种智能服务调度方法
CN100485625C (zh) 一种实时系统任务调度方法
CN111782355B (zh) 一种基于混合负载的云计算任务调度方法及系统
JP5803972B2 (ja) マルチコアプロセッサ
CN111026519B (zh) 基于分布式的任务优先级调度方法和系统及存储介质
KR102239428B1 (ko) 이종 이벤트 큐
US10271326B2 (en) Scheduling function calls
CN111897637B (zh) 作业调度方法、装置、主机及存储介质
WO2017080276A1 (zh) 资源管理方法和系统、计算机存储介质
CN114579285B (zh) 一种任务运行系统、方法及计算设备
CN109582436A (zh) 基于容器集群平台的细粒度抢占式资源调度系统及方法
CN111597044A (zh) 任务调度方法、装置、存储介质及电子设备
CN112925616A (zh) 任务分配方法、装置、存储介质及电子设备
CN104375883B (zh) 一种cfs调度器
CN103677959A (zh) 一种基于组播的虚拟机集群迁移方法及系统
CN105320565A (zh) 一种针对多种应用软件的计算机资源调度方法
CN112003987B (zh) 一种外呼调度装置和外呼调度方法
CN112789593A (zh) 一种基于多线程的指令处理方法及装置
EP4386554A1 (en) Instruction distribution method and device for multithreaded processor, and storage medium
CN110088730B (zh) 任务处理方法、装置、介质及其设备
CN104461471A (zh) 分簇vliw处理器上统一的指令调度和寄存器分配方法
CN116795503A (zh) 任务调度方法、任务调度装置、图形处理器及电子设备
CN106354555A (zh) 一种操作系统进程调度算法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant