Compartir a través de


Obtención de notificaciones de cambios para transcripciones y grabaciones de reuniones mediante Microsoft Graph

Las notificaciones de cambio le permiten suscribirse a los cambios en transcripciones y grabaciones. Puede recibir una notificación cada vez que una transcripción o una grabación estén disponibles después de una reunión en línea.

En este artículo se describen los escenarios de los recursos de transcripción y grabación . Para obtener más información, consulte Cambiar las notificaciones de los recursos de Microsoft Teams.

Nota:

Si solicita una expiración de suscripciónDateTime que sea superior a 1 hora en el futuro, debe suscribirse a las notificaciones de ciclo de vida incluyendo una propiedad lifecycleNotificationUrl en la solicitud de suscripción. De lo contrario, se producirá un error en la solicitud de suscripción con el siguiente mensaje de error: lifecycleNotificationUrl es necesario para la creación de la suscripción en este recurso cuando el valor expirationDateTime supera 1 hora.

Suscribirse a transcripciones disponibles en el nivel de inquilino

Para obtener notificaciones de cambios para cualquier transcripción disponible para cualquier reunión en línea en un inquilino, suscríbase a communications/onlineMeetings/getAllTranscripts. Este recurso permite incluir datos de recursos en la notificación. La notificación de una transcripción solo se envía si la suscripción se produce antes de que se inicie la transcripción. Esta suscripción admite las reuniones en línea programadas , pero no las reuniones de canal.

Permissions

Se requiere uno de los permisos siguientes para suscribirse a communications/onlineMeetings/getAllTranscripts. Para obtener más información, incluido cómo elegir permisos, vea Permisos.

Tipo de permiso Permisos (de menos a más privilegiados)
Delegado (cuenta profesional o educativa) No admitida.
Delegado (cuenta personal de Microsoft) No admitida.
Aplicación OnlineMeetingTranscript.Read.All

Ejemplo

En el ejemplo siguiente se muestra cómo suscribirse a transcripciones disponibles en el nivel de inquilino.

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

{
  "changeType": "created",
  "notificationUrl": "https://webhook.azurewebsites.net/api/resourceNotifications",
  "resource": "communications/onlineMeetings/getAllTranscripts",
  "includeResourceData": true,
  "encryptionCertificate": "{base64encodedCertificate}",
  "encryptionCertificateId": "{customId}",
  "expirationDateTime": "2023-03-20T11:00:00.0000000Z",
  "clientState": "{secretClientState}"
}

Suscribirse a transcripciones disponibles para una reunión en línea determinada

Para obtener notificaciones de cambios para cualquier transcripción disponible para una reunión en línea determinada, suscríbase a communications/onlineMeetings/{onlineMeetingId}/transcripts. Este recurso permite incluir datos de recursos en la notificación. La notificación de una transcripción solo se envía si la suscripción se produce antes de que se inicie la transcripción. Esta suscripción admite las reuniones en línea programadas , pero no las reuniones de canal.

Permissions

Se requiere uno de los permisos siguientes para suscribirse a communications/onlineMeetings/{onlineMeetingId}/transcripts. Para obtener más información, incluido cómo elegir permisos, vea Permisos.

Tipo de permiso Permisos (de menos a más privilegiados)
Delegado (cuenta profesional o educativa) OnlineMeetingTranscript.Read.All
Delegado (cuenta personal de Microsoft) No admitida.
Aplicación OnlineMeetingTranscript.Read.Chat, OnlineMeetingTranscript.Read.All

Nota:

Ejemplo 1: Suscribirse a transcripciones disponibles para una reunión en línea determinada mediante permisos clásicos

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

{
  "changeType": "created",
  "notificationUrl": "https://webhook.azurewebsites.net/api/resourceNotifications",
  "resource": "communications/onlineMeetings/{onlineMeetingId}/transcripts",
  "includeResourceData": true,
  "encryptionCertificate": "{base64encodedCertificate}",
  "encryptionCertificateId": "{customId}",
  "expirationDateTime": "2023-03-20T11:00:00.0000000Z",
  "clientState": "{secretClientState}"
}
POST https://graph.microsoft.com/v1.0/subscriptions
Content-Type: application/json

