Azure Notifications Hub

  • Send push notifications from any back end to any platform. The platform can be : 
    • IOS 
    • Android 
    • Windows universal 
    • Xamarin (ios, android and safari) 

And backend can be : 

  • Cloud 
  • On-premise locations 
  • Sample use cases” 
    • Push Breaking news  
    • Marketing campaigns 
    • MFA 

Resource Structure : 

  • Hubs – push resource 
  • Namespaces – collection of hubs in a region, can have prod and test hubs 

Pricing model : 

  • Free – not for production apps as there is no SLA. 500 devices and 1 mil pushes/namespace/month 
  • Basic – 200k devices, 10 mil pushes/namespace/month 
  • Standard – 10 mil devices, 10 mil pushes/namespace/month 

Pricing details are : https://azure.microsoft.com/en-us/pricing/details/notification-hubs/  

Latency: 

  • Process atleast 1 mil push notification sends a min and can delay up to 10 mins because PNS might be throttling the app. Mostly within minutes. 

Security Model : 

  • uses SAS security model either at namespace level or notification hub level 
  • Encryption with data at rest except registration tags (dont use tags for confidential customer data) 
  • It can log all write operations like put, post and delete on any azure resource but not log read or get operation 

Limitations : 

  • Azure Notification hubs doesnt support VOIP push notifications 
  • Doesnt support email or text possibilities 

Other ways to achieve push notifications using SQL server : 

  • Query notifications 
    • Query Notification will push to a Service Broker service 
  • SQLDependency 
    • notorious for memory leak issues 
    • App needs to create SQLDependency object and register to receive notifications using onchangeventhandler 
    • Workflow is : 
      • Queue to stored all updated values 
      • Service broker to insert the messages into queue 
      • Table trigger for all DML operations to generate an XML message and use SB to insert into the queue system 
  • Service Broker 

Query notifications and SQLDependency have limitation that they will not push the data but alert that info has changed. 

Local datasets need be refreshed to get the updates. 

Leave a Comment


NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>