While most IT departments do their best to educate their end users and help them to solve their own problems as they come up, the need for users to contact the Service Desk is something that will always be there. Ideally, this contact takes place through a support tool like Service˜ow but chances are you’ve still got users who will contact the Service Desk directly by phone. As a result, Service Desk agents spend a lot of their time taking calls and logging tickets for those calls.
One of the challenges that I’ve seen a few times before with this type of arrangement is that people will call the Service Desk and start explaining who they are and what their problem is but the Service Desk agent doesn’t know if the end result of the conversation is going to be an Incident ticket or a Service Request. The way most of the forms in ServiceNow are set up requires you to make a determination about the type of ticket before you can start logging details about that ticket. As a general rule however, the Service Desk really needs to start recording the Caller information and the details of the call before they determine what type of ticket needs to be logged.
I worked with a co-worker of mine (Brad Hicks) to create the New Call application to help solve this problem. This custom application has been used by quite a few customers since as a standard Professional Services offering and has even made a couple of appearances at the ServiceNow ‘Knowledge’ conferences. I’ve been meaning to document the solution for a while and capture it in a redistributable update set. At long last, here it is!
The New Call application is really a simple solution. It uses standard ServiceNow forms and scripting techniques. Most of the functionality is included in a single ‘Route’ UI Action button that directs the call to an Incident or a selected Request Item in the Service Catalog. The ‘Incident’ option works just like other options in ServiceNow that generate one record based off of the contents of another. It simply creates a new incident record and copies the field contents into that incident record.
The ‘Request’ option routes the call to the corresponding Service Catalog entry form for the selected catalog item. The ‘Route’ UI Action contains logic to store the contents of all of the fields in URL parameters that get passed on to the catalog item. Because these parameters get passed over the URL (and there’s a limited amount of character space available there) I’ve also included a character counter to limit the number of characters that can be input into the ‘Additional Comments’ field. Full documentation on the character counter can be found here.
Each catalog item that you want to use with the New Call functionality needs to have corresponding variables and client scripts to accept these parameters and populate them into the item. I’ve included a catalog client script – ‘Populate New Call Info’ and associated it with the ‘common_comments’ variable set. You can use this variable set and client script on any item you wish to use ‘New Call’ with.