Namespace: microsoft.graph
Legen Sie den Status der Anwesenheitssitzung eines Benutzers als Anwendung fest.
Weitere Informationen zu Anwesenheitssitzungen, Statuspermutationen und Timeouts finden Sie unter Verwalten des Anwesenheitsstatus mithilfe des Microsoft Graph-API.
Diese API ist in den folgenden nationalen Cloudbereitstellungen verfügbar.
| Weltweiter Service |
US Government L4 |
US Government L5 (DOD) |
China, betrieben von 21Vianet |
| ✅ |
✅ |
✅ |
❌ |
Berechtigungen
Wählen Sie die Berechtigungen aus, die für diese API als am wenigsten privilegiert markiert sind. Verwenden Sie eine höhere Berechtigung oder Berechtigungen nur, wenn Ihre App dies erfordert. Ausführliche Informationen zu delegierten Berechtigungen und Anwendungsberechtigungen finden Sie unter Berechtigungstypen. Weitere Informationen zu diesen Berechtigungen finden Sie in der Berechtigungsreferenz.
| Berechtigungstyp |
Berechtigungen mit den geringsten Berechtigungen |
Berechtigungen mit höheren Berechtigungen |
| Delegiert (Geschäfts-, Schul- oder Unikonto) |
Presence.ReadWrite |
Nicht verfügbar. |
| Delegiert (persönliches Microsoft-Konto) |
Nicht unterstützt |
Nicht unterstützt |
| Application |
Presence.ReadWrite.All |
Nicht verfügbar. |
HTTP-Anforderung
POST /users/{id}/presence/setPresence
Anforderungstext
Geben Sie im Anforderungstext ein JSON-Objekt mit den folgenden Parametern an.
| Parameter |
Typ |
Beschreibung |
| sessionId |
string |
Die ID der Anwesenheitssitzung der Anwendung. |
| availability |
string |
Die Basis-Anwesenheitsinformationen. |
| Aktivität |
string |
Die zusätzlichen Informationen zur Verfügbarkeit. |
| expirationDuration |
Dauer |
Der Ablauf der App-Anwesenheitssitzung. Der Wert wird für die Dauer im ISO 8601-Format dargestellt.Wenn nicht angegeben, wird ein Standardablauf von 5 Minuten angewendet. Der gültige Dauerbereich liegt zwischen 5 und 240 Minuten (PT5M bis PT4H). |
Wichtig
Geben Sie die ID der Anwendung wie sessionId in der Anforderung an.
Unterstützte Kombinationen von availability und activity sind:
| availability |
Aktivität |
Beschreibung |
| Verfügbar |
Verfügbar |
Updates die Anwesenheitssitzung als Verfügbar aus. |
| Gebucht |
InACall |
Updates die Anwesenheitssitzung als Beschäftigt, InACall aus. |
| Gebucht |
InAConferenceCall |
Updates die Anwesenheitssitzung als Beschäftigt, InAConferenceCall. |
| Weg |
Weg |
Updates die Anwesenheitssitzung als Abwesend aus. |
| DoNotDisturb |
Darbietend |
Updates die Anwesenheitssitzung als DoNotDisturb, Präsentieren. |
Antwort
Wenn die Methode erfolgreich verläuft, wird der Antwortcode 200 OK zurückgegeben.
Beispiele
Die folgende Anforderung zeigt die Anwendung mit der ID 22553876-f5ab-4529-bffb-cfe50aa89f87 , die ihre Anwesenheitssitzung für den Benutzer fa8bf3dc-eca7-46b7-bad1-db199b62afc3festlegt.
Anforderung
POST https://graph.microsoft.com/v1.0/users/fa8bf3dc-eca7-46b7-bad1-db199b62afc3/presence/setPresence
Content-Type: application/json
{
"sessionId": "22553876-f5ab-4529-bffb-cfe50aa89f87",
"availability": "Available",
"activity": "Available",
"expirationDuration": "PT1H"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Users.Item.Presence.SetPresence;
var requestBody = new SetPresencePostRequestBody
{
SessionId = "22553876-f5ab-4529-bffb-cfe50aa89f87",
Availability = "Available",
Activity = "Available",
ExpirationDuration = TimeSpan.Parse("PT1H"),
};
// To initialize your graphClient, see https://v4.hkg1.meaqua.org/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
await graphClient.Users["{user-id}"].Presence.SetPresence.PostAsync(requestBody);
Einzelheiten darüber, wie Sie das SDK zu Ihrem Projekt hinzufügen und eine authProvider-Instanz erstellen, finden Sie in der SDK-Dokumentation.
// Code snippets are only available for the latest major version. Current major version is $v1.*
// Dependencies
import (
"context"
abstractions "github.com/microsoft/kiota-abstractions-go"
msgraphsdk "github.com/microsoftgraph/msgraph-sdk-go"
graphusers "github.com/microsoftgraph/msgraph-sdk-go/users"
//other-imports
)
requestBody := graphusers.NewSetPresencePostRequestBody()
sessionId := "22553876-f5ab-4529-bffb-cfe50aa89f87"
requestBody.SetSessionId(&sessionId)
availability := "Available"
requestBody.SetAvailability(&availability)
activity := "Available"
requestBody.SetActivity(&activity)
expirationDuration , err := abstractions.ParseISODuration("PT1H")
requestBody.SetExpirationDuration(&expirationDuration)
// To initialize your graphClient, see https://v4.hkg1.meaqua.org/en-us/graph/sdks/create-client?from=snippets&tabs=go
graphClient.Users().ByUserId("user-id").Presence().SetPresence().Post(context.Background(), requestBody, nil)
Einzelheiten darüber, wie Sie das SDK zu Ihrem Projekt hinzufügen und eine authProvider-Instanz erstellen, finden Sie in der SDK-Dokumentation.
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.users.item.presence.setpresence.SetPresencePostRequestBody setPresencePostRequestBody = new com.microsoft.graph.users.item.presence.setpresence.SetPresencePostRequestBody();
setPresencePostRequestBody.setSessionId("22553876-f5ab-4529-bffb-cfe50aa89f87");
setPresencePostRequestBody.setAvailability("Available");
setPresencePostRequestBody.setActivity("Available");
PeriodAndDuration expirationDuration = PeriodAndDuration.ofDuration(Duration.parse("PT1H"));
setPresencePostRequestBody.setExpirationDuration(expirationDuration);
graphClient.users().byUserId("{user-id}").presence().setPresence().post(setPresencePostRequestBody);
Einzelheiten darüber, wie Sie das SDK zu Ihrem Projekt hinzufügen und eine authProvider-Instanz erstellen, finden Sie in der SDK-Dokumentation.
const options = {
authProvider,
};
const client = Client.init(options);
const setPresence = {
sessionId: '22553876-f5ab-4529-bffb-cfe50aa89f87',
availability: 'Available',
activity: 'Available',
expirationDuration: 'PT1H'
};
await client.api('/users/fa8bf3dc-eca7-46b7-bad1-db199b62afc3/presence/setPresence')
.post(setPresence);
Einzelheiten darüber, wie Sie das SDK zu Ihrem Projekt hinzufügen und eine authProvider-Instanz erstellen, finden Sie in der SDK-Dokumentation.
<?php
use Microsoft\Graph\GraphServiceClient;
use Microsoft\Graph\Generated\Users\Item\Presence\SetPresence\SetPresencePostRequestBody;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new SetPresencePostRequestBody();
$requestBody->setSessionId('22553876-f5ab-4529-bffb-cfe50aa89f87');
$requestBody->setAvailability('Available');
$requestBody->setActivity('Available');
$requestBody->setExpirationDuration(new \DateInterval('PT1H'));
$graphServiceClient->users()->byUserId('user-id')->presence()->setPresence()->post($requestBody)->wait();
Einzelheiten darüber, wie Sie das SDK zu Ihrem Projekt hinzufügen und eine authProvider-Instanz erstellen, finden Sie in der SDK-Dokumentation.
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph import GraphServiceClient
from msgraph.generated.users.item.presence.set_presence.set_presence_post_request_body import SetPresencePostRequestBody
# To initialize your graph_client, see https://v4.hkg1.meaqua.org/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = SetPresencePostRequestBody(
session_id = "22553876-f5ab-4529-bffb-cfe50aa89f87",
availability = "Available",
activity = "Available",
expiration_duration = "PT1H",
)
await graph_client.users.by_user_id('user-id').presence.set_presence.post(request_body)
Einzelheiten darüber, wie Sie das SDK zu Ihrem Projekt hinzufügen und eine authProvider-Instanz erstellen, finden Sie in der SDK-Dokumentation.
Antwort
HTTP/1.1 200 OK