Gigigo Keynote - Geofences & iBeacons


Published on

Geofences & iBeacons Keynote at Gigigo by Alejandro Rupérez - Programmer Analyst - Research & Development

Published in: Technology, Business
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Gigigo Keynote - Geofences & iBeacons

  1. 1. Geofences & iBeacons Alejandro Rupérez Programmer Analyst (Research & Development)
  2. 2. Geofence • A geofence is a virtual perimeter or barrier for real-world geographic areas. • A geofence could be dynamically generated as in a radius around a point location.
  3. 3. Geofence • When the location-aware device of a location-based service (LBS) user enters or exits a geofence, the device receives a generated notification.
  4. 4. iBeacon • "A new class of low-powered, low-cost transmitters that can notify nearby iOS 7 devices of their presence." - Apple Inc.
  5. 5. iBeacon • Works on Low Energy Bluetooth (BLE), also known as Bluetooth 4.0 or Bluetooth Smart. • iBeacons has endless possibilities like indoor positioning systems or social media check-ins.
  6. 6. Example
  7. 7. Example • When the user enters in the shopping center’s geofence, the application is set to hear the iBeacons with their ProximityUUID (Universally unique identifier).
  8. 8. Example • We can detect and triangulate the user's position within the shopping center placing several iBeacons with the same identifier ProximityUUID and a major identifier for each store.
  9. 9. Example • We can also detect and triangulate the user's position within the store placing several iBeacons with the same identifier ProximityUUID, the store’s major identifier and minor identifiers for each section.
  10. 10. Example
  11. 11. Example • We can detect when the user approaches or moves away from a section for advertising or offers. • We can generate a payment area where you can pay with the phone without having to put the phone close to a NFC device.
  12. 12. How to implement this on iOS devices?
  13. 13. iOS Implementation • Add the CoreLocation.framework • Implement the protocol CLLocationManagerDelegate. • Create a CLLocationManager instance and set the delegate.
  14. 14. iOS Implementation • CLRegion *region = [[CLRegion alloc] initCircularRegionWithCenter:CLLocation Coordinate2DMake(40.44699, -3.58719) radius:150 identifier:@"Shopping Center Geofence"];
  15. 15. iOS Implementation • [locationManager startMonitoringForRegion:region];
  16. 16. iOS Implementation • - (void)locationManager: (CLLocationManager *)manager didEnterRegion:(CLRegion *)region • - (void)locationManager: (CLLocationManager *)manager didExitRegion:(CLRegion *)region
  17. 17. iOS Implementation • CLBeaconRegion *beaconRegion = [[CLBeaconRegion alloc] initWithProximityUUID:[[NSUUID alloc] initWithUUIDString:@"01234567-89ABCDEF-FEDC-BA9876543210"] identifier:@"Shopping Center iBeacons"];
  18. 18. iOS Implementation • [locationManager startRangingBeaconsInRegion: beaconRegion];
  19. 19. iOS Implementation • - (void)locationManager: (CLLocationManager *)manager didRangeBeacons:(NSArray *)beacons inRegion:(CLBeaconRegion *)region • The beacons NSArray contains detected iBeacons in CLBeacon objects.
  20. 20. • iOS Implementation CLBeacon Class Reference: • • • • proximityUUID • accuracy (The accuracy of the proximity value, measured in meters from the beacon.) • rssi (The received signal strength of the beacon, measured in decibels.) major minor proximity (The relative distance to the beacon: Immediate, Near, Far or Unknown.)
  21. 21. Thanks!