<style>p { margin: 0; }span.fr-emoticon.fr-emoticon-img { background-repeat: no-repeat !important; font-size: inherit; height: 1em; width: 1em; min-height: 20px; min-width: 20px; display: inline-block; margin: -0.1em 0.1em 0.1em; line-height: 1; vertical-align: middle; } span.fr-emoticon { font-weight: normal; font-family: "Apple Color Emoji", "Segoe UI Emoji", "NotoColorEmoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; display: inline; line-height: 0; } blockquote { border-left: solid 2px #5e35b1; color: #5e35b1; margin-left:0; padding-left:5px;}blockquote blockquote{ border-color: #00bcd4; color: #00bcd4;}blockquote blockquote blockquote{ border-color: #43a047; color: #43a047;} table.grid{ border-collapse: collapse;} table.grid td, table.grid th { border: 1px solid #ddd;} .fr-fic.fr-dib{ display: block; margin: 5px auto;}.fr-fic.fr-dib.fr-fir{ text-align: right; margin: 5px 0 5px auto;}.fr-fic.fr-dib.fr-fil{ text-align: left; margin: 5px auto 5px 0;}.fr-fic.fr-dii{ float: none; margin: 5px auto;}.fr-fic.fr-dii.fr-fil{ float: left; margin: 5px auto;}.fr-fic.fr-dii.fr-fir{ float: right; margin: 5px auto;}img.fr-dib.fr-fir { margin-right: 0; text-align: right;}img.fr-dib.fr-fil { margin-left: 0; text-align: left;}img.fr-dib { margin: 5px auto; display: block; float: none;}img.fr-bordered { box-sizing: content-box; border: solid 5px #CCC;}img.fr-shadow { box-shadow: 10px 10px 5px 0px #cccccc;}img.fr-rounded { border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box;}</style><style>
p {
margin: 0;
}
span.fr-emoticon.fr-emoticon-img {
background-repeat: no-repeat !important; font-size: inherit; height: 1em; width: 1em; min-height: 20px; min-width: 20px; display: inline-block; margin: -0.1em 0.1em 0.1em; line-height: 1; vertical-align: middle;
}
span.fr-emoticon {
font-weight: normal; font-family: "Apple Color Emoji", "Segoe UI Emoji", "NotoColorEmoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; display: inline; line-height: 0;
}
blockquote {
border-left: solid 2px #5e35b1; color: #5e35b1; margin-left: 0; padding-left: 5px;
}
blockquote blockquote {
border-color: #00bcd4; color: #00bcd4;
}
blockquote blockquote blockquote {
border-color: #43a047; color: #43a047;
}
table.grid {
border-collapse: collapse;
}
table.grid td,
table.grid th {
border: 1px solid #ddd;
}
.fr-fic.fr-dib {
display: block; margin: 5px auto;
}
.fr-fic.fr-dib.fr-fir {
text-align: right; margin: 5px 0 5px auto;
}
.fr-fic.fr-dib.fr-fil {
text-align: left; margin: 5px auto 5px 0;
}
.fr-fic.fr-dii {
float: none; margin: 5px auto;
}
.fr-fic.fr-dii.fr-fil {
float: left; margin: 5px auto;
}
.fr-fic.fr-dii.fr-fir {
float: right; margin: 5px auto;
}
img.fr-dib.fr-fir {
margin-right: 0; text-align: right;
}
img.fr-dib.fr-fil {
margin-left: 0; text-align: left;
}
img.fr-dib {
margin: 5px auto; display: block; float: none;
}
img.fr-bordered {
box-sizing: content-box; border: solid 5px #CCC;
}
img.fr-shadow {
box-shadow: 10px 10px 5px 0px #cccccc;
}
img.fr-rounded {
border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box;
}
</style><style>
p {
margin: 0;
}
span.fr-emoticon.fr-emoticon-img {
background-repeat: no-repeat !important; font-size: inherit; height: 1em; width: 1em; min-height: 20px; min-width: 20px; display: inline-block; margin: -0.1em 0.1em 0.1em; line-height: 1; vertical-align: middle;
}
span.fr-emoticon {
font-weight: normal; font-family: "Apple Color Emoji", "Segoe UI Emoji", "NotoColorEmoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; display: inline; line-height: 0;
}
blockquote {
border-left: solid 2px #5e35b1; color: #5e35b1; margin-left: 0; padding-left: 5px;
}
blockquote blockquote {
border-color: #00bcd4; color: #00bcd4;
}
blockquote blockquote blockquote {
border-color: #43a047; color: #43a047;
}
table.grid {
border-collapse: collapse;
}
table.grid td,
table.grid th {
border: 1px solid #ddd;
}
.fr-fic.fr-dib {
display: block; margin: 5px auto;
}
.fr-fic.fr-dib.fr-fir {
text-align: right; margin: 5px 0 5px auto;
}
.fr-fic.fr-dib.fr-fil {
text-align: left; margin: 5px auto 5px 0;
}
.fr-fic.fr-dii {
float: none; margin: 5px auto;
}
.fr-fic.fr-dii.fr-fil {
float: left; margin: 5px auto;
}
.fr-fic.fr-dii.fr-fir {
float: right; margin: 5px auto;
}
img.fr-dib.fr-fir {
margin-right: 0; text-align: right;
}
img.fr-dib.fr-fil {
margin-left: 0; text-align: left;
}
img.fr-dib {
margin: 5px auto; display: block; float: none;
}
img.fr-bordered {
box-sizing: content-box; border: solid 5px #CCC;
}
img.fr-shadow {
box-shadow: 10px 10px 5px 0px #cccccc;
}
img.fr-rounded {
border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box;
}
</style><p><strong>In this guide we will cover:</strong></p><p><strong>- What are ticket suggestions? </strong></p><p><strong>- The Logic behind ticket suggestions</strong></p><p><strong>- How to configure ticket suggestions without the use of AI</strong></p><p><strong>- Using ticket suggestions</strong></p><p><br></p><p><br></p><p><strong><span style="font-size: 14pt;">What are ticket suggestions?</span></strong></p><p>Ticket suggestions in Halo can be used to advise your agents on values that should be applied to a ticket based on historical ticket and advise articles that may assist in resolving the issue. This can be used to automate ticket processing. Suggestions can be configured for various functions, such as suggesting which agent to assign the ticket to, which problem ticket to link the incident to, which automations to carry out etc. Suggestions are made based on how closely the ticket matches an existing ticket or article in your database, using your own data to make suggestions to your agents. </p><p><br></p><p>Ticket suggestions can be made with the assistance of AI, this allows suggestions to be made based on an AI's evaluation of your ticket/article data. Although AI is not needed to use the ticket suggestions functionality, AI suggestions are more dynamic and can be more accurate, so we advise using these where possible. In this article we will cover how to setup and use ticket suggestions without the use of AI. For information on how to use ticket suggestions with AI please see our article <a data-fr-linked="true" href="https://usehalo.com/haloitsm/guides/2386" id="isPasted" target="_blank" rel="noopener noreferrer">AI Suggestions</a>. </p><p><br></p><p><br></p><p><strong><span style="font-size: 14pt;">The Logic behind ticket suggestions</span></strong></p><p><strong><span style="font-size: 12pt;">Tickets</span></strong></p><p>When using ticket suggestions without an AI model the similarity of tickets is calculated using a SQL search in your database, tickets will return a match score based on the similarity of the ticket fields, checking key word/value overlap. This means tickets are only deemed 'similar' based on exact value matches, regardless of the semantic meaning of these values. Although this is beneficial as matching does not rely on an AI model, matching will not account for the semantic or contextual values of tickets, resulting in a more basic ranking quality than when AI matching/suggestions are used. </p><p><br></p><p>Ticket matching uses the same logic that is used in our <a data-fr-linked="true" href="https://usehalo.com/haloitsm/guides/955/" id="isPasted" target="_blank" rel="noopener noreferrer">problem/resolution finder</a>. Therefore matching behaviour will depend on how your problem/resolution finder is configured, such as if you have allowed matching based on text custom fields. </p><p><br></p><p id="isPasted"><strong><span style="font-size: 12pt;">Knowledge base articles</span></strong></p><p>When using article suggestions without an AI model, articles are suggested using the same logic used by the problem/resolution finder. This will check the summary of the ticket against article tags. If a tag against a knowledge base article is included in the summary of the ticket, this article will be suggested, the summary string does not need to be an exact match to the tag, only be contained within the summary. </p><p><br></p><p>For more information on how article and ticket suggestions work (the logic behind the matching) check out <a data-fr-linked="true" href="https://usehalo.com/haloitsm/guides/955/" id="isPasted" target="_blank" rel="noopener noreferrer">Problem/Resolution Finder</a>. </p><p><br></p><p><strong><span style="font-size: 14pt;">How to configure Ticket Suggestions without the use of AI</span></strong></p><p>To setup ticket suggestions you will first need to ensure your AI module is enabled (even though AI will not be used), found under configuration > AI. </p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjQzNWU1NDk3LTQ1YTUtNDhlYS04YzgwLTZkZmFiODFmNmNhMiJ9.kA7OqBibbwpOI5teqqaEfivf_sc4WSL4Kl0h02tdq4I" class="fr-fic fr-fil fr-dib" width="124" style="width: 126px; height: 122.33px;" height="122"></p><p><strong><span style="font-size: 10pt;">Fig 1. Enable AI module </span></strong></p><p><br></p><p>Once enabled, click into the module to begin configuration. </p><p><br></p><p>Here, ensure you have the 'Default AI Connection' set to be 'None'.</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjA3YzU3NjkwLTdlZGItNGE1Yy04ZjYyLTVjYTExMGFmZTkzMyJ9.oPkhQ8GvzCcXlZ7hM2UrcwaEcpubeuZdyh_8IZ3xz5I" class="fr-fic fr-fil fr-dib" width="227" height="175"></p><p><strong><span style="font-size: 10pt;">Fig 2. Disable AI connection</span></strong></p><p><br></p><p>Now you will need to configure how ticket matching takes place. This will determine which suggestions are made to agents, i.e. criteria ticket need to meet to be used in suggestions. Configuration takes place under the 'AI ticket matching' section of the AI module. </p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjhjN2ZjODcyLTY0OWYtNDc2Ny1iZmQxLTMxY2Q0OTY2MmFmMiJ9.O2ALWBxV2VAELJnZ6m2RiKYt6zK5SfSZ2j3tjpRDTy0" class="fr-fic fr-fil fr-dib" width="1455" style="width: 1457px; height: 596.545px;" height="597"></p><p><strong><span style="font-size: 10pt;">Fig 3. Ticket matching configuration</span></strong></p><p><br></p><p><strong>Create Embedding Scores for Tickets</strong> - When enabled, an embedding score will be created each time a ticket is logged. This score is used when matching tickets so this must be enabled to use ticket suggestions. </p><p><br></p><p><strong>Ticket Types with AI embeddings and insights enabled</strong> - Here, choose the ticket types you would like suggestions to take place on. If a ticket type is not selected here, no suggestions will be made. </p><p><br></p><p id="isPasted"><strong>Minimum rank match score (scores will be normalised)</strong> - Here, set the minimum match score an existing ticket must produce with the the new ticket in order for the existing ticket's values to be used as suggestions on the new ticket. If a ticket does not meet this score it's values will not be suggested. This applies globally to all suggestions but minimum match scores can also be configured per suggestion. A baseline match score should be set here, with higher match scores set per suggestion as required. </p><p><br></p><p><strong>Ticket types that link AI matched Tickets</strong> - When a suggestion is applied the existing ticket the suggestion is based on can be linked to the ticket as a child or related ticket (if the suggestion is configured to do this). Here, choose the ticket types that you would like to have this functionality be allowed on. Only these ticket types can have the suggestion ticket linked as a child/related ticket. </p><p><br></p><p><strong>Method of linking AI matched Tickets</strong> - Here, choose whether the ticket the suggestion stemmed from is linked as a child or related ticket. This works in conjunction with 'Ticket types that link AI matched Tickets'. </p><p><br></p><p>Now, you can configure your ticket suggestions. </p><p><br></p><p><strong><span style="font-size: 14pt;">Configure Ticket suggestions</span></strong></p><p>Ticket suggestions are essentially a set of rules that are run on existing tickets. If a ticket contains similar values for fields like estimate, agent, and linked problem ticket, a prompt to set the fields to the same value will be shown, or they can be applied automatically.</p><p><br></p><p>To begin configuration select the 'Configure AI Suggestions' button. Here, you can configure each suggestion that can be made on tickets. You will have some suggestions configured out-of-the-box, you can edit existing suggestions or select 'new' to create a new suggestion. </p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjYxZTNjYjQ3LTQ2MGYtNDU2NS05NjVhLTM4NWI3YmViYzQ4NiJ9.ug8GMgexjD4wNVqNvolISAMlNiFKEEwIBK4aqb5Ij2Q" class="fr-fic fr-fil fr-dib" width="1513" style="width: 1515px; height: 381.971px;" height="382"></p><p><strong><span style="font-size: 10pt;">Fig 4. Ticket suggestions</span></strong></p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjZhNzQyZWJmLTk4YzQtNDYxMC1hMzNjLWRhY2RiMjUyOWE0OCJ9.FnGds7JqS-JWqH1D4kT_4UqMM2yFGBYGEOLcoIVgd70" class="fr-fic fr-fil fr-dib" width="928" style="width: 930px; height: 538.795px;" height="539"></p><p><strong><span style="font-size: 10pt;">Fig 5. New ticket suggestion</span></strong></p><p><br></p><p id="isPasted">Give the suggestion a name and precedence only one of each 'type' of suggestion that matches can apply. Suggestions will be checked in order of precedence, once a ticket meets criteria for a suggestion type this suggestion will be made/applied, no further suggestions of this same type will be made. </p><p><br></p><p>The following types of suggestion are available:</p><p><strong>Set Estimate to the Estimate of matched tickets</strong> - This will allow you to set the estimate of the ticket based on the average, maximum or minimum estimate on the matching tickets.</p><p><strong>Set the assigned Agent based on matched tickets</strong> - This will allow you to assign the ticket to the same agent as the matched tickets based on the agent's default team if multiple of the matching tickets are assigned to the same agent.</p><p><strong>Set Category based on matched tickets</strong> - This will allow you to set the category (1, 2, 3 or 4) of the ticket if the matches have a frequently used category.</p><p><strong>Set Priority based on matched tickets</strong> - This will allow you to set the priority of the ticket if the matches share a similar priority level.</p><p><strong>Set Urgency based on matched tickets</strong> - This will allow you to set the urgency field against the ticket if the matches share a similar urgency level.</p><p><strong>Set impact based on matched tickets</strong> - This will allow you to set the impact field against the ticket if the matches share a similar priority level.</p><p><strong>Create a problem ticket for incident matches</strong> - If the matching tickets are incidents that are not linked to a problem, this suggestion, when used, will create a problem ticket and link other matched incidents to it. </p><p><strong>Link to an existing problem ticket based on the problem ticket of incident matches</strong> - Similar to creating a problem ticket, if the majority of matches are linked to the same problem already, it will identify that the current ticket should be linked to the problem ticket as well.</p><p><strong>Merge into another ticket</strong> - This will allow you to merge the ticket into matched tickets. Best used to identify duplicate tickets, as these will have very high match scores. </p><p><strong>Run an automation if there are Ticket matches </strong>- If there are any ticket matches above a certain match score, run an action automation.</p><p><strong>Run an automation based on the percentage of Ticket matches that failed their response/resolution SLA </strong>- This will allow you to run an automation if the percentage of matched tickets that failed SLA response/resolution exceeds the chosen percentage. </p><p><strong>Run an automation if there are Article matches</strong> - If there are any article matches above a certain match score, run an action automation. </p><p><br></p><p><strong><em>Note: Suggestion types that use AI (such as 'set priority to the AI suggested priority) cannot be used if you do not have an AI model connected. </em></strong></p><p><br></p><p id="isPasted">In the 'Suggestion Information' field you will need to set what you would like to appear in the suggestion information field, this tells the agent what the suggestion is for. You will need to include $-SUGGESTEDVALUE here to ensure the field is populated with the value that is being suggested, as shown in figure x.</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjU5N2ZhOWM0LTAzOTUtNGVlYy05NWQ3LWIwMDA4OWJlYmVmZiJ9.1_kZY-iOlQ-3Rpavv6QWYmSSZkY3xUC_84a6e3vKFP0" class="fr-fic fr-fil fr-dib" width="793" style="width: 795px; height: 277.619px;" height="278"></p><p><strong><span style="font-size: 10pt;">Fig 6. Suggestion Information</span></strong></p><p><br></p><p>Now you will need to set conditions against each suggestion, these will determine when this suggestion will be made. </p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjdhYzhhOWYwLWQ1MjQtNDA4YS1hOTFjLWRkZWMyMjY1ZTljNSJ9.CiVBqIlDrG3tWlZHCDL76GJ__y2nUMkDWhGWAY8FAXc" class="fr-fic fr-fil fr-dib" width="1060" style="width: 1062px; height: 491.467px;" height="491"></p><p><strong><span style="font-size: 10pt;">Fig 7. Suggestion conditions</span></strong></p><p><br></p><p><strong>Allowed Ticket Types</strong> - Here choose the ticket types you would like this suggestion to be made on.</p><p><strong>Minimum Score</strong> - Here set the minimum match score an existing ticket needs to have with the new ticket in order to have it's values suggested. Match scores are between 0 and 1 in which 1 is an exact match, 0.85 is considered a reasonable match. </p><p><strong>Minimum Number of Matches</strong> - Here, choose the minimum number of tickets that need to 'match' the new ticket (by meeting the minimum match score) for this suggestion to be made. Most suggestion types will only require one match to be made however, it is useful to increase this minimum for suggestion types such as 'Create a problem ticket for incident matches'. </p><p><strong>The following Field(s) must match</strong> - Here you can restrict matches so that tickets are only deemed as 'matches' when they share the same value in the field(s) chosen here. Useful when you would like to restrict suggestions based on the customer the ticket is for. </p><p><strong>Include Open/Closed/All Tickets</strong> - Here choose which tickets are eligible for matching, open only, closed only or all tickets.</p><p><strong>Tickets Opened/Closed within the last X days</strong> - Here choose which tickets are eligible for matching, only tickets opened/closed within the number of days chosen here can be matched. </p><p><br></p><p>If an existing ticket meets all the conditions set here it will be deemed as a 'match', values from this ticket will then be suggested to be applied to the new ticket, depending on the suggestion type. </p><p><br></p><p>If you would like a suggestion to apply automatically, without the agent evaluating the suggestion, you can enable 'Automatically apply this suggestion' for the suggestion. If enabling automation application we recommended setting a high match score and rigorous conditions for matching to ensure accurate suggestions. </p><p><br></p><p><strong><span style="font-size: 14pt;">Using Ticket Suggestions</span></strong></p><p>Now your ticket suggestions are configured they can be used by agents as to assist in ticket processing. </p><p><br></p><p>When a ticket is logged that suggestions are allowed on you will see an 'Insights' tab against the ticket. If any tickets and/or articles have matched to this ticket they will appear here, along with the 'suggestions' table. </p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImU4MTEzYzUyLTc4YWEtNDk5NS1hYmFiLTgyYmVkYzI1ZmZiOCJ9.QF6kwIUBemVSo3xGdjgYqGDY8pvuaOctttQji8ZVLnI" class="fr-fic fr-fil fr-dib" width="1043" style="width: 1045px; height: 775.379px;" height="775"></p><p><strong><span style="font-size: 10pt;">Fig 8. Ticket suggestions</span></strong></p><p><br></p><p>From here agents can see what suggestions are being made, they can then easily apply a suggestion using the 'Apply suggestion' button or remove the suggestion using 'Dismiss'. The change that the suggestion makes will depend on the type of suggestion it is, agents will not see the suggestion type, only the suggestion information so this must be reflective of the changes that will be made on the ticket when it is carried ou<span style="color: rgb(0, 0, 0);">t. Once a suggestion is applied it will be marked with the date it was applied in the suggestions table.</span></p><p><br></p><p><span style="color: rgb(0, 0, 0);">Suggestions that have been applied will not appear in the 'Event Log' for the ticket but can be seen when viewing 'all actions' against a ticket. </span></p><p><span style="color: rgb(0, 0, 0);"><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjE4YWY5MGNjLTU1MWYtNDc5Zi1hZmE5LTY4YzY2YTYwZmU2OCJ9.uW6-BR_LNV_AAQXB70Vgwl7QEGGCmgnfZsW4IiMcLiQ" class="fr-fic fr-fil fr-dib" width="1065" style="width: 1067px; height: 262.936px;" height="263"></span></p><p><span style="font-size: 10pt;"><strong>Fig 9. View changes made to ticket via a suggestion</strong></span></p><p><br></p><p><span style="color: rgb(0, 0, 0);">The 'Matched Tickets' table will contain all tickets that produced a match score that exceeds the Minimum rank match score (set under configuration > AI). Entries in the table can be selected to open up the matched ticket. </span></p><p><br></p><p><br></p><p><br></p><p><br></p>