Skip to content

start_speaker_search_task

start_speaker_search_task(
    identifier: NonEmptyString,
    voice_profile_domain_arn: Arn,
    *,
    config_overrides: Optional[ChimeSDKMediaPipelinesClientConfig] = None,
    kinesis_video_stream_source_task_configuration: Optional[
        KinesisVideoStreamSourceTaskConfiguration
    ] = None,
    client_request_token: Optional[ClientRequestToken] = None,
) -> StartSpeakerSearchTaskResponse

Starts a speaker search task.

Before starting any speaker search tasks, you must provide all notices and obtain all consents from the speaker as required under applicable privacy and biometrics laws, and as required under the AWS service terms for the Amazon Chime SDK.

Parameters:

  • identifier (NonEmptyString) –

    The unique identifier of the resource to be updated. Valid values include the ID and ARN of the media insights pipeline.

  • voice_profile_domain_arn (Arn) –

    The ARN of the voice profile domain that will store the voice profile.

  • kinesis_video_stream_source_task_configuration (Optional[KinesisVideoStreamSourceTaskConfiguration], default: None ) –

    The task configuration for the Kinesis video stream source of the media insights pipeline.

  • client_request_token (Optional[ClientRequestToken], default: None ) –

    The unique identifier for the client request. Use a different token for different speaker search tasks.

Raises:

Source code in docs_src/capo_chime_sdk_media_pipelines/_services/chime_sdk_media_pipelines.py
def start_speaker_search_task(
    self,
    identifier: "capo_chime_sdk_media_pipelines.types.non_empty_string.NonEmptyString",
    voice_profile_domain_arn: "capo_chime_sdk_media_pipelines.types.arn.Arn",
    *,
    config_overrides: Optional[ChimeSDKMediaPipelinesClientConfig] = None,
    kinesis_video_stream_source_task_configuration: Optional[
        "capo_chime_sdk_media_pipelines.types.kinesis_video_stream_source_task_configuration.KinesisVideoStreamSourceTaskConfiguration"
    ] = None,
    client_request_token: Optional[
        "capo_chime_sdk_media_pipelines.types.client_request_token.ClientRequestToken"
    ] = None,
) -> "capo_chime_sdk_media_pipelines.types.start_speaker_search_task_response.StartSpeakerSearchTaskResponse":
    """<p>Starts a speaker search task.</p> <important> <p>Before starting any speaker search tasks, you must provide all notices and obtain all consents from the speaker as required under applicable privacy and biometrics laws, and as required under the <a href="https://aws.amazon.com/service-terms/">AWS service terms</a> for the Amazon Chime SDK.</p> </important>

    Args:
        identifier: <p>The unique identifier of the resource to be updated. Valid values include the ID and ARN of the media insights pipeline.</p>
        voice_profile_domain_arn: <p>The ARN of the voice profile domain that will store the voice profile.</p>
        kinesis_video_stream_source_task_configuration: <p>The task configuration for the Kinesis video stream source of the media insights pipeline.</p>
        client_request_token: <p>The unique identifier for the client request. Use a different token for different speaker search tasks.</p>

    Raises:
        capo_chime_sdk_media_pipelines.errors.bad_request_exception.BadRequestException: <p>The input parameters don't match the service's restrictions.</p>
        capo_chime_sdk_media_pipelines.errors.conflict_exception.ConflictException: <p>The request could not be processed because of conflict in the current state of the resource.</p>
        capo_chime_sdk_media_pipelines.errors.forbidden_exception.ForbiddenException: <p>The client is permanently forbidden from making the request.</p>
        capo_chime_sdk_media_pipelines.errors.not_found_exception.NotFoundException: <p>One or more of the resources in the request does not exist in the system.</p>
        capo_chime_sdk_media_pipelines.errors.service_failure_exception.ServiceFailureException: <p>The service encountered an unexpected error.</p>
        capo_chime_sdk_media_pipelines.errors.service_unavailable_exception.ServiceUnavailableException: <p>The service is currently unavailable.</p>
        capo_chime_sdk_media_pipelines.errors.throttled_client_exception.ThrottledClientException: <p>The client exceeded its request rate limit.</p>
        capo_chime_sdk_media_pipelines.errors.unauthorized_client_exception.UnauthorizedClientException: <p>The client is not currently authorized to make the request.</p>
        capo_chime_sdk_media_pipelines.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    def _handler(
        req: "OperationRequest[capo_chime_sdk_media_pipelines.types.start_speaker_search_task_request.StartSpeakerSearchTaskRequest]",
    ) -> OperationResponse[
        "capo_chime_sdk_media_pipelines.types.start_speaker_search_task_response.StartSpeakerSearchTaskResponse"
    ]:
        import capo_chime_sdk_media_pipelines._operations.chime_sdk_media_pipelines_service.start_speaker_search_task

        output, http_response = (
            capo_chime_sdk_media_pipelines._operations.chime_sdk_media_pipelines_service.start_speaker_search_task.start_speaker_search_task(
                req.options, req.input
            )
        )
        return OperationResponse(output=output, response=http_response)

    def _redact_input(
        input_: "capo_chime_sdk_media_pipelines.types.start_speaker_search_task_request.StartSpeakerSearchTaskRequest",
    ) -> dict[str, Any]:
        import capo_chime_sdk_media_pipelines.types.start_speaker_search_task_request

        return capo_chime_sdk_media_pipelines.types.start_speaker_search_task_request.redact_sensitive(
            input_
        )

    interceptors_, options_ = self.operation_options(
        config_overrides,
        OperationLogging("StartSpeakerSearchTask", redact_input=_redact_input),
    )
    input_: capo_chime_sdk_media_pipelines.types.start_speaker_search_task_request.StartSpeakerSearchTaskRequest = {
        "identifier": identifier,
        "voice_profile_domain_arn": voice_profile_domain_arn,
    }
    if kinesis_video_stream_source_task_configuration is not None:
        input_["kinesis_video_stream_source_task_configuration"] = (
            kinesis_video_stream_source_task_configuration
        )
    if client_request_token is None:
        client_request_token = str(uuid.uuid4())
    input_["client_request_token"] = client_request_token

    response = execute_pipeline(
        OperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    response.response.close()
    return response.output