{
  "changeType": "created",
  "notificationUrl": "https://webhook.azurewebsites.net/api/resourceNotifications",
  "resource": "communications/onlineMeetings/{onlineMeetingId}/transcripts?useResourceSpecificConsentBasedAuthorization=true",
  "includeResourceData": true,
  "encryptionCertificate": "{base64encodedCertificate}",
  "encryptionCertificateId": "{customId}",
  "expirationDateTime": "2023-03-20T11:00:00.0000000Z",
  "clientState": "{secretClientState}"
}

Suscribirse a transcripciones disponibles en el nivel de usuario

Para obtener notificaciones de cambio de cualquier transcripción disponible para cualquier reunión en línea organizada por un usuario específico, suscríbase a users/{userId}/onlineMeetings/getAllTranscripts. Este recurso permite incluir datos de recursos en la notificación. La notificación de una transcripción solo se envía si la suscripción se produce antes de que se inicie la transcripción. Esta suscripción admite las reuniones en línea programadas , pero no las reuniones de canal.

Permissions

Se requiere uno de los permisos siguientes para suscribirse a users/{userId}/onlineMeetings/getAllTranscripts. Para obtener más información, incluido cómo elegir permisos, vea Permisos.

Tipo de permiso Permisos (de menos a más privilegiados)
Delegado (cuenta profesional o educativa) OnlineMeetingTranscript.Read.All
Delegado (cuenta personal de Microsoft) No admitida.
Aplicación OnlineMeetingTranscript.Read.All

Ejemplo

En el ejemplo siguiente se muestra cómo suscribirse a transcripciones disponibles para cualquier reunión en línea organizada por un usuario específico.

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

{
  "changeType": "created",
  "notificationUrl": "https://webhook.azurewebsites.net/api/resourceNotifications",
  "resource": "users/{userId}/onlineMeetings/getAllTranscripts",
  "includeResourceData": true,
  "encryptionCertificate": "{base64encodedCertificate}",
  "encryptionCertificateId": "{customId}",
  "expirationDateTime": "2023-03-20T11:00:00.0000000Z",
  "clientState": "{secretClientState}"
}

Suscribirse a transcripciones disponibles para cualquier reunión en línea en la que esté instalada una aplicación específica de Teams

Para obtener notificaciones de cambios para cualquier transcripción disponible para cualquier reunión en línea en la que esté instalada una aplicación específica de Teams, suscríbase a appCatalogs/teamsApps/{teams-app-id}/installedToOnlineMeetings/getAllTranscripts. Este recurso permite incluir datos de recursos en la notificación. La notificación de una transcripción solo se envía si la suscripción se produce antes de que se inicie la transcripción. Esta suscripción admite las reuniones en línea programadas , pero no las reuniones de canal.

Nota:

Este tipo de recurso solo está disponible en el punto de /beta conexión.

Permissions

Se requiere uno de los permisos siguientes para suscribirse a appCatalogs/teamsApps/{teams-app-id}/installedToOnlineMeetings/getAllTranscripts. Para obtener más información, incluido cómo elegir permisos, vea Permisos.

Tipo de permiso Permisos (de menos a más privilegiados)
Delegado (cuenta profesional o educativa) No admitida.
Delegado (cuenta personal de Microsoft) No admitida.
Aplicación OnlineMeetingTranscript.Read.Chat, OnlineMeetingTranscript.Read.All

Nota:

  • El permiso OnlineMeetingTranscript.Read.Chat usa el consentimiento específico del recurso.
  • Para suscribirse a transcripciones disponibles para cualquier reunión en línea en la que se instale una aplicación de Teams específica con solo los permisos de consentimiento específicos del recurso necesarios, use el parámetro de consulta con la useResourceSpecificConsentBasedAuthorization=true cadena de recurso.

Ejemplo 1: Suscribirse a transcripciones disponibles para cualquier reunión en línea en la que se instala una aplicación específica de Teams mediante permisos clásicos

