ESTLocationBeaconBulkUpdater

@interface ESTLocationBeaconBulkUpdater : NSObject

Class that can be used to perform bulk updates on new generation Estimote beacons. To start bulk update you need to prepare an array of ESTLocationBeaconBulkUpdateConfiguration objects containing a device identifier and an array of ESTSettingOperation objects that will be initialized with `ESTSettingReadWrite’ subclass objects designed for specific settings.

  • Delegate object that conforms to ESTLocationBeaconBulkUpdaterDelegate protocol.

    Declaration

    Objective-C

    @property (nonatomic, weak, readwrite)
        id<ESTLocationBeaconBulkUpdaterDelegate> _Nullable delegate;

    Swift

    weak var delegate: ESTLocationBeaconBulkUpdaterDelegate? { get set }
  • Timeout for bulk update procedure in seconds. Default values is 600s (10 minutes). 0 means no timeout.

    Declaration

    Objective-C

    @property (nonatomic, assign, unsafe_unretained, readonly)
        NSTimeInterval timeout;

    Swift

    var timeout: TimeInterval { get }
  • Interval for device informations fetching from Estimote Cloud.

    Declaration

    Objective-C

    @property (nonatomic, assign, unsafe_unretained, readonly)
        NSTimeInterval fetchInterval;

    Swift

    var fetchInterval: TimeInterval { get }
  • Informs about the current status of bulk updater.

    Declaration

    Objective-C

    @property (nonatomic, assign, unsafe_unretained, readonly)
        ESTBulkUpdaterStatus status;

    Swift

    var status: ESTBulkUpdaterStatus { get }
  • Represents a list of current update configurations.

    Declaration

    Objective-C

    @property (nonatomic, assign, unsafe_unretained, readonly)
        NSArray<ESTLocationBeaconBulkUpdateConfiguration *>
            *_Nonnull updateConfigurations;

    Swift

    unowned(unsafe) var updateConfigurations: NSArray { get }
  • Flag controlling whether a firmware update step should be skipped during the Bulk Update process. If YES, then the step is skipped. If NO, then the step is performed as usual. The default value is NO.

    Declaration

    Objective-C

    @property (nonatomic, assign, unsafe_unretained, readwrite)
        BOOL skipsFirmwareUpdateStep;

    Swift

    var skipsFirmwareUpdateStep: Bool { get set }
  • Designated initializer.

    Declaration

    Objective-C

    - (nonnull instancetype)initWithCBCentralManagerQueue:
        (nonnull dispatch_queue_t)queue;

    Swift

    init(cbCentralManagerQueue queue: DispatchQueue)

    Parameters

    queue

    A queue used for dispatching events of a CBCentralManager instance used for device discovery.

    Return Value

    Initialized object.

  • Convenience initializer.

    Declaration

    Objective-C

    - (nonnull instancetype)init;

    Swift

    convenience init()

    Return Value

    Initialized object.

  • Starts ESTLocationBeaconBulkUpdater with current pending settings from Estimote Cloud.

    Declaration

    Objective-C

    - (void)start;

    Swift

    func start()
  • Starts ESTLocationBeaconBulkUpdater with current pending settings from Estimote Cloud.

    Declaration

    Objective-C

    - (void)startWithTimeout:(NSTimeInterval)timeout;

    Swift

    func start(withTimeout timeout: TimeInterval)

    Parameters

    timeout

    Bulk Updater timeout. 0 means no timeout.

  • Starts ESTLocationBeaconBulkUpdater with current pending settings from Estimote Cloud.

    Declaration

    Objective-C

    - (void)startWithTimeout:(NSTimeInterval)timeout
               fetchInterval:(NSTimeInterval)fetchInterval;

    Swift

    func start(withTimeout timeout: TimeInterval, fetchInterval: TimeInterval)

    Parameters

    timeout

    Bulk Updater timeout. 0 means no timeout.

    fetchInterval

    Bulk Updater fetch interval. 0 represents default 5 min.

  • Starts the bulk update procedure. This method will not cause anything if bulk updater is currently performing updates.

    See

    status

    Declaration

    Objective-C

    - (void)startWithUpdateConfigurations:
        (nonnull NSArray<ESTLocationBeaconBulkUpdateConfiguration *> *)
            updateConfigurations;

    Swift

    func start(with updateConfigurations: [ESTLocationBeaconBulkUpdateConfiguration])

    Parameters

    updateConfigurations
  • Starts the bulk update procedure. This method will not cause anything if bulk updater is currently performing updates.

    See

    status

    Declaration

    Objective-C

    - (void)startWithUpdateConfigurations:
                (nonnull NSArray<ESTLocationBeaconBulkUpdateConfiguration *> *)
                    updateConfigurations
                                  timeout:(NSTimeInterval)timeout;

    Swift

    func start(with updateConfigurations: [ESTLocationBeaconBulkUpdateConfiguration], timeout: TimeInterval)

    Parameters

    updateConfigurations
    timeout

    Bulk Updater timeout. 0 means no timeout.

  • Cancels the bulk update procedure. Note that, if update for a certain device has already started it might not be canceled.

    Declaration

    Objective-C

    - (void)cancel;

    Swift

    func cancel()
  • Informs about the update status for a given device identifier.

    Declaration

    Objective-C

    - (ESTBulkUpdaterDeviceUpdateStatus)statusForDeviceWithIdentifier:
        (nonnull NSString *)deviceIdentifier;

    Swift

    func statusForDevice(withIdentifier deviceIdentifier: String) -> ESTBulkUpdaterDeviceUpdateStatus

    Parameters

    deviceIdentifier

    Identifier of a device.

    Return Value

    ESTBulkUpdaterUpdateStatus value, informing about the current update status.

  • Count of already updated devices.

    Declaration

    Objective-C

    - (NSInteger)numberOfSuccessfulUpdates;

    Swift

    func numberOfSuccessfulUpdates() -> Int
  • Count of already failed devices’ updates.

    Declaration

    Objective-C

    - (NSInteger)numberOfFailedUpdates;

    Swift

    func numberOfFailedUpdates() -> Int