View a markdown version of this page

AWSSupport-AssociatePhoneNumbersToConnectContactFlows - AWS Systems Manager Referencia del manual de procedimientos de Automatización

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

AWSSupport-AssociatePhoneNumbersToConnectContactFlows

Descripción

AWSSupport-AssociatePhoneNumbersToConnectContactFlowsEsto le ayuda a asociar los números de teléfono a los flujos de contacto en su instancia de Connect Customer. Al proporcionar las asignaciones de números de teléfono y flujos de contactos en un archivo de entrada de valores separados por comas (CSV), el manual asocia tantos números de teléfono a los flujos de contacto como sea posible en un plazo de 14,5 minutos. El manual genera un archivo CSV con todos los pares de números de teléfono y flujos de contactos que no pudo asociar dentro del límite de tiempo para que puedas ingresarlos en la siguiente ejecución.

¿Cómo funciona?

El manual te AWSSupport-AssociatePhoneNumbersToConnectContactFlows ayuda a asociar números de teléfono a los flujos de contactos en tu instancia de Connect Customer mediante un archivo CSV con datos cartográficos que se almacena en un bucket de Amazon Simple Storage Service (Amazon S3). El archivo CSV de entrada debe alinearse con el siguiente formato, con PhoneNumber los valores en E.164 formato.

Ejemplo del archivo CSV de entrada

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

El manual de automatización también crea los siguientes archivos en la ubicación de destino especificada en DestinationFileBucket yDestinationFilePath.

  • automation:EXECUTION_ID/ResourceIdList.csv: un archivo temporal que contiene los ContactFlowId pares PhoneNumberId y que son necesarios para la AssociatePhoneNumberContactFlow API.

  • automation:EXECUTION_ID/ErrorResourceList.csv: un archivo que contiene los pares de números de teléfono y flujos de contactos que no se pudieron procesar debido a un error, por ejemplo, ResourceNotFoundException en el formato dePhoneNumber,ContactFlowName,ErrorMessage.

  • automation:EXECUTION_ID/NonProcessedResourceList.csv: un archivo que contiene los pares de números de teléfono y flujos de contactos que no se procesaron. El manual intenta procesar tantos números de teléfono y flujos de contacto como sea posible en 14,5 minutos (15 minutos de tiempo de espera de la AWS Lambda función, 30 segundos de búfer). Si hay algunos números de teléfono o flujos de contacto que no se han podido procesar debido a la falta de tiempo, el manual los incluye en un archivo CSV para usarlos como entrada en la próxima ejecución del libro de ejercicios.

Tipo de documento

Automatización

Propietario

Amazon

Plataformas

Linux, macOS, Windows

Parámetros

Permisos de IAM necesarios

El parámetro AutomationAssumeRole requiere las siguientes acciones para utilizar el manual de procedimientos correctamente.

{ "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" } ] }

Si se proporciona un LambdaRoleArn parámetro, el rol requiere las siguientes acciones para usar el libro de ejecución correctamente.

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" } ] }

Instrucciones

