# US 12,184,516 B2 · User lifecycle journey and asset data based bot skill selection

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,184,516 B2
- Document ID: US12184516B2
- Status: Granted
- Kind: B2
- Application number: 17/869,085
- Filed: 2022-07-20
- Published: 2024-01-25
- Granted: 2024-12-31
- Earliest claimed: 2022-07-20
- Assignees: Cisco Technology, Inc.
- Applicants: Cisco Technology, Inc.
- Inventors: Chidambaram Arunachalam; David C. White, Jr.
- Web page: https://patentgrep.com/patent/US12184516B2

## CPC

- H04L 41/5074: Handling of user complaints or trouble tickets
- G06F 40/30: Semantic analysis
- H04L 51/02: using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A method is provided that is performed by a computer-implemented user support bot. The method includes obtaining from a user a support request related to software and/or hardware used, or to be used, by the user; obtaining user lifecycle journey information that tracks deployment, adoption and/or use by the user of the software and/or hardware; determining a user intent for the support request based on the user lifecycle journey information when there is ambiguity as to the user intent based solely on the support request; and providing a response to the support request based on the user intent.

## Claims

### Claim 1

A method performed by a computer-implemented user support bot, the method comprising:
obtaining, from a user, a support request related to software and/or hardware used in an enterprise network, or to be used in the enterprise network, by the user;
determining a user intent for the support request based on the support request;
based on determining that an ambiguity is present with respect to the user intent,
obtaining user lifecycle journey information including a particular stage of a plurality of stages that include a deployment stage of the software and/or hardware, an adoption stage of the software and/or hardware, and an in-use stage of the software and/or hardware, wherein the particular stage is a current stage for the hardware and/or the software in the enterprise network; and
determining the user intent for the support request based on the support request and the particular stage for the hardware and/or the software; and
providing a response to the support request based on the user intent.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
obtaining, from the software and/or hardware, metadata identifying a state of the software and/or hardware including network topology, software upgrade, configurations recently made, and/or alerts made by the software and/or hardware,
wherein determining the user intent is further based on the metadata.

### Claim 3 (depends on 2)

The method of claim 2, wherein obtaining the metadata includes sending a command or application programming interface (API) request to the software and/or hardware to obtain, in response to the command or API request, information about the state of the software and/or hardware.

### Claim 4 (depends on 1)

The method of claim 1, wherein determining the user intent comprises:
selecting from a plurality of bot skill bundles, a particular bot skill bundle to answer the support request based on the particular stage of the software and/or hardware.

### Claim 5 (depends on 1)

The method of claim 1, further comprising:
based on the response, performing a configuration change on the software and/or hardware via a remote communication interaction from a support server.

### Claim 6 (depends on 1)

The method of claim 1, wherein the user support bot interprets the support request using text-based analysis.

### Claim 7 (depends on 1)

The method of claim 1, wherein the user lifecycle journey information further includes information associated with user interactions via a user support portal, including any online training sessions performed by the user.

### Claim 8 (depends on 1)

The method of claim 1, wherein the plurality of stages further include onboarding the software and/or hardware, implementing the software and/or hardware, and upgrading the software and/or hardware.

### Claim 9 (depends on 1)

The method of claim 1, wherein determining that the ambiguity is present with respect to the support request is based on a plurality of bot skill bundles matching the support request and determining the user intent when the ambiguity is present comprises:
obtaining additional context from the user lifecycle journey information, the additional context including a state of deployment for the hardware and/or software within the enterprise network of the user and a state of the user within the enterprise network; and
selecting, from the plurality of bot skill bundles that include a training management skill bundle, a certificate skill bundle and a network management skill bundle, a particular bot skill bundle to answer the support request based on the particular stage of the software and/or hardware, based on the additional context.

### Claim 10 (depends on 1)

The method of claim 1, wherein the plurality of stages further include an optimization stage in which performance of the hardware and/or software of the enterprise network is improved using optimization rules with parameters related to security and transport mechanisms.

### Claim 11

An apparatus comprising:
a network interface that communicates with software and/or hardware used in an enterprise network, or to be used in the enterprise network by, a user; and
at least one processor coupled to the network interface, the at least one processor executing one or more computer programs for a user support bot, and that perform operations including:
obtaining, from the user, a support request related to the software and/or hardware used in the enterprise network, or to be used in the enterprise network, by the user;
determining a user intent for the support request based on the support request;
based on determining that an ambiguity is present with respect to the user intent,
obtaining user lifecycle journey information including a particular stage of a plurality of stages that include a deployment stage of the software and/or hardware, an adoption stage of the software and/or hardware, and an in-use stage of the software and/or hardware, wherein the particular stage is a current stage for the hardware and/or the software in the enterprise network, and;
determining the user intent for the support request based on the support request and the particular stage for the hardware and/or the software; and
providing a response to the support request based on the user intent.

### Claim 12 (depends on 11)

The apparatus of claim 11, wherein the at least one processor executes the one or more computer programs to further perform:
obtaining from the software and/or hardware, metadata identifying a state the software and/or hardware including network topology, software upgrade, configurations recently made, and/or alerts made by the software and/or hardware,
wherein determining the user intent is further based on the metadata.

### Claim 13 (depends on 12)

The apparatus of claim 12, wherein obtaining the metadata includes sending a command or application programming interface (API) request to the software and/or hardware to obtain, in response to the command or API request, information about the state of the software and/or hardware.

### Claim 14 (depends on 11)

The apparatus of claim 11, wherein determining the user intent comprises:
selecting from a plurality of bot skill bundles, a particular bot skill bundle to answer the support request based on the particular stage of the software and/or hardware.

### Claim 15 (depends on 11)

The apparatus of claim 11, wherein the at least one processor executes the one or more computer programs to further perform:
based on the response, providing a command that causes a configuration change on the software and/or hardware via a remote communication interaction.

### Claim 16 (depends on 11)

The apparatus of claim 11, wherein the user support bot interprets the support request using text-based analysis.

### Claim 17 (depends on 11)

The apparatus of claim 11, wherein the user lifecycle journey information further includes information associated with user interactions via a user support portal, including any online training sessions performed by the user.

### Claim 18

One or more non-transitory computer readable media encoded with software instructions that, when executed by a processor of a support server that provides a computer-implemented user support bot, cause the support server to perform operations including:
obtaining from a user a support request related to software and/or hardware used in an enterprise network, or to be used in the enterprise network, by the user;
determining a user intent for the support request based on the support request;
based on determining that an ambiguity is present with respect to the user intent,
obtaining user lifecycle journey information including a particular stage of a plurality of stages that include a deployment stage of the software and/or hardware, an adoption stage of the software and/or hardware, and an in-use stage of the software and/or hardware, wherein the particular stage is a current stage of the hardware and/or the software in the enterprise network, and
determining the user intent for the support request based on the support request and the particular stage for the hardware and/or the software; and
providing a response to the support request based on the user intent.

### Claim 19 (depends on 18)

The one or more non-transitory computer readable media of claim 18, further comprising software instructions that, when executed by the processor of the support server, cause the support server to further perform:
obtaining from the software and/or hardware, metadata identifying a state of the software and/or hardware including network topology, software upgrade, configurations recently made, and/or alerts made by the software and/or hardware,
wherein determining the user intent is further based on the metadata.

### Claim 20 (depends on 18)

The one or more non-transitory computer readable media of claim 18, wherein determining the user intent comprises:
selecting from a plurality of bot skill bundles, a particular bot skill bundle to answer the support request based on the particular stage of the software and/or hardware.
