Geliştirici tarafından işletilen sunuculardan İşletim
Sistemini hedefleyen uygulamalara ve ayrıca uygulamalar için bildirim verileri
veya bilgileri göndermesine olanak sağlayan bir mobil bildirim hizmetidir.
Android, IOS veya Blackberry cihazlara yazdığımız
uygulamalarda bildirim çubuğuna bildirim bırakmamızı sağlar. Arkaplan servisi
(background service) kullanılarak yapılır. Uygulama kapalı olduğunda bile,
uygulamanın içeriğine dair kullanıcı bilgilendirmesi yapmak için kullanılır.
Örneğin mail geldiğinde telefon titrer, bildirim ışığı yanar ve bildirim
çubuğunda 1 yeni posta yazar. Bu, push notification servisi sayesinde yapılır.
Bu servis ile -anlık olarak- yeni veri kullanılabilir
olduğunda, sunucudan mobil uygulamanıza istek gönderilir. Böylelikle telefon
üzerinde sürekli veri giriş çıkışı kontrolü yapılmaz. Pil, ram, işlemci
tasarrufu sağlanır.
Başlıca Cloud Messaging Sağlayıcıları
Google Cloud Messaging
Apple Push Notification Service
Oracle
Cloud Messaging
Windows Push Notification Service
Google Cloud Messaging (GCM) Nedir ?
Geliştiricilere Google tarafından ücretsiz olarak
sunulmaktadır. GCM Hizmeti ilk önce Haziran 2012'de , kimlik doğrulama ve
dağıtım, yeni API bitiş noktaları ve mesajlaşma parametrelerinde yapılan
iyileştirmeler ve sınırlamaların kaldırılmasını gerekçe göstererek, Google'ın
şu an geçmemiş olan Android Cluetooth'dan Bulut'a Aygıt Mesajlaşma (C2DM)
hizmetine bir halef olarak ilan edildi. API gönderme oranları ve mesaj
boyutları.
2014 yılında ise bunun yerini Google'ın Firebase Cloud
Messaging (FCM) aldı.
Geliştirilmesi
Google Cloud Messaging'e geçiş, Android hizmeti 27 Haziran
2012'de Google I / O'da açıldığında ilk açıklandı.Google Bulut Mesajlaşma
servisini duyurduktan kısa süre sonra Google, C2DM'den yeni servise geçişle
birlikte uygulama geliştiricilere rehberlik edecek belgeler yayınladı. Hizmete
geçiş yapmak için SDK ve kod değişikliklerinin yanı sıra, indirmek ve
güncellemek için yayın deposu (Google Play gibi) için bir uygulama güncellemesi
yayınlaması gerekir.
Chrome hizmeti, Google I/O 2013'ten önce ‘Push mesajıyla
etkili uygulamalar ve uzantılar oluşturma' başlıklı bir blog yazısı ile ilan
edildi.
I/O 2015'te Google, yeni bir SDK ve iOS desteği verdiğini
açıkladı.
Teknik Detayları
Google Cloud Messaging işlevleri, hem sunucu API'larını ve hem
de SDK'lari Google tarafından
yapılmaktadır. GCM, push bildirimlerini, derin bağlantı komutlarını ve uygulama
verilerini gönderme yeteneğine sahiptir. Daha büyük mesajlar, en fazla 4 KB ‘a
kadar gönderilebilir.
İstemci uygulaması, bildirimleri alması ve göstermesi için
uygulama iznine izin verdikten sonra, kayıt işlemine başlamak için Google Cloud
Messaging arayüzüne bir register API isteği gönderir. GCM Hizmeti, isteği alır
ve onaylar ve geliştiricinin daha sonra tek bir aygıta bir bildirim göndermek
için kullandığı benzersiz bir tanımlayıcı olan aygıta bir GCM Registration ID vererek
yanıt verir. Tanımlayıcı aygıta kaydedilir ve genellikle saklanması için
geliştiricinin uygulama sunucusuna gönderilir. GCM Registration ID, bir
geliştiricinin kullanıcının kişisel kimliğini keşfetmesine izin verebilecek
herhangi bir kişisel veya cihaz bilgisi içermeyen rasgele üretilen bir
tanımlayıcıdır. Geliştirici bir aygıta bir bildirim olayı göndermek
istediğinde, süreç GCM Kimlik Doğrulama Hizmetine gönderilen bir API POST
isteğiyle başlar. POST isteği, GCM Registration ID, önceliği, isteğe bağlı
değerleri ve bağlantıları ve varışta cihazda görüntülenmesi gereken bilgileri
içerir. GCM Registration ID nin ve diğer kimlik bilgilerinin başarılı bir
şekilde doğrulanması üzerine bir kimlik doğrulama işareti döndürülür.Ardından,
her iki tanımlayıcı da GCM Hizmetine gönderilip ve sonra cihaza teslim edilir.
Aşağıdaki tabloda çalışma
sistemi anlatılmaktadır
Google Bulut Mesajlaşma Çalışma Sistemi |