Share via


Notification Hubs'a Genel Bakış

Azure Notification Hubs, herhangi bir arka uçtan (bulutta veya şirket içinde) herhangi bir mobil platforma mobil anında iletme bildirimleri göndermenizi sağlayan kullanımı kolay bir altyapı sağlar.

Notification Hubs ile platformlar arası, kişiselleştirilmiş anında iletme bildirimleri göndererek farklı platform bildirim sistemlerinin (PNS) ayrıntılarını soyutlayabilirsiniz. Tek bir API çağrısı ile bireysel kullanıcıları veya tüm cihazlarıyla birlikte milyonlarca kullanıcıyı içeren hedef kitle segmentlerini tümüyle hedefleyebilirsiniz.

Notification Hubs'ı hem kuruluş, hem de tüketici senaryoları için kullanabilirsiniz. Örnek:

  • Düşük gecikme ile milyonlara son dakika haberi bildirimleri gönderin (Notification Hubs, tüm Windows ve Windows Phone cihazlara önceden yüklenmiş Bing uygulamalarını çalıştırır).

  • Kullanıcı segmentlerine konum temelli kuponlar gönderin.

  • Spor/finans/oyun uygulamaları için kullanıcılara veya gruplara olay bildirimleri gönderin.

  • Yeni iletiler/e-postalar ve satış fırsatları gibi kurumsal olaylar hakkında kullanıcılara bildirimde bulunun.

  • Çok faktörlü kimlik doğrulaması için gereken bir kerelik parolalar gönderin.

Anında İletme Bildirimleri nedir?

Akıllı telefonlar ve tabletler, bir olay gerçekleştiğinde kullanıcıları "bilgilendirebilir". Windows Store'da ve Windows Phone uygulamalarında bildirim, bir bildirimle (ekranın en üstünde görünen modsuz bir pencere) veya Başlangıç ekranı kutucuk güncelleştirmeleriyle sonuçılır. Benzer şekilde, Android ve Apple iOS cihazlarda bildirimler, ekranın üst kısmından kolayca erişilebilen bir bildirim panelinde gruplandırılmış olarak görünür.

Anında iletme bildirimleri, uygulama arka uçlarının cihazdaki uygulama etkin olmasa bile mobil cihazlarda yeni bilgiler görüntülemesine yardımcı olur.

Anında iletme bildirimleri, Platform Bildirim Sistemleri (PNS) adlı platforma özgü altyapılar aracılığıyla teslim edilir. PNS, barebones işlevleri (yayın veya kişiselleştirme desteği yoktur) sunar ve platforma özgü PNS'lerin ortak bir arabirimi yoktur. Örneğin, bir Windows Store uygulamasına bildirim göndermek için bir geliştiricinin WNS (Windows Bildirim Hizmeti) ile iletişim kurması gerekir. Bir iOS cihazına bildirim göndermek için aynı geliştirici APNS (Apple Anında İletme Bildirimi Hizmeti) ile iletişim kurar ve iletiyi ikinci kez gönderir. İşlem, Windows Phone 8 ve Android uygulamaları için benzerdir.

Yüksek düzeyde, tüm platform bildirim sistemleri aynı deseni izler:

  1. İstemci uygulaması , tanıtıcısını almak için PNS ile iletişim kurar. Tanıtıcı türü sisteme göre değişir. WNS için bu bir URI veya "bildirim kanalıdır." APNS için bu bir belirteçtir.

  2. İstemci uygulaması bu tanıtıcıyı daha sonra kullanılmak üzere uygulama arka uçta depolar. WNS için arka uç genellikle bir bulut hizmetidir. Apple için sistem sağlayıcı olarak adlandırılır.

  3. Anında iletme bildirimi göndermek için uygulama arka ucu, belirli bir istemci uygulamasının örneğini hedeflemek için tanıtıcıyı kullanarak PNS ile iletişim kurar.

  4. PNS, tanıtıcı tarafından belirtilen cihaza bildirimi iletir.

Notification Hubs

Bu akışı uygulamak için gereken altyapı oldukça karmaşıktır ve çoğunlukla uygulamanın ana iş mantığıyla ilişkili değildir. İsteğe bağlı bir gönderim altyapısı oluşturmanın zorluklarından bazıları şunlardır:

  • Platform bağımlılığı. Farklı platformlardaki cihazlara bildirim göndermek için arka uçta birden çok arabirim kodlamanız gerekir. Alt düzey ayrıntıların farklı olmasıyla kalmaz, bildirimin (kutucuk, bildirim veya rozet) sunumu da platforma bağlıdır. Bu farklılıklar karmaşık ve bakımı zor arka uç koduna yol açar.

  • Ölçeklendirin. Bu altyapıyı ölçeklendirmenin iki boyutu vardır:

    • PNS yönergelerine göre, uygulama her başlatıldığında cihaz belirteçleri yenilenmelidir. Bu, cihaz belirteçlerini güncel tutmak için büyük miktarda trafiğe (ve sonuç olarak veritabanı erişimine) yol açar. Cihaz sayısı arttığında (büyük olasılıkla milyonlara), bu altyapıyı oluşturma ve korumanın maliyeti kolay değildir.

    • Çoğu PNS birden çok cihaza yayın yapmayı desteklemez. Bu nedenle, milyonlarca cihaza yapılan bir yayın, PNS'lere milyonlarca çağrıyla sonuç verir. Uygulama geliştiricileri genellikle toplam gecikme süresini düşük tutmak istediğinden bu istekleri ölçeklendirebilmek kolay değildir (örneğin, iletiyi alan son cihaz bildirimler gönderildikten 30 dakika sonra bildirimi almamalıdır, çünkü birçok durumda anında iletme bildirimlerine sahip olma amacını yenebilir).

  • Yönlendirme. PNS'ler bir cihaza ileti göndermek için yol sunar. Ancak çoğu uygulamada bildirimler kullanıcılara ve/veya ilgi alanı gruplarına (örneğin, belirli bir müşteri hesabına atanan tüm çalışanlar) hedeflenir. Bu nedenle, uygulama arka ucu, bildirimleri doğru cihazlara yönlendirmek için ilgi alanı gruplarını cihaz belirteçleriyle ilişkilendiren bir kayıt defteri tutmalıdır. Bu ek yük, bir uygulamanın pazarlama ve bakım maliyetlerinin toplam süresini artırır.

  • İzleme ve Telemetri. Milyonlarca bildirimin sonuçlarını izlemek ve toplamak önemsiz değildir ve genellikle anında iletme bildirimleri kullanan herhangi bir çözümün önemli bir bileşenidir.