POST https://graph.microsoft.com/beta/subscriptions
Content-Type: application/json
{
  "changeType": "created",
  "notificationUrl": "https://webhook.azurewebsites.net/api/resourceNotifications",
  "resource": "appCatalogs/teamsApps/386bbcdb-1e1c-4f3f-b7d0-ad7b9ea6cf7c/installedToOnlineMeetings/getAllTranscripts",
  "includeResourceData": true,
  "encryptionCertificate": "{base64encodedCertificate}",
  "encryptionCertificateId": "{customId}",
  "expirationDateTime": "2023-03-20T11:00:00.0000000Z",
  "clientState": "{secretClientState}"
}
POST https://graph.microsoft.com/beta/subscriptions
Content-Type: application/json
{
  "changeType": "created",
  "notificationUrl": "https://webhook.azurewebsites.net/api/resourceNotifications",
  "resource": "appCatalogs/teamsApps/386bbcdb-1e1c-4f3f-b7d0-ad7b9ea6cf7c/installedToOnlineMeetings/getAllTranscripts?useResourceSpecificConsentBasedAuthorization=true",
  "includeResourceData": true,
  "encryptionCertificate": "{base64encodedCertificate}",
  "encryptionCertificateId": "{customId}",
  "expirationDateTime": "2023-03-20T11:00:00.0000000Z",
  "clientState": "{secretClientState}"
}

Suscribirse a las grabaciones disponibles en el nivel de inquilino

Para obtener notificaciones de cambios para cualquier grabación disponible para cualquier reunión en línea en un inquilino, suscríbase a communications/onlineMeetings/getAllRecordings. Este recurso permite incluir datos de recursos en la notificación. Esta suscripción admite las reuniones en línea programadas , pero no las reuniones de canal.

Permissions

Se requiere uno de los permisos siguientes para suscribirse a communications/onlineMeetings/getAllRecordings. Para obtener más información, incluido cómo elegir permisos, vea Permisos.

Tipo de permiso Permisos (de menos a más privilegiados)
Delegado (cuenta profesional o educativa) No admitida.
Delegado (cuenta personal de Microsoft) No admitida.
Aplicación OnlineMeetingRecording.Read.All

Ejemplo

En el ejemplo siguiente se muestra cómo suscribirse a las grabaciones disponibles en el nivel de inquilino.

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

{
  "changeType": "created",
  "notificationUrl": "https://webhook.azurewebsites.net/api/resourceNotifications",
  "resource": "communications/onlineMeetings/getAllRecordings",
  "includeResourceData": true,
  "encryptionCertificate": "{base64encodedCertificate}",
  "encryptionCertificateId": "{customId}",
  "expirationDateTime": "2023-04-11T11:00:00.0000000Z",
  "clientState": "{secretClientState}"
}

Suscribirse a las grabaciones disponibles para una reunión en línea determinada

Para obtener notificaciones de cambio de cualquier grabación disponible para una reunión en línea determinada, suscríbase a communications/onlineMeetings/{onlineMeetingId}/recordings. Este recurso permite incluir datos de recursos en la notificación. Esta suscripción admite las reuniones en línea programadas , pero no las reuniones de canal.

Permissions

Se requiere uno de los permisos siguientes para suscribirse a communications/onlineMeetings/{onlineMeetingId}/recordings. Para obtener más información, incluido cómo elegir permisos, vea Permisos.

Tipo de permiso Permisos (de menos a más privilegiados)
Delegado (cuenta profesional o educativa) OnlineMeetingRecording.Read.All
Delegado (cuenta personal de Microsoft) No admitida.
Aplicación OnlineMeetingRecording.Read.Chat, OnlineMeetingRecording.Read.All

Nota:

Ejemplo 1: Suscribirse a las grabaciones disponibles para una reunión en línea determinada mediante permisos clásicos

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

{
  "changeType": "created",
  "notificationUrl": "https://webhook.azurewebsites.net/api/resourceNotifications",
  "resource": "communications/onlineMeetings/{onlineMeetingId}/recordings",
  "includeResourceData": true,
  "encryptionCertificate": "{base64encodedCertificate}",
  "encryptionCertificateId": "{customId}",
  "expirationDateTime": "2023-04-11T11:00:00.0000000Z",
  "clientState": "{secretClientState}"
}
POST https://graph.microsoft.com/v1.0/subscriptions
Content-Type: application/json

{
  "changeType": "created",
  "notificationUrl": "https://webhook.azurewebsites.net/api/resourceNotifications",
  "resource": "communications/onlineMeetings/{onlineMeetingId}/recordings?useResourceSpecificConsentBasedAuthorization=true",
  "includeResourceData": true,
  "encryptionCertificate": "{base64encodedCertificate}",
  "encryptionCertificateId": "{customId}",
  "expirationDateTime": "2023-04-11T11:00:00.0000000Z",
  "clientState": "{secretClientState}"
}

