Membuat atau menimpa penginstalan
Metode ini membuat atau menimpa penginstalan.
Minta
Metode | Meminta URI | Versi HTTP |
---|---|---|
PUT | https://{namespace}.servicebus.windows.net/{NotificationHub}/installations/{id}?api-version=2015-01 |
HTTP/1.1 |
Header permintaan
Tabel berikut ini menjelaskan header permintaan yang diperlukan dan opsional.
Meminta kop | Deskripsi |
---|---|
Jenis-Konten | aplikasi/json |
Authorization | Token SAS yang dihasilkan sebagaimana ditentukan dalam Autentikasi Tanda Tangan Akses Bersama dengan Azure Service Bus. |
x-ms-version | 2015-01 |
Isi permintaan
Tabel berikut ini menjelaskan properti isi permintaan JSON untuk penginstalan:
Nama | Jenis | Diperlukan | Baca-saja | Deskripsi |
---|---|---|---|---|
installationId | String | Ya | Tidak | String pengidentifikasi unik global |
userID | String | Tidak | Tidak | String kustom yang berisi kombinasi karakter alfanumerik dan -_@#.:=. Ada hubungan satu dengan banyak antara UserID dan ID Penginstalan (yaitu satu ID Pengguna dapat dikaitkan dengan beberapa penginstalan) |
lastActiveOn | String | Tidak | Ya | Tanggal ketika penginstalan dibuat tidak aktif oleh PNS. |
expirationTime | String | Tidak | Ya | String yang berisi tanggal dan waktu dalam W3C DTF, YYYY-MM-DDThh:mmTZD (misalnya, 1997-07-16T19:20+01:00)) tempat pendaftaran akan kedaluwarsa. Nilai dapat diatur pada tingkat hub saat membuat atau memperbarui, dan secara default, tidak pernah kedaluwarsa (9999-12-31T23:59:59). |
lastUpdate | String | Diabaikan saat memperbarui. Dikembalikan saat membaca. | Ya | Tanggal dalam format W3C pembaruan terakhir untuk penginstalan ini. |
platform | String | Ya | Tidak | Dapat berupa {APNS, WNS, MPNS, ADM, GCM}. |
pushChannel | String | Ya | Tidak | Handel PNS untuk penginstalan ini (jika Anda menggunakan WNS dan ChannelUri applicationTile). |
expiredPushChannel | Boolean | Diabaikan saat memperbarui. Dikembalikan saat membaca. | Ya | Parameter ini adalah true jika PNS kedaluwarsa saluran. |
tag | Array string | Tidak | Tidak | Array tag. Tag adalah string seperti yang didefinisikan dalam spesifikasi hub. |
templates | Objek JSON | Tidak | Tidak | Objek JSON yang mewakili kamus templateNames ke deskripsi templat. |
Template. {name} | String | Tidak | Tidak | Objek JSON yang mewakili templat. |
Template. {name}.body | String | Ya, jika templat ada | Tidak | Templat untuk isi payload pemberitahuan. |
Template. {name}.headers | Objek JSON | Nomor. Dapat hadir hanya jika platform adalah WNS atau MPNS. | Tidak | Objek JSON di mana setiap properti adalah nama header dan nilai adalah ekspresi templat. |
Template. {name}.expiry | String | Nomor. Dapat hadir hanya jika platform apn | Tidak | Ekspresi templat mengevaluasi dalam format tanggal W3D. |
Template. {name}.tags | Array string | Tidak | Tidak | Array tag untuk templat ini. |
sekunderTiles | Objek JSON | Nomor. Dapat hadir hanya jika platform adalah wns. | Tidak | Objek JSON yang berisi kamus objek tileId dan secondaryTiles. |
secondaryTile. {tileId} | Objek JSON | Tidak | Tidak | Objek JSON dengan properti pendorongan untuk petak sekunder. |
secondaryTile. {tileId}.pushChannel | String | Ya, jika tileId ada | Tidak | ChannelUri untuk petak sekunder. |
secondaryTile. {tileId}.tags | Array string | Tidak | Tidak | Tag untuk pemberitahuan asli ke petak sekunder. |
secondaryTile. {tileId}.templates | Objek JSON | Tidak | Tidak | Sama seperti properti templat tetapi untuk setiap petak peta sekunder. |
Perhatikan poin berikut:
- Dalam JSON, urutan elemen tidak penting.
- Isi templat harus JSON untuk APNS, GCM, ADM.
- Isi templat harus XML untuk WNS dan MPNS (kecuali saat mentah).
- Templat untuk WNS harus menyertakan header X-WNS-Type.
- Templat untuk MPNS harus memiliki header yang kompatibel seperti yang dijelaskan dalam Mengirim pemberitahuan push untuk Windows Phone 8.
Beberapa contoh JSON mengikuti.
Contoh untuk mendaftar dengan APNS:
{
"installationId": "12234",
"userID": "MyAmazingUser",
"tags": ["foo", "bar"],
"platform": "apns",
"pushChannel": "ABCDEF-123456-…"
}
Catatan
Elemen Tag bersifat opsional.
Contoh untuk mendaftar secara asli dengan WNS termasuk templat dan tanpa tag:
{
"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"]
}
}
}
Daftar kerangka dari banyak elemen yang mungkin
{
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"]
}
}
}
}
}
Respons
Respons mencakup kode status HTTP dan sekumpulan header respons.
Kode respons
Kode | Deskripsi |
---|---|
200 | Penginstalan berhasil diantrekan dan diproses di latar belakang. |
400 | Penginstalan tidak dapat dibuat/ditimpa karena permintaan salah format. |
401 | Kegagalan otorisasi. Kunci akses salah. |
403 | Terlalu banyak penginstalan di namespace ini - Penginstalan tidak dibuat. |
Untuk informasi tentang kode status, lihat Status dan Kode Kesalahan.
Header respons
Header respons | Deskripsi |
---|---|
Jenis konten | application/json |
Lokasi Konten | Lokasi penginstalan dalam format: https://{namespace}.servicebus.windows.net/{NotificationHub}/installations/<installationId> |
Isi Respons
Tidak ada.
Lihat juga
Membaca penginstalan
Memperbarui penginstalan menurut ID Penginstalan
Menghapus penginstalan