createRoutingProfile method
- required String defaultOutboundQueueId,
- required String description,
- required String instanceId,
- required List<
MediaConcurrency> mediaConcurrencies, - required String name,
- AgentAvailabilityTimer? agentAvailabilityTimer,
- List<
RoutingProfileManualAssignmentQueueConfig> ? manualAssignmentQueueConfigs, - List<
RoutingProfileQueueConfig> ? queueConfigs, - Map<
String, String> ? tags,
Creates a new routing profile.
May throw DuplicateResourceException.
May throw InternalServiceException.
May throw InvalidParameterException.
May throw InvalidRequestException.
May throw LimitExceededException.
May throw ResourceNotFoundException.
May throw ThrottlingException.
Parameter defaultOutboundQueueId :
The default outbound queue for the routing profile.
Parameter description :
Description of the routing profile. Must not be more than 250 characters.
Parameter instanceId :
The identifier of the Connect Customer instance. You can find
the instance ID in the Amazon Resource Name (ARN) of the instance.
Parameter mediaConcurrencies :
The channels that agents can handle in the Contact Control Panel (CCP) for
this routing profile.
Parameter name :
The name of the routing profile. Must not be more than 127 characters.
Parameter agentAvailabilityTimer :
Whether agents with this routing profile will have their routing order
calculated based on longest idle time or time since their last
inbound contact.
Parameter manualAssignmentQueueConfigs :
The manual assignment queues associated with the routing profile. If no
queue is added, agents and supervisors can't pick or assign any contacts
from this routing profile. The limit of 10 array members applies to the
maximum number of RoutingProfileManualAssignmentQueueConfig objects that
can be passed during a CreateRoutingProfile API request. It is different
from the quota of 50 queues per routing profile per instance that is
listed in Connect Customer service quotas.
Note: Use this config for chat, email, and task contacts. It does not support voice contacts.
Parameter queueConfigs :
The inbound queues associated with the routing profile. If no queue is
added, the agent can make only outbound calls.
The limit of 10 array members applies to the maximum number of
RoutingProfileQueueConfig objects that can be passed during a
CreateRoutingProfile API request. It is different from the quota of 50
queues per routing profile per instance that is listed in Connect
Customer service quotas.
Parameter tags :
The tags used to organize, track, or control access for this resource. For
example, { "Tags": {"key1":"value1", "key2":"value2"} }.
Implementation
Future<CreateRoutingProfileResponse> createRoutingProfile({
required String defaultOutboundQueueId,
required String description,
required String instanceId,
required List<MediaConcurrency> mediaConcurrencies,
required String name,
AgentAvailabilityTimer? agentAvailabilityTimer,
List<RoutingProfileManualAssignmentQueueConfig>?
manualAssignmentQueueConfigs,
List<RoutingProfileQueueConfig>? queueConfigs,
Map<String, String>? tags,
}) async {
final $payload = <String, dynamic>{
'DefaultOutboundQueueId': defaultOutboundQueueId,
'Description': description,
'MediaConcurrencies': mediaConcurrencies,
'Name': name,
if (agentAvailabilityTimer != null)
'AgentAvailabilityTimer': agentAvailabilityTimer.value,
if (manualAssignmentQueueConfigs != null)
'ManualAssignmentQueueConfigs': manualAssignmentQueueConfigs,
if (queueConfigs != null) 'QueueConfigs': queueConfigs,
if (tags != null) 'Tags': tags,
};
final response = await _protocol.send(
payload: $payload,
method: 'PUT',
requestUri: '/routing-profiles/${Uri.encodeComponent(instanceId)}',
exceptionFnMap: _exceptionFns,
);
return CreateRoutingProfileResponse.fromJson(response);
}