Suscribirse a las grabaciones disponibles en el nivel de usuario

Para obtener notificaciones de cambios para cualquier grabación disponible para cualquier reunión en línea organizada por un usuario específico, suscríbase a users/{userId}/onlineMeetings/getAllRecordings. Este recurso permite incluir datos de recursos en la notificación. Esta suscripción admite las reuniones en línea programadas , pero no las reuniones de canal.

Permissions

Se requiere uno de los permisos siguientes para suscribirse a users/{userId}/onlineMeetings/getAllRecordings. Para obtener más información, incluido cómo elegir permisos, vea Permisos.

Tipo de permiso Permisos (de menos a más privilegiados)
Delegado (cuenta profesional o educativa) OnlineMeetingRecording.Read.All
Delegado (cuenta personal de Microsoft) No admitida.
Aplicación OnlineMeetingRecording.Read.All

Ejemplo

En el ejemplo siguiente se muestra cómo suscribirse a las grabaciones disponibles para cualquier reunión en línea organizada por un usuario específico.

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

{
  "changeType": "created",
  "notificationUrl": "https://webhook.azurewebsites.net/api/resourceNotifications",
  "resource": "users/{userId}/onlineMeetings/getAllRecordings",
  "includeResourceData": true,
  "encryptionCertificate": "{base64encodedCertificate}",
  "encryptionCertificateId": "{customId}",
  "expirationDateTime": "2023-04-11T11:00:00.0000000Z",
  "clientState": "{secretClientState}"
}

Suscribirse a las grabaciones disponibles para cualquier reunión en línea en la que esté instalada una aplicación específica de Teams

Para obtener notificaciones de cambio de cualquier grabación disponible para cualquier reunión en línea en la que esté instalada una aplicación específica de Teams, suscríbase a appCatalogs/teamsApps/{teams-app-id}/installedToOnlineMeetings/getAllRecordings. Este recurso permite incluir datos de recursos en la notificación. Esta suscripción admite las reuniones en línea programadas , pero no las reuniones de canal.

Nota:

Este tipo de recurso solo está disponible en el punto de /beta conexión.

Permissions

Se requiere uno de los permisos siguientes para suscribirse a appCatalogs/teamsApps/{teams-app-id}/installedToOnlineMeetings/getAllRecordings. Para obtener más información, incluido cómo elegir permisos, vea Permisos.

Tipo de permiso Permisos (de menos a más privilegiados)
Delegado (cuenta profesional o educativa) No admitida.
Delegado (cuenta personal de Microsoft) No admitida.
Aplicación OnlineMeetingRecording.Read.Chat, OnlineMeetingRecording.Read.All

Nota:

  • El permiso OnlineMeetingRecording.Read.Chat usa el consentimiento específico del recurso.
  • Para suscribirse a las grabaciones disponibles para cualquier reunión en línea en la que se instale una aplicación de Teams específica con solo los permisos de consentimiento específicos del recurso necesarios, use el parámetro de consulta con la useResourceSpecificConsentBasedAuthorization=true cadena de recurso.

Ejemplo 1: Suscribirse a las grabaciones disponibles para cualquier reunión en línea en la que se instala una aplicación específica de Teams mediante los permisos clásicos necesarios

POST https://graph.microsoft.com/beta/subscriptions
Content-Type: application/json
{
  "changeType": "created",
  "notificationUrl": "https://webhook.azurewebsites.net/api/resourceNotifications",
  "resource": "appCatalogs/teamsApps/386bbcdb-1e1c-4f3f-b7d0-ad7b9ea6cf7c/installedToOnlineMeetings/getAllRecordings",
  "includeResourceData": true,
  "encryptionCertificate": "{base64encodedCertificate}",
  "encryptionCertificateId": "{customId}",
  "expirationDateTime": "2023-03-20T11:00:00.0000000Z",
  "clientState": "{secretClientState}"
}
POST https://graph.microsoft.com/beta/subscriptions
Content-Type: application/json
{
  "changeType": "created",
  "notificationUrl": "https://webhook.azurewebsites.net/api/resourceNotifications",
  "resource": "appCatalogs/teamsApps/386bbcdb-1e1c-4f3f-b7d0-ad7b9ea6cf7c/installedToOnlineMeetings/getAllRecordings?useResourceSpecificConsentBasedAuthorization=true",
  "includeResourceData": true,
  "encryptionCertificate": "{base64encodedCertificate}",
  "encryptionCertificateId": "{customId}",
  "expirationDateTime": "2023-03-20T11:00:00.0000000Z",
  "clientState": "{secretClientState}"
}

