Roam.ai Docs
HomeContactDashboard
  • Introduction
  • Getting Started
    • Key Concepts
  • Frameworks
  • Android
    • Quickstart (Android)
    • Pub/Sub Locations (Android)
    • SDK Methods (Android)
      • SDK Configuration (Android)
      • Get Current Location (Android)
      • Update Current Location (Android)
      • Update Location When Stationary (Android)
      • Trip v1 SDK Methods (Android)
      • Trip v2 SDK Methods (Android)
        • Create Trip (Android)
        • Update Trip (Android)
        • Start Quick Trip (Android)
        • Start Trip (Android)
        • End Trip (Android)
        • Pause Trip (Android)
        • Resume Trip (Android)
        • Sync Trip (Android)
        • Get Trip (Android)
        • Get Active Trips (Android)
        • Get Trip Summary (Android)
        • Subscribe to Trip (Android)
        • Delete Trip (Android)
    • Utility Methods (Android)
    • Troubleshooting (Android)
    • Changelog (Android)
  • iOS
    • Quickstart (iOS)
    • Pub/Sub Locations (iOS)
    • SDK Methods (iOS)
      • SDK Configuration (iOS)
      • Get Current Location (iOS)
      • Update Current Location (iOS)
      • Update Location When Stationary (iOS)
      • Trips v1 SDK Methods (iOS)
      • Trips v2 SDK Methods (iOS)
        • Create Trip (iOS)
        • Update Trip (iOS)
        • Start Quick Trip (iOS)
        • Start Trip (iOS)
        • End Trip (iOS)
        • Pause Trip (iOS)
        • Resume Trip (iOS)
        • Sync Trip (iOS)
        • Get Trip (iOS)
        • Get Active Trips (iOS)
        • Get Trip Summary (iOS)
        • Subscribe Trip (iOS)
        • Delete Trip (iOS)
    • Utility Methods (iOS)
    • Troubleshooting (iOS)
    • Changelog (iOS)
  • React Native
  • Flutter
  • PRODUCTS
  • Tracking (BETA)
  • Geofencing
  • Trips
  • APIs
    • Authorization
    • Users API
      • Create User API
      • Get User API
      • Update User API
    • Locations API
      • Get Locations API
      • Get Stop Locations API
    • Insights API
      • Get User POIs API
      • Get User Home Location API
      • Get User Work Location API
    • Trips v1 API
      • Create Trip API v1
      • Get Trip API
      • Update Trip API v1
      • Delete Trip API v1
      • Trip Summary API
      • Export Trip Summary as GPX
    • Trips v2 API
      • Create Trip API
      • Get Single Trip API
      • Get Multiple Trips API
      • Update Trip API
      • Control Trip API
        • Start Trip API
        • Pause Trip API
        • Resume Trip API
        • End Trip API
      • Get Trip Summary API
      • Export Trip API
      • Delete Trip API
    • Geofencing API
      • CREATE Geofence API
      • GET Geofence API
      • UPDATE Geofence API
      • DELETE Geofence API
    • Events API
      • Get Events
      • Trip Events
    • Nearby API
      • Get Nearby User API
      • Get Nearby Geofence API
    • Moving Geofence API
      • Create Moving-Geofence API
      • Update Moving-Geofence API
      • GET Moving-Geofence API
      • Delete Moving-Geofence API
    • User Groups API
      • Create Group API
      • Get User Group by ID
      • Get User Group List
      • Add Users to Group API
      • Update Group API
      • Find Nearby Users from Group
    • Query with Metadata
  • WEBHOOK
    • Webhook
    • Slack Integration
  • LIBRARIES
    • Javascript Library
    • Go Library
    • Python Library
Powered by GitBook
On this page

Was this helpful?

Export as PDF
  1. iOS
  2. SDK Methods (iOS)
  3. Trips v2 SDK Methods (iOS)

Start Quick Trip (iOS)

Explore how to start a quick trip on iOS with Trips v2.

The Start Quick Trip method creates and starts a trip immediately.

