Zendesk (Ticket Concierge)

Setting up Ticket Concierge for Zendesk

Introduction

The purpose of this document is to enable Aisera employees to set up Ticket Concierge (TC) on Zendesk independently.

Currently, Ticket Concierge functions in the following way:

  1. First, it picks up a ticket in Zendesk ticketing system. It’s important to discuss different conditions under which the ticket needs to be picked up and analyzed by Aisera TC.

  2. Once it identifies an intent and find the fulfillment, then it will send a push notification to the end user that consists of the preamble (conversation message) + fulfillment, which could be a KB or flow.

Limitations

  • TC does not support the email channel for fulfillment

    • This does not mean that users can not report Tickets via email. For instance, an end user can submit a request via email in Zendesk and receive fulfillment on Slack. This limitation means that the Aisera platform does not send TC fulfillment answers via email at this time. If the end user does not engage with any other channels and prefers to receive fulfillment via email, we recommend that you have TC post a comment on the Zendesk ticket, which then triggers an email notification from Zendesk to the user.

  • RAG, LLM, Public KB

  • Universal Bot

Prerequisites

Setup the Data Source Tenant Integration

  1. Navigate to Aisera → Integrations

  2. Click “+ New Integration”

  3. Select Zendesk and enter:

    1. Name

    2. End point. The end point could be taken from the ticketing URL

    3. Keep Public checked

    4. Click “OK”

Setup the Application Data Source

Now, set up the Data Source for Ticket and User Learning.

  1. Navigate to Settings → Data Sources

  2. Click “ + New Data Source”

  3. Select “Zendesk”

  4. Under General:

    1. Add Name

    2. Select the previously created integration from the dropdown list for Integrations

    3. Select “Downstream”

    4. Functions: select Ticket Learning, User Learning

    5. Define the schedule

  5. Click “Next”

  6. Step 3 of 7: Configuration skip and click “Next”

  7. Step 4 of 7: Templates skip and click “Next”

  8. Step 5 of 7: IngestionConfiguration skip and click “Next”

  9. Step 6 of 7: Summary skip and click “Next”

  10. Step 7 of 7: Overrides skip and click “Next”

Note: Most likely you already have intents setup on the app. However, if none is set up, for testing purposes create an intent. Once Intent is created and Activated, go to AI Lease and click “Retain” to publish this intent.

Finish the Aisera Application Setup

While the Data Source job is running, let’s review a few items:

  1. Go to the App → enable the ticketing system as SOR. This will generate a token.

  2. Scroll down to Conversation messages and click to view the list

  3. From the list, search for Ticket Concierge and modify the copy as it will be viewed by end users.

  4. Create a Ticket Concierge Channel.

Next, we need to create a Listener channel and add it to the application.

  1. Navigate to Settings -> Channels

  2. Click “+New Channel”

  3. Select Listener Channel

  4. Add Name

  5. Select capability “Ticket Concierge”

  6. Add the correct Integration

  7. Keep everything else as is. The policy by default takes in consideration title + description for predictions

  8. Click “OK”

  9. Add channel to the AiseraGPT application.

Setup on Zendesk

Create a webhook

  1. Log in ZD instance Acme Ride Share

  2. Go to Admin Center → search for Webhook

  3. Click “Create webhook”

  4. Select “Trigger Automation” and hit”Next”

  5. Add Name

  6. Add End point URL. To generate the end point URL:

  7. For Basic:

    1. Open your terminal on the computer and enter a command: echo -n 'userNameToLoginToAisera:password' | openssl base64

    2. Copy the returned value

Note: Oauth [Token expires in an hour needs external system set up to refresh the token on expiry] → reach out to engineering.

  1. The App token could be taken directly from the AiseraGPT App:

  2. Aisera Event = TicketCreated

  3. Keep POST and everything else as is

  4. Click “create webhook”

5.2 Create a trigger

  1. Search and navigate to “Triggers”

  2. Click on “Add Trigger”

  3. Category: initial Category Conditions: Add conditions as per your requirement.

  4. Actions: Notify active webhook → and select the webhook you created in previous steps.

  5. Sample JSON body: {

"subject":"{{ticket.title}}",

"id":"{{ticket.id}}",

"ticketUrl":"{{ticket.url}}",

"displayId":"{{ticket.id}}",

"description":"{{ticket.verbatim_description}}",

"status":"{{ticket.status}}",

"priority":"{{ticket.priority}}",

"tags":"{{ticket.tags}}",

"created_at":"{{ticket.created_at_with_timestamp}}",

"updated_at":"{{ticket.updated_at_with_timestamp}}",

"device": "{{ticket.ticket_field_24344043}}",

"isPublic": "{{ticket.is_public}}",

"form":"{{ticket.ticket_form}}",

"isAcmeZendesk":"true",

"assignee":"{{ticket.assignee.email}}",

"assigneeName":"{{ticket.assignee.name}}",

"reporter":"{{ticket.requester.email}}",

"reporterName":"{{ticket.requester.name}}",

"currentUserEmail":"{{current_user.email}}",

"currentUserName":"{{current_user.name}}",

"comments":"{{ticket.comments_formatted}}"

}

  1. Click Create

Testing

Prerequisites:

  • For testing we need to make sure that user and ticket learning job has been completed

  • Have an intent to test with

  1. First, navigate to the SOR and create a new ticket with a proper user selected and some request in the title and body copy of the ticket

  2. Click “Submit”

  3. Open a webchat, enter the same user profile and you should receive an answer from the bot!

Analytics

Ticket Concierge collects the same analytics as other channels. User requests could be reviewed under Requests page + filter the channel.

Last updated