Bereitstellung eines Skripts für benutzerdefinierte Aufgabenempfehlungskriterien
Richtlinien zum Erstellen von Skripts in Empfehlungskriterien für eine Richtlinie für intelligente Aufgabenempfehlung.
Rückgabeobjekt des Anpassungsskripts
Ihr Skript sollte ein JavaScript-Objekt in einer Mindestform wie folgt zurückgeben:
{
"<task sys_id1>":
{
"rating": <rating1>
},
"<task sys_id2>”:
{
"rating": <rating2>
},
…
}Legen Sie für Filtereinschränkungen die Bewertung der Rückgabeobjekte auf eins fest, um das Filtereinschränkungsergebnis der Empfehlungskriterien zu vereinheitlichen, indem Sie sn_task_recommend.TaskRecommendationUtil.setRatingToOne(your object); verwenden. -Methode.
Um das Bewertungsergebnis der Rangfolgekriterien zu normalisieren, muss das zurückgegebene JavaScript-Objekt Normalisierungsinformationen enthalten.
{
"<task <sys_id1>":
{
"rating": <rating1>,
"normalizationData":
{
"numerator": <numerator value1>,
"denominator": <denominator value1>
}
},
"<task <sys_id2>":
{
"rating": <rating2>,
"normalizationData":
{
"numerator": <numerator value2>,
"denominator": <denominator value2>
}
},
...
}Für Rangfolgekriterien kann das Rückgabeobjekt Daten für die endgültige Normalisierung enthalten.
Hinweis:
Wenn Ihre Skripts Normalisierungsdaten enthalten, können Sie sich auf die standardmäßigen Skripteinbindungen in den vordefinierten Empfehlungskriterien beziehen:
- Die Filtereinschränkung Aufgaben ausschließen, die der Service Desk-Mitarbeiter nicht durchlaufen kann: sn_fsm_task_rec.TaskRecommendationDistanceRuleProcessor
- Die Rangfolgekriterien Entfernung zur Aufgabe: rankTaskOnDistance()
Angepasstes Skript in Empfehlungskriterien
Das folgende Beispiel zeigt, wie ein Skript für die Empfehlungskriterien geschrieben wird.
var customizedScript = <your-script>;
var customizedResult = customizedScript.<your-method>();
ruleResult = TaskRecommendationFSMUtil.parseRuleResult(customizedResult, "<customized-rule>");Die folgende Beispielkonfiguration stellt eine Filtereinschränkung „Entfernung zur Aufgabe“ bereit.
var distanceRule = new TaskRecommendationDistanceRuleProcessor(args);
var ruleProcessResult = distanceRule.processRule(user, tasks, timeStart, timeEnd, 'ranking');
ruleResult = TaskRecommendationFSMUtil.parseRuleResult(ruleProcessResult, "Distance from task");
Hinweis:
Ersetzen Sie das Stichwort für die Aufgabenempfehlungsanwendung
„regelErgebnis“ im Skript nicht durch andere Wörter. Andernfalls kann die Anwendung das Ergebnis der Regelausführung nicht verarbeiten.