Cargas de notificaciones

En función de la suscripción, puede obtener la notificación con o sin datos de recursos. Suscribirse con datos de recursos le permite obtener la transcripción o registrar metadatos junto con la notificación.

Notificaciones con datos de recursos

Para las notificaciones con datos de recursos, la carga es similar a la siguiente. Esta carga es para una transcripción disponible para una reunión en línea.

{
  "value": [
    {
      "subscriptionId": "516220d0-0f88-46cc-ac39-02b687687526",
      "changeType": "created",
      "clientState": "<<--SpecifiedClientState-->>",
      "subscriptionExpirationDateTime": "2023-09-17T08:13:26.3265566+00:00",
      "resource": "communications/onlineMeetings('MSo5NzZmNGIzMS1mZDAxLTRlMGItOTE3OC0yOWNjNDBjMTQ0MzgqMCoqMTk6bWVldGluZ19aalk0TXpRNU9UQXRZamxqWWkwMFpESXdMVGczTkdZdFptUTNNRGhtWm1FMk9EVTNAdGhyZWFkLnYy')/transcripts('MSMjMCMjOGIzMmI0MzktY2QxNy00ODc1LTg1NWQtYzA1MDM0ZmFkZWMx')",
      "resourceData": {
        "id": "MSMjMCMjOGIzMmI0MzktY2QxNy00ODc1LTg1NWQtYzA1MDM0ZmFkZWMx",
        "@odata.type": "#Microsoft.Graph.callTranscript",
        "@odata.id": "communications/onlineMeetings('MSo5NzZmNGIzMS1mZDAxLTRlMGItOTE3OC0yOWNjNDBjMTQ0MzgqMCoqMTk6bWVldGluZ19aalk0TXpRNU9UQXRZamxqWWkwMFpESXdMVGczTkdZdFptUTNNRGhtWm1FMk9EVTNAdGhyZWFkLnYy')/transcripts('MSMjMCMjOGIzMmI0MzktY2QxNy00ODc1LTg1NWQtYzA1MDM0ZmFkZWMx')"
      },
      "EncryptedContent": {
        "data": "<<--EncryptedContent-->>",
        "dataKey": "<<--EnryptedDataKeyUsedForEncryptingContent-->>",
        "encryptionCertificateId": "<<--IdOfTheCertificateUsedForEncryptingDataKey-->>",
        "encryptionCertificateThumbprint": "<<--ThumbprintOfTheCertificateUsedForEncryptingDataKey-->>"
      },
      "tenantId": "<<--TenantForWhichNotificationWasSent-->>"
    }
  ],
  "validationTokens": [
    "<<--ValidationTokens-->>"
  ]
}

La carga de notificación descifrada es similar a la siguiente. La carga se ajusta al esquema de transcripción . La carga es similar a las devueltas por las operaciones GET.

{
  "id": "MSMjMCMjOGIzMmI0MzktY2QxNy00ODc1LTg1NWQtYzA1MDM0ZmFkZWMx",
  "meetingId": "MSo5NzZmNGIzMS1mZDAxLTRlMGItOTE3OC0yOWNjNDBjMTQ0MzgqMCoqMTk6bWVldGluZ19aalk0TXpRNU9UQXRZamxqWWkwMFpESXdMVGczTkdZdFptUTNNRGhtWm1FMk9EVTNAdGhyZWFkLnYy",
  "transcriptContentUrl": "communications/onlineMeetings/MSo5NzZmNGIzMS1mZDAxLTRlMGItOTE3OC0yOWNjNDBjMTQ0MzgqMCoqMTk6bWVldGluZ19aalk0TXpRNU9UQXRZamxqWWkwMFpESXdMVGczTkdZdFptUTNNRGhtWm1FMk9EVTNAdGhyZWFkLnYy/transcripts/MSMjMCMjOGIzMmI0MzktY2QxNy00ODc1LTg1NWQtYzA1MDM0ZmFkZWMx/content",
  "createdDateTime": null,
  "meetingOrganizer": {
    "application": null,
    "device": null,
    "user": {
      "userIdentityType": "aadUser",
      "id": "976f4b31-fd01-4e0b-9178-29cc40c14438",
      "displayName": null,
      "tenantId": "2432b57b-0abd-43db-aa7b-16eadd115d34"
    }
  }
}

