Click here to Skip to main content
Click here to Skip to main content
Go to top

Amber Alerts in the Cloud

, 29 Apr 2013
Rate this:
Please Sign up or sign in to vote.
Putting the alerts in your hands through the use of Azure

Please note

This article is an entry in our Windows Azure Developer Challenge. Articles in this sub-section are not required to be full articles so care should be taken when voting. Create your free Azure Trial Account to Enter the Challenge.

Introduction

Amber Alerts is a system developed in 1996 for alerting the public via television, digital signage, radio and recently some internet outlets of child abductions or missing children in the U.S. . To date, 9 other countries have adopted a similar system, however the speed at which the notifications get to the public seems antiquated or behind the times.

Late last year, I developed Find Amber for Windows Phone which used Azure features as a development practice. The app has seen some success and there is a need to take it to the next level in order to increase visibility of these important alerts.

Current Architecture

 Find Amber, as mentioned above, does take advantage of Azure now in the way of 2 worker roles, a web role and SQL. 

The worker roles are responsible for downloading the data and sending notifications to the devices. ASP.NET Web API runs on the web roles and serves the RESTful API for the Windows Phone client, while all the data resides in the SQL Azure instance.

A pretty solid offering, but the maintenance of the multiple roles has been a task for updates and there are platforms I want to move the app to. This is where Azure Mobile Services and Azure Websites comes in.

Future Architecture

Mobile Services will be put in place to serve as the RESTful API and as a part of that it also offers Scheduler by which automated scripts will be run to call a node.js service running on  a Mobile Website to aggregate and load the data.

When a new record is added, push notifications will be sent to the client applications using the PUSH feature of Mobile Services.

Clients supported:

  • Windows Phone 7, 8
  • Windows 8
  • iOS
  • Android
  • Facebook Application
  • ASP.NET Single Page Application

Android and iOS clients will be built using Icenium, a cross platform development tool from Telerik which runs PhoneGap under the covers.

All of the applications will take full advantage of the REST API provided by Mobile Services, Push Notifications, Social sharing (where applicable).

 

Points of Interest

Some takeaways of the project I would like for the readers/watchers here is to show not only how to take advantage of a cloud based application, but also see how building a reusable API allows for any application to be put on to any mobile OS or web with little effort.

Why Azure?

The application already uses Azure, but why?  Scalability, performance! In the event of a tragedy I see that solution like natural disasters, child abductions, or some other horrific event.  We as a society need to be able to get the notifications to the public as fast as possible without delay or excuse of "too much traffic".

With a solution like I am proposing here, digital signage could even be added to take advantage of the REST API.  With a simple slider, the back scales as we need to meet the demand.  We would never have the excuse of we were over loaded in the server room.  Save a life, move the slider!


History

  04/29/2013 - Project Scope / Description

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

Share

About the Author

Shayne P Boyer
Architect Boyer Consulting Services
United States United States
Shayne Boyer aka TattooCoder, has been developing Microsoft based solutions for the last 15 years. Currently working as a Solutions Architect focused on Services Oriented Architecture and in his spare time runs the Orlando Windows Phone and Windows 8 User Group. He is a passionate developer and loves to talk about his craft, teach and also learn from others.
 
- MCSD .NET
- Telerik MVP
- Orlando Windows Phone & Metro User Group Founder (@OrlandoWPUG)
- INETA Speaker
- DZone.com MVB
Follow on   Twitter   Google+

Comments and Discussions

 
GeneralMy vote of 5 PinmemberJV999928-Nov-13 21:53 
QuestionMany potential child protection possibilities Pinmembermielniczuk6-May-13 9:33 
GeneralMy vote of 5 PinmemberCyclingFoodmanPA6-May-13 7:14 
GeneralMy vote of 5 PinprofessionalKarlkim30-Apr-13 18:23 
GeneralGreat App Idea PinprofessionalHTaylor29-Apr-13 7:55 
GeneralMy vote of 5 Pinmemberazarc329-Apr-13 7:38 
GeneralMy vote of 5 Pinmemberroscler29-Apr-13 7:19 
QuestionMy vote of 5 PinmemberArchieCoder29-Apr-13 7:19 
Good luck bringing your nice app to the next level!
 
ArchieCoder
GeneralMy vote of 5 PinmemberShayne P Boyer29-Apr-13 7:18 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Mobile
Web03 | 2.8.140905.1 | Last Updated 29 Apr 2013
Article Copyright 2013 by Shayne P Boyer
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid