Techniques for data matching in a contact center system
29 claims: 3 independent, 26 dependent
- 1コンタクトセンターシステムにおけるデータマッチングのための方法であって、前記方法は、前記コンタクトセンターシステムの少なくとも1つのスイッチに通信可能に結合され、前記コンタクトセンターシステムにおいてデータマッチング動作を行うように構成されたデータマッチングモジュールの少なくとも1つのコンピュータプロセッサによって、コンタクト相互作用データベースから履歴コンタクト相互作用に関連付けられた相互作用イベント時間を決定することであって、前記コンタクト相互作用データベースは、前記データマッチングモジュールに通信可能に結合されている、ことと、前記少なくとも1つのコンピュータプロセッサによって、成果データベースから履歴コンタクト相互作用成果に関連付けられた成果イベント時間を決定することであって、前記成果データベースは、前記データマッチングモジュールに通信可能に結合されている、ことと、前記少なくとも1つのコンピュータプロセッサによって、前記相互作用イベント時間および前記成果イベント時間を分析し、前記履歴コンタクト相互作用成果が前記履歴コンタクト相互作用から生じた相関確率を決定することと、前記少なくとも1つのコンピュータプロセッサによって、前記相関確率に基づいて、前記履歴コンタクト相互作用を前記履歴コンタクト相互作用成果とマッチングすることであって、前記コンタクト相互作用データベースおよび前記成果データベースは、異なる無相関の構造を有する、こととを含む、方法。
- 2前記相互作用イベント時間は、時間窓である、請求項1に記載の方法。
- 3前記成果イベント時間は、タイムスタンプである、請求項1に記載の方法。
- 4前記少なくとも1つのコンピュータプロセッサによって、前記相互作用イベント時間を分析することに先立って、前記相互作用イベント時間をより長いイベント持続時間に延長することをさらに含む、請求項1に記載の方法。
- 5前記成果イベント時間は、前記相互作用イベント時間の範囲外にある、請求項1に記載の方法。
- 6前記成果イベント時間は、前記相互作用イベント時間の終了後に生じる、請求項1に記載の方法。
- 7前記少なくとも1つのコンピュータプロセッサによって、第1のデータ源から前記履歴コンタクト相互作用のためのデ-タを読み出すことと、前記少なくとも1つのコンピュータプロセッサによって、前記第1のデータ源と異なる第2のデータ源から前記履歴コンタクト相互作用成果のためのデータを読み出すこととをさらに含む、請求項1に記載の方法。
- 8前記少なくとも1つのコンピュータプロセッサによって、前記第1のデータ源と第2のデータ源との間にクロック同期化の問題を発見することと、前記少なくとも1つのコンピュータプロセッサによって、前記クロック同期化の問題を自動的に補正することとをさらに含む、請求項7に記載の方法。
- 9前記少なくとも1つのコンピュータプロセッサによって、前記コンタクトセンターシステムにおけるコンタクト-エージェントペアリングを最適化するために、前記履歴コンタクト相互作用と前記履歴コンタクト相互作用成果との前記マッチングに基づいて、コンタクト-エージェントペアリングモデルを生成することをさらに含む、請求項1に記載の方法。
- 10前記少なくとも1つのコンピュータプロセッサによって、前記分析を控えめに制約することをさらに含み、前記控えめに制約することは、より高いマッチング率およびあまり正確ではないマッチングをもたらす、請求項1に記載の方法。
- 11前記少なくとも1つのコンピュータプロセッサによって、前記分析を過度に制約することをさらに含み、前記過度に制約することは、より低いマッチング率およびより正確なマッチングをもたらす、請求項1に記載の方法。
- 12前記少なくとも1つのコンピュータプロセッサによって、前記履歴コンタクト相互作用と前記履歴コンタクト相互作用成果との前記マッチングが正確である確率を決定することをさらに含む、請求項1に記載の方法。
- 13前記少なくとも1つのコンピュータプロセッサによって、複数のマッチングされた履歴コンタクト相互作用およびコンタクト相互作用成果が正確である確率を決定することをさらに含む、請求項1に記載の方法。
- 14コンタクトセンターシステムにおけるデータマッチングのためのシステムであって、前記システムは、前記コンタクトセンターシステムの少なくとも1つのスイッチに通信可能に結合され、前記コンタクトセンターシステムにおいてデータマッチング動作を行うように構成されたデータマッチングモジュールの少なくとも1つのコンピュータプロセッサを備え、前記少なくとも1つのコンピュータプロセッサは、コンタクト相互作用データベースから履歴コンタクト相互作用に関連付けられた相互作用イベント時間を決定することであって、前記コンタクト相互作用データベースは、前記データマッチングモジュールに通信可能に結合されている、ことと、成果データベースから履歴コンタクト相互作用成果に関連付けられた成果イベント時間を決定することであって、前記成果データベースは、前記データマッチングモジュールに通信可能に結合されている、ことと、前記相互作用イベント時間および前記成果イベント時間を分析し、前記履歴コンタクト相互作用成果が前記履歴コンタクト相互作用から生じた相関確率を決定することと、前記相関確率に基づいて、前記履歴コンタクト相互作用を前記履歴コンタクト相互作用成果とマッチングすることであって、前記コンタクト相互作用データベースおよび前記成果データベースは、異なる無相関の構造を有する、こととを行うようにさらに構成されている、システム。
- 15前記相互作用イベント時間は、時間窓である、請求項14に記載のシステム。
- 16前記成果イベント時間は、タイムスタンプである、請求項14に記載のシステム。
- 17前記少なくとも1つのコンピュータプロセッサは、前記相互作用イベント時間を分析することに先立って、前記相互作用イベント時間をより長いイベント持続時間に延長するようにさらに構成されている、請求項14に記載のシステム。
- 18前記成果イベント時間は、前記相互作用イベント時間の範囲外にある、請求項14に記載のシステム。
- 19前記成果イベント時間は、前記相互作用イベント時間の終了後に生じる、請求項14に記載のシステム。
- 20前記少なくとも1つのコンピュータプロセッサは、第1のデータ源から前記履歴コンタクト相互作用のためのデータを読み出すことと、前記第1のデータ源と異なる第2のデータ源から前記履歴コンタクト相互作用成果のためのデータを読み出すこととを行うようにさらに構成されている、請求項14に記載のシステム。
- 21前記少なくとも1つのコンピュータプロセッサは、前記第1のデータ源と第2のデータ源との間にクロック同期化の問題を発見することと、前記クロック同期化の問題を自動的に補正することとを行うようにさらに構成されている、請求項20に記載のシステム。
- 22前記少なくとも1つのコンピュータプロセッサは、前記コンタクトセンターシステムにおけるコンタクト-エージェントペアリングを最適化するために、前記履歴コンタクト相互作用と前記履歴コンタクト相互作用成果との前記マッチングに基づいて、コンタクト-エージェントペアリングモデルを生成するようにさらに構成されている、請求項14に記載のシステム。
- 23前記少なくとも1つのコンピュータプロセッサは、前記分析を控えめに制約するようにさらに構成され、前記控えめに制約することは、より高いマッチング率およびあまり正確ではないマッチングをもたらす、請求項14に記載のシステム。
- 24前記少なくとも1つのコンピュータプロセッサは、前記分析を過度に制約するようにさらに構成され、前記過度に制約することは、より低いマッチング率およびより正確なマッチングをもたらす、請求項14に記載のシステム。
- 25前記少なくとも1つのコンピュータプロセッサは、前記履歴コンタクト相互作用と前記履歴コンタクト相互作用成果との前記マッチングが正確である確率を決定するようにさらに構成されている、請求項14に記載のシステム。
- 26前記少なくとも1つのコンピュータプロセッサは、複数のマッチングされた履歴コンタクト相互作用およびコンタクト相互作用成果が正確である確率を決定するようにさらに構成されている、請求項14に記載のシステム。
- 27コンタクトセンターシステムにおけるデータマッチングのための プロセッサ読み取り可能な媒体であって、 前記プロセッサ読み取り可能な媒体は、 前記媒体上に記憶された命令を備え、前記命令は、前記コンタクトセンターシステムの少なくとも1つのスイッチに通信可能に結合され、前記コンタクトセンターシステムにおいてデータマッチング動作を行うように構成されたデータマッチングモジュールの少なくとも1つのコンピュータプロセッサによって、前記媒体から読み取り可能であるように構成され、それによって、前記命令は、コンタクト相互作用データベースから履歴コンタクト相互作用に関連付けられた相互作用イベント時間を決定することであって、前記コンタクト相互作用データベースは、前記データマッチングモジュールに通信可能に結合されている、ことと、成果データベースから履歴コンタクト相互作用成果に関連付けられた成果イベント時間を決定することであって、前記成果データベースは、前記データマッチングモジュールに通信可能に結合されている、ことと、前記相互作用イベント時間および前記成果イベント時間を分析し、前記履歴コンタクト相互作用成果が前記履歴コンタクト相互作用から生じた相関確率を決定することと、前記相関確率に基づいて、前記履歴コンタクト相互作用を前記履歴コンタクト相互作用 成果 とマッチングすることであって、前記コンタクト相互作用データベースおよび前記成果データベースは、異なる無相関の構造を有する、こととを行うように前記少なくとも1つのコンピュータプロセッサに動作させる、プロセッサ読み取り可能な媒体。
- 28前記少なくとも1つのコンピュータプロセッサは、前記相互作用イベント時間を分析することに先立って、前記相互作用イベント時間をより長いイベント持続時間に延長するようにさらに動作させられる、請求項27に記載のプロセッサ読み取り可能な媒体。
- 29前記成果イベント時間は、前記相互作用イベント時間の終了後に生じる、請求項27に記載のプロセッサ読み取り可能な媒体。
Independent claims29
51 paragraphs, as filed
(Citation of Related Applications) This international patent application claims priority to U.S. Patent Application No. 15/826,093 (filed November 29, 2017), which is incorporated herein by reference in its entirety. are incorporated herein by reference.
FIELD OF THE DISCLOSURE This disclosure relates generally to analysis of contact center data and, more particularly, to techniques for data matching in contact center systems.
A typical contact center algorithmically assigns contacts arriving at the contact center to available agents to handle those contacts. At times, a contact center may have agents available and waiting to be assigned to inbound or outbound contacts (eg, calls, Internet chat sessions, emails). At other times, contact centers may make contacts wait in one or more queues until an agent is available for assignment.
In some typical contact centers, contacts are assigned to agents ordered based on arrival time, and agents receive contacts ordered based on time when those agents become available. do. This strategy may be referred to as a "first in, first out", "FIFO", or "round robin" strategy. In other typical contact centers, other strategies may also be used, such as "performance-based routing" or "PBR" strategies.
In other more advanced contact centers, contacts are paired with agents using a "behavioral pairing" or "BP" strategy, under which contacts and agents are paired in subsequent contact-agent pairs. Allocations may be intentionally (preferentially) paired in a manner that allows them to be paired, so that when the benefits of all allocations under the BP strategy are summed, they are FIFO as well as performance-based routing ("PBR"). can outperform those of other strategies, such as strategies. BP is designed to encourage balanced utilization of agents in the skill queue, yet at the same time increases overall contact center performance beyond what FIFO or PBR methods would allow. Improve. This is great because BP acts on the same calls and the same agents as FIFO or PBR methods, utilizing agents almost as uniformly as FIFO provides, further improving overall contact center performance. It is a result. BPs are described, for example, in US Pat. No. 9,300,802, incorporated herein by reference. Additional information about these and other features of pairing or matching modules (sometimes referred to as "SATMAPs," "routing systems," "routing engines," etc.) can be found, for example, in U.S. Patent No. 8,879,715 (see (herein incorporated by reference).
A BP strategy may use the results of interactions between contacts and agents to build a pairing model and iteratively refine it. However, in some typical contact centers, performance records may be stored separately and in an unstructured/unrelated manner to the information stored about contact assignments to agents.
In light of the foregoing, in order to improve the efficiency and performance of pairing strategies designed to choose between multiple possible pairings, such as BP strategies, for contact interaction data and contact interaction outcome data. It should be appreciated that there may be a need for a system that improves the accuracy of data matching.
<p>Techniques for data matching in a contact center system are disclosed. In one particular embodiment, the techniques may be implemented as a method for data matching in a contact center system, wherein the method includes at least one person communicatively coupled to the contact center system and configured to operate therein. determining an interaction event time associated with a historical contact interaction by one computer processor; determining an outcome event time associated with a historical contact interaction outcome by at least one computer processor; analyzing the interaction event time and the outcome event time to determine a correlation, by the at least one computer processor, and matching the historical contact interaction to the historical contact interaction outcome based on the correlation; including.</p><p>According to other aspects of this particular embodiment, the interaction event time may be a time window and the outcome event time may be a timestamp.</p><p>According to other aspects of this particular embodiment, the method further includes, by the at least one computer processor, extending the interaction event time to a longer event duration prior to analyzing the interaction event time. may be included.</p><p>According to other aspects of this particular embodiment, the outcome event time may be outside the interaction event time.</p><p>According to other aspects of this particular embodiment, the outcome event time may occur after the interaction event time ends.</p><p>According to other aspects of this particular embodiment, a method includes: retrieving data for historical contact interactions from a first data source by at least one computer processor; The method may further include retrieving data for historical contact interaction outcomes from a second data source that is different from the first data source.</p><p>According to other aspects of this particular embodiment, a method includes: detecting, by at least one computer processor, a clock synchronization problem between a first data source and a second data source; and automatically correcting clock synchronization problems by one computer processor.</p><p>According to other aspects of this particular embodiment, a method includes, by at least one computer processor, combining historical contact interactions and historical contact interaction outcomes to optimize contact-agent pairing in a contact center system. The method may further include generating a contact-agent pairing model based on the matching.</p><p>According to other aspects of this particular embodiment, the method may further include conservatively constraining the analysis by the at least one computer processor, where conservatively constraining results in a higher matching rate and less accuracy. bring about matching.</p><p>According to other aspects of this particular embodiment, the method may further include overconstraining the analysis by the at least one computer processor, where overconstraining results in lower matching rates and more accurate matching. bring about.</p><p>According to other aspects of this particular embodiment, the method may further include determining, by the at least one computer processor, a probability that the matching of historical contact interactions and historical contact interaction outcomes is accurate.</p><p>According to other aspects of this particular embodiment, the method may further include determining, by the at least one computer processor, a probability that the plurality of matched historical contact interactions and contact interaction outcomes are accurate.</p><p>In another particular embodiment, the techniques may be implemented as a system for data matching in a contact center system, the system being communicatively coupled to the contact center system and configured to operate therein. one computer processor, the at least one computer processor further configured to implement the method described above;</p><p>In another particular embodiment, the techniques may be implemented as an article of manufacture for data matching in a contact center, the article of manufacture including a non-transitory processor-readable medium and instructions stored on the medium. and the instructions are configured to be readable from the medium by at least one computer processor communicatively coupled to and configured to operate therein, such that the instructions are readable from the medium. At least one computer processor is operated to perform the steps in the method discussed.</p><p>The present disclosure will now be described in more detail with reference to specific embodiments thereof as illustrated in the accompanying drawings. Although the disclosure is described below with reference to particular embodiments, it should be understood that the disclosure is not limited thereto. Those skilled in the art who have access to the teachings herein will recognize additional implementations, modifications, and embodiments, as well as other areas of use, that are within the scope of this disclosure as described herein. , with respect to which the present disclosure may be very useful.</p><p><u style="Single">The present invention provides, for example, the following items.</u><u style="Single">(Item 1)</u><u style="Single"> A method for data matching in a contact center system, the method comprising:</u><u style="Single"> determining an interaction event time associated with a historical contact interaction by at least one computer processor communicatively coupled to and configured to operate within the contact center system;</u><u style="Single"> determining, by the at least one computer processor, an outcome event time associated with a historical contact interaction outcome;</u><u style="Single"> analyzing, by the at least one computer processor, the interaction event time and the outcome event time to determine a correlation;</u><u style="Single"> matching, by the at least one computer processor, the historical contact interaction with the historical contact interaction outcome based on the correlation;</u><u style="Single"> including methods.</u><u style="Single">(Item 2)</u><u style="Single"> The method of item 1, wherein the interaction event time is a time window.</u><u style="Single">(Item 3)</u><u style="Single"> The method of item 1, wherein the outcome event time is a timestamp.</u><u style="Single">(Item 4)</u><u style="Single"> 2. The method of item 1, further comprising extending the interaction event time to a longer event duration by the at least one computer processor prior to analyzing the interaction event time.</u><u style="Single">(Item 5)</u><u style="Single"> The method of item 1, wherein the outcome event time is outside the interaction event time.</u><u style="Single">(Item 6)</u><u style="Single"> The method of item 1, wherein the outcome event time occurs after the interaction event time ends.</u><u style="Single">(Item 7)</u><u style="Single"> reading data for the historical contact interaction from a first data source by the at least one computer processor;</u><u style="Single"> reading, by the at least one computer processor, data for the historical contact interaction outcome from a second data source different from the first data source;</u><u style="Single"> The method described in item 1, further comprising:</u><u style="Single">(Item 8)</u><u style="Single"> discovering, by the at least one computer processor, a clock synchronization problem between the first data source and the second data source;</u><u style="Single"> automatically correcting for the clock synchronization problem by the at least one computer processor;</u><u style="Single"> The method described in item 7, further comprising:</u><u style="Single">(Item 9)</u><u style="Single"> contact-agent pairing based on the matching of the historical contact interactions and the historical contact interaction outcomes to optimize contact-agent pairings in the contact center system by the at least one computer processor; The method of item 1, further comprising generating a model.</u><u style="Single">(Item 10)</u><u style="Single"> The method of item 1, further comprising conservatively constraining the analysis by the at least one computer processor, wherein the conservatively constraining results in a higher matching rate and less accurate matching.</u><u style="Single">(Item 11)</u><u style="Single"> 2. The method of item 1, further comprising overconstraining the analysis by the at least one computer processor, wherein overconstraining results in a lower matching rate and more accurate matching.</u><u style="Single">(Item 12)</u><u style="Single"> 2. The method of item 1, further comprising determining, by the at least one computer processor, a probability that the matching of the historical contact interaction and the historical contact interaction outcome is accurate.</u><u style="Single">(Item 13)</u><u style="Single"> The method of item 1, further comprising determining, by the at least one computer processor, a probability that a plurality of matched historical contact interactions and contact interaction outcomes are accurate.</u><u style="Single">(Item 14)</u><u style="Single"> A system for data matching in a contact center system, the system comprising at least one computer processor communicatively coupled to the contact center system and configured to operate therein; one computer processor is</u><u style="Single"> determining an interaction event time associated with a historical contact interaction;</u><u style="Single"> determining an outcome event time associated with a historical contact interaction outcome;</u><u style="Single"> analyzing the interaction event time and the outcome event time to determine a correlation;</u><u style="Single"> matching the historical contact interaction with the historical contact interaction outcome based on the correlation; and</u><u style="Single"> The system is further configured to:</u><u style="Single">(Item 15)</u><u style="Single"> 15. The system of item 14, wherein the interaction event time is a time window.</u><u style="Single">(Item 16)</u><u style="Single"> 15. The system of item 14, wherein the outcome event time is a timestamp.</u><u style="Single">(Item 17)</u><u style="Single"> 15. The system of item 14, wherein the at least one computer processor is further configured to extend the interaction event time to a longer event duration prior to analyzing the interaction event time.</u><u style="Single">(Item 18)</u><u style="Single"> 15. The system of item 14, wherein the outcome event time is outside the interaction event time.</u><u style="Single">(Item 19)</u><u style="Single"> 15. The system of item 14, wherein the outcome event time occurs after the interaction event time ends.</u><u style="Single">(Item 20)</u><u style="Single"> The at least one computer processor comprises:</u><u style="Single"> retrieving data for the historical contact interaction from a first data source;</u><u style="Single"> retrieving data for the historical contact interaction outcome from a second data source different from the first data source;</u><u style="Single"> The system described in item 14, further configured to:</u><u style="Single">(Item 21)</u><u style="Single"> The at least one computer processor comprises:</u><u style="Single"> discovering a clock synchronization problem between the first data source and the second data source;</u><u style="Single"> automatically correcting the clock synchronization problem;</u><u style="Single"> The system described in item 20, further configured to perform.</u><u style="Single">(Item 22)</u><u style="Single"> The at least one computer processor generates contact-agent pairings based on the matching of the historical contact interactions and the historical contact interaction outcomes to optimize contact-agent pairings in the contact center system. The system of item 14, further configured to generate a model.</u><u style="Single">(Item 23)</u><u style="Single"> 15. The system of item 14, wherein the at least one computer processor is further configured to conservatively constrain the analysis, and wherein the conservatively constraining results in a higher matching rate and less accurate matching.</u><u style="Single">(Item 24)</u><u style="Single"> 15. The system of item 14, wherein the at least one computer processor is further configured to over-constrain the analysis, wherein over-constraining results in a lower matching rate and more accurate matching.</u><u style="Single">(Item 25)</u><u style="Single"> 15. The system of item 14, wherein the at least one computer processor is further configured to determine a probability that the matching of the historical contact interaction and the historical contact interaction outcome is accurate.</u><u style="Single">(Item 26)</u><u style="Single"> 15. The system of item 14, wherein the at least one computer processor is further configured to determine a probability that a plurality of matched historical contact interactions and contact interaction outcomes are accurate.</u><u style="Single">(Item 27)</u><u style="Single"> A manufactured product for data matching in a contact center system, the manufactured product comprising:</u><u style="Single"> a non-transitory processor-readable medium;</u><u style="Single"> instructions stored on said medium;</u><u style="Single"> Equipped with</u><u style="Single"> The instructions are configured to be readable from the medium by at least one computer processor communicatively coupled to and configured to operate therein, such that the instructions are readable from the medium. ,</u><u style="Single"> determining an interaction event time associated with a historical contact interaction;</u><u style="Single"> determining an outcome event time associated with a historical contact interaction outcome;</u><u style="Single"> analyzing the interaction event time and the outcome event time to determine a correlation;</u><u style="Single"> matching the historical contact interaction with the historical contact interaction based on the correlation;</u><u style="Single"> An article of manufacture, causing said at least one computer processor to operate.</u><u style="Single">(Item 28)</u><u style="Single"> 28. The article of manufacture of item 27, wherein the at least one computer processor is further operated to extend the interaction event time to a longer event duration prior to analyzing the interaction event time.</u><u style="Single">(Item 29)</u><u style="Single"> 28. The article of manufacture of item 27, wherein the outcome event time occurs after the interaction event time ends.</u></p><p>To facilitate a more complete understanding of the present disclosure, reference is now made to the accompanying drawings, in which like elements are referred to using like numerals. These drawings are not to be construed as limiting the disclosure, but are intended to be illustrative only.</p>
<figref num="1">FIG. 1 shows a block diagram of a contact center system, according to an embodiment of the present disclosure.</figref><figref num="2">FIG. 2 shows a block diagram of a contact center system, according to an embodiment of the present disclosure.</figref><figref num="3">FIG. 3 shows a flow diagram of the contact center system data matching method.</figref>
A typical contact center algorithmically assigns contacts arriving at the contact center to available agents to handle those contacts. At times, a contact center may have agents available and waiting to be assigned to inbound or outbound contacts (eg, calls, Internet chat sessions, emails). At other times, contact centers may make contacts wait in one or more queues until an agent is available for assignment.
In some typical contact centers, contacts are assigned to agents ordered based on arrival time, and agents receive contacts ordered based on time when those agents become available. do. This strategy may be referred to as a "first in, first out", "FIFO", or "round robin" strategy. In other typical contact centers, other strategies may also be used, such as "performance-based routing" or "PBR" strategies.
In other more advanced contact centers, contacts are paired with agents using a "behavioral pairing" or "BP" strategy, under which contacts and agents are paired with subsequent contact-agent pair assignments. may be intentionally (preferentially) paired in a manner that allows for FIFO and performance-based routing (" can outperform other strategies such as PBR (PBR) strategy. BP is designed to encourage balanced utilization of agents in the skill queue, yet at the same time increases overall contact center performance beyond what FIFO or PBR methods would allow. Improve. This is great because BP acts on the same calls and the same agents as FIFO or PBR methods, utilizing agents almost as uniformly as FIFO provides, further improving overall contact center performance. It is a result. BPs are described, for example, in US Pat. No. 9,300,802, incorporated herein by reference. Additional information about these and other features of pairing or matching modules (sometimes referred to as "SATMAPs," "routing systems," "routing engines," etc.) can be found, for example, in U.S. Patent No. 8,879,715 (see (herein incorporated by reference).
A BP strategy may use the results of interactions between contacts and agents to build a pairing model and iteratively refine it. However, in some typical contact centers, performance records may be stored separately and in an unstructured/unrelated manner to the information stored about contact assignments to agents.
In light of the foregoing, contact interaction data and contact interaction outcome data are used to improve the efficiency and performance of pairing strategies designed to choose between multiple possible pairings, such as BP strategies. It should be appreciated that there may be a need for a system that improves the accuracy of data matching.
FIG. 1 shows a block diagram of a contact center system 100, according to an embodiment of the present disclosure. The description herein describes network elements, computers, and/or components of systems and methods for simulating contact center systems that may include one or more modules. As used herein, the term "module" may be understood to refer to computing software, firmware, hardware, and/or various combinations thereof. However, a module should not be construed as software that is not implemented on hardware, firmware, or recorded on a processor-readable recordable storage medium (i.e., a module is not itself software. do not have). Note that the modules are exemplary. Modules may be combined, integrated, separated, and/or duplicated to support various applications. Functionality described herein as being performed in a particular module may be performed in one or more other modules, and/or in place of, or in addition to, the functionality performed in the particular module. It may also be implemented by one or more other devices. Additionally, modules may be implemented across multiple devices and/or other components local or remote from each other. Additionally, modules may be moved from one device, added to another, and/or included within both devices.
As shown in FIG. 1, contact center system 100 may include a central switch 110. Central switch 110 may receive incoming contacts (eg, callers) or support outbound connections to contacts via a telecommunications network (not shown). The central switch 110 includes contact routing hardware and software (such as other Internet contact-agent hardware or software-based contact center solutions).
Central switch 110 may not be necessary in contact center system 100, such as when there is only one contact center or only one PBX/ACD routing component. If more than one contact center is part of contact center system 100, each contact center may include at least one contact center switch (eg, contact center switches 120A and 120B). Contact center switches 120A and 120B may be communicatively coupled to central switch 110. In embodiments, various topologies of routing and network components may be configured to implement a contact center system.
Each contact center switch for each contact center may be communicatively coupled to multiple (or "collective") agents. Each contact center switch may support a certain number of agents (or "seats") logged in at one time. At any given time, a logged in agent may be available and waiting to be connected to a contact, or a logged in agent may be connected to another contact and receive information about the call. may be unavailable for any of several reasons, such as performing some post-call function, such as recording a call, or being on a break.
In the example of FIG. 1, central switch 110 routes contacts to each one of two contact centers via contact center switch 120A and contact center switch 120B. Each of contact center switches 120A and 120B are shown with two agents each. Agents 130A and 130B may log into contact center switch 120A, and agents 130C and 130D may log into contact center switch 120B.
Contact center system 100 may also be communicatively coupled to an integration service from a third party vendor, for example. In the example of FIG. 1, data matching module 140 may be communicatively coupled to one or more switches in a switch system of contact center system 100, such as central switch 110, contact center switch 120A, or contact center switch 120B. In some embodiments, a switch in contact center system 100 may be communicatively coupled to multiple data matching modules. In some embodiments, data matching module 140 may be embedded within a component of a contact center system (eg, embedded within or otherwise integrated with a switch, ie, a "BP switch"). Data matching module 140 may receive information about agents (e.g., agents 130A and 130B) logged into the switch from a switch (e.g., contact center switch 120A) via another switch (e.g., central switch 110). , or in some embodiments, may receive information about contacts arriving from a network (eg, the Internet or a telecommunications network) (not shown).
A contact center may include multiple pairing modules (eg, BP module and FIFO module) (not shown), and one or more pairing modules may be provided by one or more different vendors. In some embodiments, one or more pairing modules may be data matching module 140 or a component of one or more switches, such as central switch 110 or contact center switches 120A and 120B. In some embodiments, the BP module may determine which pairing module may handle pairing for a particular contact. For example, the BP module may alternate between enabling pairing through the BP module and enabling pairing with the FIFO module. In other embodiments, one pairing module (eg, BP module) may be configured to emulate other pairing strategies. For example, whether a BP module or a BP component integrated with a BP component within a BP module determines whether the BP module may use BP pairing for a particular contact or may use emulated FIFO pairing. can be determined. In this case, "BP on" may refer to the time when the BP module is applying a BP pairing strategy, and "BP off" may refer to the time when the BP module is applying a different pairing strategy (e.g., FIFO). It can refer to other times.
In some embodiments, whether the pairing strategies are addressed by separate modules or if several pairing strategies are emulated within a single pairing module, a single A pairing module may be configured to monitor and store information about pairings that occur under any or all pairing strategies. For example, the BP module may observe and record data about FIFO pairings made by a FIFO module, or the BP module may observe and record data about FIFO pairings made by a FIFO module, or the BP module may observe and record data about FIFO pairings made by a BP module operating in FIFO emulation mode. can observe and record data about
FIG. 2 shows a block diagram of a contact center system 200, according to an embodiment of the present disclosure. Contact center system 200 may be the same contact center system as contact center system 100 (FIG. 1), with additional modules and storage databases illustrating examples of where data may be transferred and stored throughout the contact center system. have
In the example contact center system 200, four example storage systems are shown: a historical assignment database 210, a contact center database 220, a customer relationship management ("CRM") database 230, and a performance records database 240. In some embodiments, several types of data stored within these databases may be stored within the same or different databases. Some databases may not exist, and other databases not shown may exist. In some embodiments, the database may be communicatively coupled to the contact center system from a remote (eg, cloud-based) data center via a network connection. In other embodiments, the database may be co-configured with certain contact center equipment within the facility. Various databases are shown communicatively coupled to various contact center system components. For example, contact center switch 120A is shown communicatively coupled to the four aforementioned databases. In some embodiments, contact center switch 120A or other contact center system components may be communicatively coupled to more or fewer databases.
Consider contacts waiting for assignment at contact center switch 120A. Once a contact is paired (ie, assigned) and connected to an agent, such as agent 130A, certain information regarding the assignment may be stored within contact center system 200. For example, records of assignments may be stored in historical assignment database 210 and/or contact center database 220. The records include an identifier for the contact (e.g., phone number, customer identifier, email address), an identifier for the agent (e.g., agent ID, agent name), and the date and time when the assignment was made. It may include a timestamp and other information related to the assignment. In some embodiments, records may include contact center information such as interactive voice response ("IVR") or touch-tone telephone menu selections that the contact may have made prior to being assigned to agent 130A in the instance of the call. May contain additional information regarding the contact's journey through the system.
In some embodiments, the historical allocation database 210 determines which of several pairing strategies (e.g., BP or FIFO) will be used to make the allocation if, for example, a service level agreement is exceeded for a contact. It may also be tracked whether the assignment was an optimized choice or a constrained choice. In some embodiments, one or more databases, such as historical assignment database 210, may be provided by a third party vendor, such as a BP vendor.
When a contact disconnects from the contact center system (eg, hangs up), contact center switch 120A may record additional information in historical assignment database 210 and/or contact center database 220. For example, contact center switch 120A may be configured to store disconnect times or interaction durations in one of the databases.
In the example contact center system 200, the contact center switch 120A and/or the agents 130A are communicatively connected or otherwise connected to an agent desktop system 250. In some embodiments, agent desktop system 250 is a computer processor-implemented system for managing various agent tasks. For example, when agent 130A logs into contact center system 200, agent desktop system 250 may cause agent 230A to participate in a contact interaction (or, in some embodiments, multiple simultaneous interactions, such as a chat-based interaction). When agent 130A is busy, when agent 130A is free or otherwise available for another contact interaction, and when agent 130A is unavailable (e.g., taking a break, agent 130A may be able to indicate that the agent 130A is offline).
In some embodiments, agent desktop system 250 may display information about the contact or contact interaction to agent 130A during the interaction. For example, agent desktop system 250 may display information from CRM database 230 about the customer relationship of agent 130A's contact with a company, or agent desktop system 250 may display information from contact center database 220 about the customer relationship of a contact with a company in contact center system 200. Information about previous interactions with the user may be displayed.
In some embodiments, during and/or after an interaction, agent 130A may use agent desktop system 250 to enter information regarding the outcome of the interaction. For example, agent 130A may enter notes into agent desktop system 250 that may be stored in contact center database 220 for reference during future interactions. In a sales queue environment, agent 130A may enter sales transaction details. Data regarding sales transactions may be stored in performance records database 240 and/or CRM database 230, for example. In some situations, data regarding sales may be transferred to a fulfillment center or fulfillment system. In a customer support queue environment, agent 130A schedules a refund or preferential credit, an upgrade or downgrade in service, a cancellation of service, or a "track roll" of a contact's support request or which field agent should attend to it. A contact's record in one of the databases may be updated to reflect the resolution of the call, such as a request to a distribution center system for a call.
In any of these cases, agent desktop system 250 records timestamps associated with changes to performance records in performance record database 240 or other records in CRM database 230 or other databases. It is possible. In some scenarios, timestamps associated with an agent completing an outcome record, such as a sales transaction, may be during a contact interaction. In other scenarios, the timestamp associated with the agent completing the outcome record may be after the contact interaction is completed.
For example, consider a contact that arrives at contact center switch 120A at 10:00AM. The BP pairing module commanded contact center switch 120A to pair the contact with available agent 130A for assignment to the contact. Contact center switch 120A connected the contact to agent 130A at 10:02AM and the interaction began. During the interaction, the contact decided to purchase a new cell phone. Agent 130A recorded the transaction using agent desktop system 250 and completed the transaction at 10:10AM. Agent 130A then disconnected the call at 10:12AM. After hanging up the call, agent 130A entered some additional notes into agent desktop system 250.
Pairings of contacts to agent 130A by BP strategy may also be recorded in historical assignment database 210. Dates, start and end times, and/or durations of contact interaction events may be recorded in contact center database 220, for example. Not only the fact that a sale was completed, but also the type and amount of the sale, the date and time of the sale, and the identifier of the agent who completed the contact and sale may be recorded in the performance records database 240. Information about the contact, such as the type of newly purchased cell phone, may also be recorded in the CRM database 230. Hundreds or thousands of similar contact interactions may be recorded over the course of an hour or day in a realistic contact center system with dozens or hundreds (or more) of agents.
In the example contact center system 200, the data matching module 140 is communicatively coupled to each of a historical assignment database 210, a contact center database 220, a CRM database 230, and a performance records database 240. In some embodiments, the BP module generates new pairing models, updates existing pairing models with new data, or compares the performance of a BP strategy against the performance of another strategy, such as FIFO or PBR. You may need to benchmark your data. In these embodiments, data matching module 140 may read and match data from at least two disparate or unstructured data sources. In some embodiments, each database may include structured data; however, the data may be unstructured or otherwise related to data in another database or other storage location. It may not be connected or connected. Moreover, in some environments, databases stored on one system may be in different time zones or otherwise may not be time-synchronized with another database stored on another system. .
Data matching module 140 may use various techniques to map or match events recorded in one database to corresponding events recorded in another database. For example, in a call center domain (assuming one caller per agent at a given time), call start and end times, identifiers about the agent at the time of the call, are passed across all databases to establish a call event. obtain. Additionally, at times, a call event may extend beyond the recorded termination/disconnect time, for example, when an agent takes time to complete a transaction or other record update process after disconnecting from a call. The various heuristics or other techniques used by data matching module 140 may vary from process or context to process and across different contact center systems.
For example, some data matching heuristics add 2 minutes (or more or less) to the end time of a call event to account for the time it takes for an agent to enter results into the system after the call ends. can be added. If agent 130A records a sale at 9:30AM, it may be correct to match this outcome with a call that ended at 9:29AM.
For another example, a data matching heuristic may refuse to match sales performance records that occur earlier than the recorded call start time. If agent 130A records a sale at 11:18AM, this should not be matched with a call that did not start until 11:19AM.
In some cases, there may be multiple candidate performance records for a given call event, or vice versa. In these cases, data matching module 140 may determine the probability that a given pair of candidate outcome and interaction event is a correct match. Data matching module 140 may select the pair with the highest probability of accuracy. In some environments, it may be possible for multiple outcomes to be associated with one or more interactions. In these environments, data matching module 140 may implement a one-to-many or many-to-many mapping of outcomes and interactions.
For another example, the data matching heuristic may refuse to match sales performance records that occurred relatively early during the interaction. If the call was made between 11:19 and 11:31AM and the sale was recorded at 11:20AM, then the sale time occurred within the time window of the call. However, it may be unlikely that the sale occurred as quickly as one minute after the call was initiated, and that the call lasted only 11 minutes thereafter. This candidate match may be rejected outright or otherwise given a low probability of accuracy, and the search may continue for more likely matches. For example, another agent may be taking calls between 11:08 AM and 11:21 AM. The 11:20AM sales outcome likely occurred during this other call.
In other embodiments, data matching module 140 may assign certain probabilities to candidate outcomes and interaction events. Even if only one such pairing is found for a given interaction event, a match will be made with probability exceeding a predetermined threshold (e.g., there is a 50% chance that the match is correct, 90%, 99.99%).
In some embodiments, conservatively constraining the analysis by data matching module 140 may yield a higher matching rate and provide more but less accurate data. In other embodiments, overconstraining the analysis (ie, rejecting more matches) may yield a lower matching rate and provide less but more accurate data. For a given degree of constraint and a given mapping resulting from a given constraint, data matching module 140 determines a measure of matching rate and/or a measure of accuracy of the matched data. obtain.
In some embodiments, some of the databases communicatively coupled to contact center system 200 may have inaccurate or incomplete records. Data matching module 140 may be trained to identify and flag potential data problems. For example, an experienced agent is unlikely to have zero sales volume. If the performance record database suggests that an agent has zero sales volume, it is more likely that an error occurred in recording the agent's identity than that the agent failed to make a sale during the agent's shift with a 0% conversion rate. It is highly likely that it existed. Data matching module 140 may flag the issue so that contact center system 200 may analyze the issue or may raise the issue to a contact center system administrator for resolution.
For another example, the number of calls from the first call to the last call of a shift, as recorded in a contact center database or historical assignment database, is the number of sales from the first sale to the last sale, such as recorded in a performance records database. If the number of sales does not closely match the number of sales, there may be a problem with the way the data was recorded. An error occurred in recording sales to the performance record database when the performance record database indicates that the contact center did not make any sales during the last two hours of the shift, despite normal call volume. Probability is high. Again, this type of data inconsistency may be detected and reported by data matching module 140.
For another example, data matching module 140 may detect that an agent appears to have completed a sale outside of the time window for the agent's shift. If the agent's shift ended at 3:00PM, but the performance record database indicates that the agent completed the sale at 5:37PM, data matching module 140 may flag and report this inconsistency. .
FIG. 3 shows a flow diagram of a data matching method 300, according to an embodiment of the present disclosure. Data matching method 300 may begin at block 310.
At block 310, interaction event times associated with historical contact interactions may be determined. For example, a data matching module, such as data matching module 140 (FIGS. 1 and 2), may retrieve sets of records from various databases, such as historical assignment database 210 (FIG. 2), and/or contact center database 220 (FIG. 2). Can be read. The data matching module may determine the event time of the interaction. If the interaction was a phone call, the event time may be a combination of the call start date and time and the call end date and time. Upon determining the interaction event time associated with the historical contact interaction (or historical contact interactions), the data matching method 300 may proceed to block 320.
At block 320, an outcome event time associated with a historical contact interaction outcome may be determined. For example, the data matching module may read sets of records from various databases, such as CRM database 230 (FIG. 2) and/or performance records database 240 (FIG. 2). The data matching module may determine the outcome (or "result") time of the interaction outcome. If the interaction was a call in a sales queue, the interaction outcome event time may be the time the sales transaction was completed. Depending on the circumstances, the sales transaction may be completed, for example, during the call (eg, prior to, but close to, the end time of the call), or it may be completed immediately after the end time of the call. Upon determining the outcome event time associated with the historical contact interaction outcome/outcome (or historical contact interaction outcomes), the data matching method 300 may proceed to block 330. In some embodiments, block 320 may be performed before block 310 or in parallel with block 310.
At block 330, the one or more interaction event times determined at block 310 are analyzed in conjunction with the one or more outcome event times determined at block 320 to form pairs of interaction event times and outcome event times. The correlation between can be determined. In some circumstances, additional data fields may be used to eliminate certain candidate pairs or to increase the probability/likelihood that a candidate pair is a correct match. For example, if agent identifiers are stored in both the interaction database and the outcome database, the agent identifier field may be used to eliminate pairs of agent identifiers that do not match. The data matching module may apply various heuristics and other statistical analysis or machine learning techniques to the data set to determine correlations for candidate pairs, such as those described above with reference to FIG. 2. Upon determining one or more correlations for one or more candidate pairs of interaction event times and outcome event times, data matching method 300 may proceed to block 340.
At block 340, one or more candidate pairs may be considered a correct match (eg, if the correlation or accuracy probability exceeds a predetermined likelihood threshold). Historical contact interaction outcomes may be matched with historical contact interactions. The matched pairs of interactions and interaction outcomes are processed (or stored for later processing) by a data matching module or another module (such as a BP module or a benchmarking module) to create a pairing model. or may improve or assess the performance of one pairing strategy relative to another. Once one or more pairs of historical contact interaction outcomes and historical contact interactions are matched, the data matching method 300 may end. In some embodiments, data matching method 300 may return to block 310 for further processing of new or otherwise additional interaction and outcome events.
It should be noted at this point that data matching in a contact center system according to the present disclosure as described above may involve processing input data and generating output data to some extent. This input data processing and output data generation may be implemented in hardware or software. For example, certain electronic components may be employed in a behavioral pairing module or similar or related circuitry to implement functionality associated with data matching in a contact center system according to the present disclosure as described above. Alternatively, one or more processors operating according to instructions may implement functionality associated with data matching in a contact center system in accordance with the present disclosure as described above. In such case, such instructions may be stored on one or more non-transitory processor-readable storage media (e.g., magnetic disks or other storage media) or transmitted on one or more carrier waves. It is also within the scope of this disclosure that the signals may be transmitted to one or more processors via one or more embodied signals.
This disclosure should not be limited in scope by the specific embodiments described herein. Indeed, various other embodiments and modifications of the disclosure, in addition to those described herein, will be apparent to those skilled in the art from the foregoing description and accompanying drawings. Accordingly, such other embodiments and modifications are intended to fall within the scope of this disclosure. Further, while the present disclosure has been described herein in the context of at least one particular implementation in at least one particular environment for at least one particular purpose, those skilled in the art will appreciate that its utility lies in Without limitation, it will be appreciated that the present disclosure may be beneficially implemented in any number of environments for any number of purposes. Therefore, the claims set forth below should be construed in light of the full scope and spirit of the disclosure as described herein.
3 sheets
Sheet 1 Sheet 2 Sheet 3
Every citation, both ways
| Document | Relation | Office |
|---|---|---|
| JP2011511536A | Cites | Japan |
| US20100142698A1 | Cites | United States of America |
| JP2003316944A | Cites | Japan |
| JP2009529729A | Cites | Japan |
28 members in 8 offices
Priority claims3
| Document | Office | Kind | Date |
|---|---|---|---|
| 15826093 | United States of America | – | |
| 201715826093 | United States of America | A | |
| 2018000900 | International Bureau of the World Intellectual Property Organization (WIPO) | W |
Members28
| Document | Office | Kind | |
|---|---|---|---|
| US2019166254A1 | United States of America | A1 | |
| EP3493127A1 | European Patent Office (EPO) | A1 | |
| CA3071224A1 | Canada | A1 | |
| WO2019106420A1 | World Intellectual Property Organization (WIPO) | A1 | |
| AU2018376951A1 | Australia | A1 | |
| CN110383310A | China | A | |
| KR20200085287A | Republic of Korea | A | |
| JP2021504984A | Japan | A | |
| US11399096B2 | United States of America | B2 | |
| US2022321702A1 | United States of America | A1 | |
| KR102477567B1 | Republic of Korea | B1 | |
| KR20230003594A | Republic of Korea | A | |
| JP2023105208A | Japan | A | |
| US11743388B2 | United States of America | B2 | |
| JP7346301B2This record | Japan | B2 | |
| JP7346764B2 | Japan | B2 | |
| KR102584377B1 | Republic of Korea | B1 | |
| US2023362303A1 | United States of America | A1 | |
| CN110383310B | China | B | |
| US12022029B2 | United States of America | B2 | |
| CN118278698A | China | A | |
| CN118278699A | China | A | |
| CN118474258A | China | A | |
| US2024305717A1 | United States of America | A1 | |
| AU2024220136A1 | Australia | A1 | |
| CN118278699B | China | B | |
| CN118278698B | China | B | |
| US12355919B2 | United States of America | B2 |
11 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| First payment of annual fees (during grant procedure)JAPANESE INTERMEDIATE CODE: A61A61 | A61 | |
| Certificate of patent or registration of utility modelJAPANESE INTERMEDIATE CODE: R150R150 | R150 | |
| Written decision to grant a patent or to grant a registration (utility model)JAPANESE INTERMEDIATE CODE: A01A01 | A01 | |
| Decision of grant or rejection writtenTRDD | TRDD | |
| Request for written amendment filedJAPANESE INTERMEDIATE CODE: A523A521 | A521 | |
| Notification of reasons for refusalJAPANESE INTERMEDIATE CODE: A131A131 | A131 | |
| Request for written amendment filedJAPANESE INTERMEDIATE CODE: A523A521 | A521 | |
| Notification of reasons for refusalJAPANESE INTERMEDIATE CODE: A131A131 | A131 | |
| Report on retrievalJAPANESE INTERMEDIATE CODE: A971007A977 | A977 | |
| Written request for application examinationJAPANESE INTERMEDIATE CODE: A621A621 | A621 | |
| Notification of change in applicantJAPANESE INTERMEDIATE CODE: A711A711 | A711 |
Numbers
- Publication
- 7346301
- Application
- 2019552945
Titles2
- Japanese
- コンタクトセンターシステムにおけるデータマッチングのための技法
- English
- Techniques for data matching in contact center systems
Classification
- CPC, 10
- G06Q10/06311
- H04M3/5232
- H04M3/5234
- G06F16/27
- G06Q10/06315
- G06F16/2365
- H04M2203/551
- H04M2203/556
- H04M2203/558
- G06Q30/01
- IPC, 1
- H04M3 523
