IP Library Granted Patent US 9,875,283
Granted Patent B2
US 9,875,283 · App. 15/057,171 · Granted Jan 23, 2018

Systems and methods for storing and searching data in a customer center environment

Inventor: Rajan Gupta (Alpharetta, GA)
Assignee: VERINT AMERICAS INC.
G06F17/30528G06F17/3033G06F17/30067G06F17/30091G06F17/30551G06F17/30554G06F17/30598G06F17/30616G06F17/30628G06F17/30654G06F17/30684G06F17/30696G06F17/30707Y10S707/99933Y10S707/99934Y10S707/99935
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,875,283
App. No.
15/057,171
Granted
Jan 23, 2018
Kind
B2
Abstract

A method includes generating data from workforce applications, at least one of the workforce applications including at least one of forecasting, scheduling, recording, and monitoring functionalities; and storing the data from the at least one of the workforce applications in a storage area network (SAN), the SAN being operable to connect the at least one of the workforce applications to computer storage devices. This may also include keeping recorded contacts in a long term storage device such as the SAN or an operational data store (ODS) and transparently searching in both the ODS and the SAN simultaneously. With a concept of moving data on to a file system SAN which is cheaper as compared to a database technology such as ODS, the method facilitates predictable performance from the ODS and easier manageability with constant cost from SAN.

Claims (30)

1. A method comprising:

receiving a query via a graphical user interface to search data generated by a plurality of different workforce applications of a customer contact center;

in response to the query, substantially concurrently searching both a structured database and an unstructured database for information in the data related to the query,

wherein substantially concurrently searching both the structured database and the unstructured database includes searching the structured database using categories available in the structured database and searching the unstructured database using an index of the unstructured database, wherein the structured database comprises a plurality of contacts sent and/or received by the customer contact center, wherein the categories comprise a customer center agent identifier associated with each of the plurality of contacts; and

storing results of the substantially concurrent search in a search result database and indexing the search results by a search index, wherein the search index is a hash table which evenly distributes a weighted hash value for each of the words that appear in the search results, the hash values being weighted and distributed based on the first letter found in each of the words of the search results, wherein the distribution of the weighted hash value for the each of the words is different from the distribution of words across the alphabet.

2. The method of claim 1 wherein the categories further comprise a date of each of the plurality of contacts.

3. The method of claim 2 wherein the categories further comprise a number of transfers of each of the plurality of contacts.

4. The method of claim 1 further comprising, prior to receiving the query, processing at least a portion of the data generated by the plurality of workforce applications to determine whether the portion of the data should be stored in either the structured database or the unstructured database, wherein the determination is made based on content of the portion.

5. The method of claim 1 further comprising, prior to receiving the query, processing at least a portion of the data generated by the plurality of workforce applications to determine whether the portion of the data should be stored in either only a one of the structured database or the unstructured database, or both the structured database and the unstructured database, wherein the determination is made based on content of the portion.

6. The method of claim 1 further comprising converting at least a portion of the results to a text format for storage in the search result database.

7. The method of claim 1 further comprising displaying the results according to a prioritization.

8. A non-transitory computer readable medium having instructions stored thereon that, when executed by a computer system, direct the computer system:

to receive a query via a graphical user interface to search data generated by a plurality of different workforce applications of a customer contact center;

in response to the query, to substantially concurrently search both a structured database and an unstructured database for information in the data related to the query, wherein the substantially concurrently search comprises searching the structured database using categories available in the structured database and searching the unstructured database using an index of the unstructured database, wherein the structured database includes a plurality of contacts sent and/or received by the customer contact center, wherein the categories comprise a customer center agent identifier associated with each of the plurality of contacts; and

to store results of the substantially concurrent search in a search result database and to index the search results by a search index, wherein the search index is a hash table which evenly distributes a weighted hash value for each of the words that appear in the search results, the hash values being weighted and distributed based on the first letter found in each of the words of the search results, wherein the distribution of the weighted hash value for the each of the words is different from the distribution of words across the alphabet.

