使用 Microsoft Graph 获取脚本和录制的更改通知

更改通知使你能够订阅对脚本和录制的更改。 每当在联机会议或临时呼叫后有 脚本录制 内容可用时,你都可以收到通知。

本文介绍 脚本录制 资源的方案。 有关详细信息,请参阅 更改Microsoft Teams 资源的通知

注意

如果请求的订阅 expirationDateTime 在未来超过 1 小时,则必须通过在订阅请求中包含 lifecycleNotificationUrl 属性来订阅生命周期通知。 否则,订阅请求失败并显示以下错误消息: 当 expirationDateTime 值超过 1 小时时,需要 lifecycleNotificationUrl 才能在此资源上创建订阅

订阅租户级别提供的脚本

本部分介绍订阅租户级别可用于联机会议和临时呼叫的脚本的方法。

对于联机会议

若要获取可用于租户中任何联机会议的任何脚本的更改通知,请订阅 communications/onlineMeetings/getAllTranscripts。 此资源支持在通知中包括资源数据。 仅当订阅在听录开始之前发生时,才会发送脚本通知。 此订阅支持计划的 onlineMeeting

注意

此订阅当前不支持专用频道会议。

权限

订阅 communications/onlineMeetings/getAllTranscripts需要以下权限之一。

权限类型 权限(从最低特权到最高特权)
委派(工作或学校帐户) 不支持。
委派(个人 Microsoft 帐户) 不支持。
应用程序 OnlineMeetingTranscript.Read.All

若要了解详细信息,包括如何选择权限的信息,请参阅权限

示例

以下示例演示如何订阅租户级别提供的 联机会议 脚本。

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

对于临时调用

若要获取可用于租户中任何临时调用的任何脚本的更改通知,请 communications/adhocCalls/getAllTranscripts订阅 。 此资源支持在通知中包括资源数据

注意

此资源类型仅在终结点上 /beta 可用。

权限

订阅 communications/adhocCalls/getAllTranscripts需要以下权限之一。

权限类型 权限(从最低特权到最高特权)
委派(工作或学校帐户) 不支持。
委派(个人 Microsoft 帐户) 不支持。
应用程序 CallTranscripts.Read.All

若要了解详细信息,包括如何选择权限的信息,请参阅权限

示例

以下示例演示如何订阅租户级别提供的 临时呼叫 脚本。

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

{
  "changeType": "created",
  "notificationUrl": "https://webhook.azurewebsites.net/api/resourceNotifications",
  "resource": "communications/adhocCalls/getAllTranscripts",
  "includeResourceData": true,
  "encryptionCertificate": "{base64encodedCertificate}",
  "encryptionCertificateId": "{customId}",
  "expirationDateTime": "{expirationDateTime}",
  "clientState": "{secretClientState}"
}

订阅可用于特定联机会议的脚本

若要获取可用于特定联机会议的任何脚本的更改通知,请订阅 communications/onlineMeetings/{onlineMeetingId}/transcripts。 此资源支持在通知中包括资源数据。 仅当订阅在听录开始之前发生时,才会发送脚本通知。 此订阅支持计划的 onlineMeeting

注意

此订阅当前不支持专用频道会议。

权限

订阅 communications/onlineMeetings/{onlineMeetingId}/transcripts需要以下权限之一。 若要了解详细信息,包括如何选择权限的信息,请参阅权限

权限类型 权限(从最低特权到最高特权)
委派(工作或学校帐户) OnlineMeetingTranscript.Read.All
委派(个人 Microsoft 帐户) 不支持。
应用程序 OnlineMeetingTranscript.Read.Chat、OnlineMeetingTranscript.Read.All

注意

  • 权限 OnlineMeetingTranscript.Read.Chat 使用 特定于资源的许可。 此权限仅适用于安排的私人聊天会议,不适用于频道会议。
  • 若要仅使用所需的 特定于资源的许可 权限订阅可用于特定联机会议的任何脚本,请将查询参数与资源字符串一起使用 useResourceSpecificConsentBasedAuthorization=true

