SlideShare a Scribd company logo
Getting up close and personal with
IoT Nearables
Jen Looper
Jen Looper
Developer Advocate, Telerik
http://www.ladeezfirstmedia.com
@jenlooper
What’s a beacon?
More like this
Except much more precise: indoor location FTW
Use several beacons to triangulate your location in a room
Beacons might feature:
• A bit of memory
• Accelerometer
• Temperature sensor
• Bluetooth (Smart, or BLE)
• Long-lived battery
• Gecko-style sticky backing
Bluetooth signal
• Beacons broadcast using bluetooth
• Find them between two inches and 230 feet distance
• Invisible underwater
Your phone picks up a signal (“advertising packet”) and your app
processes it
• Estimates distance
• Places phone in a context
• Measures signal strength
• Can ping 10x/second
Beacons have a unique Id
Associate this id with a product or a
call to action
And moar!
• Micro-location
• Geofence users
• Detect context changes
• Proximity marketing
• Turn-by-turn navigation
Not just for selling stuff
Kontakt.io use cases include:
• Public beacons for use by the blind
• Beacons for music festivals (Bonnaroo) to ‘heat map’ areas of
the festival and create ‘retrospective itinerary’ as a festival
souvenir for the users
• Restaurant interactions – check in, get free appetizers, etc
• Allow businesses to pay for patron parking fees in a movable
parking meter system
• ‘beaconizing’ SFO airport by offering voice-routing to visually-
empaired passengers
• Beacons in Africa – track and manage outbreaks
• Culture and tourism***
Museums!! Check out the Metropolitan
Museum’s ‘Beacon Walk’
http://bit.ly/met-museum-beacon
Uses Estimotes
with Beacondo
service
What about iBeacon?
iBeacon is a protocol created by Apple, for iOS 7 and 8 devices
Many hardware beacons leverage iBeacon technology
What types of hardware beacons are available now?
• DIY – Bluetooth dongle can be turned into a beacon
• Facebook Bluetooth Beacons
• Estimote beacons
• Kontakt.io beacons
Periculum!
Beacons can be hacked


