Erstellen Sie eine Datenstromaktion, um die Anwenderaktivität abzurufen
Erstellen Sie eine Datenstromaktion, um Benutzeraktivitäten aus einer SaaS-Anwendung abzurufen.
Vorbereitungen
Wenn Sie eine vorhandene ServiceNow® IntegrationHub -Spoke verwenden, prüfen Sie, ob sie über eine Datenstromaktion zum Abrufen von Benutzeraktivitäten verfügt, die Sie verwenden können, anstatt eine zu erstellen.
Weitere Informationen zu Datenstromaktionen finden Sie unter Datenstromaktionen.
Erforderliche Rolle: flow_designer oder admin
Warum und wann dieser Vorgang ausgeführt wird
Entscheiden Sie vor dem Erstellen der Datenstromaktion, wie Sie sinnvolle Benutzeraktivitäten definieren möchten. Eine aussagekräftige Aktivität kann eine Kombination von Benutzeraktionen sein. Erstellen Sie für jede Anwenderaktivitätsmetrik eine separate Datenstromaktion. Beispielsweise definiert das Basissystem Webex Meetings integration eine sinnvolle Aktivität als das Hosten eines Meetings. Er verwendet eine Datenstromaktion, um die Daten der zuletzt gehosteten Besprechungen für alle Benutzer abzurufen. Wenn die Integration mit Webex Meetings auch die Anmeldung als sinnvolle Aktivität einbeziehen soll, erstellen Sie eine zweite Datenstromaktion, um die letzten Anmeldezeiten für alle Benutzer abzurufen.
Ihre Datenstromaktion zum Abrufen von Anwendern kann eine Anwenderaktivitätsmetrik zurückgeben, z. B. die Zeit der letzten Anmeldung. In diesem Fall müssen Sie keine Datenstromaktion zum Abrufen der Benutzeraktivität oder keinen Subflow zum Abrufen der Benutzeraktivität erstellen, es sei denn, Sie möchten zusätzliche Benutzeraktivitätsmetriken definieren. Stellen Sie sicher, dass Ihr Subflow zum Abrufen von Anwendern diese Anwenderaktivitätsmetrik als Eingabe Letzte Aktivität in der Aktion Upsert Anwenderabonnement festlegt.
Prozedur
- Navigieren zu Alle > Flow Designer > Designer.
- Klicken Sie auf Neu, und wählen Sie Datenstromaus.
-
Füllen Sie die Felder des Formulars aus.
Tabelle : 1. Formular „Aktionseigenschaften“. Feld Wert Name Name Ihrer Wahl. Beispiel: Anwenderaktivität abrufen. Zugänglich von Alle Anwendungsbereiche. Kategorie Lassen Sie dieses Feld leer. Schutz Keine. Anwendung Spoke-App zur Integration mit der SaaS-Anwendung. Diese Spoke-App kann eine vorhandene IntegrationHub -Spoke oder eine neu erstellte Spoke sein. In-Flow-Anmerkung Lassen Sie dieses Feld leer. Beschreibung Beschreibung Ihrer Wahl. - Klicken Sie auf Absenden.
- Klicken Sie im Abschnitt Eingaben der Aktionsgliederung auf Eingabe erstellen.
-
Fügen Sie eine Rückblickzeiteingabe hinzu.
Tabelle : 2. Eingaben Bezeichnung Name Typ Obligatorisch Rückblickzeit look_back_time Datum/Uhrzeit Ja -
Wenn die API, mit der Sie arbeiten, eine Anwenderauthentifizierung für Anforderungen erfordert, fügen Sie Eingaben für die Authentifizierung hinzu.
Beispiele für allgemeine Eingaben zur Anwenderauthentifizierung sind Administratoranwender-ID und Site-Name. In der Dokumentation für die von Ihnen ausgewählte API erfahren Sie mehr über die Anforderungen für die Anwenderauthentifizierung in Ihrem speziellen Fall. Wenn die API ein Zugriffstoken erfordert, wird später automatisch eine Variable für den Anmeldeinformationswert erstellt. Sie müssen kein Zugriffstoken als Eingabe hinzufügen.
Wenn Sie Ihre abgeschlossene Datenstromaktion in einem Subflow verwenden, definieren Sie, welche Werte als Eingaben übergeben werden sollen.
- Klicken Sie in der Aktionsgliederung auf Anforderung.
-
Füllen Sie die Felder des Formulars aus.
Tabelle : 3. Anforderungsformular Feld Wert So rufen Sie Daten ab Wählen Sie entweder REST-Schritt oder SOAP-Schritt aus. Ihre Auswahl hängt von der API für die SaaS-Anwendung ab, die Sie integrieren möchten. Paginierung aktivieren Ausgewählt. Vor jeder Anforderung ein Skript ausführen Nicht ausgewählt. - Klicken Sie in der Aktionsgliederung auf den Schritt „Paginierungseinrichtung “.
-
Definieren Sie Paginierungsvariablen basierend auf den von der SaaS-API verwendeten Abfrageparametern.
Wenn Sie Offset-basierte Paginierung verwenden, verwenden Sie die Paginierungsvorlage „Limit/Offset“, um die Paginierungskonfiguration vorab zu laden.
Hinweis:Der Wert der reserviertengetNextPage-Variablen bestimmt, ob eine weitere Seite mit Ergebnissen angefordert werden soll. Solange die VariablegetNextPageauf „ true“ festgelegt ist, sendet die Aktion weiterhin Anforderungen für die nächste Seite. -
Schreiben Sie ein Skript für Paginierungsvariablen, um die Paginierungsvariablen zu aktualisieren.
Das Skript wird bei jeder Anforderung ausgeführt. Wenn Sie eine Paginierungsvorlage verwenden, passen Sie das vorab geladene Skript nach Bedarf an.
Die folgende Abbildung zeigt ein abgeschlossenes Beispiel für den Setup-Schritt der Paginierung. Dieses Beispiel stammt aus der Datenstromaktion „Anwender abrufen“, die im Subflow Webex „ Abonnements herunterladen verwendet wird.
Hinweis:Paginierungsvariablen unterstützen nur den Datentyp Zeichenfolge. Um mathematische Berechnungen durchzuführen, konvertieren Sie den Wert in eine Ganzzahl, führen Sie alle erforderlichen Vorgänge aus, und wandeln Sie den Wert dann zurück in eine Zeichenfolge um. - Klicken Sie in der Aktionsgliederung auf SOAP-Schritt oder REST-Schritt, je nachdem, welche Option Sie für das Abrufen von Daten ausgewählt haben.
-
Wenn Sie SOAPausgewählt haben, füllen Sie das Formular wie gezeigt aus.
Tabelle : 4. SOAP-Schrittformular Feld Wert Verbindungsdetails Verbindung Verbindungs-Alias verwenden. Verbindungsalias Verbindungsalias, den Sie beim Erstellen des Integrationsprofils erstellt haben. Wenn Sie noch kein Integrationsprofil erstellt haben, führen Sie die folgenden Schritte aus, um ein anwenderdefiniertes Integrationsprofil mit einem Verbindungsalias zu erstellen. Endpunkt Dieser Wert wird automatisch ausgefüllt, wenn Sie den Verbindungsalias auswählen. Sie wird auf die Verbindungs-URL aus dem HTTP(s)-Verbindungsdatensatz festgelegt, der mit dem Alias verknüpft ist. Details anfordern Umschlag erstellen Manuell. SOAP-Aktion API-Anforderung zum Abrufen einer Liste aussagekräftiger Anwenderaktivitäten. Beispielsweise definiert die Meetings-Integration des Basissystems Webex eine sinnvolle Benutzeraktivität als das Hosten einer Besprechung, sodass mithilfe der Anforderung LssummaryMeetingeine Liste aller Besprechungen abgerufen wird. Informationen zur Auswahl der entsprechenden Anforderung finden Sie in der Dokumentation zu der von Ihnen ausgewählten API.SOAP-Umschlag XML-Anforderungsnachricht zum Abrufen einer Liste aller Anwender. In der Dokumentation für die von Ihnen ausgewählte API erfahren Sie, wie Sie eine XML-Anforderungsnachricht schreiben. Im Allgemeinen sollte der Header Ihre Eingabevariablen für die Anwenderauthentifizierung sowie die Variable „Anmeldeinformationswert“ als Zugriffstoken enthalten. Der Textkörper sollte die Anforderung zum Abrufen einer Liste sinnvoller Anwenderaktivitäten, ein Startdatum, das als Eingabe für die Rückblickzeit festgelegt ist, und Ihre Variablen aus dem Setup-Schritt für die Paginierung enthalten. Hinweis:Ein Beispiel für einen SOAP-Umschlag finden Sie unter der Datenstromaktion Benutzeraktivität abrufen, die im Subflow „Benutzeraktivität aktualisieren Webex “ verwendet wird. -
Wenn Sie RESTausgewählt haben, füllen Sie das Formular wie gezeigt aus.
Tabelle : 5. REST-Schrittformular Feld Wert Verbindungsdetails Verbindung Verbindungs-Alias verwenden. Verbindungsalias Verbindungsalias, den Sie beim Erstellen des Integrationsprofils erstellt haben. Wenn Sie noch kein Integrationsprofil erstellt haben, führen Sie die folgenden Schritte aus, um ein anwenderdefiniertes Integrationsprofil mit einem Verbindungsalias zu erstellen. Basis-URL Dieser Wert wird automatisch ausgefüllt, wenn Sie den Verbindungsalias auswählen. Sie wird auf die Verbindungs-URL aus dem HTTP(s)-Verbindungsdatensatz festgelegt, der mit dem Alias verknüpft ist. Details anfordern Build-Anforderung Manuell. Ressourcenpfad Pfad zur Ressource. Dieser Wert wird an die Basis-URL angehängt. In der Dokumentation der API, mit der Sie arbeiten, erfahren Sie, wie Sie den Ressourcenpfad erstellen. HTTP-Methode ABRUFEN. Abfrageparameter Fügen Sie Parameter für die Paginierung hinzu. Legen Sie die Werte als die Variablen fest, die Sie im Schritt „Paginierungseinrichtung“ erstellt haben. Fügen Sie einen weiteren Parameter für das Startdatum hinzu, damit die Anforderung Ergebnisse vom Startdatum bis zum aktuellen Datum zurückgibt. Legen Sie den Wert als Eingabe Rückblickzeit fest.Hinweis:Stellen Sie sicher, dass die Datums-/Uhrzeiteingabe-Variable Rückblickzeit für die API, mit der Sie arbeiten, richtig formatiert ist. Wenn Sie eine Neuformatierung oder Konvertierung in einen anderen Datentyp wie eine Zeichenfolge durchführen müssen, können Sie dies im Skriptschritt der Aktionsvorverarbeitung tun.Die folgende Abbildung zeigt ein abgeschlossenes Beispiel für den REST-Schritt. Dieses Beispiel stammt aus der Datenstreamaktion „Audit-Protokoll abrufen“, die im Subflow Jira „ Anwenderaktivität aktualisieren verwendet wird.
- Klicken Sie in der Aktionsgliederung auf Analyse.
-
Füllen Sie die Felder des Formulars aus.
Tabelle : 6. Analyseformular Feld Wert So werden eiWie werden Sie jeden Datensatz identifizieren? JSON/XML-Splitter So werden die einzelnen Elemente in einem Objekt analysiert Skriptparser - Klicken Sie in der Aktionsgliederung auf den Schritt Splitter.
-
Füllen Sie die Felder des Formulars aus.
Tabelle : 7. Splitter-Schrittformular Feld Wert Quellformat Wählen Sie je nach dem von der API-Antwort zurückgegebenen Format XML oder JSON aus. Elementpfad Absoluter Pfad zu einem sinnvollen Aktivitätselement in der Antwortnachricht. Informationen zum Format der Antwortnachricht finden Sie in der Dokumentation der API, mit der Sie arbeiten. - Beispiel für einen XML-Elementpfad:
/message/body/meeting - Beispiel für einen JSON-Elementpfad:
$.data.meeting
- Beispiel für einen XML-Elementpfad:
- Klicken Sie in der Aktionsgliederung auf Ausgaben.
-
Klicken Sie auf Ausgabe erstellen und bearbeiten Sie die Variable wie in der Abbildung dargestellt.
Tabelle : 8. Aktionsausgabe Bezeichnung Name Typ Obligatorisch targetObject targetObject Objekt Nein -
Fügen Sie untergeordnete Elemente für targetObject hinzu, um die Anwender-E-Mail-Adresse und das Datum einer sinnvollen Aktivität zu speichern.
Eine XML-Antwort könnte beispielsweise so aussehen.
Fügen Sie für diese Antwort die untergeordneten Elemente wie gezeigt hinzu.<message> <body> <meeting> <meetingID>12345</meetingID> <startDate>08/13/2019 20:08:16</startDate> <hostEmail>email@email.com</hostEmail> </meeting> <meeting> ... </meeting> </body> </message>Tabelle : 9. Untergeordnete Elemente für targetObject Bezeichnung Name Typ Obligatorisch E-Mail E-Mail Zeichenfolge Nein last_activity last_activity Zeichenfolge Nein - Klicken Sie in der Aktionsgliederung auf den Schritt Skript-Parser.
-
Erstellen Sie für jedes sinnvolle Aktivitätselement in der Antwort ein Zielobjekt- Ausgabeobjekt, und ordnen Sie dann das Aktivitätsdatum und die Anwender-E-Mail-Adresse den untergeordneten Zielobjekt- Elementen zu.
Das Parser-Skript wird für jedes Anwenderelement ausgeführt.
Hinweis:Diese Beispiele zeigen die Arten von Elementen, die in einer Antwort enthalten sein können. Kopieren Sie diese Skripts nicht direkt. Verwenden Sie Elementnamen aus der Dokumentation für die API, mit der Sie arbeiten.Beispielskript, das eine XML-Antwort analysiert.(function parse(inputs, outputs) { var xmlDoc = new XMLDocument(inputs.sourceItem, false); outputs.targetObject.email = xmlDoc.getNodeText('/meeting/hostEmail'); outputs.targetObject.last_activity = xmlDoc.getNodeText('/meeting/startDate'); })(inputs, outputs)Beispielskript, das eine JSON-Antwort analysiert(function parse(inputs, outputs) { var record = JSON.parse(inputs.sourceItem); outputs.targetObject.email = record.hostEmail; outputs.targetObject.last_activity = record.startDate; })(inputs, outputs) -
Um Ihre Datenstromaktion zu testen, klicken Sie auf Test.
-
Zeigen Sie die Testergebnisse und Systemprotokolle an, um Details zu Fehlern zu erhalten.
Um Systemprotokolle anzuzeigen, navigieren Sie zu Systemprotokolle > Systemprotokoll > Alle.
- Wenn bei der Datenstromaktion Fehler auftreten, vergewissern Sie sich, dass Sie die richtigen Endpunkte verwenden und dass die API-Anforderungen und -Antworten wie erwartet strukturiert sind.
-
Zeigen Sie die Testergebnisse und Systemprotokolle an, um Details zu Fehlern zu erhalten.
- Nachdem Sie sich vergewissert haben, dass die Datenstromaktion wie erwartet funktioniert, klicken Sie auf Veröffentlichen.