Tworzenie lub zastępowanie instalacji

Ta metoda tworzy lub zastępuje instalację.

Żądanie

Metoda Identyfikator URI żądania Wersja PROTOKOŁU HTTP
PUT https://{namespace}.servicebus.windows.net/{NotificationHub}/installations/{id}?api-version=2015-01 HTTP/1.1

Nagłówki żądań

W poniższej tabeli opisano wymagane i opcjonalne nagłówki żądań.

Nagłówek żądania Opis
Content-Type application/json
Autoryzacja Token wygenerowany zgodnie z uwierzytelnianiem sygnatury dostępu współdzielonego z Service Bus lub uwierzytelnianiem i autoryzacją Service Bus za pomocą Microsoft Azure Active Directory Access Control (znanej również jako Access Control Usługa lub ACS).
x-ms-version 2015-01

Treść żądania

W poniższej tabeli opisano właściwości treści żądania JSON dla instalacji:

Nazwa Typ Wymagane Tylko odczyt Opis
Installationid Ciąg Tak Nie Globalnie unikatowy ciąg identyfikatora
userID Ciąg Nie Nie Ciąg niestandardowy zawierający kombinację znaków alfanumerycznych i -_@#.:=. Istnieje relacja jeden do wielu między identyfikatorem użytkownika i identyfikatorem instalacji (tj. jeden identyfikator użytkownika może być skojarzony z wieloma instalacjami)
lastActiveOn Ciąg Nie Tak Data aktywowania instalacji przez usługę PNS.
expirationTime Ciąg Nie Tak Ciąg zawierający datę i godzinę w W3C DTF, RRRR-MM-DDThh:mmTZD (na przykład 1997-07-16T19:20+01:00)), w którym rejestracja wygaśnie. Wartość można ustawić na poziomie centrum podczas tworzenia lub aktualizowania i domyślnie nigdy nie wygasa (9999-12-31T23:59:59).
Lastupdate Ciąg Ignorowane podczas aktualizowania. Zwracany podczas odczytywania. Tak Data w formacie W3C ostatniej aktualizacji tej instalacji.
platforma Ciąg Tak Nie Może to być {APNS, WNS, MPNS, ADM, GCM}.
pushChannel Ciąg Tak Nie Dojście pnS dla tej instalacji (w przypadku usługi WNS identyfikator ChannelUri aplikacji).
expiredPushChannel Wartość logiczna Ignorowane podczas aktualizowania. Zwracany podczas odczytywania. Tak Ma to wartość true, jeśli usługa PNS wygasła w kanale.
tags Tablica ciągów Nie Nie Tablica tagów. Tagi to ciągi zdefiniowane w specyfikacji centrum.
szablonów Obiekt JSON Nie Nie Obiekt JSON reprezentujący słownik templateNames do opisu szablonu.
Szablony. {name} Ciąg Nie Nie Obiekt JSON reprezentujący szablon.
Szablony. {name}.body Ciąg Tak, jeśli szablon jest obecny Nie Szablon treści ładunku powiadomień.
Szablony. {name}.headers Obiekt JSON Nie. Może być obecny tylko wtedy, gdy platforma jest WNS lub MPNS. Nie Obiekt JSON, w którym każda właściwość jest nazwą nagłówka, a wartość jest wyrażeniem szablonu.
Szablony. {name}.expiry Ciąg Nie. Może być obecny tylko wtedy, gdy platforma jest apns Nie Wyrażenie szablonu oceniające w formacie daty W3D.
Szablony. {name}.tags Tablica ciągów Nie Nie Tablica tagów dla tego szablonu.
secondaryTiles Obiekt JSON Nie. Może być obecny tylko wtedy, gdy platforma jest wns. Nie Obiekt JSON zawierający słownik obiektów tileId i secondaryTiles.
secondaryTile. {tileId} Obiekt JSON Nie Nie Obiekt JSON z właściwościami wypychania dla kafelków pomocniczych.
secondaryTile. {tileId}.pushChannel Ciąg Tak, jeśli parametr tileId jest obecny Nie Identyfikator ChannelUri dla kafelka pomocniczego.
secondaryTile. {tileId}.tags Tablica ciągów Nie Nie Tagi dla powiadomień natywnych do kafelka pomocniczego.
secondaryTile. {tileId}.templates Obiekt JSON Nie Nie Takie same jak właściwość szablonów, ale dla każdego kafelka pomocniczego.

Pamiętaj o następujących kwestiach:

  • W formacie JSON kolejność elementów nie jest ważna.
  • Treść szablonu musi być JSON dla usługi APNS, GCM, ADM.
  • Treść szablonu musi być xml dla usług WNS i MPNS (z wyjątkiem nieprzetworzonych).
  • Szablony dla usługi WNS muszą zawierać nagłówek X-WNS-Type.
  • Szablony dla usługi MPNS muszą mieć zgodne nagłówki, jak wspomniano w temacie Wysyłanie powiadomień wypychanych dla Windows Phone 8.

Poniżej przedstawiono kilka przykładów JSON.

Przykład rejestracji w usłudze APNS:

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

Uwaga

Element Tagi jest opcjonalny.

Przykład rejestracji natywnej przy użyciu usługi WNS, w tym szablonu i braku tagów:

{ 
    "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"] 
            } 

        } 
}  

Szkielet listy wielu możliwych elementów

{ 
    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"] 
                    } 
                } 
            } 
        }
}  

Reakcja

Odpowiedź zawiera kod stanu HTTP i zestaw nagłówków odpowiedzi.

Kody odpowiedzi

Kod Opis
200 Instalacja została pomyślnie utworzona w kolejce i zostanie przetworzona w tle.
400 Nie można utworzyć/zastąpić instalacji, ponieważ żądanie zostało źle sformułowane.
401 Niepowodzenie autoryzacji. Klucz dostępu był niepoprawny.
403 Zbyt wiele instalacji w tej przestrzeni nazw — instalacje nie zostały utworzone.

Aby uzyskać informacje o kodach stanu, zobacz Kody stanu i błędów.

Nagłówki odpowiedzi

Nagłówek odpowiedzi Opis
Typ zawartości application/json
Lokalizacja zawartości Lokalizacja instalacji w formacie: https://{namespace}.servicebus.windows.net/{NotificationHub}/installations/<installationId>

Treść odpowiedzi

Brak.

Zobacz też

Odczytywanie instalacji
Aktualizowanie instalacji według identyfikatora instalacji
Usuwanie instalacji