Hacking the CES scavenger hunt
http://bit.ly/ces-hack
Estimotes have beefed up security
Manage your beacons’ UUIDs
A look at Estimote’s offering
Beacons and Stickers, $99 per pack, SDK + Cloud
The unboxing
Let’s build something!
A Civic Project - BookBeacon
Requirements:
• Create a mobile app for a public library
• Library will hide a beacon in the stacks, near a book with an ISBN
code
• Mobile app will help users find the beacon and, when found, open
barcode scanner to scan ISBN
• ISBN is used with an API to get more info about the book
Full tutorial:
http://bit.ly/beacons-appbuilder
Github repo:
https://github.com/jlooper/estimote-kendo
Create a mobile app – Telerik AppBuilder + Kendo UI Mobile
Create a hybrid mobile app project in Telerik Platform (http://platform.telerik.com)
Two views – manage beacons, scan books
/views/beacons.html
/views/scan.html
Two buttons in beacons.html: start and stop scanning for beacons
<div data-role="view" data-title="Find Featured Books" data-layout="main" data-
model="app.beaconService.viewModel">
<div class="rounded">
<div id="beaconlog">
Looking for beacons...
</div>
<div class="buttons">
<button data-role="button" class="button start" data-bind="click: start">Start
Searching</button>
<button data-role="button" class="button stop" data-bind="click: stop">Stop
Searching</button>
</div>
</div>
</div>
One button and one link in scan.html
<div data-role="view" data-title="Scan an ISBN bar code" data-layout="main" data-
model="app.beaconService.viewModel">
<div class="rounded">
You found a beacon! Now scan the ISBN bar code on the back cover to learn
more about the featured book.
<div class="buttons">
<button class="button scan">Scan a Bar Code</button>
</div>
<div id="bookinfo”></div>
</div>
</div>
Wire up the beacon scanning procedure
function onBeaconsReceived(result) {
if (result.beacons && result.beacons.length > 0) {
var msg = "<b>I found " + result.beacons.length + " beacons! Find
them and scan the ISBN codes of the books to which they are
attached to learn more about them.</b><br/>";
for (var i=0; i<result.beacons.length; i++) {
var beacon = result.beacons[i];
if(beacon.distance > 0){
msg += "<br/>";
if (beacon.color !== undefined) {
msg += "There is a <b>" + beacon.color + "</b> beacon ";
}
…
Plug in the plugins!
Use two plugins from http://plugins.telerik.com - curated Cordova plugins marketplace:
Estimote and BarcodeScanner
Integrating Barcode Scan plugin
scan: function () {
cordova.plugins.barcodeScanner.scan(
function (result) {
setTimeout(function() {
var url = 'http://www.lookupbyisbn.com/Search/Book/' + result.text
+ '/1';
var bookinfo = "<a href='#' onclick=window.open('" + url +
"','_blank')>Learn more about this book</a>";
document.getElementById('bookinfo').innerHTML = bookinfo;
}, 0);
},
function (error) {
alert("Scanning failed: " + error);
}
)
},
Test on device
Let’s build something else: Beacon Hunt
Full tutorial:
http://bit.ly/beacon-hunt
Github repo:
https://github.com/jlooper/beacon-hunt.git
Introducing Beacon Hunt!
Estimote Beacons + Plugin + AppBuilder + Telerik Backend
Services = fun app!
Beacon Hunt Requirements:
• Allow an administrator or host to create a Beacon Hunt by creating a 6-digit PIN unique to that hunt
• Enable sending this PIN to users of the app via email
• Allow invitees to the hunt to input the PIN and subscribe to a push notification channel unique to the hunt
• On push of ‘start’ button, app starts pinging for beacons
• If beacon is found, appropriately colored button is generated, and when pressed, a push notification is sent
to the members of the hunt that this color beacon has been found (“claimed”).
Building the app – Step 1 - Setup
Using Telerik Platform makes it easy
Create an account at
platform.telerik.com and create an
app
Building the app – Step 2 – Scaffold
Scaffold a basic Kendo UI Mobile app
Create a hybrid project using a blank
JavaScript template
Building the app – (quick ‘n’ dirty)
Scaffold your app using code from github
https://github.com/jlooper/beacon-hunt.git
Building the app – Step 3 – Build ‘host’ screen
A 6 digit PIN will reserve your hunt ID.
Use Telerik Backend Services to store
it.
Add Backend
Services to your
project to store data
Build Data tier for ‘host’ screen
Add push notifications and cloud data
to your app project’s backend
configuration
Create a ‘content type’ to store
HuntPINs so they will remain unique for
use as push segments
Configure push notifications
Manage your app
provisioning (takes time to
do on iOS especially!)
Keep track of push stats in
the backend
Build the app – Step 4 – Plugins!!
Plugins.telerik.com
Integrate 3 plugins:
Install Custom plugins from the Plugin
marketplace in-browser
Build the app – Step 5 – Participant screen
Type the PIN, subscribe to a push segment,
start searching, claim a beacon, send push
Build the app – Step 5 – Participant screen
Your Hunt is geofenced according to the segment you are subscribed to, per your hunt PIN which is
stored in localStorage:
var customDeviceParameters = {
"Hunt":localStorage.getItem('registeredHunt')
};
…
currentDevice.register(customDeviceParameters)
.then(function (regData) {
model._onDeviceIsSuccessfullyRegistered();
}, function (err) {
model._onPushErrorOccurred(err.message);
});
Push to a segment
Anyone signed
into the GalHnt
segment
received this
push
The user claimed
the ‘ice’ color
beacon
The final result!
Beacons are awesome.
What will you build?
Did you download Beacon Hunt? Ready to hunt for beacons?
Let’s go! Hunt PIN: CPLNOW
Thanks!
Jen Looper
Developer Advocate, Telerik
http://www.ladeezfirstmedia.com
@jenlooper

More Related Content

PPTX
Telerik AppBuilder, Estimote Beacons, and the IoT - Presentation for TelerikNEXT
PDF
Foo Café 20160407 - Beacons and PhoneGap in practice
PDF
Introduction to Beacon technology
PPT
GDG Eddystone overview Aug2016
PDF
Estimote beacons and simple Android application (full)
PDF
iBeacon and IoT: Where We're At, Where We're Going
PDF
Beacosystem Tour for GDG Dublin - Sean O Sullivan
PDF
Using iBeacons to solve real problems
Telerik AppBuilder, Estimote Beacons, and the IoT - Presentation for TelerikNEXT
Foo Café 20160407 - Beacons and PhoneGap in practice
Introduction to Beacon technology
GDG Eddystone overview Aug2016
Estimote beacons and simple Android application (full)
iBeacon and IoT: Where We're At, Where We're Going
Beacosystem Tour for GDG Dublin - Sean O Sullivan
Using iBeacons to solve real problems

Similar to Using Beacons in a Mobile App - IoT Nearables (20)

PDF
Physical web inside and out final
PDF
LocalSocial O Reilly Webcast Slides - A Tour of the Beacosystem
PDF
Ten Mindblowing Ibeacon Case Studies
PDF
Beacon Explorers: Beacon Week San Francisco
PPTX
Beacons
PDF
Evolve 2014 iBeacons and Contextual Location Awareness in iOS and Android apps
PPTX
Intro to Beacons
PDF
Clicking on the real world with iBeacon and eddystone
PPT
IBeacons and Eddystone
PDF
Building Proximity-Aware Apps with Beacons - MODEV IOT + Wearables 2014
PDF
Mobile Marketing 2015
PDF
iBeacons for Everyone, from iOS to Android - James Montemagno | FalafelCON 2014
PDF
Location Based Development Using Xamarin
PDF
Workshop: Building location-aware mobile apps with iBeacons
PDF
AltBeacon in the IoT
PDF
Beacons Explained Slideshare
PPTX
Txla beacons april 2016
PPTX
Smart Campus Technology
PDF
iBeacon – facts, architecture and applications
Physical web inside and out final
LocalSocial O Reilly Webcast Slides - A Tour of the Beacosystem
Ten Mindblowing Ibeacon Case Studies
Beacon Explorers: Beacon Week San Francisco
Beacons
Evolve 2014 iBeacons and Contextual Location Awareness in iOS and Android apps
Intro to Beacons
Clicking on the real world with iBeacon and eddystone
IBeacons and Eddystone
Building Proximity-Aware Apps with Beacons - MODEV IOT + Wearables 2014
Mobile Marketing 2015
iBeacons for Everyone, from iOS to Android - James Montemagno | FalafelCON 2014
Location Based Development Using Xamarin
Workshop: Building location-aware mobile apps with iBeacons
AltBeacon in the IoT
Beacons Explained Slideshare
Txla beacons april 2016
Smart Campus Technology
iBeacon – facts, architecture and applications
Ad

More from Jen Looper (20)

PPTX
The Last Saree: AI and Material Culture
PPTX
Computer Science for Kids: A Storytelling Approach
PPTX
Staying Fresh and Avoiding Burnout
PPTX
Game On With NativeScript
PPTX
NativeScript and Angular
PPTX
Sharing Code between Web and Mobile Apps
PDF
Beacons, Plants, Boxes
PPTX
Ignite your app development with Angular, NativeScript and Firebase
PPTX
Hackathon Slides
PPT
Swipe Left for NativeScript
PPTX
Angular 2 and NativeScript
PPTX
Crafting an Adventure: The Azure Maya Mystery
PPTX
Re-Building a Tech Community - Post Pandemic!
PPTX
Building a Tech Community in Ten Easy Steps
PPTX
Becoming a Green Developer
PPTX
Azure Static Web Apps
PPTX
Creating a Great Workshop
PPTX
The Ethics of Generative AI: A Humanist's Guide
PPTX
Zero to Hipster with the M.I.K.E. Stack
PPTX
Telerik AppBuilder Presentation for TelerikNEXT Conference
The Last Saree: AI and Material Culture
Computer Science for Kids: A Storytelling Approach
Staying Fresh and Avoiding Burnout
Game On With NativeScript
NativeScript and Angular
Sharing Code between Web and Mobile Apps
Beacons, Plants, Boxes
Ignite your app development with Angular, NativeScript and Firebase
Hackathon Slides
Swipe Left for NativeScript
Angular 2 and NativeScript
Crafting an Adventure: The Azure Maya Mystery
Re-Building a Tech Community - Post Pandemic!
Building a Tech Community in Ten Easy Steps
Becoming a Green Developer
Azure Static Web Apps
Creating a Great Workshop
The Ethics of Generative AI: A Humanist's Guide
Zero to Hipster with the M.I.K.E. Stack
Telerik AppBuilder Presentation for TelerikNEXT Conference
Ad

Recently uploaded (20)

PPTX
web development for engineering and engineering
DOCX
573137875-Attendance-Management-System-original
PPTX
Sustainable Sites - Green Building Construction
PDF
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
PPT
Project quality management in manufacturing
PDF
Well-logging-methods_new................
PPTX
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
PPTX
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
PDF
Unit I ESSENTIAL OF DIGITAL MARKETING.pdf
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PDF
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
PDF
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
PPTX
Artificial Intelligence
PPTX
Foundation to blockchain - A guide to Blockchain Tech
PDF
TFEC-4-2020-Design-Guide-for-Timber-Roof-Trusses.pdf
PDF
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
PDF
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
PPT
introduction to datamining and warehousing
PDF
Automation-in-Manufacturing-Chapter-Introduction.pdf
PDF
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026
web development for engineering and engineering
573137875-Attendance-Management-System-original
Sustainable Sites - Green Building Construction
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
Project quality management in manufacturing
Well-logging-methods_new................
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
Unit I ESSENTIAL OF DIGITAL MARKETING.pdf
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
Artificial Intelligence
Foundation to blockchain - A guide to Blockchain Tech
TFEC-4-2020-Design-Guide-for-Timber-Roof-Trusses.pdf
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
introduction to datamining and warehousing
Automation-in-Manufacturing-Chapter-Introduction.pdf
Mohammad Mahdi Farshadian CV - Prospective PhD Student 2026

Using Beacons in a Mobile App - IoT Nearables

  • 1. Getting up close and personal with IoT Nearables Jen Looper
  • 2. Jen Looper Developer Advocate, Telerik http://www.ladeezfirstmedia.com @jenlooper
  • 5. Except much more precise: indoor location FTW Use several beacons to triangulate your location in a room
  • 6. Beacons might feature: • A bit of memory • Accelerometer • Temperature sensor • Bluetooth (Smart, or BLE) • Long-lived battery • Gecko-style sticky backing
  • 7. Bluetooth signal • Beacons broadcast using bluetooth • Find them between two inches and 230 feet distance • Invisible underwater
  • 8. Your phone picks up a signal (“advertising packet”) and your app processes it • Estimates distance • Places phone in a context • Measures signal strength • Can ping 10x/second
  • 9. Beacons have a unique Id Associate this id with a product or a call to action
  • 10. And moar! • Micro-location • Geofence users • Detect context changes • Proximity marketing • Turn-by-turn navigation
  • 11. Not just for selling stuff Kontakt.io use cases include: • Public beacons for use by the blind • Beacons for music festivals (Bonnaroo) to ‘heat map’ areas of the festival and create ‘retrospective itinerary’ as a festival souvenir for the users • Restaurant interactions – check in, get free appetizers, etc • Allow businesses to pay for patron parking fees in a movable parking meter system • ‘beaconizing’ SFO airport by offering voice-routing to visually- empaired passengers • Beacons in Africa – track and manage outbreaks • Culture and tourism***
  • 12. Museums!! Check out the Metropolitan Museum’s ‘Beacon Walk’ http://bit.ly/met-museum-beacon Uses Estimotes with Beacondo service
  • 13. What about iBeacon? iBeacon is a protocol created by Apple, for iOS 7 and 8 devices Many hardware beacons leverage iBeacon technology
  • 14. What types of hardware beacons are available now? • DIY – Bluetooth dongle can be turned into a beacon • Facebook Bluetooth Beacons • Estimote beacons • Kontakt.io beacons
  • 16. Beacons can be hacked  
  • 17. Hacking the CES scavenger hunt http://bit.ly/ces-hack
  • 18. Estimotes have beefed up security Manage your beacons’ UUIDs
  • 19. A look at Estimote’s offering Beacons and Stickers, $99 per pack, SDK + Cloud
  • 22. A Civic Project - BookBeacon Requirements: • Create a mobile app for a public library • Library will hide a beacon in the stacks, near a book with an ISBN code • Mobile app will help users find the beacon and, when found, open barcode scanner to scan ISBN • ISBN is used with an API to get more info about the book
  • 24. Create a mobile app – Telerik AppBuilder + Kendo UI Mobile Create a hybrid mobile app project in Telerik Platform (http://platform.telerik.com)
  • 25. Two views – manage beacons, scan books /views/beacons.html /views/scan.html
  • 26. Two buttons in beacons.html: start and stop scanning for beacons <div data-role="view" data-title="Find Featured Books" data-layout="main" data- model="app.beaconService.viewModel"> <div class="rounded"> <div id="beaconlog"> Looking for beacons... </div> <div class="buttons"> <button data-role="button" class="button start" data-bind="click: start">Start Searching</button> <button data-role="button" class="button stop" data-bind="click: stop">Stop Searching</button> </div> </div> </div>
  • 27. One button and one link in scan.html <div data-role="view" data-title="Scan an ISBN bar code" data-layout="main" data- model="app.beaconService.viewModel"> <div class="rounded"> You found a beacon! Now scan the ISBN bar code on the back cover to learn more about the featured book. <div class="buttons"> <button class="button scan">Scan a Bar Code</button> </div> <div id="bookinfo”></div> </div> </div>
  • 28. Wire up the beacon scanning procedure function onBeaconsReceived(result) { if (result.beacons && result.beacons.length > 0) { var msg = "<b>I found " + result.beacons.length + " beacons! Find them and scan the ISBN codes of the books to which they are attached to learn more about them.</b><br/>"; for (var i=0; i<result.beacons.length; i++) { var beacon = result.beacons[i]; if(beacon.distance > 0){ msg += "<br/>"; if (beacon.color !== undefined) { msg += "There is a <b>" + beacon.color + "</b> beacon "; } …
  • 29. Plug in the plugins! Use two plugins from http://plugins.telerik.com - curated Cordova plugins marketplace: Estimote and BarcodeScanner
  • 30. Integrating Barcode Scan plugin scan: function () { cordova.plugins.barcodeScanner.scan( function (result) { setTimeout(function() { var url = 'http://www.lookupbyisbn.com/Search/Book/' + result.text + '/1'; var bookinfo = "<a href='#' onclick=window.open('" + url + "','_blank')>Learn more about this book</a>"; document.getElementById('bookinfo').innerHTML = bookinfo; }, 0); }, function (error) { alert("Scanning failed: " + error); } ) },
  • 32. Let’s build something else: Beacon Hunt
  • 35. Estimote Beacons + Plugin + AppBuilder + Telerik Backend Services = fun app!
  • 36. Beacon Hunt Requirements: • Allow an administrator or host to create a Beacon Hunt by creating a 6-digit PIN unique to that hunt • Enable sending this PIN to users of the app via email • Allow invitees to the hunt to input the PIN and subscribe to a push notification channel unique to the hunt • On push of ‘start’ button, app starts pinging for beacons • If beacon is found, appropriately colored button is generated, and when pressed, a push notification is sent to the members of the hunt that this color beacon has been found (“claimed”).
  • 37. Building the app – Step 1 - Setup Using Telerik Platform makes it easy Create an account at platform.telerik.com and create an app
  • 38. Building the app – Step 2 – Scaffold Scaffold a basic Kendo UI Mobile app Create a hybrid project using a blank JavaScript template
  • 39. Building the app – (quick ‘n’ dirty) Scaffold your app using code from github https://github.com/jlooper/beacon-hunt.git
  • 40. Building the app – Step 3 – Build ‘host’ screen A 6 digit PIN will reserve your hunt ID. Use Telerik Backend Services to store it. Add Backend Services to your project to store data
  • 41. Build Data tier for ‘host’ screen Add push notifications and cloud data to your app project’s backend configuration Create a ‘content type’ to store HuntPINs so they will remain unique for use as push segments
  • 42. Configure push notifications Manage your app provisioning (takes time to do on iOS especially!) Keep track of push stats in the backend
  • 43. Build the app – Step 4 – Plugins!! Plugins.telerik.com
  • 44. Integrate 3 plugins: Install Custom plugins from the Plugin marketplace in-browser
  • 45. Build the app – Step 5 – Participant screen Type the PIN, subscribe to a push segment, start searching, claim a beacon, send push
  • 46. Build the app – Step 5 – Participant screen Your Hunt is geofenced according to the segment you are subscribed to, per your hunt PIN which is stored in localStorage: var customDeviceParameters = { "Hunt":localStorage.getItem('registeredHunt') }; … currentDevice.register(customDeviceParameters) .then(function (regData) { model._onDeviceIsSuccessfullyRegistered(); }, function (err) { model._onPushErrorOccurred(err.message); });
  • 47. Push to a segment Anyone signed into the GalHnt segment received this push The user claimed the ‘ice’ color beacon
  • 49. Beacons are awesome. What will you build?
  • 50. Did you download Beacon Hunt? Ready to hunt for beacons?
  • 51. Let’s go! Hunt PIN: CPLNOW
  • 52. Thanks! Jen Looper Developer Advocate, Telerik http://www.ladeezfirstmedia.com @jenlooper