Para las notificaciones con datos de recursos, la carga es similar a la siguiente. Esta carga es para una grabación disponible para una reunión en línea.

{
  "value": [
    {
      "subscriptionId": "7a62d59e-a789-4dd7-9c85-cf7d6567890d",
      "changeType": "created",
      "clientState": "<<--SpecifiedClientState-->>",
      "subscriptionExpirationDateTime": "2023-09-17T08:20:06.9211285+00:00",
      "resource": "communications/onlineMeetings('MSo5NzZmNGIzMS1mZDAxLTRlMGItOTE3OC0yOWNjNDBjMTQ0MzgqMCoqMTk6bWVldGluZ19NMk0zTlRReFkySXRaamsyWmkwME5UTTRMV0l4TTJFdE1EQmtPV1E1TW1Rek0yRXhAdGhyZWFkLnYy')/recordings('VjIjIzE5NzZmNGIzMS1mZDAxLTRlMGItOTE3OC0yOWNjNDBjMTQ0MzgyNDMyYjU3Yi0wYWJkLTQzZGItYWE3Yi0xNmVhZGQxMTVkMzQwNDAwMDAwMDgyMDBFMDAwNzRDNUI3MTAxQTgyRTAwODAwMDAwMDAwMDZhODllMWZkYmJlZDkwMTAwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDA5NzUzYzg5ZWI3MmJkNDJiYWZjMTVkZDA4NWNmNWJlIyNjZmNjNTBjMy0zODllLTQyOTUtOWRiNy1mMjkwYWY2NDJlNzI=')",
      "resourceData": {
        "id": "VjIjIzE5NzZmNGIzMS1mZDAxLTRlMGItOTE3OC0yOWNjNDBjMTQ0MzgyNDMyYjU3Yi0wYWJkLTQzZGItYWE3Yi0xNmVhZGQxMTVkMzQwNDAwMDAwMDgyMDBFMDAwNzRDNUI3MTAxQTgyRTAwODAwMDAwMDAwMDZhODllMWZkYmJlZDkwMTAwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDA5NzUzYzg5ZWI3MmJkNDJiYWZjMTVkZDA4NWNmNWJlIyNjZmNjNTBjMy0zODllLTQyOTUtOWRiNy1mMjkwYWY2NDJlNzI=",
        "@odata.type": "#Microsoft.Graph.callRecording",
        "@odata.id": "communications/onlineMeetings('MSo5NzZmNGIzMS1mZDAxLTRlMGItOTE3OC0yOWNjNDBjMTQ0MzgqMCoqMTk6bWVldGluZ19NMk0zTlRReFkySXRaamsyWmkwME5UTTRMV0l4TTJFdE1EQmtPV1E1TW1Rek0yRXhAdGhyZWFkLnYy')/recordings('VjIjIzE5NzZmNGIzMS1mZDAxLTRlMGItOTE3OC0yOWNjNDBjMTQ0MzgyNDMyYjU3Yi0wYWJkLTQzZGItYWE3Yi0xNmVhZGQxMTVkMzQwNDAwMDAwMDgyMDBFMDAwNzRDNUI3MTAxQTgyRTAwODAwMDAwMDAwMDZhODllMWZkYmJlZDkwMTAwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDA5NzUzYzg5ZWI3MmJkNDJiYWZjMTVkZDA4NWNmNWJlIyNjZmNjNTBjMy0zODllLTQyOTUtOWRiNy1mMjkwYWY2NDJlNzI=')"
      },
      "EncryptedContent": {
        "data": "<<--EncryptedContent-->>",
        "dataKey": "<<--EnryptedDataKeyUsedForEncryptingContent-->>",
        "encryptionCertificateId": "<<--IdOfTheCertificateUsedForEncryptingDataKey-->>",
        "encryptionCertificateThumbprint": "<<--ThumbprintOfTheCertificateUsedForEncryptingDataKey-->>"
      },
      "tenantId": "<<--TenantForWhichNotificationWasSent-->>"
    }
  ],
  "validationTokens": [
    "<<--ValidationTokens-->>"
  ]
}

