A push notification is a peculiar pop-up on a screen of a mobile device which is sent only to those users who approved receiving the standard messages. Notification offers a specific type of information.
Using push notification in a system of a mobile device is based on a fact that this technology doesn’t need direct interaction of the app to study the text of the notification.
Such a function allows a mobile product to receive and show incoming text messages even when a screen of a device is blocked and a utility which sends the messages is closed. The messages are commonly shown in a drop panel (so-called “shade”) and also on a block screen.
Why are push notifications so popular?
Push notifications became so popular when Apple corporation had officially launched the service Apple Push Notification Service (APNS) to optimize the transmission of text messages on mobile devices which work on the basis of iOS 3. In some time, the Apple developers delivered the components of push notifications for OS X and Safari web browser.
Why should we use push notifications?
- They have a high rate of clickability. All web campaigns have a high rate of CTR, attract the customers’ attention to any website;
- They allow offline mailing. If a user of a mobile application is offline when he/she receives a push notification, he/she will have a possibility to read it when the Internet connection will be on;
- Their work is supported by all popular browsers. Opera, Google Chrome, Mozilla Firefox, and many other mobile browsers allow to quickly and easily get push notifications with any content;
- They don’t contain spam. Such messages exclude sending any kind of spam since the clients of mobile product don’t need to share their personal data. Right after the incoming request has been verified, a unique ID, which helps to send any push notification, will be given to a client;
- It allows increasing the sales, engagement, loyalty to a product (service). The practice to permanently use the push notifications allows to quickly and qualitatively inform the users about the current state of order, the appearance of new media content, last news updates and also, new sales and promotions.
Types of push-notification services
Today there are 3 types of services to quickly send the push notifications to mobile devices:
- Above-mentioned Apple Push Notification Service (APNS) – was primarily available only for iPhone but in some time, its functionality became available for Safari browser and OS X;
- Android Cloud to Device Messaging (C2DM) – the product was created in 2008 and replaced by Google Cloud Messaging (GCM) in 2012. This system helps to configure the sending of messages to the products developed on the basis of Chrome components.
- Microsoft Push Notification (MPNS) is a special service by Microsoft corporation. They managed to configure the process of sending push notifications only from the 7th version of Windows Phone OS.
Types of push notifications for iOS
The components of iOS allow 3 types of push notifications:
- Audio – an audio signal is made right after the notification has been received:
- Audio/banners – a banner with an audio signal is shown. You can study the content of such notification by dropping the shade out;
- Badges – showing a digit or a unique symbol next to the icon of the mobile application.
Types of push notifications for Windows Phone 8
The same as iOS, Windows Phone 8 OS has three types of notifications:
- Toast – incoming data are shown during 10-15 seconds at the top of the screen. Such notification is clickable.
- Tile is shown in the form of a number of digits on the icon of the utility on a screen;
- Raw – a possibility to send the data in any form to a utility. It’s often used only by game services and applications.
And Android OS is the freest in this way.
The architecture of this mobile OS doesn’t contain a classic system of showing the notifications to a client on a screen. All the data are directly exported to the application whereby there are variations to transmit the information of any content.
And when the app receives the data, it will show a classic notification on a screen or it will show a banner in the same way as iOS.
But still, taking into account the fact that Android OS is the most open and flexible system, push notifications can be configured arbitrarily.
Push notifications for web browsers
The developers of web content have recently received a good possibility to create and send numerous push notifications with the help of web browsers to local computers of the users: in above-mentioned Google Chrome and Safari. The above-mentioned Apple Push Notification Service and Android Cloud to Device Messaging are used for sending such messages.
From a technical point of view, push notifications for browsers are different from the ones for mobile devices since they are sent directly from a website.
Clients receive the push messages in a form of short notifications which pop up over all active windows in the corner of the screen right after they have been received.
Test methods of checking a push notification
The most popular way to build the method of testing the push notifications in a system of a mobile device is testing the sending and receiving of a message on a necessary device.
Of course, there are other classic test checks:
- Test that a notification is successfully received when a mobile application has been launched;
- Test that a notification is successfully received when a mobile application has not been launched;
- Test that a notification is successfully received when a mobile app has been launched and dropped;
- Test that a notification is successfully received while the application has started working;
- Test that a notification is successfully received while you are playing a game;
- Test that a notification is successfully received when another application is active;
- Test that a notification is successfully received when a user is in different time zone;
- If a push notification is clickable, you should test that a valid window is opened after clicking;
- Test the sound, blinking, and vibration while a notification is being received;
- Test the entry point to a mobile application. For example, if a client opens IM notification (Skype, Viber), then a mini-chat with the last incoming message, not a basic screen of the application (a list of saved contacts ), is shown;
- Test the absence of a duplicate notification using different triggers;
- Test the displaying of a push notification on a mobile application when the application has been opened;
- Test the launching of the application, which started in a background mode, after clicking on the notification and the system of screen unblocking;
- Test the displaying of a graphical banner after receiving a notification on unblocked screen;
- Test the work of the application right after clicking on the notifications banner;
- Test the displaying of a notification in a shade of messages when a client doesn’t click on the notification banner;
- Test the launching of a utility after clicking on a notification in a shade of messages;
- Test the process of updating a number of notifications on the icon of the application after clicking on a banner;
- Test a number of unread messages on the icon of the application when a client has clicked and read a message;
- Be sure that the title of notification is the same as the created message;
- Check the language of the message;
- Check that a notification disappears in a shade of messages right after a client has opened it.
An example of testing the push notifications on the basis of APNS service
Further, we will thoroughly analyze the principle of work of sending the push notifications to iOS mobile operating system.
The whole process consists of 5 incremental steps:
- The process of registering to receive to push notifications on iOS;
- Requesting a device token on the APNS server;
- Receiving a device token;
- Sending a device token to a server of a developer;
- Sending a push notification to the APNS server;
- Sending a push notification to a mobile application.
Note! To receive a push notification on a screen of a test device, the application mustn’t be switched on –a device operating system serves as a special assistant right to have such an advantage.
By the way, such an approach allows to greatly save a charge of a battery and mobile traffic.
Connecting interim services to tests: why do we need them?
There are many subtleties in the method of sending a push notification to different mobile operating systems.
For example, if a mobile product has been deleted by a client, then all services report to what mobile devices a notification shouldn’t be sent anymore.
The process is performed by sending the tokens of these devices to a server.
But if sending of ID is instantly made in GCM, Apple service has a special feedback server and a list of such tokens has been taken from a server once in a day. And interim services and systems are needed right for performing daily tasks.
While any cross-platform application is being developed, such an interim service is commonly integrated into its structure.
Let’s imagine that the application X contains a particular X Cloud Services (XCS) which is a special channel for notifications. Such a channel can easily unite a few devices, serving as a unique identifier, whose structure consists of digits and letters. XCS allows sending a push notification through the device token too.
So this interim service has the task to update the data about devices and directly interacts with APNS and GCM.
Graphically, it looks like:
- A key which is given by XCS is integrated into the product’s system while building a mobile product;
- Any push notification is a dictionary of JSON format which consists of a device token, some personal information, and necessary payload. The payload is the information sent to a screen of a mobile device;
- A server which uses the keys: – receives a list of channels and devices which are subscribed to the channel:- subscribes (unsubscribes) a device to the chosen channels: – sends the push notifications to all devices through tokens or device channels;
- Devices, depending on their OS, receive incoming notifications from APNS or GCM.
The ways to improve the push notifications
What should we pay our attention to while developing and testing the push notifications:
- The form (method) of a notification. It’s better to instantly give useful information, right from the first lines of a title. It’s a good practice to use deep linking (the logic of building a map of internal links on a particular page of a website);
- Flexible configuration. Personalized mailing is the success of any commerce. The more possibilities of independent configuration of receiving the notifications a client has, the more interesting for him/her is to interact with your product;
- Client’s interest is above all. “Tell” a client what he/she would like to hear, not what you want to tell him/her. Gather the information which is interesting for a client. Analytics is quite a useful thing;
- Statistics. It should be permanently gathered to know what time is the best for mailing, what types of notifications are relevant, how often the clients visit your application after receiving a push notification;
- Tests. Use different forms of subscription, texts of messages, date and time of mailing and overall push strategy. Permanently view the reviews on the net – this will allow receiving much necessary information which will improve the mailing.
Push notifications – it’s a very useful and necessary tool, widely used in many web systems and components. Types of push notifications should concern the interests and wishes of the clients and not be limited to a classic choosing the methods of their receiving.
Such push notifications work on different mobile operating systems and it’s quite a good way to inform a client about important messages, events, actions, etc. It’s very important to test them while creating a really useful and necessary product (an end-user will have a possibility to open and view the messages not needing to open the mobile application).