Поделиться через


Получение состояния команды устройства (не рекомендуется)

Пространство имен: microsoft.graph

Важно!

API версии /beta в Microsoft Graph могут быть изменены. Использование этих API в производственных приложениях не поддерживается. Чтобы определить, доступен ли API в версии 1.0, используйте селектор версий.

Получение состояния команды на устройстве. Полный список кодов состояния см. в разделе Список actionStatus.

Предостережение

Этот API устарел и не возвращает данные 30 сентября 2020 г.

Этот API доступен в следующих национальных облачных развертываниях.

Глобальная служба Правительство США L4 Правительство США L5 (DOD) Китай управляется 21Vianet

Разрешения

Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.

Тип разрешения Разрешения с наименьшими привилегиями Более высокие привилегированные разрешения
Делегированные (рабочая или учебная учетная запись) Не поддерживается. Не поддерживается.
Делегированные (личная учетная запись Майкрософт) Device.Command Недоступно.
Для приложений Не поддерживается. Не поддерживается.

HTTP-запрос

GET me/devices/{id}/commands/{id}

Заголовки запросов

Заголовок Значение
Авторизация Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации.
Accept application/json

Отклик

HTTP/1.1 200 OK
  {
    "id": "0",
    "status": "requesting",
    "type": "null",
    "appServiceName": "null",
    "packageFamilyName": "null",
    "error": "null",
    "responsepayload": "null",
    "payload": "null",
    "permissionTicket": "null",
    "postBackUri": "null"
  }

Список actionStatus

  • запрос, команда // создана и ожидает обработки
  • sentToTarget, // Команда отправлена на целевое устройство
  • выполнение, // Целевое устройство подтвердило получение команды и выполняет ее
  • completed, // Выполнение команды завершено
  • failedToSend, // Службе не удалось отправить команду на целевое устройство
  • executionFailed, // Сбой выполнения команды
  • commandDropped, // Команда удалена клиентом, если устройство находится в состоянии ConnectedStandby
  • cancel, // Отмена команды
  • отмена, // Отмена команды
  • canceled, // Command has canceled
  • retry, // Служба пытается отправить команду в целевой объект
  • истек срок действия, // Истек срок действия обработки команд
  • error, // Внутренняя ошибка при обработке команды
  • custom // Пользовательское состояние

Пример

В этом примере требуется идентификатор устройства и идентификатор команды, которая была выдана устройству. Идентификатор устройства возвращается при вызове GET в /me/devices, а идентификатор команды возвращается при выполнении вызова POST в /me/devices/{id}/command.

Запрос

Ниже показан пример запроса.

GET me/devices/{id}/commands/{id}
Authorization: Bearer Eaeou....
Content-Type: application/json; charset=utf-8

Отклик

Ниже показан пример отклика.

HTTP/1.1 200 OK

{
  "value":
  {
    "id": "0158355AD4D680CC4E2994CC009EFFD7337D1335FCA6ED266…",
    "status": "completed",
    "type": null,
    "appServiceName": null,
    "packageFamilyName": null,
    "error": null,
    "permissionTicket": null,
    "postBackUri": null,
    "payload": null
  }
}

Получение полезных данных команды

Получение полезных данных ответа для определенного действия на устройстве. Полезные данные ответа используются при запросе к службе приложений для обратной передачи данных.

Разрешения

Для вызова этого API требуется одно из следующих разрешений. Дополнительные сведения, включая сведения о том, как выбрать разрешения, см. в статье Разрешения.

Тип разрешения Разрешения (в порядке повышения привилегий)
Делегированные (рабочая или учебная учетная запись) Не поддерживается.
Делегированные (личная учетная запись Майкрософт) Device.Command
Для приложений Не поддерживается.

HTTP-запрос

GET me/devices/{id}/commands/{id}/responsePayload

Заголовки запросов

Заголовок Значение
Авторизация Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации.
Accept application/json

Отклик

HTTP/1.1 200 OK
{
  "@odata.context": "https://graph.microsoft.com/devices/$metadata#microsoft.graph.PayloadResponse",
  "MsIgnoredParameter":0,
  "CreationDate":"date-time",
  "Type":"Ok"
}

Пример

В этом примере требуется идентификатор устройства и идентификатор команды, которая была выдана устройству. Идентификатор устройства возвращается при вызове GET в /me/devices, а идентификатор команды возвращается при выполнении вызова POST в /me/devices/{id}/command.

Запрос

Ниже показан пример запроса.

GET me/devices/{id}/commands/{id}
Authorization: Bearer Eaeou....
Content-Type: application/json; charset=utf-8

Отклик

Ниже приводится пример отклика.

HTTP/1.1 200 OK

{
  "@odata.context": "https://graph.microsoft.com/devices/$metadata#microsoft.graph.PayloadResponse",
  "MsIgnoredParameter":0,
  "CreationDate":"04/27/2017",
  "Type":"Ok"
}