La carga de notificación descifrada es similar a la siguiente. La carga se ajusta al esquema de grabación . La carga es similar a las devueltas por las operaciones GET.

{
  "id": "VjIjIzE5NzZmNGIzMS1mZDAxLTRlMGItOTE3OC0yOWNjNDBjMTQ0MzgyNDMyYjU3Yi0wYWJkLTQzZGItYWE3Yi0xNmVhZGQxMTVkMzQwNDAwMDAwMDgyMDBFMDAwNzRDNUI3MTAxQTgyRTAwODAwMDAwMDAwMDZhODllMWZkYmJlZDkwMTAwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDA5NzUzYzg5ZWI3MmJkNDJiYWZjMTVkZDA4NWNmNWJlIyNjZmNjNTBjMy0zODllLTQyOTUtOWRiNy1mMjkwYWY2NDJlNzI=",
  "meetingId": "MSo5NzZmNGIzMS1mZDAxLTRlMGItOTE3OC0yOWNjNDBjMTQ0MzgqMCoqMTk6bWVldGluZ19NMk0zTlRReFkySXRaamsyWmkwME5UTTRMV0l4TTJFdE1EQmtPV1E1TW1Rek0yRXhAdGhyZWFkLnYy",
  "createdDateTime": "2023-07-25T09:35:02.85022Z",
  "recordingContentUrl": "communications/onlineMeetings/MSo5NzZmNGIzMS1mZDAxLTRlMGItOTE3OC0yOWNjNDBjMTQ0MzgqMCoqMTk6bWVldGluZ19NMk0zTlRReFkySXRaamsyWmkwME5UTTRMV0l4TTJFdE1EQmtPV1E1TW1Rek0yRXhAdGhyZWFkLnYy/recordings/VjIjIzE5NzZmNGIzMS1mZDAxLTRlMGItOTE3OC0yOWNjNDBjMTQ0MzgyNDMyYjU3Yi0wYWJkLTQzZGItYWE3Yi0xNmVhZGQxMTVkMzQwNDAwMDAwMDgyMDBFMDAwNzRDNUI3MTAxQTgyRTAwODAwMDAwMDAwMDZhODllMWZkYmJlZDkwMTAwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDA5NzUzYzg5ZWI3MmJkNDJiYWZjMTVkZDA4NWNmNWJlIyNjZmNjNTBjMy0zODllLTQyOTUtOWRiNy1mMjkwYWY2NDJlNzI=/content",
  "meetingOrganizer": {
    "application": null,
    "device": null,
    "user": {
      "userIdentityType": "aadUser",
      "id": "976f4b31-fd01-4e0b-9178-29cc40c14438",
      "displayName": null,
      "tenantId": "2432b57b-0abd-43db-aa7b-16eadd115d34"
    }
  },
  "content": null
}

Notificaciones con datos de recursos

Las notificaciones sin datos de recursos proporcionan el identificador de recurso para realizar llamadas GET para obtener la transcripción o grabación. Las suscripciones para notificaciones sin datos de recursos no requieren un certificado de cifrado (porque los datos de recursos reales no se envían).

Para las notificaciones sin datos de recursos, la carga es similar a la siguiente. Esta carga es para una transcripción disponible para una reunión en línea.

{
  "subscriptionId": "0cc28c98-4d2a-4a34-b850-815d7e6486ea",
  "changeType": "created",
  "tenantId": "<<--TenantForWhichNotificationWasSent-->>",
  "clientState": "<<--SpecifiedClientState-->>",
  "subscriptionExpirationDateTime": "2023-09-17T08:29:11.3173971+00:00",
  "resource": "communications/onlineMeetings('MSo5NzZmNGIzMS1mZDAxLTRlMGItOTE3OC0yOWNjNDBjMTQ0MzgqMCoqMTk6bWVldGluZ19aalk0TXpRNU9UQXRZamxqWWkwMFpESXdMVGczTkdZdFptUTNNRGhtWm1FMk9EVTNAdGhyZWFkLnYy')/transcripts('MSMjMCMjOGIzMmI0MzktY2QxNy00ODc1LTg1NWQtYzA1MDM0ZmFkZWMx')",
  "resourceData": {
    "id": "MSMjMCMjOGIzMmI0MzktY2QxNy00ODc1LTg1NWQtYzA1MDM0ZmFkZWMx",
    "@odata.type": "#Microsoft.Graph.callTranscript",
    "@odata.id": "communications/onlineMeetings('MSo5NzZmNGIzMS1mZDAxLTRlMGItOTE3OC0yOWNjNDBjMTQ0MzgqMCoqMTk6bWVldGluZ19aalk0TXpRNU9UQXRZamxqWWkwMFpESXdMVGczTkdZdFptUTNNRGhtWm1FMk9EVTNAdGhyZWFkLnYy')/transcripts('MSMjMCMjOGIzMmI0MzktY2QxNy00ODc1LTg1NWQtYzA1MDM0ZmFkZWMx')"
  }
}

