In the introductory post I told you roughly what Mobile Engagement is and next how to generate useful information based on user behavior. However, if there is one feature that names the service is Reach. This tab allows you to create announcements and notifications, plus get a report to understand the user behavior.
Before you start creating announcements is necessary to make some modifications in your code. It is not much code but you just have to modify the file App.xaml.cs methods Application_Launching and Application_Activated and add the call EngagementReach.Instance.Init(); and EngagementReach.Instance.OnActivated(e); respectively.
You should also make sure that you have enabled ID_CAP_PUSH_NOTIFICATION to receive push notifications.
When you installed the Nuget package in the first post of Azure Mobile Engagement, It was also added a series of images that help show notifications within the application. You can find them within the Resources folder.

You’re ready to create a new announcement. To do this, click on the Engage button on the Azure portal and select the Reach tab on the Mobile Engagement portal. To create a new notification you must click on the link New announcement and fill out a form that I will explain you step by step.

The form consists of six sections:
- Campaign Name and category: there are two mandatory fields that allow us to identify this particular campaign.
- Notification: indicates when to send the notification: At any time, when the user is using the application or when he/she is performing a particular activity (for more information about activities you can have a look at Analytics and Monitor post). Also you need to choose a title for the notification and a body message. Finally, we can choose if we want the application icon in the notification, and if we allow the option of discarding.
- Content: allows us to choose the type of announcement: only notification, notification + text or notification + rich text (HTML). You must also choose an action via URL. Any address that can be interpreted by the operating system can be used. There is more information in the question icon. Depending on the type you choose a text box will be enabled. In this example, in order to keep it simple I will use the first option (Notification only).
- Audience: one of the most powerful features of Mobile Engagement is we can be very selective with users that are targeted for our notifications. We may use technical criteria, location, relative to a survey, a subset of users, older, newer, etcetera. Once you have chosen the criterion you can calculate the number of users who receive this notification via the Simulate button.
- Time frame:we can choose a start and an end to the campaign (you can also leave it in Manual) and time zone.
- Test: if you want, it is possible to register devices for testing. To register a device, simply retrieve the ID associated with it through EngagementAgent.Instance.GetDeviceId() (in the future this registration can be made directly using the SDK for Mobile Engagement).
Once completed the form click on the Create button to save the announcement. If you did not choose a start date and end you must activate it manually via the Activate button at the top. This action automatically start throwing notifications to all users within the established criteria.
In the section Statistics you will see what will be the result of the campaign launched.
Cheers!