Dela via


Vad är Azure Notification Hubs?

Azure Notification Hubs tillhandahåller en lätthanterad och utskalad push-motor som gör att du kan skicka meddelanden till valfri plattform (iOS, Android, Windows osv.) från valfri serverdel (moln eller lokalt). Notification Hubs fungerar för både företags- och konsumentscenarier. Här följer några exempelscenarier:

  • Skicka meddelanden om senaste nytt till miljoner med låg svarstid.
  • Skicka platsbaserade kuponger till intresserade användarsegment.
  • Skicka händelserelaterade meddelanden till användare eller grupper för media/sport/ekonomi/spelprogram.
  • Skicka kampanjinnehåll till program för att engagera och marknadsföra till kunder.
  • Meddela användare om företagshändelser, till exempel nya meddelanden och arbetsobjekt.
  • Skicka koder för multifaktorautentisering.

Anmärkning

Information om utfasning och migrering av Firebase Cloud Messaging finns i Google Firebase Cloud Messaging-migrering.

Vad är push-meddelanden?

Push-meddelanden är en form av app-till-användare-kommunikation där användare av mobilappar meddelas om viss önskad information, vanligtvis i ett popup-fönster eller en dialogruta på en mobil enhet. Användare väljer vanligtvis att visa eller stänga meddelandet. Om du väljer det förra öppnas det mobilprogram som förmedlade meddelandet. Vissa meddelanden är tysta – levereras i bakgrunden så att appen kan bearbeta och bestämma vad den ska göra.

Push-meddelanden är viktiga för konsumentappar när det gäller att öka appengagemanget och användningen och för företagsappar när det gäller att kommunicera up-to-date affärsinformation. Det är den bästa kommunikationen från app till användare eftersom den är energieffektiv för mobila enheter, flexibel för avsändare av meddelanden och tillgänglig när motsvarande program inte är aktiva.

Anmärkning

Azure Notification Hubs har inte officiellt stöd för VOIP-push-meddelanden (Voice Over Internet Protocol). Den här artikeln beskriver dock hur du kan använda APNS VOIP-meddelanden via Azure Notification Hubs.

Mer information om push-meddelanden för några populära plattformar finns i följande avsnitt:

Hur fungerar push-meddelanden?

Push-meddelanden levereras via plattformsspecifika infrastrukturer som kallas PNS (Platform Notification Systems ). De erbjuder grundläggande push-funktioner för att leverera ett meddelande till en enhet med ett angivet handtag och har inget gemensamt gränssnitt. Om du vill skicka ett meddelande till alla kunder i Android-, iOS- och Windows-versionerna av en app måste utvecklaren arbeta separat med Apple Push Notification Service (APNS), Firebase Cloud Messaging (FCM) och Windows Notification Service (WNS).

Här är hur push fungerar på hög nivå:

  1. En applikation vill ta emot en notifiering, så den kontaktar PNS för målplattformen där appen körs och begär ett unikt och tillfälligt push-handtag. Handtagstypen beror på systemet (till exempel använder WNS URI:er medan APNS använder token).
  2. Klientappen lagrar det här handtaget i appens serverdel eller provider.
  3. För att skicka ett push-meddelande kontaktar appens serverdel PNS med handtaget för att rikta in sig på en specifik klientapp.
  4. PNS vidarebefordrar meddelandet till den enhet som anges av handtaget.

Arbetsflöde för push-meddelanden

Utmaningarna med push-meddelanden

PNS:er är kraftfulla. De lämnar dock mycket arbete åt apputvecklaren att implementera även vanliga push-meddelandescenarier, till exempel sändning av push-meddelanden till segmenterade användare.

