Wat is Azure Notification Hubs?What is Azure Notification Hubs?

Azure Notification Hubs biedt een eenvoudig te gebruiken en uitgeschaalde push-engine waarmee u vanuit elke back-end (cloud of on-premises) meldingen kunt verzenden naar ieder platform (iOS, Android, Windows enzovoort).Azure Notification Hubs provide an easy-to-use and scaled-out push engine that enables you to send notifications to any platform (iOS, Android, Windows, etc.) from any back-end (cloud or on-premises). Notification Hubs is zeer geschikt voor zowel bedrijfs- als consumentenscenario's.Notification Hubs works great for both enterprise and consumer scenarios. Enkele voorbeelden:Here are a few example scenarios:

  • Meldingen van belangrijk nieuws met een lage latentie verzenden naar miljoenen gebruikers.Send breaking news notifications to millions with low latency.
  • Coupons op basis van locatie verzenden naar geïnteresseerde gebruikerssegmenten.Send location-based coupons to interested user segments.
  • Meldingen voor evenementen verzenden naar gebruikers of groepen voor bijvoorbeeld media-, sport- en financiële toepassingen.Send event-related notifications to users or groups for media/sports/finance/gaming applications.
  • Aanbiedingen pushen naar toepassingen om klanten te benaderen en werven.Push promotional contents to applications to engage and market to customers.
  • Gebruikers van bedrijfsgebeurtenissen, zoals nieuwe berichten en werkitems, op de hoogte stellen.Notify users of enterprise events such as new messages and work items.
  • Codes verzenden voor meervoudige verificatie.Send codes for multi-factor authentication.

Wat zijn pushmeldingen?What are push notifications?

Pushmeldingen zijn een vorm van app-naar-gebruikercommunicatie waarbij gebruikers van mobiele apps op de hoogte worden gesteld van bepaalde informatie, meestal in een pop-upvenster of dialoogvenster, op een mobiel apparaat.Push notifications are a form of app-to-user communication where users of mobile apps are notified of certain desired information, usually in a pop-up or dialog box on a mobile device. Gebruikers kiezen er doorgaans voor om het bericht te bekijken of te sluiten; in het eerste geval wordt de mobiele toepassing geopend die de melding heeft gecommuniceerd.Users generally choose to view or dismiss the message; choosing the former opens the mobile application that communicated the notification. Sommige meldingen zijn stil; ze worden op de achtergrond verstuurd zodat de app ze kan verwerken om te bepalen wat er moet gebeuren.Some notifications are silent - delivered behind the scenes for the app to process and decide what to do.

Pushmeldingen zijn essentieel voor consumenten-apps om de betrokkenheid en het gebruik te vergroten. Voor zakelijke apps zijn ze belangrijk om actuele bedrijfsgegevens te communiceren.Push notifications are vital for consumer apps in increasing app engagement and usage, and for enterprise apps in communicating up-to-date business information. Het is de beste app-naar-gebruikercommunicatie omdat het energie-efficiënt is voor mobiele apparaten, flexibel voor de afzenders en beschikbaar wanneer de bijbehorende toepassingen niet actief zijn.It's the best app-to-user communication because it is energy-efficient for mobile devices, flexible for the notifications senders, and available when corresponding applications are not active.

Notitie

Azure Notification Hubs biedt geen officiële ondersteuning voor VOIP-pushmeldingen (Voice Over Internet Protocol); in dit artikel wordt echter beschreven hoe u APNS VOIP-meldingen via Azure Notification Hubs kunt gebruiken.Azure Notification Hubs does not officially support Voice Over Internet Protocol (VOIP) push notifications; however, this article describes how you can use APNS VOIP notifications through Azure Notification Hubs.

Zie de volgende onderwerpen voor meer informatie over pushmeldingen voor enkele populaire platforms:For more information on push notifications for a few popular platforms, see the following topics:

Hoe werken pushmeldingen?How do push notifications work?

Pushmeldingen worden bezorgd via platformspecifieke infrastructuren, PNS (Platform Notification System) genoemd.Push notifications are delivered through platform-specific infrastructures called Platform Notification Systems (PNSes). Ze bieden essentiële pushfunctionaliteit voor het bezorgen van een bericht op een apparaat met een opgegeven ingang, en hebben geen algemene interface.They offer basic push functionalities to deliver a message to a device with a provided handle, and have no common interface. Om een melding te verzenden naar alle klanten via de Android-, iOS- en Windows-versies van een app, moet de ontwikkelaar afzonderlijk gebruikmaken van APNS (Apple Push Notification Service), FCM (Firebase Cloud Messaging) en WNS (Windows Notification Service).To send a notification to all customers across the Android, iOS, and Windows versions of an app, the developer must work separately with Apple Push Notification Service (APNS), Firebase Cloud Messaging (FCM), and Windows Notification Service (WNS).

