Abrufen von Änderungsbenachrichtigungen für Microsoft Teams-Anrufdatensätze

Änderungsbenachrichtigungen in Microsoft Graph ermöglichen Abonnements für Anrufdatensätze und bieten einen kontinuierlichen Stream von Aktualisierungen von Anrufdatensätzen, wenn diese erstellt oder geändert werden. Anrufdatensätze bieten wertvolle Nutzungs- und Diagnoseeinblicke in die Anrufe und Onlinebesprechungen Ihrer organization, wenn Sie Microsoft Teams oder Skype for Business verwenden. Diese Daten können für die benutzerdefinierte Berichterstellung genutzt werden, was die Überwachung der Einführung und die Behandlung von Problemen mit der Anrufqualität erleichtert.

Berechtigungen

Berechtigungstyp Berechtigungen (von der Berechtigung mit den wenigsten Rechten zu der mit den meisten Rechten) Unterstützte Versionen
Delegiert (Geschäfts-, Schul- oder Unikonto) Nicht unterstützt Nicht unterstützt
Delegiert (persönliches Microsoft-Konto) Nicht unterstützt Nicht unterstützt
Anwendung CallRecords.Read.All v1.0

Beispiele

Beispiel 1: Abonnementanforderung

POST https://graph.microsoft.com/v1.0/subscriptions
Content-Type: application/json

{
  "changeType": "updated",
  "notificationUrl": "https://webhook.azurewebsites.net/api/resourceNotifications",
  "lifecycleNotificationUrl": "https://webhook.azurewebsites.net/api/lifecycleNotifications",
  "resource": "/communications/callRecords",
  "expirationDateTime": "2023-02-28T00:00:00.0000000Z",
  "clientState": "{Secret client state}"
}

Änderungsbenachrichtigungen für Anrufdatensätze unterstützen sowohl als update auch create Benachrichtigungstypen. Ein Abonnement für create Änderungen sendet nur eine einzelne Benachrichtigung, wenn zum ersten Mal ein Anrufdatensatz generiert wird. Ein Anrufdatensatz wird nach Ablauf eines Anrufs oder einer Besprechung erstellt und bleibt 30 Tage lang zugänglich.

Ein Abonnement für update Änderungen umfasst eine anfängliche Benachrichtigung, wenn der Datensatz zum ersten Mal generiert wird, und alle nachfolgenden Benachrichtigungen, wenn dieser Datensatz geändert wird. Da bestimmte Aufrufdatensatzattribute von clientseitigen Signalen abhängen, die aufgrund von Netzwerkproblemen Verzögerungen oder Unterbrechungen unterliegen können, kann ein Anrufdatensatz nach seiner ersten Erstellung mit neuen oder überarbeiteten Informationen aktualisiert werden. Diese Änderungen lösen eine update Benachrichtigung aus, und das Feld des Datensatzes version wird erhöht, um die Änderung anzugeben.

Die Latenz von Änderungsbenachrichtigungen und der maximale Abonnementablaufzeitraum sind in der Übersicht über Änderungsbenachrichtigungen definiert.

Beispiel 2: Nach Teilnehmer gefilterte Abonnementanforderung Microsoft Entra Objekt-ID

POST https://graph.microsoft.com/v1.0/subscriptions
Content-Type: application/json

{
  "changeType": "updated",
  "notificationUrl": "https://webhook.azurewebsites.net/api/resourceNotifications",
  "lifecycleNotificationUrl": "https://webhook.azurewebsites.net/api/lifecycleNotifications",
  "resource": "/communications/callRecords?$filter=participants/any(p:p/id eq '{Entra object id}')",
  "expirationDateTime": "2023-02-28T00:00:00.0000000Z",
  "clientState": "{Secret client state}"
}

Optional können Sie Änderungsbenachrichtigungen für Anrufdatensätze mithilfe der Microsoft Entra Objekt-ID eines Teilnehmers filtern. Nach Objekt-ID gefilterte Änderungsbenachrichtigungen werden gesendet, wenn die Microsoft Entra Objekt-ID eines Anrufteilnehmers im Filterparameter enthalten ist.

Dieser Filter unterstützt eqdie Operatoren , orund in für das id Attribut der participants Auflistung in einer callRecord-Ressource. Weitere Informationen zur Verwendung von $filter finden Sie unter Verwenden des abfrageparameters $filter.

Beispiel 3: Abonnementbenachrichtigung

{
    "value":[{
        "subscriptionId":"{Subscription id}",
        "clientState":"{Secret client state}",
        "changeType":"created",
        "resource":"communications/callRecords/{Call id}",
        "subscriptionExpirationDateTime":"2023-02-28T00:00:00.000+00:00",
        "resourceData":{
            "@odata.type":"#Microsoft.Graph.callRecord",
            "@odata.id":"communications/callRecords/{Call id}",
            "id":"{Call id}"
        },
        "tenantId":"{Organization/Tenant id}"
    }]
}