Skip to content

Commit

Permalink
fix(watsonx): updating to using watsonx branding (#64)
Browse files Browse the repository at this point in the history
  • Loading branch information
ethanwinters authored Oct 6, 2023
1 parent 60ce860 commit 6f6154b
Show file tree
Hide file tree
Showing 16 changed files with 44 additions and 44 deletions.
12 changes: 6 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
# Web chat service desk extension starter

This repo provides a set of example and starter kit service desk integrations for use with Watson Assistant web chat – to allow end-users on web chat to escalate to a human agent. We provide starter kits to common live agent platforms, like Genesys Cloud, and also show you how to build custom integrations to other platforms.
This repo provides a set of example and starter kit service desk integrations for use with watsonx Assistant web chat – to allow end-users on web chat to escalate to a human agent. We provide starter kits to common live agent platforms, like Genesys Cloud, and also show you how to build custom integrations to other platforms.

## Overview

This repo provides an example development and production build environment as well as code examples for adding your own client-side service desk integration with web chat for Watson Assistant. You can use the tools in this repo to build an independently deployable JavaScript bundle of your integration, or you can copy the example code into your own application for build and deployment. These integrations can be shared between teams and also can be submitted as potential contributions to the main web chat project. If you're interested in contributing to this project or proposing that your integration be offered in Watson Assistant, see [CONTRIBUTING.md](./CONTRIBUTING.md).
This repo provides an example development and production build environment as well as code examples for adding your own client-side service desk integration with web chat for watsonx Assistant. You can use the tools in this repo to build an independently deployable JavaScript bundle of your integration, or you can copy the example code into your own application for build and deployment. These integrations can be shared between teams and also can be submitted as potential contributions to the main web chat project. If you're interested in contributing to this project or proposing that your integration be offered in watsonx Assistant, see [CONTRIBUTING.md](./CONTRIBUTING.md).

**Important:** This is an open source project of example implementations to help people get started on their own custom code. Any custom code used with Watson Assistant is the responsibility of the developer and is not covered by IBM support. If you find a bug in these examples, please submit a pull request with a fix. See [CONTRIBUTING.md](./CONTRIBUTING.md).
**Important:** This is an open source project of example implementations to help people get started on their own custom code. Any custom code used with watsonx Assistant is the responsibility of the developer and is not covered by IBM support. If you find a bug in these examples, please submit a pull request with a fix. See [CONTRIBUTING.md](./CONTRIBUTING.md).

To find out if your company's tool is feasible for this approach, check out our Adoption Guide [here](./docs/ADOPTION_GUIDE.md). If you'd like some help to build an integration, [you can contact us](https://www.ibm.com/watson/assistant-integrations/?utm_medium=webchatbyosd).

Expand Down Expand Up @@ -68,16 +68,16 @@ This repo can be used as an isolated tool to build and test your integration wit

There are two basic types of integrations provided in this repo.

1. A seamless integration with the existing web chat UI. The user will use the web chat input field to send messages to an agent and messages from an agent will be displayed in the same message list along with messages from Watson Assistant. These integrations require fully implementing the service desk integration API provided by web chat.
2. A custom panel implementation embedding a 3rd party chat widget. The user will switch to a different panel where they will see a different UI created by a 3rd party. A different field from the standard web chat input field will generally be available and messages to and from the agent will be displayed in a separate view and not part of the messages from Watson Assistant. These integrations generally require a lot less code and only require embedding another existing widget into web chat, but can result in an inconsistent user or visual experience.
1. A seamless integration with the existing web chat UI. The user will use the web chat input field to send messages to an agent and messages from an agent will be displayed in the same message list along with messages from watsonx Assistant. These integrations require fully implementing the service desk integration API provided by web chat.
2. A custom panel implementation embedding a 3rd party chat widget. The user will switch to a different panel where they will see a different UI created by a 3rd party. A different field from the standard web chat input field will generally be available and messages to and from the agent will be displayed in a separate view and not part of the messages from watsonx Assistant. These integrations generally require a lot less code and only require embedding another existing widget into web chat, but can result in an inconsistent user or visual experience.

## Prerequisites

The scripts and some of the code in this repository rely on having [Node.js](https://nodejs.org/en/download/) installed but not all the custom service desks do if run on their own. Some of the example code may be copied into your own application without needing NodeJS. Refer to each service desk for more specific dependencies.

## Displaying the chat history to your human agent ("agent app")

Watson Assistant will pass configuration needed to display a chat history widget in your live agent application interface. This agent application will contain a copy of the conversation your customer had with Watson Assistant for your live agent to be able to view. Visit [the agent app documentation](https://web-chat.global.assistant.watson.cloud.ibm.com/docs.html?to=service-desks-custom-sd#agent-app) to learn more.
watsonx Assistant will pass configuration needed to display a chat history widget in your live agent application interface. This agent application will contain a copy of the conversation your customer had with watsonx Assistant for your live agent to be able to view. Visit [the agent app documentation](https://web-chat.global.assistant.watson.cloud.ibm.com/docs.html?to=service-desks-custom-sd#agent-app) to learn more.

## Development

Expand Down
4 changes: 2 additions & 2 deletions src/egain/webChat/README.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
# eGain ServiceDesk Integration Example

This is a functioning service desk integration between Watson Assistant and eGain's Advisor Desktop.
This is a functioning service desk integration between watsonx Assistant and eGain's Advisor Desktop.

**Important:** This is a reference implementation that provides an example of a fully functional integration. Make any necessary changes and perform robust testing before deploying this integration in production.

This reference implementation supports the core features of an eGain integration. If you want to customize or extend it to add more features, follow the procedure described in the [README](../../../README.md) for this repository.

## Overview

The integration example consists of client-side code that runs in the user's browser and manages the communication between the user and agent. This is an integration of eGain's Advisor Desktop with service desk API that is fully supported by the Watson Assistant web chat integration. (For more information about this API, see [ServiceDesk API](https://github.com/watson-developer-cloud/assistant-web-chat-service-desk-starter/blob/main/docs/API.md)).
The integration example consists of client-side code that runs in the user's browser and manages the communication between the user and agent. This is an integration of eGain's Advisor Desktop with service desk API that is fully supported by the watsonx Assistant web chat integration. (For more information about this API, see [ServiceDesk API](https://github.com/watson-developer-cloud/assistant-web-chat-service-desk-starter/blob/main/docs/API.md)).

## Prerequisites

Expand Down
14 changes: 7 additions & 7 deletions src/enghouse/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Enghouse Interactive CCaaS Integration Example

The **Enghouse CCaaS** integration enables integration between IBM Watson Assistant (WA) and Enghouse Interactive (EI) CCaaS tenants' live agents.
The **Enghouse CCaaS** integration enables integration between watsonx Assistant (WA) and Enghouse Interactive (EI) CCaaS tenants' live agents.

## Overview

Expand All @@ -12,9 +12,9 @@ The integration attempts to make it as simple as possible for Watson Assistance

The EI CCaaS integration consists of two main components: hosting web page and backend Contact Center platform . Below is client side component Architecture:

![EI CCaaS Watson Assistant Integration Architecture Overview](ibmWatson.jpg)
![EI CCaaS watsonx Assistant Integration Architecture Overview](ibmWatson.jpg)

The client-side component manages the communication between the user and the agent. It implements the service desk API that is fully supported by the Watson Assistant web chat integration. (For more information about this API, see [ServiceDesk API](https://github.com/watson-developer-cloud/assistant-web-chat-service-desk-starter/blob/main/docs/API.md)).
The client-side component manages the communication between the user and the agent. It implements the service desk API that is fully supported by the watsonx Assistant web chat integration. (For more information about this API, see [ServiceDesk API](https://github.com/watson-developer-cloud/assistant-web-chat-service-desk-starter/blob/main/docs/API.md)).

The communication uses the EI CustomChat widget component. This can be referenced using the EI CCaaS default page or a [hosting page](./client/watsonExample.html) can set the `watsonAssistantChatOptions` prior to loading the EnghouseCCaaSWatsonAssistant.js for more advanced features, e.g.:

Expand Down Expand Up @@ -98,10 +98,10 @@ If the Assistant URL provided to you by Enghouse Interactive was:

The complete list of parameters that may be passed to the standard EI CCaaS Watson page URL are:

- *integrationID* - Watson Assistant Integration ID
- *region* - Watson Assistant region
- *serviceInstanceID* - Watson Assistant Instance ID
- *subscriptionID* - Watson Assistant Subscription ID
- *integrationID* - watsonx Assistant Integration ID
- *region* - watsonx Assistant region
- *serviceInstanceID* - watsonx Assistant Instance ID
- *subscriptionID* - watsonx Assistant Subscription ID
- *ccName* - the display name of the contact centre, displayed prior to agent answering chat (default is "Contact Centre")
- *ccURL* - the URL-encoded "widget" URL. This may also be set (un-encoded) via the Dialog as the *CCURL* variable (overrides URL if both set).
- *agentIcon* - the URL-encoded URL of the agent icon (default is an Enghouse Interactive swirl logo). This may also be set (un-encoded) in the Dialog as the *AgentIcon* variable (overrides URL if both set).
Expand Down
2 changes: 1 addition & 1 deletion src/enghouse/VG_TravelDemo-dialog.json
Original file line number Diff line number Diff line change
Expand Up @@ -1935,7 +1935,7 @@
"CCURL": "https://ccsp.ei.eilabonline.biz/SocialConnectorHelperAPI/api/customchat/getWidgetConfiguration?WidgetId=5dae9357-0660-ed11-8160-00155dfe5104",
"LiveCSR": false,
"AgentIcon": "EI_swirl_up.png",
"SC_TestOP": "Watson Assistant Live Agent handover test",
"SC_TestOP": "watsonx Assistant Live Agent handover test",
"firstName": "CustomerName",
"my_credentials": {
"user": "a0e67977-e38e-45cc-b222-884d415eff09",
Expand Down
2 changes: 1 addition & 1 deletion src/example/webChat/client/src/exampleServiceDesk.ts
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ class ExampleServiceDesk implements ServiceDesk {
async startChat(connectMessage: MessageResponse, startChatOptions?: StartChatOptions): Promise<void> {
// Most service desks have a way to embed a custom iFrame into the agent view, as well as a way to pass metadata
// into that iFrame. startChatOptions.agentAppInfo contains metadata for you to be able to render the conversation
// history with Watson Assistant to your agents in a custom iFrame and this data should be passed via whatever
// history with watsonx Assistant to your agents in a custom iFrame and this data should be passed via whatever
// methods the service desk you are using uses.

// In your real implementation you will want to grab this.user and this.sessionID to make available to your service desk.
Expand Down
2 changes: 1 addition & 1 deletion src/example/webChat/client/src/serviceDeskTemplate.ts
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ class ServiceDeskTemplate implements ServiceDesk {
*
* Most service desks have a way to embed a custom iFrame into the agent view, as well as a way to pass metadata
* into that iFrame. startChatOptions.agentAppInfo contains metadata for you to be able to render the conversation
* history with Watson Assistant to your agents in a custom iFrame and this data should be passed via whatever
* history with watsonx Assistant to your agents in a custom iFrame and this data should be passed via whatever
* methods the service desk you are using uses.
*
* @param connectMessage The original server message response that caused the connection to an agent. It will
Expand Down
10 changes: 5 additions & 5 deletions src/flex/agentApp/README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
# Twilio Flex Watson Assistant Agent App
# Twilio Flex IBM watsonx Assistant Agent App

This is a functioning agent app integration between Watson Assistant and Twilio Flex.
This is a functioning agent app integration between watsonx Assistant and Twilio Flex.

**Important:** This is a reference implementation that provides an example of a fully functional integration. Make any necessary changes and perform robust testing before deploying this integration in production.

## Overview

This integration provides agents in Twilio Flex with a transcript of the conversation between the end user and Watson Assistant. To learn more about transferring between end users and agents in Twilio Flex please see:
This integration provides agents in Twilio Flex with a transcript of the conversation between the end user and watsonx Assistant. To learn more about transferring between end users and agents in Twilio Flex please see:
- [Twilio Flex Service Desk for WebChat](../webChat/)
- [Twilio Flex Service Desk for Phone](https://cloud.ibm.com/docs/assistant?topic=assistant-deploy-phone-flex)

Expand All @@ -33,12 +33,12 @@ npm ci

To deploy your plugin, open a terminal and run the following command:
```bash
twilio flex:plugins:deploy --major --changelog "Adds the Watson Assistant Agent App" --description "Enables the service desk agent to get a quick view of the conversation history between the visitor and Watson Assistant."
twilio flex:plugins:deploy --major --changelog "Adds the watsonx Assistant Agent App" --description "Enables the service desk agent to get a quick view of the conversation history between the visitor and watsonx Assistant."
```
This command will upload the plugin to Twilio Flex, but it is not enabled for all users until it is released. You can release the plugin by executing this command:

```bash
twilio flex:plugins:release --name "Plugin Release - Watson Assistant Agent App" --description "Enabling plugin Watson Assistant Agent App" --plugin plugin-watson-assistant-agent-app@latest
twilio flex:plugins:release --name "Plugin Release - watsonx Assistant Agent App" --description "Enabling plugin watsonx Assistant Agent App" --plugin plugin-watson-assistant-agent-app@latest
```
For more details on deploying your plugin, refer to the [deploying your plugin guide](https://www.twilio.com/docs/flex/developer/plugins/cli/deploy-and-release).

Expand Down
6 changes: 3 additions & 3 deletions src/flex/webChat/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Twilio Flex integration example

This is a functioning service desk integration between Watson Assistant and the Twilio Flex contact center.
This is a functioning service desk integration between watsonx Assistant and the Twilio Flex contact center.

**Important:** This is a reference implementation that provides an example of a fully functional integration. Make any necessary changes and perform robust testing before deploying this integration in production.

Expand Down Expand Up @@ -35,7 +35,7 @@ The following Twilio resources provide some useful guides on Twilio Flex custom

1. Run `npm install` to install the dependencies.

1. Run `npm run dev` to start the middleware server, which authorizes the user with Twilio and helps in setting up the integration. At run time, the Watson Assistant web chat will call the `/auth` API hosted here for the necessary authentication information.
1. Run `npm run dev` to start the middleware server, which authorizes the user with Twilio and helps in setting up the integration. At run time, the watsonx Assistant web chat will call the `/auth` API hosted here for the necessary authentication information.

**Note:** By default, the local server uses an unsecure `http://` connection. For a production deployment, you must host the server API at a secure public URL using `https://`.

Expand All @@ -57,7 +57,7 @@ You should now be able to start a web chat session in a browser, and within the

- **Agent transfers:** The event listeners set up in [twilioFlex.ts](./client/src/twilioFlex.ts) listen for participants joining and leaving the channel. This example implementation uses the `memberLeft` event to close the chat if an agent leaves; you will need to modify this behavior to support agent transfers.

- **Conversation topic:** The example implementation sends the `message_to_human_agent` attribute from the dialog as the first message to the agent when the conversation starts. However, several other attributes are available within the `connectMessage` object that is passed to the `startChat()` function. For more information, see the documentation for the `topic` property of the `connect_to_agent` response type in the Watson Assistant [API reference](https://cloud.ibm.com/apidocs/assistant/assistant-v2#message).
- **Conversation topic:** The example implementation sends the `message_to_human_agent` attribute from the dialog as the first message to the agent when the conversation starts. However, several other attributes are available within the `connectMessage` object that is passed to the `startChat()` function. For more information, see the documentation for the `topic` property of the `connect_to_agent` response type in the watsonx Assistant [API reference](https://cloud.ibm.com/apidocs/assistant/assistant-v2#message).

- **Agent name and avatar:** The agent name is available in the example implementation. The web chat provides a method to display the agent avatar, but this is not implemented for Twilio Flex.

Expand Down
8 changes: 4 additions & 4 deletions src/genesys/agentApp/README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
# Genesys PureCloud Watson Assistant Agent App
# Genesys PureCloud IBM watsonx Assistant Agent App

This is a functioning Agent App integration between Watson Assistant and Genesys PureCloud.
This is a functioning Agent App integration between watsonx Assistant and Genesys PureCloud.

**Important:** This is a reference implementation that provides an example of a fully functional integration. Make any necessary changes and perform robust testing before deploying this integration in production.

## Overview

This integration provides agents in Genesys PureCloud with a transcript of the conversation between the end user and Watson Assistant. To learn more about transferring between end users and agents in Genesys PureCloud, please see:
This integration provides agents in Genesys PureCloud with a transcript of the conversation between the end user and watsonx Assistant. To learn more about transferring between end users and agents in Genesys PureCloud, please see:
- [Genesys Service Desk for WebChat](../webChat/)
- [Genesys Service Desk for Phone](https://cloud.ibm.com/docs/assistant?topic=assistant-deploy-phone-genesys)

Expand All @@ -29,7 +29,7 @@ To start up a server in `localhost`, follow these steps:
## Authentication

1. Follow the steps to create an [OAuth Client for Genesys](https://help.mypurecloud.com/articles/create-an-oauth-client/). When choosing the **Grant Type**, choose **Implicit Grant (Browser)**.
- For **App Name**, you can specify any name for the application (for example, `Watson Assistant - Agent App OAuth`).
- For **App Name**, you can specify any name for the application (for example, `watsonx Assistant - Agent App OAuth`).
- In the **Authorized Redirect URI(s)** field, specify the URL where you will be hosting the Agent Application. If you're using `ngrok`, specify the URL in the following format:
```
https://<some-hash>.grok.io/WatsonAssistantAgentAppWidgetProxy.html
Expand Down
Loading

0 comments on commit 6f6154b

Please sign in to comment.