iOS – Tempo tracking
Use Tempo to understand your customers’ estimated time of arrival (ETA) at a particular location.
After Tempo tracking is started, Point SDK will start Tempo Updates from device calculating and updating the ETA of the user for a Zone. The Zone and
destinationId are configured in Canvas.
Tempo Updates interval can be manually configured, but by default are sent every 60 secs for 30 minutes.
To start tempo tracking for a user, call Point SDK API:
destinationIdis the Id assigned to the Zone in Canvas for which Tempo tracking can be started.
Errors reported are:
BDPointSessionExceptionthrown if Point SDK is already logged out.
BDTempoTrackingAlreadyStartedExceptionthrown if Tempo Tracking is currently already in progress.
To stop Tempo tracking for a user, call Point SDK API:
didStopTracking() will be called once tempo tracking has ceased.
Tempo tracking can be stopped in the below cases:
- Stopped by App using stopTempoTracking() API
- When Point SDK logout occurs
- Tempo timer expires (by default after 30 minutes from Tempo start)
After Tempo is stopped due to any of the above reasons, TempoStop event is sent from Point SDK to the backend.
In iOS, to receive Tempo related callbacks, implement the BDPTempoTrackingDelegate protocol
Tempo delegate callbacks:
/** * This method indicates that Tempo Tracking has started */ - (void)didStartTracking; /** * This method indicates that Tempo Tracking has stopped */ - (void)didStopTracking; /** * This method is called if Tempo Tracking is stopped due to an error (for e.g. invalid destination Id) * @param error Details from NSError objects delivered here are intended for development logging purposes * and are not intended to be seen by your application's users. */ - (void)didStopTrackingWithError: (NSError *)error;