aws_sdk_connect/
client.rs#[derive(Debug)]
pub(crate) struct Handle {
pub(crate) conf: crate::Config,
#[allow(dead_code)] pub(crate) runtime_plugins: ::aws_smithy_runtime_api::client::runtime_plugin::RuntimePlugins,
}
#[derive(::std::clone::Clone, ::std::fmt::Debug)]
pub struct Client {
handle: ::std::sync::Arc<Handle>,
}
impl Client {
#[track_caller]
pub fn from_conf(conf: crate::Config) -> Self {
let handle = Handle {
conf: conf.clone(),
runtime_plugins: crate::config::base_client_runtime_plugins(conf),
};
if let Err(err) = Self::validate_config(&handle) {
panic!("Invalid client configuration: {err}");
}
Self {
handle: ::std::sync::Arc::new(handle),
}
}
pub fn config(&self) -> &crate::Config {
&self.handle.conf
}
fn validate_config(handle: &Handle) -> Result<(), ::aws_smithy_runtime_api::box_error::BoxError> {
let mut cfg = ::aws_smithy_types::config_bag::ConfigBag::base();
handle
.runtime_plugins
.apply_client_configuration(&mut cfg)?
.validate_base_client_config(&cfg)?;
Ok(())
}
}
impl Client {
#[track_caller]
pub fn new(sdk_config: &::aws_types::sdk_config::SdkConfig) -> Self {
Self::from_conf(sdk_config.into())
}
}
mod activate_evaluation_form;
mod associate_analytics_data_set;
mod associate_approved_origin;
mod associate_bot;
mod associate_default_vocabulary;
mod associate_flow;
mod associate_instance_storage_config;
mod associate_lambda_function;
mod associate_lex_bot;
mod associate_phone_number_contact_flow;
mod associate_queue_quick_connects;
mod associate_routing_profile_queues;
mod associate_security_key;
mod associate_traffic_distribution_group_user;
mod associate_user_proficiencies;
mod batch_associate_analytics_data_set;
mod batch_disassociate_analytics_data_set;
mod batch_get_attached_file_metadata;
mod batch_get_flow_association;
mod batch_put_contact;
mod claim_phone_number;
mod complete_attached_file_upload;
mod create_agent_status;
mod create_contact;
mod create_contact_flow;
mod create_contact_flow_module;
mod create_contact_flow_version;
mod create_email_address;
mod create_evaluation_form;
mod create_hours_of_operation;
mod create_hours_of_operation_override;
mod create_instance;
mod create_integration_association;
mod create_participant;
mod create_persistent_contact_association;
mod create_predefined_attribute;
mod create_prompt;
mod create_push_notification_registration;
mod create_queue;
mod create_quick_connect;
mod create_routing_profile;
mod create_rule;
mod create_security_profile;
mod create_task_template;
mod create_traffic_distribution_group;
mod create_use_case;
mod create_user;
mod create_user_hierarchy_group;
mod create_view;
mod create_view_version;
mod create_vocabulary;
pub mod customize;
mod deactivate_evaluation_form;
mod delete_attached_file;
mod delete_contact_evaluation;
mod delete_contact_flow;
mod delete_contact_flow_module;
mod delete_email_address;
mod delete_evaluation_form;
mod delete_hours_of_operation;
mod delete_hours_of_operation_override;
mod delete_instance;
mod delete_integration_association;
mod delete_predefined_attribute;
mod delete_prompt;
mod delete_push_notification_registration;
mod delete_queue;
mod delete_quick_connect;
mod delete_routing_profile;
mod delete_rule;
mod delete_security_profile;
mod delete_task_template;
mod delete_traffic_distribution_group;
mod delete_use_case;
mod delete_user;
mod delete_user_hierarchy_group;
mod delete_view;
mod delete_view_version;
mod delete_vocabulary;
mod describe_agent_status;
mod describe_authentication_profile;
mod describe_contact;
mod describe_contact_evaluation;
mod describe_contact_flow;
mod describe_contact_flow_module;
mod describe_email_address;
mod describe_evaluation_form;
mod describe_hours_of_operation;
mod describe_hours_of_operation_override;
mod describe_instance;
mod describe_instance_attribute;
mod describe_instance_storage_config;
mod describe_phone_number;
mod describe_predefined_attribute;
mod describe_prompt;
mod describe_queue;
mod describe_quick_connect;
mod describe_routing_profile;
mod describe_rule;
mod describe_security_profile;
mod describe_traffic_distribution_group;
mod describe_user;
mod describe_user_hierarchy_group;
mod describe_user_hierarchy_structure;
mod describe_view;
mod describe_vocabulary;
mod disassociate_analytics_data_set;
mod disassociate_approved_origin;
mod disassociate_bot;
mod disassociate_flow;
mod disassociate_instance_storage_config;
mod disassociate_lambda_function;
mod disassociate_lex_bot;
mod disassociate_phone_number_contact_flow;
mod disassociate_queue_quick_connects;
mod disassociate_routing_profile_queues;
mod disassociate_security_key;
mod disassociate_traffic_distribution_group_user;
mod disassociate_user_proficiencies;
mod dismiss_user_contact;
mod get_attached_file;
mod get_contact_attributes;
mod get_current_metric_data;
mod get_current_user_data;
mod get_effective_hours_of_operations;
mod get_federation_token;
mod get_flow_association;
mod get_metric_data;
mod get_metric_data_v2;
mod get_prompt_file;
mod get_task_template;
mod get_traffic_distribution;
mod import_phone_number;
mod list_agent_statuses;
mod list_analytics_data_associations;
mod list_approved_origins;
mod list_associated_contacts;
mod list_authentication_profiles;
mod list_bots;
mod list_contact_evaluations;
mod list_contact_flow_modules;
mod list_contact_flow_versions;
mod list_contact_flows;
mod list_contact_references;
mod list_default_vocabularies;
mod list_evaluation_form_versions;
mod list_evaluation_forms;
mod list_flow_associations;
mod list_hours_of_operation_overrides;
mod list_hours_of_operations;
mod list_instance_attributes;
mod list_instance_storage_configs;
mod list_instances;
mod list_integration_associations;
mod list_lambda_functions;
mod list_lex_bots;
mod list_phone_numbers;
mod list_phone_numbers_v2;
mod list_predefined_attributes;
mod list_prompts;
mod list_queue_quick_connects;
mod list_queues;
mod list_quick_connects;
mod list_realtime_contact_analysis_segments_v2;
mod list_routing_profile_queues;
mod list_routing_profiles;
mod list_rules;
mod list_security_keys;
mod list_security_profile_applications;
mod list_security_profile_permissions;
mod list_security_profiles;
mod list_tags_for_resource;
mod list_task_templates;
mod list_traffic_distribution_group_users;
mod list_traffic_distribution_groups;
mod list_use_cases;
mod list_user_hierarchy_groups;
mod list_user_proficiencies;
mod list_users;
mod list_view_versions;
mod list_views;
mod monitor_contact;
mod pause_contact;
mod put_user_status;
mod release_phone_number;
mod replicate_instance;
mod resume_contact;
mod resume_contact_recording;
mod search_agent_statuses;
mod search_available_phone_numbers;
mod search_contact_flow_modules;
mod search_contact_flows;
mod search_contacts;
mod search_email_addresses;
mod search_hours_of_operation_overrides;
mod search_hours_of_operations;
mod search_predefined_attributes;
mod search_prompts;
mod search_queues;
mod search_quick_connects;
mod search_resource_tags;
mod search_routing_profiles;
mod search_security_profiles;
mod search_user_hierarchy_groups;
mod search_users;
mod search_vocabularies;
mod send_chat_integration_event;
mod send_outbound_email;
mod start_attached_file_upload;
mod start_chat_contact;
mod start_contact_evaluation;
mod start_contact_recording;
mod start_contact_streaming;
mod start_email_contact;
mod start_outbound_chat_contact;
mod start_outbound_email_contact;
mod start_outbound_voice_contact;
mod start_screen_sharing;
mod start_task_contact;
mod start_web_rtc_contact;
mod stop_contact;
mod stop_contact_recording;
mod stop_contact_streaming;
mod submit_contact_evaluation;
mod suspend_contact_recording;
mod tag_contact;
mod tag_resource;
mod transfer_contact;
mod untag_contact;
mod untag_resource;
mod update_agent_status;
mod update_authentication_profile;
mod update_contact;
mod update_contact_attributes;
mod update_contact_evaluation;
mod update_contact_flow_content;
mod update_contact_flow_metadata;
mod update_contact_flow_module_content;
mod update_contact_flow_module_metadata;
mod update_contact_flow_name;
mod update_contact_routing_data;
mod update_contact_schedule;
mod update_email_address_metadata;
mod update_evaluation_form;
mod update_hours_of_operation;
mod update_hours_of_operation_override;
mod update_instance_attribute;
mod update_instance_storage_config;
mod update_participant_authentication;
mod update_participant_role_config;
mod update_phone_number;
mod update_phone_number_metadata;
mod update_predefined_attribute;
mod update_prompt;
mod update_queue_hours_of_operation;
mod update_queue_max_contacts;
mod update_queue_name;
mod update_queue_outbound_caller_config;
mod update_queue_outbound_email_config;
mod update_queue_status;
mod update_quick_connect_config;
mod update_quick_connect_name;
mod update_routing_profile_agent_availability_timer;
mod update_routing_profile_concurrency;
mod update_routing_profile_default_outbound_queue;
mod update_routing_profile_name;
mod update_routing_profile_queues;
mod update_rule;
mod update_security_profile;
mod update_task_template;
mod update_traffic_distribution;
mod update_user_hierarchy;
mod update_user_hierarchy_group_name;
mod update_user_hierarchy_structure;
mod update_user_identity_info;
mod update_user_phone_config;
mod update_user_proficiencies;
mod update_user_routing_profile;
mod update_user_security_profiles;
mod update_view_content;
mod update_view_metadata;