%% WARNING: DO NOT EDIT, AUTO-GENERATED CODE! %% See https://github.com/aws-beam/aws-codegen for more details. -module(aws_kinesis_video). -export([create_signaling_channel/2, create_signaling_channel/3, create_stream/2, create_stream/3, delete_signaling_channel/2, delete_signaling_channel/3, delete_stream/2, delete_stream/3, describe_edge_configuration/2, describe_edge_configuration/3, describe_image_generation_configuration/2, describe_image_generation_configuration/3, describe_mapped_resource_configuration/2, describe_mapped_resource_configuration/3, describe_media_storage_configuration/2, describe_media_storage_configuration/3, describe_notification_configuration/2, describe_notification_configuration/3, describe_signaling_channel/2, describe_signaling_channel/3, describe_stream/2, describe_stream/3, get_data_endpoint/2, get_data_endpoint/3, get_signaling_channel_endpoint/2, get_signaling_channel_endpoint/3, list_signaling_channels/2, list_signaling_channels/3, list_streams/2, list_streams/3, list_tags_for_resource/2, list_tags_for_resource/3, list_tags_for_stream/2, list_tags_for_stream/3, start_edge_configuration_update/2, start_edge_configuration_update/3, tag_resource/2, tag_resource/3, tag_stream/2, tag_stream/3, untag_resource/2, untag_resource/3, untag_stream/2, untag_stream/3, update_data_retention/2, update_data_retention/3, update_image_generation_configuration/2, update_image_generation_configuration/3, update_media_storage_configuration/2, update_media_storage_configuration/3, update_notification_configuration/2, update_notification_configuration/3, update_signaling_channel/2, update_signaling_channel/3, update_stream/2, update_stream/3]). -include_lib("hackney/include/hackney_lib.hrl"). %%==================================================================== %% API %%==================================================================== %% @doc Creates a signaling channel. %% %% `CreateSignalingChannel' is an asynchronous operation. create_signaling_channel(Client, Input) -> create_signaling_channel(Client, Input, []). create_signaling_channel(Client, Input0, Options0) -> Method = post, Path = ["/createSignalingChannel"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc Creates a new Kinesis video stream. %% %% When you create a new stream, Kinesis Video Streams assigns it a version %% number. When you change the stream's metadata, Kinesis Video Streams %% updates the version. %% %% `CreateStream' is an asynchronous operation. %% %% For information about how the service works, see How it Works. %% %% You must have permissions for the `KinesisVideo:CreateStream' action. create_stream(Client, Input) -> create_stream(Client, Input, []). create_stream(Client, Input0, Options0) -> Method = post, Path = ["/createStream"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc 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. delete_signaling_channel(Client, Input) -> delete_signaling_channel(Client, Input, []). delete_signaling_channel(Client, Input0, Options0) -> Method = post, Path = ["/deleteSignalingChannel"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc Deletes a Kinesis video stream and the data contained in the stream. %% %% This method marks the stream for deletion, and makes the data in the %% stream inaccessible immediately. %% %% To ensure that you have the latest version of the stream before deleting %% it, you can specify the stream version. Kinesis Video Streams assigns a %% version to each stream. When you update a stream, Kinesis Video Streams %% assigns a new version number. To get the latest stream version, use the %% `DescribeStream' API. %% %% This operation requires permission for the `KinesisVideo:DeleteStream' %% action. delete_stream(Client, Input) -> delete_stream(Client, Input, []). delete_stream(Client, Input0, Options0) -> Method = post, Path = ["/deleteStream"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc Describes a stream’s edge configuration that was set using the %% `StartEdgeConfigurationUpdate' API. %% %% Use this API to get the status of the configuration if the configuration %% is in sync with the Edge Agent. describe_edge_configuration(Client, Input) -> describe_edge_configuration(Client, Input, []). describe_edge_configuration(Client, Input0, Options0) -> Method = post, Path = ["/describeEdgeConfiguration"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc Gets the `ImageGenerationConfiguration' for a given Kinesis video %% stream. describe_image_generation_configuration(Client, Input) -> describe_image_generation_configuration(Client, Input, []). describe_image_generation_configuration(Client, Input0, Options0) -> Method = post, Path = ["/describeImageGenerationConfiguration"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc Returns the most current information about the stream. %% %% Either streamName or streamARN should be provided in the input. %% %% Returns the most current information about the stream. The %% `streamName' or `streamARN' should be provided in the input. describe_mapped_resource_configuration(Client, Input) -> describe_mapped_resource_configuration(Client, Input, []). describe_mapped_resource_configuration(Client, Input0, Options0) -> Method = post, Path = ["/describeMappedResourceConfiguration"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc Returns the most current information about the channel. %% %% Specify the `ChannelName' or `ChannelARN' in the input. describe_media_storage_configuration(Client, Input) -> describe_media_storage_configuration(Client, Input, []). describe_media_storage_configuration(Client, Input0, Options0) -> Method = post, Path = ["/describeMediaStorageConfiguration"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc Gets the `NotificationConfiguration' for a given Kinesis video %% stream. describe_notification_configuration(Client, Input) -> describe_notification_configuration(Client, Input, []). describe_notification_configuration(Client, Input0, Options0) -> Method = post, Path = ["/describeNotificationConfiguration"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc Returns the most current information about the signaling channel. %% %% You must specify either the name or the Amazon Resource Name (ARN) of the %% channel that you want to describe. describe_signaling_channel(Client, Input) -> describe_signaling_channel(Client, Input, []). describe_signaling_channel(Client, Input0, Options0) -> Method = post, Path = ["/describeSignalingChannel"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc Returns the most current information about the specified stream. %% %% You must specify either the `StreamName' or the `StreamARN'. describe_stream(Client, Input) -> describe_stream(Client, Input, []). describe_stream(Client, Input0, Options0) -> Method = post, Path = ["/describeStream"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc Gets an endpoint for a specified stream for either reading or %% writing. %% %% Use this endpoint in your application to read from the specified stream %% (using the `GetMedia' or `GetMediaForFragmentList' operations) or %% write to it (using the `PutMedia' operation). %% %% The returned endpoint does not have the API name appended. The client %% needs to add the API name to the returned endpoint. %% %% In the request, specify the stream either by `StreamName' or %% `StreamARN'. get_data_endpoint(Client, Input) -> get_data_endpoint(Client, Input, []). get_data_endpoint(Client, Input0, Options0) -> Method = post, Path = ["/getDataEndpoint"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc Provides an endpoint for the specified signaling channel to send and %% receive messages. %% %% This API uses the `SingleMasterChannelEndpointConfiguration' input %% parameter, which consists of the `Protocols' and `Role' %% properties. %% %% `Protocols' is used to determine the communication mechanism. For %% example, if you specify `WSS' as the protocol, this API produces a %% secure websocket endpoint. If you specify `HTTPS' as the protocol, %% this API generates an HTTPS endpoint. %% %% `Role' determines the messaging permissions. A `MASTER' role %% results in this API generating an endpoint that a client can use to %% communicate with any of the viewers on the channel. A `VIEWER' role %% results in this API generating an endpoint that a client can use to %% communicate only with a `MASTER'. get_signaling_channel_endpoint(Client, Input) -> get_signaling_channel_endpoint(Client, Input, []). get_signaling_channel_endpoint(Client, Input0, Options0) -> Method = post, Path = ["/getSignalingChannelEndpoint"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc Returns an array of `ChannelInfo' objects. %% %% Each object describes a signaling channel. To retrieve only those channels %% that satisfy a specific condition, you can specify a %% `ChannelNameCondition'. list_signaling_channels(Client, Input) -> list_signaling_channels(Client, Input, []). list_signaling_channels(Client, Input0, Options0) -> Method = post, Path = ["/listSignalingChannels"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc Returns an array of `StreamInfo' objects. %% %% Each object describes a stream. To retrieve only streams that satisfy a %% specific condition, you can specify a `StreamNameCondition'. list_streams(Client, Input) -> list_streams(Client, Input, []). list_streams(Client, Input0, Options0) -> Method = post, Path = ["/listStreams"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc Returns a list of tags associated with the specified signaling %% channel. list_tags_for_resource(Client, Input) -> list_tags_for_resource(Client, Input, []). list_tags_for_resource(Client, Input0, Options0) -> Method = post, Path = ["/ListTagsForResource"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc Returns a list of tags associated with the specified stream. %% %% In the request, you must specify either the `StreamName' or the %% `StreamARN'. list_tags_for_stream(Client, Input) -> list_tags_for_stream(Client, Input, []). list_tags_for_stream(Client, Input0, Options0) -> Method = post, Path = ["/listTagsForStream"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc An asynchronous API that updates a stream’s existing edge %% configuration. %% %% The Kinesis Video Stream will sync the stream’s edge configuration with %% the Edge Agent IoT Greengrass component that runs on an IoT Hub Device, %% setup at your premise. The time to sync can vary and depends on the %% connectivity of the Hub Device. The `SyncStatus' will be updated as %% the edge configuration is acknowledged, and synced with the Edge Agent. %% %% If this API is invoked for the first time, a new edge configuration will %% be created for the stream, and the sync status will be set to %% `SYNCING'. You will have to wait for the sync status to reach a %% terminal state such as: `IN_SYNC', or `SYNC_FAILED', before using %% this API again. If you invoke this API during the syncing process, a %% `ResourceInUseException' will be thrown. The connectivity of the %% stream’s edge configuration and the Edge Agent will be retried for 15 %% minutes. After 15 minutes, the status will transition into the %% `SYNC_FAILED' state. start_edge_configuration_update(Client, Input) -> start_edge_configuration_update(Client, Input, []). start_edge_configuration_update(Client, Input0, Options0) -> Method = post, Path = ["/startEdgeConfigurationUpdate"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc Adds one or more tags to a signaling channel. %% %% A tag is a key-value pair (the value is optional) that you can define and %% assign to Amazon Web Services resources. If you specify a tag that already %% exists, the tag value is replaced with the value that you specify in the %% request. For more information, see Using Cost Allocation Tags in the %% Billing and Cost Management and Cost Management User Guide. tag_resource(Client, Input) -> tag_resource(Client, Input, []). tag_resource(Client, Input0, Options0) -> Method = post, Path = ["/TagResource"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc Adds one or more tags to a stream. %% %% A tag is a key-value pair (the value is optional) that you can define and %% assign to Amazon Web Services resources. If you specify a tag that already %% exists, the tag value is replaced with the value that you specify in the %% request. For more information, see Using Cost Allocation Tags in the %% Billing and Cost Management and Cost Management User Guide. %% %% You must provide either the `StreamName' or the `StreamARN'. %% %% This operation requires permission for the `KinesisVideo:TagStream' %% action. %% %% A Kinesis video stream can support up to 50 tags. tag_stream(Client, Input) -> tag_stream(Client, Input, []). tag_stream(Client, Input0, Options0) -> Method = post, Path = ["/tagStream"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc Removes one or more tags from a signaling channel. %% %% In the request, specify only a tag key or keys; don't specify the %% value. If you specify a tag key that does not exist, it's ignored. untag_resource(Client, Input) -> untag_resource(Client, Input, []). untag_resource(Client, Input0, Options0) -> Method = post, Path = ["/UntagResource"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc Removes one or more tags from a stream. %% %% In the request, specify only a tag key or keys; don't specify the %% value. If you specify a tag key that does not exist, it's ignored. %% %% In the request, you must provide the `StreamName' or `StreamARN'. untag_stream(Client, Input) -> untag_stream(Client, Input, []). untag_stream(Client, Input0, Options0) -> Method = post, Path = ["/untagStream"], SuccessStatusCode = undefined, Options = [{send_body_as_binary, false}, {receive_body_as_binary, false}, {append_sha256_content_hash, false} | Options0], Headers = [], Input1 = Input0, CustomHeaders = [], Input2 = Input1, Query_ = [], Input = Input2, request(Client, Method, Path, Query_, CustomHeaders ++ Headers, Input, Options, SuccessStatusCode). %% @doc Increases or decreases the stream's data retention period by the %% value that you specify. %% %% To indicate whether you want to increase or decrease the data retention %% period, specify the `Operation' parameter in the request body. In the %% request, you must specify either the `StreamName' or the %% `StreamARN'. %% %% The retention period that you specify replaces the current value. %% %% This operation requires permission for the %% `KinesisVideo:UpdateDataRetention' action. %% %% Changing the data retention period affects the data in the stream as %% follows: %% %%