Befehl "Gerät senden" (veraltet)
Namespace: microsoft.graph
Wichtig
Die APIs unter der /beta
Version in Microsoft Graph können sich ändern. Die Verwendung dieser APIs in Produktionsanwendungen wird nicht unterstützt. Um festzustellen, ob eine API in v1.0 verfügbar ist, verwenden Sie die Version Selektor.
Achtung
Diese API ist veraltet und gibt am 30. September 2020 keine Daten mehr zurück.
Diese API ermöglicht es Project Rome-Funktionen, ein Gerät zu befehlen, das einem Microsoft-Konto zugeordnet ist. Nachdem Sie einen GET-Aufruf auf ausgeführt haben me/devices
, übergeben Sie die ID des Geräts, um einen Befehl an Ihr Gerät ausstellen zu können. Zwei Arten von Befehlen werden unterstützt: LaunchURI und AppServices. Wenn Sie LaunchURI verwenden, geben Sie den Typ und die Nutzlastparameter an. Geben Sie für einen AppService-Aufruf die Parameter type, payload, packageFamilyName und appServiceName an.
Diese API ist in den folgenden nationalen Cloudbereitstellungen verfügbar.
Globaler Dienst | US Government L4 | US Government L5 (DOD) | China, betrieben von 21Vianet |
---|---|---|---|
✅ | ❌ | ❌ | ❌ |
Berechtigungen
Wählen Sie für diese API die Als am wenigsten privilegierten Berechtigungen gekennzeichneten Berechtigungen aus. Verwenden Sie nur dann eine Berechtigung mit höheren Berechtigungen , wenn dies für Ihre App erforderlich ist. 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) | Nicht unterstützt | Nicht unterstützt |
Delegiert (persönliches Microsoft-Konto) | Device.Command | Nicht verfügbar. |
Anwendung | Nicht unterstützt | Nicht unterstützt |
HTTP-Anforderung
POST me/devices/{id}/commands
Anforderungsheader
Kopfzeile | Wert |
---|---|
Authorization | Bearer {token}. Erforderlich. Erfahren Sie mehr über die Authentifizierung und Autorisierung. |
Annehmen | application/json |
Anforderungstext
Geben Sie im Anforderungstext eine JSON-Darstellung der Befehlseigenschaften an.
{
"type": "appService",
"payload": "payload-JSON",
"packageFamilyName": "packageFamilyName",
"appServiceName": "appServiceName",
"postbackURI": "postbackURI"
}
Antwort
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"
}
Befehlseigenschaften
Name | Typ | Beschreibung |
---|---|---|
payload | microsoft.graph.json | Nutzlast zum Senden an einen App-Dienst oder zum Starten eines URI auf einem Gerät. |
responsePayload | microsoft.graph.json | Vom Zielgerät zurückgegebene Nutzlast. |
postBackURI | String | Postback-URI, um nachfolgende Benachrichtigungen über Updates zu senden. |
packageFamilyName | String | Windows-Paketfamilienname der Anwendung. |
appServiceName | String | Name des von der Zielanwendung definierten App-Diensts. Erforderlich beim Starten eines App-Diensts. |
type | String | LaunchURI oder AppService. |
id | String | Die ID eines Befehls, der an das Gerät gesendet wurde. |
actionStatus | String | Die status eines Befehls. |
error | String | Alle Fehler, die der Anforderung von der Zielanwendung zugeordnet sind. |
Beispiele
Beispiel 1: Starten des URI
Es folgt ein Beispiel für eine LaunchURI-Anforderung. Es wird ein URI oder eine Anwendung auf dem Zielgerät gestartet. Um einen URI oder eine App zu starten, geben Sie einen POST mithilfe der ID des Geräts aus (abgerufen durch einen GET-Aufruf auf me/devices
). Legen Sie die Type-Parameter auf LaunchURI fest, und geben Sie einen URI-Wert wie https://bing.coman.
Anforderung
POST me/devices/{id}/commands
Authorization: Bearer Eaeou....
Content-Type: application/json; charset=utf-8
{ "type" : "LaunchUri", "payload" : {"uri":"https://bing.com"}}
Antwort
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"
}
}
Beispiel 2: App Service
Das folgende Beispiel zeigt, wie Sie einen App-Dienst auf einem Gerät abfragen. Um einen App Service verwenden zu können, müssen Sie einen POST-Aufruf mit der ID des Geräts ausführen (abgerufen durch einen GET-Aufruf unter me/devices
). Um das folgende Beispiel zu verwenden, müssen Sie die Rome-App auf Ihrem Zielgerät installieren.
Im Aufruf müssen mehrere zusätzliche Eigenschaften festgelegt werden. Type muss auf AppService festgelegt werden, AppServiceName muss auf den Namen des app-Diensts festgelegt werden, der in der Anwendung definiert ist, PackageFamilyName muss auf den im App-Manifest definierten Paketfamiliennamen festgelegt werden, und Payload enthält die Schlüssel und Werte für den Dienst, den Sie innerhalb der Zielanwendung aufrufen.
Anforderung
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!"}
}
Antwort
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!"
}
}