示例 1:使用经典权限订阅可用于特定联机会议的脚本

POST https://graph.microsoft.com/beta/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}"
}

订阅可用于特定临时呼叫的脚本

若要获取可用于特定临时调用的任何脚本的更改通知,请订阅 communications/adhocCalls/{adhocCallId}/transcripts

权限

订阅 communications/adhocCalls/{adhocCallId}/transcripts需要以下权限之一。 若要了解详细信息,包括如何选择权限的信息,请参阅权限

权限类型 权限(从最低特权到最高特权)
委派(工作或学校帐户) CallTranscripts.Read.All
委派(个人 Microsoft 帐户) 不支持。
应用程序 不支持。

示例:使用经典权限订阅可用于特定即席调用的脚本

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

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

订阅用户组织的联机会议可用的脚本

若要获取可供特定用户组织的任何联机会议的任何脚本的更改通知,请 users/{userId}/onlineMeetings/getAllTranscripts订阅 。 此资源支持在通知中包括资源数据。 仅当订阅在听录开始之前发生时,才会发送脚本通知。 此订阅支持计划的 onlineMeeting

注意

此订阅当前不支持专用频道会议。

权限

订阅 users/{userId}/onlineMeetings/getAllTranscripts需要以下权限之一。 若要了解详细信息,包括如何选择权限的信息,请参阅权限

权限类型 权限(从最低特权到最高特权)
委派(工作或学校帐户) OnlineMeetingTranscript.Read.All
委派(个人 Microsoft 帐户) 不支持。
应用程序 OnlineMeetingTranscript.Read.All

示例

以下示例演示如何订阅可供特定用户组织的任何联机会议的脚本。

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

订阅可用于特定用户启动听录的临时调用的脚本

若要获取可用于特定用户启动听录的任何临时调用的任何脚本的更改通知,请 users/{userId}/adhocCalls/getAllTranscripts订阅 。 此资源支持在通知中包括资源数据。 仅当订阅在听录开始之前发生时,才会发送脚本通知。 此订阅支持 即席调用

权限

订阅 users/{userId}/adhocCalls/getAllTranscripts需要以下权限之一。 若要了解详细信息,包括如何选择权限的信息,请参阅权限

权限类型 权限(从最低特权到最高特权)
委派(工作或学校帐户) CallTranscripts.Read.All
委派(个人 Microsoft 帐户) 不支持。
应用程序 CallTranscripts.Read.All

示例

以下示例演示如何订阅可用于特定用户启动听录的任何临时调用的脚本。

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

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

订阅可用于安装了特定 Teams 应用的任何联机会议的脚本

若要获取可用于安装了特定 Teams 应用的任何联机会议的任何脚本的更改通知,请订阅 appCatalogs/teamsApps/{teams-app-id}/installedToOnlineMeetings/getAllTranscripts。 此资源支持在通知中包括资源数据。 仅当订阅在听录开始之前发生时,才会发送脚本通知。 此订阅支持计划的 onlineMeeting, 但不支持频道会议。

注意

此资源类型仅在终结点上 /beta 可用。

权限

订阅 appCatalogs/teamsApps/{teams-app-id}/installedToOnlineMeetings/getAllTranscripts需要以下权限之一。 若要了解详细信息,包括如何选择权限的信息,请参阅权限

权限类型 权限(从最低特权到最高特权)
委派(工作或学校帐户) 不支持。
委派(个人 Microsoft 帐户) 不支持。
应用程序 OnlineMeetingTranscript.Read.Chat、OnlineMeetingTranscript.Read.All

注意

  • 权限 OnlineMeetingTranscript.Read.Chat 使用 特定于资源的许可
  • 若要订阅任何联机会议可用的脚本,其中仅使用所需的 特定于资源的许可 权限安装了特定 Teams 应用,请将 query 参数与资源字符串一起使用 useResourceSpecificConsentBasedAuthorization=true

示例 1:订阅可用于使用经典权限安装特定 Teams 应用的任何联机会议的脚本

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

订阅租户级别可用的录制内容

