Push Notification di Windows Phone

Push Notfication adalah pemberitahuan yang dikirm ke phone yang di tujukan kepada user, dan memiliki banyak arti dari tipe pemberitahuannya. Berikut tiga tipe dari push notification:

Push Notification di Windows Phone

  • Raw notification bisa menyampaikan berbagai tipe informasi, tetapi hanya bisa menerima jika aplikasi berjalan di foreground sistem.
  • Toast notfication merupakan pemberitahuan yang mengganggu, semenjak fitur ini menampilkan sebuah pesan dari atas layar, diiringi juga dengan suara dan getaran. Fitur ini sangat cocok di implementasikan untuk sebuah pesan dari aplikasi yang akan kita kembangkan.
  • Tile notification bisa digunakan untuk mengupdate informasi dari Tile Applikasi kita.

Selain itu ada 3 faktor yang harus di perhatikan terhadap arsitektur push notification di Windows Phone :

  • Aplikasi Windows Phone yang nantinya menjadi client untuk penerima pemberitahuan.
  • Server Aplikasi, yang bisa berupa aplikasi web atau services, yang mengirimkan pemberitahuan.

Microsoft Push Notification Service (MPNS), merupakan cloud service yang di tawarkan oleh Microsoft untuk bisa merima pemberitahuan dari server aplikasi dan bisa dijalankan di aplikasi client.

Push Notfication Flow

Setiap apikasi windows phone dapat menerima pemberitahuan menggunakan sebuah channel, yang mana di indetifikasi oleh URI yang unik. Server aplikasi akan mengirim pemberitahuan ke client yang terdaftar menggunakan strin XML ke URI ini menggunakan command POST. Nantinya MPNS akan memproses permintaan dari device yang dimaksud.

Berikut contoh URI yang merepresentasikan channel yang di maksud :

http://sn1.notify.live.net/throttledthirdparty/01.00/AAhsLicyiJgtTaidbJoSgm-

 

Mengirimkan pemberitahuan dari sisi Server

Seperti yang telah disebutkan, pemberitahuan dikirim menggunakan channel HTTP dengan command POST.  Keuntungan dari penggunaan ini adalah karena penerapan dari standar teknologi pada umumnya, jadi kita akan bisa membuat server aplikasi dengan banyak platfrom.

HTTP request merepresesntasikan sebuah pemberitahuan menjadi beberapa fitur berikut :

  • Didefinisikan menggunakan XML, jadi tipe konten dari request nya harus berformat text/xml.
  • Custom headernya dinamakan X-WindowsPhone-Target, yang berisikan tipe pemberitahuan (toas, tile, raw).
  • Custom header lainnya dinamakan X-NotficationClass, yang merupakan pemberitahuan yang lebih di prioritaskan.

Toast notification

Di contoh dibawah ini merupakan contoh XML untuk mengirimkan pemberitahuan berupa Toast Notification :

Ada tiga parameter yang harus disiapkan :

  • wp:Text1 merupakan judul dari pemberitahuan
  • wp:Text2 merupakan text dari pemberitahuan
  • wp:Param merupakan pemberitahuan yang bersifat optonal, ketika ini di gunakan, aplikasi akan otomatis membuka halaman yang spesifik dengan parameter yang ditetepkan.

Ketika kita mempersiapkan request untuk dikiri ke HTTP, header dari X-WindowsPhone-Target harusnya mengirimkan pemberitahuan berupa toast, dengan pola sebagai berikut :

  • Toast2 untuk mengirimkan pemberitahuan dengan seketika
  • 12 untuk mengirimkan pemberitahuan setelah detik ke 450
  • 22 untuk mengirimkan pemberitahuan setelah detik ke 900.

 

Tile Notification

Tile notification digunakan untuk mengupdate informasi dari tile utama aplikasi kita. Kita tidak perlu mendeskripsikan XML untuk menggunakannya, Tiles merupakan fitur yang lebih kompleks ketimbang fitur pemberitahuan lainnya di Windows Phone 8.

Untuk mengirimkan pemberitahun bertipe Tile, header dari X-WindowsPhone-Target dari HTTP request haruslah memiliki tile, dengan nilai berikut :

  • 1 untuk mengirimkan pemberitahuan dengan seketika
  • 11 untuk mengirimkan pemberitahuan setelah detik ke 450
  • 21 untuk mengirimkan pemberitahuan setelah detik ke 900.

 

Raw Notification

Raw notification tidak memiliki UML yang spesifik semejak fitur ini dapat mengirimkan banyak jenis data, jadi kita bisa leluasa memanfaatkan fitur ini. Untuk mengirimkan pemberitahuan dengan tipe ini, header dair X-WindowsPhone-Target dari HTTP request harus lah memiliki raw, dengan nilai berikut :

  • 3 untuk mengirimkan pemberitahuan dengan seketika
  • 13 untuk mengirimkan pemberitahuan setelah detik ke 450
  • 23 untuk mengirimkan pemberitahuan setelah detik ke 900.

Mengirimkan request dan mengatur jawaban dari push notification

Dalam code dibawah ini akan di tunjukkan bagaimana mengirimkan toast notfication menggunakan class HttpWebRequest, yang merupakan class dasar dari framework .NET untuk mengoperasikan jaringan :

Ketentuan dari XML sangatlah mudah, yaitu hanya mempersiapkan sebuah string. Kita selanjutnya merubah nilai node dari judul pemberitahuan dan textnya. Kemudian kita memulai mempersiapkan HTTP request menggunakan class HttpWebRequest. Kita menambahkan sebuah custom header, dengan mendefinisikan panjang dan tipennya (text/xml), dan method yang spesifik menggunakan POST.

Hingga akhirnya dengan menggunakan method GetRequestStream(), kita bisa mendapatkan lokasi untuk meletakkan kontennya yang bertipe XML notification. Kemudian kita mengirimkannya dengan memanggil method GetResponse(), yang mengembalikan status dari request sebelumnya. Dengan menganalisa hasil respon-nya kita bisa diberitahu operasi berhasi atau tidaknya.

Iklan

Good People write good comments ..

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s