

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# `AWSSupport-AssociatePhoneNumbersToConnectContactFlows`
<a name="automation-associate-phone-numbers-to-connect-contact-flows"></a>

 **Descrição** 

 `AWSSupport-AssociatePhoneNumbersToConnectContactFlows`Isso ajuda você a associar números de telefone aos fluxos de contato na sua instância do Amazon Connect. Ao fornecer os mapeamentos de números de telefone e fluxos de contato em um arquivo de entrada de valores separados por vírgula (CSV), o runbook associa o maior número possível de números de telefone aos fluxos de contato em 14,5 minutos. O runbook produz um arquivo CSV de todos os pares de números de telefone e fluxo de contatos que ele não pôde associar dentro do limite de tempo para que você possa inseri-los na próxima execução. 

 **Como funciona?** 

 O runbook `AWSSupport-AssociatePhoneNumbersToConnectContactFlows` ajuda você a associar números de telefone aos fluxos de contato em sua instância do Amazon Connect usando um arquivo CSV de dados de mapeamento que é armazenado em um bucket do Amazon Simple Storage Service (Amazon S3). O arquivo CSV de entrada deve estar alinhado ao seguinte formato, com `PhoneNumber` valores no formato [E.164](https://www.itu.int/rec/T-REC-E.164/en). 

**Exemplo do arquivo CSV de entrada**

```
PhoneNumber,ContactFlowName
+1800555xxxx,ContactFlowA
+1800555yyyy,ContactFlowB
+1800555zzzz,ContactFlowC
```

O runbook de automação também cria os seguintes arquivos no local de destino especificado no `DestinationFileBucket` e. `DestinationFilePath`
+ **`automation:EXECUTION_ID/ResourceIdList.csv`**: um arquivo temporário que contém os `ContactFlowId` pares `PhoneNumberId` e que são necessários para a `AssociatePhoneNumberContactFlow` API.
+ **`automation:EXECUTION_ID/ErrorResourceList.csv`**: um arquivo que contém o número de telefone e os pares de fluxo de contatos que não puderam ser processados devido a um erro, como `ResourceNotFoundException` no formato de`PhoneNumber,ContactFlowName,ErrorMessage`.
+ **`automation:EXECUTION_ID/NonProcessedResourceList.csv`**: um arquivo que contém o número de telefone e os pares de fluxo de contatos que não foram processados. O runbook tenta processar o maior número possível de números de telefone e fluxos de contato em 14,5 minutos (15 minutos de tempo limite da AWS Lambda função - 30 segundos de buffer). Se houver alguns números de telefone/fluxos de contato que não puderam ser processados devido à restrição de tempo, o runbook os incluirá em um arquivo CSV para usar como entrada para a próxima execução do runbook.

**Tipo de documento**

Automação

**Proprietário**

Amazon

**Plataformas**

Linux, macOS, Windows

**Parâmetros**

**Permissões obrigatórias do IAM**

O parâmetro `AutomationAssumeRole` requer as seguintes ações para usar o runbook com êxito.

```
        {
            "Statement": [
                {
                    "Action": [
                        "s3:GetBucketPublicAccessBlock",
                        "s3:GetBucketPolicyStatus",
                        "s3:GetBucketAcl",
                        "s3:GetObject",
                        "s3:GetObjectAttributes",
                        "s3:PutObject",
                        "s3:PutObjectAcl"
                    ],
                    "Resource": [
                    "arn:aws:s3:::YOUR-BUCKET/*",
                    "arn:aws:s3:::YOUR-BUCKET"
                    ],
                    "Effect": "Allow"
                },
                {
                    "Action": [
                        "cloudformation:CreateStack",
                        "cloudformation:DescribeStacks",
                        "cloudformation:DeleteStack",
                        "iam:CreateRole",
                        "iam:DeleteRole",
                        "iam:DeleteRolePolicy",
                        "iam:GetRole",
                        "iam:PutRolePolicy",
                        "lambda:CreateFunction",
                        "lambda:DeleteFunction",
                        "lambda:GetFunction",
                        "lambda:InvokeFunction",
                        "lambda:TagResource",
                        "connect:AssociatePhoneNumberContactFlow",
                        "logs:CreateLogGroup",
                        "logs:TagResource",
                        "logs:PutRetentionPolicy",
                        "logs:DeleteLogGroup",
                        "s3:GetAccountPublicAccessBlock"
                    ],
                    "Resource": "*",
                    "Effect": "Allow"
                },
                {
                    "Action": [
                        "connect:DescribeInstance",
                        "connect:ListPhoneNumbers",
                        "connect:ListContactFlows",
                        "ds:DescribeDirectories"
                    ],
                    "Resource": "*",
                    "Effect": "Allow"
                },
                {
                    "Condition": {
                        "StringLikeIfExists": {
                            "iam:PassedToService": [
                                "ssm.amazonaws.com",
                                "lambda.amazonaws.com"
                            ]
                        }
                    },
                    "Action": [
                        "iam:PassRole"
                    ],
                    "Resource": "*",
                    "Effect": "Allow"
                }
            ]
        }
```

Se fornecer um `LambdaRoleArn` parâmetro, a função exigirá as seguintes ações para usar o runbook com êxito.

------
#### [ JSON ]

****  

```
{
	"Version":"2012-10-17",		 	 	 
	"Statement": [
		{
			"Action": [
				"logs:CreateLogGroup"
			],
			"Resource": "arn:aws:logs:us-east-1:111122223333:*",
			"Effect": "Allow"
		},
		{
			"Action": [
				"logs:CreateLogStream",
				"logs:PutLogEvents"
			],
			"Resource": "arn:aws:logs:us-east-1:111122223333:*",
			"Effect": "Allow"
		},
		{
			"Action": [
				"connect:AssociatePhoneNumberContactFlow"
			],
			"Resource": "*",
			"Effect": "Allow"
		},
		{
			"Action": [
				"s3:PutObject",
				"s3:GetObject"
			],
			"Resource": "arn:aws:s3:::amzn-s3-demo-bucket/DESTINATION_FILE_PATH*",
			"Effect": "Allow"
		}
	]
}
```

------

 **Instruções** 

Siga estas etapas para configurar a automação:

1. Navegue até [https://console.aws.amazon.com/systems-manager/documents/AWSSupport-AssociatePhoneNumbersToConnectContactFlows/description](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-AssociatePhoneNumbersToConnectContactFlows/description)em Systems Manager em Documentos.

1. Selecione Execute automation (Executar automação).

1. Para os parâmetros de entrada, insira o seguinte:
   + **AutomationAssumeRole (Opcional)**

     O Amazon Resource Name (ARN) da função AWS AWS Identity and Access Management (IAM) que permite que o Systems Manager Automation execute as ações em seu nome. Se nenhuma função for especificada, o Systems Manager Automation usa as permissões do usuário que inicia esse runbook.
   + **ConnectInstanceId (Obrigatório)**

     O ID da sua instância do Amazon Connect.
   + **SourceFileBucket (Obrigatório)**

     O bucket do Amazon S3 que armazena o arquivo CSV que contém o número de telefone e os pares de fluxo de contato.
   + **SourceFilePath (Obrigatório)**

     A chave de objeto do Amazon S3 do arquivo CSV que contém o número de telefone e os pares de fluxo de contato. Por exemplo, .`path/to/input.csv`
   + **DestinationFileBucket (Obrigatório)**

     O bucket do Amazon S3 no qual a automação colocará um arquivo intermediário e um relatório de resultados.
   + **DestinationFilePath (Opcional)**

     O caminho do objeto Amazon S3 no `DestinationFileBucket` qual um arquivo intermediário e um relatório de resultados devem ser armazenados. Por exemplo, se você especificar`path/to/files/`, os arquivos serão armazenados em`s3://[DestinationFileBucket]/path/to/files/[automation:EXECUTION_ID]/`.
   + **S3 BucketOwnerAccount (opcional)**

     O número da AWS conta que possui o bucket do Amazon S3 em que você deseja fazer o upload do registro de fluxo de contatos. Se você não especificar esse parâmetro, os runbooks usarão o ID da AWS conta do usuário ou da função na qual a automação é executada.
   + **S3 BucketOwnerRoleArn (opcional)**

     O ARN da função do IAM com permissões para obter o bucket e a conta do Amazon S3 bloqueia as configurações de acesso público, a configuração da criptografia do bucket, o bucket, o ACLs status da política do bucket e o upload de objetos para o bucket. Se esse parâmetro não for especificado, o runbook usa o `AutomationAssumeRole` (se especificado) ou o usuário que inicia esse runbook (se não `AutomationAssumeRole` for especificado). Consulte a seção de permissões necessárias na descrição do runbook.
   + **LambdaRoleArn (Opcional)**

     O ARN da função do IAM que permite que a AWS Lambda função acesse os AWS serviços e recursos necessários. Se nenhuma função for especificada, essa automação criará uma função do IAM para o Lambda em sua conta.

1. Selecione Executar.

1. A automação é iniciada.

1. O bucket realiza as seguintes etapas:
   + **CheckConnectInstanceExistance**

     Verifica se a instância do Amazon Connect fornecida em `ConnectInstanceId` existe.
   + **Verificações 3 BucketPublicStatus**

     Verifica se os buckets do Amazon S3 especificados no `SourceFileBucket` e `DestinationFileBucket` permitem permissões de acesso anônimas ou públicas de leitura ou gravação.
   + **CheckSourceFileExistenceAndSize**

     Verifica se o arquivo CSV de origem especificado no `SourceFilePath` existe e se o tamanho do arquivo excede o limite de 25 MiB.
   + **GenerateResourceIdMap**

     Faz o download do arquivo CSV de origem especificado na identificação `SourceFilePath` `PhoneNumberId` e `ContactFlowId` para cada recurso. Depois de concluído, ele carrega um arquivo CSV que contém`PhoneNumber`,, `PhoneNumberId``ContactFlowName`, e `ContactFlowId` para o bucket de destino do Amazon S3 especificado em. `DestinationFileBucket` Se `PhoneNumberId` não puder ser identificado por um determinado número, o campo ficará vazio no arquivo CSV.
   + **AssociatePhoneNumbersToContactFlows**

     Cria uma AWS Lambda função na sua conta usando uma AWS CloudFormation pilha. A AWS Lambda função associa cada número a um fluxo de contato listado no arquivo CSV de origem especificado em `SourceFileBucket` e `SourceFilePath` e a AWS CloudFormation pilha invoca a função. A AWS Lambda função mapeia o maior número possível de números de telefone para fluxos de contato antes que o tempo limite atinja o tempo limite (15 minutos). A lista de números de telefone e fluxos de contato que não puderam ser processados devido a um erro é carregada em`[automation:EXECUTION_ID]/ErrorResourceList.csv`. Aqueles que não puderam ser processados devido ao excesso do número máximo de números de telefone que podem ser processados em uma única execução são enviados`[automation:EXECUTION_ID]/NonProcessedResourceList.csv`. Se essa etapa falhar, ela vai para a `DescribeCloudFormationErrorFromStackEvents` etapa para mostrar por que ela falhou nos eventos da AWS CloudFormation pilha. 
   + **WaitForPhoneNumberContactFlowAssociationCompletion**

     Espera até que a AWS Lambda função que mapeia números de telefone para fluxos de contato seja criada e a AWS CloudFormation pilha conclua sua invocação. 
   + **GenerateReport**

     Gera o relatório que contém o número de números de telefone mapeados para fluxos de contato, aqueles que não puderam ser processados devido a um erro e aqueles que não puderam ser processados devido ao excesso do número máximo de números de telefone que podem ser processados em uma única execução. O relatório também mostra a localização (URI do Amazon S3 e URL do console do Amazon S3) `[automation:EXECUTION_ID]/ErrorResourceList.csv` para `[automation:EXECUTION_ID]/NonProcessedResourceList.csv` ou, se aplicável.
   + **`DeleteCloudFormationStack`**

     Exclui a AWS CloudFormation pilha, incluindo a função Lambda para mapeamento.
   + **`DescribeCloudFormationErrorFromStackEvent`**

     Descreve os erros da AWS CloudFormation pilha da `AssociatePhoneNumbersToContactFlows` etapa.

1. Depois de concluído, revise a seção Saídas para obter os resultados detalhados da execução:
   + **GenerateReport.OutputPayload**

      Saída de associações de número de telefone e fluxo de contatos. Esse relatório contém as seguintes informações: 
     + O número de pares de números de telefone e fluxo de contatos listados no arquivo CSV de entrada
     + O número de números de telefone associados aos fluxos de contato, conforme especificado no arquivo CSV de entrada
     + O número de números de telefone que não puderam ser associados aos fluxos de contato devido a um erro
     + O número de números de telefone que não estavam associados aos fluxos de contato devido à restrição de tempo
     + A localização (URI do Amazon S3 e URL do console do Amazon S3) do arquivo CSV que contém o número de telefone e os pares de fluxo de contato que não puderam ser associados devido a um erro
     + A localização (URI do Amazon S3 e URL do console do Amazon S3) do arquivo CSV que contém o número de telefone e os pares de fluxo de contato que não foram associados devido à restrição de tempo
   + **DescribeCloudFormationErrorFromStackEvents.Eventos**

     Saída que mostra os eventos da AWS CloudFormation pilha se a `AssociatePhoneNumbersToContactFlows` etapa falhar.

Saída de execução com um pequeno número de números de telefone e fluxos de contato

![\[Report showing 7 phone numbers processed successfully with no errors or time constraints.\]](http://docs.aws.amazon.com/pt_br/systems-manager-automation-runbooks/latest/userguide/images/automation-associate-phone-numbers-to-connect-contact-flows_outputs_small.png)


Saída de execução com um grande número de números de telefone e fluxos de contato e números de telefone que não foram associados devido a erro ou restrição de tempo

![\[Amazon Connect phone number mapping results showing processed and unprocessed contacts.\]](http://docs.aws.amazon.com/pt_br/systems-manager-automation-runbooks/latest/userguide/images/automation-associate-phone-numbers-to-connect-contact-flows_outputs_many.png)


 **Referências** 

Automação do Systems Manager
+ [Execute esta automação (console)](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-AssociatePhoneNumbersToConnectContactFlows/description)
+ [Executar uma automação](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-working-executing.html)
+ [Configurar a automação](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-setup.html)
+ [Página inicial dos fluxos de trabalho de automação](https://aws.amazon.com/premiumsupport/technology/saw/)