Para las notificaciones sin datos de recursos, la carga es similar a la siguiente. Esta carga es para una grabación disponible para una reunión en línea.

{
  "subscriptionId": "6aa5ced2-0a5a-4643-9274-3109c731d986",
  "changeType": "created",
  "tenantId": "<<--TenantForWhichNotificationWasSent-->>",
  "clientState": "<<--SpecifiedClientState-->>",
  "subscriptionExpirationDateTime": "2023-09-17T08:27:05.0241757+00:00",
  "resource": "communications/onlineMeetings('MSo5NzZmNGIzMS1mZDAxLTRlMGItOTE3OC0yOWNjNDBjMTQ0MzgqMCoqMTk6bWVldGluZ19NMk0zTlRReFkySXRaamsyWmkwME5UTTRMV0l4TTJFdE1EQmtPV1E1TW1Rek0yRXhAdGhyZWFkLnYy')/recordings('VjIjIzE5NzZmNGIzMS1mZDAxLTRlMGItOTE3OC0yOWNjNDBjMTQ0MzgyNDMyYjU3Yi0wYWJkLTQzZGItYWE3Yi0xNmVhZGQxMTVkMzQwNDAwMDAwMDgyMDBFMDAwNzRDNUI3MTAxQTgyRTAwODAwMDAwMDAwMDZhODllMWZkYmJlZDkwMTAwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDA5NzUzYzg5ZWI3MmJkNDJiYWZjMTVkZDA4NWNmNWJlIyNjZmNjNTBjMy0zODllLTQyOTUtOWRiNy1mMjkwYWY2NDJlNzI=')",
  "resourceData": {
    "id": "VjIjIzE5NzZmNGIzMS1mZDAxLTRlMGItOTE3OC0yOWNjNDBjMTQ0MzgyNDMyYjU3Yi0wYWJkLTQzZGItYWE3Yi0xNmVhZGQxMTVkMzQwNDAwMDAwMDgyMDBFMDAwNzRDNUI3MTAxQTgyRTAwODAwMDAwMDAwMDZhODllMWZkYmJlZDkwMTAwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDA5NzUzYzg5ZWI3MmJkNDJiYWZjMTVkZDA4NWNmNWJlIyNjZmNjNTBjMy0zODllLTQyOTUtOWRiNy1mMjkwYWY2NDJlNzI=",
    "@odata.type": "#Microsoft.Graph.callRecording",
    "@odata.id": "communications/onlineMeetings('MSo5NzZmNGIzMS1mZDAxLTRlMGItOTE3OC0yOWNjNDBjMTQ0MzgqMCoqMTk6bWVldGluZ19NMk0zTlRReFkySXRaamsyWmkwME5UTTRMV0l4TTJFdE1EQmtPV1E1TW1Rek0yRXhAdGhyZWFkLnYy')/recordings('VjIjIzE5NzZmNGIzMS1mZDAxLTRlMGItOTE3OC0yOWNjNDBjMTQ0MzgyNDMyYjU3Yi0wYWJkLTQzZGItYWE3Yi0xNmVhZGQxMTVkMzQwNDAwMDAwMDgyMDBFMDAwNzRDNUI3MTAxQTgyRTAwODAwMDAwMDAwMDZhODllMWZkYmJlZDkwMTAwMDAwMDAwMDAwMDAwMDAxMDAwMDAwMDA5NzUzYzg5ZWI3MmJkNDJiYWZjMTVkZDA4NWNmNWJlIyNjZmNjNTBjMy0zODllLTQyOTUtOWRiNy1mMjkwYWY2NDJlNzI=')"
  }
}

Las propiedades resource y @odata.id se pueden usar para llamar a Microsoft Graph para obtener la transcripción o grabación.