To create a quick trip, you need to create an object for the trip and assign it with theRoamTrip() class. Below are the parameters and their descriptions for the trip object.

Parameter
Optional

metadata

dictionary

A set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.

tripName

string

Name of the trip

tripDescription

string

Trip description

isLocal

boolean

Value determining if the trip is a local trip.

Along with the above trip object, you need to pass an additional parameter for trackingMode which is optional and defaults to active tracking mode.

Roam.startTrip(trip, RoamTrackingMode.active) { response, error in
    // Access trip response and error here
}
[Roam startTrip:trip :RoamTrackingModeActive :NULL handler:^(RoamTripResponse * response, RoamTripError * error) {
       // Access trip response and error here
}];

To start a quick trip with custom tracking mode, refer to the following code:

// Define a custom tracking method
let customTrackingMode = RoamTrackingCustomMethods()

// Update the settings for the created method as per need
customTrackingMode.activityType = .fitness
customTrackingMode.pausesLocationUpdatesAutomatically = true
customTrackingMode.showsBackgroundLocationIndicator = true
customTrackingMode.useSignificant = false
customTrackingMode.useRegionMonitoring = false
customTrackingMode.useVisits = false
customTrackingMode.accuracyFilter = 10
customTrackingMode.desiredAccuracy = .kCLLocationAccuracyNearestTenMeters

// Update the distance intervel as per the use case in meters
customTrackingMode.distanceFilter = 10

Roam.startTrip(trip, RoamTrackingMode.custom, customTrackingMode ) { response, error in
    // Access trip response and error here
}
RoamTrackingCustomMethodsObjcWrapper *customTrackingMode = [[RoamTrackingCustomMethodsObjcWrapper alloc] init];
[customTrackingMode setUpCustomOptionsWithDesiredAccuracy:LocationAccuracyKCLLocationAccuracyBest
                            useVisit:false showsBackgroundLocationIndicator:true
                            distanceFilter:10 useSignificant:false
                            useRegionMonitoring:false useDynamicGeofencRadius:false
                            geofenceRadius:0 allowBackgroundLocationUpdates:true
                            activityType:CLActivityTypeFitness pausesLocationUpdatesAutomatically:true
                            useStandardLocationServices:false accuracyFilter:10 updateInterval:10];
    
[Roam startTracking:RoamTrackingModeCustom options:customTrackingMode];

The list of responses, error parameters and their description is given below.

To access the status parameters:

Parameter
Type
Description

response?.code

number

The response code of the method.

response?.message

string

The response message of the method.

To access trip response:

Parameter
Type
Description

tripDetails?.tripId

number

Unique identifier for trip objects.

tripDetails?.metadata

dictionary

A set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.

tripDetails?.tripName

string

Name of the trip.

tripDetails?.tripDescription

string

Trip description

tripDetails?.tripState

string

The current state of the trip is either created, started, or ended.

tripDetails?.isLocal

boolean

Value determining if the trip is a local trip.

tripDetails?.totalDistance

number

The total distance covered by the user for this trip.

tripDetails?.totalDuration

number

The total duration taken by the user for this trip.

tripDetails?.totalElevationGain

number

The total elevation gain covered by the user for this trip.

tripDetails?.createdAt

string

Timestamp of wen the trip was created

tripDetails?.updatedAt

string

Timestamp of when the trip was updated

tripDetails?.startedAt

string

Timestamp of when the trip was started by the user

tripDetails?.endedAt

string

Timestamp of when the trip was ended by the user

To access user details:

Parameter
Type
Description

user?.userId

string

Unique identifier for the user object.

user?.metadata

dictionary

A set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the object in a structured format.

user?.userDescription

string

User description

user?.userName

string

User's full name

To access error details:

Parameter
Type
Description

error?.code

number

The error response code of the method.

error?.message

string

The error response message of the method.

error?.errorDescription

string

The error response description of the method.

errorDetails?[i].message

string

The message for error detail.

errorDetails?[i].field

string

The field for error detail.

PreviousUpdate Trip (iOS)NextStart Trip (iOS)

Last updated 2 years ago

Was this helpful?