Quickstart: Setting up periodic notifications (HTML)
This topic shows you how to launch periodic polling of a URL to get updated content for your app's tile.
We recommend that all polled notifications make use of the X-WNS-Expires HTTP response header to set an explicit expiration time. For more information on setting X-WNS-Expires, see TileUpdater.StartPeriodicUpdate or TileUpdater.StartPeriodicUpdateBatch.
Prerequisites
- A working knowledge of tile and notification terms and concepts. For more information, see Tiles, Badges, and Notifications.
- An understanding of periodic (polling) notification concepts. For more information, see Periodic notification overview
- The ability to create a basic Windows Store app with JavaScript using Windows Runtime APIs. For more information, see Create your first Windows Store app using JavaScript.
- A web service to host the tile notification content.
Instructions
1. Create or identify a web service to host the tile's XML content
At a specified interval, Windows will poll the specified web service for updated tile content for your app. The web service must support HTTP. For testing, you can also set up a web service, such as Microsoft Internet Information Services (IIS) on your local machine to test the XML.
2. Place your tile content's XML file in a web-accessible location
Your web service will host the tile XML content. To get started, host the tile XML shown here on your web site. Save this content as a file named Tile.xml and place the file on the server in a web-accessible location (for example, http://www.fabrikam.com/tile.xml). The contents of the XML document must use a UTF-8 encoding and conform to the tile schema. You should update this XML at least as frequently as the specified polling recurrence interval.
<tile> <visual version="2"> <binding template="TileSquare150x150Text04" fallback="TileSquareText04"> <text id="1">Hello world!</text> </binding> </visual> </tile>
3. Begin the periodic updates (single URL)
This example shows how to start polling a single URL to provide new content for the tile once an hour. This code uses a previously defined variable called polledUrl, which is a string that specifies the URL to be polled.
var notifications = Windows.UI.Notifications; var recurrence = notifications.PeriodicUpdateRecurrence.hour; var url = new Windows.Foundation.Uri(polledUrl); notifications.TileUpdateManager.createTileUpdaterForApplication().startPeriodicUpdate(url, recurrence);
4. Begin the periodic updates (multiple URLs)
As an alternative to the previous step, Windows can poll up to five different URLs to supply a set of content that cycles through the tile's notification queue.
This example shows how to poll multiple URLs for new content once an hour. First, you must enable the notification queue if you have not enabled it previously. Note that the call to enableNotificationQueue should be made only one time after the user installs the app or creates a secondary tile. This example code uses a previously defined variable called urisToPoll, which is an array of Windows.Foundation.Uri objects.
var notifications = Windows.UI.Notifications; var recurrence = notifications.PeriodicUpdateRecurrence.hour; notifications.TileUpdateManager.createTileUpdaterForApplication().enableNotificationQueue(true); notifications.TileUpdateManager.createTileUpdaterForApplication().startPeriodicUpdateBatch(urisToPoll, recurrence);
Summary and next steps
This Quickstart walked you through the setup for a periodic tile notification.The same technique can be used on badges.Related topics
- Push and Periodic Notifications sample
- Guidelines for periodic notifications
- How to use the notification queue with local notifications