本部分介绍订阅租户级别可用于联机会议和临时呼叫的录制内容的方法。

对于联机会议

若要获取可用于租户中任何联机会议的任何录制的更改通知,请 communications/onlineMeetings/getAllRecordings订阅 。 此资源支持在通知中包括资源数据。 此订阅支持计划的 onlineMeeting

注意

此订阅不支持私人频道会议。

权限

订阅 communications/onlineMeetings/getAllRecordings需要以下权限之一。 若要了解详细信息,包括如何选择权限的信息,请参阅权限

权限类型 权限(从最低特权到最高特权)
委派(工作或学校帐户) 不支持。
委派(个人 Microsoft 帐户) 不支持。
应用程序 OnlineMeetingRecording.Read.All

示例

以下示例演示如何订阅租户级别可用于联机会议的录制内容。

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

对于临时调用

若要获取可用于租户中任何临时调用的任何录制的更改通知,请订阅 communications/adhocCalls/getAllRecordings。 此资源支持在通知中包括资源数据。 此订阅支持 adhocCalls

权限

订阅 communications/adhocCalls/getAllRecordings需要以下权限之一。 若要了解详细信息,包括如何选择权限的信息,请参阅权限

权限类型 权限(从最低特权到最高特权)
委派(工作或学校帐户) 不支持。
委派(个人 Microsoft 帐户) 不支持。
应用程序 CallRecordings.Read.All

示例

以下示例演示如何订阅租户级别的可用录制。

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

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

订阅可用于特定联机会议的录制内容

若要获取可用于特定联机会议的任何录制的更改通知,请 communications/onlineMeetings/{onlineMeetingId}/recordings订阅 。 此资源支持在通知中包括资源数据。 此订阅支持计划的 onlineMeeting

注意

此订阅当前不支持专用频道会议。

权限

订阅 communications/onlineMeetings/{onlineMeetingId}/recordings需要以下权限之一。 若要了解详细信息,包括如何选择权限的信息,请参阅权限

权限类型 权限(从最低特权到最高特权)
委派(工作或学校帐户) OnlineMeetingRecording.Read.All
委派(个人 Microsoft 帐户) 不支持。
应用程序 OnlineMeetingRecording.Read.Chat、OnlineMeetingRecording.Read.All

注意

  • 权限 OnlineMeetingRecording.Read.Chat 使用 特定于资源的许可。 此权限仅适用于安排的私人聊天会议,不适用于频道会议。
  • 若要仅使用所需的 特定于资源的许可 权限订阅可用于特定联机会议的任何录制,请将查询参数与资源字符串一起使用 useResourceSpecificConsentBasedAuthorization=true

示例 1:使用经典权限订阅可用于特定联机会议的录制内容

POST https://graph.microsoft.com/beta/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}"
}

订阅可用于特定临时呼叫的录制内容

若要获取可用于特定临时调用的任何录制的更改通知,请 communications/adhocCalls/{adhocCallId}/recordings订阅 。 此资源支持在通知中包括资源数据。 此订阅支持 即席调用

权限

订阅 communications/adhocCalls/{adhocCallId}/recordings需要以下权限之一。 若要了解详细信息,包括如何选择权限的信息,请参阅权限

权限类型 权限(从最低特权到最高特权)
委派(工作或学校帐户) CallRecordings.Read.All
委派(个人 Microsoft 帐户) 不支持。
应用程序 CallRecordings.Read.All

示例:使用经典权限订阅可用于特定临时调用的录制

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

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

订阅可用于由用户组织的联机会议的录制内容

若要获取可用于特定用户组织的任何联机会议的任何录制的更改通知,请 users/{userId}/onlineMeetings/getAllRecordings订阅 。 此资源支持在通知中包括资源数据。 此订阅支持计划的 onlineMeeting

注意

此订阅当前不支持专用频道会议。

权限

订阅 users/{userId}/onlineMeetings/getAllRecordings需要以下权限之一。 若要了解详细信息,包括如何选择权限的信息,请参阅权限

