Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions gradle/dependencies.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ ext {
]

version = [
mapboxMapSdk : '6.5.0',
mapboxMapSdk : '6.6.0',
mapboxSdkServices : '4.0.0',
mapboxEvents : '3.2.0',
mapboxEvents : '3.3.0',
mapboxNavigator : '3.1.5',
locationLayerPlugin: '0.10.0',
autoValue : '1.5.4',
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,13 @@ static void arriveEvent(SessionState sessionState, RouteProgress routeProgress,
routeProgress.directionsRoute().routeOptions().profile(),
sessionState.mockLocation(),
sessionState.locationEngineName(),
absoluteDistanceToDestination
absoluteDistanceToDestination,
sessionState.tripIdentifier(),
routeProgress.legIndex(),
routeProgress.directionsRoute().legs().size(),
routeProgress.currentLegProgress().stepIndex(),
routeProgress.currentLeg().steps().size(),
sessionState.currentStepCount()
);
metadata.setEstimatedDistance(routeProgress.directionsRoute().distance().intValue());
metadata.setEstimatedDuration(routeProgress.directionsRoute().duration().intValue());
Expand All @@ -95,7 +101,6 @@ static void arriveEvent(SessionState sessionState, RouteProgress routeProgress,
metadata.setOriginalGeometry(sessionState.originalGeometry());
metadata.setOriginalEstimatedDistance(sessionState.originalDistance());
metadata.setOriginalEstimatedDuration(sessionState.originalDuration());
metadata.setStepCount(sessionState.currentStepCount());
metadata.setOriginalStepCount(sessionState.originalStepCount());
metadata.setPercentTimeInForeground(sessionState.percentInForeground());
metadata.setPercentTimeInPortrait(sessionState.percentInPortrait());
Expand Down Expand Up @@ -126,7 +131,13 @@ static void cancelEvent(SessionState sessionState, MetricsRouteProgress metricPr
metricProgress.getDirectionsRouteProfile(),
sessionState.mockLocation(),
sessionState.locationEngineName(),
absoluteDistanceToDestination
absoluteDistanceToDestination,
sessionState.tripIdentifier(),
metricProgress.getLegIndex(),
metricProgress.getLegCount(),
metricProgress.getStepIndex(),
metricProgress.getStepCount(),
sessionState.currentStepCount()
);
metadata.setEstimatedDistance(metricProgress.getDirectionsRouteDistance());
metadata.setEstimatedDuration(metricProgress.getDirectionsRouteDuration());
Expand All @@ -136,7 +147,6 @@ static void cancelEvent(SessionState sessionState, MetricsRouteProgress metricPr
metadata.setOriginalGeometry(sessionState.originalGeometry());
metadata.setOriginalEstimatedDistance(sessionState.originalDistance());
metadata.setOriginalEstimatedDuration(sessionState.originalDuration());
metadata.setStepCount(sessionState.currentStepCount());
metadata.setOriginalStepCount(sessionState.originalStepCount());
metadata.setPercentTimeInForeground(sessionState.percentInForeground());
metadata.setPercentTimeInPortrait(sessionState.percentInPortrait());
Expand Down Expand Up @@ -173,7 +183,13 @@ static void departEvent(SessionState sessionState, MetricsRouteProgress metricPr
metricProgress.getDirectionsRouteProfile(),
sessionState.mockLocation(),
sessionState.locationEngineName(),
absoluteDistanceToDestination
absoluteDistanceToDestination,
sessionState.tripIdentifier(),
metricProgress.getLegIndex(),
metricProgress.getLegCount(),
metricProgress.getStepIndex(),
metricProgress.getStepCount(),
sessionState.currentStepCount()
);
metadata.setEstimatedDistance(metricProgress.getDirectionsRouteDistance());
metadata.setEstimatedDuration(metricProgress.getDirectionsRouteDuration());
Expand All @@ -183,7 +199,6 @@ static void departEvent(SessionState sessionState, MetricsRouteProgress metricPr
metadata.setOriginalGeometry(sessionState.originalGeometry());
metadata.setOriginalEstimatedDistance(sessionState.originalDistance());
metadata.setOriginalEstimatedDuration(sessionState.originalDuration());
metadata.setStepCount(sessionState.currentStepCount());
metadata.setOriginalStepCount(sessionState.originalStepCount());
metadata.setPercentTimeInForeground(sessionState.percentInForeground());
metadata.setPercentTimeInPortrait(sessionState.percentInPortrait());
Expand Down Expand Up @@ -216,7 +231,13 @@ static void rerouteEvent(RerouteEvent rerouteEvent, MetricsRouteProgress metricP
metricProgress.getDirectionsRouteProfile(),
sessionState.mockLocation(),
sessionState.locationEngineName(),
absoluteDistanceToDestination
absoluteDistanceToDestination,
sessionState.tripIdentifier(),
metricProgress.getLegIndex(),
metricProgress.getLegCount(),
metricProgress.getStepIndex(),
metricProgress.getStepCount(),
sessionState.currentStepCount()
);
metadata.setEstimatedDistance(metricProgress.getDirectionsRouteDistance());
metadata.setEstimatedDuration(metricProgress.getDirectionsRouteDuration());
Expand All @@ -226,7 +247,6 @@ static void rerouteEvent(RerouteEvent rerouteEvent, MetricsRouteProgress metricP
metadata.setOriginalGeometry(sessionState.originalGeometry());
metadata.setOriginalEstimatedDistance(sessionState.originalDistance());
metadata.setOriginalEstimatedDuration(sessionState.originalDuration());
metadata.setStepCount(sessionState.currentStepCount());
metadata.setOriginalStepCount(sessionState.originalStepCount());
metadata.setPercentTimeInForeground(sessionState.percentInForeground());
metadata.setPercentTimeInPortrait(sessionState.percentInPortrait());
Expand Down Expand Up @@ -293,7 +313,13 @@ static void feedbackEvent(SessionState sessionState, MetricsRouteProgress metric
metricProgress.getDirectionsRouteProfile(),
sessionState.mockLocation(),
sessionState.locationEngineName(),
absoluteDistanceToDestination
absoluteDistanceToDestination,
sessionState.tripIdentifier(),
metricProgress.getLegIndex(),
metricProgress.getLegCount(),
metricProgress.getStepIndex(),
metricProgress.getStepCount(),
sessionState.currentStepCount()
);
metadata.setEstimatedDistance(metricProgress.getDirectionsRouteDistance());
metadata.setEstimatedDuration(metricProgress.getDirectionsRouteDuration());
Expand All @@ -303,7 +329,6 @@ static void feedbackEvent(SessionState sessionState, MetricsRouteProgress metric
metadata.setOriginalGeometry(sessionState.originalGeometry());
metadata.setOriginalEstimatedDistance(sessionState.originalDistance());
metadata.setOriginalEstimatedDuration(sessionState.originalDuration());
metadata.setStepCount(sessionState.currentStepCount());
metadata.setOriginalStepCount(sessionState.originalStepCount());
metadata.setPercentTimeInForeground(sessionState.percentInForeground());
metadata.setPercentTimeInPortrait(sessionState.percentInPortrait());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,10 @@ public void onOffRouteEvent(Location offRouteLocation) {
@Override
public void onArrival(RouteProgress routeProgress) {
// Update arrival time stamp
navigationSessionState = navigationSessionState.toBuilder().arrivalTimestamp(new Date()).build();
navigationSessionState = navigationSessionState.toBuilder()
.arrivalTimestamp(new Date())
.tripIdentifier(TelemetryUtils.obtainUniversalUniqueIdentifier())
.build();
updateLifecyclePercentages();
// Send arrival event
NavigationMetricsWrapper.arriveEvent(navigationSessionState, routeProgress, metricLocation.getLocation());
Expand Down Expand Up @@ -168,6 +171,7 @@ void startSession(DirectionsRoute directionsRoute) {
if (!isConfigurationChange) {
navigationSessionState = navigationSessionState.toBuilder()
.sessionIdentifier(TelemetryUtils.obtainUniversalUniqueIdentifier())
.tripIdentifier(TelemetryUtils.obtainUniversalUniqueIdentifier())
.originalDirectionRoute(directionsRoute)
.originalRequestIdentifier(directionsRoute.routeOptions().requestUuid())
.requestIdentifier(directionsRoute.routeOptions().requestUuid())
Expand Down Expand Up @@ -208,7 +212,8 @@ void endSession(boolean isConfigurationChange) {
* @param directionsRoute new route passed to {@link MapboxNavigation}
*/
void updateSessionRoute(DirectionsRoute directionsRoute) {
SessionState.Builder navigationBuilder = navigationSessionState.toBuilder();
SessionState.Builder navigationBuilder = navigationSessionState.toBuilder()
.tripIdentifier(TelemetryUtils.obtainUniversalUniqueIdentifier());
navigationBuilder.currentDirectionRoute(directionsRoute);
eventDispatcher.addMetricEventListeners(this);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,8 @@ public String currentGeometry() {

public abstract String sessionIdentifier();

public abstract String tripIdentifier();

@Nullable
public abstract String originalRequestIdentifier();

Expand Down Expand Up @@ -134,6 +136,7 @@ public static Builder builder() {
return new AutoValue_SessionState.Builder()
.eventRouteDistanceCompleted(0d)
.sessionIdentifier("")
.tripIdentifier("")
.mockLocation(false)
.rerouteCount(0)
.secondsSinceLastReroute(-1)
Expand Down Expand Up @@ -164,6 +167,8 @@ public abstract static class Builder {

public abstract Builder sessionIdentifier(String sessionIdentifier);

public abstract Builder tripIdentifier(String tripIdentifier);

public abstract Builder originalRequestIdentifier(@Nullable String originalRequestIdentifier);

public abstract Builder requestIdentifier(@Nullable String requestIdentifier);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,11 @@ public class MetricsRouteProgress {
private String previousStepType;
private String previousStepName;

private int legIndex;
private int legCount;
private int stepIndex;
private int stepCount;

public MetricsRouteProgress(@Nullable RouteProgress routeProgress) {
if (routeProgress != null) {
obtainRouteData(routeProgress.directionsRoute());
Expand All @@ -42,6 +47,10 @@ public MetricsRouteProgress(@Nullable RouteProgress routeProgress) {
this.distanceRemaining = (int) routeProgress.distanceRemaining();
this.durationRemaining = (int) routeProgress.durationRemaining();
this.distanceTraveled = (int) routeProgress.distanceTraveled();
this.legIndex = routeProgress.legIndex();
this.legCount = routeProgress.directionsRoute().legs().size();
this.stepIndex = routeProgress.currentLegProgress().stepIndex();
this.stepCount = routeProgress.currentLeg().steps().size();
} else {
initDefaultValues();
}
Expand Down Expand Up @@ -189,4 +198,20 @@ public String getPreviousStepType() {
public String getPreviousStepName() {
return previousStepName;
}

public int getLegIndex() {
return legIndex;
}

public int getLegCount() {
return legCount;
}

public int getStepIndex() {
return stepIndex;
}

public int getStepCount() {
return stepCount;
}
}