updateInput method

Future<UpdateInputResponse> updateInput({
  1. required String inputId,
  2. List<InputDestinationRequest>? destinations,
  3. List<InputDeviceRequest>? inputDevices,
  4. List<String>? inputSecurityGroups,
  5. List<MediaConnectFlowRequest>? mediaConnectFlows,
  6. MulticastSettingsUpdateRequest? multicastSettings,
  7. String? name,
  8. String? roleArn,
  9. List<String>? sdiSources,
  10. Smpte2110ReceiverGroupSettings? smpte2110ReceiverGroupSettings,
  11. List<InputSourceRequest>? sources,
  12. SpecialRouterSettings? specialRouterSettings,
  13. SrtSettingsRequest? srtSettings,
})

Updates an input.

May throw BadGatewayException. May throw BadRequestException. May throw ConflictException. May throw ForbiddenException. May throw GatewayTimeoutException. May throw InternalServerErrorException. May throw NotFoundException.

Parameter inputId : Unique ID of the input.

Parameter destinations : Destination settings for PUSH type inputs.

Parameter inputDevices : Settings for the devices.

Parameter inputSecurityGroups : A list of security groups referenced by IDs to attach to the input.

Parameter mediaConnectFlows : A list of the MediaConnect Flow ARNs that you want to use as the source of the input. You can specify as few as one Flow and presently, as many as two. The only requirement is when you have more than one is that each Flow is in a separate Availability Zone as this ensures your EML input is redundant to AZ issues.

Parameter multicastSettings : Multicast Input settings.

Parameter name : Name of the input.

Parameter roleArn : The Amazon Resource Name (ARN) of the role this input assumes during and after creation.

Parameter smpte2110ReceiverGroupSettings : Include this parameter if the input is a SMPTE 2110 input, to identify the stream sources for this input.

Parameter sources : The source URLs for a PULL-type input. Every PULL type input needs exactly two source URLs for redundancy. Only specify sources for PULL type Inputs. Leave Destinations empty.

Parameter specialRouterSettings : When using MediaConnect Router as the source of a MediaLive input there's a special handoff that occurs when a router output is created. This group of settings is set on your behalf by the MediaConnect Router service using this set of settings. This setting object can only by used by that service.

Parameter srtSettings : The settings associated with an SRT input.

Implementation

Future<UpdateInputResponse> updateInput({
  required String inputId,
  List<InputDestinationRequest>? destinations,
  List<InputDeviceRequest>? inputDevices,
  List<String>? inputSecurityGroups,
  List<MediaConnectFlowRequest>? mediaConnectFlows,
  MulticastSettingsUpdateRequest? multicastSettings,
  String? name,
  String? roleArn,
  List<String>? sdiSources,
  Smpte2110ReceiverGroupSettings? smpte2110ReceiverGroupSettings,
  List<InputSourceRequest>? sources,
  SpecialRouterSettings? specialRouterSettings,
  SrtSettingsRequest? srtSettings,
}) async {
  final $payload = <String, dynamic>{
    if (destinations != null) 'destinations': destinations,
    if (inputDevices != null) 'inputDevices': inputDevices,
    if (inputSecurityGroups != null)
      'inputSecurityGroups': inputSecurityGroups,
    if (mediaConnectFlows != null) 'mediaConnectFlows': mediaConnectFlows,
    if (multicastSettings != null) 'multicastSettings': multicastSettings,
    if (name != null) 'name': name,
    if (roleArn != null) 'roleArn': roleArn,
    if (sdiSources != null) 'sdiSources': sdiSources,
    if (smpte2110ReceiverGroupSettings != null)
      'smpte2110ReceiverGroupSettings': smpte2110ReceiverGroupSettings,
    if (sources != null) 'sources': sources,
    if (specialRouterSettings != null)
      'specialRouterSettings': specialRouterSettings,
    if (srtSettings != null) 'srtSettings': srtSettings,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'PUT',
    requestUri: '/prod/inputs/${Uri.encodeComponent(inputId)}',
    exceptionFnMap: _exceptionFns,
  );
  return UpdateInputResponse.fromJson(response);
}