// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`CreateRoom`](crate::operation::create_room::builders::CreateRoomFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`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>
/// - [`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>
/// - [`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>
/// - [`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>
/// - [`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/general/latest/gr/aws_tagging.html">Tagging AWS Resources</a> 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>
/// - [`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>
/// - On success, responds with [`CreateRoomOutput`](crate::operation::create_room::CreateRoomOutput) with field(s):
/// - [`arn(Option<String>)`](crate::operation::create_room::CreateRoomOutput::arn): <p>Room ARN, assigned by the system.</p>
/// - [`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>
/// - [`name(Option<String>)`](crate::operation::create_room::CreateRoomOutput::name): <p>Room name, from the request (if specified).</p>
/// - [`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>
/// - [`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>
/// - [`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>
/// - [`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>
/// - [`message_review_handler(Option<MessageReviewHandler>)`](crate::operation::create_room::CreateRoomOutput::message_review_handler): <p>Configuration information for optional review of messages.</p>
/// - [`tags(Option<HashMap::<String, String>>)`](crate::operation::create_room::CreateRoomOutput::tags): <p>Tags attached to the resource, from the request (if specified).</p>
/// - [`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>
/// - On failure, responds with [`SdkError<CreateRoomError>`](crate::operation::create_room::CreateRoomError)
pub fn create_room(&self) -> crate::operation::create_room::builders::CreateRoomFluentBuilder {
crate::operation::create_room::builders::CreateRoomFluentBuilder::new(self.handle.clone())
}
}