Een installatie maken of overschrijven
Met deze methode wordt een installatie gemaakt of overschreven.
Aanvraag
Methode | Aanvraag-URI | HTTP-versie |
---|---|---|
PUT | https://{namespace}.servicebus.windows.net/{NotificationHub}/installations/{id}?api-version=2015-01 |
HTTP/1.1 |
Aanvraagheaders
In de volgende tabel worden vereiste en optionele aanvraagheaders beschreven.
Aanvraagheader | Beschrijving |
---|---|
Content-Type | application/json |
Autorisatie | SAS-token gegenereerd zoals opgegeven in Shared Access Signature Authentication met Service Bus. |
x-ms-version | 2015-01 |
Aanvraagbody
In de volgende tabel worden de eigenschappen van de JSON-aanvraagbody voor installaties beschreven:
Naam | Type | Vereist | Alleen-lezen | Description |
---|---|---|---|---|
installationId | Tekenreeks | Ja | Nee | Globally Unique Identifier String |
userID | Tekenreeks | Nee | Nee | Aangepaste tekenreeks met een combinatie van alfanumerieke tekens en -_@#.:=. Er is een een-op-veel-relatie tussen gebruikers-id en installatie-id (dat wil zeggen dat één gebruikers-id kan worden gekoppeld aan meerdere installaties) |
lastActiveOn | Tekenreeks | Nee | Ja | De datum waarop de installatie is inactief gemaakt door de PNS. |
expirationTime | Tekenreeks | Nee | Ja | Een tekenreeks met de datum en tijd in W3C DTF, JJJJ-MM-DDThh:mmTZD (bijvoorbeeld 1997-07-16T19:20+01:00)) waarin de registratie verloopt. De waarde kan worden ingesteld op hubniveau bij het maken of bijwerken en verloopt standaard nooit (9999-12-31T23:59:59). |
lastUpdate | Tekenreeks | Genegeerd tijdens het bijwerken. Geretourneerd tijdens het lezen. | Ja | Datum in W3C-indeling van de laatste update voor deze installatie. |
platform | Tekenreeks | Ja | Nee | Kan {APNS, WNS, MPNS, ADM, GCM} zijn. |
pushChannel | Tekenreeks | Ja | Nee | De PNS-ingang voor deze installatie (als u WNS en de ChannelUri van de ApplicationTile gebruikt). |
expiredPushChannel | Booleaans | Genegeerd tijdens het bijwerken. Geretourneerd tijdens het lezen. | Ja | Deze parameter is true als de PNS het kanaal is verlopen. |
tags | Matrix van tekenreeksen | Nee | Nee | Een matrix met tags. Tags zijn tekenreeksen zoals gedefinieerd in hubspecificaties. |
sjablonen | JSON-object | Nee | Nee | Een JSON-object dat een woordenlijst van templateNames aan sjabloonbeschrijving vertegenwoordigt. |
Sjablonen. {name} | Tekenreeks | Nee | Nee | JSON-object dat een sjabloon vertegenwoordigt. |
Sjablonen. {name}.body | Tekenreeks | Ja, als de sjabloon aanwezig is | Nee | Sjabloon voor de hoofdtekst van de nettolading van de melding. |
Sjablonen. {name}.headers | JSON-object | Nee. Kan alleen aanwezig zijn als het platform WNS of MPNS is. | Nee | JSON-object waarbij elke eigenschap een headernaam en waarde een sjabloonexpressie is. |
Sjablonen. {name}.expiry | Tekenreeks | Nee. Kan alleen aanwezig zijn als het platform apns is | Nee | Sjabloonexpressie die wordt geëvalueerd in W3D-datumnotatie. |
Sjablonen. {name}.tags | Matrix van tekenreeksen | Nee | Nee | Matrix met tags voor deze sjabloon. |
secondaryTiles | JSON-object | Nee. Kan alleen aanwezig zijn als het platform wns is. | Nee | JSON-object met een woordenlijst van tileId- en secondaryTiles-objecten. |
secondaryTile. {tileId} | JSON-object | Nee | Nee | JSON-object met push-eigenschappen voor secundaire tegels. |
secondaryTile. {tileId}.pushChannel | Tekenreeks | Ja, als tileId aanwezig is | Nee | ChannelUri voor secundaire tegel. |
secondaryTile. {tileId}.tags | Matrix van tekenreeksen | Nee | Nee | Tags voor systeemeigen meldingen naar secundaire tegel. |
secondaryTile. {tileId}.templates | JSON-object | Nee | Nee | Hetzelfde als de eigenschap sjablonen, maar voor elke secundaire tegel. |
Houd rekening met de volgende punten:
- In JSON is de volgorde van elementen niet belangrijk.
- De hoofdtekst van de sjabloon moet JSON zijn voor APNS, GCM, ADM.
- De hoofdtekst van de sjabloon moet XML zijn voor WNS en MPNS (behalve wanneer het onbewerkt is).
- Sjablonen voor WNS moeten een X-WNS-type-header bevatten.
- Sjablonen voor MPNS moeten compatibele headers hebben, zoals beschreven in Pushmeldingen verzenden voor Windows Phone 8.
Enkele JSON-voorbeelden volgen.
Voorbeeld om te registreren bij APNS:
{
"installationId": "12234",
"userID": "MyAmazingUser",
"tags": ["foo", "bar"],
"platform": "apns",
"pushChannel": "ABCDEF-123456-…"
}
Notitie
Het element Tags is optioneel.
Voorbeeld om systeemeigen te registreren bij WNS, inclusief een sjabloon en geen 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"]
}
}
}
Een overzicht van vele mogelijke elementen
{
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"]
}
}
}
}
}
Antwoord
Het antwoord bevat een HTTP-statuscode en een set antwoordheaders.
Antwoordcodes
Code | Description |
---|---|
200 | De installatie is in de wachtrij geplaatst en wordt op de achtergrond verwerkt. |
400 | De installatie kan niet worden gemaakt/overschreven omdat de aanvraag onjuist is ingedeeld. |
401 | Autorisatiefout. De toegangssleutel is onjuist. |
403 | Te veel installaties in deze naamruimte: installaties niet gemaakt. |
Zie Status- en foutcodes voor meer informatie over statuscodes.
Antwoordheaders
Antwoordheader | Description |
---|---|
Inhoudstype | application/json |
Inhoudslocatie | De locatie van de installatie in de indeling: https://{namespace}.servicebus.windows.net/{NotificationHub}/installations/<installationId> |
Hoofdtekst van de reactie
Geen.
Zie ook
Een installatie lezen
Een installatie bijwerken op installatie-id
Een installatie verwijderen