ust the other day I came across an issue with a client that came up with a couple of users on the ServiceNow forums as well. The issue was that technicians monitoring a chat queue had no way of knowing that a chat was waiting unless they were staring at their chat desktop the entire time. Since most IT people tend to multitask, this can become a problem resulting in longer-than-ideal wait times in the chat queue.
With the help of the ServiceNow Guru ‘Module Counts’ update set I was able to find a solution that I think effectively solves this issue by showing a count in the left navigation pane whenever a new chat enters a user’s queue.

Waiting Chat Queue Solution

1) Install the ServiceNow Guru ‘Module Counts’ update set

The ‘Module Counts’ update set is what makes this whole solution work. By installing the update set you can set up a module in your left navigator that updates automatically as new entries come into your chat queue. You can access the download directly from this link.

2) Configure the ‘Waiting Chats’ module

Once you’ve committed the ‘Module Counts’ update set you can create the module to display the number of waiting chat queue entries. I placed my module under the ‘Service Desk’ application and configured it as shown in the screenshot below…

Waiting Chats Module

The ‘Module Counts’ refresh interval’s lowest setting is 5 minutes. This is done to help ensure adequate performance of the solution. In this case however, it may make sense to personalize the choices for the ‘Refresh interval’ field in the screenshot above and add a 30 second interval (value of 30000 milliseconds) for use by this module.

3) Configure the ‘Waiting Chats’ list layout

Once the module is configured, you should see the ‘Waiting Chats’ record count displayed in next to the module in the left navigator. You’ll also want to personalize the list layout and list control to show the correct information. I changed the columns and removed the ‘New’ button. You can perform these actions by right-clicking the list header and selecting ‘Personalize’.

Waiting Chat List

4) Add a ‘Show Chat Desktop’ UI action to your list

Finally, you can add a context menu UI action for your list so that technicians can click into the module, right-click one of the entries, and open up the chat desktop directly from the list.

Show Chat Desktop

Here’s how I set up the UI action…

‘Show Chat Desktop’ UI action
Name: Show Chat Desktop
Table: Chat Queue Entry (chat_queue_entry)
Client: True
Form link: True
List context menu: True
onClick showChatDesktop();
Condition: current.action == ‘waiting’

// Show the chat desktop in a new window
function showChatDesktop() {
   var url = 'chat_desktop.do?sysparm_nostack=true';
   window.open(url, 'chat_desktop');

That’s it! Hopefully this solution gives you a better way to manage your chat queue going forward.