权限类型 权限(从最低特权到最高特权)
委派(工作或学校帐户) OnlineMeetingRecording.Read.All
委派(个人 Microsoft 帐户) 不支持。
应用程序 OnlineMeetingRecording.Read.All

订阅可用于特定用户启动听录的临时呼叫的录制

若要获取可用于特定用户启动听录的任何临时调用的任何录制的更改通知,请 users/{userId}/adhocCalls/getAllRecordings订阅 。 此资源支持在通知中包括资源数据。 此订阅支持 即席调用

权限

订阅 users/{userId}/adhocCalls/getAllRecordings需要以下权限之一。 若要了解详细信息,包括如何选择权限的信息,请参阅权限

权限类型 权限(从最低特权到最高特权)
委派(工作或学校帐户) CallRecordings.Read.All
委派(个人 Microsoft 帐户) 不支持。
应用程序 CallRecordings.Read.All

示例

以下示例演示如何订阅可用于特定用户启动听录的任何临时呼叫的录制。

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

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

订阅可用于安装了特定 Teams 应用的任何联机会议的录制内容

本部分介绍订阅可用于安装了特定 Teams 应用的任何联机会议的录制内容的方法。

若要获取可用于安装了特定 Teams 应用的任何联机会议的任何录制的更改通知,请订阅 appCatalogs/teamsApps/{teams-app-id}/installedToOnlineMeetings/getAllRecordings。 此资源支持在通知中包括资源数据。 此订阅支持计划的 onlineMeeting, 但不支持频道会议。

注意

此资源类型仅在终结点上 /beta 可用。

权限

订阅 appCatalogs/teamsApps/{teams-app-id}/installedToOnlineMeetings/getAllRecordings需要以下权限之一。 若要了解详细信息,包括如何选择权限的信息,请参阅权限

权限类型 权限(从最低特权到最高特权)
委派(工作或学校帐户) 不支持。
委派(个人 Microsoft 帐户) 不支持。
应用程序 OnlineMeetingRecording.Read.Chat、OnlineMeetingRecording.Read.All

注意

  • 权限 OnlineMeetingRecording.Read.Chat 使用 特定于资源的许可
  • 若要订阅任何联机会议可用的录制内容,其中仅使用所需的 特定于资源的许可 权限安装了特定 Teams 应用,请将 query 参数与资源字符串一起使用 useResourceSpecificConsentBasedAuthorization=true

示例 1:订阅可用于使用所需经典权限安装特定 Teams 应用的任何联机会议的录制内容

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

通知有效负载

根据你的订阅,可以获取包含或不带资源数据的通知。 通过订阅资源数据,可以获取 脚本录制 元数据以及通知。

包含脚本资源数据的通知

对于包含资源数据的通知,负载如下所示。 此有效负载适用于联机会议可用的脚本。 对于临时呼叫, meetingIdnull

注意

为了提高可读性,此处显示的有效负载对象已缩短。

对于联机会议

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

对于临时调用

{
  "value": [
    {
      "subscriptionId": "8c0ff21a-ca3b-45db-b570-e589a7d3d02d",
      "changeType": "created",
      "clientState": "null",
      "subscriptionExpirationDateTime": "2025-08-08T06:29:30.356Z",
      "resource": "users/f2e8e111-3887-4936-87f8-639292c70d34/adhoccalls/5f3640e7-a59c-4bec-82ca-e66251f795b7/transcripts('MyM...')",
      "resourceData": {
        "id": "f2e8e111-3887-4936-87f8-639292c70d34",
        "@odata.type": "#Microsoft.Graph.callTranscript",
        "@odata.id": "users/{user-id}/adhoccalls/5f3640e7-a59c-4bec-82ca-e66251f795b7/transcripts('MyM...')"
      },
      "encryptedContent": {
        "data": "<<--EncryptedContent-->>",
        "dataKey": "<<--EnryptedDataKeyUsedForEncryptingContent-->>",
        "encryptionCertificateId": "<<--IdOfTheCertificateUsedForEncryptingDataKey-->>",
        "encryptionCertificateThumbprint": "<<--ThumbprintOfTheCertificateUsedForEncryptingDataKey-->>"
      },
      "tenantId": "<<--TenantForWhichNotificationWasSent-->>"
    }
  ],
  "validationTokens": [
    "<<--ValidationTokens-->>"
  ]
}

