We are developing a website and would like to use the Azure portal notification module. Does anyone know what this is built with and if we could implement this on our site rather than building from scratch? We have some some processes that take some time so want users to be able to go off and do other things and come back when it's completed. We host our product on Azure so if this is using an Azure feature then we can use this also.
Azure Notification Hubs provide an easy-to-use and scaled-out push engine that allows you to send notifications to any platform (iOS, Android, Windows, Kindle, Baidu, etc.) from any backend (cloud or on-premises).
Push notifications are delivered through platform-specific infrastructures called Platform Notification Systems (PNSes). They offer barebone push functionalities to deliver a message to a device with a provided handle, and have no common interface. To send a notification to all customers across the Android, iOS, and Windows versions of an app, the developer must work with Apple Push Notification Service(APNS), Firebase Cloud Messaging(FCM), and Windows Notification Service(WNS) separately.
Kindly take a look at the documents to know how it works, scenarios you could leverage Azure Notification Hubs for and how to integrate with your app.
https://learn.microsoft.com/azure/notification-hubs/notification-hubs-push-notification-overview
https://learn.microsoft.com/azure/notification-hubs/notification-hubs-app-service
Do provide more details on your requirement for better assistance.
The question is tagged for Azure Notification Hubs, but the screen shot you showing is for the notification section of the Azure Portal UI. I'm not aware that Microsoft makes the component available for third-party use.
Can you please remove the Notification Hubs tag from this issue as it's not related.
Related
My application is .Net Core 2.1 MVC. I am also using jQuery.
This application is deployed as an Azure Linux WebApp.
The users can see this website from desktop-based browsers like IE, Chrome, Safari etc. as well as from Iphone, IPad and Android mobile devices.
My backend's database is Azure MySQL 5.7. I have created a notification table in MySQL. The backend populates this notification table. The notification records may be applicable to a specific user or a group of users.
If a user is online, they should see the live updates (count and notification text).
Is Azure SignalR service or Azure Notification Hub the right choice for implementing this?
Push notifications are supported for iOS, Android, Windows Universal, Windows Phone, Kindle, Android China (via Baidu), Xamarin (iOS and Android, Chrome Apps, and Safari.
Notification Hubs is primarily designed to send notifications to mobile apps. It does not provide email or text message capabilities. However, third-party platforms that provide these capabilities can be integrated with Notification Hubs to send native push notifications by using Mobile Apps.
Notification Hubs also does not provide an in-browser push notification delivery service out of the box. Customers can implement this feature using SignalR on top of the supported server-side platforms
Hope I answered your question, Gist is basically you need to use both for implementing your solution.
I see that I can either connect directly (through Rest HTTP requests) to Google Firebase API but I can also connect it to Azure Notification Hub. I also understand that Firebase is free while Azure isn't.
Can you kindly describe what is the benefit of connecting Firebase to Azure rather than directly connecting to Google's API (if any)?
I'm using ASP.Net Core MVC as my backend.
Thank you
If you are doing one push platform only (Firebase in your case) and only considering basic scenarios, then there's not much difference between using it directly or via Notification Hubs (NH).
However, NH provides you with a set of really powerful features:
Cross-platform SDKs to allow device registrations from all major OSes and a unified way of sending pushes no matter which platform they are on
A feature that is unique across similar services is tagging and routing
Templating
Basic or extended telemetry
And some other features.
So, in short, yes you can do everything that NH does by yourself. It's just you'll spend a lot of time (and money on resources required to run it) while doing it. And this is an out of the box solution that has been tested through years and is used by some of the largest products on the market.
I am embarking on setting up a Xamarin Forms project for proof of concept with an aim of having an Android app running in the Android emulator registering and receiving google cloud notifications sent via Azure's notification hub.
In researching this I have found some sample code which assumes a backend which uses Microsoft Azure's Mobile Services back end.
I'd prefer not to have a dependency in my client code on Mobile Services backend if possible. However, maybe this is unavoidable (or inadvisable) when using Azure Notification Hubs. That is really the central issue I am raising with this question.
The tutorial linked below shows an approach to register and receive notifications using a Xamarin forms app which is dependent on the Azure Mobile Services backend.
https://azure.microsoft.com/en-us/documentation/articles/app-service-mobile-xamarin-forms-get-started-push/
Whereas, this second tutorial shows an approach where the mobile client app (developed using Xamarin Android) registers to the Google messaging cloud rather than Azure notification hubs).
https://developer.xamarin.com/guides/android/application_fundamentals/notifications/remote_notifications_in_android/
Where I am coming unstuck is trying to figure out which is the right approach to enabling a Xamarin forms app to register and receive notifications which are pushed via Azure notification hub.
Will the approach of the 2nd tutorial (device registers for push notifications directly with Google cloud) work when notifications are sent via Azure Notification Hubs (configured with the correct API credentials for google messaging) or am I missing something ?
In other words am I making life difficult for myself by adopting the 2nd approach ?
My focus is on developing using Xamarin forms but with Android as the lead device type for initial prototype , proof of concept and then moving on to iOS and Windows Universal 10 at a later stage.
My 2 cents.
The whole point of using Azure Notification Hubs is to abstract away the need to handle Google and iOS push notification systems. Since you are planning to eventually do both iOS and Android, I would suggest registering through Azure.
Azure will handle the iOS feedback channel when registering devices which is nice and you are able to use message templates in Azure which means you can send a single notification hub message and it will be automatically transformed into a message that Android's GCM expects to see and another message that iOS' APNS expects to receive (they both expect different notification message formats).
Since it sounds like no matter which option you choose, you are planning to send messages through Azure, you are going to have to deal with the same Notification Hub limitations, meaning you do not gain much from registering directly through the native server interfaces (limitations in the number of tags a message can have is what I am mainly thinking about).
There is also a library for both platforms if you want to register directly from the device or you can, like we did, have the mobile device call one of your own backend server which can do some initial processing before sending the registration request to azure for the device.
*Edit: Though if you just want to get something working, I do not see a problem with registering directly to GCM and then later on switching out the code to do it through Azure later on.
I am trying to create a web application which receives notification from Azure Notification Hub.
Everywhere I only see mobile devices registering for notifications sent from back-end.
I want this web application to be used in browser and receives notification from Azure Notification Hub sent from back-end.
Thanks
Nope.
Azure Notification Hubs are exclusively for push notifications for mobile platforms.
If you want a code to receive a notification you shall take a look at Azure Service Bus Queues, Topics and Subscriptions. Then decide which of all to use.
It is mentioned in Notification Hubs FAQ (Do you support text message, email, or web notifications?) that you can do it by using SignalR on top of Notification Hubs :
Customers can implement this feature using SignalR on top of the supported server-side platforms.
As mentioned in previous answers Azure's Notification Hubs only work for mobile devices because behind the scenes it interacts with the various mobile platforms' push notification services such as the Apple Push Notification Service (APNS). It is not sending the notifications directly to the client. Since there are no push notification services for websites you need another technology.
Azure offers Service Bus Queues which would work, but it also offers SignalR which is probably the best solution in your case, and in fact the one I plan to use for a web frontend I am building for my service. SignalR handles all the low level connection details for you, i.e. it takes care of using the optimal protocol for the browser you are running in which is no mean task! It's fast, scalable and surprisingly easy to implement.
this question could have been asked frequently but i really want to know the difference .I am totally confused .
I am planning to buy and use/implement Windows Azure for Push Notifications ,Toast Notifications and Live Tiles for my game . I want to know which one is better ? Azure Mobile Services or Notification Hub .
These two services sound the same , in the sense that they provide all the services related to push notifications . Though Azure Mobile services has some extra features like Data storage , user authentication etc ..
I also want to know whether i can use Notification Hub service via Azure Mobile services.
Like if i had bought/paid for Windows Azure Mobile Services can i use/access Notifications Hub too.
The reason i want to use Windows Azure for my game :
I want to send a toast notification to the user/device when another
user/device sends a challenge or Request (like for eg:
an option called "Challenge a friend").
Push Notifications to the Live Tile regarding "leaderboards" and
personal highscore .The Game Mode last played etc .
Make these facilities available to All platforms .(Initally i am implementing on WP8 with Live tiles).
I am also aware of the Free Trial available but i am worried about the risk of being charged.
Check the features/pricing of both on the official pages:
Azure Mobile Services
Azure Mobile Services provides a scalable cloud backend for building
Windows Store, Windows Phone, Apple iOS, Android, and HTML/JavaScript
applications. Store data in the cloud, authenticate users, and send
push notifications to your application within minutes.
Azure Notification Hubs
Azure Notification Hubs provides a highly scalable, cross-platform
push notification infrastructure that enables you to either broadcast
push notifications to millions of users at once or tailor
notifications to individual users. You can use Notification Hubs with
any connected mobile application—whether it’s built on Azure Virtual
Machines, Cloud Services, Web Sites, or Mobile Services.
Use Azure Mobile Services if you need a server backend for your app, where you store data and implement server side logic. Azure Notification Hubs is included, which you can use for push notifications.
Use only Azure Notification Hubs if you don't need server side data or logic or are already using another service for this and only need a service to send push notifications.
They have both FREE tiers which could fit your needs in the beginning.
Also, there is already a similar question here...