# FSQPPilgrimManagerDelegate

Implement this protocol on an object that you will retain for as long as you want to receive location context updates.

- `-pilgrimManager:handleVisit:`

Called when the user has arrived at or departed from a location. This will only be called when all trigger requirements have been met. Those can be configured remotely.

#### Declaration

#### Parameters

|     |     |
| --- | --- |
| `<br>                                visit<br>` | Detailed contextual information and raw data associated with the location. |

- `-pilgrimManager:handleBackfillVisit:`

Called when a visit has been backfilled with contextual information. This will only be called when all trigger requirements have been met. Those can be configured remotely.

#### Declaration

#### Parameters

|     |     |
| --- | --- |
| `<br>                                visit<br>` | Detailed contextual information and raw data associated with the location. |

- `-pilgrimManager:handleGeofenceEvents:`

Called when a user interacts with one or more geofences causing new geofence events. This method returns an array to account for the fact that a user could be interacting with multiple geofences simultaneously, causing multiple events to occur simultaneously.

#### Declaration

#### Parameters

|     |     |
| --- | --- |
| `<br>                                geofenceEvents<br>` | An array of geofence interaction events which contain information about the event along with the location where the event occurred. |

- `-pilgrimManager:handleUserState:changedComponents:`

Called when a user state component changes. Updates of the user state may be limited to avoid too many network calls and save battery.

#### Declaration

#### Parameters

|     |     |
| --- | --- |
| `<br>                                updatedUserState<br>` | An updated user state containing detailed information about where a user is and what they’re doing. |
| `<br>                                changedComponents<br>` | A bitmask containing the user state components that have changed since the user state was last updated. |

- `-pilgrimManager:handleError:`

Called when an error occurs

#### Declaration

#### Parameters

|     |     |
| --- | --- |
| `<br>                                error<br>` | The error that occurred, see `FSQPPPilgrimManagerErrorDomain` and `FSQPPPilgrimManagerErrorCode` |