包含资源数据的脚本的解密通知

解密的通知负载如下所示。 有效负载符合 脚本 架构。 有效负载类似于 GET作返回的有效负载。

注意

为了提高可读性,此处显示的有效负载对象已缩短。

对于联机会议

{
  "id": "MSM...",
  "meetingId": "MSo...",
  "callId": "af630fe0-04d3-4559-8cf9-91fe45e36296",
  "transcriptContentUrl": "users/{organizer-id}/onlineMeetings/MSo.../transcripts/MSM.../content",
  "createdDateTime": null,
  "endDateTime": "2023-04-10T08:27:25.2346000Z",
  "contentCorrelationId": "bc842d7a-2f6e-4b18-a1c7-73ef91d5c8e3",
  "meetingOrganizer": {
    "application": null,
    "device": null,
    "user": {
      "userIdentityType": "aadUser",
      "id": "976f4b31-fd01-4e0b-9178-29cc40c14438",
      "displayName": null,
      "tenantId": "2432b57b-0abd-43db-aa7b-16eadd115d34"
    }
  }
}

对于临时调用

{
  "id": "MyM...",
  "meetingId": null,
  "callId": "5f3640e7-a59c-4bec-82ca-e66251f795b7",
  "transcriptContentUrl": "users/f2e8e111-3887-4936-87f8-639292c70d34/adhoccalls/5f3640e7-a59c-4bec-82ca-e66251f795b7/transcripts/MyM.../content",
  "createdDateTime": null,
  "endDateTime": "2025-08-11T06:57:28.2265904Z",
  "contentCorrelationId": "58cfc66a-710f-4be7-adc0-1ca5a28f2c0c-0",
  "meetingOrganizer": {
    "application": null,
    "device": null,
    "user": {
      "userIdentityType": "aadUser",
      "id": "f2e8e111-3887-4936-87f8-639292c70d34",
      "displayName": null,
      "tenantId": "8393309d-9fb7-4cce-aafb-eedc8c5781e2"
    }
  }
}

包含用于录制的资源数据的通知

对于包含资源数据的通知,负载如下所示。

注意

为了提高可读性,此处显示的有效负载对象已缩短。

对于联机会议

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

对于临时调用

{
  "value": [
    {
      "subscriptionId": "871b5d27-6f77-4100-b78d-bc443873324e",
      "changeType": "created",
      "clientState": "<<--SpecifiedClientState-->>",
      "subscriptionExpirationDateTime": "2025-07-24T18:04:24.3511596+00:00",
      "resource": "users/{user-id}/adhoccalls('1c9ddbc9-82be-46b6-8edd-bf833fe33a03')/recordings('MyMjMTk6ODA4MTExMTNiYWQzNDNhYzkzNGI2YTVmYzc1ZThmZGJAdGhyZWFkLnYyIyM1MTYwNzQ4MC1kM2FjLTRlZTQtOTQ3NS1lYjM2NTk5MjM4ZDYtMTc1MzM0NTA2OC1UcmFuc2NyaXB0VjI=')",
      "resourceData": {
        "id": "MyM...",
        "@odata.type": "#Microsoft.Graph.callRecording",
        "@odata.id": "users/{user-id}/adhoccalls('1c9ddbc9-82be-46b6-8edd-bf833fe33a03')/recordings(MyMjMTk6ODA4MTExMTNiYWQzNDNhYzkzNGI2YTVmYzc1ZThmZGJAdGhyZWFkLnYyIyM1MTYwNzQ4MC1kM2FjLTRlZTQtOTQ3NS1lYjM2NTk5MjM4ZDYtMTc1MzM0NTA2OC1UcmFuc2NyaXB0VjI=)",
      },
      "encryptedContent": {
        "data": "<<--EncryptedContent-->>",
        "dataKey": "<<--EnryptedDataKeyUsedForEncryptingContent-->>",
        "encryptionCertificateId": "<<--IdOfTheCertificateUsedForEncryptingDataKey-->>",
        "encryptionCertificateThumbprint": "<<--ThumbprintOfTheCertificateUsedForEncryptingDataKey-->>"
      },
      "tenantId": "<<--TenantForWhichNotificationWasSent-->>"
    }
  ],
  "validationTokens": [
    "<<--ValidationTokens-->>"
  ]
}

