Compartilhar via


presença: setStatusMessage

Namespace: microsoft.graph

Defina uma mensagem de status de presença para um utilizador. Pode ser fornecida uma data e hora de expiração opcionais.

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) Presence.ReadWrite Indisponível.
Delegado (conta pessoal da Microsoft) Sem suporte. Sem suporte.
Application Presence.ReadWrite.All Indisponível.

Solicitação HTTP

POST /users/{id}/presence/setStatusMessage

Cabeçalhos de solicitação

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
statusMessage microsoft.graph.presenceStatusMessage Contém a mensagem de status de presença do utilizador.

Resposta

Se tiver êxito, este método retornará um código de resposta 200 OK.

Exemplos

Exemplo 1: Definir status mensagem com data de expiração

O pedido seguinte define o status mensagem de presença como "Estou atualmente numa reunião". para o utilizador fa8bf3dc-eca7-46b7-bad1-db199b62afc3, com a expiração em 2022-10-18 at 17:05:33.2079781 Pacific Standard Time.

Solicitação

POST https://graph.microsoft.com/v1.0/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"
    }
  }
}

Resposta

HTTP/1.1 200 OK

Exemplo 2: Definir status mensagem de outro utilizador

O pedido seguinte define a mensagem de status de presença como "Estou disponível agora" para o utilizador fa8bf3dc-eca7-46b7-bad1-db199b62afc3. No Exemplo 3, as informações de presença do utilizador fa8bf3dc-eca7-46b7-bad1-db199b62afc3 são obtidas em nome de outro utilizador através de um pedido getPresence .

Solicitação

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

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

Resposta

HTTP/1.1 200 OK

Exemplo 3: Obter outra presença de utilizador

Este exemplo segue o Exemplo 2. As informações de presença do utilizador fa8bf3dc-eca7-46b7-bad1-db199b62afc3 são obtidas em nome de outro utilizador através de um pedido getPresence .

Solicitação

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

Resposta

Uma vez que este pedido obtém o status de presença de outro utilizador, as statusMessage.expiryDateTime propriedades e statusMessage.publishedDateTime não estão incluídas no corpo da resposta.

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"
    }
  },
  "sequenceNumber": "A0129311063"
}