Method, system and computer program product for iterative distributed problem solving
First Claim
1. A method for automated technical support over the internet between a client machine and at least one server located remotely from the client machine, comprising:
- generating a notification of a failure at the client machine;
receiving at the server the notification of the failure from the client machine;
identifying the failure at the server;
identifying data for resolution of the failure at the server;
forwarding the data for resolution to the client machine;
if the failure cannot be identified, determining if an interaction with a service technician is required; and
if the interaction with the service technician is required, establishing a connection between a user of the client machine and the service technician; and
if the interaction with the service technician is not required, collecting a plurality of data sets from the client machine, and analyzing the plurality of data sets at the server to identify the failure, wherein the collecting the plurality of data sets further comprises generating a diagnostic map at the server, executing the diagnostic map at the client machine to generate one of the data sets, forwarding the data set from the client machine to the server for analysis, if the failure is not identified, generating a refined version of prior diagnostic map, and iteratively repeating steps of generating the diagnostic map, executing, forwarding and generating the refined version of prior diagnostic map until the failure is identified.
12 Assignments
0 Petitions
Accused Products
Abstract
A method, system and computer program product for automated technical support in a computer network having a client machine and at least one server. The method begins by selecting a diagnostic map useful in gathering diagnostic data for evaluating a given technical problem requiring diagnosis and correction. The diagnostic map encapsulates a set of one or more methods that, upon execution, explore the client machine and gather data. The diagnostic map is then executed by a diagnostic engine to generate a data set indicative of a current operating state of the client machine. This data set is forwarded from the client machine to the server for analysis. Based on the analysis performed at the server node, the data gathering process is repeated at the client machine, iteratively, until given information is available to a user of the client machine to correct the given technical problem.
166 Citations
16 Claims
-
1. A method for automated technical support over the internet between a client machine and at least one server located remotely from the client machine, comprising:
-
generating a notification of a failure at the client machine;
receiving at the server the notification of the failure from the client machine;
identifying the failure at the server;
identifying data for resolution of the failure at the server;
forwarding the data for resolution to the client machine;
if the failure cannot be identified, determining if an interaction with a service technician is required; and
if the interaction with the service technician is required, establishing a connection between a user of the client machine and the service technician; and
if the interaction with the service technician is not required, collecting a plurality of data sets from the client machine, and analyzing the plurality of data sets at the server to identify the failure, wherein the collecting the plurality of data sets further comprises generating a diagnostic map at the server, executing the diagnostic map at the client machine to generate one of the data sets, forwarding the data set from the client machine to the server for analysis, if the failure is not identified, generating a refined version of prior diagnostic map, and iteratively repeating steps of generating the diagnostic map, executing, forwarding and generating the refined version of prior diagnostic map until the failure is identified. - View Dependent Claims (2)
storing the plurality of data sets received from the client machines in a repository at the server;
using the plurality of data sets stored in the repository at the server to generate the refined diagnostic map;
storing the refined diagnostic map in the repository; and
using information in the repository to resolve other failures.
-
-
3. A method for automated technical support in a computer network having a plurality of client machines and at least one server node, comprising:
-
generating a notification of a failure at the client machine;
receiving at the server node the notification of the failure from one of the client machines;
identifying the failure at the server node;
identifying data for resolution of the failure at the server node;
forwarding the data for resolution to the client machine;
if the failure cannot be identified, determining if an interaction with a service technician is required, if the interaction with the service technician is required, establishing a connection between a user of the client machine and the service technician, if the interaction with the service technician is not required, collecting a plurality of data sets from the client machine, and analyzing the plurality of data sets at the server node to identify the failure, wherein the collecting the plurality of data sets further comprises generating a diagnostic map at the server node, executing the diagnostic map at the client machine to generate one of the data sets, forwarding the data set from the client machine to the server node for analysis, if the failure is not identified, generating a refined version of prior diagnostic map, and iteratively repeating steps of generating the diagnostic map, executing, forwarding and generating the refined version of prior diagnostic map until the failure is identified. - View Dependent Claims (4)
storing the plurality of data sets received from the client machines in a repository at the server node;
using the plurality of data sets stored in the repository at the server node to generate the refined diagnostic map;
storing the refined diagnostic map in the repository at the server node; and
using information in the repository at the server node to resolve other failures.
-
-
5. A computer program product encoded in computer readable media for automated technical support in a networking environment between a client machine and a least one server located remotely from the client machine, the computer program product comprising a set of instructions to:
-
generate a notification of a failure at the client machine;
receive at the server the notification of the failure from the client machine;
identify the failure at the server;
identify data for resolution of the failure at the server;
forward the data for resolution to the client machine;
if the failure cannot be identified, determine if an interaction with a service technician is required, if the interaction with the service technician is required, establish a connection between a user of the client machine and the service technician, if the interaction with the service technician is not required, collect a plurality of data sets from the client machine, and analyze the plurality of data sets at the server to identify the failure, wherein the set of instructions configured to collect the plurality of data sets is further configured to generate a diagnostic map at the server, execute the diagnostic map at the client machine to generate one of the data sets, forward the data set to the server for analysis, if the failure is not identified, generating a refined version of prior diagnostic map, and iteratively repeating steps of generating the diagnostic map, executing, forwarding and generating the refined version of prior diagnostic map until the failure is identified. - View Dependent Claims (6, 7, 8)
store the plurality of data sets received from the client machines in a repository at the server; use the plurality of data sets stored in the repository at the server to generate the refined diagnostic map;
store the refined diagnostic map in the repository; and
use information in the repository to resolve other failures.
-
-
7. The computer program product of claim 5, wherein the diagnostic map is executable in a networking environment at the client machine.
-
8. The computer program product of claim 5, wherein the set of instructions is further configured to
generate the notification of the failure upon happening of a predetermined event at the client machine.
-
9. A system for automated technical support in a networking environment between a client machine and at least one server located remotely from the client machine, comprising:
-
a monitoring engine executable in a networking environment at the client machine, the monitoring engine configured to monitor operating states of the client machine, generate a notification of a failure at the client machine, and forward the notification of the failure to the server;
a diagnostic engine executable at the server configured to receive the notification of the failure from the client machine, identify the failure, identify data for resolution of the failure, and forward the data for resolution to the client machine;
if the failure cannot be identified, determine if an interaction with a service technician is required, if the interaction with the service technician is required, establish a connection between a user of the client machine and the service technician, and if the interaction with the service technician is not required, collect a plurality of data sets from the client machine, analyze the plurality of data sets at the server to identify the failure, generate a diagnostic map, forward the diagnostic map to the monitoring engine at the client machine to execute the diagnostic map at the client machine to generate one of the data sets, receive the data set from the monitoring engine at the client machine for analysis, and if the failure is not identified during the analysis, generate a refined version of prior diagnostic map, and iteratively repeat steps of generating the diagnostic map, executing, forwarding and generating the refined version of prior diagnostic map until the failure is identified. - View Dependent Claims (10)
store the plurality of data sets received from the client machines in a repository at the server; use the plurality of data sets stored in the repository at the server to generate the refined diagnostic map;
store the refined diagnostic map in the repository; and
use information in the repository to resolve other failures.
-
-
11. An automated technical support system for a computer network having a client machine connectable over internet to a server comprising:
-
means for generating a notification of a failure at the client machine;
means for receiving at the server the notification of the failure from the client machine;
means for identifying the failure at the server;
means for identifying data for resolution of the failure at the server; and
means for forwarding the data for resolution to the client machine;
means for determining if an interaction with a service technician is required when the failure cannot be identified;
means for establishing a connection between a user of the client machine and the service technician if the interaction with the service technician is required;
means for collecting a plurality of data sets from the client machine when the interaction with the service technician is not required; and
means for analyzing the plurality of data sets at the server to identify the failure, wherein the means for collecting the plurality of data sets further comprises means for generating a diagnostic map at the server, means for executing the diagnostic map at the client machine to generate one of the data sets, means for forwarding the data set from the client machine to the server for analysis, means for generating a refined version of prior diagnostic map if the failure not identified, and means for iteratively repeating steps of generating the diagnostic map, executing, forwarding and generating the refined version of prior diagnostic map until the failure is identified. - View Dependent Claims (12)
means for storing the plurality of data sets received from the client machines in a repository at the server;
means for using the plurality of data sets stored in the repository at the server to generate the refined diagnostic map;
means for storing the refined diagnostic map in the repository; and
means for using information in the repository to resolve other failures.
-
-
13. A monitoring engine for a system for automated technical support in a networking environment between a client machine and at least one server located remotely from the client machine, the monitoring engine executable in a networking environment at the client machine, comprising:
-
means for monitoring operating states of the client machine, means for generating a notification of a failure at the client machine, and means for forwarding the notification of the failure to the server;
when an interaction with a service technician is required, means for responding to a request for a connection between a user of the client machine and the service technician, and means for establishing the connection at the client machine between the user of the client machine and the service technician;
when the interaction with the service technician is not required, means for collecting a plurality of data sets from the client machine, and means for forwarding the plurality of data sets to the server to identify the failure, means for receiving a diagnostic map from the server, means for executing the diagnostic map at the client machine to generate one of the data sets, means for forwarding the data set to the server for analysis, and when the failure is not identified by the server during the analysis, means for receiving a refined version of prior diagnostic map, and means for iteratively repeating steps of receiving the diagnostic map, executing, forwarding and receiving the refined version of prior diagnostic map until the failure is identified. - View Dependent Claims (14)
the plurality of data set represent a plurality of operating states of the client machines; the diagnostic map comprises a plurality of methods to generate the data set at the client machine; and
the diagnostic map is customized to the failure.
-
-
15. A diagnostic engine for a system for automated technical support in a networking environment between a client machine with a monitoring engine executable in the networking environment and at least one server located remotely from the client machine, the diagnostic engine comprises:
-
means for receiving a notification of a failure from the client machine, means for identifying the failure, means for identifying data for resolution of the failure, and means for forwarding the data for resolution to the client machine;
when the failure cannot be identified, means for determining whether an interaction with a service technician is required, when the interaction with the service technician is required, means for establishing a connection between a user of the client machine and the service technician, when the interaction with the service technician is not required, means for collecting a plurality of data sets from the client machine, means for analyzing the plurality of data sets at the server to identify the failure, means for generating a diagnostic map, means for forwarding the diagnostic map to the client machine to execute the diagnostic map at the client machine to generate one of the data sets, means for receiving the data set from the client machine for analysis, and when the failure is not identified during the analysis, means for generating a refined version of prior diagnostic map, and means for iteratively repeating steps of generating the diagnostic map, forwarding, receiving and generating the refined version of prior diagnostic map until the failure is identified. - View Dependent Claims (16)
means for storing the plurality of data sets received from the client machines in a repository at the server;
means for using the plurality of data sets stored in the repository at the server to generate the refined diagnostic map;
means for storing the refined diagnostic map in the repository; and
means for using information in the repository to resolve other failures.
-
Specification