Partager via


presence : setStatusMessage

Espace de noms: microsoft.graph

Importante

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éfinir un message de présence status pour un utilisateur. Une date et une heure d’expiration facultatives peuvent être fournies.

Cette API est disponible dans les déploiements de cloud national suivants.

Service global Gouvernement des États-Unis L4 Us Government L5 (DOD) Chine gérée par 21Vianet

Autorisations

Choisissez l’autorisation ou les autorisations marquées comme moins privilégiées pour cette API. Utilisez une autorisation ou des autorisations privilégiées plus élevées uniquement si votre application en a besoin. Pour plus d’informations sur les autorisations déléguées et d’application, consultez Types d’autorisations. Pour en savoir plus sur ces autorisations, consultez les informations de référence sur les autorisations.

Type d’autorisation Autorisations avec privilèges minimum Autorisations privilégiées plus élevées
Déléguée (compte professionnel ou scolaire) Presence.ReadWrite Non disponible.
Déléguée (compte Microsoft personnel) Non prise en charge. Non prise en charge.
Application Presence.ReadWrite.All Non disponible.

Requête HTTP

POST /users/{userId}/presence/setStatusMessage

En-têtes de demande

Nom Description
Autorisation Porteur {token}. Obligatoire. En savoir plus sur l’authentification et l’autorisation.
Content-Type application/json. Obligatoire.

Corps de la demande

Dans le corps de la demande, indiquez un objet JSON avec les paramètres suivants.

Paramètre Type Description
statusMessage microsoft.graph.presenceStatusMessage Contient le message de présence status de l’utilisateur.

Réponse

Si elle réussit, cette méthode renvoie un code de réponse 200 OK.

Exemples

Exemple 1 : Définir status message avec la date d’expiration

La requête suivante définit la présence status message sur « Hey je suis actuellement en réunion ». pour l’utilisateur fa8bf3dc-eca7-46b7-bad1-db199b62afc3, avec l’expiration le 2022-10-18 at 17:05:33.2079781 Pacific Standard Time.

Demande

POST https://graph.microsoft.com/beta/users/fa8bf3dc-eca7-46b7-bad1-db199b62afc3/presence/setStatusMessage
Content-Type: application/json

{
  "statusMessage": {
    "message": {
        "content": "Hey I'm currently in a meeting.",
        "contentType": "text"
    },
    "expiryDateTime": {
        "dateTime": "2022-10-18T17:05:33.2079781",
        "timeZone": "Pacific Standard Time"
    }
  }
}

Réponse

HTTP/1.1 200 OK

Exemple 2 : Définir status message d’un autre utilisateur

La requête suivante définit le message de présence status comme « Je suis disponible maintenant » pour l’utilisateur fa8bf3dc-eca7-46b7-bad1-db199b62afc3. Dans l’exemple 3, les informations de présence de l’utilisateur fa8bf3dc-eca7-46b7-bad1-db199b62afc3 sont obtenues pour le compte d’un autre utilisateur via une demande getPresence .

Demande

POST https://graph.microsoft.com/beta/users/fa8bf3dc-eca7-46b7-bad1-db199b62afc3/presence/setStatusMessage
Content-Type: application/json

{
  "statusMessage": {
    "message": {
      "content": "Hey I am available now",
      "contentType": "text"
    }
  }
}

Réponse

HTTP/1.1 200 OK

Exemple 3 : Obtenir la présence d’un autre utilisateur

Cet exemple suit l’exemple 2. Les informations de présence de l’utilisateur fa8bf3dc-eca7-46b7-bad1-db199b62afc3 sont obtenues pour le compte d’un autre utilisateur via une demande getPresence .

Demande

GET https://graph.microsoft.com/beta/users/fa8bf3dc-eca7-46b7-bad1-db199b62afc3/presence

Réponse

Étant donné que cette requête obtient la présence status pour un autre utilisateur, les statusMessage.expiryDateTime propriétés et statusMessage.publishedDateTime ne sont pas incluses dans le corps de la réponse.

HTTP/1.1 200 OK
Content-Type: application/json

{
  "id": "fa8bf3dc-eca7-46b7-bad1-db199b62afc3",
  "availability": "Available",
  "activity": "Available",
  "outOfOfficeSettings": {
    "message": null,
    "isOutOfOffice": false
  },
  "statusMessage": {
    "message": {
      "content": "Hey I am available now",
      "contentType": "text"
    }
  }
}