createRouterOutput method

Future<CreateRouterOutputResponse> createRouterOutput({
  1. required RouterOutputConfiguration configuration,
  2. required int maximumBitrate,
  3. required String name,
  4. required RoutingScope routingScope,
  5. required RouterOutputTier tier,
  6. String? availabilityZone,
  7. String? clientToken,
  8. MaintenanceConfiguration? maintenanceConfiguration,
  9. String? regionName,
  10. Map<String, String>? tags,
})

Creates a new router output in AWS Elemental MediaConnect.

May throw BadRequestException. May throw ConflictException. May throw ForbiddenException. May throw InternalServerErrorException. May throw RouterOutputServiceQuotaExceededException. May throw ServiceUnavailableException. May throw TooManyRequestsException.

Parameter configuration : The configuration settings for the router output.

Parameter maximumBitrate : The maximum bitrate for the router output.

Parameter name : The name of the router output.

Parameter routingScope : Specifies whether the router output can take inputs that are in different Regions. REGIONAL (default) - can only take inputs from same Region. GLOBAL - can take inputs from any Region.

Parameter tier : The tier level for the router output.

Parameter availabilityZone : The Availability Zone where you want to create the router output. This must be a valid Availability Zone for the region specified by regionName, or the current region if no regionName is provided.

Parameter clientToken : A unique identifier for the request to ensure idempotency.

Parameter maintenanceConfiguration : The maintenance configuration settings for the router output, including preferred maintenance windows and schedules.

Parameter regionName : The Amazon Web Services Region for the router output. Defaults to the current region if not specified.

Parameter tags : Key-value pairs that can be used to tag this router output.

Implementation

Future<CreateRouterOutputResponse> createRouterOutput({
  required RouterOutputConfiguration configuration,
  required int maximumBitrate,
  required String name,
  required RoutingScope routingScope,
  required RouterOutputTier tier,
  String? availabilityZone,
  String? clientToken,
  MaintenanceConfiguration? maintenanceConfiguration,
  String? regionName,
  Map<String, String>? tags,
}) async {
  final $payload = <String, dynamic>{
    'configuration': configuration,
    'maximumBitrate': maximumBitrate,
    'name': name,
    'routingScope': routingScope.value,
    'tier': tier.value,
    if (availabilityZone != null) 'availabilityZone': availabilityZone,
    'clientToken': clientToken ?? _s.generateIdempotencyToken(),
    if (maintenanceConfiguration != null)
      'maintenanceConfiguration': maintenanceConfiguration,
    if (regionName != null) 'regionName': regionName,
    if (tags != null) 'tags': tags,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri: '/v1/routerOutput',
    exceptionFnMap: _exceptionFns,
  );
  return CreateRouterOutputResponse.fromJson(response);
}