Skip to content

delete_signaling_channel async

delete_signaling_channel(
    channel_arn: ResourceARN,
    *,
    config_overrides: Optional[AsyncKinesisVideoClientConfig] = None,
    current_version: Optional[Version] = None,
) -> DeleteSignalingChannelOutput

Deletes a specified signaling channel. DeleteSignalingChannel is an asynchronous operation. If you don't specify the channel's current version, the most recent version is deleted.

Parameters:

  • channel_arn (ResourceARN) –

    The Amazon Resource Name (ARN) of the signaling channel that you want to delete.

  • current_version (Optional[Version], default: None ) –

    The current version of the signaling channel that you want to delete. You can obtain the current version by invoking the DescribeSignalingChannel or ListSignalingChannels API operations.

Raises:

  • AccessDeniedException –

    You do not have required permissions to perform this operation.

  • ClientLimitExceededException –

    Kinesis Video Streams has throttled the request because you have exceeded the limit of allowed client calls. Try making the call later.

  • InvalidArgumentException –

    The value for this input parameter is invalid.

  • ResourceInUseException –

    When the input StreamARN or ChannelARN in CLOUD_STORAGE_MODE is already mapped to a different Kinesis Video Stream resource, or if the provided input StreamARN or ChannelARN is not in Active status, try one of the following :

    1. The DescribeMediaStorageConfiguration API to determine what the stream given channel is mapped to.

    2. The DescribeMappedResourceConfiguration API to determine the channel that the given stream is mapped to.

    3. The DescribeStream or DescribeSignalingChannel API to determine the status of the resource.

  • ResourceNotFoundException –

    Amazon Kinesis Video Streams can't find the stream that you specified.

  • VersionMismatchException –

    The stream version that you specified is not the latest version. To get the latest version, use the DescribeStream API.

  • UnknownServiceError –

    The service returned an error code this client does not model.

Source code in docs_src/capo_kinesis_video/_services/async_kinesis_video.py
async def delete_signaling_channel(
    self,
    channel_arn: "capo_kinesis_video.types.resource_arn.ResourceARN",
    *,
    config_overrides: Optional[AsyncKinesisVideoClientConfig] = None,
    current_version: Optional["capo_kinesis_video.types.version.Version"] = None,
) -> "capo_kinesis_video.types.delete_signaling_channel_output.DeleteSignalingChannelOutput":
    """<p>Deletes a specified signaling channel. <code>DeleteSignalingChannel</code> is an asynchronous operation. If you don't specify the channel's current version, the most recent version is deleted.</p>

    Args:
        channel_arn: <p>The Amazon Resource Name (ARN) of the signaling channel that you want to delete.</p>
        current_version: <p>The current version of the signaling channel that you want to delete. You can obtain the current version by invoking the <code>DescribeSignalingChannel</code> or <code>ListSignalingChannels</code> API operations.</p>

    Raises:
        capo_kinesis_video.errors.access_denied_exception.AccessDeniedException: <p>You do not have required permissions to perform this operation.</p>
        capo_kinesis_video.errors.client_limit_exceeded_exception.ClientLimitExceededException: <p>Kinesis Video Streams has throttled the request because you have exceeded the limit of allowed client calls. Try making the call later.</p>
        capo_kinesis_video.errors.invalid_argument_exception.InvalidArgumentException: <p>The value for this input parameter is invalid.</p>
        capo_kinesis_video.errors.resource_in_use_exception.ResourceInUseException: <p>When the input <code>StreamARN</code> or <code>ChannelARN</code> in <code>CLOUD_STORAGE_MODE</code> is already mapped to a different Kinesis Video Stream resource, or if the provided input <code>StreamARN</code> or <code>ChannelARN</code> is not in Active status, try one of the following : </p> <ol> <li> <p>The <code>DescribeMediaStorageConfiguration</code> API to determine what the stream given channel is mapped to. </p> </li> <li> <p>The <code>DescribeMappedResourceConfiguration</code> API to determine the channel that the given stream is mapped to. </p> </li> <li> <p>The <code>DescribeStream</code> or <code>DescribeSignalingChannel</code> API to determine the status of the resource. </p> </li> </ol>
        capo_kinesis_video.errors.resource_not_found_exception.ResourceNotFoundException: <p>Amazon Kinesis Video Streams can't find the stream that you specified.</p>
        capo_kinesis_video.errors.version_mismatch_exception.VersionMismatchException: <p>The stream version that you specified is not the latest version. To get the latest version, use the <a href="https://docs.aws.amazon.com/kinesisvideostreams/latest/dg/API_DescribeStream.html">DescribeStream</a> API.</p>
        capo_kinesis_video.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_kinesis_video.types.delete_signaling_channel_input.DeleteSignalingChannelInput]",
    ) -> AsyncOperationResponse[
        "capo_kinesis_video.types.delete_signaling_channel_output.DeleteSignalingChannelOutput"
    ]:
        import capo_kinesis_video._operations.kinesis_video_20170930.delete_signaling_channel

        (
            output,
            http_response,
        ) = await capo_kinesis_video._operations.kinesis_video_20170930.delete_signaling_channel.async_delete_signaling_channel(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("DeleteSignalingChannel")
    )
    input_: capo_kinesis_video.types.delete_signaling_channel_input.DeleteSignalingChannelInput = {
        "channel_arn": channel_arn
    }
    if current_version is not None:
        input_["current_version"] = current_version

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output