Erstellen oder Überschreiben einer Installation

Diese Methode erstellt oder überschreibt eine Installation.

Anforderung

Methode Anforderungs-URI HTTP-Version
PUT https://{namespace}.servicebus.windows.net/{NotificationHub}/installations/{id}?api-version=2015-01 HTTP/1.1

Anforderungsheader

In der folgenden Tabelle werden erforderliche und optionale Anforderungsheader beschrieben.

Anforderungsheader BESCHREIBUNG
Content-Type Anwendung/json
Authorization Token generiert, das in der Authentifizierung für freigegebenen Zugriff mit Service Bus oder Service Bus Authentifizierung und Autorisierung mit Microsoft Azure Active Directory Access Control (auch als Access Control bezeichnet wird Dienst oder ACS).
x-ms-version 2015-01

Anforderungstext

In der folgenden Tabelle werden die Eigenschaften des JSON-Anforderungstexts für Installationen beschrieben:

Name Typ Erforderlich Schreibgeschützt BESCHREIBUNG
installationId String Ja Nein Global eindeutige Bezeichnerzeichenfolge
userID String Nein Nein Benutzerdefinierte Zeichenfolge mit einer Kombination aus alphanumerischen Zeichen und -_@.:=. Es gibt eine zu viele Beziehung zwischen UserID und Installations-ID (d. h. eine Benutzer-ID kann mehreren Installationen zugeordnet werden)
lastActiveOn String Nein Ja Das Datum, an dem die Installation von der PNS aktiviert wurde.
expirationTime String Nein Ja Eine Zeichenfolge, die das Datum und die Uhrzeit in W3C DTF, YYYY-MM-DDThh:mmTZD (z. B. 1997-07-16T19:20+01:00)) enthält, in der die Registrierung abläuft. Der Wert kann auf Hubebene auf Erstellung oder Aktualisierung festgelegt werden und läuft nie ab (9999-12-31T23:59:59:59).
lastUpdate String Beim Aktualisieren ignoriert. Beim Lesen zurückgegeben. Yes Datum im W3C-Format des letzten Updates für diese Installation.
platform String Ja Nein Kann {APNS, WNS, MPNS, ADM, GCM}sein.
pushChannel String Ja Nein Der PNS-Handle für diese Installation (im Falle von WNS der ChannelUri des ApplicationTile).
abgelaufenEPushChannel Boolean Beim Aktualisieren ignoriert. Beim Lesen zurückgegeben. Yes Dies gilt, wenn der PNS den Kanal abgelaufen ist.
tags Array von Zeichenfolgen Nein Nein Ein Array von Tags. Tags sind Zeichenfolgen, die in Hubspezifikationen definiert sind.
Vorlagen JSON-Objekt Nein Nein Ein JSON-Objekt, das ein Wörterbuch von TemplateNames in die Vorlagenbeschreibung darstellt.
Vorlagen. {name} String Nein Nein JSON-Objekt, das eine Vorlage darstellt.
Vorlagen. {name}.body String Ja, wenn die Vorlage vorhanden ist No Vorlage für den Textkörper der Benachrichtigungsnutzlast.
Vorlagen. {name}.headers JSON-Objekt Nein. Kann nur vorhanden sein, wenn die Plattform WNS oder MPNS ist. No JSON-Objekt, bei dem jede Eigenschaft ein Kopfzeilenname und Wert ist, ist ein Vorlagenausdruck.
Vorlagen. {name}.ablaufen String Nein. Kann nur vorhanden sein, wenn die Plattform apns ist No Vorlagenausdruck, der im W3D-Datumsformat ausgewertet wird.
Vorlagen. {name}.tags Array von Zeichenfolgen Nein Nein Array von Tags für diese Vorlage.
secondaryTiles JSON-Objekt Nein. Kann nur vorhanden sein, wenn die Plattform wns ist. No JSON-Objekt, das ein Wörterbuch von tileId- und secondaryTiles-Objekten enthält.
secondaryTile. {tileId} JSON-Objekt Nein Nein JSON-Objekt mit Pusheigenschaften für sekundäre Kacheln.
secondaryTile. {tileId}.pushChannel String Ja, wenn tileId vorhanden ist No ChannelUri für sekundäre Kachel.
secondaryTile. {tileId}.tags Array von Zeichenfolgen Nein Nein Tags für systemeigene Benachrichtigungen für sekundäre Kacheln.
secondaryTile. {tileId}.templates JSON-Objekt Nein Nein Identisch mit der Vorlageneigenschaft, aber für jede sekundäre Kachel.