Notification Hubs'ı kullanma

Notification Hubs önemli bir karmaşıklığı ortadan kaldırır: Anında iletme bildirimlerinin zorluklarını yönetmek zorunda değildir. Bunun yerine bir Bildirim Hub'ı kullanabilirsiniz. Notification Hubs tam bir çok platformlu, ölçeği genişletilmiş bir anında iletme bildirimi altyapısı kullanır ve uygulama arka ucunda çalışan gönderime özgü kodu önemli ölçüde kısaltır. Notification Hubs, bir gönderim altyapısının tüm işlevlerini uygular. Aşağıdaki şekilde gösterildiği gibi, cihazlar yalnızca PNS tanıtıcılarını kaydetmekten, arka uç ise kullanıcılara veya ilgi alanı gruplarına platformdan bağımsız iletiler göndermekten sorumludur:

Notification Hubs

Notification Hubs aşağıdaki avantajlara sahip bir anında iletme altyapısı sağlar:

  • Birden çok platform:

    • Tüm önemli mobil platformlar (Windows/Windows Phone, iOS Android) için destek.

    • Platforma özgü protokoller yoktur. Uygulama yalnızca Notification Hubs ile iletişim kurar.

    • Cihaz tanıtıcısı yönetimi. Notification Hubs, PNS'lerin tanıtıcı kayıt defterini ve geri bildirimlerini saklar.

  • Herhangi bir arka uçla çalışır. Bulut veya şirket içi, .NET, PHP, Java, Node vb.

  • Ölçeklendirin. Notification Hubs, yeniden mimari oluşturma veya parçalama gerekmeden milyonlarca cihaza ölçeklendirilir. Tüm bölgelerde kullanılabilir.

  • Zengin teslim desenleri kümesi. Cihazları mantıksal kullanıcıları veya ilgi alanı gruplarını temsil eden etiketlerle ilişkilendirin.

    • Yayın: Tek bir API çağrısı ile milyonlarca cihaza neredeyse eş zamanlı yayına izni verir.

    • Tek noktaya yayın/Çok Noktaya Yayın: Tüm cihazları dahil olmak üzere tek tek kullanıcıları temsil eden etiketlere gönderme; veya daha geniş grup; örneğin, ayrı form faktörleri (tablet ve telefon).

    • Segmentasyon: Etiket ifadeleriyle tanımlanan karmaşık segmente gönderme (örneğin, New York'ta Yankees'i takip eden cihazlar).

  • Kişiselleştirme. Arka uç kodunu etkilemeden cihaz başına yerelleştirme ve kişiselleştirme elde etmek için her cihazda bir veya daha fazla şablon bulunabilir.

  • Güvenlik. Paylaşılan Erişim Gizli Dizisi (SAS) veya şirket dışı kimlik doğrulaması.

  • Zengin telemetri. Portalda ve program aracılığıyla kullanılabilir.

Özet

  • Anında iletme bildirimleri, tüketici uygulamaları için kullanıcı katılımını ve kurumsal uygulamaların yardımcı programını artırdıkları için tüm modern uygulamaların ayrılmaz bir parçası haline gelmiştir.

  • Notification Hubs, uygulama arka uç kodunun kodlamasını ve bakımını önemli ölçüde azaltan kullanımı kolay, çok platformlu, ölçeklendirilmiş bir anında iletme altyapısı sağlar.

  • Notification Hubs tüm ana mobil platformlara (Windows/Windows Phone, iOS Android) anında iletme bildirimleri göndermek için herhangi bir arka uçtan (bulut veya şirket içi) kullanılabilir.

Ek Kaynaklar

Müşteriler Notification Hubs'ı nasıl kullanıyor?

Notification Hubs eğiticileri ve kılavuzları

Notification Hubs kullanmaya başlama öğreticileri:

Bildirim hub'ları için ilgili .NET yönetilen API başvuruları burada bulunur:

Microsoft.WindowsAzure.Messaging.NotificationHub

Microsoft.ServiceBus.Notifications