DETAILED ACTION
The following is a Final Office action. In response to Examiner’s communication of 5/29/2025, Applicant, on 12/01/2025, amended claims 1, 9, and 17. Claims 1, 3-9, and 11-21 are now pending and have been rejected as indicated below.
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Response to Amendment
Applicant’s amendments are acknowledged.
A revised 35 USC 101 rejection of claims 1, 3-9, and 11-21 in regard to abstract ideas has been applied in light of Applicant’s amendments and explanations.
New 35 USC 103 rejections of claims 1, 3-9, and 11-21 have been applied in light of Applicant’s amendments and explanations
Claim Rejections - 35 USC§ 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1, 3-9, and 11-21 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception (i.e., a law of nature, a natural phenomenon, or an abstract idea) without significantly more. Here, under considerations of the broadest reasonable interpretation of the claimed invention, Examiner finds that the Applicant invented a method and system for producing a score related to interaction between customers and agents. Examiner formulates an abstract idea analysis, following the framework described in the MPEP as follows:
Step 1: The claims are directed to a statutory category, namely a "method" (claims 1, 3-8, and 17- 21) and "system" (claims 9 and 11-16).
Step 2A - Prong 1: The claims are found to recite limitations that set forth the abstract idea(s), namely, regarding claim 1:
A method for automatic real-time monitoring of interactions, … the method comprising:
extracting, … a text representation of the interaction
for each of a plurality of time periods during the computer-based interaction: producing a score for each text component of a plurality of text components included in the time period received in real time, each text component in the text representation of the interaction;
…
producing, during the time period, at the end of the time period, based on the scores in the memory buffer, a score for the of time period …
producing a score history, comprising a plurality of the time period scores;
calculating, based on the score history, a real-time indication of the quality of the computer-based interaction
Dependent claims 3-8, 11-16, and 18-21 recite the same or similar abstract idea(s) as independent claims 1, 9, and 17 with merely a further narrowing of the abstract idea(s) to particular data characterization and/or additional data analyses performed as part of the abstract idea.
The limitations in claims 1, 3-9, and 11-21 above falling well-within the groupings of subject matter identified by the courts as being abstract concepts, specifically the claims are found to correspond to the category of:
"Certain methods of organizing human activity- fundamental economic principles or practices (including hedging, insurance, mitigating risk); commercial or legal interactions (including agreements in the form of contracts; legal obligations; advertising, marketing or sales activities or behaviors; business relations); managing personal behavior or relationships or interactions between people (including social activities, teaching, and following rules or instructions)" as the limitations identified above are directed to producing a score related to interaction between customers and agents and thus is a method of organizing human activity including at least commercial or business interactions or relations and/or a management of user personal behavior; and/or
"Mental processes - concepts performed in the human mind (including an observation, evaluation, judgement, opinion)" as the limitations identified above include mere data observations, evaluations, judgements, and/or opinions, e.g. including producing a score related to interaction between customers and agents, which is capable of being performed mentally and/or using pen and paper.
Step 2A - Prong 2: Claims 1, 3-9, and 11-21 are found to clearly be directed to the abstract idea identified above because the claims, as a whole, fail to integrate the claimed judicial exception into a practical application, specifically the claims recite the additional elements of:
"wherein the outputting of the calculated real-time indication comprises displaying an alert on a monitor of a computer device" (claims 1, 9, and 17), however the aforementioned elements directed to the receiving of user input/selection of data to view via a computer monitor and displaying corresponding data via the dashboard merely amount to generic GUI elements of a general purpose computer used to "apply" the abstract idea (MPEP 2106.05(f)) and/or is merely an attempt at limiting the abstract idea of producing a score related to interaction between customers and agents to a particular field of use/technological environment of a computer monitor (MPEP 2106.05(h)) and therefore the computer monitor display of data fails to integrate the abstract idea into a practical application;
" A method for automatic real-time monitoring of interactions, carried out by at least one computer processor, the method comprising at a server computer comprising a processor of the at least one computer processor… during the time period, storing the scores for the plurality of text components in a memory buffer; and clearing the memory buffer at the end of the time period … outputting the calculated real-time indication through a computer network” and “A system for automatic real-time monitoring of contact center interactions, the system comprising: a memory; and at least one processor configured to, at a server computer comprising a processor of the at least one computer processor… during the time period, storing the scores for the plurality of text components in a memory buffer; and clearing the memory buffer at the end of the time period … output the calculated real-time indication through a computer network” (claims 1, 9, and 17) however the aforementioned elements merely amount to generic components of a general purpose computer used to "apply" the abstract idea (MPEP 2106.0S(f)) and thus fails to integrate the recited abstract idea into a practical application, furthermore the high-level recitation of receiving data from a generic "computer processor" is at most an attempt to limit the abstract to a particular field of use (MPEP 2106.0S(h), e.g.: "For instance, a data gathering step that is limited to a particular data source (such as the Internet) or a particular type of data (such as power grid data or XML tags) could be considered to be both insignificant extra-solution activity and a field of use limitation. See, e.g., Ultramercial, 772 F.3d at 716, 112 USPQ2d at 1755 (limiting use of abstract idea to the Internet); Electric Power, 830 F.3d at 1354, 119 USPQ2d at 1742 (limiting application of abstract idea to power grid data); Intellectual Ventures I LLC v. Erie lndem. Co., 850 F.3d 1315, 1328-29, 121 USPQ2d 1928, 1939 (Fed. Cir. 2017) (limiting use of abstract idea to use with XML tags).") and/or merely insignificant extra-solution activity (MPE 2106.05(g)) and thus further fails to integrate the abstract idea into a practical application;
"extracting, from a real-time data stream of a computer-based interaction" (claims 1, 9, and 17) however the receiving of data from a source is merely insignificant extra-solution activity, e.g. data gathering, and/or merely an attempt at limiting the abstract idea to a particular field of use and thus fails to integrate the recited abstract idea into a practical application (e.g. MPEP 2106.0S(h): "Examiners should keep in mind that this consideration overlaps with other considerations, particularly insignificant extra-solution activity (see MPEP § 2106.05{g)). For instance, a data gathering step that is limited to a particular data source (such as the Internet) or a particular type of data (such as power grid data or XML tags) could be considered to be both insignificant extra-solution activity and a field of use limitation. See, e.g., Ultramercial, 772 F.3d at 716, 112 USPQ2d at 1755 (limiting use of abstract idea to the Internet); Electric Power, 830 F.3d at 1354, 119 USPQ2d at 1742 (limiting application of abstract idea to power grid data); Intellectual Ventures I LLC v. Erie lndem. Co., 850 F.3d 1315, 1328-29, 121 USPQ2d 1928, 1939 (Fed. Cir. 2017} (limiting use of abstract idea to use with XML tags).");
Step 2B: Claims 1, 3-9, and 11-21 do not include additional elements that are sufficient to amount to significantly more than the judicial exception because the additional elements as described above with respect to Step 2A Prong 2 merely amount to a general purpose computer that attempts to apply the abstract idea in a technological environment (MPEP 2106.0S(f)), including merely limiting the abstract idea to a particular field of use of a "computer processor" as explained above, and/or performs insignificant extra-solution activity, e.g. data gathering or output, (MPEP 2106.0S(g)), as identified above, which is further found under step 2B to be merely well-understood, routine, and conventional activities as evidenced by MPEP 2106.0S(d)(II) (describing conventional activities that include transmitting and receiving data over a network, electronic recordkeeping, storing and retrieving information from memory, electronically scanning or extracting data from a physical document, and a web browser's back and forward button functionality). Therefore, similarly the combination and arrangement of the above identified additional elements when analyzed under Step 2B also fails to necessitate a conclusion that the claims amount to significantly more than the abstract idea directed to producing a score related to interaction between customers and agents.
Claims 1, 3-9, and 11-21 are accordingly rejected under 35 USC§ 101 because the claimed invention is directed to a judicial exception (i.e., a law of nature, a natural phenomenon, or an abstract idea(s)) without significantly more.
Note: The analysis above applies to all statutory categories of invention. As such, the presentment of any claim otherwise styled as a machine or manufacture, for example, would be subject to the same analysis
For further authority and guidance, see:
MPEP § 2106
https://www.uspto.gov/patents/laws/examination-policy/subject-matter-eligibility
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102 of this title, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
The factual inquiries set forth in Graham v. John Deere Co., 383 U.S. 1, 148 USPQ 459 (1966), that are applied for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 1, 3-4, 6-9, 11-12, and 14-21 are rejected under 35 U.S.C. 103 as being unpatentable over U.S. Patent Application Publication Number 2023/0315998 to Sundaram et al. (hereafter referred to as Sundaram) in view of U.S. Patent Application Publication Number 2024/0320443 to Moturi et al. (hereafter referred to as Moturi) and in further view of U.S. Patent Application Publication Number 2003/0007611 to Morita et al. (hereafter referred to as Morita).
As per claim 1, Sundaram teaches:
A method for automatic real-time monitoring of interactions, carried out by at least one computer processor, the method comprising: (Paragraph Number [0012] teaches the computing device 100, for example, may be implemented via firmware (e.g., an application-specific integrated circuit), hardware, or a combination of software, firmware, and hardware. It will be appreciated that each of the servers, controllers, switches, gateways, engines, and/or modules in the following figures (which collectively may be referred to as servers or modules) may be implemented via one or more of the computing devices 100. As an example, the various servers may be a process running on one or more processors of one or more computing devices 100, which may be executing computer program instructions and interacting with other systems or modules in order to perform the various functionalities described herein. Unless otherwise specifically limited, the functionality described in relation to a plurality of computing devices may be integrated into a single computing device, or the various functionalities described in relation to a single computing device may be distributed across several computing devices. Further, in relation to any of the computing systems described herein, the various servers and computer devices may be located on computing devices 100 that are local (i.e., on-site) or remote (i.e., off-site or in a cloud computing environment), or some combination thereof).
at a server computer comprising a processor of the at least one computer processor (Paragraph Number [0002] teaches the present application describes a computer-implemented method related to mining topics discussed in conversations. The method may include: receiving, by a processor, conversation data that includes text derived from the conversations that occurred between a customer and agent; and using, by the processor, a topic mining algorithm to automatically mine topics from the conversations of the conversation data. Paragraph Number [0045] teaches the various components, modules, and/or servers of FIG. 2—as well as those of the other figures included herein—may each include one or more processors executing computer program instructions and interacting with other system components for performing the various functionalities described herein).
extracting, from a real-time data stream of a computer-based interaction, a text representation of the interaction (Paragraph Number [0045] teaches the terms “interaction” and “communication” are used interchangeably, and generally refer to any real-time and non-real-time interaction that uses any communication channel of the contact center. Access to and control of the components of the contact system 200 may be affected through user interfaces (UIs) that may be generated on the customer devices 205 and/or the agent devices 230. Paragraph Number [0052] teaches at an initial step 305, the topic mining workflow 300 includes importing conversation data (i.e., conversational text data) for use in the topic mining process. This may be done in several ways. For example, the conversational data may be imported via a text file (in a supported format like JSON) containing the conversations to be mined. The conversational data also may be imported from cloud storage or streamed in real-time. Paragraph Number [0055] teaches reporting functionality may provide the results of the analytics to a specified user. Additionally, the newly mined topics and associated utterances also may be used by the topic miner 259 to mine conversations occurring in real-time in the contact center. Paragraph Number [0083] teaches the mined topics and associated utterances may be conveniently exported into other applications for use thereby, including export into systems that used the mined output to build machine learning models for real-time identification of topics in conversation data).
producing a score, during the time period, for each text component ... received in real time, each text component in the text representation of the interaction (Paragraph Number [0059] teaches a graph-based ranking algorithm may then be used to obtain the relative importance of keywords in a conversation. As will be appreciated, such word graphs may be used to understand the co-occurrence relationship between the keywords of a conversation. As an example, a text rank algorithm (such as “TextRank”) may be used to obtain a relevance or importance score for each keyword in a conversation. This score also may be referred to as a “keyword importance score”. Keyphrases may be identified from the keywords. According to exemplary embodiments, keyphrases are defined as instances when the keywords appear consecutively. That is, keywords occurring consecutively in the conversation are identified as keyphrases. Consecutively occurring keywords may be concatenated together to obtain keyphrases. A relative importance for the keyphrases in the conversation may then be determined. In accordance with an exemplary embodiment, the text rank score of the keywords making up a keyphrase are summed to obtain an importance score. This score may be referred to as a “keyphrase importance score”. (Examiner asserts that based on the examples recited in claim 20 a communication over a communication channel constitutes a computer-based interaction. See also Paragraph Numbers [0052], [0055], and [0083]) (See Moturi Paragraph Number [0058] in regard to teaching time periods)).
wherein at least one of the produced scores is produced by a machine learning model based on frequency levels during utterance of the text component, during the time period (Paragraph Number [0049] teaches the mined topics can be used to visualize trends in conversation topics, for example, as part of a topic dashboard component of an operations dashboard in a contact center. Further, the mined topic can be used to train machine learning models to more effectively spot topics in historical and real-time conversations. Paragraph Number [0059] teaches a graph-based ranking algorithm may then be used to obtain the relative importance of keywords in a conversation. As will be appreciated, such word graphs may be used to understand the co-occurrence relationship between the keywords of a conversation. As an example, a text rank algorithm (such as “TextRank”) may be used to obtain a relevance or importance score for each keyword in a conversation. This score also may be referred to as a “keyword importance score”. Keyphrases may be identified from the keywords. According to exemplary embodiments, keyphrases are defined as instances when the keywords appear consecutively. That is, keywords occurring consecutively in the conversation are identified as keyphrases. Consecutively occurring keywords may be concatenated together to obtain keyphrases. A relative importance for the keyphrases in the conversation may then be determined. In accordance with an exemplary embodiment, the text rank score of the keywords making up a keyphrase are summed to obtain an importance score. This score may be referred to as a “keyphrase importance score”. Paragraph Number [0061] teaches the keyphrase importance score for a given candidate topic may be updated by averaging its value across multiple or all of the conversations. Pruning may be based on this updated value. Another cross-conversation factor is a frequency of occurrence. The frequency of occurrence is a metric that values a candidate topic based on the frequency that it appears in conversations of the conversation data. According to example embodiments, candidate topics determined to have a frequency of occurrence that is less than a predetermined threshold are ignored or pruned). (See Moturi Paragraph Number [0058] in regard to teaching time periods)).
during the time period, storing the scores for the plurality of text components in a memory buffer (Paragraph Number [0060] teaches the sum of text rank scores of “credit” and “card” would give an importance score for the “credit card” keyphrase. From each conversation, a predetermined number of keyphrases having the highest keyphrase importance score is then selected. For example, the top 5 keyphrases may be picked after sorting the keyphrases in descending order based on their keyphrase importance scores. As part of this process, the utterance (i.e., the words used in the turn in which the keyphrase is found) associated with each of the keyphrases is stored as metadata for later usage. This process is completed for each of the conversations. All the extracted keyphrases and associated metadata then may be stored in a database. (See Moturi Paragraph Number [0058] in regard to teaching time periods)).
producing, at the end of the time period, based on the scores in the memory buffer, a score for the of time period (Paragraph Number [0060] teaches consider a customer turn that includes “credit card for the month of April.” In this case, “credit”, “card”, “month” and “April” would be obtained as keywords, while “for”, “the”, and “of” would be marked as stopwords. Also, “credit card” would be obtained as a keyphrase since “credit” and “card” occur consecutively in the turn. The sum of text rank scores of “credit” and “card” would give an importance score for the “credit card” keyphrase. From each conversation, a predetermined number of keyphrases having the highest keyphrase importance score is then selected. For example, the top 5 keyphrases may be picked after sorting the keyphrases in descending order based on their keyphrase importance scores. As part of this process, the utterance (i.e., the words used in the turn in which the keyphrase is found) associated with each of the keyphrases is stored as metadata for later usage. This process is completed for each of the conversations. All the extracted keyphrases and associated metadata then may be stored in a database. (See also Paragraph Numbers [0052], [0055], and [0083])).
producing a score history, comprising a plurality of the time period scores (Paragraph Number [0036] teaches in regard to the universal contact server (UCS) 246, it may be configured to retrieve information stored in the customer database 222 and/or transmit information thereto for storage therein. For example, the UCS 246 may be utilized as part of the chat feature to facilitate maintaining a history on how chats with a particular customer were handled, which then may be used as a reference for how future chats should be handled. More generally, the UCS 246 may be configured to facilitate maintaining a history of customer preferences, such as preferred media channels and best times to contact. To do this, the UCS 246 may be configured to identify data pertinent to the interaction history for each customer such as, for example, data related to comments from agents, customer communication history, and the like. Each of these data types then may be stored in the customer database 222 or on other modules and retrieved as functionality described herein requires. Paragraph Number [0037] teaches in regard to the reporting server 248, it may be configured to generate reports from data compiled and aggregated by the statistics server 226 or other sources. Such reports may include near real-time reports or historical reports and concern the state of contact center resources and performance characteristics, such as, for example, average wait time, abandonment rate, agent occupancy).
calculating, based on the score history, a real-time indication of the quality of the computer-based interaction (Paragraph Number [0055] teaches the topic mining workflow 300 may include importing the mined topics and associated utterances into a downstream application for use thereby. For example, the mined topics may be uploaded into other modules within the topic manager 258, which then may use the topics associated utterances to provide analytics and other functionality related thereto. Reporting functionality may provide the results of the analytics to a specified user. Additionally, the newly mined topics and associated utterances also may be used by the topic miner 259 to mine conversations occurring in real-time in the contact center. Paragraph Number [0083] teaches efficient and unsupervised mining of topics and associated utterances from a large amount of natural language conversations. Conversations can be consumed by such a system as either a text file or from other storage platforms. Present systems and methods provide the ability to identify and group topics and associated utterances having similar semantic meaning. Further, privacy is protected by anonymizing utterances through PII masking. Further, the topic analytics that are provided provide insights into conversational data about customers. The present topic manager also allows users to efficiently review mined results and make changes thereto by selecting, renaming, regrouping, and/or discarding mined topics and associated utterances. Once complete, the mined topics and associated utterances may be conveniently exported into other applications for use thereby, including export into systems that used the mined output to build machine learning models for real-time identification of topics in conversation data. (Examiner asserts that based on the examples recited in claim 20 a communication over a communication channel constitutes a computer-based interaction. See also Paragraph Numbers [0052], [0055], and [0083])).
outputting the calculated real-time indication through a computer network (Paragraph Number [0016] teaches the computing device 100 may be any workstation, desktop computer, laptop or notebook computer, server machine, virtualized machine, mobile or smart phone, portable telecommunication device, or any other type of computing device, without limitation, capable of performing the functionality described herein. The computing device 100 may include a plurality of devices and resources connected by a network. As used herein, a network includes one or more computing devices, machines, clients, client nodes, client machines, client computers, endpoints, or endpoint nodes in communication with one or more other such devices. Paragraph Number [0055] teaches the topic mining workflow 300 may include importing the mined topics and associated utterances into a downstream application for use thereby. For example, the mined topics may be uploaded into other modules within the topic manager 258, which then may use the topics associated utterances to provide analytics and other functionality related thereto. Reporting functionality may provide the results of the analytics to a specified user. Additionally, the newly mined topics and associated utterances also may be used by the topic miner 259 to mine conversations occurring in real-time in the contact center Paragraph Number [0083] teaches the mined topics and associated utterances may be conveniently exported into other applications for use thereby, including export into systems that used the mined output to build machine learning models for real-time identification of topics in conversation data. (See also Paragraph Numbers [0033])).
wherein the outputting of the calculated real-time indication comprises displaying an alert on a monitor of a computer device (Paragraph Number [0048] teaches systems may be designed to notify agent supervisors when certain topics are spotted and inform in real-time as to necessary corrected actions to take. Paragraph Number [0050] teaches a topic manager module of the present invention, e.g., the topic manager 258 of FIG. 2, may provide several types of functionality, including topic mining, analytics related to mined topics, model training, and reporting features, which may be taken in response to the mined topics and analytics. Such functionality may be incorporated into the WEM server 243 or provided as a separate feature. In accordance with exemplary embodiments, as new topics are identified, the topic manager 258 may notify a user (such as a supervisor, manager, or other designated employee) and prompt the user to create or approve a new topic in the system).
Sundaram teaches producing a score related to interaction between customers and agents based on an overall length of time and duration of an interaction but does not explicitly teach determining individual time periods within a specific interaction as described by the following citations from Moturi:
for each of a plurality of time periods during the computer-based interaction: (Paragraph Number [0058] teaches based on determining sentiments associated with interactions, the system can generate timeseries of interactions. For example, timeseries 326 includes a series of data points, such as data points representing sentiment, that are plotted or indexed in order of time. For example, the system can determine sentiment for portions of textual representations of interactions, where each portion corresponds to a different time period within the interaction (e.g., within a continuous time period). As an illustrative example, the system separates a textual representation of the interaction into multiple portions all corresponding to time periods within a continuous time period, The system can determine, using artificial intelligence, sentiment associated with each portion of the textual representation, and generate the timeseries accordingly. By doing so, the system generates temporal information relating to sentiment through the course of an interaction, enabling evaluation of user sentiment dynamically over the course of an interaction).
of a plurality of text components included in the time period (Paragraph Number [0058] teaches based on determining sentiments associated with interactions, the system can generate timeseries of interactions. For example, timeseries 326 includes a series of data points, such as data points representing sentiment, that are plotted or indexed in order of time. For example, the system can determine sentiment for portions of textual representations of interactions, where each portion corresponds to a different time period within the interaction (e.g., within a continuous time period). As an illustrative example, the system separates a textual representation of the interaction into multiple portions all corresponding to time periods within a continuous time period, The system can determine, using artificial intelligence, sentiment associated with each portion of the textual representation, and generate the timeseries accordingly. By doing so, the system generates temporal information relating to sentiment through the course of an interaction, enabling evaluation of user sentiment dynamically over the course of an interaction).
Both Sundaram and Moturi are directed to reviewing interaction information between agents and clients. Sundaram discloses teaches producing a score related to interaction between customers and agents based on an overall length of time and duration of an interaction. Moturi improves upon Sundaram by disclosing determining individual time periods within a specific interaction. One of ordinary skill in the art would be motivated to further include determining individual time periods within a specific interaction, to efficiently subdivide the time period into relevant chucks and score each chunk to determine importance and semantics of the interaction. Accordingly, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the system and method of teaches producing a score related to interaction between customers and agents based on an overall length of time and duration of an interaction in Sundaram to further utilize determining individual time periods within a specific interaction as disclosed in Moturi, since the claimed invention is merely a combination of old elements, and in combination each element merely would have performed the same function as it did separately, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Sundaram teaches producing a score related to interaction between customers and agents based on an overall length of time and duration of an interaction but does not explicitly teach clearing the memory buffer as described by the following citations from Morita:
and clearing the memory buffer at the end of the time period (Paragraph Number [0011] teaches to the exchange are provided a reproduced voice buffer for temporarily storing the reproduced voice to be transmitted to the circuit switched network and buffer clearing means for clearing unnecessary voice from the reproduced voice buffer based on a clearing request transmitted from the voice storage apparatus for changing the reproduced voice. Paragraph Number [0085] teaches description will be given as to a sequential flow. That is, reproduction of the voice is started by commencing connection of the first telephone 101, the key operation by the first telephone 101 is detected/analyzed as DTMF and transmitted to the voice storage apparatus 103 as the key information by the exchange 102, the voice storage apparatus 103 transmits a buffer clearing request from the key information to the exchange 102 and the changed voice to the first telephone 101, the exchange 102 performs buffer clearing for the voice, and reproduction of the voice is terminated by completion of connection of the first telephone 101. Paragraph Number [0129] teaches description will be given as to a sequential flow. That is, voice reproduction is started by commencing connection of the first telephone 101; the exchange 102 detects the key operation by the first telephone 101 as the DTMF and transmits it to the voice storage apparatus 103 as the key information; the voice storage apparatus 103 transmits a buffer clearing request from the key information to the exchange 102; the exchange 102 clears the buffer for the voice and transmits the buffer clearing end to the voice storage apparatus 103; the voice storage apparatus 103 transmits the changed voice to the first telephone 101; and voice reproduction is stopped by end of connection of the first telephone 101).
Both the combination of Sundaram and Moturi and Morita are directed to reviewing interaction information between agents and clients. The combination of Sundaram and Moturi discloses producing a score related to interaction between customers and agents. Morita improves upon the combination of Sundaram and Moturi by disclosing clearing the memory buffer. One of ordinary skill in the art would be motivated to further include clearing the memory buffer, to efficiently remove unnecessary data and free up memory space for the next interaction. Accordingly, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the system and method of producing a score related to interaction between customers and agents in the combination of Sundaram and Moturi to further utilize clearing the memory buffer as disclosed in Morita, since the claimed invention is merely a combination of old elements, and in combination each element merely would have performed the same function as it did separately, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
As per claim 9, Sundaram teaches:
A system for automatic real-time monitoring of contact center interactions, the system comprising: a memory; and at least one processor configured to (Paragraph Number [0012] teaches The computing device 100, for example, may be implemented via firmware (e.g., an application-specific integrated circuit), hardware, or a combination of software, firmware, and hardware. It will be appreciated that each of the servers, controllers, switches, gateways, engines, and/or modules in the following figures (which collectively may be referred to as servers or modules) may be implemented via one or more of the computing devices 100. As an example, the various servers may be a process running on one or more processors of one or more computing devices 100, which may be executing computer program instructions and interacting with other systems or modules in order to perform the various functionalities described herein. Unless otherwise specifically limited, the functionality described in relation to a plurality of computing devices may be integrated into a single computing device, or the various functionalities described in relation to a single computing device may be distributed across several computing devices. Further, in relation to any of the computing systems described herein, the various servers and computer devices may be located on computing devices 100 that are local (i.e., on-site) or remote (i.e., off-site or in a cloud computing environment), or some combination thereof).
The remainder of the claim limitations are substantially similar to those found in claim 1 and are rejected for the same reasons put forth in regard to claim 1.
As per claim 17, Sundaram teaches:
A method for live monitoring of interactions, carried out by at least one processor, the method comprising: (Paragraph Number [0012] teaches the computing device 100, for example, may be implemented via firmware (e.g., an application-specific integrated circuit), hardware, or a combination of software, firmware, and hardware. It will be appreciated that each of the servers, controllers, switches, gateways, engines, and/or modules in the following figures (which collectively may be referred to as servers or modules) may be implemented via one or more of the computing devices 100. As an example, the various servers may be a process running on one or more processors of one or more computing devices 100, which may be executing computer program instructions and interacting with other systems or modules in order to perform the various functionalities described herein. Unless otherwise specifically limited, the functionality described in relation to a plurality of computing devices may be integrated into a single computing device, or the various functionalities described in relation to a single computing device may be distributed across several computing devices. Further, in relation to any of the computing systems described herein, the various servers and computer devices may be located on computing devices 100 that are local (i.e., on-site) or remote (i.e., off-site or in a cloud computing environment), or some combination thereof).
at a server computer comprising a processor of the at least one computer processor (Paragraph Number [0002] teaches the present application describes a computer-implemented method related to mining topics discussed in conversations. The method may include: receiving, by a processor, conversation data that includes text derived from the conversations that occurred between a customer and agent; and using, by the processor, a topic mining algorithm to automatically mine topics from the conversations of the conversation data. Paragraph Number [0045] teaches the various components, modules, and/or servers of FIG. 2—as well as those of the other figures included herein—may each include one or more processors executing computer program instructions and interacting with other system components for performing the various functionalities described herein).
generating, from a real-time data stream of a computer-based interaction, a text representation of the interaction; (Paragraph Number [0045] teaches the terms “interaction” and “communication” are used interchangeably, and generally refer to any real-time and non-real-time interaction that uses any communication channel of the contact center. Access to and control of the components of the contact system 200 may be affected through user interfaces (UIs) that may be generated on the customer devices 205 and/or the agent devices 230. Paragraph Number [0052] teaches at an initial step 305, the topic mining workflow 300 includes importing conversation data (i.e., conversational text data) for use in the topic mining process. This may be done in several ways. For example, the conversational data may be imported via a text file (in a supported format like JSON) containing the conversations to be mined. The conversational data also may be imported from cloud storage or streamed in real-time. Paragraph Number [0055] teaches reporting functionality may provide the results of the analytics to a specified user. Additionally, the newly mined topics and associated utterances also may be used by the topic miner 259 to mine conversations occurring in real-time in the contact center. Paragraph Number [0083] teaches the mined topics and associated utterances may be conveniently exported into other applications for use thereby, including export into systems that used the mined output to build machine learning models for real-time identification of topics in conversation data).
evaluating, during the time period, each of a plurality of text components ... received in real time, each text component in the text representation of the interaction to produce a score for each text component (Paragraph Number [0059] teaches a graph-based ranking algorithm may then be used to obtain the relative importance of keywords in a conversation. As will be appreciated, such word graphs may be used to understand the co-occurrence relationship between the keywords of a conversation. As an example, a text rank algorithm (such as “TextRank”) may be used to obtain a relevance or importance score for each keyword in a conversation. This score also may be referred to as a “keyword importance score”. Keyphrases may be identified from the keywords. According to exemplary embodiments, keyphrases are defined as instances when the keywords appear consecutively. That is, keywords occurring consecutively in the conversation are identified as keyphrases. Consecutively occurring keywords may be concatenated together to obtain keyphrases. A relative importance for the keyphrases in the conversation may then be determined. In accordance with an exemplary embodiment, the text rank score of the keywords making up a keyphrase are summed to obtain an importance score. This score may be referred to as a “keyphrase importance score”. Paragraph Number [0060] teaches consider a customer turn that includes “credit card for the month of April.” In this case, “credit”, “card”, “month” and “April” would be obtained as keywords, while “for”, “the”, and “of” would be marked as stopwords. Also, “credit card” would be obtained as a keyphrase since “credit” and “card” occur consecutively in the turn. The sum of text rank scores of “credit” and “card” would give an importance score for the “credit card” keyphrase. From each conversation, a predetermined number of keyphrases having the highest keyphrase importance score is then selected. For example, the top 5 keyphrases may be picked after sorting the keyphrases in descending order based on their keyphrase importance scores. As part of this process, the utterance (i.e., the words used in the turn in which the keyphrase is found) associated with each of the keyphrases is stored as metadata for later usage. This process is completed for each of the conversations. All the extracted keyphrases and associated metadata then may be stored in a database. The extracted keyphrases may be referred to at this stage in the process as “candidate topics”. (Examiner asserts that based on the examples recited in claim 20 a communication over a communication channel constitutes a computer-based interaction. See also Paragraph Numbers [0052], [0055], and [0083]) (See Moturi Paragraph Number [0058] in regard to teaching time periods)).
wherein at least one of the produced scores is produced by a machine learning model based on frequency levels during utterance of the text component (Paragraph Number [0049] teaches the mined topics can be used to visualize trends in conversation topics, for example, as part of a topic dashboard component of an operations dashboard in a contact center. Further, the mined topic can be used to train machine learning models to more effectively spot topics in historical and real-time conversations. Paragraph Number [0059] teaches a graph-based ranking algorithm may then be used to obtain the relative importance of keywords in a conversation. As will be appreciated, such word graphs may be used to understand the co-occurrence relationship between the keywords of a conversation. As an example, a text rank algorithm (such as “TextRank”) may be used to obtain a relevance or importance score for each keyword in a conversation. This score also may be referred to as a “keyword importance score”. Keyphrases may be identified from the keywords. According to exemplary embodiments, keyphrases are defined as instances when the keywords appear consecutively. That is, keywords occurring consecutively in the conversation are identified as keyphrases. Consecutively occurring keywords may be concatenated together to obtain keyphrases. A relative importance for the keyphrases in the conversation may then be determined. In accordance with an exemplary embodiment, the text rank score of the keywords making up a keyphrase are summed to obtain an importance score. This score may be referred to as a “keyphrase importance score”. Paragraph Number [0061] teaches the keyphrase importance score for a given candidate topic may be updated by averaging its value across multiple or all of the conversations. Pruning may be based on this updated value. Another cross-conversation factor is a frequency of occurrence. The frequency of occurrence is a metric that values a candidate topic based on the frequency that it appears in conversations of the conversation data. According to example embodiments, candidate topics determined to have a frequency of occurrence that is less than a predetermined threshold are ignored or pruned). (See Moturi Paragraph Number [0058] in regard to teaching time periods)).
storing the scores for the plurality of text components in a memory buffer (Paragraph Number [0060] teaches the sum of text rank scores of “credit” and “card” would give an importance score for the “credit card” keyphrase. From each conversation, a predetermined number of keyphrases having the highest keyphrase importance score is then selected. For example, the top 5 keyphrases may be picked after sorting the keyphrases in descending order based on their keyphrase importance scores. As part of this process, the utterance (i.e., the words used in the turn in which the keyphrase is found) associated with each of the keyphrases is stored as metadata for later usage. This process is completed for each of the conversations. All the extracted keyphrases and associated metadata then may be stored in a database).
converting, at the end of the time period, the scores in the memory buffer, into a score for the of time period (Paragraph Number [0060] teaches consider a customer turn that includes “credit card for the month of April.” In this case, “credit”, “card”, “month” and “April” would be obtained as keywords, while “for”, “the”, and “of” would be marked as stopwords. Also, “credit card” would be obtained as a keyphrase since “credit” and “card” occur consecutively in the turn. The sum of text rank scores of “credit” and “card” would give an importance score for the “credit card” keyphrase. From each conversation, a predetermined number of keyphrases having the highest keyphrase importance score is then selected. For example, the top 5 keyphrases may be picked after sorting the keyphrases in descending order based on their keyphrase importance scores. As part of this process, the utterance (i.e., the words used in the turn in which the keyphrase is found) associated with each of the keyphrases is stored as metadata for later usage. This process is completed for each of the conversations. All the extracted keyphrases and associated metadata then may be stored in a database. (See also Paragraph Numbers [0052], [0055], and [0083])).
grouping a plurality of the most recent time period scores into a live score history (Paragraph Number [0055] teaches the topic mining workflow 300 may include importing the mined topics and associated utterances into a downstream application for use thereby. For example, the mined topics may be uploaded into other modules within the topic manager 258, which then may use the topics associated utterances to provide analytics and other functionality related thereto. Reporting functionality may provide the results of the analytics to a specified user. Additionally, the newly mined topics and associated utterances also may be used by the topic miner 259 to mine conversations occurring in real-time in the contact center. Paragraph Number [0083] teaches efficient and unsupervised mining of topics and associated utterances from a large amount of natural language conversations. Conversations can be consumed by such a system as either a text file or from other storage platforms. Present systems and methods provide the ability to identify and group topics and associated utterances having similar semantic meaning. Further, privacy is protected by anonymizing utterances through PII masking. Further, the topic analytics that are provided provide insights into conversational data about customers. The present topic manager also allows users to efficiently review mined results and make changes thereto by selecting, renaming, regrouping, and/or discarding mined topics and associated utterances. Once complete, the mined topics and associated utterances may be conveniently exported into other applications for use thereby, including export into systems that used the mined output to build machine learning models for real-time identification of topics in conversation data).
obtaining at least one score history characteristic from the live score history (Paragraph Number [0002] teaches using a graph-based ranking algorithm to determine a relative importance of the keywords in the first conversation and calculating a keyword importance score for each of the keywords according to the determined relative importance; identifying keyphrases in the first conversation, wherein the keyphrases are defined as the keywords in instances when the keywords appear consecutively; calculating a keyphrase importance score as a sum of the keyword importance scores for the keywords included within the keyphrase and determining a relative importance of each of the key phrases in the first conversation by comparing the calculated keyphrase importance scores; and selecting as candidate topics from the first conversation a predetermined number of the keyphrases having a highest keyphrase importance score. (Examiner asserts that this teaches at least a maximum or minimum score in the score history. Additionally, a person of ordinary skill would be able to manipulate the basic scores to present specific portions of the data such as only looking at half the data)).
obtaining a real-time indication of a probability that interaction intervention is required based on the at least one score history characteristic (Paragraph Number [0039] teaches performing analytics on data received from a plurality of different data sources as functionality described herein may require. In accordance with example embodiments, the analytics module 250 also may generate, update, train, and modify predictors or models 252 based on collected data, such as, for example, customer data, agent data, and interaction data. The models 252 may include behavior models of customers or agents. The behavior models may be used to predict behaviors of, for example, customers or agents, in a variety of situations, thereby allowing embodiments of the present invention to tailor interactions based on such predictions or to allocate resources in preparation for predicted characteristics of future interactions, thereby improving overall contact center performance and the customer experience. It will be appreciated that, while the analytics module 250 is depicted as being part of a contact center, such behavior models also may be implemented on customer systems (or, as also used herein, on the “customer-side” of the interaction) and used for the benefit of customers. (Examiner asserts that the prediction of modifications to a specific agent based on their interaction constitutes a probability of a required intervention). Paragraph Number [0083] teaches the mined topics and associated utterances may be conveniently exported into other applications for use thereby, including export into systems that used the mined output to build machine learning models for real-time identification of topics in conversation data).
outputting the probability that interaction intervention is required using a computer output device (Paragraph Number [0039] teaches performing analytics on data received from a plurality of different data sources as functionality described herein may require. In accordance with example embodiments, the analytics module 250 also may generate, update, train, and modify predictors or models 252 based on collected data, such as, for example, customer data, agent data, and interaction data. The models 252 may include behavior models of customers or agents. The behavior models may be used to predict behaviors of, for example, customers or agents, in a variety of situations, thereby allowing embodiments of the present invention to tailor interactions based on such predictions or to allocate resources in preparation for predicted characteristics of future interactions, thereby improving overall contact center performance and the customer experience. It will be appreciated that, while the analytics module 250 is depicted as being part of a contact center, such behavior models also may be implemented on customer systems (or, as also used herein, on the “customer-side” of the interaction) and used for the benefit of customers. (Examiner asserts that the prediction of modifications to a specific agent based on their interaction constitutes a probability of a required intervention)).
wherein the outputting comprises displaying an alert on a monitor of a computer device (Paragraph Number [0048] teaches systems may be designed to notify agent supervisors when certain topics are spotted and inform in real-time as to necessary corrected actions to take. Paragraph Number [0050] teaches a topic manager module of the present invention, e.g., the topic manager 258 of FIG. 2, may provide several types of functionality, including topic mining, analytics related to mined topics, model training, and reporting features, which may be taken in response to the mined topics and analytics. Such functionality may be incorporated into the WEM server 243 or provided as a separate feature. In accordance with exemplary embodiments, as new topics are identified, the topic manager 258 may notify a user (such as a supervisor, manager, or other designated employee) and prompt the user to create or approve a new topic in the system).
Sundaram teaches producing a score related to interaction between customers and agents based on an overall length of time and duration of an interaction but does not explicitly teach determining individual time periods within a specific interaction as described by the following citations from Moturi:
for each of a plurality of time periods during the computer-based interaction: (Paragraph Number [0058] teaches based on determining sentiments associated with interactions, the system can generate timeseries of interactions. For example, timeseries 326 includes a series of data points, such as data points representing sentiment, that are plotted or indexed in order of time. For example, the system can determine sentiment for portions of textual representations of interactions, where each portion corresponds to a different time period within the interaction (e.g., within a continuous time period). As an illustrative example, the system separates a textual representation of the interaction into multiple portions all corresponding to time periods within a continuous time period, The system can determine, using artificial intelligence, sentiment associated with each portion of the textual representation, and generate the timeseries accordingly. By doing so, the system generates temporal information relating to sentiment through the course of an interaction, enabling evaluation of user sentiment dynamically over the course of an interaction).
included in the time period... during the time period (Paragraph Number [0058] teaches based on determining sentiments associated with interactions, the system can generate timeseries of interactions. For example, timeseries 326 includes a series of data points, such as data points representing sentiment, that are plotted or indexed in order of time. For example, the system can determine sentiment for portions of textual representations of interactions, where each portion corresponds to a different time period within the interaction (e.g., within a continuous time period). As an illustrative example, the system separates a textual representation of the interaction into multiple portions all corresponding to time periods within a continuous time period, The system can determine, using artificial intelligence, sentiment associated with each portion of the textual representation, and generate the timeseries accordingly. By doing so, the system generates temporal information relating to sentiment through the course of an interaction, enabling evaluation of user sentiment dynamically over the course of an interaction).
A person of ordinary skill in the art would have been motivated to combine these references as described in regard to claim 1.
Sundaram teaches producing a score related to interaction between customers and agents based on an overall length of time and duration of an interaction but does not explicitly teach clearing the memory buffer as described by the following citations from Morita:
and clearing the memory buffer at the end of the time period (Paragraph Number [0011] teaches to the exchange are provided a reproduced voice buffer for temporarily storing the reproduced voice to be transmitted to the circuit switched network and buffer clearing means for clearing unnecessary voice from the reproduced voice buffer based on a clearing request transmitted from the voice storage apparatus for changing the reproduced voice. Paragraph Number [0085] teaches description will be given as to a sequential flow. That is, reproduction of the voice is started by commencing connection of the first telephone 101, the key operation by the first telephone 101 is detected/analyzed as DTMF and transmitted to the voice storage apparatus 103 as the key information by the exchange 102, the voice storage apparatus 103 transmits a buffer clearing request from the key information to the exchange 102 and the changed voice to the first telephone 101, the exchange 102 performs buffer clearing for the voice, and reproduction of the voice is terminated by completion of connection of the first telephone 101. Paragraph Number [0129] teaches description will be given as to a sequential flow. That is, voice reproduction is started by commencing connection of the first telephone 101; the exchange 102 detects the key operation by the first telephone 101 as the DTMF and transmits it to the voice storage apparatus 103 as the key information; the voice storage apparatus 103 transmits a buffer clearing request from the key information to the exchange 102; the exchange 102 clears the buffer for the voice and transmits the buffer clearing end to the voice storage apparatus 103; the voice storage apparatus 103 transmits the changed voice to the first telephone 101; and voice reproduction is stopped by end of connection of the first telephone 101).
A person of ordinary skill in the art would have been motivated to combine these references as described in regard to claim 1.
As per claims 3 and 11, the combination of Sundaram, Moturi, and Morita teaches each of the limitations of claims 1 and 9 respectively.
In addition, Sundaram teaches:
inputting the text components into at least one score machine learning engine configured to produce a score based on the metric (Paragraph Number [0059] teaches a graph-based ranking algorithm may then be used to obtain the relative importance of keywords in a conversation. As will be appreciated, such word graphs may be used to understand the co-occurrence relationship between the keywords of a conversation. As an example, a text rank algorithm (such as “TextRank”) may be used to obtain a relevance or importance score for each keyword in a conversation. This score also may be referred to as a “keyword importance score”. Keyphrases may be identified from the keywords. According to exemplary embodiments, keyphrases are defined as instances when the keywords appear consecutively. That is, keywords occurring consecutively in the conversation are identified as keyphrases. Consecutively occurring keywords may be concatenated together to obtain keyphrases. A relative importance for the keyphrases in the conversation may then be determined. In accordance with an exemplary embodiment, the text rank score of the keywords making up a keyphrase are summed to obtain an importance score. This score may be referred to as a “keyphrase importance score”).
wherein the at least one metric is at least one of: a customer sentiment, an agent sentiment, a customer behavior, and an agent behavior (Paragraph Number [0019] teaches contact centers generally strive to provide quality services to customers while minimizing costs. Contact centers may include many different systems and modules—such as those shown in exemplary contact center system 200—in furtherance of this aim. The contact center system 200 may be used to engage and manage interactions in which automated processes (or bots) or human agents communicate with customers. Paragraph Number [0039] teaches performing analytics on data received from a plurality of different data sources as functionality described herein may require. In accordance with example embodiments, the analytics module 250 also may generate, update, train, and modify predictors or models 252 based on collected data, such as, for example, customer data, agent data, and interaction data. The models 252 may include behavior models of customers or agents).
receiving from the at least one engine, scores for each text component (Paragraph Number [0059] teaches a graph-based ranking algorithm may then be used to obtain the relative importance of keywords in a conversation. As will be appreciated, such word graphs may be used to understand the co-occurrence relationship between the keywords of a conversation. As an example, a text rank algorithm (such as “TextRank”) may be used to obtain a relevance or importance score for each keyword in a conversation. This score also may be referred to as a “keyword importance score”. Keyphrases may be identified from the keywords. According to exemplary embodiments, keyphrases are defined as instances when the keywords appear consecutively. That is, keywords occurring consecutively in the conversation are identified as keyphrases. Consecutively occurring keywords may be concatenated together to obtain keyphrases. A relative importance for the keyphrases in the conversation may then be determined. In accordance with an exemplary embodiment, the text rank score of the keywords making up a keyphrase are summed to obtain an importance score. This score may be referred to as a “keyphrase importance score”).
As per claims 4 and 12, the combination of Sundaram, Moturi, and Morita teaches each of the limitations of claims 1 and 9 respectively.
In addition, Sundaram teaches:
wherein producing the score for each text component is based on the text component and a number of preceding text components in the computer-based interaction. (Paragraph Number [0055] teaches the topic mining workflow 300 may include importing the mined topics and associated utterances into a downstream application for use thereby. For example, the mined topics may be uploaded into other modules within the topic manager 258, which then may use the topics associated utterances to provide analytics and other functionality related thereto. Reporting functionality may provide the results of the analytics to a specified user. Additionally, the newly mined topics and associated utterances also may be used by the topic miner 259 to mine conversations occurring in real-time in the contact center. Paragraph Number [0059] teaches a graph-based ranking algorithm may then be used to obtain the relative importance of keywords in a conversation. As will be appreciated, such word graphs may be used to understand the co-occurrence relationship between the keywords of a conversation. As an example, a text rank algorithm (such as “TextRank”) may be used to obtain a relevance or importance score for each keyword in a conversation. This score also may be referred to as a “keyword importance score”. Keyphrases may be identified from the keywords. According to exemplary embodiments, keyphrases are defined as instances when the keywords appear consecutively. That is, keywords occurring consecutively in the conversation are identified as keyphrases. Consecutively occurring keywords may be concatenated together to obtain keyphrases. A relative importance for the keyphrases in the conversation may then be determined. In accordance with an exemplary embodiment, the text rank score of the keywords making up a keyphrase are summed to obtain an importance score. This score may be referred to as a “keyphrase importance score”. (Examiner asserts that based on the examples recited in claim 20 a communication over a communication channel constitutes a computer-based interaction. See also Paragraph Numbers [0052], [0055], and [0083])).
As per claims 6 and 14, the combination of Sundaram, Moturi, and Morita teaches each of the limitations of claims 1 and 9 respectively.
In addition, Sundaram teaches:
wherein the at least one score history feature comprises at least one of: a minimum score in the score history; a maximum score in the score history; a mean score of the score history; a median score of the score history; a difference between the maximum score and the minimum score; and a difference between a mean of a second half of the score history and a mean of the first half of the score history. (Paragraph Number [0002] teaches using a graph-based ranking algorithm to determine a relative importance of the keywords in the first conversation and calculating a keyword importance score for each of the keywords according to the determined relative importance; identifying keyphrases in the first conversation, wherein the keyphrases are defined as the keywords in instances when the keywords appear consecutively; calculating a keyphrase importance score as a sum of the keyword importance scores for the keywords included within the keyphrase and determining a relative importance of each of the key phrases in the first conversation by comparing the calculated keyphrase importance scores; and selecting as candidate topics from the first conversation a predetermined number of the keyphrases having a highest keyphrase importance score. (Examiner asserts that this teaches at least a maximum or minimum score in the score history. Additionally, a person of ordinary skill would be able to manipulate the basic scores to present specific portions of the data such as only looking at half the data)).
As per claims 7 and 15, the combination of Sundaram, Moturi, and Morita teaches each of the limitations of claims 1 and 9 respectively.
In addition, Sundaram teaches:
calculating, based on the score history, at least one score history feature (Paragraph Number [0036] teaches in regard to the universal contact server (UCS) 246, it may be configured to retrieve information stored in the customer database 222 and/or transmit information thereto for storage therein. For example, the UCS 246 may be utilized as part of the chat feature to facilitate maintaining a history on how chats with a particular customer were handled, which then may be used as a reference for how future chats should be handled. More generally, the UCS 246 may be configured to facilitate maintaining a history of customer preferences, such as preferred media channels and best times to contact. To do this, the UCS 246 may be configured to identify data pertinent to the interaction history for each customer such as, for example, data related to comments from agents, customer communication history, and the like. Each of these data types then may be stored in the customer database 222 or on other modules and retrieved as functionality described herein requires. Paragraph Number [0037] teaches in regard to the reporting server 248, it may be configured to generate reports from data compiled and aggregated by the statistics server 226 or other sources. Such reports may include near real-time reports or historical reports and concern the state of contact center resources and performance characteristics, such as, for example, average wait time, abandonment rate, agent occupancy).
calculating, based on the at least one score history feature, a probability of required intervention (Paragraph Number [0039] teaches performing analytics on data received from a plurality of different data sources as functionality described herein may require. In accordance with example embodiments, the analytics module 250 also may generate, update, train, and modify predictors or models 252 based on collected data, such as, for example, customer data, agent data, and interaction data. The models 252 may include behavior models of customers or agents. The behavior models may be used to predict behaviors of, for example, customers or agents, in a variety of situations, thereby allowing embodiments of the present invention to tailor interactions based on such predictions or to allocate resources in preparation for predicted characteristics of future interactions, thereby improving overall contact center performance and the customer experience. It will be appreciated that, while the analytics module 250 is depicted as being part of a contact center, such behavior models also may be implemented on customer systems (or, as also used herein, on the “customer-side” of the interaction) and used for the benefit of customers. (Examiner asserts that the prediction of modifications to a specific agent based on their interaction constitutes a probability of a required intervention)).
calculating, based on the probability of required intervention, and further based on at least one control parameter, a real-time indication of the quality of the computer-based interaction. (Paragraph Number [0055] teaches the topic mining workflow 300 may include importing the mined topics and associated utterances into a downstream application for use thereby. For example, the mined topics may be uploaded into other modules within the topic manager 258, which then may use the topics associated utterances to provide analytics and other functionality related thereto. Reporting functionality may provide the results of the analytics to a specified user. Additionally, the newly mined topics and associated utterances also may be used by the topic miner 259 to mine conversations occurring in real-time in the contact center. Paragraph Number [0083] teaches efficient and unsupervised mining of topics and associated utterances from a large amount of natural language conversations. Conversations can be consumed by such a system as either a text file or from other storage platforms. Present systems and methods provide the ability to identify and group topics and associated utterances having similar semantic meaning. Further, privacy is protected by anonymizing utterances through PII masking. Further, the topic analytics that are provided provide insights into conversational data about customers. The present topic manager also allows users to efficiently review mined results and make changes thereto by selecting, renaming, regrouping, and/or discarding mined topics and associated utterances. Once complete, the mined topics and associated utterances may be conveniently exported into other applications for use thereby, including export into systems that used the mined output to build machine learning models for real-time identification of topics in conversation data).
As per claims 8 and 16, the combination of Sundaram, Moturi, and Morita teaches each of the limitations of claims 1 and 7, and 9 and 15 respectively.
In addition, Sundaram teaches:
wherein the at least one control parameter comprises at least one of: a probability threshold; a number of consecutive scores stored; and a number of above-threshold scores. (Paragraph Number [0061] teaches the keyphrase importance score for a given candidate topic may be updated by averaging its value across multiple or all of the conversations. Pruning may be based on this updated value. Another cross-conversation factor is a frequency of occurrence. The frequency of occurrence is a metric that values a candidate topic based on the frequency that it appears in conversations of the conversation data. According to example embodiments, candidate topics determined to have a frequency of occurrence that is less than a predetermined threshold are ignored or pruned. This may help to avoid noise by eliminating the extraction of spurious keyphrases during the extraction process. By pruning of the list of candidate topics in this way, the most dominant/relevant keyphrases present in a conversational dataset is more assuredly determined. The keyphrases (or candidate topics) that remain after the pruning may be designated as the topics identified in the conversation data. Paragraph Number [0081] teaches the cross-conversation factor may include calculating an updated keyphrase importance score for a given keyphrase by averaging the keyphrase importance scores for the given keyphrase in multiple ones of the conversations. In alternative embodiments, the cross-conversation factor comprises calculating a frequency of occurrence of the each of the keyphrases across the conversations and the pruning comprises discarding the keyphrases having a calculated frequency of occurrence that does not satisfy a predetermined threshold.(Examiner asserts that this teaches at least determining a number of above-threshold scores in that the score that are below the threshold are pruned and all those kept are considered) (See also Paragraph Number [0063])).
As per claim 18, the combination of Sundaram, Moturi, and Morita teaches each of the limitations of claim 17.
In addition, Sundaram teaches:
wherein generating a text representation of the interaction comprises: inputting a sound-based representation of the computer-based interaction into a speech-to-text algorithm (Paragraph Number [0038] teaches in regard to the media services server 249, it may be configured to provide audio and/or video services to support contact center features. In accordance with functionality described herein, such features may include prompts for an IVR or IMR system (e.g., playback of audio files), hold music, voicemails/single party recordings, multi-party recordings (e.g., of audio and/or video calls), speech recognition, dual tone multi frequency (DTMF) recognition, faxes, audio and video transcoding, secure real-time transport protocol (SRTP), audio conferencing, video conferencing, coaching (e.g., support for a coach to listen in on an interaction between a customer and an agent and for the coach to provide comments to the agent without the customer hearing the comments), call analysis, keyword spotting, and the like. (Examiner asserts that based on the examples recited in claim 20 a communication over a communication channel constitutes a computer-based interaction. See also Paragraph Numbers [0052], [0055], and [0083])).
As per claim 19, the combination of Sundaram, Moturi, and Morita teaches each of the limitations of claim 17.
In addition, Sundaram teaches:
inputting the text representation of the computer-based interaction and at least one scoring metric into a scoring algorithm, wherein the scoring metric comprises at least one of: a customer sentiment, an agent sentiment, a customer behavior, and an agent behavior. (Paragraph Number [0019] teaches contact centers generally strive to provide quality services to customers while minimizing costs. Contact centers may include many different systems and modules—such as those shown in exemplary contact center system 200—in furtherance of this aim. The contact center system 200 may be used to engage and manage interactions in which automated processes (or bots) or human agents communicate with customers. Paragraph Number [0039] teaches performing analytics on data received from a plurality of different data sources as functionality described herein may require. In accordance with example embodiments, the analytics module 250 also may generate, update, train, and modify predictors or models 252 based on collected data, such as, for example, customer data, agent data, and interaction data. The models 252 may include behavior models of customers or agents. (Examiner asserts that based on the examples recited in claim 20 a communication over a communication channel constitutes a computer-based interaction. See also Paragraph Numbers [0052], [0055], and [0083])).
As per claim 20, the combination of Sundaram, Moturi, and Morita teaches each of the limitations of claim 17.
In addition, Sundaram teaches:
wherein the computer-based interaction comprises at least one of: a voice telephone call, a conference call, a video recording, a face-to-face interaction, an email, a web chat, and an SMS message (Paragraph Number [0038] teaches in regard to the media services server 249, it may be configured to provide audio and/or video services to support contact center features. In accordance with functionality described herein, such features may include prompts for an IVR or IMR system (e.g., playback of audio files), hold music, voicemails/single party recordings, multi-party recordings (e.g., of audio and/or video calls), speech recognition, dual tone multi frequency (DTMF) recognition, faxes, audio and video transcoding, secure real-time transport protocol (SRTP), audio conferencing, video conferencing, coaching (e.g., support for a coach to listen in on an interaction between a customer and an agent and for the coach to provide comments to the agent without the customer hearing the comments), call analysis, keyword spotting, and the like).
As per claim 21, the combination of Sundaram, Moturi, and Morita teaches each of the limitations of claim 17.
In addition, Sundaram teaches:
comprising terminating the computer-based interaction based on the outputted real-time indication (Paragraph Number [0040] teaches the analytics module 250 may have access to the data stored in the storage device 220, including the customer database 222 and agent database 223. The analytics module 250 also may have access to the interaction database 224, which stores data related to interactions and interaction content (e.g., transcripts of the interactions and events detected therein), interaction metadata (e.g., customer identifier, agent identifier, medium of interaction, length of interaction, interaction start and end time, department, tagged categories), and the application setting (e.g., the interaction path through the contact center) Paragraph Number [0070] teaches utterance segments may be extracted from utterances associated with a topic in the following way. First, a start character offset and an end character offset of an utterance segment present within an utterance are obtained. Then the segment belonging to a slightly larger window on either side of the offsets is obtained. This windowing may be done in a heuristic fashion. For example, if the start and end offsets of an utterance segments from the beginning of an utterance is, say, 32 and 45, respectively, a window may be chosen from ‘N’ characters behind 32 and ‘N’ characters after 45. If N=10, then the text segment between offsets 22 and 55 would be obtained. The text may be expanded to the nearest word breaks present to avoid partial words in phrases. If the start or end of text is reached, then the traversal is stopped).
Claims 5 and 13 are rejected under 35 U.S.C. 103 as being unpatentable over U.S. Patent Application Publication Number 2023/0315998 to Sundaram et al. (hereafter referred to as Sundaram) in view of U.S. Patent Application Publication Number 2024/0320443 to Moturi et al. (hereafter referred to as Moturi) in further view of U.S. Patent Application Publication Number 2003/0007611 to Morita et al. (hereafter referred to as Morita) and in even further view of U.S. Patent Application Publication Number 2020/0202272 to Aravamudhan et al. (hereafter referred to as Aravamudhan)
As per claims 5 and 13, the combination of Sundaram, Moturi, and Morita teaches each of the limitations of claims 1 and 4, and 9 and 12 respectively.
In addition, Sundaram teaches:
where a new text component score is produced in the time period, outputting the last such text component score (Paragraph Number [0055] teaches the topic mining workflow 300 may include importing the mined topics and associated utterances into a downstream application for use thereby. For example, the mined topics may be uploaded into other modules within the topic manager 258, which then may use the topics associated utterances to provide analytics and other functionality related thereto. Reporting functionality may provide the results of the analytics to a specified user. Additionally, the newly mined topics and associated utterances also may be used by the topic miner 259 to mine conversations occurring in real-time in the contact center).
Sundaram teaches producing a score related to interaction between customers and agents but does not explicitly teach outputting a most recent score if no new scores are produced as described by the following citations from Aravamudhan:
for each time period: where no new text component score is produced in the time period, outputting a most recent text component score (Paragraph Number [0055] teaches the set time interval is a set amount of historic data as determined by a particular time interview. For example, the most-recent six months' worth of data from the contact center could be the set time interval for the amount of historic data. The time interval may be comprised of one continuous length of time or a number of distinct time intervals. The time interval may seek to omit time periods where there is an absence of data from the historic data, due to a loss of data from the storage medium, for example. The length of the set time interval should be appropriately set to permit sufficient data for building the predictive model and analysis by an analytics server).
Both the combination of Sundaram, Moturi, and Morita and Aravamudhan are directed to reviewing interaction information between agents and clients. The combination of Sundaram, Moturi, and Morita discloses producing a score related to interaction between customers and agents. Aravamudhan improves upon the combination of Sundaram, Moturi, and Morita by disclosing outputting a most recent score if no new scores are produced. One of ordinary skill in the art would be motivated to further include outputting a most recent score if no new scores are produced, to efficiently provide scores with which to compare even if there is no specific entry to match a certain time period. Accordingly, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify the system and method of producing a score related to interaction between customers and agents in the combination of Sundaram, Moturi, and Morita to further utilize outputting a most recent score if no new scores are produced as disclosed in Aravamudhan, since the claimed invention is merely a combination of old elements, and in combination each element merely would have performed the same function as it did separately, and one of ordinary skill in the art would have recognized that the results of the combination were predictable.
Response to Arguments
Applicant’s arguments filed 12/1/2025 have been fully considered but they are not persuasive.
Applicant argues that the claims are eligible under 35 USC 101. (See Applicant’s Remarks, 12/1/2025, pgs. 8-12). Examiner respectfully disagrees. As noted in the 35 USC 101 analysis presented above, the claims recite an abstract concept that is encapsulated by decision making analogous to a method of organizing human activity or mathematical concepts. Examiner notes that each of the limitations that encapsulate the abstract concepts are recited in the above 35 USC 101. Additionally, the claims do not recite a practical application of the abstract concepts in that there is no specific use or application of the method steps other than to make conclusory determinations and provide for direction for either a person or machine to follow at some future time or to make calculations that are mathematical operations. The claims do not recite any particular use for these determinations and directions that improve upon the underlying computer technology (in this instance the computer software, processor, and memory). Instead, Examiner asserts that the additional elements in the claim language are only used as implementation of the abstract concepts utilizing technology. The concepts described in the limitations when taken both as a whole and individually are not meaningfully different than those found by the courts to be abstract ideas and are similarly considered to be certain methods of organizing human activity such as managing personal behavior or relationships or interactions between people, including social activities, teaching, and following rules or instructions or to make calculations that are mathematical operations. The steps are then encapsulated into a particular technological environment by executing these steps upon a computer processor and utilizing features such as a computer interface or sending and receiving data over a network or displaying information via a computerized graphical user interface. However, sending and receiving of information over a network and execution of algorithms on a computer are utilized only to facilitate the abstract concepts (i.e. selecting data on an interface, publishing/displaying information, etc.). As such, Examiner asserts that the implementation of the abstract concepts recited by the claims utilize computer technology in a way that is considered to be generally linking the use of the judicial exception to a particular technological environment or field of use (See MPEP 2106.05(h)). Accordingly, Examiner does not find that the claims recite a practical application of the abstract concepts recited by the claims.
Applicant argues that the previously cited reference does not teach the newly amended portions including the new limitations recited by the independent claims. (See Applicant’s Remarks, 12/1/2025, pgs. 13-15). Examiner respectfully disagrees. Examiner has added citations from the Sundaram and the new Morita reference in response to Applicant’s amendments and provided for additional citations as explanation for the claim language in general as shown in the above new 35 USC 103 rejection. As such, Applicant’s arguments directed towards the previous 35 USC 103 rejection are moot. In response to Applicant’s arguments, Examiner directs Applicant to review the new citations and explanations provided in the new 35 USC 103 rejection presented above.
Conclusion
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a). A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any extension fee pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to MATTHEW H. DIVELBISS whose telephone number is (571) 270-0166. The fax phone number is 571-483-7110. The examiner can normally be reached on M-Th, 7:00 - 5:00. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Jerry O'Connor can be reached on (571) 272-6787.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/M.H.D/Examiner, Art Unit 3624
/Jerry O'Connor/Supervisory Patent Examiner,Group Art Unit 3624