Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 18 Next »

The ServiceNow and Kbot Live Chat integration allows users interacting with Kbot to log issues or make requests in the ServiceNow ITSM system. This page describes how to set up the ITSM configuration.

Prerequisites

You may optionally create a service account for Kbot with access to sys_choice table. This would allow Kbot to retrieve display names of ticket statuses and categories. Make sure you grant proper permissions for such API requests.

Kbot setup

General configuration

To process incidents and demands, make sure your Kbot configuration includes the following:

  • The ticket_url configuration variable is set to the ServiceNow instance URL, starting with https://. For example:

ticket_url = https://my-company.service-now.com
  • The ticket_user and ticket_password variables store the username and the corresponding password of your ServiceNow service account. If you wish to use such service account, open the Kbot back office and go to Configuration > General > ITSM.

In this view, you can also provide other ITSM parameters. To learn more about it, see the built-in documentation.

Incidents

To process incidents, make sure your Kbot configuration includes the following:

  • The Incident intent is enabled and available.

The list of additional settings for access options of logging issues. You can add these settings into the kbot.conf file if you need to redefine default values.

Parameter

Description

Sample

snow_sys_class_name_to_ticket_id

Contains the mapping of sys classes to the related ticket ID prefixes. It is a comma separated list of <sys_class_name>:<ticket id prefix>. This is used to get sys class by ticket ID prefix.

snow_sys_class_name_to_ticket_id = incident:INC, sc_request:REQ

snow_incident_sys_class_names

Specify sys_class_names of your incident tables to manage incidents. When you create an incident, the first table from the list is used; when you manage your incidents (ask to display the complete list of incidents), all the incidents from all the tables are displayed.

snow_incident_sys_class_names = incident

snow_incident_filter

Specify sysparm_query filters you want to use for getting incidents from each incident sys_class_name
in the format: snow_<incident sys_class_name>_filter.

snow_incident_filter = active=true^caller_id={user_sys_id}^state=1^ORstate=2^ORstate=3

Requests

To process requests, make sure your Kbot configuration includes the following:

  • The Search ServiceNow catalog intent is enabled and available.

The list of additional settings for access options of a service catalog. You can add these settings into the kbot.conf file.

Parameter

Description

Sample

snow_catalog_sys_ids

A comma separated list of sys_ids. You can define the list of catalogs that you want to use.

snow_catalog_sys_ids = bdf16c2edb*******386f3731d9619f5, d5f4be1*******40cfdefda41d9619b9

snow_sys_class_name_to_ticket_id

Contains the mapping of sys classes to the related ticket ID prefixes. It is a comma separated list of <sys_class_name>:<ticket id prefix>. This is used to get sys class by ticket ID prefix.

snow_sys_class_name_to_ticket_id = incident:INC, sc_request:REQ

snow_request_sys_class_names

Specify sys_class_names of your request tables to manage requests. When you create a request, the first table from the list is used; when you manage your requests (ask to display the complete list of requests), all the requests from all the tables are displayed.

snow_request_sys_class_names = sc_request, change_request

snow_sc_request_filter

Specify sysparm_query filters using the Snow Glide format you want to use for getting requests from each request sys_class_name
in the format: snow_<request sys_class_name>_filter.

In addition to the standard syntax supported in Snow, you may use the special keyword {user_sys_id} that would be replaced by the invoker user sys_id.

snow_sc_request_filter = active=true^requested_for={user_sys_id}

Testing

Healthcheck

Once the ITSM is configured, you can use the Test button to see whether the portal is available and whether the service account that you are using is valid.

Creating an incident/request

You can test incidents or requests in the chat. Note that you must have a ServiceNow user with access to the portal.

Incident

In the chat, click the Quick Ticket Management button, then select Submit an incident.

Request catalog

To test the catalog search functionality, run the following command in the chat: #do Search ServiceNow catalog:: <requested item>.

Typically, the found item is returned and displayed in the chat. You can view the item or click it to open it in ServiceNow and create a request for it.

Managing tickets

In the chat, click the Quick Ticket Management button, then select List my tickets. The bot displays the complete list of tickets (both incidents and requests) with the current status.

All user’s tickets from the tables that are defined in snow_request_sys_class_names and snow_incident_sys_class_names will be queried. The filters that are defined in the related variables are used. See the table of variables above.

Troubleshooting

  • If the ITSM configuration is invalid, the Healthcheck displays an error. In this case, follow the recommendations given in the error message.

  • If the dialog in the chat seems strange and you do not get expected replies, you can turn on the debugging. To do so, run the following command: #debug on and repeat the scenario to see the details. When you have finished the debugging, you can turn off the debugging functionality by typing #debug off.

  • No labels