Важно!
API версии /beta в Microsoft Graph могут быть изменены. Использование этих API в производственных приложениях не поддерживается. Чтобы определить, доступен ли API в версии 1.0, используйте селектор версий.
Пространство имен: microsoft.graph
Удаление определенного участника звонка. В некоторых ситуациях приложение может удалить участника из активного вызова. Это действие можно выполнить до или после того, как участник ответит на вызов. При удалении активного вызывающего объекта он немедленно удаляется из вызова без уведомления о предварительном или последующем удалении. При удалении приглашенного участника все невыполненные запросы на добавление участника отменяются.
Этот API доступен в следующих национальных облачных развертываниях.
| Глобальная служба |
Правительство США L4 |
Правительство США L5 (DOD) |
Китай управляется 21Vianet |
| ✅ |
❌ |
❌ |
❌ |
Разрешения
Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.
| Тип разрешения |
Разрешения с наименьшими привилегиями |
Более высокие привилегированные разрешения |
| Делегированные (рабочая или учебная учетная запись) |
Не поддерживается. |
Не поддерживается. |
| Делегированные (личная учетная запись Майкрософт) |
Не поддерживается. |
Не поддерживается. |
| Приложение |
Calls.JoinGroupCall.All |
Calls.JoinGroupCallasGuest.All |
Чтобы разрешить приложению вызывать этот API, необходима конфигурация собрания приложения на уровне клиента. Администратор клиента должен вызвать следующий командлет на удаленном клиенте PowerShell, чтобы предоставить приложению разрешение на вызов этого API. Дополнительные сведения см. в разделе Set-CsApplicationMeetingConfiguration.
PS C:\> Set-CsApplicationMeetingConfiguration -AllowRemoveParticipantAppIds @{Add="app_id"}
HTTP-запрос
DELETE /app/calls/{id}/participants/{id}
DELETE /communications/calls/{id}/participants/{id}
Примечание. Путь /app является устаревшим. В дальнейшем используйте путь /communications.
Текст запроса
Не указывайте текст запроса для этого метода.
Отклик
В случае успешного выполнения этот метод возвращает код отклика 204 No Content. Он не возвращает ничего в теле ответа.
Примеры
Пример 1. Отмена активного участника
Запрос
Ниже показан пример запроса.
DELETE https://graph.microsoft.com/beta/communications/calls/112f7296-5fa4-42ca-bae8-6a692b15d4b8/participants/a7ebfb2d-871e-419c-87af-27290b22e8db
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
await graphClient.Communications.Calls["{call-id}"].Participants["{participant-id}"].DeleteAsync();
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
//other-imports
)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
graphClient.Communications().Calls().ByCallId("call-id").Participants().ByParticipantId("participant-id").Delete(context.Background(), nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
graphClient.communications().calls().byCallId("{call-id}").participants().byParticipantId("{participant-id}").delete();
const options = {
authProvider,
};
const client = Client.init(options);
await client.api('/communications/calls/112f7296-5fa4-42ca-bae8-6a692b15d4b8/participants/a7ebfb2d-871e-419c-87af-27290b22e8db')
.version('beta')
.delete();
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$graphServiceClient->communications()->calls()->byCallId('call-id')->participants()->byParticipantId('participant-id')->delete()->wait();
Import-Module Microsoft.Graph.Beta.CloudCommunications
Remove-MgBetaCommunicationCallParticipant -CallId $callId -ParticipantId $participantId
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
await graph_client.communications.calls.by_call_id('call-id').participants.by_participant_id('participant-id').delete()
Отклик
Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.
HTTP/1.1 204 No Content
Пример 2. Отмена приглашенного неактивного участника
Приглашение участника на существующий вызов
Примечание: Укажите значение для участника invitationParticipantInfo, чтобы его можно было использовать для participantId последующей отмены приглашения.
POST https://graph.microsoft.com/beta/communications/calls/112f7296-5fa4-42ca-bae8-6a692b15d4b8/participants/invite
Content-Type: application/json
Content-Length: 464
{
"participants": [
{
"@odata.type": "#microsoft.graph.invitationParticipantInfo",
"identity": {
"@odata.type": "#microsoft.graph.identitySet",
"user": {
"@odata.type": "#microsoft.graph.identity",
"id": "278405a3-f568-4b3e-b684-009193463064",
"identityProvider": "AAD"
}
},
"participantId": "a7ebfb2d-871e-419c-87af-27290b22e8db"
}
],
"clientContext": "f2fa86af-3c51-4bc2-8fc0-475452d9764f"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Communications.Calls.Item.Participants.Invite;
using Microsoft.Graph.Beta.Models;
var requestBody = new InvitePostRequestBody
{
Participants = new List<InvitationParticipantInfo>
{
new InvitationParticipantInfo
{
OdataType = "#microsoft.graph.invitationParticipantInfo",
Identity = new IdentitySet
{
OdataType = "#microsoft.graph.identitySet",
User = new Identity
{
OdataType = "#microsoft.graph.identity",
Id = "278405a3-f568-4b3e-b684-009193463064",
AdditionalData = new Dictionary<string, object>
{
{
"identityProvider" , "AAD"
},
},
},
},
ParticipantId = "a7ebfb2d-871e-419c-87af-27290b22e8db",
},
},
ClientContext = "f2fa86af-3c51-4bc2-8fc0-475452d9764f",
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Communications.Calls["{call-id}"].Participants.Invite.PostAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphcommunications "github.com/microsoftgraph/msgraph-beta-sdk-go/communications"
graphmodels "github.com/microsoftgraph/msgraph-beta-sdk-go/models"
//other-imports
)
requestBody := graphcommunications.NewInvitePostRequestBody()
invitationParticipantInfo := graphmodels.NewInvitationParticipantInfo()
identity := graphmodels.NewIdentitySet()
user := graphmodels.NewIdentity()
id := "278405a3-f568-4b3e-b684-009193463064"
user.SetId(&id)
additionalData := map[string]interface{}{
"identityProvider" : "AAD",
}
user.SetAdditionalData(additionalData)
identity.SetUser(user)
invitationParticipantInfo.SetIdentity(identity)
participantId := "a7ebfb2d-871e-419c-87af-27290b22e8db"
invitationParticipantInfo.SetParticipantId(&participantId)
participants := []graphmodels.InvitationParticipantInfoable {
invitationParticipantInfo,
}
requestBody.SetParticipants(participants)
clientContext := "f2fa86af-3c51-4bc2-8fc0-475452d9764f"
requestBody.SetClientContext(&clientContext)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
invite, err := graphClient.Communications().Calls().ByCallId("call-id").Participants().Invite().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.beta.communications.calls.item.participants.invite.InvitePostRequestBody invitePostRequestBody = new com.microsoft.graph.beta.communications.calls.item.participants.invite.InvitePostRequestBody();
LinkedList<InvitationParticipantInfo> participants = new LinkedList<InvitationParticipantInfo>();
InvitationParticipantInfo invitationParticipantInfo = new InvitationParticipantInfo();
invitationParticipantInfo.setOdataType("#microsoft.graph.invitationParticipantInfo");
IdentitySet identity = new IdentitySet();
identity.setOdataType("#microsoft.graph.identitySet");
Identity user = new Identity();
user.setOdataType("#microsoft.graph.identity");
user.setId("278405a3-f568-4b3e-b684-009193463064");
HashMap<String, Object> additionalData = new HashMap<String, Object>();
additionalData.put("identityProvider", "AAD");
user.setAdditionalData(additionalData);
identity.setUser(user);
invitationParticipantInfo.setIdentity(identity);
invitationParticipantInfo.setParticipantId("a7ebfb2d-871e-419c-87af-27290b22e8db");
participants.add(invitationParticipantInfo);
invitePostRequestBody.setParticipants(participants);
invitePostRequestBody.setClientContext("f2fa86af-3c51-4bc2-8fc0-475452d9764f");
var result = graphClient.communications().calls().byCallId("{call-id}").participants().invite().post(invitePostRequestBody);
const options = {
authProvider,
};
const client = Client.init(options);
const inviteParticipantsOperation = {
participants: [
{
'@odata.type': '#microsoft.graph.invitationParticipantInfo',
identity: {
'@odata.type': '#microsoft.graph.identitySet',
user: {
'@odata.type': '#microsoft.graph.identity',
id: '278405a3-f568-4b3e-b684-009193463064',
identityProvider: 'AAD'
}
},
participantId: 'a7ebfb2d-871e-419c-87af-27290b22e8db'
}
],
clientContext: 'f2fa86af-3c51-4bc2-8fc0-475452d9764f'
};
await client.api('/communications/calls/112f7296-5fa4-42ca-bae8-6a692b15d4b8/participants/invite')
.version('beta')
.post(inviteParticipantsOperation);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Communications\Calls\Item\Participants\Invite\InvitePostRequestBody;
use Microsoft\Graph\Beta\Generated\Models\InvitationParticipantInfo;
use Microsoft\Graph\Beta\Generated\Models\IdentitySet;
use Microsoft\Graph\Beta\Generated\Models\Identity;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new InvitePostRequestBody();
$participantsInvitationParticipantInfo1 = new InvitationParticipantInfo();
$participantsInvitationParticipantInfo1->setOdataType('#microsoft.graph.invitationParticipantInfo');
$participantsInvitationParticipantInfo1Identity = new IdentitySet();
$participantsInvitationParticipantInfo1Identity->setOdataType('#microsoft.graph.identitySet');
$participantsInvitationParticipantInfo1IdentityUser = new Identity();
$participantsInvitationParticipantInfo1IdentityUser->setOdataType('#microsoft.graph.identity');
$participantsInvitationParticipantInfo1IdentityUser->setId('278405a3-f568-4b3e-b684-009193463064');
$additionalData = [
'identityProvider' => 'AAD',
];
$participantsInvitationParticipantInfo1IdentityUser->setAdditionalData($additionalData);
$participantsInvitationParticipantInfo1Identity->setUser($participantsInvitationParticipantInfo1IdentityUser);
$participantsInvitationParticipantInfo1->setIdentity($participantsInvitationParticipantInfo1Identity);
$participantsInvitationParticipantInfo1->setParticipantId('a7ebfb2d-871e-419c-87af-27290b22e8db');
$participantsArray []= $participantsInvitationParticipantInfo1;
$requestBody->setParticipants($participantsArray);
$requestBody->setClientContext('f2fa86af-3c51-4bc2-8fc0-475452d9764f');
$result = $graphServiceClient->communications()->calls()->byCallId('call-id')->participants()->invite()->post($requestBody)->wait();
Import-Module Microsoft.Graph.Beta.CloudCommunications
$params = @{
participants = @(
@{
"@odata.type" = "#microsoft.graph.invitationParticipantInfo"
identity = @{
"@odata.type" = "#microsoft.graph.identitySet"
user = @{
"@odata.type" = "#microsoft.graph.identity"
id = "278405a3-f568-4b3e-b684-009193463064"
identityProvider = "AAD"
}
}
participantId = "a7ebfb2d-871e-419c-87af-27290b22e8db"
}
)
clientContext = "f2fa86af-3c51-4bc2-8fc0-475452d9764f"
}
Invoke-MgBetaInviteCommunicationCallParticipant -CallId $callId -BodyParameter $params
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.communications.calls.item.participants.invite.invite_post_request_body import InvitePostRequestBody
from msgraph_beta.generated.models.invitation_participant_info import InvitationParticipantInfo
from msgraph_beta.generated.models.identity_set import IdentitySet
from msgraph_beta.generated.models.identity import Identity
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = InvitePostRequestBody(
participants = [
InvitationParticipantInfo(
odata_type = "#microsoft.graph.invitationParticipantInfo",
identity = IdentitySet(
odata_type = "#microsoft.graph.identitySet",
user = Identity(
odata_type = "#microsoft.graph.identity",
id = "278405a3-f568-4b3e-b684-009193463064",
additional_data = {
"identity_provider" : "AAD",
}
),
),
participant_id = "a7ebfb2d-871e-419c-87af-27290b22e8db",
),
],
client_context = "f2fa86af-3c51-4bc2-8fc0-475452d9764f",
)
result = await graph_client.communications.calls.by_call_id('call-id').participants.invite.post(request_body)
Отклик
Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.
HTTP/1.1 200 OK
Content-Type: application/json
{
"@odata.type": "#microsoft.graph.inviteParticipantsOperation",
"id": "eec3812a-fdc3-4fb4-825c-a06c9f35414e",
"status": "Running",
"clientContext": "f2fa86af-3c51-4bc2-8fc0-475452d9764f",
"resultInfo": null,
"participants": [
{
"endpointType": null,
"id": null,
"participantId": "a7ebfb2d-871e-419c-87af-27290b22e8db",
"identity": {
"user": {
"id": "278405a3-f568-4b3e-b684-009193463064",
"identityProvider": "AAD",
"tenantId": "72f988bf-86f1-41af-91ab-2d7cd011db47"
},
"application": null,
"device": null,
"phone": null
}
}
]
}
Удаление приглашенного участника до добавления участника в реестр
DELETE https://graph.microsoft.com/beta/communications/calls/112f7296-5fa4-42ca-bae8-6a692b15d4b8/participants/a7ebfb2d-871e-419c-87af-27290b22e8db
// Code snippets are only available for the latest version. Current version is 5.x
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
await graphClient.Communications.Calls["{call-id}"].Participants["{participant-id}"].DeleteAsync();
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
//other-imports
)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
graphClient.Communications().Calls().ByCallId("call-id").Participants().ByParticipantId("participant-id").Delete(context.Background(), nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
graphClient.communications().calls().byCallId("{call-id}").participants().byParticipantId("{participant-id}").delete();
const options = {
authProvider,
};
const client = Client.init(options);
await client.api('/communications/calls/112f7296-5fa4-42ca-bae8-6a692b15d4b8/participants/a7ebfb2d-871e-419c-87af-27290b22e8db')
.version('beta')
.delete();
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$graphServiceClient->communications()->calls()->byCallId('call-id')->participants()->byParticipantId('participant-id')->delete()->wait();
Import-Module Microsoft.Graph.Beta.CloudCommunications
Remove-MgBetaCommunicationCallParticipant -CallId $callId -ParticipantId $participantId
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
await graph_client.communications.calls.by_call_id('call-id').participants.by_participant_id('participant-id').delete()
Отклик
Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.
HTTP/1.1 204 No Content