Beachten Sie folgende Punkte:

  • In JSON ist die Reihenfolge der Elemente nicht wichtig.
  • Der Vorlagentext muss JSON für APNS, GCM, ADM sein.
  • Der Vorlagentext muss XML für WNS und MPNS sein (mit Ausnahme des Unformats).
  • Vorlagen für WNS müssen X-WNS-Type-Header enthalten.
  • Vorlagen für MPNS müssen kompatible Header aufweisen, wie im Senden von Pushbenachrichtigungen für Windows Phone 8 erwähnt.

Einige JSON-Beispiele folgen.

Beispiel für die Registrierung bei APNS:

{ 
    "installationId": "12234", 
    "userID": "MyAmazingUser",
    "tags": ["foo", "bar"], 
    "platform": "apns", 
    "pushChannel": "ABCDEF-123456-…" 
}  

Hinweis

Das Tags-Element ist optional.

Beispiel für die native Registrierung mit WNS, einschließlich einer Vorlage und ohne Tags:

{ 
    "installationId": "12234", 
    "userID": "MyAmazingUser",
    "platform": "wns", 
    "pushChannel": "https://db3...", 
    "templates": { 
        "myTemplate" : { 
            body : '<toast><visual lang="en-US"><binding template="ToastTest01"><text id="1">$myTextProp1</text></binding></visual></tile>',
            headers: { "X-WNS-Type": "wns/toast" }, 
            "tags": ["foo", "bar"] 
            } 

        } 
}  

Eine Skelettauflistung vieler möglicher Elemente

{ 
    installationId: "", 
    userID: "",
    expirationTime: "", 
    tags: ["foo", "bar"],
    lastUpdate: “”, 
    user: "", 
    advertisingId: "", 
    appId: "" 
    platform: "", 
    pushChannel: "", 

    templates: { 
        "templateName1" : { 
            body: "", 
            headers: { "X-WNS-Type": "wns/tile" }, 
            expiration: "",
            tags: ["foo", "bar"] 
            } 
        } 

    secondaryTiles: { 
        "tileId1": { 
            pushChannel: "", 
            tags: ["foo", "bar"], 

            templates: { 
                "otherTemplate": { 
                    bodyTemplate: "", 
                    headers: { ... }, 
                    tags: ["foo"] 
                    } 
                } 
            } 
        }
}  

Antwort

Die Antwort enthält den HTTP-Statuscode und einen Satz von Antwortheadern.

Antwortcodes

Code BESCHREIBUNG
200 Die Installation wurde erfolgreich in die Warteschlange gestellt und wird im Hintergrund verarbeitet..
400 Die Installation konnte nicht erstellt/überschrieben werden, da die Anforderung fehlerhaft war.
401 Autorisierungsfehler Die Zugriffstaste war falsch.
403 Zu viele Installationen in diesem Namespace – Installationen wurden nicht erstellt.

Informationen zu Statuscodes finden Sie unter Status- und Fehlercodes.

Antwortheader

Antwortheader BESCHREIBUNG
Inhaltstyp Anwendung/json
Content-Location Der Speicherort der Installation im Format: https://{namespace}.servicebus.windows.net/{NotificationHub}/installations/<installationId>

Antworttext

Keine.

Weitere Informationen

Lesen einer Installation
Aktualisieren einer Installation nach Installations-ID
Löschen einer Installation