Obtener onlineMeeting
Espacio de nombres: microsoft.graph
Recupere las propiedades y relaciones de un objeto onlineMeeting .
Por ejemplo, puede:
- Obtenga detalles de una reunión en línea mediante videoTeleconferenceId, id. de reunión, joinWebURL o joinMeetingId.
- Use la
/attendeeReport
ruta de acceso para obtener el informe de asistentes de un evento en directo de Microsoft Teams en forma de vínculo de descarga. (en desuso)
El informe de asistentes de eventos en directo de Teams (en desuso) es un artefacto de reunión en línea. Para obtener más información, consulte Artefactos y permisos de reunión en línea.
Precaución
Los eventos en directo de Teams no se quitaron el 30 de septiembre de 2024, como se anunció anteriormente. Puede seguir usando eventos en directo de Teams; sin embargo, para obtener las últimas características y experiencias nuevas, se recomienda usar los ayuntamientos de Teams y las API de ciudad de eventos virtuales de Microsoft Graph en su lugar.
Esta API está disponible en las siguientes implementaciones nacionales de nube.
Servicio global | Gobierno de EE. UU. L4 | Us Government L5 (DOD) | China operada por 21Vianet |
---|---|---|---|
✅ | ✅ | ✅ | ❌ |
Permissions
Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use un permiso o permisos con privilegios superiores solo si la aplicación lo requiere. Para obtener más información sobre los permisos delegados y de aplicación, consulte Tipos de permisos. Para obtener más información sobre estos permisos, consulte la referencia de permisos.
Permisos para las siguientes solicitudes HTTP:
GET /me/onlineMeetings/{meetingId}
GET /me/onlineMeetings?$filter=JoinWebUrl%20eq%20'{joinWebUrl}'
GET /me/onlineMeetings?$filter=joinMeetingIdSettings/joinMeetingId%20eq%20'{joinMeetingId}'
Tipo de permiso | Permisos con privilegios mínimos | Permisos con privilegios más altos |
---|---|---|
Delegado (cuenta profesional o educativa) | OnlineMeetings.Read | OnlineMeetings.ReadWrite |
Delegado (cuenta personal de Microsoft) | No admitida. | No admitida. |
Aplicación | No admitida. | No admitida. |
Permisos para las siguientes solicitudes HTTP:
GET /users/{userId}/onlineMeetings/{meetingId}
GET /users/{userId}/onlineMeetings?$filter=JoinWebUrl%20eq%20'{joinWebUrl}'
GET /users/{userId}/onlineMeetings?$filter=joinMeetingIdSettings/joinMeetingId%20eq%20'{joinMeetingId}'
GET /app/onlineMeetings/?$filter=VideoTeleconferenceId%20eq%20'{videoTeleconferenceId}'
GET /communications/onlineMeetings/?$filter=VideoTeleconferenceId%20eq%20'{videoTeleconferenceId}'
Tipo de permiso | Permisos con privilegios mínimos | Permisos con privilegios más altos |
---|---|---|
Delegado (cuenta profesional o educativa) | OnlineMeetings.Read | OnlineMeetings.ReadWrite |
Delegado (cuenta personal de Microsoft) | No admitida. | No admitida. |
Aplicación | OnlineMeetings.Read.All | OnlineMeetings.ReadWrite.All |
Permisos para las siguientes solicitudes HTTP:
GET /me/onlineMeetings/{meetingId}/attendeeReport
GET /users/{userId}/onlineMeetings/{meetingId}/attendeeReport
Tipo de permiso | Permisos con privilegios mínimos | Permisos con privilegios más altos |
---|---|---|
Delegado (cuenta profesional o educativa) | OnlineMeetingArtifact.Read.All | No disponible. |
Delegado (cuenta personal de Microsoft) | No admitida. | No admitida. |
Aplicación | OnlineMeetingArtifact.Read.All | No disponible. |
Permisos para las siguientes solicitudes HTTP:
GET /me/onlineMeetings/{meetingId}/recording
GET /me/onlineMeetings/{meetingId}/alternativeRecording
Tipo de permiso | Permisos con privilegios mínimos | Permisos con privilegios más altos |
---|---|---|
Delegado (cuenta profesional o educativa) | OnlineMeetingArtifact.Read.All | OnlineMeetings.Read, OnlineMeetings.ReadWrite |
Delegado (cuenta personal de Microsoft) | No admitida. | No admitida. |
Aplicación | OnlineMeetingArtifact.Read.All | No disponible. |
Permisos para las siguientes solicitudes HTTP:
GET /users/{userId}/onlineMeetings/{meetingId}/recording
GET /users/{userId}/onlineMeetings/{meetingId}/alternativeRecording
Tipo de permiso | Permisos con privilegios mínimos | Permisos con privilegios más altos |
---|---|---|
Delegado (cuenta profesional o educativa) | OnlineMeetingArtifact.Read.All | OnlineMeetings.Read, OnlineMeetings.ReadWrite |
Delegado (cuenta personal de Microsoft) | No admitida. | No admitida. |
Aplicación | OnlineMeetingArtifact.Read.All | OnlineMeetings.Read.All, OnlineMeetings.ReadWrite.All* |
Nota:
Para usar el permiso de aplicación para esta API, los administradores de inquilinos deben crear una directiva de acceso a la aplicación y concederla a un usuario para autorizar a la aplicación configurada en la directiva para capturar reuniones en línea o artefactos de reunión en línea en nombre de ese usuario (con el identificador de usuario especificado en la ruta de acceso de la solicitud).
Importante
Solo se requieren los permisos OnlineMeetingArtifact.Read.All si captura artefactos de reunión en línea y no puede capturar artefactos de reunión sin él. Para obtener más información, consulte Artefactos y permisos de reunión en línea.
Solicitud HTTP
Para obtener una instancia de onlineMeeting mediante el identificador de reunión con el permiso delegado (/me
) y de aplicación (/users/{userId}
):
GET /me/onlineMeetings/{meetingId}
GET /users/{userId}/onlineMeetings/{meetingId}
Estas direcciones URL de solicitud aceptan el token de usuario del organizador y del asistente invitado (permiso delegado) o el identificador de usuario (permiso de aplicación).
Para obtener un onlineMeeting mediante videoTeleconferenceId con el permiso de la aplicación*:
GET /communications/onlineMeetings/?$filter=VideoTeleconferenceId%20eq%20'{videoTeleconferenceId}'
Para obtener una instancia de onlineMeeting mediante joinWebUrl con permisos delegados y de aplicación:
GET /me/onlineMeetings?$filter=JoinWebUrl%20eq%20'{joinWebUrl}'
GET /users/{userId}/onlineMeetings?$filter=JoinWebUrl%20eq%20'{joinWebUrl}'
Para obtener una instancia de onlineMeeting mediante joinMeetingId con los permisos delegados (/me
) y de aplicación (/users/{userId}
):
GET /me/onlineMeetings?$filter=joinMeetingIdSettings/joinMeetingId%20eq%20'{joinMeetingId}'
GET /users/{userId}/onlineMeetings?$filter=joinMeetingIdSettings/joinMeetingId%20eq%20'{joinMeetingId}'
Para obtener el informe de asistentes de un evento en directo de Teams con permiso delegado (/me
) y de aplicación (/users/{userId}
): (en desuso)
GET /me/onlineMeetings/{meetingId}/attendeeReport
GET /users/{userId}/onlineMeetings/{meetingId}/attendeeReport
Nota:
- userId es el identificador de objeto de un usuario en Centro de administración Microsoft Entra > página de administración de usuarios. Para obtener más información, consulte Permitir que las aplicaciones accedan a reuniones en línea en nombre de un usuario.
- meetingId es el identificador de un objeto onlineMeeting .
- videoTeleconferenceId se genera para los usuarios con licencia Cloud-Video-Interop y se puede encontrar en un objeto onlineMeeting . Para obtener más información, consulte Id. de conferencia de VTC.
- * Este escenario solo admite el token de aplicación y no admite la directiva de acceso a aplicaciones.
- joinWebUrl debe estar codificado con dirección URL.
- El formato de
joinWebUrl
puede diferir de los ejemplos siguientes, dependiendo de cómo se obtuvieron las direcciones URL. Estas variaciones no afectan a cómojoinWebUrl
se usa en la API. - joinMeetingId es el identificador de reunión que se usará para unirse a una reunión.
Parámetros de consulta opcionales
Este método admite los parámetros de consulta de OData a modo de ayuda para personalizar la respuesta.
Encabezados de solicitud
Nombre | Descripción |
---|---|
Authorization | {token} de portador. Obligatorio. Obtenga más información sobre la autenticación y la autorización. |
Accept-Language | Idioma. Opcional. |
Si la solicitud contiene un Accept-Language
encabezado de HTTP, el content
de joinInformation
estará en la variante de idioma y la configuración regional especificada en el encabezado de Accept-Language
. El contenido predeterminado estará en inglés.
Cuerpo de la solicitud
No proporcione un cuerpo de solicitud para este método.
Respuesta
Si se ejecuta correctamente, este método devuelve un código de respuesta 200 OK
. La respuesta también incluye una de las siguientes opciones:
- Si captura una reunión en línea mediante el identificador de reunión, este método devuelve un objeto onlineMeeting en el cuerpo de la respuesta.
- Si captura una reunión en línea mediante videoTeleconferenceId o joinWebUrl, este método devuelve una colección que contiene solo un objeto onlineMeeting en el cuerpo de la respuesta.
- Si captura el informe de asistentes de un evento en directo de Teams, este método devuelve un
Location
encabezado que indica el URI al informe de asistentes. (en desuso)
Nota:
- Es posible que joinMeetingIdSettings no se genere para algunas reuniones preprogramadas si la reunión se creó antes de que se admitieran esta característica.
Ejemplos
Nota:
Los objetos de respuesta de los ejemplos siguientes se han acortado para mejorar la legibilidad. Se devolverán todas las propiedades de una llamada real.
Ejemplo 1: Recuperar una reunión en línea mediante videoTeleconferenceId
Solicitud
En el ejemplo siguiente se muestra la solicitud.
GET https://graph.microsoft.com/v1.0/communications/onlineMeetings/?$filter=VideoTeleconferenceId%20eq%20'123456789'
Nota: si se especifica "Accept-Language: ja" para indicar japonés, por ejemplo, la respuesta incluirá lo siguiente.
"joinInformation": {
"content": "data%3Atext%2Fhtml%2C%0A++%3Cdiv+style%3D%22width%3A100%25%3Bheight%3A+20px%3B%22%3E%0A%09%09%3Cspan+style%3D%22white-space%3Anowrap%3Bcolor%3Agray%3Bopacity%3A.36%3B%22%3E________________________________________________________________________________%3C%2Fspan%3E%0A%09+%3C%2Fdiv%3E%0A++++%3Cdiv+class%3D%22me-email-text%22+style%3D%22color%3A%23252424%3Bfont-family%3A'Segoe+UI'%2C'Helvetica+Neue'%2CHelvetica%2CArial%2Csans-serif%3B%22%3E%0A+++%3Cdiv+style%3D%22margin-top%3A+24px%3B+margin-bottom%3A+10px%3B%22%3E%0A++++++++%3Ca+class%3D%22me-email-headline%22%0A++++++++++++++style%3D%22font-size%3A+18px%3Bfont-family%3A'Segoe+UI+Semibold'%2C'Segoe+UI'%2C'Helvetica+Neue'%2CHelvetica%2CArial%2Csans-serif%3Btext-decoration%3A+underline%3Bcolor%3A+%236264a7%3B%22%0A++++++++++++++href%3D%22https%3A%2F%2Fteams.microsoft.com%2Fl%2Fmeetup-join%2F19%253ameeting_NDRiZjRiMmUtODI5OC00MzRlLTk1ZWEtMGY1000000000000%2540thread.v2%2F0%3Fcontext%3D%257b%2522Tid%2522%253a%252279a788bf-86f1-41af-91ab-000000000000%2522%252c%2522Oid%2522%253a%2522d4a060b5-a8fc-450c-837b-000000000000%2522%257d%22%0A++++++++++++++target%3D%22_blank%22+rel%3D%22noreferrer+noopener%22%3EMicrosoft+Teams+%E4%BC%9A%E8%AD%B0%E3%81%AB%E5%8F%82%E5%8A%A0%3C%2Fa%3E%0A++++++%3C%2Fdiv%3E%0A%09+%3Cdiv%3E%0A++++%0A++++++%3Cdiv%3E%0A++++++++%3Ca+class%3D%22me-email-link%22+style%3D%22font-size%3A+14px%3Btext-decoration%3A+none%3Bcolor%3A+%236264a7%3B%22%0A++++++++++href%3D%22tel%3A%2B16477490000%2C%2C11160000%26%2335%3B+%22+target%3D%22_blank%22+rel%3D%22noreferrer+noopener%22%3E%2B16477490000%3C%2Fa%3E%0A++++++%3Cspan+style%3D%22font-size%3A+12px%3B%22%3E%26nbsp%3B++(%E6%9C%89%E6%96%99)+%3C%2Fspan%3E%0A++++++%3C%2Fdiv%3E%0A++++%0A++%3C%2Fdiv%3E%0A%0A%09+%0A++++++%3Cdiv+style%3D%22margin-top%3A+10px%3B+margin-bottom%3A+20px%3B%22%3E%0A++++++++%3Cspan+style%3D%22font-size%3A+12px%3B%22%3E%0A++++++++++%E4%BC%9A%E8%AD%B0+ID%3A%0A++++++++%3C%2Fspan%3E%0A++++++%3Cspan+style%3D%22font-size%3A+14px%3B%22%3E%0A++++++++111+000+00%23%0A++++++%3C%2Fspan%3E%0A++++%3C%2Fdiv%3E%0A++++%0A%09+%0A++++++++%3Cdiv+style%3D%22margin-bottom%3A+24px%3B%22%3E%0A++++++++++++++%3Ca+class%3D%22me-email-link%22+style%3D%22font-size%3A+12px%3Btext-decoration%3A+none%3Bcolor%3A+%236264a7%3B%22+target%3D%22_blank%22+href%3D%22https%3A%2F%2Fdialin.teams.microsoft.com%2F8bf6e654-57eb-4b85-aeaf-36c84429b2fe%3Fid%3D11160000%22+rel%3D%22noreferrer+noopener%22%3E%E6%9C%80%E5%AF%84%E3%82%8A%E3%81%AE%E5%9B%BD%E3%81%AE%E9%9B%BB%E8%A9%B1%E7%95%AA%E5%8F%B7%E3%82%92%E6%A4%9C%E7%B4%A2%3C%2Fa%3E%0A+++++++++%7C%0A++++++++++++++%3Ca+class%3D%22me-email-link%22+style%3D%22font-size%3A+12px%3Btext-decoration%3A+none%3Bcolor%3A+%236264a7%3B%22+target%3D%22_blank%22+href%3D%22https%3A%2F%2Fmysettings.lync.com%2Fpstnconferencing%22+rel%3D%22noreferrer+noopener%22%3E%0A++++++++PIN+%E3%82%92%E3%83%AA%E3%82%BB%E3%83%83%E3%83%88%3C%2Fa%3E%0A+++++++++%7C+%3Ca+class%3D%22me-email-link%22+style%3D%22font-size%3A+12px%3Btext-decoration%3A+none%3Bcolor%3A+%236264a7%3B%22+target%3D%22_blank%22+href%3D%22https%3A%2F%2Faka.ms%2FJoinTeamsMeeting%22+rel%3D%22noreferrer+noopener%22%3ETeams+%E3%81%AE%E8%A9%B3%E7%B4%B0%E3%82%92%E8%A1%A8%E7%A4%BA%3C%2Fa%3E%0A+++++%7C+%3Ca+class%3D%22me-email-link%22+style%3D%22font-size%3A+12px%3Btext-decoration%3A+none%3Bcolor%3A+%236264a7%3B%22+target%3D%22_blank%22+href%3D%22https%3A%2F%2Fteams.microsoft.com%2FmeetingOptions%2F%3ForganizerId%3Dd4a060b5-a8fc-450c-837b-000000000000%26tenantId%3D79a788bf-86f1-41af-91ab-000000000000%26threadId%3D19_meeting_NDRiZjRiMmUtODI5OC00MzRlLTk1ZWEtMGY1000000000000%40thread.v2%26messageId%3D0%26language%3Dja%22+rel%3D%22noreferrer+noopener%22%3E%E4%BC%9A%E8%AD%B0%E3%81%AE%E3%82%AA%E3%83%97%E3%82%B7%E3%83%A7%E3%83%B3%3C%2Fa%3E%0A++++%0A++++++++%3C%2Fdiv%3E%0A++++%0A+++++%0A++++++++%3Cdiv+style%3D%22font-size%3A+14px%3B+margin-bottom%3A+4px%3B%22%3E%0A++++++++++++%E3%83%93%E3%83%87%E3%82%AA%E4%BC%9A%E8%AD%B0%E3%83%87%E3%83%90%E3%82%A4%E3%82%B9%E3%81%A7%E5%8F%82%E5%8A%A0%0A++++++++%3C%2Fdiv%3E%0A%0A++++++++%3Cdiv+style%3D%22font-size%3A12px%3B+margin-bottom%3A+4px%3B%22%3E%0A++++++++++++%3Ca+class%3D%22me-email-link%22+style%3D%22text-decoration%3A+none%3Bcolor%3A+%236264a7%3B%22+href%3D%22%22%3E000000000%40t.abcd.vc%3C%2Fa%3E+VTC+%E4%BC%9A%E8%AD%B0+ID%3A+0180300000%0A++++++++%3C%2Fdiv%3E%0A%0A++++++++%3Cdiv+style%3D%22font-size%3A+12px%3B+margin-bottom%3A+20px%3B%22%3E%0A++++++++%3Ca+class%3D%22me-email-link%22+style%3D%22text-decoration%3A+none%3Bcolor%3A+%236264a7%3B%22+href%3D%22https%3A%2F%2Fdialin.abcd.vc%2Fteams%2F%3Fkey%3D000000000%26conf%3D0180308922%22%3E%E4%BB%A3%E6%9B%BF+VTC+%E3%81%AE%E3%83%80%E3%82%A4%E3%83%A4%E3%83%AB%E6%96%B9%E6%B3%95%3C%2Fa%3E%0A++++++++%3C%2Fdiv%3E%0A++++%0A+++++%0A++++++%3Cdiv+style%3D%22font-size%3A+14px%3B+margin-bottom%3A+4px%3B%22%3E%0A++++++++%0A++++++%3C%2Fdiv%3E%0A++++++%3Cdiv+style%3D%22font-size%3A+12px%3B%22%3E%0A++++++%0A++++++%3C%2Fdiv%3E%0A++++%0A+++++%3C%2Fdiv%3E%0A%09+%3Cdiv+style%3D%22width%3A100%25%3Bheight%3A+20px%3B%22%3E%0A%09%09%3Cspan+style%3D%22white-space%3Anowrap%3Bcolor%3Agray%3Bopacity%3A.36%3B%22%3E________________________________________________________________________________%3C%2Fspan%3E%0A++%3C%2Fdiv%3E%22%2C%0A",
"contentType": "Html"
}
Respuesta
En el ejemplo siguiente se muestra la respuesta.
Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.
HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1574
{
"@odata.type": "#microsoft.graph.onlineMeeting",
"autoAdmittedUsers": "everyone",
"audioConferencing": {
"tollNumber": "5552478",
"tollFreeNumber": "5550588",
"ConferenceId": "9999999",
"dialinUrl": "https://dialin.teams.microsoft.com/6787A136-B9B8-4D39-846C-C0F1FF937F10?id=xxxxxxx"
},
"chatInfo": {
"@odata.type": "#microsoft.graph.chatInfo",
"threadId": "19:cbee7c1c860e465cebf7bee0d@thread.skype",
"messageId": "153367081"
},
"creationDateTime": "2018-05-30T00:12:19.0726086Z",
"endDateTime": "2018-05-30T01:00:00Z",
"id": "112f7296-5fa4-42ca-bae8-6a692b15d4b8_19:cbee7c1c860e465f8258e3cebf7bee0d@thread.skype",
"joinWebUrl": "https://teams.microsoft.com/l/meetup-join/19%3a:meeting_NTg0NmQ3NTctZDVkZC00YzRhLThmNmEtOGQDdmZDZk@thread.v2/0?context=%7b%22Tid%22%3a%aa67bd4c-8475-432d-bd41-39f255720e0a%22%2c%22Oid%22%3a%22112f7296-5fa4-42ca-bb15d4b8%22%7d",
"participants": {
"@odata.type": "#microsoft.graph.meetingParticipants",
"attendees": [
{
"@odata.type": "#microsoft.graph.identitySet",
"identity": {
"user": {
"@odata.type": "#microsoft.graph.identity",
"id": "112f7296-5ca-bae8-6a692b15d4b8",
"displayName": "Tyler Stein"
}
},
"upn": "upn-value"
}
],
"organizer": {
"@odata.type": "#microsoft.graph.identitySet",
"identity": {
"user": {
"@odata.type": "#microsoft.graph.identity",
"id": "5810cedeb-b2c1-e9bd5d53ec96",
"displayName": "Jasmine Miller"
}
},
"upn": "upn-value"
}
},
"startDateTime": "2018-05-30T00:30:00Z",
"subject": "Test Meeting.",
"videoTeleconferenceId": "123456789",
"lobbyBypassSettings": {
"scope": "everyone",
"isDialInBypassEnabled": true
},
"joinMeetingIdSettings": {
"isPasscodeRequired": false,
"joinMeetingId": "1234567890",
"passcode": null
},
"isEntryExitAnnounced": true,
"allowedPresenters": "everyone"
}
Ejemplo 2: Recuperar una reunión en línea por identificador de reunión
Puede recuperar información de reunión a través del identificador de reunión con un token de usuario o de aplicación. El identificador de reunión se proporciona en el objeto de respuesta al crear un objeto onlineMeeting. Esta opción está disponible para admitir casos de uso en los que se conoce el identificador de reunión, como cuando una aplicación crea por primera vez la reunión en línea mediante Graph API primero y, a continuación, recupera la información de la reunión más adelante como una acción independiente.
Solicitud
En el ejemplo siguiente se muestra una solicitud que usa un token de usuario (delegado).
Nota: El identificador de reunión se ha truncado para mejorar la legibilidad.
GET https://graph.microsoft.com/v1.0/me/onlineMeetings/MSpkYzE3Njc0Yy04MWQ5LTRhZGItYmZiMi04ZdFpHRTNaR1F6WGhyZWFkLnYy
La siguiente solicitud usa un token de aplicación.
GET https://graph.microsoft.com/v1.0/users/dc17674c-81d9-4adb-bfb2-8f6a442e4622/onlineMeetings/MSpkYzE3Njc0Yy04MWQ5LTRhZGItYmZiMi04ZdFpHRTNaR1F6WGhyZWFkLnYy
Respuesta
En el ejemplo siguiente se muestra la respuesta.
HTTP/1.1 200 OK
Content-Type: application/json
{
"id": "MSpkYzE3Njc0Yy04MWQiMi04ZdFpHRTNaR1F6WGhyZWFkLnYy",
"creationDateTime": "2020-09-29T22:35:33.1594516Z",
"startDateTime": "2020-09-29T22:35:31.389759Z",
"endDateTime": "2020-09-29T23:35:31.389759Z",
"joinWebUrl": "https://teams.microsoft.com/l/meetup-join/19%3ameeting_MGQ4MDQyNTE2EtZWVkODYxODYzMmY2%40thread.v2/0?context=%7b%22Tid%22%3a%22909c6581-5130-43e9-88f3-fcb3582cde37%22%2c%22Oid%22%3a%22dc17674c-81d9-4adb-442e4622%22%7d",
"subject": null,
"autoAdmittedUsers": "EveryoneInCompany",
"isEntryExitAnnounced": true,
"allowedPresenters": "everyone",
"videoTeleconferenceId": "(redacted)",
"participants": {
"organizer": {
"upn": "(redacted)",
"role": "presenter",
"identity": {
"user": {
"id": "dc17674c-81d9-4adb-a442e4622",
"displayName": null,
"tenantId": "909c6581-5188f3-fcb3582cde38",
"identityProvider": "AAD"
}
}
},
"attendees": [],
"producers": [],
"contributors": []
},
"lobbyBypassSettings": {
"scope": "organization",
"isDialInBypassEnabled": false
},
"joinMeetingIdSettings": {
"isPasscodeRequired": false,
"joinMeetingId": "1234567890",
"passcode": null
}
}
Ejemplo 3: Recuperación de una reunión en línea mediante joinWebUrl
Puede recuperar información de reunión a través de JoinWebUrl mediante un token de usuario o de aplicación. Esta opción está disponible para admitir casos de uso en los que no se conoce el identificador de reunión, pero sí lo es JoinWebUrl, como cuando un usuario crea una reunión (por ejemplo, en el cliente de Microsoft Teams) y una aplicación independiente debe recuperar los detalles de la reunión como una acción de seguimiento.
Solicitud
En el ejemplo siguiente se muestra una solicitud que usa un token de usuario (delegado).
GET https://graph.microsoft.com/v1.0/me/onlineMeetings?$filter=JoinWebUrl eq 'https%3A%2F%2Fteams.microsoft.com%2Fl%2Fmeetup-join%2F19%253ameeting_MGQ4MDQyNTEtNTQ2NS00YjQxLTlkM2EtZWVkODYxODYzMmY2%2540thread.v2%2F0%3Fcontext%3D%257b%2522Tid%2522%253a%2522909c6581-5130-43e9-88f3-fcb3582cde37%2522%252c%2522Oid%2522%253a%2522dc17674c-81d9-4adb-bfb2-8f6a442e4622%2522%257d'
La siguiente solicitud usa un token de aplicación.
GET https://graph.microsoft.com/v1.0/users/dc17674c-81d9-4adb-bfb2-8f6a442e4622/onlineMeetings?$filter=JoinWebUrl%20eq%20'https%3A%2F%2Fteams.microsoft.com%2Fl%2Fmeetup-join%2F19%253ameeting_MGQ4MDQyNTEtNTQ2NS00YjQxLTlkM2EtZWVkODYxODYzMmY2%2540thread.v2%2F0%3Fcontext%3D%257b%2522Tid%2522%253a%2522909c6581-5130-43e9-88f3-fcb3582cde37%2522%252c%2522Oid%2522%253a%2522dc17674c-81d9-4adb-bfb2-8f6a442e4622%2522%257d'
Respuesta
En el ejemplo siguiente se muestra la respuesta.
HTTP/1.1 200 OK
Content-Type: application/json
{
"value": [
{
"id": "dc17674c-81d9-4adb-bfb2-8f6a442e4622_19:meeting_MGQ4MDQyNTEtNTQVkODYxODYzMmY2@thread.v2",
"creationDateTime": "2020-09-29T22:35:33.1594516Z",
"startDateTime": "2020-09-29T22:35:31.389759Z",
"endDateTime": "2020-09-29T23:35:31.389759Z",
"joinWebUrl": "https://teams.microsoft.com/l/meetup-join/19%3ameeting_MGQ4MDQyNTEtNTQ2NS00YjQxLTlkMYzMmY2%40thread.v2/0?context=%7b%22Tid%22%3a%22909c6581-5130-43e9-882cde37%22%2c%22Oid%22%3a%22dc17674c-81d9-4adb-bfb2-8f6a442e4622%22%7d",
"subject": null,
"isEntryExitAnnounced": true,
"allowedPresenters": "everyone",
"videoTeleconferenceId": "(redacted)",
"participants": {
"organizer": {
"upn": "(redacted)",
"role": "presenter",
"identity": {
"user": {
"id": "dc17674c-81d9-4adb-bf442e4622",
"displayName": null,
"tenantId": "909c6581-5130-43e93582cde38",
"identityProvider": "AAD"
}
}
},
"attendees": [],
"producers": [],
"contributors": []
},
"lobbyBypassSettings": {
"scope": "organization",
"isDialInBypassEnabled": false
},
"joinMeetingIdSettings": {
"isPasscodeRequired": false,
"joinMeetingId": "1234567890",
"passcode": null
}
}
]
}
Ejemplo 4: Recuperación de una reunión en línea mediante joinMeetingId
Puede recuperar información de reunión a través de joinMeetingId mediante un usuario (delegado) o un token de aplicación.
Solicitud
En el ejemplo siguiente se muestra una solicitud que usa un token de usuario (delegado).
GET https://graph.microsoft.com/v1.0/me/onlineMeetings?$filter=joinMeetingIdSettings/joinMeetingId%20eq%20'1234567890'
La siguiente solicitud usa un token de aplicación.
GET https://graph.microsoft.com/v1.0/users/dc17674c-81d9-4adb-bfb2-8f6a442e4622/onlineMeetings?$filter=joinMeetingIdSettings/joinMeetingId%20eq%20'1234567890'
Respuesta
En el ejemplo siguiente se muestra la respuesta.
Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.
HTTP/1.1 200 OK
Content-Type: application/json
{
"value": [
{
"id": "dc17674c-81d9-4adb-bfb2-8f6a442e4622_19:meeting_MGQ4MDQyNtZWVkODYxODYzMmY2@thread.v2",
"creationDateTime": "2020-09-29T22:35:33.1594516Z",
"startDateTime": "2020-09-29T22:35:31.389759Z",
"endDateTime": "2020-09-29T23:35:31.389759Z",
"joinWebUrl": "https://teams.microsoft.com/l/meetup-join/19%3ameeting_MGQ4MDQyNTEtNZWVkODYxODYzMmY2%40thread.v2/0?context=%7b%22Tid%22%3a%22909c6581-5130-43e9-88cb3582cde37%22%2c%22Oid%22%3a%22dc17674c-81d9-4adb-bfb2-8f6a442e4622%22%7d",
"subject": null,
"autoAdmittedUsers": "EveryoneInCompany",
"isEntryExitAnnounced": true,
"allowedPresenters": "everyone",
"allowMeetingChat": "enabled",
"allowTeamworkReactions": true,
"videoTeleconferenceId": "(redacted)",
"participants": {
"organizer": {
"upn": "(redacted)",
"role": "presenter",
"identity": {
"user": {
"id": "dc174c-81db-bfb2-8f6622",
"displayName": null,
"tenantId": "9091-5130-48f3-fce38",
"identityProvider": "AAD"
}
}
},
"attendees": [],
"producers": [],
"contributors": []
},
"lobbyBypassSettings": {
"scope": "organization",
"isDialInBypassEnabled": false
},
"joinMeetingIdSettings": {
"isPasscodeRequired": false,
"joinMeetingId": "1234567890",
"passcode": null
}
}
]
}
Ejemplo 5: Captura del informe de asistentes de un evento en directo de Teams (en desuso)
En el ejemplo siguiente se muestra una solicitud para descargar un informe de asistentes.
Solicitud
La siguiente solicitud usa un token de usuario (delegado).
GET https://graph.microsoft.com/v1.0/me/onlineMeetings/MSpkYzE3Njc0Yy04MWQ5LTRhZGItYmZiMi04ZdFpHRTNaR1F6WGhyZWFkLnYy/attendeeReport
En la solicitud siguiente se usa el permiso de aplicación.
GET https://graph.microsoft.com/v1.0/users/dc74d9bb-6afe-433d-8eaa-e39d80d3a647/onlineMeetings/MSpkYzE3Njc0Yy04MWQ5LTRhZGItYmZiMi04ZdFpHRTNaR1F6WGhyZWFkLnYy/attendeeReport
Respuesta
En el ejemplo siguiente se muestra la respuesta.
HTTP/1.1 302 Found
Location: https://01-a-noam.dog.attend.teams.microsoft.com/broadcast/909c6581-5130-43e9-88f3-fcb3582cde37/dc17674c-81d9-4adb-bfb2-8f6a442e4622/19%3Ameeting_ZWE0YzQwMzItYjEyNi00NjJjLWE4MjYtOTUxYjE1NmFjYWIw%40thread.v2/0/resource/attendeeReport