
Unlike many companies that deal with notifications, we try to cover as many platforms as possible. Therefore, we have the most extensive experience of what alerts their advantages and disadvantages are, and we decided to share our experience with you.
We will talk about how different types of notifications on Chrome, Android, Safari, Firefox, iOS look. Which ones we use, which ones we can use and not much about how it works.
')
By the way, you can try almost all types
on our website.Alert methods
- Long-polling, fast-polling, periodic updates, etc. You just hold on to the fool. This is not a push, it is a pool (that is, vice versa) after certain periods of time and the arrival of a notice when something changes. This works on many sites, for example, the Web version of VKontakte generally keeps only long-polling - long requests
- Web-socket. This is already a push technology that allows you to keep the connection and exchange data on both sides through it. In this case, the server can already send you something new - and you react to it. Web sockets at the moment can work either in the active tab of the browser, or in addition.
- Push API. This is a new technology that works either in conjunction with the Service Worker (the background process of the site), or as a safari - only pretends to be a Push API, but in reality its bicycle. When using this protocol, a push service built into the browser is used, for example, GCM in Chrome (Google Cloud Messaging) it allows the page to create a worker and get a REGID to send push notifications. This method works on the site and through the addition.
In all three cases, you should have a website, although if you create your add-on and send alerts via GCM with a payload, you can easily do without a website, but it is quite expensive, and in any case you will also need scripts on your side use google's api
However, we in PushAll, providing an intermediate service, can give you the opportunity to notify the audience without having a website at all, for example from the VKontakte group, or facebook or not at all without any other sites - just gather a team of like-minded people and notify it about important events. You can also create a feed from another site that you visit using RSS integration.
Below we describe what are the notifications on different platforms.
What they are in Chrome on the computer
Few visual differences.

1 is done through the standard Notification API, the second is done through the wrapper for the Service Worker. These alerts do not disappear - but image smoothing is not applied to them on many platforms. (you can notice the quality of the pictures)
3rd is made through Rich Notification. These alerts come through extensions, they may contain additional information, buttons, an image under the notification. More opportunities - but they are automatically hidden.

Also, when using the extension (Rich Notification) - it can stretch the image on the whole block - web pushes do not do this.
And in addition you can do so:

This is especially important because Soon there will not be a "bell" in chrome.
Alerts on Android

1. Alert came through Telegram
Benefits
- no need to put extra applications
- browser independent
- built-in notification history and device management (pause / start)
disadvantages
- No channel / notification icon
- Need more action to open the alert link
- If there are several notifications, you will have to search from the dialog
- Dialog bot prevents to communicate with people
- No title or text selected
- Unable to track exact reading or erasing
Here's how it looks on a smart watch (Moto 360)

2. Alerts via Push API (same as on computer Chrome)
Benefits
- No need to put extra applications
- There is an icon, albeit of poor quality
- You can track the statistics of reception, erasing, opening.
- When you click the link immediately opens, in contrast to the telegraph
disadvantages
- Blurred icon on smartwatch (ugly)
- Notifications come on behalf of chrome and there is a chrome icon instead of a system icon
- Extra buttons like site settings, etc. although this is the only place where you can unsubscribe from this type of alerts, there is no such thing on the computer version
- When the Service-worker is asleep, and then begins to “download pushes”, this results in the message “The site is updated in the background.” This can also happen if there is a tracking system.
- Cannot cache images - increased traffic consumption
- You must use chrome as your main browser.
- You can not adjust the vibration or sound for alerts, it always vibrates!
- Users do not know how to turn them off, at first everything is fine, but when it comes to 10-20 alerts every day ... a panic begins. Just read the comments at the very end of this article.

3. Alerts through the full application
Benefits
- Clear picture
- The fastest delivery of the above methods, notifications come even with the weakest signal!
- You can adjust the sound, vibration, flashing LED
- Full smart watch support - clear images on them
- Ability to work with third-party browsers
- Support for image caching, which greatly saves traffic
- More customization options
disadvantages
- It is necessary to install and update the application, although it weighs 1 megabyte.


IOS alerts
In general, the same telegram is not much different from the solution on android.

And native application (beta, new version in development):

From the flaws of alerts on iOS
- Cannot add icon
- You can not track the reception of the alert
- Only Alerts can be sent. in fact, just a line of text and address to go
- After the click, you can track the click, because already processing through application code
- Alert size is severely limited.
- The user can not see more than 10 incoming alerts, that is, you need to make a crutch inside the application to implement the display of the story.
- Of course, no more alerts can be received on iOS. Push API iOS does not support.
Safari Alerts
We have so far tested only standard Notification API on web sockets.
It looks like this:

However, native notifications via APNS, it seems, will have another site icon, and so little will be different.
At the same time, it is necessary to understand that through APNS we also do not have the ability to track the arrival of an alert until the user clicks on it. Moreover, judging by the documentation, it is impossible to configure any working code for various actions.
Firefox Alerts

Firefox does not have its own push API service (for the time being), so we will use our socket-based service. However, FF has a lot of alert issues.
Benefits
- Notifications look clean, there is no "Site updated", there is no site address
- It is already good that they exist
disadvantages
- Notifications disappear after 4 seconds into non-existence! And it can not be changed
- There is an advantage and a disadvantage - it is unclear where the notification comes from, it is not clear how to disable it.
The most important thing in alerts - do not bother. Before subscribing, explain how to unsubscribe, no need to throw a request to turn on alerts in the face.
And it will be like here after a couple of weeks - people could not unsubscribe, just did not know how.
SocketPush
It works well, judging by the tests. For some reason, more people voted negatively than they tested at all (do not be so!)
But we will redo a bit of the algorithm, then delete all the devices added by SocketPush. Turning on will work even when the device is active (in the enabled state), that is, it will be possible to open a tab in the same safari or FF and receive pushy in 2-3 days.
And yes, it turns out EDGE isn't even supported by the Notification API.