A typical use case for Jacada Ticket Guidance is the automatic creation of a Zendesk ticket which uses key details from a related Interaction Flow.

To achieve this, the following Interact components are used:

  • an Interaction Flow design that collects and optionally processes all relevant information generated by the agent during a call (e.g., ticket subject, severity, customer type, etc.)
  • pre-configured Interaction Flow variables that store this information
  • an Interact Integration Point (IP) that communicates with the Zendesk API to create the ticket and return status information

Note: This article references the Tech Support Interaction Flow, provided out-of-the-box to demonstrate Interact's integration with Zendesk.

Designing the Interaction Flow

The Tech Support Interaction is an example of a flow that agents can use in Pre-ticket mode. This Flow determines the nature of the caller's issue. If certain criteria are met, a support ticket is created automatically.

Using the Tech Support example flow, we build the components needed for our use case in the following 5 stages.

Note: For a clearer understanding of the process, we recommend that you open the Tech Support flow and examine the components described at each stage.

Stage 1: Collecting Customer Information

When you use Zendesk, the Ticket Guidance application will appear in the Information pane of the ticket to request values from the agent and then to display them.

In our example, callers are asked for their name and other details using the Customer Info paragraph element. The values of these answers (as well as any others that you may request) are then allocated into variables using the Account Info Allocator element:

Stage 2: Determining Query Type

The Flow then asks the agent to select the category that most closely matches the caller's issue, using Choices inside another paragraph element:

For our use case example, the agent chooses the Device failure option

The agent's choice is also stored in a variable which will be passed to the Zendesk Ticket subject variable when creating the ticket.

Stage 3: Collecting More Information on an Issue

The Flow proceeds to determine the cause of the Device failure. In our example, the agent asks for the error code being shown by the Device. Once again, the Ticket Guidance application uses the Information pane of the ticket to store the answer in a variable which will be passed to the Zendesk:

Our use case example asks only a single question, however a typical flow may require multiple questions or steps to help determine the cause.

Stage 4: Running the Integration Point

The Flow now has collected enough information to determine that a new ticket should be opened. In our example Flow design, we add an Integration Point element that will be triggered when an agent provides an error code:

You can find step-by-step instructions for creating the Zendesk Integration Point for our use case below.

Stage 5: Displaying New Ticket Data

After creation of the ticket, the final step of the Interaction Flow displays new ticket information and prompts the agent what to tell the caller:

Note that some of the values are taken from the Interaction Flow, while others (e.g., the ticket ID) is returned from Zendesk using our Integration Point.


Using an Integration Point to Create a Ticket

An Integration Point is a call to a web service that retrieves or sends information from/to an external data source.

Note: For detailed information about creating Integration Points, see Creating Integration Points.

The following steps explain how to build the REST Integration Point that creates the Zendesk ticket in our example use case:

  1. From the Resources menu of the Admin Console, select Integration Points. The Web Service Integration Points page opens. 
  2. At the upper right corner of the page, click Add, and then select REST.

    The New REST Integration Point wizard opens:

  3. In the REST Url field, enter the endpoint URL for Zendesk ticket creation. Be sure to include the identifier for your Zendesk account in the URL. For example: https://myCompany.zendesk.com/api/v2/tickets.json
  4. From the Request Type dropdown list, select POST.
  5. In the Request Headers field, add a new line and enter your authentication credentials. You need to use base64 encoding and one of the following methods:
    • Basic Access Authentication: For this method, authentication is performed using base64 encoded Zendesk account credentials.

      For example, let's assume that your authentication credentials are: zendeskUser:zendeskPassword.
      Using basic access authentication, the encoded credentials are: emVuZGVza1VzZXI6emVuZGVza1Bhc3N3b3Jk
    • API Token Authentication: For this method, the API token that you use to authenticate with the Zendesk server is also base64 encoded. If you have an API token, you may use it anytime (instead of Basic access authentication). An API token must be used if you authenticate to Zendesk using Active Directory (or any other external server).

      For example, let's assume that your authentication credentials are: zendeskUser@example.com/token:APIToken.
      Following base64 encoding, the credentials are: emVuZGVza1VzZXJAZXhhbXBsZS5jb20vdG9rZW46QVBJVG9rZW4=

      For more information about API token authentication, click here.
    In the Request Headers field, enter your credentials using the following format:
    Authorization: Basic {base64-encoded string}

    An example is shown below:

  6. In the Request Body field, enter parameters from the Interaction Flow that will be used in the creation of the ticket. For example:

    "comment": { "body": "${comment}" },
    "priority": "${priority}"

  7. At the upper right corner of the page, click Next. The Request page is displayed:
  8. For each Flow parameter shown from your Request Body field, select the appropriate parameter type from the Variable Type dropdown. If desired, you can change the default value provided in the Variable Name field. (The name entered in this field is passed back to the Web Designer).
  9. Click Next. The Response page is displayed, with basic response mapping displayed by default.
  10. Click the link at the bottom of the page to display advanced response mapping. Then, for each required response parameter, enter a parameter name and variable name, and select the appropriate variable type. To add a new row, click Add.

    The following example shows the Integration Point set to return the identifier and subject of the new ticket:

  11. Click Next. The Definition page is displayed, listing both request and response parameters.
  12. In the Integration Point Name and Integration Point Description fields, enter a relevant name and short description. This information will be used to help a Designer select the Integration Point when building the flow. For example:

  13. At the upper right corner of the page, click Create. A confirmation message appears, and the Finished page will be displayed:

  14. Perform a live test of the Integration Point by clicking Test. The Test Integration Point page will be displayed. For more details, refer to Working with Integration Points.
  15. To exit the wizard, click Done