ProactiveTriggerAPI – Scoped

  • Freigeben Version: Washingtondc
  • Aktualisiert 1. Februar 2024
  • 5 Minuten Lesedauer
  • Mit der ProactiveTrigger -API können Sie serverseitige Auslöser erstellen, die kontextspezifische Nachrichten an einen angegebenen Benutzer senden.

    Diese API verwendet Regeln und zugehörige Aktionen, die auf diesen Regeln basieren, um Nachrichten an einen Benutzer zu senden. Diese Regeln und Aktionen sind kontextspezifisch und basieren auf Echtzeitdaten, die beim Navigieren des Benutzers durch Portalseiten erfasst werden. Weitere Informationen finden Sie unter Proactive Triggers.

    Vor der Verwendung dieser API müssen die Auslösertypen, Regeln und Aktionen in Ihrer Instanz konfiguriert werden. Informationen zum Konfigurieren von Proaktive Auslöserfinden Sie unter Configuring Proactive Triggers.

    Mit dieser API können Sie Nachrichten an einen bestimmten Benutzer oder einen Benutzer in einer bestimmten Sitzung senden.

    Wenn ein Kunde beispielsweise Artikel zu seinem Einkaufswagen hinzufügt, können Sie ein Ereignis Proaktive Auslöser innerhalb einer Geschäftsregel haben, das den Benutzer daran erinnert, den Checkout nach einer bestimmten Zeit abzuschließen.

    Wenn ein Benutzer eine KI-Suche aus einer Serviceportal ausführt und keine Ergebnisse zurückgegeben werden, können Sie Logik in einer Geschäftsregel haben, die eine Proaktive Auslöser erstellt, die dem Benutzer alternative Angebote über den proaktiven Popover-Nachrichten-Webclient sendet.

    Beim Aufruf der ProactiveTrigger-API müssen die Methoden in einer bestimmten Reihenfolge aufgerufen werden. Diese API wird im Namespace sn_pt ausgeführt.

    Zuerst sollten Sie die Methode ProactiveTriggerAPI – createTrigger(String triggerTypeId) aufrufen, um den Typ des Auslösers anzugeben, den Sie erstellen möchten. Dieser Aufruf ist erforderlich. Eine Liste der verfügbaren Auslösertypen finden Sie unter How Proactive Triggers work.

    Als Nächstes sollten Sie eine der Methoden aufrufen, die den Benutzer identifiziert, an den die Nachrichten gesendet werden sollen. Sie können dazu eine der folgenden Methoden aufrufen:

    Als Nächstes sollten Sie die Methode ProactiveTriggerAPI – setTriggerRecord(String triggerRecord) aufrufen, um den Auslöserdatensatz anzugeben, auf den die Regeln und Aktionen der proaktiven Auslöser angewendet werden sollen.

    Rufen Sie abschließend die Methode ProactiveTriggerAPI – process() auf, um die Aufrufkette auszuführen. Sowohl die Methodenaufrufe setTriggerRecord() als auch process() sind erforderlich.

    Beispiel:
    var eventSysId = sn_pt.ProactiveTriggerAPI.createTrigger(triggerTypeId)
      .setUserName(userName).setTriggerRecord(userId).process();
    

    ProactiveTriggerAPI – createTrigger(String triggerTypeId)

    Erstellt ein serverseitiges Ereignis Proaktive Auslöser.

    Tabelle : 1. Parameter
    Name Typ Beschreibung
    triggerTypeId Zeichenfolge Eindeutige ID des zu erstellenden Auslösertyps. Befindet sich im ID-Feld der Tabelle „Proaktive Auslösertypen“ [sys_cs_pttrigger_trigger_type].

    Beispiel: triggerTypeId = "sn_pt.ai_search_event"

    Tabelle : 2. Ergebnisse
    Parameter Beschreibung
    Keine

    Die folgende Geschäftsregel zeigt, wie die Methode createTrigger() innerhalb einer Geschäftsregel aufgerufen wird.

    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()

    Führt die angegebene API-Anforderung Proaktive Auslöser aus.

    Tabelle : 3. Parameter
    Name Typ Beschreibung
    Keine
    Tabelle : 4. Ergebnisse
    Typ Beschreibung
    sys_id Sys_id des Datensatzes des proaktiven Auslöserereignisses, der erstellt wurde. Befindet sich in der Tabelle „Proaktives Event“ [sys_cs_pttrigger_event].

    Datentyp: Zeichenfolge

    Die folgende Geschäftsregel zeigt, wie die Methode process() aufgerufen wird, um die angegebene API-Anforderung Proaktive Auslöser auszuführen.

    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)

    Legt den Auslöserdatensatz fest, auf den die Regeln und Aktionen der proaktiven Auslöser angewendet werden sollen.

    Diese Regeln und Aktionen werden im zugeordneten Auslösertyp-Datensatz definiert, der sich in der Tabelle „Proaktive Auslösertypen“ [sys_cs_ptrigger_trigger_type] befindet.

    Tabelle : 5. Parameter
    Name Typ Beschreibung
    triggerRecord Zeichenfolge oder GlideRecord Sys_id oder GlideRecord des Auslöserdatensatzes, auf den die zugehörigen Regeln und Aktionen der proaktiven Auslöser angewendet werden sollen. Der Auslöserdatensatz befindet sich in der Tabelle, die im Feld trigger_table des Auslösertyp-Datensatzes angegeben ist, der im Methodenaufruf createTrigger() angegeben wurde.

    Wenn Ihr createTrigger()- Aufruf beispielsweise den Auslösertyp des KI-Suchereignisses angegeben hat, ist die Auslösertabelle die Suchereignistabelle [sys_search_event].

    Hinweis:
    Diese Tabelle ist normalerweise mit der Tabelle identisch, die die Ausführung der Business Rule verursacht hat. Wenn sie nicht identisch ist, müssen Sie diese sys_id dem GlideRecord hinzufügen, damit Sie sie an diese Methode übergeben können.
    Tabelle : 6. Ergebnisse
    Typ Beschreibung
    Keine

    Die folgende Geschäftsregel zeigt, wie die setTriggerRecord()- Methode aufgerufen wird.

    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)

    Legt den Benutzer fest, an den die vom zugeordneten Ereignis Proaktive Auslöser generierte Nachricht gesendet werden soll, und zwar anhand der Benutzer-ID.

    Tabelle : 7. Parameter
    Name Typ Beschreibung
    userId Zeichenfolge Sys_id des Benutzers, an den die zugeordnete Nachricht Proaktive Auslöser gesendet werden soll. Befindet sich in der Benutzertabelle [sys_user] oder im zugeordneten GlideRecord.
    Tabelle : 8. Ergebnisse
    Parameter Beschreibung
    Keine

    Das folgende Codebeispiel zeigt, wie die setUserId()- Methode mit dem Wert im Benutzerfeld des aktuellen GlideRecord aufgerufen wird.

    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)

    Legt den Benutzer fest, an den die vom zugeordneten Ereignis Proaktive Auslöser generierte Nachricht gesendet werden soll, und zwar anhand des Benutzernamens.

    Tabelle : 9. Parameter
    Name Typ Beschreibung
    userName Zeichenfolge Name des Benutzers, an den die proaktive Nachricht gesendet werden soll. Dieser Name muss mit dem Feld Benutzer-ID in der Benutzertabelle [sys_user] korrelieren, z. B. „abel.tuter“.
    Tabelle : 10. Ergebnisse
    Parameter Beschreibung
    Keine

    Die folgende Business Rule zeigt, wie die setUserName()- Methode mit dem Wert im Feld sys_created_by des aktuellen GlideRecord aufgerufen wird.

    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)

    Legt die Benutzersitzungs-ID für das zugeordnete Ereignis Proaktive Auslöser fest. Bei Verwendung dieser Methode wird die proaktive Nachricht nur an den Benutzer gesendet, der einer bestimmten Sitzung zugeordnet ist.

    Tabelle : 11. Parameter
    Name Typ Beschreibung
    userSessionId Zeichenfolge Sys_id der aktuellen Sitzung des Benutzers, an den die Nachricht Proaktive Auslöser gesendet werden soll.
    Hinweis:
    Nicht alle Tabellen enthalten eine Sitzungs-ID. Stellen Sie vor der Verwendung dieses Endpunkts sicher, dass die Tabelle, auf die Sie verweisen, eine gültige Sitzungs-ID enthält. Andernfalls wird die letzte verfügbare Sitzungs-ID verwendet, was zu fehlerhaften Ergebnissen führen kann.
    Tabelle : 12. Ergebnisse
    Parameter Beschreibung
    Keine

    Die folgende Geschäftsregel zeigt, wie die setUserSessionId()- Methode mit dem Wert im Sitzungsfeld des aktuellen GlideRecord aufgerufen wird.

    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.
    }