Obtenir l’ID de réunion et l’ID d’organisateur
Votre application peut extraire les transcriptions et les enregistrements d’une réunion à l’aide de l’ID de réunion et de l’ID utilisateur de l’organisateur de la réunion, également appelé ID d’organisateur. Les API REST Graph récupèrent les transcriptions et les enregistrements en fonction de l’ID de réunion et de l’ID d’organisateur qui sont passés en tant que paramètres dans l’API.
Remarque
L’ID de réunion pour les réunions planifiées peut expirer dans quelques jours s’il n’est pas utilisé. Elle peut être relancée à l’aide de l’URL de la réunion pour rejoindre la réunion. Pour plus d’informations sur la chronologie d’expiration des réunions pour les différents types de réunion, consultez Expiration de réunion.
Pour obtenir l’ID de réunion et l’ID d’organisateur pour extraire la transcription et l’enregistrement, choisissez l’une des deux méthodes suivantes :
S'abonner aux notifications de changement
Vous pouvez vous abonner à votre application pour recevoir des notifications de modification pour les événements de réunion planifiés. Lorsque votre application est avertie des événements de réunion abonnés, elle peut obtenir des transcriptions et des enregistrements, si elle est autorisée par le biais des autorisations Microsoft Entra requises.
Votre application reçoit une notification pour le type d’événements de réunion auxquels elle est abonnée :
Lorsque votre application est avertie d’un événement de réunion abonné, elle peut récupérer l’ID et l’ID de l’organisateur de la réunion à partir du message de notification. En fonction des détails de la réunion obtenus, votre application peut récupérer les transcriptions et les enregistrements de réunion une fois la réunion terminée.
Obtenir les détails de la réunion à l’aide d’une notification au niveau de l’utilisateur
Choisissez d’abonner votre application aux notifications au niveau de l’utilisateur pour obtenir les transcriptions et les enregistrements d’un événement de réunion d’un utilisateur particulier. Lorsqu’une réunion est planifiée pour cet utilisateur, votre application est avertie. Votre application peut également recevoir des notifications de réunion à l’aide d’événements de calendrier.
Pour vous abonner à des événements de calendrier, consultez notifications de modification pour les ressources Outlook dans Microsoft Graph.
Utilisez l’exemple suivant pour vous abonner aux notifications au niveau de l’utilisateur :
POST https://graph.microsoft.com/v1.0/subscriptions/
{
"changeType": "created,updated,deleted",
"notificationUrl": "https://webhook.azurewebsites.net/api/send/myNotifyClient",
"resource": "users('1273a016-201d-4f95-8083-1b7f99b3edeb')/events",
"expirationDateTime": "2022-05-05T14:58:56.7951795+00:00",
"clientState": "ClientSecret",
"includeResourceData": false
}
Lorsque votre application est avertie d’un événement de réunion abonnée, elle recherche l’ID d’événement de calendrier dans la notification. Utilisez l’ID d’événement pour récupérer JoinWebUrl
un ID de conversation spécifique et vous abonner à ses messages. Une fois que votre application s’est abonnée aux messages de conversation, suivez les étapes fournies pour les notifications au niveau du locataire afin d’obtenir l’ID de réunion et l’ID d’organisateur.
Pour obtenir l’ID de réunion et l’ID d’organisateur à partir d’une notification au niveau de l’utilisateur :
Obtenir l’ID d’événement : votre application obtient la
eventId
propriété à partir de la charge utile de notification.Exemple : charge utile de notification
{ "subscriptionId": "ef30cdc6-b5ae-4702-b924-f458fd9e5fc3", "changeType": "created", "tenantId": "2432b57b-0abd-43db-aa7b-16eadd115d34", "clientState": "ClientSecret", "subscriptionExpirationDateTime": "2022-05-05T07:54:53.1886542-07:00", "resource": "Users/1273a016-201d-4f95-8083-1b7f99b3edeb/Events/AAMkADY0NjM1MjRhLTNiNjAtNDBiOC1hYTQxLThkMjAxN2QzMjZhYQBGAAAAAAC03Gz8aL_JQp2Kxvw5a29SBwDFFWHjtoMRTqdrVyQ1h8yLAAAAAAENAADFFWHjtoMRTqdrVyQ1h8yLAAFwC7nAAAA=", "resourceData": {} }
Dans cet exemple, le
eventID
contenu estresource
AAMkADY0NjM1MjRhLTNiNjAtNDBiOC1hYTQxLThkMjAxN2QzMjZhYQBGAAAAAAC03Gz8aL_JQp2Kxvw5a29SBwDFFWHjtoMRTqdrVyQ1h8yLAAAAAAENAADFFWHjtoMRTqdrVyQ1h8yLAAFwC7nAAAA=.Obtenir l’URL de la réunion : utilisez l’ID d’événement pour récupérer
joinUrl
l’URL de la réunion.Pour plus d’informations, consultez get event.
Utilisez l’exemple suivant pour demander l’URL de la réunion :
GET https://graph.microsoft.com/v1.0/users/1273a016-201d-4f95-8083-1b7f99b3edeb/events/AAMkADY0NjM1MjRhLTNiNjAtNDBiOC1hYTQxLThkMjAxN2QzMjZhYQBGAAAAAAC03Gz8aL_JQp2Kxvw5a29SBwDFFWHjtoMRTqdrVyQ1h8yLAAAAAAENAADFFWHjtoMRTqdrVyQ1h8yLAAFwC7nAAAA=
La charge utile de réponse contient
joinURL
.Exemple : charge utile de réponse pour l’obtention de l’URL de réunion
{ "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('1273a016-201d-4f95-8083-1b7f99b3edeb')/events/$entity", "@odata.etag": "W/\"xRVh47aDEU6na1ckNYfMiwABb2Twsg==\"", "id": "AAMkADY0NjM1MjRhLTNiNjAtNDBiOC1hYTQxLThkMjAxN2QzMjZhYQBGAAAAAAC03Gz8aL_JQp2Kxvw5a29SBwDFFWHjtoMRTqdrVyQ1h8yLAAAAAAENAADFFWHjtoMRTqdrVyQ1h8yLAAFwC7nAAAA=", "start": { "dateTime": "2022-05-06T15:00:00.0000000", "timeZone": "UTC" }, "end": { "dateTime": "2022-05-06T15:30:00.0000000", "timeZone": "UTC" }, "onlineMeeting": { "joinUrl": "https://teams.microsoft.com/l/meetup-join/19%3ameeting_MjExYzJiMTItZDY1MS00ZGZkLWE5YzQtZTBmNWI1MDg2M2Uw%40thread.v2/0?context=%7b%22Tid%22%3a%222432b57b-0abd-43db-aa7b-16eadd115d34%22%2c%22Oid%22%3a%221273a016-201d-4f95-8083-1b7f99b3edeb%22%7d", "conferenceId": "438824583", "tollNumber": "+1 213-279-1007" } }
L’URL de la réunion est contenue dans
joinUrl
.Obtenir l’ID de thread de conversation : utilisez l’URL de réunion obtenue
joinUrl
pour obtenir l’ID du fil de conversation. Spécifiez cette URL de réunion comme valeur pour le paramètre lors de l’extractionjoinWebUrl
de la réunion associée.Utilisez l’exemple suivant pour demander l’ID de thread :
GET https://graph.microsoft.com/v1.0/users('14b779ae-cb64-47e7-a512-52fd50a4154d')/onlineMeetings?$filter=JoinWebUrl%20eq%20'https://teams.microsoft.com/l/meetup-join/19%3ameeting_MTM5OTY3MGUtNmY4Mi00Yjg4LTk2MDUtY2IyZGRlNmU1ZjA2%40thread.v2/0?context=%7b%22Tid%22%3a%222432b57b-0abd-43db-aa7b-16eadd115d34%22%2c%22Oid%22%3a%2214b779ae-cb64-47e7-a512-52fd50a4154d%22%7d'
La charge utile de réponse contient le
threadID
membre dans lachatInfo
propriété.Exemple : charge utile de réponse avec l’ID de thread
{ "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('14b779ae-cb64-47e7-a512-52fd50a4154d')/onlineMeetings", "value": [ { "id": "MSoxNGI3NzlhZS1jYjY0LTQ3ZTctYTUxMi01MmZkNTBhNDE1NGQqMCoqMTk6bWVldGluZ19NVE01T1RZM01HVXRObVk0TWkwMFlqZzRMVGsyTURVdFkySXlaR1JsTm1VMVpqQTJAdGhyZWFkLnYy", "creationDateTime": "2022-04-26T07:41:17.3736455Z", "startDateTime": "2022-04-26T10:30:00Z", "endDateTime": "2022-04-26T11:00:00Z", "joinUrl": "https://teams.microsoft.com/l/meetup-join/19%3ameeting_MTM5OTY3MGUtNmY4Mi00Yjg4LTk2MDUtY2IyZGRlNmU1ZjA2%40thread.v2/0?context=%7b%22Tid%22%3a%222432b57b-0abd-43db-aa7b-16eadd115d34%22%2c%22Oid%22%3a%2214b779ae-cb64-47e7-a512-52fd50a4154d%22%7d", "joinWebUrl": "https://teams.microsoft.com/l/meetup-join/19%3ameeting_MTM5OTY3MGUtNmY4Mi00Yjg4LTk2MDUtY2IyZGRlNmU1ZjA2%40thread.v2/0?context=%7b%22Tid%22%3a%222432b57b-0abd-43db-aa7b-16eadd115d34%22%2c%22Oid%22%3a%2214b779ae-cb64-47e7-a512-52fd50a4154d%22%7d", "chatInfo": { "threadId": "19:meeting_MTM5OTY3MGUtNmY4Mi00Yjg4LTk2MDUtY2IyZGRlNmU1ZjA2@thread.v2", "messageId": "0", "replyChainMessageId": null } } ] }
L’ID de conversation est contenu dans
threadId
.S’abonner aux messages de conversation : utilisez l’ID de conversation pour vous abonner à votre application afin de recevoir des messages de conversation pour cette réunion particulière. Pour plus d’informations, consultez S’abonner aux messages dans une conversation.
Si vous souhaitez que votre application s’abonne à des messages avec un texte spécifique, consultez S’abonner aux messages d’une conversation qui contiennent du texte spécifique.
Suivez les étapes des notifications au niveau du locataire pour obtenir l’ID de réunion et l’ID d’organisateur.
Obtenir les détails de la réunion à l’aide d’une notification au niveau du locataire
Les notifications au niveau du locataire sont utiles si votre application est autorisée à accéder à toutes les transcriptions et enregistrements de réunion dans le locataire. Abonnez-vous à votre application pour être averti des événements au début de la transcription et de l’enregistrement ou de la fin de l’appel pour les réunions Teams en ligne planifiées. Une fois la réunion terminée, votre application peut accéder à la transcription et à l’enregistrement de la réunion et les récupérer.
Pour vous abonner aux notifications de niveau client de votre application, consultez Obtenir des notifications de modification.
Lorsque votre application est avertie des événements de réunion abonnés, elle recherche dans les notifications les éléments suivants :
- Événements de début de transcription.
- Événements de fin de réunion.
Ces événements contiennent l’ID de conversation, qui est utilisé pour obtenir l’entité de conversation, puis l’ID de réunion et l’ID d’organisateur.
Pour obtenir l’ID de réunion et l’ID d’organisateur à partir d’une notification au niveau du locataire :
Obtenir l’ID de conversation : votre application obtient la
chatId
propriété de la notification pour effectuer des appels ultérieurs. Votre application peut obtenir l’ID de conversation à partir des charges utiles de :Événement de démarrage de la transcription :
callTranscriptEventMessageDetail
type d’événementExemple : charge utile pour l’événement de démarrage de la transcription
{ "subscriptionId": "1217470f-564c-4fe3-b51f-ebd962cb8797", "changeType": "created", "tenantId": "2432b57b-0abd-43db-aa7b-16eadd115d34", "resource": "chats('19:meeting_ZjVkMjc0ZWYtNThkMy00ZGI1LWFiYjAtYjg3ZGU0ZWI3MzZk@thread.v2')/messages('1649787549174')", "contentDecryptedBySimulator": { "@odata.context": "https://graph.microsoft.com/$metadata#chats('19%3Ameeting_ZjVkMjc0ZWYtNThkMy00ZGI1LWFiYjAtYjg3ZGU0ZWI3MzZk%40thread.v2')/messages/$entity", "messageType": "systemEventMessage", "createdDateTime": "2022-04-12T18:19:09.174Z", "lastModifiedDateTime": "2022-04-12T18:19:09.174Z", "chatId": "19:meeting_ZjVkMjc0ZWYtNThkMy00ZGI1LWFiYjAtYjg3ZGU0ZWI3MzZk@thread.v2", "body": { "contentType": "html", "content": "<systemEventMessage/>" }, "channelIdentity": null, "eventDetail": { "@odata.type": "#Microsoft.Teams.GraphSvc.callTranscriptEventMessageDetail", "callId": "16481de8-3262-419b-abc7-0139e6239515", "callTranscriptICalUid": "", "meetingOrganizer": { "application": null, "device": null, "user": { "userIdentityType": "aadUser", "id": "14b779ae-cb64-47e7-a512-52fd50a4154d", "displayName": null } } } }, "encryptedContent": {} }
Événement de fin d’appel :
callEndedEventMessageDetail
type d’événementExemple : Charge utile pour l’événement de fin d’appel
{ "subscriptionId": "1217470f-564c-4fe3-b51f-ebd962cb8797", "changeType": "created", "tenantId": "2432b57b-0abd-43db-aa7b-16eadd115d34", "resource": "chats('19:meeting_ZjVkMjc0ZWYtNThkMy00ZGI1LWFiYjAtYjg3ZGU0ZWI3MzZk@thread.v2')/messages('1649787585457')", "resourceData": {}, "contentDecryptedBySimulator": { "@odata.context": "https://graph.microsoft.com/$metadata#chats('19%3Ameeting_ZjVkMjc0ZWYtNThkMy00ZGI1LWFiYjAtYjg3ZGU0ZWI3MzZk%40thread.v2')/messages/$entity", "createdDateTime": "2022-04-12T18:19:45.457Z", "lastModifiedDateTime": "2022-04-12T18:19:45.457Z", "chatId": "19:meeting_ZjVkMjc0ZWYtNThkMy00ZGI1LWFiYjAtYjg3ZGU0ZWI3MzZk@thread.v2", "eventDetail": { "@odata.type": "#Microsoft.Teams.GraphSvc.callEndedEventMessageDetail", "callId": null, "callDuration": "PT1M44S", "callEventType": "meeting", "callParticipants": [ ], "initiator": { } } }, "encryptedContent": { } }
Obtenir l’entité de conversation : votre application peut récupérer l’entité de conversation à l’aide de l’ID de conversation obtenu à l’étape 1. Utilisez l’entité de conversation pour obtenir l’URL permettant de rejoindre l’appel. Le
joinWebUrl
membre de laonlineMeetingInfo
propriété contient cette URL et est utilisé pour obtenir l’ID de réunion éventuellement. L’ID d’organisateur fait également partie de la charge utile de la réponse.Pour plus d’informations sur l’entité de conversation, consultez Obtenir une conversation.
Utilisez l’exemple suivant pour demander l’entité de conversation en fonction de l’ID de conversation :
GET https://graph.microsoft.com/v1.0/chats/19:meeting_NmU0NTkxYzMtM2Y2My00NzRlLWFmN2YtNTFiMGM5OWM3ZjY2@thread.v2
La charge utile de réponse contient les éléments suivants :
ID de l’organisateur : il est contenu dans le
id
membre de laorganizer
propriété dans la charge utile de réponse.URL de l’appel de réunion : cette URL est utilisée pour récupérer l’ID de réunion, et elle est disponible dans la charge utile de réponse dans l’un des deux scénarios :
- Si la réunion est une réunion Teams en ligne, le
joinWebUrl
membre de laonlineMeetingInfo
propriété contient cette URL. - Si la réunion n’a pas été créée en tant que réunion en ligne à partir du client Teams ou du client Outlook, elle contient le
calendarEventId
membre dans laonlineMeetingInfo
propriété. Votre application peut utiliser lecalendarEventId
pour obtenirjoinUrl
, qui est le même quejoinWebUrl
.
Pour plus d’informations sur les événements, consultez obtenir un événement.
Exemples de scénarios de charge utile de réponse en fonction du type d’URL de la réunion de participation :
Réunion Teams en ligne où
joinWebUrl
est disponibleExemple
: charge utile de réponse pour une réunion en ligne
{ "@odata.context": "https://graph.microsoft.com/beta/$metadata#chats/$entity", "id": "19:meeting_NmU0NTkxYzMtM2Y2My00NzRlLWFmN2YtNTFiMGM5OWM3ZjY2@thread.v2", "topic": "Test Meet Create Online Meeting", "createdDateTime": "2022-04-14T11:30:45.903Z", "lastUpdatedDateTime": "2022-04-26T06:27:45.265Z", "chatType": "meeting", "webUrl": "https://teams.microsoft.com/l/chat/19%3Ameeting_NmU0NTkxYzMtM2Y2My00NzRlLWFmN2YtNTFiMGM5OWM3ZjY2%40thread.v2/0?tenantId=2432b57b-0abd-43db-aa7b-16eadd115d34", "tenantId": "2432b57b-0abd-43db-aa7b-16eadd115d34", "viewpoint": null, "onlineMeetingInfo": { "calendarEventId": null, "joinWebUrl": "https://teams.microsoft.com/l/meetup-join/19%3ameeting_NmU0NTkxYzMtM2Y2My00NzRlLWFmN2YtNTFiMGM5OWM3ZjY2%40thread.v2/0?context=%7b%22Tid%22%3a%222432b57b-0abd-43db-aa7b-16eadd115d34%22%2c%22Oid%22%3a%2214b779ae-cb64-47e7-a512-52fd50a4154d%22%7d", "organizer": { "id": "14b779ae-cb64-47e7-a512-52fd50a4154d", "displayName": null, "userIdentityType": "aadUser" } } }
Réunion planifiée via le client Teams ou le client Outlook, non marquée comme réunion en ligne lorsque celle-ci
calendarEventId
est disponibleExemple : charge utile de réponse pour la réunion non marquée comme étant en ligne
{ "@odata.context": "https://graph.microsoft.com/beta/$metadata#chats/$entity", "id": "19:meeting_YzM1NGFiZWYtOGFiOS00NjM5LTg4OTktYmU0MjI4NTQyNGZm@thread.v2", "topic": "Non Online Meeting Teams Client", "createdDateTime": "2022-04-26T09:43:23.711Z", "lastUpdatedDateTime": "2022-04-26T09:43:46.157Z", "chatType": "meeting", "webUrl": "https://teams.microsoft.com/l/chat/19%3Ameeting_YzM1NGFiZWYtOGFiOS00NjM5LTg4OTktYmU0MjI4NTQyNGZm%40thread.v2/0?tenantId=2432b57b-0abd-43db-aa7b-16eadd115d34", "tenantId": "2432b57b-0abd-43db-aa7b-16eadd115d34", "viewpoint": null, "onlineMeetingInfo": { "calendarEventId": "AAMkAGE3NjJhOTVhLTNkZDQtNDE2OS05ZjU0LTJmOGQ0YTY2YTdiZQBGAAAAAAD3AG5jNnlgQJvdCL_KgXJIBwBsww5BlIxtT7iFyYWrXV3AAAAAAAENAABsww5BlIxtT7iFyYWrXV3AAACSDwYeAAA=", "joinWebUrl": null, "organizer": { "id": "14b779ae-cb64-47e7-a512-52fd50a4154d", "displayName": null, "userIdentityType": "aadUser" } } }
Utilisez l’exemple suivant pour obtenir
joinWebUrl
à partir des éléments suivantscalendarEventId
:GET https://graph.microsoft.com/beta/users/14b779ae-cb64-47e7-a512-52fd50a4154d/events/AAMkAGE3NjJhOTVhLTNkZDQtNDE2OS05ZjU0LTJmOGQ0YTY2YTdiZQBGAAAAAAD3AG5jNnlgQJvdCL_KgXJIBwBsww5BlIxtT7iFyYWrXV3AAAAAAAENAABsww5BlIxtT7iFyYWrXV3AAACSDwYdAAA=
Dans cet exemple :
- L’ID de l’organisateur est 14b779ae-cb64-47e7-a512-52fd50a4154d.
La charge utile de réponse de cette requête contient
joinUrl
dans laonlineMeeting
propriété.Remarque
joinUrl
est identique àjoinWebUrl
.
Exemple : charge utile de réponse qui contient l’URL pour rejoindre la réunion
{ "@odata.context": "https://graph.microsoft.com/beta/$metadata#users('14b779ae-cb64-47e7-a512-52fd50a4154d')/events/$entity", "@odata.etag": "W/\"bMMOQZSMbU+4hcmFq11dwAAAkc3Tmw==\"", "id": "AAMkAGE3NjJhOTVhLTNkZDQtNDE2OS05ZjU0LTJmOGQ0YTY2YTdiZQBGAAAAAAD3AG5jNnlgQJvdCL_KgXJIBwBsww5BlIxtT7iFyYWrXV3AAAAAAAENAABsww5BlIxtT7iFyYWrXV3AAACSDwYdAAA=", "start": { "dateTime": "2022-04-26T10:30:00.0000000", "timeZone": "UTC" }, "end": { "dateTime": "2022-04-26T11:00:00.0000000", "timeZone": "UTC" }, "onlineMeeting": { "joinUrl": "https://teams.microsoft.com/l/meetup-join/19%3ameeting_MTM5OTY3MGUtNmY4Mi00Yjg4LTk2MDUtY2IyZGRlNmU1ZjA2%40thread.v2/0?context=%7b%22Tid%22%3a%222432b57b-0abd-43db-aa7b-16eadd115d34%22%2c%22Oid%22%3a%2214b779ae-cb64-47e7-a512-52fd50a4154d%22%7d" }, "calendar@odata.associationLink": "https://graph.microsoft.com/beta/users('14b779ae-cb64-47e7-a512-52fd50a4154d')/calendars('AAMkAGE3NjJhOTVhLTNkZDQtNDE2OS05ZjU0LTJmOGQ0YTY2YTdiZQAuAAAAAAD3AG5jNnlgQJvdCL_KgXJIAQBsww5BlIxtT7iFyYWrXV3AAAAAAAENAAA=')/$ref", "calendar@odata.navigationLink": "https://graph.microsoft.com/beta/users('14b779ae-cb64-47e7-a512-52fd50a4154d')/calendars('AAMkAGE3NjJhOTVhLTNkZDQtNDE2OS05ZjU0LTJmOGQ0YTY2YTdiZQAuAAAAAAD3AG5jNnlgQJvdCL_KgXJIAQBsww5BlIxtT7iFyYWrXV3AAAAAAAENAAA=')" }
- Si la réunion est une réunion Teams en ligne, le
Obtenir l’ID de réunion : à présent, votre application peut utiliser
joinWebUrl
pour obtenir l’ID de réunion.Utilisez l’exemple suivant pour demander l’ID de réunion en ligne :
GET https://graph.microsoft.com/beta/users('14b779ae-cb64-47e7-a512-52fd50a4154d')/onlineMeetings?$filter=JoinWebUrl%20eq%20'https://teams.microsoft.com/l/meetup-join/19%3ameeting_MTM5OTY3MGUtNmY4Mi00Yjg4LTk2MDUtY2IyZGRlNmU1ZjA2%40thread.v2/0?context=%7b%22Tid%22%3a%222432b57b-0abd-43db-aa7b-16eadd115d34%22%2c%22Oid%22%3a%2214b779ae-cb64-47e7-a512-52fd50a4154d%22%7d'
La charge utile de réponse contient l’ID de réunion dans le
id
membre de lavalue
propriété.Exemple : charge utile de réponse avec ID de réunion
{ "@odata.context": "https://graph.microsoft.com/beta/$metadata#users('14b779ae-cb64-47e7-a512-52fd50a4154d')/onlineMeetings", "value": [ { "id": "MSoxNGI3NzlhZS1jYjY0LTQ3ZTctYTUxMi01MmZkNTBhNDE1NGQqMCoqMTk6bWVldGluZ19NVE01T1RZM01HVXRObVk0TWkwMFlqZzRMVGsyTURVdFkySXlaR1JsTm1VMVpqQTJAdGhyZWFkLnYy", "creationDateTime": "2022-04-26T07:41:17.3736455Z", "startDateTime": "2022-04-26T10:30:00Z", "endDateTime": "2022-04-26T11:00:00Z", "joinUrl": "https://teams.microsoft.com/l/meetup-join/19%3ameeting_MTM5OTY3MGUtNmY4Mi00Yjg4LTk2MDUtY2IyZGRlNmU1ZjA2%40thread.v2/0?context=%7b%22Tid%22%3a%222432b57b-0abd-43db-aa7b-16eadd115d34%22%2c%22Oid%22%3a%2214b779ae-cb64-47e7-a512-52fd50a4154d%22%7d", "joinWebUrl": "https://teams.microsoft.com/l/meetup-join/19%3ameeting_MTM5OTY3MGUtNmY4Mi00Yjg4LTk2MDUtY2IyZGRlNmU1ZjA2%40thread.v2/0?context=%7b%22Tid%22%3a%222432b57b-0abd-43db-aa7b-16eadd115d34%22%2c%22Oid%22%3a%2214b779ae-cb64-47e7-a512-52fd50a4154d%22%7d", "chatInfo": { "threadId": "19:meeting_MTM5OTY3MGUtNmY4Mi00Yjg4LTk2MDUtY2IyZGRlNmU1ZjA2@thread.v2", "messageId": "0", "replyChainMessageId": null } } ] }
Extraire la transcription ou l’enregistrement : l’ID d’organisateur et l’ID de réunion obtenus aux étapes 2 et 3 permettent à votre application d’extraire les transcriptions ou les enregistrements de cet événement de réunion particulier.
Pour extraire des transcriptions, vous devez :
Récupérez l’ID de transcription en fonction de l’ID de l’organisateur et de la réunion :
Utilisez l’exemple suivant pour demander l’ID de transcription :
GET https://graph.microsoft.com/beta/users('14b779ae-cb64-47e7-a512-52fd50a4154d')/onlineMeetings('MSoxNGI3NzlhZS1jYjY0LTQ3ZTctYTUxMi01MmZkNTBhNDE1NGQqMCoqMTk6bWVldGluZ19ObVUwTlRreFl6TXRNMlkyTXkwME56UmxMV0ZtTjJZdE5URmlNR001T1dNM1pqWTJAdGhyZWFkLnYy')/transcripts
Dans cet exemple :
- L’ID de réunion est inclus comme valeur pour
onlineMeetings
: MSoxNGI3NzlhZS1jYjY0LTQ3ZTctYTUxMi01MmZkNTBhNDE1NGQqMCoqMTk6bW VldGluZ19ObVUwTlRreFl6TXRNMlkyTXkwME56UmxMV0ZtTjJZdE5URmlNR001T1dNM 1pqWTJAdGhyZWFkLnYy. - L’ID de l’organisateur est 14b779ae-cb64-47e7-a512-52fd50a4154d.
La charge utile de réponse contient l’ID de transcription pour l’ID de réunion et l’ID d’organisateur dans le
id
membre de lavalue
propriété.Exemple : charge utile de réponse pour l’obtention de l’ID de transcription
{ "@odata.context": "https://graph.microsoft.com/beta/$metadata#users('14b779ae-cb64-47e7-a512-52fd50a4154d')/onlineMeetings('MSoxNGI3NzlhZS1jYjY0LTQ3ZTctYTUxMi01MmZkNTBhNDE1NGQqMCoqMTk6bWVldGluZ19ObVUwTlRreFl6TXRNMlkyTXkwME56UmxMV0ZtTjJZdE5URmlNR001T1dNM1pqWTJAdGhyZWFkLnYy')/transcripts", "@odata.count": 1, "value": [ { "id": "MSMjMCMjMDEyNjJmNjgtOTc2Zi00MzIxLTlhNDQtYThmMmY4ZjQ1ZjVh", "createdDateTime": "2022-04-14T11:34:39.5662792Z" } ] }
Dans cet exemple, l’ID de transcription est MSMjMCMjMDEyNjJmNjgtOTc2Zi00MzIxLTlhNDQtYThmMmY4ZjQ1ZjVh.
- L’ID de réunion est inclus comme valeur pour
Accédez à la transcription de la réunion et obtenez-la en fonction de l’ID de transcription :
Utilisez l’exemple suivant pour demander les transcriptions d’une réunion spécifique au
.vtt
format suivant :GET https://graph.microsoft.com/beta/users('14b779ae-cb64-47e7-a512-52fd50a4154d')/onlineMeetings('MSoxNGI3NzlhZS1jYjY0LTQ3ZTctYTUxMi01MmZkNTBhNDE1NGQqMCoqMTk6bWVldGluZ19ObVUwTlRreFl6TXRNMlkyTXkwME56UmxMV0ZtTjJZdE5URmlNR001T1dNM1pqWTJAdGhyZWFkLnYy')/transcripts('MSMjMCMjMDEyNjJmNjgtOTc2Zi00MzIxLTlhNDQtYThmMmY4ZjQ1ZjVh')/content?$format=text/vtt
La charge utile de réponse contient les transcriptions au
.vtt
format .
Pour récupérer des enregistrements, vous devez :
Récupérez l’ID d’enregistrement en fonction de l’ID de l’organisateur et de l’ID de réunion :
Utilisez l’exemple suivant pour demander l’ID d’enregistrement :
GET https://graph.microsoft.com/beta/users/b935e675-5e67-48b9-8d45-249d5f88e964/onlineMeetings/MSpiOTM1ZTY3NS01ZTY3LTQ4YjktOGQ0NS0yNDlkNWY4OGU5NjQqMCoqMTk6bWVldGluZ19ZbU0zTnpJNU9USXRZakU0WlMwME1tUTNMVGt6TVRRdFkyWm1PRGRtWmpsaVptRTNAdGhyZWFkLnYy/recordings/
Dans cet exemple :
- L’ID de réunion est inclus comme valeur pour
onlineMeetings
: MSpiOTM1ZTY3NS01ZTY3LTQ4YjktOGQ0NS0yNDlkNWY4OGU5NjQqMCoqMTk6bWVl dGluZ19ZbU0zTnpJNU9USXRZakU0WlMwME1tUTNMVGt6TVRRdFkyWm1 PRGRtWmpsaVptRTNAdGhyZWFkLnYy. - L’ID de l’organisateur est b935e675-5e67-48b9-8d45-249d5f88e964.
La charge utile de réponse contient l’ID d’enregistrement pour l’ID de réunion et l’ID de l’organisateur dans le
id
membre de lavalue
propriété.Exemple : Charge utile de réponse pour l’obtention de l’ID d’enregistrement
{ "@odata.context": "https://graph.microsoft.com/beta/$metadata#users('b935e675-5e67-48b9-8d45-249d5f88e964')/onlineMeetings('MSpiOTM1ZTY3NS01ZTY3LTQ4YjktOGQ0NS0yNDlkNWY4OGU5NjQqMCoqMTk6bWVldGluZ19ZbU0zTnpJNU9USXRZakU0WlMwME1tUTNMVGt6TVRRdFkyWm1PRGRtWmpsaVptRTNAdGhyZWFkLnYy')/recordings", "@odata.count": 1, "value": [ { "id": "7e31db25-bc6e-4fd8-96c7-e01264e9b6fc", "createdDateTime": "2023-04-10T08:13:17.5990966Z" } ] }
Dans cet exemple, l’ID d’enregistrement est 7e31db25-bc6e-4fd8-96c7-e01264e9b6fc.
- L’ID de réunion est inclus comme valeur pour
Accédez à et obtenez l’enregistrement de réunion en fonction de l’ID d’enregistrement :
Utilisez l’exemple suivant pour demander les enregistrements d’une réunion spécifique au
.mp4
format :GET https://graph.microsoft.com/beta/users/b935e675-5e67-48b9-8d45-249d5f88e964/onlineMeetings/MSpiOTM1ZTY3NS01ZTY3LTQ4YjktOGQ0NS0yNDlkNWY4OGU5NjQqMCoqMTk6bWVldGluZ19ZbU0zTnpJNU9USXRZakU0WlMwME1tUTNMVGt6TVRRdFkyWm1PRGRtWmpsaVptRTNAdGhyZWFkLnYy/recordings/7e31db25-bc6e-4fd8-96c7-e01264e9b6fc/content?$format=video/mp4
La charge utile de réponse contient les enregistrements au
.mp4
format .
Utiliser Bot Framework pour obtenir l’ID de réunion et l’ID d’organisateur
Votre application peut utiliser Bot Framework pour obtenir l’ID de réunion et l’ID d’organisateur. Le bot peut recevoir automatiquement des événements de début ou de fin de réunion à partir de toutes les réunions créées dans tous les canaux en ajoutant au manifeste pour l’autorisation RSC.
Utilisez l’exemple suivant pour obtenir l’ID de réunion et l’ID d’organisateur à l’aide d’une application bot :
GET /v1/meetings/{meetingId}
La charge utile de réponse contient :
- ID de réunion dans le
msGraphResourceId
membre de ladetails
propriété. - ID de l’organisateur dans le
id
membre de laorganizer
propriété.
Exemple : charge utile de réponse pour obtenir les détails de la réunion
{
details: {
id: "MCMxOTptZWV0aW5nX05XTTFNVEk1TnpNdE5qZ3pNeTAwWVdRNExUaG1PV1F0WlRnM01UQm1PVGczWW1VekB0aHJlYWQudjIjMA==",
msGraphResourceId: "MSo2NzAyYWZiNi0xMDliLTRjMzItYTE0MS02ZTY1NDY5NTAyYjkqMCoqMTk6bWVldGluZ19OV00xTVRJNU56TXROamd6TXkwMFlXUTRMVGhtT1dRdFpUZzNNVEJtT1RnM1ltVXpAdGhyZWFkLnYy",
scheduledStartTime: {
},
scheduledEndTime: {
},
joinUrl: "https://teams.microsoft.com/l/meetup-join/19%3ameeting_NWM1MTI5NzMtNjgzMy00YWQ4LThmOWQtZTg3MTBmOTg3YmUz%40thread.v2/0?context=%7b%22Tid%22%3a%22b3cdf1c8-024a-49e2-a994-f67f830b02f3%22%2c%22Oid%22%3a%226702afb6-109b-4c32-a141-6e65469502b9%22%7d",
title: "Testing meeting bot 1 - Hun",
type: "Scheduled",
},
conversation: {
id: "19:meeting_NWM1MTI5NzMtNjgzMy00YWQ4LThmOWQtZTg3MTBmOTg3YmUz@thread.v2",
isGroup: true,
conversationType: "groupChat",
},
organizer: {
id: "29:1VZkVr77S3GW_RdAXKrfgFeytpqMegL3tkKvEbwrPqoCVvmqrlKtVrfKWUY7xIM-bZIx4Sq-p1MjdjSZnb5W20w",
tenantId: "b3cdf1c8-024a-49e2-a994-f67f830b02f3",
aadObjectId: "6702afb6-109b-4c32-a141-6e65469502b9",
},
}
Dans cet exemple :
- L’ID de réunion est inclus comme valeur pour
msGraphResourceId
: MSo2NzAyYWZiNi0xMDliLTRjMjMzItYTE0MS02ZTY1NDY5NTAyYjkqMCoqMTk6bWVl dGluZ19OV00xTVRJNU56TXROamd6TXkwMFlXUTRMVGhtT1dRdFpUZzNNVEJtT1RnM 1ltVXpAdGhyZWFkLnYy.
- L’ID de l’organisateur est contenu comme valeur pour
aadObjectId
organizer
: 6702afb6-109b-4c32-a141-6e65469502b9.
Une fois que votre application a obtenu l’ID de réunion et l’ID de l’organisateur, elle déclenche les API Graph pour extraire le contenu de la transcription et l’enregistrement à l’aide de ces détails de réunion.
Exemples de code
Vous pouvez essayer l’exemple de code suivant pour une application bot :
Exemple de nom
Description
.NET
Node.js
Transcription de réunion
Il s’agit d’un exemple d’application qui montre comment obtenir la transcription de réunion à l’aide de l’API Graph et l’afficher dans la boîte de dialogue (appelée module de tâche dans TeamsJS v1.x).
View
View
Transcription et enregistrement de la réunion
Il s’agit d’un exemple d’application qui montre comment obtenir la transcription et l’enregistrement de réunion à l’aide de l’API Graph.
View
View
Onglet Enregistrement et transcription de réunion avec enregistrement automatique
Cet exemple de code montre comment générer et configurer une application de réunion pour l’enregistrement automatique et la transcription automatique.
View
-
Étape suivante
Voir aussi
: charge utile de réponse pour obtenir les détails de la réunion
{
details: {
id: "MCMxOTptZWV0aW5nX05XTTFNVEk1TnpNdE5qZ3pNeTAwWVdRNExUaG1PV1F0WlRnM01UQm1PVGczWW1VekB0aHJlYWQudjIjMA==",
msGraphResourceId: "MSo2NzAyYWZiNi0xMDliLTRjMzItYTE0MS02ZTY1NDY5NTAyYjkqMCoqMTk6bWVldGluZ19OV00xTVRJNU56TXROamd6TXkwMFlXUTRMVGhtT1dRdFpUZzNNVEJtT1RnM1ltVXpAdGhyZWFkLnYy",
scheduledStartTime: {
},
scheduledEndTime: {
},
joinUrl: "https://teams.microsoft.com/l/meetup-join/19%3ameeting_NWM1MTI5NzMtNjgzMy00YWQ4LThmOWQtZTg3MTBmOTg3YmUz%40thread.v2/0?context=%7b%22Tid%22%3a%22b3cdf1c8-024a-49e2-a994-f67f830b02f3%22%2c%22Oid%22%3a%226702afb6-109b-4c32-a141-6e65469502b9%22%7d",
title: "Testing meeting bot 1 - Hun",
type: "Scheduled",
},
conversation: {
id: "19:meeting_NWM1MTI5NzMtNjgzMy00YWQ4LThmOWQtZTg3MTBmOTg3YmUz@thread.v2",
isGroup: true,
conversationType: "groupChat",
},
organizer: {
id: "29:1VZkVr77S3GW_RdAXKrfgFeytpqMegL3tkKvEbwrPqoCVvmqrlKtVrfKWUY7xIM-bZIx4Sq-p1MjdjSZnb5W20w",
tenantId: "b3cdf1c8-024a-49e2-a994-f67f830b02f3",
aadObjectId: "6702afb6-109b-4c32-a141-6e65469502b9",
},
}
Dans cet exemple :
- L’ID de réunion est inclus comme valeur pour
msGraphResourceId
: MSo2NzAyYWZiNi0xMDliLTRjMjMzItYTE0MS02ZTY1NDY5NTAyYjkqMCoqMTk6bWVl dGluZ19OV00xTVRJNU56TXROamd6TXkwMFlXUTRMVGhtT1dRdFpUZzNNVEJtT1RnM 1ltVXpAdGhyZWFkLnYy. - L’ID de l’organisateur est contenu comme valeur pour
aadObjectId
organizer
: 6702afb6-109b-4c32-a141-6e65469502b9.