DETAILED ACTION
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Claims 1-20 are pending for examination in this application. Claims 1, 11, and 20 are independent claims. This Office Action is Non-Final.
Information Disclosure Statement
The information disclosure statement (IDS) submitted on 11/21/2024 is in compliance with the provisions of 37 CFR 1.97, 37 CFR 1.98, and MPEP § 609. The Information Disclosure Statement has been placed in the application file and the information referred to therein has been considered as to the merits.
Double Patenting
The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP §§ 706.02(l)(1) - 706.02(l)(3) for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/process/file/efs/guidance/eTD-info-I.jsp.
Claims 1-16, 18-20 are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1-7, 9-15, 17-18, 20 of U.S. Patent No. 12,050,526 (reference patent). Although the Instant Application claims 1-16, 18-20 and Patent No. 12,050,526 claims 1-7, 9-15, 17-18, 20 at issue are not identical, they are not patentably distinct from each other because, as shown in the table below, Instant Application claims 1-16, 18-20 are anticipated by Patent No. 12,050,526 claims 1-7, 9-15, 17-18, 20.
Instant Application
18/784,690
U.S. Patent No. 12,050,526
1. A computer-implemented method for generating feedback for software executing on client devices, the method comprising:
storing context information associated with one or more software applications within a context data structure;
generating a feedback log that is populated with at least a portion of the context information stored within the context data structure; and
transmitting the feedback log to a server machine.
1. A computer-implemented method for generating feedback logs for software applications executing on client devices, the method comprising:
querying an operating system for context information associated with a plurality of software applications executing on a client device;
storing the context information within a context data structure;
…
in response, generating a feedback log that is populated with at least a portion of the context information stored within the context data structure; and
transmitting the feedback log to a server machine.
2. The computer-implemented method of claim 1, further comprising querying an operating system for the context information associated with the one or more software applications.
1. A computer-implemented method for generating feedback logs for software applications executing on client devices, the method comprising:
querying an operating system for context information associated with a plurality of software applications executing on a client device;
…
3. The computer-implemented method of claim 1, wherein the at least a portion of the context information populating the feedback log includes context information that was stored within the context data structure for at least a predetermined amount of time.
2. The computer-implemented method of claim 1, wherein the at least a portion of the context information populating the feedback log includes context information that was stored within the context data structure during a predetermined time period prior to receiving the first instance of the predetermined set of inputs.
4. The computer-implemented method of claim 1, wherein the context information includes at least one of an application name, window title, an execution start time, or an execution stop time.
3. The computer-implemented method of claim 1, wherein the context information includes, for each software application included in the plurality of software applications, at least one of an application name, window title, an execution start time, or an execution stop time.
5. The computer-implemented method of claim 1, wherein the context information includes at least one command executed by at least one software application.
4. The computer-implemented method of claim 1, wherein the context information includes, for each software application included in the plurality of software applications, a set of commands executed by the software application.
6. The computer-implemented method of claim 1, wherein the one or more software applications include at least a primary application and a secondary application that interact to perform a task.
5. The computer-implemented method of claim 1, wherein the plurality of software applications includes at least a primary application and a secondary application that interact to perform a workflow task.
7. The computer-implemented method of claim 1, further comprising:
assigning a first importance level to the feedback log based on a first input; and
assigning a second importance level to the feedback log based on a second input.
6. The computer-implemented method of claim 1, further comprising:
in response to receiving the first instance of the predetermined set of inputs, assigning a first importance level to the feedback log;
receiving a second instance of the predetermined set of inputs via the input device; and
in response to receiving the second instance of the predetermined set of inputs, assigning a second importance level to the feedback log.
8. The computer-implemented method of claim 1, further comprising:
assigning an importance level to the feedback log indicating that a log response has been requested for the feedback log; and
receiving the log response for the feedback log from a server machine.
7. The computer-implemented method of claim 1, further comprising:
assigning an importance level to the feedback log that indicates that a log response has been requested for the feedback log; and
receiving the log response for the feedback log from the server machine.
9. The computer-implemented method of claim 1, further comprising storing multimedia content in the feedback log, wherein the multimedia content comprises at least one of audio content, image content, or video content.
9. The computer-implemented method of claim 1, further comprising storing multimedia content to the feedback log, wherein the multimedia content comprises at least one of audio content, image content, or video content.
10. The computer-implemented method of claim 1, further comprising:
storing the feedback log within a log archive; and
generating a user interface for interacting with and displaying the feedback log.
10. The computer-implemented method of claim 1, further comprising:
storing the feedback log within a log archive that includes a plurality of feedback logs; and
generating a user interface for interacting with and displaying the plurality of feedback logs.
11. One or more non-transitory computer-readable media including instructions that, when executed by one or more processors, cause the one or more processors to perform the steps of:
storing context information associated with one or more software applications within a context data structure;
generating a feedback log that is populated with at least a portion of the context information stored within the context data structure; and
transmitting the feedback log to a server machine.
11. One or more non-transitory computer-readable media including instructions that, when executed by one or more processors, cause the one or more processors to … performing the steps of:
querying an operating system for context information associated with a plurality of software applications executing on a client device;
storing the context information within a context data structure;
…
in response, generating a feedback log that is populated with at least a portion of the context information stored within the context data structure; and
transmitting the feedback log to a server machine.
12. The one or more non-transitory computer-readable media of claim 11, further comprising
querying an operating system for the context information associated with the one or more software applications.
11. One or more non-transitory computer-readable media …
querying an operating system for context information associated with a plurality of software applications executing on a client device; …
13. The one or more non-transitory computer-readable media of claim 12, wherein the operating system and the one or more software applications execute on a first client machine.
11. One or more non-transitory computer-readable media including instructions that, when executed by one or more processors, cause the one or more processors to generate feedback logs for software applications executing on client devices by performing the steps of:
querying an operating system for context information associated with a plurality of software applications executing on a client device;
…
14. The one or more non-transitory computer-readable media of claim 11, wherein the at least a portion of the context information populating the feedback log includes context information that was stored within the context data structure for at least a predetermined amount of time.
12. The one or more non-transitory computer-readable media of claim 11, wherein the at least a portion of the context information populating the feedback log includes context information that was stored within the context data structure during a predetermined time period prior to receiving the first instance of the predetermined set of inputs.
15. The one or more non-transitory computer-readable media of claim 11, wherein the context information includes at least one of an application name, window title, an execution start time, an execution stop time,
or at least one executed command.
13. The one or more non-transitory computer-readable media of claim 11, wherein the context information includes, for each software application included in the plurality of software applications, at least one of an application name, window title, an execution start time, or an execution stop time.
Claim 14
16. The one or more non-transitory computer-readable media of claim 11, wherein the one or more software applications include at least a primary application and a secondary application that interact to perform a task.
15. The one or more non-transitory computer-readable media of claim 11, wherein the plurality of software applications includes at least a primary application and a secondary application that interact to perform a workflow task.
18. The one or more non-transitory computer-readable media of claim 11, further comprising:
assigning an importance level to the feedback log indicating that a log response has been requested for the feedback log; and
receiving the log response for the feedback log from a server machine.
17. The one or more non-transitory computer-readable media of claim 11, further comprising:
assigning an importance level to the feedback log that indicates that a log response has been requested for the feedback log; and
receiving the log response for the feedback log from the server machine.
19. The one or more non-transitory computer-readable media of claim 11, wherein the context information is stored within the context data structure in response to a first input that comprises at least one of a cursor-based input, a desktop region-based input, a button-based input, a keyboard-based input, or a natural-based input.
18. The one or more non-transitory computer-readable media of claim 11, wherein the predetermined set of inputs comprises at least one of a cursor-based set of inputs, a desktop region-based set of inputs, a button-based set of inputs, a keyboard-based set of inputs, or a natural-based set of inputs.
20. A system, comprising:
one or more memories that store instructions; and
one or more processors that are coupled to the one or more memories and, upon executing the instructions, are configured to perform the steps of:
storing context information associated with one or more software applications within a context data structure;
generating a feedback log that is populated with at least a portion of the context information stored within the context data structure; and
transmitting the feedback log to a server machine.
20. A computing system comprising:
a memory that stores instructions; and
a processor that is coupled to the memory and, upon executing the instructions, performs the steps of:
querying an operating system for context information associated with a plurality of software applications executing on a client device;
storing the context information within a context data structure;
…
in response, generating a feedback log that is populated with at least a portion of the context information stored within the context data structure; and
transmitting the feedback log to a server machine.
With regards to double patenting of claims 1-16, 18-20 of the Instant Application, claims 1-7, 9-15, 17-18, 20 of U.S. Patent No. 12,050,526 is in essence a “species” of the generic invention of Instant Application claims 1-16, 18-20. It has been held that a generic invention is “anticipated” by a “species” within the scope of the generic invention. See In re Goodman, 29 USPQ2d 2010 (Fed. Cir. 1993) and MPEP 806.04(i).
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-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to (an) abstract idea(s) without significantly more.
Claims 1, 11, and 20 recite:
storing context information associated with one or more software applications within a context data structure;
generating a feedback log that is populated with at least a portion of the context information stored within the context data structure; and
transmitting the feedback log to a server machine.
Step 1: Is the claim to a process, machine, manufacture, or composition of matter?
Yes:
Claim 1 is a method.
Claim 11 is an article of manufacture.
Claim 20 is a machine.
Step 2A, Prong I: Does the claim recite an abstract idea, law of nature, or natural phenomenon?
Yes: (an) abstract idea(s).
The “generating” limitation in # 2 above, as claimed and under broadest reasonable interpretation (BRI), is a mental process that covers performance of the limitation in the mind. For example, “generating” in the context of this claim encompasses a person making a judgement about data.
Step 2A, Prong II: Does the claim recite additional elements that integrate the judicial exception into a practical application?
No.
The “storing” limitation in # 1 above and “transmitting” limitation in #3 above, as claimed and under BRI, is an additional element that is insignificant extra-solution activity. For example, “storing” and “transmitting” in the context of this claim encompasses mere data gathering. See MPEP 2106.05(g).
Additionally, one or more of the claims recite the following additional elements:
Client devices (Claims 1, 13),
Server machine (Claims 1, 11, 18, 20),
a non-transitory computer readable medium (Claims 11-19), and
processor (Claims 11, 20)
memories (Claim 20).
These additional elements are recited at a high level of generality (i.e. as generic computer components) such that they amount to no more than components comprising mere instructions to apply the exception. Accordingly, these additional elements do not integrate the abstract idea(s) into a practical application because they do not impose any meaningful limits on practicing the abstract idea(s).
Step 2B: Does the claim recite additional elements that amount to significantly more than the judicial exception?
No.
As discussed above with respect to integration of the abstract idea(s) into a practical application, the aforementioned additional elements amount to no more than components comprising mere instructions to apply the exception. Mere instructions to apply an exception using generic computer components cannot provide an inventive concept.
Additionally, with regards to # 1 and #3 above, per MPEP 2106.05(d)(Il), the courts have recognized the following computer functions as well-understood, routine, and conventional functions when they are claimed in a merely generic manner (e.g., at a high level of generality) or as insignificant extra-solution activity:
i. Receiving or transmitting data over a network, e.g., using the Internet to gather data, Symantec, 838 F.3d at 1321, 120 USPQ2d at 1362 (utilizing an intermediary computer to forward information); TLI Communications LLC v. AV Auto. LLC, 823 F.3d 607, 610, 118 USPQ2d 1744, 1745 (Fed. Cir. 2016) (using a telephone for image transmission); OIP Techs., Inc., v. Amazon.com, Inc., 788 F.3d 1359, 1363, 115 USPQ2d 1090, 1093 (Fed. Cir. 2015) (sending messages over a network); buySAFE, Inc. v. Google, Inc., 765 F.3d 1350, 1355, 112 USPQ2d 1093, 1096 (Fed. Cir. 2014) (computer receives and sends information over a network).
Claims 2 and 12 merely further describes the claimed context information of Claims 1 and 11, respectively.
Claims 3 and 14 merely further describes the claimed context information of Claims 1 and 11, respectively.
Claims 4 and 15 merely further describes the claimed context information of Claims 1 and 11, respectively.
Claim 5 merely further describes the claimed context information of Claim 1.
Claims 6 and 16 merely further describes the claimed software applications of Claims 1 and 11, respectively.
Claims 7 and 17 recites:
assigning a first importance level to the feedback log based on a first input; and
assigning a second importance level to the feedback log based on a second input.
Step 1: Is the claim to a process, machine, manufacture, or composition of matter?
Yes:
Claim 7 is a method.
Claim 17 is an article of manufacture.
Step 2A, Prong I: Does the claim recite an abstract idea, law of nature, or natural phenomenon?
Yes: (an) abstract idea(s).
The “assigning” limitations in # 4 and #5 above, as claimed and under broadest reasonable interpretation (BRI), are mental processes that covers performance of the limitation in the mind. For example, “assigning” in the context of this claim encompasses the person making an observation about data.
Claims 8 and 18 recite:
6. assigning a first importance level to the feedback log based on a first input; and
7. assigning a second importance level to the feedback log based on a second input.
Step 1: Is the claim to a process, machine, manufacture, or composition of matter?
Yes:
Claim 8 is a method.
Claim 18 is an article of manufacture.
Step 2A, Prong I: Does the claim recite an abstract idea, law of nature, or natural phenomenon?
Yes: (an) abstract idea(s).
The “assigning” limitation in # 6 above, as claimed and under broadest reasonable interpretation (BRI), is a mental process that covers performance of the limitation in the mind. For example, “assigning” in the context of this claim encompasses the person making an observation about data.
Step 2A, Prong II: Does the claim recite additional elements that integrate the judicial exception into a practical application?
No.
The ‘receive’ limitation in # 7 above, as claimed and under BRI, is an additional element that is insignificant extra-solution activity. For example, “receiving” in the context of this claim encompasses mere data gathering. See MPEP 2106.05(g).
Step 2B: Does the claim recite additional elements that amount to significantly more than the judicial exception?
No.
With regards to # 7 above, per MPEP 2106.05(d)(Il), the courts have recognized the following computer functions as well-understood, routine, and conventional functions when they are claimed in a merely generic manner (e.g., at a high level of generality) or as insignificant extra-solution activity:
i. Receiving or transmitting data over a network, e.g., using the Internet to gather data, Symantec, 838 F.3d at 1321, 120 USPQ2d at 1362 (utilizing an intermediary computer to forward information); TLI Communications LLC v. AV Auto. LLC, 823 F.3d 607, 610, 118 USPQ2d 1744, 1745 (Fed. Cir. 2016) (using a telephone for image transmission); OIP Techs., Inc., v. Amazon.com, Inc., 788 F.3d 1359, 1363, 115 USPQ2d 1090, 1093 (Fed. Cir. 2015) (sending messages over a network); buySAFE, Inc. v. Google, Inc., 765 F.3d 1350, 1355, 112 USPQ2d 1093, 1096 (Fed. Cir. 2014) (computer receives and sends information over a network).
Claim 9 merely further describes the claimed multimedia content of Claim 1.
Claim 10 recites:
8. storing the feedback log within a log archive; and
9. generating a user interface for interacting with and displaying the feedback log.
Step 1: Is the claim to a process, machine, manufacture, or composition of matter?
Yes: a method.
Step 2A, Prong I: Does the claim recite an abstract idea, law of nature, or natural phenomenon?
Yes: (an) abstract idea(s). There is no change to the abstract idea(s) of independent Claim 1.
Step 2A, Prong II: Does the claim recite additional elements that integrate the judicial exception into a practical application?
No.
The ‘storing’ limitation in # 8 and ‘generating’ limitation in #9 above, as claimed and under BRI, is an additional element that is insignificant extra-solution activity. For example, “storing” in the context of this claim encompasses mere data gathering. See MPEP 2106.05(g).
Step 2B: Does the claim recite additional elements that amount to significantly more than the judicial exception?
No.
With regards to # 8 and # 9 above, per MPEP 2106.05(d)(Il), the courts have recognized the following computer functions as well-understood, routine, and conventional functions when they are claimed in a merely generic manner (e.g., at a high level of generality) or as insignificant extra-solution activity:
i. Receiving or transmitting data over a network, e.g., using the Internet to gather data, Symantec, 838 F.3d at 1321, 120 USPQ2d at 1362 (utilizing an intermediary computer to forward information); TLI Communications LLC v. AV Auto. LLC, 823 F.3d 607, 610, 118 USPQ2d 1744, 1745 (Fed. Cir. 2016) (using a telephone for image transmission); OIP Techs., Inc., v. Amazon.com, Inc., 788 F.3d 1359, 1363, 115 USPQ2d 1090, 1093 (Fed. Cir. 2015) (sending messages over a network); buySAFE, Inc. v. Google, Inc., 765 F.3d 1350, 1355, 112 USPQ2d 1093, 1096 (Fed. Cir. 2014) (computer receives and sends information over a network).
Claim 13 merely further describe the claimed operating system and software applications of Claim 12.
Claim 19 merely further describe the claimed context information of Claim 11.
For at least the reasoning provided above, Claims 1-20 are patent ineligible.
Claim Rejections - 35 USC § 102
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale or otherwise available to the public before the effective filing date of the claimed invention.
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
Claims 1-20 are rejected under 35 U.S.C. 102(a)(1) and 35 U.S.C. 102(a)(2) as being anticipated by Ergan et al., (U.S. Patent Publn Num.: 2010/0229112 A1), hereinafter Ergan.
Regarding claim 1, Ergan teaches:
A computer-implemented method for generating feedback for software executing on client devices (Ergan, Abstract, Fig. 1 client user devices 110, paragraph 0036 “Alternatively or additionally, the tool may be used as part of an error reporting system that aggregates error reports from multiple user devices to identify problems with software or other components of those devices. In such an embodiment, reports of problems for multiple user devices may be aggregated on back end server 130.”), the method comprising:
storing context information associated with one or more software applications within a context data structure (Ergan, paragraphs 0063-0067, paragraph 0065 teaches “obtain context information about user actions” and paragraph 0064 teaches that the Notepad application has the context information that paragraph 0067 teaches is stored in event log [i.e. context data structure]. Fig. 4, paragraphs 0088-0090 teaches an event record 400 in the event log 235 for software application with program id 411 and window title 413);
generating a feedback log that is populated with at least a portion of the context information stored within the context data structure (Ergan, paragraphs 0029-0030 “Upon occurrence of the stop event, the tool then creates a report containing an event record from recorded user interactions. …The user may review the report to provide annotations or ensure that any information the user does not wish to share has been removed by the tool [i.e. feedback log].” Paragraph 0068 teaches filtering of log information based on user input to generate the feedback log “only a subset of events associated with user interactions with user device 110 may be recorded in event log 235. In such an embodiment, logger 234 may implement a filtering function. The filtering may be based on session parameters or other suitable criteria. The criteria may be provided through user input”); and
transmitting the feedback log to a server machine (Ergan, Figs. 1, 7A-7B, user device 110 performs client side process 750 shown in Fig. 7B that is shown in Fig. 7A as 720 . In Fig. 7B, the user device 110 Creates report 777 and Transmit report 778 to Fig. 7A Receive report 722. Fig. 7A blocks 722-728 occur on backend server 130. See description of Figures 7A-7B in paragraphs 0096-0118).
Regarding dependent claim 2, Ergan teaches further comprising querying an operating system for the context information associated with the one or more software applications (Ergan, Fig. 2, User Device Operating System 240 and paragraph 0046 “an operating system 240 on user device 110 may relate specific user actions in the context of the graphical user interface to specific functions.” Paragraph 0060 “ functions and other components within operating system 240 may be instrumented with event tracing function calls at entry and exit points of those components. The event tracing functions may, when called, record an event in an event stream. Such an event stream, therefore, provides information about the timing and order of events that occur during operating of user device 110.” See also paragraphs 0063-0065).
Regarding dependent claim 3, Ergan teaches wherein the at least a portion of the context information populating the feedback log includes context information that was stored within the context data structure for at least a predetermined amount of time (Ergan, paragraphs 0063-0067, paragraph 0066 teaches “until completion of the recording session.” Paragraph 0067 teaches different recording scenarios that requires logging information to be stored in event log for a period of time. Fig. 7B, block 775 shows “Record to event log” that continues to record new events in loop for No selection in block 776 so context information is stored in context data structure for at least a predetermined amount of time).
Regarding dependent claim 4, Ergan teaches wherein the context information includes at least one of an application name, window title, an execution start time, or an execution stop time (Ergan, paragraph 0063-0065 teaches application name “Notepad” and see also Fig. 4A and description of Fig. 4A, paragraphs 0088-0090).
Regarding dependent claim 5, Ergan teaches wherein the context information includes at least one command executed by at least one software application (Ergan, paragraph 0029 “The tool records user interactions, including input events such as mouse and keyboard commands and metadata about the objects within a graphical user interface with which these interactions occur.” Paragraph 0061 “a mouse click in the context of a user interface may indicate a user selection of a specific command to be performed by an executing application program.”).
Regarding dependent claim 6, Ergan teaches wherein the one or more software applications include at least a primary application and a secondary application that interact to perform a task (Ergan, Fig. 2, Operating System 240 [i.e. primary application] executes applications 250 [i.e. secondary application that interact to perform a task] as taught in paragraphs 0048-0049).
Regarding dependent claim 7, Ergan teaches further comprising:
assigning a first importance level to the feedback log based on a first input (Ergan, paragraphs 0068 teaches “logger 234 may implement a filtering function. The filtering may be based on … suitable criteria. The criteria may be provided through user input [i.e. first input] …. Regardless of the specific filtering criteria used…, information on events meeting the criteria [i.e. criteria is first importance level] is stored in event log 235.” See also paragraph 0133 “statistically significant …patterns of user interactions leading up to the user experiencing the particular problem type may be identified.”); and
assigning a second importance level to the feedback log based on a second input (Ergan, paragraph 0068 teaches “logger 234 may implement a filtering function. The filtering may be based on … suitable criteria. The criteria may be provided through user input [i.e. second input] …. Regardless of the specific filtering criteria used…, information on events meeting the criteria [i.e. criteria is second importance level] is stored in event log 235.” See also paragraph 0133 “statistically significant …patterns of user interactions leading up to the user experiencing the particular problem type may be identified.”).
Regarding dependent claim 8, Ergan teaches further comprising:
assigning an importance level to the feedback log indicating that a log response has been requested for the feedback log (Ergan, paragraph 0068 [i.e. importance level] and paragraphs 0030-0031 “The report may then be analyzed and/or shared with a technical support staff or others who may be able to help the user identify and solve the problem encountered. Alternatively or additionally, the report may be sent to a server where it is analyzed in connection with other reports received from other users.”); and
receiving the log response for the feedback log from a server machine (Ergan, paragraph 0031 “Having identified the problem, the back end server may then search an appropriate database for a solution to the problem. After a solution is identified it may be provided to the user.”).
Regarding dependent claim 9, Ergan teaches further comprising storing multimedia content in the feedback log, wherein the multimedia content comprises at least one of audio content, image content, or video content (Ergan, paragraphs 0074-0077 “recording tool 230 …record screen shots in association with some or all of the user interactions. …” Logger captures screen shots i.e. image content that compressor stores into feedback log/report, see paragraph 0079, 0082).
Regarding dependent claim 10, Ergan teaches further comprising:
storing the feedback log within a log archive (Ergan, paragraphs Fig. 8, database 810 and Fig. 9, paragraphs 0135-0138 “Receive reports” 902, “Aggregate reports” 904, “Detect patterns” 906 “Update database” 908 ); and
generating a user interface for interacting with and displaying the feedback log (Ergan, paragraphs 0081-0083 “UI event file may be reviewed by a user. The recording tool may display the UI event file in a graphical user interface (GUI) that enables the user to ensure that any personal information which the user does not wish to share has been removed. Additionally, the user may wish to provide additional comments and annotations to the UI event file. … The user may add general annotations explaining what the user was trying to accomplish when performing the sequence of user interactions.”).
Regarding claim 11, Ergan teaches:
One or more non-transitory computer-readable media including instructions (Ergan, paragraph 0044 “Memory 204 may be any suitable type of computer readable storage medium such as, for example and not limitation, RAM…floppy disks, …volatile and non-volatile memory devices …or other tangible computer storage medium.”) that, when executed by one or more processors, cause the one or more processors to perform the steps of (Ergan, paragraph 0044 “Memory 204 may store software modules that when executed by processor 202 perform a desired function.”):
storing context information associated with one or more software applications within a context data structure (Ergan, paragraphs 0063-0067, paragraph 0065 teaches “obtain context information about user actions” and paragraph 0064 teaches that the Notepad application has the context information that paragraph 0067 teaches is stored in event log [i.e. context data structure]. Fig. 4, paragraphs 0088-0090 teaches an event record 400 in the event log 235 for software application with program id 411 and window title 413);
generating a feedback log that is populated with at least a portion of the context information stored within the context data structure (Ergan, paragraphs 0029-0030 “Upon occurrence of the stop event, the tool then creates a report containing an event record from recorded user interactions. …The user may review the report to provide annotations or ensure that any information the user does not wish to share has been removed by the tool [i.e. feedback log].” Paragraph 0068 teaches filtering of log information based on user input to generate the feedback log “only a subset of events associated with user interactions with user device 110 may be recorded in event log 235. In such an embodiment, logger 234 may implement a filtering function. The filtering may be based on session parameters or other suitable criteria. The criteria may be provided through user input”); and
transmitting the feedback log to a server machine (Ergan, Figs. 1, 7A-7B, user device 110 performs client side process 750 shown in Fig. 7B that is shown in Fig. 7A as 720 . In Fig. 7B, the user device 110 Creates report 777 and Transmit report 778 to Fig. 7A Receive report 722. Fig. 7A blocks 722-728 occur on backend server 130. See description of Figures 7A-7B in paragraphs 0096-0118).
Claims 12, 14-18, the article of manufacture that implement the method of claims 2-4, 6-8, respectively, are rejected on the same grounds as claims 2-4, 6-8, respectively.
Regarding dependent claim 13, Ergan teaches wherein the operating system and the one or more software applications execute on a first client machine (Ergan, Fig. 2, Operating system 240 and Applications 250 execute on user device 110).
Regarding dependent claim 19, Ergan teaches wherein the context information is stored within the context data structure in response to a first input that comprises at least one of a cursor-based input, a desktop region-based input, a button-based input, a keyboard-based input, or a natural-based input (Ergan, paragraph 0029 “The tool records user interactions, including input events such as mouse and keyboard commands and metadata about the objects within a graphical user interface with which these interactions occur.” Paragraph 0061 “the event stream can indicate that a user activated a control button on a mouse …a mouse click in the context of a user interface may indicate a user selection of a specific command to be performed by an executing application program.”).
Regarding claim 20, Ergan teaches:
A system (Ergan, Abstract, Figs. 1-2), comprising:
one or more memories that store instructions (Ergan, paragraph 0044 “Memory 204 may be any suitable type of computer readable storage medium such as, for example and not limitation, RAM…floppy disks, …volatile and non-volatile memory devices …or other tangible computer storage medium.”); and
one or more processors that are coupled to the one or more memories and, upon executing the instructions, are configured to perform the steps of (Ergan, paragraph 0044 “Memory 204 may store software modules that when executed by processor 202 perform a desired function.”):
storing context information associated with one or more software applications within a context data structure (Ergan, paragraphs 0063-0067, paragraph 0065 teaches “obtain context information about user actions” and paragraph 0064 teaches that the Notepad application has the context information that paragraph 0067 teaches is stored in event log [i.e. context data structure]. Fig. 4, paragraphs 0088-0090 teaches an event record 400 in the event log 235 for software application with program id 411 and window title 413);
generating a feedback log that is populated with at least a portion of the context information stored within the context data structure (Ergan, paragraphs 0029-0030 “Upon occurrence of the stop event, the tool then creates a report containing an event record from recorded user interactions. …The user may review the report to provide annotations or ensure that any information the user does not wish to share has been removed by the tool [i.e. feedback log].” Paragraph 0068 teaches filtering of log information based on user input to generate the feedback log “only a subset of events associated with user interactions with user device 110 may be recorded in event log 235. In such an embodiment, logger 234 may implement a filtering function. The filtering may be based on session parameters or other suitable criteria. The criteria may be provided through user input”); and
transmitting the feedback log to a server machine (Ergan, Figs. 1, 7A-7B, user device 110 performs client side process 750 shown in Fig. 7B that is shown in Fig. 7A as 720 . In Fig. 7B, the user device 110 Creates report 777 and Transmit report 778 to Fig. 7A Receive report 722. Fig. 7A blocks 722-728 occur on backend server 130. See description of Figures 7A-7B in paragraphs 0096-0118).
Conclusion
The prior art made of record in Form PTO-892 and not relied upon is considered pertinent to Applicants’ disclosure. Applicants are required under 37 C.F.R. § 1.111(c) to consider these references fully when responding to this action.
Hinton et al. (U.S. Patent Publn. No. 2021/0055943 A1) teaches an automation application executes on a computing device and accesses a macro for a target application. The macro has been generated based upon a sequence of inputs from a user received by the target application that causes the target application to perform an action, screen states of the target application as the target application receives the sequence of inputs from the user, operating system processes that are performed by an operating system as the target application receive the sequence of inputs from the user, and evidence events representing information obtained from the operating system processes. The automation application executes the macro, wherein executing the macro causes the automation application to mimic the sequence of inputs to the target application, thereby causing the target application to perform the action.
It is noted that any citation to specific pages, columns, lines, or figures in the prior art references and any interpretation of the references should not be considered to be limiting in any way. A reference is relevant for all it contains and may be relied upon for all that it would have reasonably suggested to one having ordinary skill in the art. In re Heck, 699 F.2d 1331, 1332-33, 216 U.S.P.Q. 1038, 1039 (Fed. Cir. 1983) (quoting In re Lemelson, 397 F.2d 1006, 1009, 158 U.S.P.Q. 275, 277 (C.C.P.A. 1968)).
In the interests of compact prosecution, Applicants are invited to contact the examiner via electronic media pursuant to USPTO policy outlined MPEP § 502.03. All electronic communication must be authorized in writing. Applicants may wish to file an Internet Communications Authorization Form PTO/SB/439. Applicants may wish to request an interview using the Interview Practice website: http://www.uspto.gov/patent/laws-and-regulations/interview-practice.
Applicants are reminded Internet e-mail may not be used for communication for matters under 35 U.S.C. § 132 or which otherwise require a signature. A reply to an Office action may NOT be communicated by Applicants to the USPTO via Internet e-mail. If such a reply is submitted by Applicants via Internet e-mail, a paper copy will be placed in the appropriate patent application file with an indication that the reply is NOT ENTERED. See MPEP § 502.03(II).
Any inquiry concerning this communication or earlier communications from the examiner should be directed to INDRANIL CHOWDHURY whose telephone number is (571)272-0446. The examiner can normally be reached on M-Fri 9:30-7:00 EST.
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, Ashish Thomas can be reached on 571-272-0631. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/INDRANIL CHOWDHURY/Examiner, Art Unit 2114
/MARK D FEATHERSTONE/Supervisory Patent Examiner, Art Unit 2111