ESTCloudManager

@interface ESTCloudManager : NSObject

ESTCloudManager class is responsible for Estimote Cloud integration. It allows you to invoke available Estimote Cloud API methods using block pattern to handle result.

  • Sets App ID and App Token, enabling communication with the Estimote Cloud API.

    You can find your API App ID and API App Token in the Account Settings section of the Estimote Cloud.

    Declaration

    Objective-C

    + (void)setupAppID:(nonnull NSString *)appID
           andAppToken:(nonnull NSString *)appToken;

    Swift

    class func setupAppID(_ appID: String, andAppToken appToken: String)

    Parameters

    appID

    The API App ID.

    appToken

    The API App Token.

  • Returns currently used App ID.

    Declaration

    Objective-C

    + (NSString *_Nullable)appID;

    Swift

    class func appID() -> String?

    Return Value

    currently used App ID.

  • Returns currently used App Token.

    Declaration

    Objective-C

    + (NSString *_Nullable)appToken;

    Swift

    class func appToken() -> String?

    Return Value

    currently used App Token.

  • Checks if App ID and App Token were set.

    Declaration

    Objective-C

    + (BOOL)isAuthorized;

    Swift

    class func isAuthorized() -> Bool
  • Enables analytics requests on Enter/Exit monitoring events. Analytics data is collected in the Estimote Cloud.

    Declaration

    Objective-C

    + (void)enableAnalytics:(BOOL)enable;

    Swift

    class func enableAnalytics(_ enable: Bool)

    Parameters

    enable

    flag indicating if analytics should be enabled

  • Enables analytics requests on Enter/Exit monitoring events. Analytics data is collected in the Estimote Cloud.

    Declaration

    Objective-C

    + (void)enableMonitoringAnalytics:(BOOL)enable;

    Swift

    class func enableMonitoringAnalytics(_ enable: Bool)

    Parameters

    enable

    flag indicating if analytics for monitoring should be enabled

  • Enables analytics requests for ranging events. Information about beacons and their Proximity is collected in the Estimote Cloud.

    Declaration

    Objective-C

    + (void)enableRangingAnalytics:(BOOL)enable;

    Swift

    class func enableRangingAnalytics(_ enable: Bool)

    Parameters

    enable

    flag indicating if analytics for ranging should be enabled

  • When GPS Positioning is turned on analytics events contains information about GPS Location.

    Declaration

    Objective-C

    + (void)enableGPSPositioningForAnalytics:(BOOL)enable;

    Swift

    class func enableGPSPositioning(forAnalytics enable: Bool)

    Parameters

    enable

    flag indicating if GPS Positioning should be enabled

  • Indicates current state of analytics.

    Declaration

    Objective-C

    + (BOOL)isAnalyticsEnabled;

    Swift

    class func isAnalyticsEnabled() -> Bool

    Return Value

    flag that indicates if analytics is enabled

  • Indicates current state of monitoring analytics.

    Declaration

    Objective-C

    + (BOOL)isMonitoringAnalyticsEnabled;

    Swift

    class func isMonitoringAnalyticsEnabled() -> Bool

    Return Value

    flag that indicates if analytics is enabled

  • Indicates current state of ranging analytics.

    Declaration

    Objective-C

    + (BOOL)isRangingAnalyticsEnabled;

    Swift

    class func isRangingAnalyticsEnabled() -> Bool

    Return Value

    flag that indicates if analytics is enabled

  • Collects all the nearables assigned to your Estimote Cloud account. Nearables are delivered as NSArray containing ESTNearable objects.

    Declaration

    Objective-C

    - (void)fetchEstimoteNearablesWithCompletion:
        (nonnull ESTArrayCompletionBlock)completion;

    Swift

    func fetchEstimoteNearables(completion: @escaping ESTArrayCompletionBlock)

    Parameters

    completion

    completion block invoked with fetching is done

  • Collects all the beacons assigned to your Estimote Cloud account. Beacons are delivered as NSArray containing ESTBeaconVO objects.

    Declaration

    Objective-C

    - (void)fetchEstimoteBeaconsWithCompletion:
        (nonnull ESTArrayCompletionBlock)completion;

    Swift

    func fetchEstimoteBeacons(completion: @escaping ESTArrayCompletionBlock)

    Parameters

    completion

    completion block invoked with fetching is done

  • Collects details of particular beacon device stored in Estimote Cloud. You can use both Mac Address or ProximityUUID:Major:Minor.

    Declaration

    Objective-C

    - (void)fetchBeaconDetails:(nonnull NSString *)beaconUID
                    completion:(nonnull ESTObjectCompletionBlock)completion;

    Swift

    func fetchBeaconDetails(_ beaconUID: String, completion: @escaping ESTObjectCompletionBlock)

    Parameters

    beaconUID

    Identifier of particular device

    completion

    completion block invoked with fetching is done

  • Fetches additional data about the nearable with the given identifier from Estimote Cloud.

    Declaration

    Objective-C

    - (void)fetchNearableDetails:(nonnull NSString *)nearableUID
                      completion:(nonnull ESTObjectCompletionBlock)completion;

    Swift

    func fetchNearableDetails(_ nearableUID: String, completion: @escaping ESTObjectCompletionBlock)

    Parameters

    nearableUID

    A nearable identifier, as broadcast in the Nearable packet; or a “ <UUID

    : <major : <minor ” string with nearable’s iBeacon identifier, as broadcast in the iBeacon packet.

    completion

    A block to call upon completion of the request. If successful, first argument will be an ESTNearableVO object. If not, first argument will be nil, and second argument will be the error object.

  • Collects color of particular beacon device stored in Estimote Cloud. Authorization is not required to access device color.

    Declaration

    Objective-C

    - (void)fetchColorForBeacon:(nonnull CLBeacon *)beacon
                     completion:(nonnull ESTObjectCompletionBlock)completion;

    Swift

    func fetchColor(for beacon: CLBeacon, completion: @escaping ESTObjectCompletionBlock)

    Parameters

    beacon

    iBeacon device

    completion

    completion block with NSNumber class object containing ESTColor value.

  • Collects color of particular beacon device stored in Estimote Cloud. Authorization is not required to access device color.

    Declaration

    Objective-C

    - (void)fetchColorForBeaconWithProximityUUID:(nonnull NSUUID *)proximityUUID
                                           major:(CLBeaconMajorValue)major
                                           minor:(CLBeaconMinorValue)minor
                                      completion:(nonnull ESTObjectCompletionBlock)
                                                     completion;

    Swift

    func fetchColorForBeacon(withProximityUUID proximityUUID: UUID, major: CLBeaconMajorValue, minor: CLBeaconMinorValue, completion: @escaping ESTObjectCompletionBlock)

    Parameters

    proximityUUID

    iBeacon ProximityUUID of the device

    major

    iBeacon Major of the device

    minor

    iBeacon Minor of the device

    completion

    completion block with NSNumber class object containing ESTColor value.

  • Collects color of particular beacon device stored in Estimote Cloud. Authorization is not required to access device color.

    Declaration

    Objective-C

    - (void)fetchColorForBeaconWithMacAddress:(nonnull NSString *)macAddress
                                   completion:
                                       (nonnull ESTObjectCompletionBlock)completion;

    Swift

    func fetchColorForBeacon(withMacAddress macAddress: String, completion: @escaping ESTObjectCompletionBlock)

    Parameters

    macAddress

    Mac Address of the device

    completion

    completion block with NSNumber class object containing ESTColor value.

  • Collects MAC address of particular beacon device stored in Estimote Cloud.

    Declaration

    Objective-C

    - (void)fetchMacAddressForBeacon:(nonnull CLBeacon *)beacon
                          completion:(nonnull ESTStringCompletionBlock)completion;

    Swift

    func fetchMacAddress(for beacon: CLBeacon, completion: @escaping ESTStringCompletionBlock)

    Parameters

    beacon

    iBeacon device

    completion

    completion block with NSString class object containing the MAC address.

  • Assigns provided GPS location to the beacon.

    Declaration

    Objective-C

    - (void)assignGPSLocation:(nonnull CLLocation *)location
                     toBeacon:(nonnull CLBeacon *)beacon
                   completion:(nonnull ESTObjectCompletionBlock)completion;

    Swift

    func assignGPSLocation(_ location: CLLocation, to beacon: CLBeacon, completion: @escaping ESTObjectCompletionBlock)

    Parameters

    location

    the location (lat/lng) to assign to the beacon

    beacon

    the beacon to assign the location to

    completion

    completion callback; first param is the CLLocation just assigned (or nil if there was an error); second param is an NSError object (or nil if assigned successfully)

  • Assigns provided GPS location to the beacon.

    Declaration

    Objective-C

    - (void)assignGPSLocation:(nonnull CLLocation *)location
              toBeaconWithMac:(nonnull NSString *)macAddress
                   completion:(nonnull ESTObjectCompletionBlock)completion;

    Swift

    func assignGPSLocation(_ location: CLLocation, toBeaconWithMac macAddress: String, completion: @escaping ESTObjectCompletionBlock)

    Parameters

    location

    CLLocation object with latitude and longitude included

    macAddress

    macAddress of beacon to which location should be assigned

    completion

    result information with assigned location provided

  • Assigns current GPS location to provided beacon.

    Location is obtained internally using a single CLLocation manger scan.

    Declaration

    Objective-C

    - (void)assignCurrentGPSLocationToBeacon:(nonnull CLBeacon *)beacon
                                  completion:
                                      (nonnull ESTObjectCompletionBlock)completion;

    Swift

    func assignCurrentGPSLocation(to beacon: CLBeacon, completion: @escaping ESTObjectCompletionBlock)

    Parameters

    beacon

    the beacon to assign the location to

    completion

    completion callback; first param is the CLLocation just assigned (or nil if there was an error); second param is an NSError object (or nil if assigned successfully)

  • Assigns current GPS location to provided beacon. Location is obtained internally using single CLLocation manger scan.

    Declaration

    Objective-C

    - (void)assignCurrentGPSLocationToBeaconWithMac:(nonnull NSString *)macAddress
                                         completion:
                                             (nonnull ESTObjectCompletionBlock)
                                                 completion;

    Swift

    func assignCurrentGPSLocationToBeacon(withMac macAddress: String, completion: @escaping ESTObjectCompletionBlock)

    Parameters

    macAddress

    macAddress of beacon to which location should be assigned

    completion

    completion block with assigned location provided

  • Location is obtained internally using a single CLLocation manger scan.

    Declaration

    Objective-C

    - (void)
    assignCurrentGPSLocationToBeaconWithProximityUUID:(nonnull NSUUID *)uuid
                                                major:(nonnull NSNumber *)major
                                                minor:(nonnull NSNumber *)minor
                                           completion:
                                               (nonnull ESTObjectCompletionBlock)
                                                   completion;

    Swift

    func assignCurrentGPSLocationToBeacon(withProximityUUID uuid: UUID, major: NSNumber, minor: NSNumber, completion: @escaping ESTObjectCompletionBlock)

    Parameters

    uuid

    UUID of the beacon to assign the location to

    major

    major of the beacon to assign the location to

    minor

    minor of the beacon to assign the location to

    completion

    completion callback; first param is the CLLocation just assigned (or nil if there was an error); second param is an NSError object (or nil if assigned successfully)

  • Registers device in Estimote Cloud to enable Estimote Remote Beacon Management.

    Declaration

    Objective-C

    - (void)registerDeviceForRemoteManagement:(nonnull NSData *)deviceToken
                                   completion:
                                       (nonnull ESTCompletionBlock)completion;

    Swift

    func registerDevice(forRemoteManagement deviceToken: Data, completion: @escaping ESTCompletionBlock)

    Parameters

    deviceToken

    token of the device received from iOS

    completion

    completion block

  • Allows to fetch all pending settings applied to the beacons in Estimote. Array returned in completion block can be used directly by ESTBulkUpdater class.

    Declaration

    Objective-C

    - (void)fetchPendingBeaconsSettingsWithCompletion:
        (nonnull ESTArrayCompletionBlock)completion;

    Swift

    func fetchPendingBeaconsSettings(completion: @escaping ESTArrayCompletionBlock)

    Parameters

    completion

    completion block returning Array of ESTBeaconUpdateInfo object