Firebase Cloud Messaging'i (FCM) browser.gcm ile kullanma

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.

Firebase.com ana sayfası.
Firebase.com ana sayfası

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.

Firebase konsolundaki proje listelemelerinin ekran görüntüsü.
Firebase konsolundaki proje listeleri

Cloud Messaging ayarlar sayfasına gidin.

Firebase Cloud Messaging ayarları sayfasının ekran görüntüsü.
Firebase Cloud Messaging ayarları sayfası

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.

Google Cloud'da Firebase Messaging API'yi etkinleştirmek için bağlantının konumunun ekran görüntüsü.
Firebase'de Google Cloud ayarları bağlantısını açma

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.