Espacio de nombres: microsoft.graph
Habilite un bot para rechazar una llamada entrante. La solicitud de llamada entrante puede ser una invitación de un participante en una llamada de grupo o una llamada punto a punto. Si se recibe una invitación a una llamada de grupo, la notificación contendrá los parámetros chatInfo y meetingInfo .
Se espera que el bot responda o rechace la llamada antes de que se agote el tiempo de espera de la llamada. El valor de tiempo de espera actual es de 15 segundos.
Esta API no finaliza las llamadas existentes que ya se han respondido. Use la llamada de eliminación para finalizar una llamada.
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.
Tipo de permiso |
Permisos con privilegios mínimos |
Permisos con privilegios más altos |
Delegado (cuenta profesional o educativa) |
No admitida. |
No admitida. |
Delegado (cuenta personal de Microsoft) |
No admitida. |
No admitida. |
Aplicación |
No admitida. |
No admitida. |
Solicitud HTTP
POST /communications/calls/{id}/reject
Nombre |
Descripción |
Authorization |
{token} de portador. Obligatorio. Obtenga más información sobre la autenticación y la autorización. |
Tipo de contenido |
application/json. Obligatorio. |
Cuerpo de la solicitud
En el cuerpo de la solicitud, proporcione un objeto JSON con los siguientes parámetros.
Parámetro |
Tipo |
Descripción |
motivo |
Cadena |
Motivo de rechazo. Los valores posibles son None , Busy y Forbidden |
callbackUri |
Cadena |
Esto permite a los bots proporcionar un URI de devolución de llamada específico para que la llamada actual reciba notificaciones posteriores. Si no se ha establecido esta propiedad, se usará el URI de devolución de llamada global del bot. Debe ser https . |
Respuesta
Si se ejecuta correctamente, este método devuelve un código de respuesta 202 Accepted
. No devuelve nada en el cuerpo de la respuesta.
Ejemplos
En los ejemplos siguientes se muestra cómo llamar a esta API.
Ejemplo 1: Rechazar una llamada entrante con el motivo "Ocupado"
Solicitud
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 obtener más información sobre cómo agregar el SDK al proyecto y crear una instancia de authProvider, consulte la documentación del 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 obtener más información sobre cómo agregar el SDK al proyecto y crear una instancia de authProvider, consulte la documentación del 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 obtener más información sobre cómo agregar el SDK al proyecto y crear una instancia de authProvider, consulte la documentación del 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 obtener más información sobre cómo agregar el SDK al proyecto y crear una instancia de authProvider, consulte la documentación del 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 obtener más información sobre cómo agregar el SDK al proyecto y crear una instancia de authProvider, consulte la documentación del SDK.
Respuesta
HTTP/1.1 202 Accepted
Ejemplo 2: Rechazar una llamada entrante con la razón "Ninguno"
Notificación: entrante
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" ]
}
}
]
}
Solicitud
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 obtener más información sobre cómo agregar el SDK al proyecto y crear una instancia de authProvider, consulte la documentación del 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 obtener más información sobre cómo agregar el SDK al proyecto y crear una instancia de authProvider, consulte la documentación del 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 obtener más información sobre cómo agregar el SDK al proyecto y crear una instancia de authProvider, consulte la documentación del 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 obtener más información sobre cómo agregar el SDK al proyecto y crear una instancia de authProvider, consulte la documentación del 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 obtener más información sobre cómo agregar el SDK al proyecto y crear una instancia de authProvider, consulte la documentación del SDK.
Respuesta
HTTP/1.1 202 Accepted
Notificación: 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"
}
}
]
}