getStructuredActiveLivenessResponse static method

Map<String, dynamic> getStructuredActiveLivenessResponse({
  1. Map? activeLivenessUrls,
})

Converts the active liveness response URLs into a structured format.

Parameters:

  • activeLivenessUrls: A map containing the active liveness URLs.

Returns:

  • A structured map representing the active liveness response.

Implementation

static Map<String, dynamic> getStructuredActiveLivenessResponse({
  Map? activeLivenessUrls,
}) {
  Map<String, dynamic> structuredActiveLivenessResponse = {};
  if (activeLivenessUrls == null) {
    return structuredActiveLivenessResponse;
  }
  if (activeLivenessUrls.isNotEmpty) {
    structuredActiveLivenessResponse['live'] = 'yes';

    List<Map<String, String>> gestures = [];

    // Traverse the straight gesture URLs
    if (activeLivenessUrls.containsKey('STRAIGHT_GESTURE')) {
      for (String url in activeLivenessUrls['STRAIGHT_GESTURE']) {
        gestures.add({'prompt': 'straight', 'path': url});
      }
    }

    // Traverse the right gesture URLs
    if (activeLivenessUrls.containsKey('RIGHT_GESTURE')) {
      for (String url in activeLivenessUrls['RIGHT_GESTURE']) {
        gestures.add({'prompt': 'right', 'path': url});
      }
    }

    // Traverse the left gesture URLs
    if (activeLivenessUrls.containsKey('LEFT_GESTURE')) {
      for (String url in activeLivenessUrls['LEFT_GESTURE']) {
        gestures.add({'prompt': 'left', 'path': url});
      }
    }

    structuredActiveLivenessResponse['gestures'] = gestures;
  }

  return structuredActiveLivenessResponse;
}