ProactiveTriggerAPI : inclus dans le périmètre
ProactiveTriggerAPI vous permet de créer des déclencheurs côté serveur qui envoient des messages contextuels à un utilisateur spécifié.
Cette API utilise des règles et des actions connexes basées sur ces règles pour envoyer des messages à un utilisateur. Ces règles et actions sont spécifiques au contexte et sont basées sur les données en temps réel recueillies lorsque l’utilisateur navigue entre les pages du portail. Pour en savoir plus, consultez Proactive Triggers.
Avant d’utiliser cette API, les types de déclencheurs, les règles et les actions doivent être configurés sur votre instance. Pour en savoir plus sur la configuration Déclencheurs proactifs, reportez-vous à la section Configuring Proactive Triggers.
À l’aide de cette API, vous pouvez envoyer des messages à un utilisateur spécifique ou à un utilisateur dans une session spécifique.
Par exemple, dans le cas où un client ajoute des articles à son panier, vous pouvez avoir un Déclencheurs proactifs événement dans une règle métier qui envoie un rappel à l’utilisateur pour terminer le paiement après un laps de temps spécifié.
De même, si un utilisateur effectue un à Recherche IA partir de a Portail de services et qu’aucun résultat n’est renvoyé, vous pouvez avoir une logique dans une règle métier qui crée un Déclencheurs proactifs qui envoie des offres alternatives à l’utilisateur via le client Web de message popover proactif.
Lors de l’appel de ProactiveTriggerAPI, il existe une séquence spécifique dans laquelle vous devez appeler les méthodes. Cette API s’exécute dans l’espace de noms sn_pt .
Tout d’abord, vous devez appeler la ProactiveTriggerAPI : createTrigger(String triggerTypeId) méthode pour spécifier le type de déclencheur que vous souhaitez créer. Cet appel est requis. Pour obtenir la liste des types de déclencheurs disponibles, reportez-vous à How Proactive Triggers work.
- ProactiveTriggerAPI : setUserId(String userId): identifie l’utilisateur par la sys_id de l’enregistrement Utilisateur [sys_users] associé.
- ProactiveTriggerAPI : setUserName(String userName): identifie l’utilisateur par son nom d’utilisateur, tel que « abel.tuter ».
- ProactiveTriggerAPI : setUserSessionId(String userId): identifie l’utilisateur par son sys_id de session en cours.
Ensuite, vous devez appeler la ProactiveTriggerAPI : setTriggerRecord(String triggerRecord) méthode pour spécifier l’enregistrement de déclencheur sur lequel appliquer les règles et les actions des déclencheurs proactifs.
Enfin, appelez la ProactiveTriggerAPI : process() méthode pour exécuter la chaîne d’appel. Les appels de méthode setTriggerRecord() et process() sont requis.
var eventSysId = sn_pt.ProactiveTriggerAPI.createTrigger(triggerTypeId)
.setUserName(userName).setTriggerRecord(userId).process();
ProactiveTriggerAPI : createTrigger(String triggerTypeId)
Crée un événement côté Déclencheurs proactifs serveur.
| Nom | Type | Description |
|---|---|---|
| triggerTypeId (en anglais seulement) | Chaîne | ID unique du type de déclencheur à créer. Situé dans le champ ID de la table Types de déclencheurs proactifs [sys_cs_ptrigger_trigger_type]. Par exemple : |
| Paramètre | Description |
|---|---|
| Néant |
La règle métier suivante montre comment appeler la méthode createTrigger() à l’intérieur d’une règle métier.
try {
var triggerTypeId = "sn_pt.ai_search_event";
var userId = current.getValue("user");
var eventSysId = sn_pt.ProactiveTriggerAPI.createTrigger(triggerTypeId)
.setUserId(userId).setTriggerRecord(current).process();
// Returns the Proactive Trigger Event record's sys_id
gs.info("Proactive Trigger Event Sys Id:"+ eventSysId);
} catch (e) {
gs.info("error:"+e); // Log the error.
}
ProactiveTriggerAPI : process()
Exécute la demande d’API spécifiée Déclencheurs proactifs .
| Nom | Type | Description |
|---|---|---|
| Aucun |
| Type | Description |
|---|---|
| sys_id | Sys_id de l’enregistrement d’événement déclencheur proactif qui a été créé. Situé dans la table Événement proactif [sys_cs_ptrigger_event]. Type de données : chaîne |
La règle métier suivante montre comment appeler la méthode process() pour exécuter la demande d’API spécifiée Déclencheurs proactifs .
try {
var triggerTypeId = "sn_pt.ai_search_event";
var userId = current.getValue("user");
var eventSysId = sn_pt.ProactiveTriggerAPI.createTrigger(triggerTypeId)
.setUserId(userId).setTriggerRecord(current).process();
// Returns the Proactive Trigger Event record's sys_id
gs.info("Proactive Trigger Event Sys Id:"+ eventSysId);
} catch (e) {
gs.info("error:"+e); // Log the error.
}
ProactiveTriggerAPI : setTriggerRecord(String triggerRecord)
Définit l’enregistrement de déclencheur sur lequel appliquer les règles et les actions des déclencheurs proactifs.
Ces règles et actions sont définies dans l’enregistrement de type de déclencheur associé, situé dans la table Types de déclencheurs proactifs [sys_cs_ptrigger_trigger_type].
| Nom | Type | Description |
|---|---|---|
| triggerRecord | Chaîne ou GlideRecord | Sys_id ou GlideRecord de l’enregistrement de déclencheur auquel appliquer les règles et les actions des déclencheurs proactifs associés. L’enregistrement du déclencheur se trouve dans la table spécifiée dans le champ trigger_table de l’enregistrement du type de déclencheur spécifié dans l’appel de méthode createTrigger(). Par exemple, si votre appel createTrigger() spécifie le type de déclencheur d’événement AI Search, la table de déclencheur est la table Événement de recherche [sys_search_event]. Remarque : Cette table est généralement la même que celle qui a provoqué l’exécution de la règle métier. Si ce n’est pas la même chose, vous devrez ajouter cette sys_id au GlideRecord afin de pouvoir la transmettre dans cette méthode. |
| Type | Description |
|---|---|
| Néant |
La règle métier suivante montre comment appeler la méthode setTriggerRecord().
try {
var triggerTypeId = "sn_pt.ai_search_event";
var userId = current.getValue("user");
var eventSysId = sn_pt.ProactiveTriggerAPI.createTrigger(triggerTypeId)
.setUserId(userId).setTriggerRecord(current).process();
// Returns the Proactive Trigger Event record's sys_id
gs.info("Proactive Trigger Event Sys Id:"+ eventSysId);
} catch (e) {
gs.info("error:"+e); // Log the error.
}
ProactiveTriggerAPI : setUserId(String userId)
Définit l’utilisateur à qui envoyer le message généré par l’événement associé Déclencheurs proactifs à l’aide de l’ID d’utilisateur.
| Nom | Type | Description |
|---|---|---|
| userId | Chaîne | Sys_id de l’utilisateur à qui envoyer le message associé Déclencheurs proactifs . Situé dans la table Utilisateur [sys_user] ou dans le GlideRecord associé. |
| Paramètre | Description |
|---|---|
| Néant |
L’exemple de code suivant montre comment appeler la méthode setUserId() à l’aide de la valeur dans le champ utilisateur du GlideRecord actuel.
try {
var triggerTypeId = "sn_pt.ai_search_event";
var userId = current.getValue("user");
var eventSysId = sn_pt.ProactiveTriggerAPI.createTrigger(triggerTypeId)
.setUserId(userId).setTriggerRecord(current).process();
// Returns the Proactive Trigger Event record's sys_id
gs.info("Proactive Trigger Event Sys Id:"+ eventSysId);
} catch (e) {
gs.info("error:"+e); // Log the error.
}
ProactiveTriggerAPI : setUserName(String userName)
Définit l’utilisateur à qui envoyer le message généré par l’événement associé Déclencheurs proactifs à l’aide du nom d’utilisateur.
| Nom | Type | Description |
|---|---|---|
| userName | Chaîne | Nom de l’utilisateur à qui envoyer le message proactif. Ce nom doit être mis en corrélation avec le champ ID d’utilisateur dans la table Utilisateur [sys_user], par exemple « abel.tuter ». |
| Paramètre | Description |
|---|---|
| Néant |
La règle métier suivante montre comment appeler la méthode setUserName() à l’aide de la valeur du champ sys_created_by du GlideRecord actuel.
try {
var triggerTypeId = "sn_pt.ai_search_event";
// User name of the user to whom to send the proactive message.
var userName = current.getValue("sys_created_by");
var eventSysId = sn_pt.ProactiveTriggerAPI.createTrigger(triggerTypeId)
.setUserName(userName).setTriggerRecord(current).process();
// Returns the Proactive Trigger Event record's sys_id
gs.info("Proactive Trigger Event Sys Id:"+ eventSysId);
} catch (e) {
gs.info("error:"+e); // Log the error.
}
ProactiveTriggerAPI : setUserSessionId(String userId)
Définit l’ID de session utilisateur sur l’événement associé Déclencheurs proactifs . Lorsque cette méthode est utilisée, le message proactif n’est envoyé qu’à l’utilisateur spécifique associé à une session spécifique.
| Nom | Type | Description |
|---|---|---|
| ID de session utilisateur | Chaîne | Sys_id de la session en cours de l’utilisateur auquel le Déclencheurs proactifs message doit être envoyé. Remarque : Toutes les tables ne contiennent pas d’ID de session. Avant d’utiliser ce point de terminaison, assurez-vous que la table à laquelle vous faites référence contient un ID de session valide. Si ce n’est pas le cas, le dernier ID de session disponible est utilisé, ce qui peut entraîner des résultats erronés. |
| Paramètre | Description |
|---|---|
| Néant |
La règle métier suivante montre comment appeler la méthode setUserSessionId() à l’aide de la valeur dans le champ session du GlideRecord actuel.
try {
var triggerTypeId = "sn_pt.ai_search_event";
var sessionId = current.getValue("session");
var eventSysId = sn_pt.ProactiveTriggerAPI.createTrigger(triggerTypeId)
.setUserSessionId(sessionId).setTriggerRecord(current).process();
// Returns the Proactive Trigger Event record's sys_id
gs.info("Proactive Trigger Event Sys Id:"+ eventSysId);
} catch (e) {
gs.info("error:"+e); // Log the error.
}