Udostępnij za pośrednictwem


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 sygnatury dostępu współdzielonego wygenerowany zgodnie z uwierzytelnianiem sygnatury dostępu współdzielonego za pomocą usługi Service Bus.
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 Ciąg identyfikatora unikatowego globalnie
userID Ciąg Nie Nie Ciąg niestandardowy zawierający kombinację znaków alfanumerycznych i -_@#.:=. Istnieje jedna do wielu relacji 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 inaktywacji instalacji przez usługę PNS.
expirationTime Ciąg Nie Tak Ciąg zawierający datę i godzinę w programie 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, a domyślnie nigdy nie wygasa (9999-12-31T23:59: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 do tej instalacji (jeśli używasz usług WNS i ChannelUri aplikacji ApplicationTile).
expiredPushChannel Wartość logiczna Ignorowane podczas aktualizowania. Zwracany podczas odczytywania. Tak Ten parametr jest wtedy true , gdy usługa PNS wygasła kanał.
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 to WNS lub MPNS. Nie Obiekt JSON, w którym każda właściwość jest nazwą nagłówka i wartością 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 Taki sam 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ług 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 zgodnie z opisem 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 jest przetwarzana 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