Siga estos pasos para configurar la automatización:

  1. Diríjase a AWSSupport-AssociatePhoneNumbersToConnectContactFlows la sección Documentos del Administrador de Sistemas.

  2. Elija Execute automation (Ejecutar automatización).

  3. Para los parámetros de entrada, introduzca lo siguiente:

    • AutomationAssumeRole (Opcional)

      El nombre de recurso de Amazon (ARN) del rol AWS AWS Identity and Access Management (IAM) que permite a Systems Manager Automation realizar las acciones en su nombre. Si no se especifica ningún rol, Systems Manager Automation utiliza los permisos del usuario que inicia este libro de ejecución.

    • ConnectInstanceId (Obligatorio)

      El ID de su instancia de cliente de Connect.

    • SourceFileBucket (Obligatorio)

      El bucket de Amazon S3 que almacena el archivo CSV que contiene los pares de flujo de contacto y número de teléfono.

    • SourceFilePath (Obligatorio)

      La clave de objeto de Amazon S3 del archivo CSV que contiene los pares de flujo de contactos y número de teléfono. Por ejemplo, path/to/input.csv.

    • DestinationFileBucket (Obligatorio)

      El bucket de Amazon S3 en el que la automatización colocará un archivo intermedio y un informe de resultados.

    • DestinationFilePath (Opcional)

      La ruta de objetos de Amazon S3 en DestinationFileBucket la que se deben almacenar un archivo intermedio y un informe de resultados. Por ejemplo, si lo especificapath/to/files/, los archivos se almacenan ens3://[DestinationFileBucket]/path/to/files/[automation:EXECUTION_ID]/.

    • S3BucketOwnerAccount (Opcional)

      El número de AWS cuenta al que pertenece el bucket de Amazon S3 en el que desea cargar el registro de flujo de contactos. Si no especificas este parámetro, los runbooks utilizan el ID de AWS cuenta del usuario o rol en el que se ejecuta la automatización.

    • S3BucketOwnerRoleArn (Opcional)

      El ARN del rol de IAM con permisos para obtener el bucket y la cuenta de Amazon S3, bloquear la configuración de acceso público, configurar el cifrado del bucket, las ACL del bucket, el estado de la política del bucket y cargar objetos al bucket. Si no se especifica este parámetro, el libro de ejecución utiliza el usuario AutomationAssumeRole (si se especifica) o el usuario que inicia este libro de ejecución (si AutomationAssumeRole no se especifica). Por favor consulte la sección de permisos necesarios en la descripción del manual de procedimientos.

    • LambdaRoleArn (Opcional)

      El ARN del rol de IAM que permite a la AWS Lambda función acceder a los AWS servicios y recursos necesarios. Si no se especifica ningún rol, esta automatización creará un rol de IAM para Lambda en su cuenta.

  4. Seleccione Ejecutar.

  5. Se inicia la automatización.

  6. Este documento realiza los siguientes pasos:

    • CheckConnectInstanceExistance

      Comprueba si la instancia de Connect Customer proporcionada existe. ConnectInstanceId

    • CheckS3BucketPublicStatus

      Comprueba si los buckets de Amazon S3 especificados en la SourceFileBucket y DestinationFileBucket permiten permisos de acceso de lectura o escritura anónimos o públicos.

    • CheckSourceFileExistenceAndSize

      Comprueba si el archivo CSV de origen especificado en el SourceFilePath existe y si el tamaño del archivo supera el límite de 25 MiB.

    • GenerateResourceIdMap

      Descarga el archivo CSV de origen especificado en el SourceFilePath e identifica PhoneNumberId y ContactFlowId para cada recurso. Una vez hecho esto, carga un archivo CSV que contiene PhoneNumber PhoneNumberIdContactFlowName, y ContactFlowId al bucket de Amazon S3 de destino especificado. DestinationFileBucket Si PhoneNumberId no se puede identificar un número determinado, el archivo estará vacío en el archivo CSV.

    • AssociatePhoneNumbersToContactFlows

      Crea una AWS Lambda función en tu cuenta mediante una AWS CloudFormation pila. La AWS Lambda función asocia cada número a un flujo de contactos que aparece en el archivo CSV de origen especificado en SourceFileBucket SourceFilePath y la AWS CloudFormation pila invoca la función. La AWS Lambda función asigna tantos números de teléfono a los flujos de contacto como sea posible antes de que se agote el tiempo de espera (15 minutos). Se carga la lista de números de teléfono y flujos de contactos que no se pudieron procesar debido a un error[automation:EXECUTION_ID]/ErrorResourceList.csv. Se cargan los que no se han podido procesar porque se ha superado el número máximo de números de teléfono que se pueden procesar en una sola ejecución[automation:EXECUTION_ID]/NonProcessedResourceList.csv. Si este paso falla, continúa con el DescribeCloudFormationErrorFromStackEvents paso para mostrar por qué falló a partir de los eventos de la AWS CloudFormation pila.

    • WaitForPhoneNumberContactFlowAssociationCompletion

      Espera hasta que se cree la AWS Lambda función que asigna los números de teléfono a los flujos de contactos y la AWS CloudFormation pila complete su invocación.

    • GenerateReport

      Genera el informe que contiene el número de números de teléfono asignados a los flujos de contactos, los que no se pudieron procesar debido a un error y los que no se pudieron procesar porque se superó el número máximo de números de teléfono que se pueden procesar en una sola ejecución. El informe también muestra la ubicación (URI de Amazon S3 y URL de la consola de Amazon S3) de [automation:EXECUTION_ID]/ErrorResourceList.csv o[automation:EXECUTION_ID]/NonProcessedResourceList.csv, si corresponde.

    • DeleteCloudFormationStack

      Elimina la AWS CloudFormation pila, incluida la función Lambda para el mapeo.

    • DescribeCloudFormationErrorFromStackEvent

      Describe los errores de la AWS CloudFormation pila del AssociatePhoneNumbersToContactFlows paso.

  7. Una vez completado, revise la sección Resultados para ver los resultados detallados de la ejecución:

    • GenerateReport.OutputPayload

      Salida de las asociaciones de números de teléfono y flujos de contactos. Este informe contiene la siguiente información:

      • El número de pares de números de teléfono y flujo de contactos que figuran en el archivo CSV de entrada

      • El número de números de teléfono asociados a los flujos de contacto, tal como se especifica en el archivo CSV de entrada

      • El número de números de teléfono que no se pudieron asociar a los flujos de contactos debido a un error

      • La cantidad de números de teléfono que no estaban asociados a los flujos de contactos por falta de tiempo

      • La ubicación (URI de Amazon S3 y URL de la consola de Amazon S3) del archivo CSV que contiene los pares de números de teléfono y flujos de contacto que no se pudieron asociar debido a un error

      • La ubicación (URI de Amazon S3 y URL de la consola de Amazon S3) del archivo CSV que contiene los pares de números de teléfono y flujos de contacto que no estaban asociados por falta de tiempo

    • DescribeCloudFormationErrorFromStackEvents.Events

      Resultado que muestra los eventos de AWS CloudFormation pila si el AssociatePhoneNumbersToContactFlows paso falla.

Resultado de la ejecución con un número reducido de números de teléfono y flujos de contacto

El resultado muestra 7 números de teléfono procesados con Contact Flow, 0 errores y 0 problemas de restricción de tiempo.

Resultado de la ejecución con una gran cantidad de números de teléfono y flujos de contactos y números de teléfono que no se asociaron debido a un error o a una falta de tiempo

Resultado que muestra los resultados de la asignación de números de teléfono con ubicaciones de archivos de recursos sin procesar y con errores.

Referencias

Automatización de Systems Manager