aws_sdk_ivschat/client/create_room.rs
1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3 /// Constructs a fluent builder for the [`CreateRoom`](crate::operation::create_room::builders::CreateRoomFluentBuilder) operation.
4 ///
5 /// - The fluent builder is configurable:
6 /// - [`name(impl Into<String>)`](crate::operation::create_room::builders::CreateRoomFluentBuilder::name) / [`set_name(Option<String>)`](crate::operation::create_room::builders::CreateRoomFluentBuilder::set_name):<br>required: **false**<br><p>Room name. The value does not need to be unique.</p><br>
7 /// - [`maximum_message_rate_per_second(i32)`](crate::operation::create_room::builders::CreateRoomFluentBuilder::maximum_message_rate_per_second) / [`set_maximum_message_rate_per_second(Option<i32>)`](crate::operation::create_room::builders::CreateRoomFluentBuilder::set_maximum_message_rate_per_second):<br>required: **false**<br><p>Maximum number of messages per second that can be sent to the room (by all clients). Default: 10.</p><br>
8 /// - [`maximum_message_length(i32)`](crate::operation::create_room::builders::CreateRoomFluentBuilder::maximum_message_length) / [`set_maximum_message_length(Option<i32>)`](crate::operation::create_room::builders::CreateRoomFluentBuilder::set_maximum_message_length):<br>required: **false**<br><p>Maximum number of characters in a single message. Messages are expected to be UTF-8 encoded and this limit applies specifically to rune/code-point count, not number of bytes. Default: 500.</p><br>
9 /// - [`message_review_handler(MessageReviewHandler)`](crate::operation::create_room::builders::CreateRoomFluentBuilder::message_review_handler) / [`set_message_review_handler(Option<MessageReviewHandler>)`](crate::operation::create_room::builders::CreateRoomFluentBuilder::set_message_review_handler):<br>required: **false**<br><p>Configuration information for optional review of messages.</p><br>
10 /// - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_room::builders::CreateRoomFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_room::builders::CreateRoomFluentBuilder::set_tags):<br>required: **false**<br><p>Tags to attach to the resource. Array of maps, each of the form <code>string:string (key:value)</code>. See <a href="https://docs.aws.amazon.com/tag-editor/latest/userguide/best-practices-and-strats.html">Best practices and strategies</a> in <i>Tagging Amazon Web Services Resources and Tag Editor</i> for details, including restrictions that apply to tags and "Tag naming limits and requirements"; Amazon IVS Chat has no constraints beyond what is documented there.</p><br>
11 /// - [`logging_configuration_identifiers(impl Into<String>)`](crate::operation::create_room::builders::CreateRoomFluentBuilder::logging_configuration_identifiers) / [`set_logging_configuration_identifiers(Option<Vec::<String>>)`](crate::operation::create_room::builders::CreateRoomFluentBuilder::set_logging_configuration_identifiers):<br>required: **false**<br><p>Array of logging-configuration identifiers attached to the room.</p><br>
12 /// - On success, responds with [`CreateRoomOutput`](crate::operation::create_room::CreateRoomOutput) with field(s):
13 /// - [`arn(Option<String>)`](crate::operation::create_room::CreateRoomOutput::arn): <p>Room ARN, assigned by the system.</p>
14 /// - [`id(Option<String>)`](crate::operation::create_room::CreateRoomOutput::id): <p>Room ID, generated by the system. This is a relative identifier, the part of the ARN that uniquely identifies the room.</p>
15 /// - [`name(Option<String>)`](crate::operation::create_room::CreateRoomOutput::name): <p>Room name, from the request (if specified).</p>
16 /// - [`create_time(Option<DateTime>)`](crate::operation::create_room::CreateRoomOutput::create_time): <p>Time when the room was created. This is an ISO 8601 timestamp; <i>note that this is returned as a string</i>.</p>
17 /// - [`update_time(Option<DateTime>)`](crate::operation::create_room::CreateRoomOutput::update_time): <p>Time of the room’s last update. This is an ISO 8601 timestamp; <i>note that this is returned as a string</i>.</p>
18 /// - [`maximum_message_rate_per_second(Option<i32>)`](crate::operation::create_room::CreateRoomOutput::maximum_message_rate_per_second): <p>Maximum number of messages per second that can be sent to the room (by all clients), from the request (if specified).</p>
19 /// - [`maximum_message_length(Option<i32>)`](crate::operation::create_room::CreateRoomOutput::maximum_message_length): <p>Maximum number of characters in a single message, from the request (if specified).</p>
20 /// - [`message_review_handler(Option<MessageReviewHandler>)`](crate::operation::create_room::CreateRoomOutput::message_review_handler): <p>Configuration information for optional review of messages.</p>
21 /// - [`tags(Option<HashMap::<String, String>>)`](crate::operation::create_room::CreateRoomOutput::tags): <p>Tags attached to the resource, from the request (if specified).</p>
22 /// - [`logging_configuration_identifiers(Option<Vec::<String>>)`](crate::operation::create_room::CreateRoomOutput::logging_configuration_identifiers): <p>Array of logging configurations attached to the room, from the request (if specified).</p>
23 /// - On failure, responds with [`SdkError<CreateRoomError>`](crate::operation::create_room::CreateRoomError)
24 pub fn create_room(&self) -> crate::operation::create_room::builders::CreateRoomFluentBuilder {
25 crate::operation::create_room::builders::CreateRoomFluentBuilder::new(self.handle.clone())
26 }
27}