What to do to get ready for Watson Assistant web chat 7.0

There are some exciting changes on the horizon for web chat in our next release, so we’re here to give you a heads up on exactly what to expect and how to prepare.

Arnesh Batlaw
IBM watsonx Assistant

--

A quick overview

If you use Watson Assistant’s out-of-the-box web chat feature then you will be no stranger to the periodic updates we roll out to provide both you AND your customers with maximum value. This time around, however, the update merits some special consideration.

Before we begin though, let’s look at the timing. The web chat 7.0 release is scheduled for early December, so you have ample time to digest these items and get your ducks in order for optimal results.

New experience improvements

First and foremost, we’re delighted to introduce a streamlined and more intuitive live agent handoff experience for your customers. Escalation now happens within the same chat window instead of switching to a different panel when the transition occurs. See how it looks on our Lendyr demo site below:

Live agent handoff will occur seamlessly in a single window with web chat 7.0.

A note on advanced and unsupported customizations

As always, for any and all customers that have implemented advance or unsupported customizations (such as overriding CSS and using agent events), please lock your version prior to the release to ensure that it does not result in any unexpected changes. We can’t stress this enough!

For more information on locking in your Watson Assistant web chat version, we’ve put together some handy documentation on the subject to explain how it works.

Web chat embed script updates

All customers should make sure they are using the latest embed script that we released in September 2021. The new script loads your web chat version directly, ensuring that none of the files you use from web chat will be updated externally if you have them locked to a specific version.

This should be done by all of our web chat customers regardless of the version they are using and it should be done NOW before the upcoming 7.0 release. The new script changes the t.src field to:

t.src="https://web-chat.global.assistant.watson.appdomain.cloud/versions/" + (window.watsonAssistantChatOptions.clientVersion || 'latest') + "/WatsonAssistantChatEntry.js";

You can also find the current version of your embed script by looking at the embed tab on the Watson Assistant web chat settings page.

You can check the current embed script version by opening the “Embed” tab.

Web chat path changes

In this release we’re changing the internal paths we use for some aspects of communication between web chat and Watson Assistant. If you have a firewall or proxy sitting between web chat and Watson Assistant and that proxy has rules with specific paths in them, you may need to update your proxy or firewall configuration to account for the new paths.

If you do not have a proxy or firewall, or if they have rules that only match the hostname, then no changes should be required.

Here are the old paths:

/<SUBSCRIPTION_ID>/config/<INTEGRATION_ID>
/<SUBSCRIPTION_ID>/message/<INTEGRATION_ID>

These will be changed to:

/<SUBSCRIPTION_ID>/chat/<INTEGRATION_ID>/config
/<SUBSCRIPTION_ID>/chat/<INTEGRATION_ID>/message

Note, if your web chat does not have a subscription ID, then these paths will have “public” in the place of the subscription ID.

Web chat header menu changes

We have also made changes to the updateCustomMenuOptions instance method. Previously the first argument to this method was the view where you wanted the menu options to appear, which could either be in the bot view or the agent view.

Now that we have combined the two views into one, the first argument to this method is no longer appropriate and it has been removed. If you are using this instance method, you should remove the first argument. If you are using this instance method to separately display options for the agent vs. the bot, you will need to combine the lists.

Finally, if you want an option to only appear during an agent chat, you can use agent:pre:startChat and agent:endChat events.

The previous code:

instance.updateCustomMenuOptions('bot', [ { text: 'My option', handler: () => doOption() } ]);

Should be updated to:

instance.updateCustomMenuOptions([ { text: 'My option', handler: () => doOption() } ]);

Agent event changes

The agent:endChat event will now fire if a user requests an agent but cancels the request before an agent has joined the chat. If you are relying on this event to display a post-chat form when an agent chat is over, you will need to update your code to ensure that it does not display the form in this case. The event will now have a requestCancelled flag on it to tell you if the event was fired because the request for the agent was canceled.

Summing it up

Web chat 7.0 offers some great feature enhancements, but also requires your attention to ensure a smooth transition. Remember, this version release is scheduled for early December. Check our release notes to find out when the new version is ready!

--

--