Att skicka push-meddelanden kräver komplex infrastruktur som inte är relaterad till programmets huvudsakliga affärslogik. Några av infrastrukturutmaningarna är:

  • Plattformsberoende
    • Serverdelen kräver komplex och svårbehållen plattformsberoende logik för att skicka meddelanden till enheter på olika plattformar, eftersom PNS:er inte är enhetliga.
  • Skala
    • Enligt PNS-riktlinjerna måste enhetstoken uppdateras vid varje appstart. Backend hanterar en stor mängd trafik och databasåtkomst för att hålla token up-touppdaterad. När antalet enheter växer till hundratals, tusentals eller miljoner är kostnaden för att skapa och underhålla den här infrastrukturen enorm.
    • De flesta PNS:er stöder inte sändning till flera enheter. En enkel sändning till en miljon enheter resulterar i en miljon anrop till PNS. Att skala den här mängden trafik med minimal svarstid är inte enkelt.
  • Ruttning
    • Även om PNS:er är ett sätt att skicka meddelanden till enheter är de flesta appmeddelanden riktade till användare eller intressegrupper. Serverdelen måste ha ett register för att associera enheter med intressegrupper, användare, egenskaper osv. Den här kostnaden ökar tiden för marknads- och underhållskostnader för en app.

Varför ska du använda Azure Notification Hubs?

Notification Hubs eliminerar alla komplexiteter som är associerade med att skicka push-meddelanden på egen hand från appens serverdel. Dess infrastruktur för push-meddelanden med flera plattformar minskar push-relaterad kodning och förenklar serverdelen. Med Notification Hubs ansvarar enheterna bara för att registrera sina PNS-handtag med en hubb, medan serverdelen skickar meddelanden till användare eller intressegrupper, enligt följande bild:

Notification Hub-diagram

Notification Hubs är din färdiga push-motor med följande fördelar:

  • Plattformsoberoende
    • Stöd för alla större push-plattformar.
    • Ett gemensamt gränssnitt för att skicka till alla plattformar i plattformsspecifika eller plattformsoberoende format utan plattformsspecifikt arbete.
    • Hantering av enhetshandtag på ett och samma ställe.
  • Backendlösningar
    • Moln eller lokalt.
    • .NET, Node.js, Java, Python osv.
  • Omfattande uppsättning leveransmönster
    • Sänds till en eller flera plattformar: Du kan direkt sända till miljontals enheter på plattformar med ett enda API-anrop.
    • Push-överföring till enhet: Du kan rikta meddelanden till enskilda enheter.
    • Push-meddelande till användare: Taggar och mallar hjälper dig att nå alla plattformar.
    • Skicka till segment med dynamiska taggar: Funktionen taggar hjälper dig att segmentera enheter och skicka dem efter dina behov, oavsett om du skickar till ett segment eller ett uttryck för segment (till exempel "aktiv" OCH "bor i Seattle" INTE "ny användare"). I stället för att begränsas till publicera-prenumerera kan du uppdatera enhetstaggar var som helst och när som helst.
    • Lokaliserad push: Mallfunktionen hjälper till att underlätta lokalisering utan att påverka backend-koden.
    • Tyst push-överföring: Du kan aktivera push-to-pull-mönstret genom att skicka tysta meddelanden till enheter och utlösa dem för att slutföra vissa hämtningar eller åtgärder.
    • Schemalagd push: Du kan schemalägga att meddelanden skickas när som helst.
    • Direkt push: Du kan hoppa över att registrera enheter med Notification Hubs-tjänsten och istället göra en direkt batch-push till en lista med enhetsidentifierare.
    • Anpassad push: Enhetsspecifika push-variabler hjälper dig att skicka anpassade push-meddelanden med nyckel-värde-par.
  • Skalbarhet
    • Skicka snabba meddelanden till miljontals enheter utan omarkitektur eller partitionering av enheter.
  • Säkerhet
    • Delad åtkomsthemlighet (SAS) eller federerad autentisering.

Nästa steg

Kom igång med att skapa och använda en meddelandehubb genom att följa självstudien: Skicka push-meddelanden till mobila program.