9. The non-transitory computer readable medium of claim 8 , wherein the categories further comprise a date of each of the plurality of contacts.

10. The non-transitory computer readable medium of claim 9 , wherein the categories further comprise a number of transfers of each of the plurality of contacts.

11. The non-transitory computer readable medium of claim 8 , wherein the instructions further direct the computer system to, prior to receiving the query, process at least a portion of the data generated by the plurality of workforce applications to determine whether the portion of the data should be stored in either the structured database or the unstructured database, wherein the determination is made based on content of the portion.

12. The non-transitory computer readable medium of claim 8 , wherein the instructions further direct the computer system to, prior to receiving the query, process at least a portion of the data generated by the plurality of workforce applications to determine whether the portion of the data should be stored in either only a one of the structured database or the unstructured database, or both the structured database and the unstructured database, wherein the determination is made based on content of the portion.

13. The non-transitory computer readable medium of claim 8 , wherein the instructions further direct the computer system to convert at least a portion of the results to a text format for storage in the search result database.

14. The non-transitory computer readable medium of claim 8 , wherein the instructions further direct the computer system to display the results according to a prioritization.

15. A data storage system comprising:

a data source comprising a structured database and an unstructured database, wherein the structured database includes categories of a plurality of contacts sent and/or received by a contact center, wherein the categories comprise a customer center agent identifier associated with each of the plurality of contacts;

a search engine configured to receive a query via a graphical user interface to search data generated by a plurality of different workforce applications of a customer contact center; wherein the search engine is further configured to, in response to query;

search both a structured database and an unstructured database for information in the data related to the query, wherein the search engine substantially concurrently searches both the structured database and the unstructured database comprises by at least searching the structured database using the categories available in the structured database and searching the unstructured database using an index of the unstructured database; and store results of the substantially concurrent search in a search result database and index the search results by a search index, wherein the search index is a hash table which evenly distributes a weighted hash value for each of the words that appear in the search results, the hash values being weighted and distributed based on the first letter found in each of the words of the search results, wherein the distribution of the weighted hash value for the each of the words is different from the distribution of words across the alphabet.

16. The data storage system of claim 15 , wherein the categories further comprise a date of each of the plurality of contacts.

17. The data storage system of claim 15 , wherein the data source is configured to process, prior to receiving the query, at least a portion of the data generated by the plurality of workforce applications to determine whether the portion of the data should be stored in either the structured database or the unstructured database, wherein the determination is made based on content of the portion.

18. The data storage system of claim 15 , wherein the data source is configured to process, prior to receiving the query, at least a portion of the data generated by the plurality of workforce applications to determine whether the portion of the data should be stored in either only a one of the structured database or the unstructured database, or both the structured database and the unstructured database, wherein the determination is made based on content of the portion.

19. The data storage system of claim 15 , wherein the search engine is configured to convert at least a portion of the results to a text format for storage in the search result database.

20. The data storage system of claim 15 , wherein the search engine is configured to display the results according to a prioritization.

Assignments (5)
SECURITY INTEREST Recorded Dec 23, 2025
From: VERINT AMERICAS INC.
To: ALTER DOMUS (US) LLC, AS COLLATERAL AGENT
Reel/Frame 074034/0292 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (043293/0567) Recorded Nov 26, 2025
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: VERINT AMERICAS INC.
Reel/Frame 073796/0639 →
GRANT OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jul 21, 2017
From: VERINT AMERICAS INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 043293/0567 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 19, 2016
From: GUPTA, RAJAN
To: WITNESS SYSTEMS, INC.
Reel/Frame 038322/0570 →
CHANGE OF NAME Recorded Apr 19, 2016
From: WITNESS SYSTEMS, INC.
To: VERINT AMERICAS INC.
Reel/Frame 038465/0348 →
Continuity (4)
Continuation 13114620 · May 24, 2011
Continuation 11693857 · Mar 30, 2007
Provisional Application 60847872 · Sep 28, 2006
Related Publication 20160253393A1 · Sep 1, 2016