Anında iletme bildirimleri, mobil uygulaması olan herkes için hayati bir pazarlama aracıdır.
Kullanıcılarınızla iletişim kurmanın, cep telefonlarına acil mesajlar göndermenin en iyi yolu.
Bir mobil uygulama, kullanıcıya uygulama açık olmadığında bile akıllı telefonlarında görünen kısa bir açılır mesaj olan bir anında iletme bildirimi gönderebilir.
Bu uyarılar hatırlatıcıları, güncellemeleri, indirimleri ve daha fazlasını içerebilir.
Kullanıcıların gözlerini yakalamak için yaratılmıştır. Başlık, mesaj, resim ve URL, anında iletme bildiriminin olası bileşenleridir. Emojiler, logolar ve diğer şeyler de bunların bir parçası olabilir.
Apple OS ve Google Android gibi işletim sistemleri, anında iletme bildirimleri için çeşitli arayüzlere sahiptir.
Anında iletme bildirimleri, etkileşimi artırmak, uygulama kullanımını artırmak, dönüşümleri etkilemek ve çok daha fazlası için kullanılabilir.
Seçenekler gerçekten sınırsız.
Mobil cihazlar için push bildirimleri olarak da bilinen mobil cihazlar için push bildirimleri, e-posta, SMS ve çevrimiçi push bildirimleri gibi kanalları kullanımınızı bir dizi özel avantajla tamamlayabilir.
Bu gönderide bildirim hizmetinin hızlı bir açıklamasını ve amacı, üst düzey tasarımı, özel özellikleri ve daha fazlası hakkında bilgi alacaksınız.
Nesnel
Üründen kullanıcıya mesajları çeşitli kanallarda verimli bir şekilde dağıtabilen bir bildirim hizmeti geliştirmek
Yer Alan Kurallar :
- Gönderme API'si: Herhangi bir arka uç ve mikro hizmetin bildirim göndermeye başlayabilmesi için yetkili bir uç nokta yayınlayın.
- Uyumlu Kanallar: E-posta, metin mesajı ve push gibi bir API yayınlayan herhangi bir kanala uyarı gönderme desteği.
- Kullanıcının tercihleri: Kullanıcıların her kanal ve bildirim için kullanıcı tercihlerini seçmesine izin verin.
- Aşağı akış hizmeti uyumluluğu için sınırlar: E-posta veya SMS hizmeti kısıldı veya durduruldu.
- Ölçeklenebilir: (teorik olarak) sonsuz yatay ölçeklendirmeye izin verir.
Üst Düzey Mimari
Diyelim ki kodunuzun birisini bilgilendirmesi gerekiyor:
- POST /send bitiş noktası, kodunuz tarafından çağrılır. Mevcut her kanal için istek, alıcının kullanıcı kimliğini, bildirimin türünü ve içeriğini içerir.
- OAuth2 İstemci Kimlik Bilgileri Akışı, isteğin kimliğini doğrulamak için /send uç noktası tarafından kullanılır.
- Kullanıcının bildirim seçenekleri daha sonra veritabanından istenir. Tercihler, kullanıcının belirli bir kanala ve bildirime abone olup olmadığını gösterir.
- Veritabanından, e-posta adresleri ve telefon numaraları gibi kullanıcı özelliklerini okuyacaktır.
- Bu uç nokta, kullanıcı özelliklerini, kanalları ve kanala özel içeriği içeren bir mesaj nesnesi yaratacaktır. Yine de devre dışı bırakılmış kanalları içermez. Mesaj daha sonra bir fan çıkışı servisine iletilir.
- Gelen mesajlar, yayma hizmeti aracılığıyla iş kuyruklarına dağıtılır. Bununla birlikte, mesajda belirtilmeyen kanallar için iş kuyruklarını göz ardı etmek için filtreleme mevcuttur.
- Her kanalın bir işlemcisi ve bir iş kuyruğu vardır. İşlemci görevi alır ve ardından işlemsel e-posta veya SMS hizmeti gibi uygun hizmeti ister.
Başlıca Mimari unsurlar
POST/gönderildi
Bu son noktaya yönelik istekte yalnızca userId'nin ve ne e-posta adresinin ne de telefon numarasının dahil edilmediğini çok iyi fark etmiş olabilirsiniz. Bu, bildirim hizmetlerinin kullanıcılarınıza anonim kalmasını sağlar.
Ölçeklenebilirliği sağlamak için uç nokta, bir yük dengeleyici.
Tipik kullanıcıya yönelik kimlik doğrulamanız, uç nokta için koruma sağlamaz.
İsteği gönderen hizmet yazılımın kendisi olduğundan, sunucudan sunucuya iletişim için kullanılan OAuth2 İstemci Kimlik Bilgileri Akışı olarak bilinen farklı bir kimlik doğrulama yöntemini kullanmanız gerekir.
Uygulamanız birçok farklı yerde bildirimler sağlayacaktır. Gönderme işlevini, yeni bir kod tabanından veya derleme iş akışınızdan, bağımsız olarak ölçeklenebilir olmasını garanti eden bir yük dengeleyicinin arkasında bir uç nokta olarak uygulayarak neredeyse her yerde kullanabilirsiniz.
PUT/kullanıcı tercihleri
Son derece ölçeklenebilir bir anahtar/değer çifti veya NoSQL veritabanı kullanın. Kayıtları aşağıdaki gibi biçimlendirin: ANAHTAR: örnek kullanıcı kimliği: örnek bildirim kimliği, DEĞER: [“email”, “durum: doğru”, “SMS”, “durum: yanlış”, kanal: “e-posta”, “e-posta”, durum : doğru
Kayıtlarda "yanlış" değerler varsa, iletim uç noktası ilgili kanalı fanout'a iletilen mesajdan hariç tutacaktır. Bir kanal için kayıt yoksa kullanıcı tercihlerini açıkça belirtmemiştir. Bu senaryoda varsayılanı kabul etmeniz gerekir.
Kullanıcı, kullanıcı arayüzünüzü ve standart kimlik doğrulama prosedürleriniz tarafından güvence altına alınan normal bir uç noktayı kullanarak kullanıcı tercihleri veritabanındaki verileri değiştirebilir.
Kullanıcılara, bildirim tercihlerini değiştirme seçeneği sunmazsanız, rahatsız olacak ve uyarılarınızı spam olarak belirlemeye veya susturmaya zorlanacaklar. Sonuç olarak kullanıcı deneyiminiz daha fazla zarar görecek ve e-posta veya SMS dağıtım hizmetleri hesabınızı askıya alabilir.
Fan Çıkışı
Fanout bir mesajı kopyalar ve farklı konumlara dağıtır. Uygun fiyatlı ve çok ölçeklenebilirler. AWS'de SNS kullanın. Azure'da Pub/Sub'ı ve Google Cloud Platform'da konuları ve abonelikleri kullanın.
Dışlanan kanal iş kuyruklarına anlamsız mesajlar gönderilmesini önlemek için yayma ve iş kuyrukları arasında filtreleme yapılandırabilirsiniz. Örneğin, AWS SNS'de, e-posta iş kuyruğunun yalnızca yayma mesajını, "kanallar" alanında "e-posta" değeri varsa alması gerektiğini belirtebilirsiniz.
Aynı mesajı gerekli iş kuyruklarına göndermek için kod oluşturabilseniz bile, yayma daha verimlidir ve daha az kodlama gerektirir. Fanout ayrıca, kanallarınızı genişletmenize ve yeniden düzenlemenize izin vererek, kuyruk ekleme ve kaldırma kolaylığı da sunar.
İş İşleme
Mesajlar, iş işlemcileriniz tarafından işlenmeyi bekleyen kuyruklarda saklanır. Ayrıca uygun fiyatlı ve çok ölçeklenebilirler. İş işlemcileri, iş kuyruklarından gelen mesajları işleyen kod parçalarıdır. Kuyruktaki mesajların hacmine bağlı olarak ölçeklenebilirler.
İş işlemcisi, senaryomuzdaki bildirimi işlemsel bir e-posta hizmeti aracılığıyla iletmek için uygun sağlayıcıya bir API çağrısı yapmalıdır.
E-posta, SMS ve benzeri mesaj dağıtım sağlayıcılarının çoğu, gönderdiğiniz mesajların miktarı ve kalibresi için sıkı gereksinimlere sahiptir. Ek olarak, bunları incelemek ve uygun prosedürleri iyice kurmak istiyorsunuz. İşte AWS SES'ten sonlandırılmaktan nasıl kaçınılacağına dair tavsiyemiz.
Teslimat hizmetlerinin ücret sınırlarının aşılmasını önlemek için maksimum sayıda iş işlemcisi tanımlayabilirsiniz.
Diğer İyileştirmeler
Bu öğelerin bir demetine bir göz atabilirsiniz.
- Ölçeklenebilir bir uygulama içi bildirim hizmetine sahip olmak için kendi API'lerine, tablolarına vb. ihtiyaç duyarlar.
- Aç/tıkla raporunu toplama ve gösterme
- Bildirimlerin içeriğini koddan kaldırmak ve ürün ve tasarım ekibinizin uyarıları kod değişikliği olmadan görsel olarak değiştirmesine izin vermek
- Ekibiniz herhangi bir kodu değiştirmeden, belirli kanallar için bildirimleri etkinleştirmek veya devre dışı bırakmak için kontrol panelini kullanabilir.
Push bildiriminin faydaları
- Kullanıcı Etkileşimini Artırın: Güncellemeler ve yeni materyaller, kullanıcılarınızın ilgisini çekecektir.
- İletişim Görünürlüğünü Artırın: İnsanlar aktif olmasa bile mesajlarınızın anında alındığından emin olun. Acil bildirimler gönderin ve kullanıcılara sorunsuz bir deneyim sağlayın.
- Tutmayı Sürdür: Kullanıcılarınızı geri dönmeye teşvik etmek için açıkça görülebilen anında iletme bildirimlerini kullanın. Müşterileri web sitenize ve uygulamanıza geri iterek kullanıcıyı elde tutma oranını artırabilir ve kullanıcı kaybını azaltabilirsiniz.
- Dönüşümleri Geliştirin: Uygulama içi ödüller, promosyonlar, indirimler veya diğer teklifler etrafında push kampanyaları oluşturarak satışları artırabilirsiniz.
- İşletmenizi Ölçeklendirin: Hedef kitleniz genişledikçe iletişim yaklaşımınız ölçeklenmelidir. Müşteri tabanınız genişledikçe, anında iletme bildirimleri, onlarla iletişimde kalmanın etkili bir yöntemidir.
- Kullanıcı deneyimini bağlantılı hale getirin (UX): Tüketicileri bilgilendirmek ve sorunsuz bir çapraz kanal deneyimi sağlamak için tüketicilere işlem uyarıları sağlayarak, müşteri yolculuğu boyunca sürtünmeyi azaltabilirsiniz.
Sonuç
Sonuç olarak, ölçeklenebilir bir push bildirim hizmetinin mimarisi hakkında bilgi sahibi olduk. Bildirimlerinizi bunlara dayandırabilmeniz için tüm ana bulut hizmeti sağlayıcıları tarafından sağlanan araçları da inceledik.
Size anlık bildirim sistemi mimarisine genel bir bakış sağlamak için elimden gelenin en iyisini yapmama rağmen, perde arkasında çok daha fazlası oluyor.
Bu bilgiyi faydalı bulacağınızı ve iyi bir şekilde kullanacağınızı içtenlikle umuyorum.
Yorum bırak