Dit zijn de algemene stappen voor het verzenden van pushberichten:At a high level, here is how push works:

  1. Een app wil een melding ontvangen en maakt daarvoor verbinding met het PNS voor het doelplatform waarop de app wordt uitgevoerd en vraagt een unieke en tijdelijke push-ingang aan.An application wants to receive a notification, so it contacts the PNS for the target platform on which the app is running and requests a unique and temporary push handle. Het type ingang is afhankelijk van het systeem (zo maakt WNS gebruik van URI's en APNS van tokens).The handle type depends on the system (for example, WNS uses URIs while APNS uses tokens).
  2. De client-app slaat deze ingang op in de back-end of provider van de app.The client app stores this handle in the app backend or provider.
  3. Voor het verzenden van een pushmelding neemt de back-end van de app via de ingang contact op met het PNS om een bepaalde client-app te bereiken.To send a push notification, the app backend contacts the PNS using the handle to target a specific client app.
  4. De PNS stuurt de melding door naar het apparaat dat is opgegeven door de ingang.The PNS forwards the notification to the device specified by the handle.

Werkstroom voor pushmeldingen

Aandachtspunten voor pushmeldingenThe challenges of push notifications

Platform Notification System zijn krachtig.PNSes are powerful. App-ontwikkelaars moeten echter zelfs voor meer algemene scenario’s voor pushmeldingen nog heel wat werk verrichten om deze te implementeren, bijvoorbeeld voor het broadcasten van pushmeldingen naar gesegmenteerde gebruikers.However, they leave much work to the app developer to implement even common push notification scenarios, such as broadcasting push notifications to segmented users.

Pushmeldingen vereisen een complexe infrastructuur die geen verband houdt met de voornaamste bedrijfslogica van de toepassing.Sending push notifications requires complex infrastructure that is unrelated to the application's main business logic. Enkele aandachtspunten voor de infrastructuur:Some of the infrastructure challenges are:

  • PlatformafhankelijkheidPlatform dependency
    • Aangezien de Platform Notification Systems niet uniform zijn, vereist de back-end complexe en moeilijk te onderhouden platformafhankelijke logica om meldingen te kunnen verzenden naar apparaten op verschillende platformen.The backend requires complex and hard-to-maintain platform-dependent logic to send notifications to devices on various platforms, as PNSes are not unified.
  • SchalenScale
    • Volgens de PNS-richtlijnen moeten apparaattokens elke keer dat de app wordt gestart worden vernieuwd.Per PNS guidelines, device tokens must be refreshed on every app launch. Dit betekent dat de back-end een grote hoeveelheid verkeer en databasetoegang moet verwerken, alleen al om de tokens bij te werken.The backend deals with a large amount of traffic and database access just to keep the tokens up-to-date. Wanneer het aantal apparaten groeit tot misschien wel miljoenen, lopen de kosten voor het maken en bijwerken van deze infrastructuur enorm op.When the number of devices grows to hundreds, thousands, or millions, the cost of creating and maintaining this infrastructure is massive.
    • De meeste Platform Notification Systems bieden geen ondersteuning voor broadcasten naar meerdere apparaten.Most PNSes do not support broadcast to multiple devices. Om één bericht te broadcasten naar een miljoen apparaten, zijn een miljoen aanroepen naar de Platform Notification Systems nodig.A simple broadcast to a million devices results in a million calls to the PNSes. Het is zeer lastig om een dergelijke hoeveelheid verkeer met een minimale latentie te schalen.Scaling this amount of traffic with minimal latency is nontrivial.
  • RouteringRouting
    • Hoewel Platform Notification Systems een manier bieden om berichten naar apparaten te verzenden, worden de meeste app-meldingen gericht op bepaalde gebruikers of doelgroepen.Though PNSes provide a way to send messages to devices, most app notifications are targeted at users or interest groups. In de back-end moet een register worden bijgehouden om apparaten te koppelen aan belangengroepen, gebruikers, eigenschappen, enzovoort. Deze overhead verlengt de implementatietijd en verhoogt de onderhoudskosten van een app.The backend must maintain a registry to associate devices with interest groups, users, properties, etc. This overhead adds to the time to market and maintenance costs of an app.

Waarom kiezen voor Azure Notification Hubs?Why use Azure Notification Hubs?

Met Notification Hubs wordt het vele malen eenvoudiger om zelf pushmeldingen te versturen vanuit uw eigen app-back-end.Notification Hubs eliminates all complexities associated with sending push notifications on your own from your app backend. De uitgeschaalde infrastructuur ondersteunt meerdere platforms, waardoor er minder push-gerelateerde code nodig is en de back-end kan worden vereenvoudigd.Its multi-platform, scaled-out push notification infrastructure reduces push-related coding and simplifies your backend. Met Notification Hubs hoeven apparaten alleen maar hun PNS-ingangen te registreren bij een hub, terwijl de back-end berichten verstuurt naar gebruikers of belangengroepen, zoals wordt weergegeven in de volgende afbeelding:With Notification Hubs, devices are merely responsible for registering their PNS handles with a hub, while the backend sends messages to users or interest groups, as shown in the following figure:

Schema van Notification Hubs

Notification Hubs is een gebruiksklare push-engine met de volgende voordelen:Notification Hubs is your ready-to-use push engine with the following advantages:

  • PlatformoverschrijdendCross platforms
    • Ondersteuning voor alle veelgebruikte push-platformen.Support for all major push platforms.
    • Een algemene interface om te pushen naar alle platforms in platformspecifieke of platformonafhankelijk indelingen zonder platformspecifieke taken.A common interface to push to all platforms in platform-specific or platform-independent formats with no platform-specific work.
    • Beheer van apparaatingang op één plaats.Device handle management in one place.
  • Ondersteuning voor verschillende back-endsCross backends
    • Cloud of on-premises.Cloud or on-premises.
    • .NET, Node.js, Java, Python enzovoort..NET, Node.js, Java, Python, etc.
  • Veel verschillende bezorgingsmethodenRich set of delivery patterns
    • Uitzenden naar een of meer platformen: U kunt met één API-aanroep direct uitzenden naar miljoenen apparaten op verschillende platformen.Broadcast to one or more platforms: You can instantly broadcast to millions of devices across platforms with a single API call.
    • Pushen naar apparaat: U kunt meldingen op afzonderlijke apparaten richten.Push to device: You can target notifications to individual devices.
    • Pushen naar gebruiker: Met behulp van tags en sjablonen kunt u alle apparaten van een gebruiker op meerdere platformen bereiken.Push to user: Tags and templates help you reach all cross-platform devices for a user.
    • Pushen naar segment met dynamische tags: Met behulp van tags kunt u apparaten onderverdelen in segmenten en vervolgens alleen naar een bepaald segment pushen of naar meerdere segmenten door een expressie te gebruiken (bijvoorbeeld actief AND woont in Apeldoorn NOT nieuwe gebruiker).Push to segment with dynamic tags: The tags feature helps you segment devices and push to them according to your needs, whether you are sending to one segment or an expression of segments (For example, active AND lives in Seattle NOT new user). U bent niet beperkt tot publiceren en abonneren; u kunt tags van apparaten altijd en overal bijwerken.Instead of being restricted to publish-subscribe, you can update device tags anywhere and anytime.
    • Gelokaliseerd pushen: Met behulp van sjablonen kunt u lokalisatie toepassen zonder dat de code voor de back-end hoeft te worden gewijzigd.Localized push: The templates feature helps achieve localization without affecting backend code.
    • Pushen op de achtergrond: U kunt het push-naar-pull-patroon inschakelen door op de achtergrond meldingen te verzenden naar apparaten en deze zo opdracht te geven om bepaalde pulls of acties te voltooien.Silent push: You can enable the push-to-pull pattern by sending silent notifications to devices and triggering them to complete certain pulls or actions.
    • Gepland pushen: U kunt meldingen inplannen om op elk gewenst moment te worden verzonden.Scheduled push: You can schedule notifications to be sent anytime.
    • Direct pushen: U kunt het registreren van apparaten bij de Notification Hubs-service overslaan en rechtstreeks batchgewijs pushen naar een lijst met apparaatingangen.Direct push: You can skip registering devices with the Notification Hubs service and directly batch push to a list of device handles.
    • Gepersonaliseerd pushen: Push-variabelen voor apparaten maken het mogelijk om apparaatspecifieke, gepersonaliseerde pushmeldingen te verzenden met aangepaste sleutel-waardeparen.Personalized push: Device push variables help you send device-specific personalized push notifications with customized key-value pairs.
  • Uitgebreide telemetrieRich telemetry
    • Er zijn via de Azure-portal en programmacode telemetriegegevens beschikbaar voor pushen, apparaten, fouten en bewerkingen.General push, device, error, and operation telemetry are available both in the Azure portal and programmatically.
    • Via de functie voor het bijhouden van telemetrie per bericht kunt u elk pushbericht volgen vanaf de eerste aanvraag tot het moment dat de Notification Hubs-service de pushberichten verstuurt.Per-message telemetry tracks each push from your initial request call to the Notification Hubs service successfully sending the pushes.
    • Met de functie Feedback van Platform Notification System wordt alle feedback van Platform Notification Systems gecommuniceerd om te helpen bij foutopsporing.Platform Notification System feedback communicates all feedback from PNSes to assist in debugging.
  • SchaalbaarheidScalability
    • U kunt snel berichten versturen naar miljoenen apparaten zonder dat u de architectuur hoeft aan te passen of sharding hoeft toe te passen.Send fast messages to millions of devices without re-architecting or device sharding.
  • BeveiligingSecurity
    • Shared Access Secret (SAS) of federatieve verificatie.Shared Access Secret (SAS) or federated authentication.

Volgende stappenNext steps

U kunt zelf een meldingshub maken en gebruiken met deze zelfstudie: Push notifications to mobile applications (Pushmeldingen naar mobiele toepassingen sturen).Get started with creating and using a notification hub by following the Tutorial: Push notifications to mobile applications.