---
sourceDocument: Xanadu – IT Asset Management
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/de-DE/xanadu/it-asset-management

 Release :

    - xanadu

ft:locale :

    - de-DE

ft:publication_title :

    - Xanadu – IT Asset Management

ft:clusterId :

    - itam

bundleId :

    - itam

workflow :

    - Technology


---

# Erstellen Sie eine Datenstromaktion, um die Anwenderaktivität abzurufen

# Erstellen Sie eine Datenstromaktion, um die Anwenderaktivität abzurufen {#ariaid-title1}

* Freigeben Version: Xanadu
* 
* Aktualisiert 1. August 2024
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 7 Minuten Lesedauer

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](https://www.servicenow.com/docs/access?context=data-stream-actions&version=xanadu&pubname=xanadu-integrate-applications&ft:locale=en-US).

Erforderliche Rolle: flow_designer oder admin

## Warum und wann dieser Vorgang ausgeführt wird

Überwachen Sie die Benutzeraktivität, um Softwareabonnements zu finden, für die Ihr Unternehmen bezahlt, die aber nicht verwendet werden. Sie können diese nicht verwendeten Abonnements zurückfordern, um die Softwarekosten Ihres Unternehmens zu senken.

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

1. Navigieren zu AlleFlow DesignerDesigner.
2. Klicken Sie auf Neu, und wählen Sie Datenstromaus.
3. Füllen Sie die Felder des Formulars aus.  
   {#create-data-stream-get-activity__table_j2c_w4j_rjb__entry__2}

   | 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. |
   [Tabelle : 1. Formular „Aktionseigenschaften".]

   {#create-data-stream-get-activity__table_j2c_w4j_rjb}
4. Klicken Sie auf Absenden.
5. Klicken Sie im Abschnitt Eingaben der Aktionsgliederung auf Eingabe erstellen.
6. Fügen Sie eine Rückblickzeiteingabe hinzu.  
   {#create-data-stream-get-activity__table_vjm_pqb_njb__entry__4}

   | Bezeichnung | Name | Typ | Obligatorisch |
   |-|-|-|-|
   | Rückblickzeit | look_back_time | Datum/Uhrzeit | Ja |
   [Tabelle : 2. Eingaben]

   {#create-data-stream-get-activity__table_vjm_pqb_njb}
7. 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 <var class="keyword varname">Anmeldeinformationswert</var> 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.
8. Klicken Sie in der Aktionsgliederung auf Anforderung.
9. Füllen Sie die Felder des Formulars aus.  
   {#create-data-stream-get-activity__table_k2c_w4j_rjb__entry__2}

   | 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. |
   [Tabelle : 3. Anforderungsformular]

   {#create-data-stream-get-activity__table_k2c_w4j_rjb}
10. Klicken Sie in der Aktionsgliederung auf den Schritt „Paginierungseinrichtung ".
11. 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 reservierten `getNextPage-` Variablen bestimmt, ob eine weitere Seite mit Ergebnissen angefordert werden soll. Solange die Variable `getNextPage` auf „ true" festgelegt ist, sendet die Aktion weiterhin Anforderungen für die nächste Seite.
12. 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.
13. 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.
14. Wenn Sie SOAPausgewählt haben, füllen Sie das Formular wie gezeigt aus.  
    {#create-data-stream-get-activity__table_o2c_w4j_rjb__entry__2}

    | 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.](https://servicenow-prod.fluidtopics.net/oMLePxit3AJSwj6Wx177zA "Erstellen Sie ein anwenderdefiniertes Integrationsprofil, um Softwareabonnements nachzuverfolgen und veraltete Lizenzen für SaaS-Anwendungen zu optimieren.") |
    | 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 `LssummaryMeeting` eine 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 <var class="keyword varname">„Anmeldeinformationswert“</var> 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. |
    [Tabelle : 4. SOAP-Schrittformular]

    {#create-data-stream-get-activity__table_o2c_w4j_rjb}
15. Wenn Sie RESTausgewählt haben, füllen Sie das Formular wie gezeigt aus.  
    {#create-data-stream-get-activity__table_p2c_w4j_rjb__entry__2}

    | 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.](https://servicenow-prod.fluidtopics.net/oMLePxit3AJSwj6Wx177zA "Erstellen Sie ein anwenderdefiniertes Integrationsprofil, um Softwareabonnements nachzuverfolgen und veraltete Lizenzen für SaaS-Anwendungen zu optimieren.") |
    | 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. |
    [Tabelle : 5. REST-Schrittformular]

    {#create-data-stream-get-activity__table_p2c_w4j_rjb}

    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.
16. Klicken Sie in der Aktionsgliederung auf Analyse.
17. Füllen Sie die Felder des Formulars aus.  
    {#create-data-stream-get-activity__table_tpt_jmr_sjb__entry__2}

    | Feld | Wert |
    |-|-|
    | So werden eiWie werden Sie jeden Datensatz identifizieren? | JSON/XML-Splitter |
    | So werden die einzelnen Elemente in einem Objekt analysiert | Skriptparser |
    [Tabelle : 6. Analyseformular]

    {#create-data-stream-get-activity__table_tpt_jmr_sjb}
18. Klicken Sie in der Aktionsgliederung auf den Schritt Splitter.
19. Füllen Sie die Felder des Formulars aus.  
    {#create-data-stream-get-activity__table_r2c_w4j_rjb__entry__2}

    | 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` {#create-data-stream-get-activity__ul_s2c_w4j_rjb} |
    [Tabelle : 7. Splitter-Schrittformular]

    {#create-data-stream-get-activity__table_r2c_w4j_rjb}
20. Klicken Sie in der Aktionsgliederung auf Ausgaben.
21. Klicken Sie auf Ausgabe erstellen und bearbeiten Sie die Variable wie in der Abbildung dargestellt.  
    {#create-data-stream-get-activity__table_t2c_w4j_rjb__entry__4}

    | Bezeichnung | Name | Typ | Obligatorisch |
    |-|-|-|-|
    | targetObject | targetObject | Objekt | Nein |
    [Tabelle : 8. Aktionsausgabe]

    {#create-data-stream-get-activity__table_t2c_w4j_rjb}
22. Fügen Sie untergeordnete Elemente für <var class="keyword varname">targetObject hinzu</var>, um die Anwender-E-Mail-Adresse und das Datum einer sinnvollen Aktivität zu speichern.  
    Eine XML-Antwort könnte beispielsweise so aussehen.

        <message>​
          <body>​
            <meeting>
              <meetingID>​12345</meetingID>​
              <startDate>​08/13/2019 20:08:16</startDate>​
              <hostEmail>​email@email.com</hostEmail>​
            </meeting>​
            <meeting>
              ...
            </meeting>
          </body>​
        </message>

    Fügen Sie für diese Antwort die untergeordneten Elemente wie gezeigt hinzu.{#create-data-stream-get-activity__table_u2c_w4j_rjb__entry__4}

    | Bezeichnung | Name | Typ | Obligatorisch |
    |-|-|-|-|
    | E-Mail | E-Mail | Zeichenfolge | Nein |
    | last_activity | last_activity | Zeichenfolge | Nein |
    [Tabelle : 9. Untergeordnete Elemente für targetObject]

    {#create-data-stream-get-activity__table_u2c_w4j_rjb}
23. Klicken Sie in der Aktionsgliederung auf den Schritt Skript-Parser.
24. Erstellen Sie für jedes sinnvolle Aktivitätselement in der Antwort ein <var class="keyword varname">Zielobjekt-</var> Ausgabeobjekt, und ordnen Sie dann das Aktivitätsdatum und die Anwender-E-Mail-Adresse den <var class="keyword varname">untergeordneten Zielobjekt-</var> 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)

25. Um Ihre Datenstromaktion zu testen, klicken Sie auf Test.
    1. Zeigen Sie die Testergebnisse und Systemprotokolle an, um Details zu Fehlern zu erhalten.  
       Um Systemprotokolle anzuzeigen, navigieren Sie zu SystemprotokolleSystemprotokollAlle.
    2. 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.
    {#create-data-stream-get-activity__substeps_tnl_zxq_zjb}
26. Nachdem Sie sich vergewissert haben, dass die Datenstromaktion wie erwartet funktioniert, klicken Sie auf Veröffentlichen.
**Vorheriges Thema:** [Erstellen Sie einen Subflow, um Anwender abzurufen](https://servicenow-prod.fluidtopics.net/jbGYEOvIInJQnPtc5jRfXQ#create-subflow-get-users "Erstellen Sie einen Subflow, um der Tabelle „Software-Abonnement“ eine Liste von Anwendern hinzuzufügen.")  
**Nächstes Thema:** [Erstellen Sie einen Subflow, um die Anwenderaktivität abzurufen](https://servicenow-prod.fluidtopics.net/IpD_bt5r0zuSg7wQfiP1cQ "Erstellen Sie einen Subflow, um die Tabelle „Software-Abonnement“ mit der letzten Aktivität jedes Benutzers in der Anwendung SaaS zu aktualisieren.")

