Namespace: microsoft.graph
Ative um bot para rejeitar uma chamada recebida. O pedido de chamada recebido pode ser um convite de um participante numa chamada de grupo ou de uma chamada ponto a ponto. Se for recebido um convite para uma chamada de grupo, a notificação conterá os parâmetros chatInfo e meetingInfo .
Espera-se que o bot responda ou rejeite a chamada antes de a chamada exceder o limite de tempo. O valor de tempo limite atual é de 15 segundos.
Esta API não termina as chamadas existentes que já foram atendidas. Utilize eliminar chamada para terminar uma chamada.
Esta API está disponível nas seguintes implementações de cloud nacionais.
| Serviço global |
US Government L4 |
US Government L5 (DOD) |
China operada pela 21Vianet |
| ✅ |
✅ |
✅ |
❌ |
Permissões
Escolha a permissão ou permissões marcadas como menos privilegiadas para esta API. Utilize uma permissão ou permissões com privilégios mais elevados apenas se a sua aplicação o exigir. Para obter detalhes sobre as permissões delegadas e de aplicação, veja Tipos de permissão. Para saber mais sobre estas permissões, veja a referência de permissões.
| Tipo de permissão |
Permissões com menos privilégios |
Permissões com privilégios superiores |
| Delegado (conta corporativa ou de estudante) |
Sem suporte. |
Sem suporte. |
| Delegado (conta pessoal da Microsoft) |
Sem suporte. |
Sem suporte. |
| Aplicativo |
Sem suporte. |
Sem suporte. |
Solicitação HTTP
POST /communications/calls/{id}/reject
| Nome |
Descrição |
| Autorização |
{token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização. |
| Content-type |
application/json. Obrigatório. |
Corpo da solicitação
Forneça um objeto JSON com os seguintes parâmetros no corpo da solicitação.
| Parâmetro |
Tipo |
Descrição |
| motivo |
Cadeia de caracteres |
A razão da rejeição. Os valores possíveis são None, Busy e Forbidden |
| callbackUri |
String |
Isto permite que os bots forneçam um URI de chamada de retorno específico para a chamada atual receber notificações posteriores. Se esta propriedade não tiver sido definida, será utilizado o URI de chamada de retorno global do bot. Tem de ser https. |
Resposta
Se tiver êxito, este método retornará um código de resposta 202 Accepted. Não devolve nada no corpo da resposta.
Exemplos
Os exemplos seguintes mostram como chamar esta API.
Exemplo 1: Rejeitar uma chamada recebida com o motivo "Ocupado"
Solicitação
POST https://graph.microsoft.com/v1.0/communications/calls/57dab8b1-894c-409a-b240-bd8beae78896/reject
Content-Type: application/json
Content-Length: 24
{
"reason": "busy"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Communications.Calls.Item.Reject;
using Microsoft.Graph.Models;
var requestBody = new RejectPostRequestBody
{
Reason = RejectReason.Busy,
};
// 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}"].Reject.PostAsync(requestBody);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphcommunications "github.com/microsoftgraph/msgraph-sdk-go/communications"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphcommunications.NewRejectPostRequestBody()
reason := graphmodels.BUSY_REJECTREASON
requestBody.SetReason(&reason)
// 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").Reject().Post(context.Background(), requestBody, nil)
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.communications.calls.item.reject.RejectPostRequestBody rejectPostRequestBody = new com.microsoft.graph.communications.calls.item.reject.RejectPostRequestBody();
rejectPostRequestBody.setReason(RejectReason.Busy);
graphClient.communications().calls().byCallId("{call-id}").reject().post(rejectPostRequestBody);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
const options = {
authProvider,
};
const client = Client.init(options);
const reject = {
reason: 'busy'
};
await client.api('/communications/calls/57dab8b1-894c-409a-b240-bd8beae78896/reject')
.post(reject);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Communications\Calls\Item\Reject\RejectPostRequestBody;
use Microsoft\Graph\Generated\Models\RejectReason;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new RejectPostRequestBody();
$requestBody->setReason(new RejectReason('busy'));
$graphServiceClient->communications()->calls()->byCallId('call-id')->reject()->post($requestBody)->wait();
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.communications.calls.item.reject.reject_post_request_body import RejectPostRequestBody
from msgraph.generated.models.reject_reason import RejectReason
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = RejectPostRequestBody(
reason = RejectReason.Busy,
)
await graph_client.communications.calls.by_call_id('call-id').reject.post(request_body)
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
Resposta
HTTP/1.1 202 Accepted
Exemplo 2: Rejeitar uma chamada recebida com o motivo "Nenhum"
Notificação - a receber
POST https://bot.contoso.com/api/call
Content-Type: application/json
{
"@odata.type": "#microsoft.graph.commsNotifications",
"value": [
{
"@odata.type": "#microsoft.graph.commsNotification",
"changeType": "created",
"resourceUrl": "/communications/calls/57dab8b1-894c-409a-b240-bd8beae78896",
"resourceData": {
"@odata.type": "#microsoft.graph.call",
"@odata.id": "/communications/calls/57dab8b1-894c-409a-b240-bd8beae78896",
"state": "incoming",
"direction": "incoming",
"source": {
"identity": {
"user": {
"displayName": "John",
"id": "112f7296-5fa4-42ca-bae8-6a692b15d4b8"
}
},
"region": "westus",
"languageId": "en-US"
},
"targets": [
{
"identity": {
"application": {
"displayName": "Calling Bot",
"id": "2891555a-92ff-42e6-80fa-6e1300c6b5c6"
}
}
}
],
"requestedModalities": [ "audio", "video" ]
}
}
]
}
Solicitação
POST https://graph.microsoft.com/v1.0/communications/calls/57dab8b1-894c-409a-b240-bd8beae78896/reject
Content-Type: application/json
Content-Length: 24
{
"reason": "none"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Communications.Calls.Item.Reject;
using Microsoft.Graph.Models;
var requestBody = new RejectPostRequestBody
{
Reason = RejectReason.None,
};
// 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}"].Reject.PostAsync(requestBody);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphcommunications "github.com/microsoftgraph/msgraph-sdk-go/communications"
graphmodels "github.com/microsoftgraph/msgraph-sdk-go/models"
//other-imports
)
requestBody := graphcommunications.NewRejectPostRequestBody()
reason := graphmodels.NONE_REJECTREASON
requestBody.SetReason(&reason)
// 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").Reject().Post(context.Background(), requestBody, nil)
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.communications.calls.item.reject.RejectPostRequestBody rejectPostRequestBody = new com.microsoft.graph.communications.calls.item.reject.RejectPostRequestBody();
rejectPostRequestBody.setReason(RejectReason.None);
graphClient.communications().calls().byCallId("{call-id}").reject().post(rejectPostRequestBody);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
const options = {
authProvider,
};
const client = Client.init(options);
const reject = {
reason: 'none'
};
await client.api('/communications/calls/57dab8b1-894c-409a-b240-bd8beae78896/reject')
.post(reject);
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Communications\Calls\Item\Reject\RejectPostRequestBody;
use Microsoft\Graph\Generated\Models\RejectReason;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new RejectPostRequestBody();
$requestBody->setReason(new RejectReason('none'));
$graphServiceClient->communications()->calls()->byCallId('call-id')->reject()->post($requestBody)->wait();
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.communications.calls.item.reject.reject_post_request_body import RejectPostRequestBody
from msgraph.generated.models.reject_reason import RejectReason
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = RejectPostRequestBody(
reason = RejectReason.None,
)
await graph_client.communications.calls.by_call_id('call-id').reject.post(request_body)
Para obter detalhes sobre como adicionar o SDK ao seu projeto e criar uma instância authProvider, consulte a documentação do SDK.
Resposta
HTTP/1.1 202 Accepted
Notificação - eliminada
POST https://bot.contoso.com/api/calls
Content-Type: application/json
{
"@odata.type": "#microsoft.graph.commsNotifications",
"value": [
{
"@odata.type": "#microsoft.graph.commsNotification",
"changeType": "deleted",
"resourceUrl": "/communications/calls/57dab8b1-894c-409a-b240-bd8beae78896",
"resourceData": {
"@odata.type": "#microsoft.graph.call",
"@odata.id": "/communications/calls/57dab8b1-894c-409a-b240-bd8beae78896"
}
}
]
}