Businesses large and small are fast realizing the importance of big data and are investing huge amounts of time and money to gather it. For retailers, the ROI potential from unified big data collection is exponential. After all, retailers collect online sales data, mobile and apps data, customer footfall data, as well as enterprise integration’s for loyalty, CRM and ERP.
Beacons provide businesses with endless opportunities to collect massive amounts of untapped data, such as the number of beacon hits and customer dwell time at a particular location within a specified time and date range, busiest hours throughout the day or week, number of people who walk by a location each day, etc. This data then allows retailers to accordingly make improvements to products, staff allocation in various departments and services, and so on
7. Bluetooth LE : What is it ?
A Specification With
A New Radio, New Software stack & New Profile
Architecture
• Used to create Bluetooth LE chipsets - e.g.
contact chipsets
• Chipsets are embedded in the devices
8. Bluetooth Classic Vs Bluetooth LE
Voice Data Audio Video State
Bluetooth X Y Y X X
BLE X X X X Y
9. Bluetooth Classic Vs Bluetooth LE
Bluetooth BLE
Connection Connection Oriented Connectionless
Data Payload 2 Mbps ~ 100 Kbps
Power
Consumption
High Low
Transmission File Transmission State Transmission
10. Currently Supported by devices :
GOOGLE Nexus 4,5,7,10
GPS Cameras
Security Equipments Laptops
12. Beacons/BLE : How They Work ?
• BLE enabled devices or Beacons can transmits
small packets of data.
• This wakes up a “listener/receiver” to let it
know that it’s there.
• Which then lets you calculate the proximity to
the Beacon and show relevant information to
visitors.
14. Why are Beacons important ?
Advantage to Developers
Before BLE After BLE
An app would need to be running
in the foreground or background
to communicate with a BLE
device.
An app can be launched into
background if a specific BLE
device is recognized.
15. Beacons & GPS
• Beacons can be thought as an extension of
location technology.
• It’s lot like GPS but uses a lot less battery.
• GPS does not work well once you go inside
but Bluetooth LE works.
16. Beacons & GPS
GPS is a Location Technology
Bluetooth LE is a Proximity Technology.
30. Case Study : Retail Business
• Greet Customers when they arrive.
• Send special offers and coupons at specific
locations on store.
• Offer personal pricing.
• Implementing proximity driven ad-screen.
33. Statistics & Analytics : Retail Business
• Aggregate and analyze behavior and traces of
the customers.
• Analyze interests and shopping decisions of
your customers -‐ in your shop but even off
location.
• Be able to take action on customers behavior
and feedbacks.
34. Statistics & Analytics : Retail Business
• Increase in-store visitor experience.
• Optimize Target Online Marketing.
• Have meaningful dashboards at your
fingertips
• Run cross-dataset analysis, do peer
comparisons, and generate actionable report
35. Android Beacons
Supported on Android API >= 4.2
• All android devices above 4.2 have BLE enabled in
itselves.
• They can act as a Receiver/Listener and can wake up
once supported application receives a signal
• Android Devices having version > 4.4 i.e. Android-L
devices can also act as a BLE Transmitter
36. Android Beacons & Support Libraries
Android Beacon Library:
https://github.com/AltBeacon/android-beacon-library-reference
Smart Gatt Library:
https://github.com/movisens/SmartGattLib
Bluetooth LE Library Android:
https://github.com/alt236/Bluetooth-LE-Library---Android
38. Use Case : Luggage Tracker
1. Implement a broadcast receiver to catch
broadcasts for turning bluetooth on and off.
2. Start a service when bluetooth turns on.
3. Stop service when bluetooth turns off
4. Register a listener to listen for nearby beacon
devices
39. Implementing Broadcast Receiver
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
if
(BluetoothAdapter.ACTION_STATE_CHANGED.equals(intent.getAction())) {
int state =
intent.getIntExtra(BluetoothAdapter.EXTRA_STATE, -1);
Intent i;
switch (state) {
case BluetoothAdapter.STATE_OFF:
if (MyBeaconService.isStarted) {
i = new Intent(context,
MyBeaconIntentService.class);
i.putExtra("StartBeaconService",
false);
context.stopService(i);
}
Log.i(TAG, "Bluetooth State : OFF");
break;
case BluetoothAdapter.STATE_ON:
Log.i(TAG, "Bluetooth State : ON");
if (!MyBeaconService.isStarted) {
i = new Intent(context,
MyBeaconIntentService.class);
i.putExtra("StartBeaconService",
true);
context.startService(i);
}
40. Registering Ranging Listener in
Service’s onCreate() method
@Override
public void onCreate() {
super.onCreate();
beaconManager.setMonitoringListener(new
BeaconManager.MonitoringListener() {
@Override
public void onExitedRegion(Region arg0) {
// TODO Auto-generated method stub
Util.postNotification(getBaseContext(),
"Alert Luggage Tracker",
notificationManager, 1,
AllDemosActivity.class);
}
@Override
public void onEnteredRegion(Region arg0, List<Beacon>
arg1) {
// TODO Auto-generated method stub
}});
}
41. Connecting to BeaconManager’s Service
in Service’s onStartCommand()
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
beaconManager.connect(new
BeaconManager.ServiceReadyCallback() {
@Override
public void onServiceReady() {
try {
beaconManager.startMonitoring(BEACONS);
} catch (RemoteException e) {
Log.e(TAG, "Cannot start
ranging", e);
} catch (Exception e) {
e.printStackTrace();
}
}
});
return START_NOT_STICKY;
}
42. Technical pitfalls of Beacons ?
• Bluetooth must be turned on.
• Your app must be installed on users devices.
• You can't trigger mobile beacon or iBeacon to trigger
installation of an app.
• Location services must be enabled for the specific
application.
• To download real data we must have an app connected
via internet connection.