包含资源数据的录制的解密通知

解密的通知负载如下所示。 有效负载符合 记录 架构。 有效负载类似于 GET作返回的有效负载。

注意

为了提高可读性,此处显示的有效负载对象已缩短。

{
  "id": "VjI...",
  "meetingId": "MSo...",
  "callId": "af630fe0-04d3-4559-8cf9-91fe45e36296",
  "createdDateTime": "2023-07-25T09:35:02.85022Z",
  "endDateTime": "2023-04-10T08:27:25.2346000Z",
  "contentCorrelationId": "bc842d7a-2f6e-4b18-a1c7-73ef91d5c8e3",
  "recordingContentUrl": "users/{organizer-id}/MSo.../recordings/VjI.../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
}

不含资源数据的通知

没有资源数据的通知会提供资源 ID,用于进行 GET 调用以获取脚本或录制内容。 没有资源数据的通知订阅不需要加密证书 (,因为实际资源数据不会通过) 发送。

对于不包含资源数据的通知,有效负载如下所示。

注意

为了提高可读性,此处显示的有效负载对象已缩短。

对于联机会议脚本

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

对于即席呼叫脚本

对于不包含资源数据的通知,有效负载如下所示。 此有效负载适用于可用于临时调用的脚本。 对于临时呼叫, meetingIdnull

{
  "subscriptionId": "871b5d27-6f77-4100-b78d-bc443873324e",
  "changeType": "created",
  "tenantId": "2432b57b-0abd-43db-aa7b-16eadd115d34",
  "clientState": "<<--SpecifiedClientState-->>",
  "subscriptionExpirationDateTime": "2025-07-24T18:04:24.3511596+00:00",
  "resource": "users/{user-id}/adhocCalls/1c9ddbc9-82be-46b6-8edd-bf833fe33a03/transcripts/MyMjMTk6ODA4MTExMTNiYWQzNDNhYzkzNGI2YTVmYzc1ZThmZGJAdGhyZWFkLnYyIyM1MTYwNzQ4MC1kM2FjLTRlZTQtOTQ3NS1lYjM2NTk5MjM4ZDYtMTc1MzM0NTA2OC1UcmFuc2NyaXB0VjI=",
  "resourceData": {
    "id": "MyM...",
    "@odata.type": "#Microsoft.Graph.callTranscript",
    "@odata.id": "users/{user-id}/adhoccalls/1c9ddbc9-82be-46b6-8edd-bf833fe33a03/transcripts('MyM...')"
  }
}

对于不包含资源数据的通知,有效负载如下所示。

注意

为了提高可读性,此处显示的有效负载对象已缩短。

对于联机会议录制

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

对于临时呼叫录制

{
"subscriptionId": "871b5d27-6f77-4100-b78d-bc443873324e",
  "changeType": "created",
  "tenantId": "2432b57b-0abd-43db-aa7b-16eadd115d34",
  "clientState": "<<--SpecifiedClientState-->>",
  "subscriptionExpirationDateTime": "2025-07-24T18:04:24.3511596+00:00",
  "resource": "users/{user-id}/adhoccalls/adhocCalls/1c9ddbc9-82be-46b6-8edd-bf833fe33a03/recordings('MyM...')",
  "resourceData": {
    "id": "MyM...",
    "@odata.type": "#Microsoft.Graph.callRecording",
    "@odata.id": "users/{user-id}/adhoccalls/1c9ddbc9-82be-46b6-8edd-bf833fe33a03/recordings('MyM...')"
  }
}

资源和@odata.id 属性可用于调用 Microsoft Graph 以获取脚本或录制内容。