Struct aws_sdk_kinesisvideosignaling::client::Client
source · pub struct Client { /* private fields */ }
Expand description
Client for Amazon Kinesis Video Signaling Channels
Client for invoking operations on Amazon Kinesis Video Signaling Channels. Each operation on Amazon Kinesis Video Signaling Channels is a method on this
this struct. .send()
MUST be invoked on the generated operations to dispatch the request to the service.
Constructing a Client
A Config
is required to construct a client. For most use cases, the aws-config
crate should be used to automatically resolve this config using
aws_config::load_from_env()
, since this will resolve an SdkConfig
which can be shared
across multiple different AWS SDK clients. This config resolution process can be customized
by calling aws_config::from_env()
instead, which returns a ConfigLoader
that uses
the builder pattern to customize the default config.
In the simplest case, creating a client looks as follows:
let config = aws_config::load_from_env().await;
let client = aws_sdk_kinesisvideosignaling::Client::new(&config);
Occasionally, SDKs may have additional service-specific that can be set on the Config
that
is absent from SdkConfig
, or slightly different settings for a specific client may be desired.
The Config
struct implements From<&SdkConfig>
, so setting these specific settings can be
done as follows:
let sdk_config = ::aws_config::load_from_env().await;
let config = aws_sdk_kinesisvideosignaling::config::Builder::from(&sdk_config)
.some_service_specific_setting("value")
.build();
See the aws-config
docs and Config
for more information on customizing configuration.
Note: Client construction is expensive due to connection thread pool initialization, and should be done once at application start-up.
Using the Client
A client has a function for every operation that can be performed by the service.
For example, the GetIceServerConfig
operation has
a Client::get_ice_server_config
, function which returns a builder for that operation.
The fluent builder ultimately has a send()
function that returns an async future that
returns a result, as illustrated below:
let result = client.get_ice_server_config()
.channel_arn("example")
.send()
.await;
The underlying HTTP requests that get made by this can be modified with the customize_operation
function on the fluent builder. See the customize
module for more
information.
Implementations§
source§impl Client
impl Client
sourcepub fn get_ice_server_config(&self) -> GetIceServerConfigFluentBuilder
pub fn get_ice_server_config(&self) -> GetIceServerConfigFluentBuilder
Constructs a fluent builder for the GetIceServerConfig
operation.
- The fluent builder is configurable:
channel_arn(impl Into<String>)
/set_channel_arn(Option<String>)
:The ARN of the signaling channel to be used for the peer-to-peer connection between configured peers.
client_id(impl Into<String>)
/set_client_id(Option<String>)
:Unique identifier for the viewer. Must be unique within the signaling channel.
service(Service)
/set_service(Option<Service>)
:Specifies the desired service. Currently,
TURN
is the only valid value.username(impl Into<String>)
/set_username(Option<String>)
:An optional user ID to be associated with the credentials.
- On success, responds with
GetIceServerConfigOutput
with field(s):ice_server_list(Option<Vec<IceServer>>)
:The list of ICE server information objects.
- On failure, responds with
SdkError<GetIceServerConfigError>
source§impl Client
impl Client
sourcepub fn send_alexa_offer_to_master(&self) -> SendAlexaOfferToMasterFluentBuilder
pub fn send_alexa_offer_to_master(&self) -> SendAlexaOfferToMasterFluentBuilder
Constructs a fluent builder for the SendAlexaOfferToMaster
operation.
- The fluent builder is configurable:
channel_arn(impl Into<String>)
/set_channel_arn(Option<String>)
:The ARN of the signaling channel by which Alexa and the master peer communicate.
sender_client_id(impl Into<String>)
/set_sender_client_id(Option<String>)
:The unique identifier for the sender client.
message_payload(impl Into<String>)
/set_message_payload(Option<String>)
:The base64-encoded SDP offer content.
- On success, responds with
SendAlexaOfferToMasterOutput
with field(s):answer(Option<String>)
:The base64-encoded SDP answer content.
- On failure, responds with
SdkError<SendAlexaOfferToMasterError>
source§impl Client
impl Client
sourcepub fn new(sdk_config: &SdkConfig) -> Self
pub fn new(sdk_config: &SdkConfig) -> Self
Creates a new client from an SDK Config.
Panics
- This method will panic if the
sdk_config
is missing an async sleep implementation. If you experience this panic, set thesleep_impl
on the Config passed into this function to fix it. - This method will panic if the
sdk_config
is missing an HTTP connector. If you experience this panic, set thehttp_connector
on the Config passed into this function to fix it.