browser.gcm ile son kullanıcılara mesaj gönderip alabilirsiniz. Firebase Cloud Messaging (FCM) üzerine kurulu olduğundan, ayarlamanız gereken harici bir hizmete bağlıdır. Bu nasıl yapılır makalesinde, uzantınızda çalışması için gereken tüm adımlar açıklanmaktadır.
browser.gcm desteklenmeye devam etse de on yıldan uzun süre önce Push standardı öncesinde oluşturulmuştu. Genel olarak, uzantıya özel bir API yerine web standardını kullanmak her zaman en iyi uygulamadır. browser.gcm kullanmak için özel bir ihtiyacınız yoksa Push'u kullanmanızı öneririz.
Ön koşullar
browser.gcm özelliğini kullanmak için Firebase hesabı oluşturmanız gerekir.
Hesabınızı oluşturduktan sonra Firebase konsolunuzu açıp kullanmak üzere mevcut bir projeyi seçmeniz veya uzantınız için yeni bir proje oluşturmanız gerekir.
Cloud Messaging ayarlar sayfasına gidin.
Bu projede mevcut bir Cloud Messaging hesabınız varsa listelenen sayısal gönderen kimliğini kopyalamak istiyorsanız.
Cloud Messaging etkin değilse Google Cloud'daki proje için Firebase Cloud Messaging API'yi etkinleştirmeniz gerekir. Aşağıdaki resimde, Firebase ayarlarında doğrudan bu sayfaya giden bir bağlantının nerede olduğunu görebilirsiniz.
Etkinleştirildikten sonra Cloud Messaging'in ayarlar sayfasına dönün ve Gönderen Kimliği'ni kopyalayın.
browser.gcm'yi yapılandırma
Firebase'den gönderen kimliğinizi aldığınıza göre artık uzantınızı mesajları dinleyecek şekilde yapılandırabilirsiniz. Başlamak için uzantınızın gcm
izinler bölümüne manifest.json eklediğinizden emin olun.
{
"manifest_version": 3,
...
"permissions": ["gcm"]
Artık browser.gcm API'sine erişebilirsiniz. browser.gcm.register numaralı telefonu arayarak push mesajlarını dinlemek için kaydolabilirsiniz.
Mesajları dinleme
Uzantı, gönderen kimliğinizi kaydettikten sonra gelen iletileri işlemek için kod eklemeniz gerekir.
Firebase olmadan Firebase
browser.gcm her zaman Firebase üzerinden geçse de Firebase, harici push mesajlaşma sağlayıcıları için proxy görevi görecek şekilde yapılandırılabilir. Genellikle satıcılar Chrome uzantıları için desteği açıkça listeler. Ancak Firebase'in eski push bildirimlerini destekleyen tüm satıcılar çalışmalıdır. Sağlayıcınız Firebase'in eski push bildirimleri için destek sunuyorsa bu özelliği deneyin. Sorun yaşarsanız sağlayıcıların desteği, geçerli olabilecek kısıtlamaları açıklayabilir.
Kanallar ve Konular
browser.gcm eski Firebase Messaging API'lerini kullanıyor. Bu durum, eski API mesaj kanallarını desteklemediği için önemlidir. Gönderilen her mesaj her istemciye gider. Bir kullanıcının uzantısı yalnızca iletilerin bir alt kümesiyle ilgileniyorsa kendiniz filtreleme yapmanız gerekir.
Firebase'i ücretsiz hesap olarak kullanmaya başlarsınız ancak belirli bir kullanım eşiğini aştığınızda sizden ücret alınır. Belirli gruplara mesaj göndermeyi planlıyorsanız istemci tarafı filtreleme, hak ettiğinden daha fazla maliyete neden olabilir. Bu sorunu, her kanal için bir proje ve bir gönderen kimliği olacak şekilde birden fazla proje oluşturarak çözebilirsiniz. Belirli bir uzantı, 100'e kadar birden fazla gönderen kimliği için kaydolabilir.
Alternatif olarak, kanallarla ilgili desteğe ihtiyacınız varsa veya Firebase'i kullanmadan push bildirimlerini kullanmak istiyorsanız Push API'yi kullanabilirsiniz.