Compartir a través de


Comando Enviar dispositivo (en desuso)

Espacio de nombres: microsoft.graph

Importante

Las API de la versión /beta de Microsoft Graph están sujetas a cambios. No se admite el uso de estas API en aplicaciones de producción. Para determinar si una API está disponible en la versión 1.0, use el selector de Versión.

Precaución

Esta API está en desuso y dejó de devolver datos el 30 de septiembre de 2020.

Esta API permite que las funcionalidades de Project Rome comandan un dispositivo asociado a una cuenta de Microsoft. Después de realizar una llamada GET en me/devices, pase el identificador del dispositivo para emitir un comando al dispositivo. Se admiten dos tipos de comandos: LaunchURI y AppServices. Si usa LaunchURI, especifique los parámetros de tipo y carga útil. Para una llamada a AppService, especifique los parámetros type, payload, packageFamilyName y appServiceName .

Esta API está disponible en las siguientes implementaciones nacionales de nube.

Servicio global Gobierno de EE. UU. L4 Us Government L5 (DOD) China operada por 21Vianet

Permissions

Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use un permiso o permisos con privilegios superiores solo si la aplicación lo requiere. Para obtener más información sobre los permisos delegados y de aplicación, consulte Tipos de permisos. Para obtener más información sobre estos permisos, consulte la referencia de permisos.

Tipo de permiso Permisos con privilegios mínimos Permisos con privilegios más altos
Delegado (cuenta profesional o educativa) No admitida. No admitida.
Delegado (cuenta personal de Microsoft) Device.Command No disponible.
Aplicación No admitida. No admitida.

Solicitud HTTP

POST me/devices/{id}/commands

Encabezados de solicitud

Encabezado Valor
Authorization {token} de portador. Obligatorio. Obtenga más información sobre la autenticación y la autorización.
Aceptar application/json

Cuerpo de la solicitud

En el cuerpo de la solicitud, proporcione una representación JSON de las propiedades del comando.

{
  "type": "appService",
  "payload": "payload-JSON",
  "packageFamilyName": "packageFamilyName",
  "appServiceName": "appServiceName",
  "postbackURI": "postbackURI"
}

Respuesta

HTTP/1.1 201 OK
{
  "id": "0",
  "status": "requesting",
  "type": "appService",
  "appServiceName": "appServiceName",
  "packageFamilyName": "packageFamilyName",
  "error": "null",
  "responsePayload": "null",
  "payload": "payload-JSON",
  "permissionTicket": "null",
  "postBackUri": "postbackURI"
}

Propiedades de comando

Nombre Tipo Descripción
carga útil microsoft.graph.json Carga útil para enviar a un servicio de aplicaciones o para iniciar un URI en un dispositivo.
responsePayload microsoft.graph.json Carga devuelta desde el dispositivo de destino.
postBackURI Cadena Publique el URI de devolución para enviar notificaciones posteriores de actualizaciones.
packageFamilyName Cadena Nombre de familia del paquete de Windows de la aplicación.
appServiceName Cadena Nombre de App Service definido por la aplicación de destino. Obligatorio si se inicia un servicio de aplicaciones.
type Cadena LaunchURI o AppService.
id Cadena Identificador de un comando que se ha enviado al dispositivo.
actionStatus Cadena Estado de un comando.
error Cadena Cualquier error asociado a la solicitud de la aplicación de destino.

Ejemplos

Ejemplo 1: Inicio del URI

A continuación se muestra un ejemplo de una solicitud LaunchURI; iniciará un URI o una aplicación en el dispositivo de destino. Para iniciar un URI o una aplicación, emita un POST con el identificador del dispositivo (obtenido al realizar una llamada GET en me/devices). Establezca los parámetros Type en LaunchURI y proporcione un valor de URI como https://bing.com.

Solicitud


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

{ "type" : "LaunchUri", "payload" : {"uri":"https://bing.com"}}

Respuesta

HTTP/1.1 201 OK

{
  "id": "0158355AD4D680CC4E2994CC009EFFD7337D1B...",
  "status": "requesting",
  "type": null,
  "appServiceName": null,
  "packageFamilyName": null,
  "error": null,
  "permissionTicket": null,
  "postBackUri": null,
  "payload": {
    "uri": "https://bing.com"
  }
}

Ejemplo 2: App Service

En el ejemplo siguiente se muestra cómo consultar un servicio de aplicaciones en un dispositivo. Para usar un servicio de aplicaciones, debe realizar una llamada POST con el identificador del dispositivo (obtenido al realizar una llamada GET en me/devices). Para usar el ejemplo siguiente, debe instalar la aplicación Roma en el dispositivo de destino.

Se deben establecer varias propiedades adicionales en la llamada. El tipo debe establecerse en AppService, AppServiceName debe establecerse en el nombre del servicio de aplicaciones definido en la aplicación, PackageFamilyName debe establecerse en el nombre de la familia del paquete definido en el manifiesto de la aplicación y Payload contiene las claves y los valores del servicio al que llama dentro de la aplicación de destino.

Solicitud


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

{
  "type" : "AppService",
  "appServiceName" : "com.microsoft.test.cdppingpongservice",
  "packageFamilyName" : "5085ShawnHenry.RomanTestApp_jsjw7knzsgcce",
  "payload" : {
    "Type":"Toast","Title":"Hello","Subtitle":"World!"}
  }

Respuesta

HTTP/1.1 201 OK

{
  "id": "0158355AD4D680CC4E2994CC009EFFD7EADA8307E96FF1C8D19B..",
  "status": "requesting",
  "type": null,
  "appServiceName": "com.microsoft.randomnumbergenerator",
  "packageFamilyName": "Microsoft.SDKSamples.AppServicesProvider.CS_8wekyb3d8bbwe",
  "error": null,
  "permissionTicket": null,
  "postBackUri": null,
  "payload": {
    "Type": "Toast",
    "Title": "Hello",
    "Subtitle": "World!"
  }
}