Windows Push Notification Service
Overview of the WNS architecture.
|Target platform(s)||Windows Phone 8.1, Windows 8, Windows 8.1, Windows 10, Windows 10 Mobile|
Windows Push Notification Service (commonly referred to as Windows Notification Service or WNS) is a notification service developed by Microsoft for all devices running Microsoft Windows platforms. It allows for developers to send push data ("toast" and "tile" updates) to Windows and Universal Windows Platform applications which implement the feature. Designed as a successor to the Microsoft Push Notification Service, it was first supported on Windows 8 and subsequently on Windows Phone 8.1 upon its release.
Design and compatibility
The Windows Push Notification Service (WNS) was designed as a successor to the Microsoft Push Notification Service (MPNS), which was only supported natively on the Windows Phone 8 Operating System. Developers can still use the MPNS on apps that are installed on newer versions of Windows Mobile (Windows Phone 8 or Windows Phone 8.1), but only if the Windows application was already registered to use the MPNS and has been converted to a Microsoft Silverlight application and modified to re-target the new platform.
In 2015, Microsoft announced that the WNS would be expanded to utilize the Universal Windows Platform architecture, allowing for push data to be sent to Windows 10, Windows 10 Mobile, Xbox, as well as other supported platforms using universal API calls and POST requests.
During the 2015 Build keynote, Microsoft announced a Universal Windows Platform bridge that would allow Android and iOS software to be ported to Windows 10 Mobile and published to the Windows Store. In August 2015, A version of the Microsoft Android bridge toolset was reported to be leaked and available on the internet along with its documentation. The leaked toolset required developers to register and use the WNS to send notification data to ported applications, and would not allow for Google Cloud Messaging to be used instead. Microsoft later discontinued the Android bridge project in favor of continuing support for iOS application porting instead.
During the 2016 Build keynote, Microsoft announced an update to the WNS and the Windows 10 Operating System that will allow for Android and iOS devices to forward push notifications received to Windows 10 to be viewed and discarded.
The architecture of the Windows Push Notification Service is similar to that of its predecessor, in that it consists of servers and interfaces that generate, maintain, store, and authenticate unique identifiers (called Channel URI Identifiers) for all devices that register to use the service. When a device enrolls to receive data and notification information using the WNS, it first sends a device registration request to the WNS network. The WNS network acknowledges the request, and responds with the device's unique Channel URI Identifier. Typically, the device will then send its identifier to a server owned by the developer so that it can be stored and used for sending notifications. When the app developer wishes to transmit a notification or other WNS data to the device, it will transmit a POST request to the WNS network. The network will acknowledge and authenticate the request. If the authentication succeeds, the data to be transmitted is enqueued and then sent to the device from the WNS network using the Channel URI Identifier.
With Windows 10, while connected to a VPN that disallows Split Tunneling, the WpnUserService_[unique ID] process bypasses the tunnel, connecting directly to Microsoft. This behavior will reveal the real IP address of the host. This can be observed with the Windows Resource Monitor.
- "Windows 8 push notifications". June 3, 2012. Retrieved May 28, 2016.
- "Windows Push Notification Services (WNS) overview (Windows Runtime apps)". Microsoft. Retrieved November 29, 2015.
- "Choosing MPNS or WNS for a Windows Phone Silverlight 8.1 app". Microsoft. Retrieved November 4, 2015.
- Gallo, Kevin (March 2, 2015). "A first look at the Windows 10 universal app platform". Microsoft. Retrieved November 29, 2015.
- Hachman, Mark (August 6, 2015). "Microsoft releases iOS-to-Windows app maker Windows Bridge to open source". PC World. IDG. Retrieved October 9, 2015.
- Saran, Cliff (August 18, 2015). "Android for Windows Mobile tools leaked on web". Computer Weekly. Retrieved May 28, 2016.
- Jo Foley, Mary (February 25, 2016). "Microsoft: Our Android Windows 10 bridge is dead, but iOS, Win32 ones moving ahead". ZDNet. Retrieved February 26, 2016.
- Ligas, Nicola (April 1, 2016). "Windows 10 will support notifications from Android (ah yes, even Windows 10 Mobile)". Smartworld.it. Retrieved May 28, 2016.
- "Windows Push Notification Services (WNS) overview". Microsoft. May 4, 2016. Retrieved May 28, 2016.
- Snoei, Ton. "Windows Phone 8.1 Universal App Push Notifications (WNS) – Part 1". Snoei.net. Retrieved May 28, 2016.