Les API sous la version /beta dans Microsoft Graph sont susceptibles d’être modifiées. L’utilisation de ces API dans des applications de production n’est pas prise en charge. Pour déterminer si une API est disponible dans v1.0, utilisez le sélecteur Version .
Définissez les status de disponibilité et d’activité par défaut pour un utilisateur. Si la présence préférée d’un utilisateur est définie, la présence de l’utilisateur est la présence préférée.
La présence préférée prend effet uniquement lorsqu’il existe au moins une session de présence de l’utilisateur. Sinon, la présence de l’utilisateur reste hors connexion.
Une session de présence peut être créée à la suite d’une opération setPresence réussie, ou si l’utilisateur est connecté à un client Teams.
Dans le corps de la demande, indiquez un objet JSON avec les paramètres suivants.
Paramètre
Type
Description
availability
string
Informations de présence de base.
activité
string
Informations supplémentaires à la disponibilité.
expirationDuration
durée
Expiration de la session de présence de l’application. La valeur est représentée au format ISO 8601 pour les durées. S’il n’est pas fourni, une expiration par défaut est appliquée : DoNotDisturb or Busy : expire dans 1 jour Tous les autres : expire dans 7 jours
Les combinaisons de disponibilité et d’activité prises en charge sont les suivantes :
availability
activité
Description
Disponible
Disponible
Définissez la présence préférée de l’utilisateur sur Disponible.
Occupé(e)
Occupé(e)
Définissez la présence préférée de l’utilisateur sur Occupé.
DoNotDisturb
DoNotDisturb
Définissez la présence préférée de l’utilisateur sur DoNotDisturb.
BeRightBack
BeRightBack
Définissez la présence préférée de l’utilisateur sur BeRightBack.
Loin
Loin
Définissez la présence préférée de l’utilisateur sur Absent.
Hors connexion
OffWork
Définissez la présence préférée de l’utilisateur sur Hors connexion.
Réponse
Si elle réussit, cette méthode renvoie un code de réponse 200 OK.
Exemples
La requête suivante définit la présence préférée de l’utilisateur en tant que DoNotDisturb pour l’utilisateur fa8bf3dc-eca7-46b7-bad1-db199b62afc3, avec l’expiration de 8 heures.
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Users.Item.Presence.SetUserPreferredPresence;
var requestBody = new SetUserPreferredPresencePostRequestBody
{
Availability = "DoNotDisturb",
Activity = "DoNotDisturb",
ExpirationDuration = TimeSpan.Parse("PT8H"),
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
await graphClient.Users["{user-id}"].Presence.SetUserPreferredPresence.PostAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
abstractions "github.com/microsoft/kiota-abstractions-go"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphusers "github.com/microsoftgraph/msgraph-beta-sdk-go/users"
//other-imports
)
requestBody := graphusers.NewSetUserPreferredPresencePostRequestBody()
availability := "DoNotDisturb"
requestBody.SetAvailability(&availability)
activity := "DoNotDisturb"
requestBody.SetActivity(&activity)
expirationDuration , err := abstractions.ParseISODuration("PT8H")
requestBody.SetExpirationDuration(&expirationDuration)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
graphClient.Users().ByUserId("user-id").Presence().SetUserPreferredPresence().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.users.item.presence.setuserpreferredpresence.SetUserPreferredPresencePostRequestBody setUserPreferredPresencePostRequestBody = new com.microsoft.graph.beta.users.item.presence.setuserpreferredpresence.SetUserPreferredPresencePostRequestBody();
setUserPreferredPresencePostRequestBody.setAvailability("DoNotDisturb");
setUserPreferredPresencePostRequestBody.setActivity("DoNotDisturb");
PeriodAndDuration expirationDuration = PeriodAndDuration.ofDuration(Duration.parse("PT8H"));
setUserPreferredPresencePostRequestBody.setExpirationDuration(expirationDuration);
graphClient.users().byUserId("{user-id}").presence().setUserPreferredPresence().post(setUserPreferredPresencePostRequestBody);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Users\Item\Presence\SetUserPreferredPresence\SetUserPreferredPresencePostRequestBody;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new SetUserPreferredPresencePostRequestBody();
$requestBody->setAvailability('DoNotDisturb');
$requestBody->setActivity('DoNotDisturb');
$requestBody->setExpirationDuration(new \DateInterval('PT8H'));
$graphServiceClient->users()->byUserId('user-id')->presence()->setUserPreferredPresence()->post($requestBody)->wait();
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.users.item.presence.set_user_preferred_presence.set_user_preferred_presence_post_request_body import SetUserPreferredPresencePostRequestBody
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = SetUserPreferredPresencePostRequestBody(
availability = "DoNotDisturb",
activity = "DoNotDisturb",
expiration_duration = "PT8H",
)
await graph_client.users.by_user_id('user-id').presence.set_user_preferred_presence.post(request_body)