Virtual Agent - Wait time causes bot response not to display

stevenfroggattk
Tera Guru

Hi All,

We're just about the move from the London release to New York. I've been testing our Virtual Agent conversation which has a bot response before triggering a workflow to complete some automation.

We are using a gs.sleep in the workflow to allow the workflow to complete before checking the workflow logs for a pass/fail message.

The issue is that since moving to New York the bot response that is displayed to the user doesn't trigger because of the gs.sleep on the next activity.

I've tried doing alternative wait scripts but the bot message will not display until after the wait timer has completed (even though it is placed before - to notify the user that the system will be restarting shortly)

Anyone encountered this issue before? 

Thanks

Steve

 

 

 

1 REPLY 1

Matt7
Tera Contributor

Hi Steve,

Any luck with this? I don't have a fix, but I can add my experience.

 

I've tried to introduce a delay to have the Virtual Agent wait after sending a response that includes a link before asking if the user found the response helpful - the thought being that the user will need to...you know...actually look at the link before he/she can tell us whether or not the Virtual Agent provided useful information. In my situation, I don't have your requirement of waiting for something outside the Topic to happen, so at the very least, my situation can illustrate something stripped down to the essentials of this issue.

Through SEVERAL means, I've placed the delay (a "gs.sleep()") after the initial responses and before the "Did I help you?" message. I've settled on placing the delay in a Script Action the Topic Block that contains the prompt to see if the Virtual Agent was useful, but I've also tried...

- a Script Action in the main Topic that only contains the delay

- a Script Action in the main Topic that contains the delay AND another message

- a dedicated Topic Block for the delay itself

(and probably some other approaches that I'm forgetting)

 

Regardless of where I try to introduce the wait, the behavior is the same: the delay is experienced far earlier in the Topic than expected, and after it has elapsed, the rest of the Topic proceeds with no delay.

find_real_file.png

It seems like no matter where I try to put the delay, it's detected and processed before where it's actually placed. Maybe ServiceNow is "reading ahead" to transition through a Topic more seamlessly? If it were to process a query or some other scripted action, it probably wouldn't be obvious in a Virtual Agent chat, but because it's processing a delay, it's creating the delay for the user when it's being processed?

That seems to make sense, but I have found that when starting the Topic, the initial prompt (there to make sure the right Topic is being used based on the user's input) experiences no delay; the Topic presents that first prompt right away.

In researching this issue, it seems like we might be stuck unless/until ServiceNow introduces a means to delaying responses or other activities in a Topic on an individual basis. In my case, a simply "Wait" Utility (as is available as a classic Workflow Activity) would do the trick. In your case, it sounds like something slightly more complex - like a classic Workflow "Wait for WF Event" Activity - would be needed. Several other posters have reported submitting a suggestion to have such a Utility or other mechanism added to Topics.