Wednesday, 28 January 2015

Beginner's Resources for Cordova and PhoneGap - including Self-Defense for PhoneGap Developers

If you're planning to work with Apache Cordova or PhoneGap and you have a web development background, take a look at this highly informative (and very entertaining) presentation from Lyza Danger Gardner of Cloud Four.

It's a high octane dash through the perils and pitfalls of PhoneGap development, and what you can do to avoid them..,or at least anticipate them and brace for impact.

I came across this presentation via a mention in John M. Wargo's Apache Cordova 3 Programming, which is also worth checking out if you're looking to start your Cordova journey the right way.

Wednesday, 7 January 2015

Robin brings Beacons to your Batcave (and Boardroom)

I've recently been working on a proof of concept solution using beacons, the idea being that a user can view availability for nearby rooms and be presented with assets relevant to whichever meeting they happen to be attending. My choice of Cordova for the mobile client app and the fact that I'm targeting an MS Exchange 2010 server introduced some interesting technical issues that I'm still wrestling with.

I stumbled across a SaaS solution called Robin that could give me much of what I need via this post on Beekn,net. As well as the providing the room reservation functionality I want Robin also offers an API that can be used to extend the core offering where needed. Users download their choice of an iOS or Android app to access Robin's functionality.

Robin allows an admin user to create one or more "spaces", each of which would typically represent a meeting room or some other shared resource. A space can be associated with a calendar, Google Calendar is supported at the time of writing, though it seems reasonable to expect that at least MS Exchange and Office 365 will follow.

Things get really interesting when a beacon is added to a space, as the Robin client polls for beacons in an attempt to locate nearby spaces. When a beacon is discovered to be within range the app contacts Robin's back end, tagging the user as within that space and retrieving details of the space for display within the client app.

If the client app stays within range of a space's beacon for 5 minutes, Robin automatically adds a 20 minute reservation to whichever Calendar is associated with that space. This seems to work well; Robin has been happily creating Google Calendar entries and I've seen no strange behaviour as a result of my running the Robin iOS and Android apps simultaneously.

Robin recommend Estimote beacons, which seems a solid choice. A couple of months ago I plugged a Radius Networks RadBeacon into a spare USB slot on each of our video conferencing systems in the UK office, so we already have the required beacon infrastructure in place.

It seems you're tied in to the UUID Robin generates for you (I assume this is to comply with Apple's App Store policy on pre-configured UUIDs) so bear in mind you'll need access to beacons that allow you to configure this attribute, Major and Minor values are user configurable within Robin.  

Pricing essentially works out at 10 US Dollars per month per space, though there are bands applied in an attempt to model typical usage scenarios - you'll find more details here.

I'm looking forward to further evaluating Robin over the next few days, my experiences have been positive so far and I'm seldom happier than when picking through a new API. I'll let you know how I get on.