View a markdown version of this page

AWSSupport-AssociatePhoneNumbersToConnectContactFlows - AWS Systems Manager Runbook-Referenz für Automation

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

AWSSupport-AssociatePhoneNumbersToConnectContactFlows

Beschreibung

Das AWSSupport-AssociatePhoneNumbersToConnectContactFlows hilft Ihnen, Telefonnummern mit Kontaktabläufen in Ihrer Connect Customer-Instanz zu verknüpfen. Indem das Runbook die Zuordnungen von Telefonnummern und Kontaktabläufen in einer CSV-Datei (Comma-Separated Values) bereitstellt, ordnet das Runbook innerhalb von 14,5 Minuten den Kontaktabläufen so viele Telefonnummern wie möglich zu. Das Runbook erstellt eine CSV-Datei mit allen Telefonnummern- und Kontaktflusspaaren, die es nicht innerhalb des Zeitlimits verknüpfen konnte, sodass Sie sie beim nächsten Durchlauf eingeben können.

Wie funktioniert es?

Das Runbook AWSSupport-AssociatePhoneNumbersToConnectContactFlows hilft Ihnen dabei, Telefonnummern mit Kontaktabläufen in Ihrer Connect Customer-Instance zu verknüpfen. Dabei wird eine CSV-Datei mit Zuordnungsdaten verwendet, die in einem Amazon Simple Storage Service (Amazon S3) -Bucket gespeichert ist. Die CSV-Eingabedatei sollte dem folgenden Format entsprechen und die PhoneNumber Werte im E.164 Format haben.

Beispiel für die CSV-Eingabedatei

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

Das Automatisierungs-Runbook erstellt außerdem die folgenden Dateien an dem im DestinationFileBucket und DestinationFilePath angegebenen Zielspeicherort.

  • automation:EXECUTION_ID/ResourceIdList.csv: Eine temporäre Datei, die die PhoneNumberId ContactFlowId UND-Paare enthält, die für die AssociatePhoneNumberContactFlow API erforderlich sind.

  • automation:EXECUTION_ID/ErrorResourceList.csv: Eine Datei, die die Telefonnummern- und Kontaktflusspaare enthält, die aufgrund eines Fehlers nicht verarbeitet werden konnten, z. B. ResourceNotFoundException im Format vonPhoneNumber,ContactFlowName,ErrorMessage.

  • automation:EXECUTION_ID/NonProcessedResourceList.csv: Eine Datei, die die Telefonnummern- und Kontaktflusspaare enthält, die nicht verarbeitet wurden. Das Runbook versucht, innerhalb von 14,5 Minuten so viele Telefonnummern und Kontaktabläufe wie möglich zu verarbeiten (15 Minuten AWS Lambda Funktions-Timeout — 30 Sekunden Puffer). Wenn es einige Telefonnummern/Kontaktabläufe gibt, die aufgrund der Zeitbeschränkung nicht verarbeitet werden konnten, nimmt das Runbook sie in eine CSV-Datei auf, um sie als Eingabe für die nächste Runbook-Ausführung zu verwenden.

Art des Dokuments

Automatisierung

Eigentümer

Amazon

Plattformen

LinuxmacOS, Windows

Parameter

Erforderliche IAM-Berechtigungen

Der AutomationAssumeRole Parameter erfordert die folgenden Aktionen, um das Runbook erfolgreich zu verwenden.

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

Wenn ein LambdaRoleArn Parameter angegeben wird, erfordert die Rolle die folgenden Aktionen, um das Runbook erfolgreich zu verwenden.

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

Anweisungen

Folgen Sie diesen Schritten, um die Automatisierung zu konfigurieren:

  1. Navigieren Sie AWSSupport-AssociatePhoneNumbersToConnectContactFlows im Systems Manager unter Dokumente zu.

  2. Wählen Sie Execute automation (Automatisierung ausführen).

  3. Geben Sie für die Eingabeparameter Folgendes ein:

    • AutomationAssumeRole (Fakultativ)

      Der Amazon-Ressourcenname (ARN) der AWS AWS Identity and Access Management (IAM) -Rolle, die es Systems Manager Automation ermöglicht, die Aktionen in Ihrem Namen auszuführen. Wenn keine Rolle angegeben ist, verwendet Systems Manager Automation die Berechtigungen des Benutzers, der dieses Runbook startet.

    • ConnectInstanceId (Erforderlich)

      Die ID Ihrer Connect Customer-Instanz.

    • SourceFileBucket (Erforderlich)

      Der Amazon S3-Bucket, in dem die CSV-Datei gespeichert wird, die die Telefonnummern- und Kontaktflusspaare enthält.

    • SourceFilePath (Erforderlich)

      Der Amazon S3-Objektschlüssel der CSV-Datei, die die Telefonnummern- und Kontaktflusspaare enthält. Beispiel, path/to/input.csv.

    • DestinationFileBucket (Erforderlich)

      Der Amazon S3-Bucket, in den die Automatisierung eine Zwischendatei und einen Ergebnisbericht platziert.

    • DestinationFilePath (Fakultativ)

      Der Amazon S3-Objektpfad, DestinationFileBucket unter dem eine Zwischendatei und ein Ergebnisbericht gespeichert werden sollen. Wenn Sie beispielsweise angebenpath/to/files/, werden Dateien unter gespeicherts3://[DestinationFileBucket]/path/to/files/[automation:EXECUTION_ID]/.

    • S3BucketOwnerAccount (Fakultativ)

      Die AWS Kontonummer, der der Amazon S3-Bucket gehört, in den Sie das Contact Flow-Protokoll hochladen möchten. Wenn Sie diesen Parameter nicht angeben, verwenden die Runbooks die AWS Konto-ID des Benutzers oder der Rolle, in der die Automatisierung ausgeführt wird.

    • S3BucketOwnerRoleArn (Fakultativ)

      Der ARN der IAM-Rolle mit Berechtigungen zum Abrufen der Einstellungen für den öffentlichen Zugriff auf den Amazon S3-Bucket und die Kontosperre, die Bucket-Verschlüsselungskonfiguration, die Bucket-ACLs, den Bucket-Richtlinienstatus und das Hochladen von Objekten in den Bucket. Wenn dieser Parameter nicht angegeben ist, verwendet das Runbook den AutomationAssumeRole (falls angegeben) oder den Benutzer, der dieses Runbook startet (falls AutomationAssumeRole nicht angegeben). Weitere Informationen finden Sie im Abschnitt „Erforderliche Berechtigungen“ in der Runbook-Beschreibung.

    • LambdaRoleArn (Fakultativ)

      Der ARN der IAM-Rolle, die es der AWS Lambda Funktion ermöglicht, auf die erforderlichen AWS Dienste und Ressourcen zuzugreifen. Wenn keine Rolle angegeben ist, erstellt diese Automatisierung eine IAM-Rolle für Lambda in Ihrem Konto.

  4. Wählen Sie Ausführen aus.

  5. Die Automatisierung wird initiiert.

  6. Das Dokument führt die folgenden Schritte aus:

    • CheckConnectInstanceExistance

      Prüft, ob die angegebene Connect Customer-Instanz ConnectInstanceId existiert.

    • CheckS3BucketPublicStatus

      Prüft, ob die in SourceFileBucket und angegebenen Amazon S3-Buckets anonyme oder öffentliche Lese- oder Schreibzugriffsberechtigungen DestinationFileBucket zulassen.

    • CheckSourceFileExistenceAndSize

      Prüft, ob die in der angegebene CSV-Quelldatei SourceFilePath existiert und ob die Dateigröße den Grenzwert von 25 MiB überschreitet.

    • GenerateResourceIdMap

      Lädt die in SourceFilePath und identify PhoneNumberId und ContactFlowId für jede Ressource angegebene CSV-Quelldatei herunter. Danach wird eine CSV-Datei, die,, und enthält PhoneNumberPhoneNumberId, und ContactFlowId in den Amazon S3-Ziel-Bucket hochgeladenContactFlowName, der in DestinationFileBucket angegeben ist. Wenn für eine bestimmte Nummer PhoneNumberId nicht identifiziert werden kann, ist das Feld in der CSV-Datei leer.

    • AssociatePhoneNumbersToContactFlows

      Erzeugt mithilfe eines AWS CloudFormation Stapels eine AWS Lambda Funktion in Ihrem Konto. Die AWS Lambda Funktion ordnet jede Zahl einem Kontaktfluss zu, der in der in und angegebenen CSV-Quelldatei aufgeführt ist, SourceFileBucket SourceFilePath und der AWS CloudFormation Stapel ruft die Funktion auf. Die AWS Lambda Funktion ordnet Kontaktabläufen so viele Telefonnummern wie möglich zu, bevor das Zeitlimit überschritten wird (15 Minuten). Die Liste der Telefonnummern und Kontaktabläufe, die aufgrund eines Fehlers nicht verarbeitet werden konnten, wird hochgeladen[automation:EXECUTION_ID]/ErrorResourceList.csv. Diejenigen, die aufgrund einer Überschreitung der maximalen Anzahl von Telefonnummern, die in einer einzigen Ausführung verarbeitet werden können, nicht verarbeitet werden konnten, werden hochgeladen[automation:EXECUTION_ID]/NonProcessedResourceList.csv. Wenn dieser Schritt fehlschlägt, wird der DescribeCloudFormationErrorFromStackEvents Schritt anhand von AWS CloudFormation Stapelereignissen aufgezeigt, warum er fehlgeschlagen ist.

    • WaitForPhoneNumberContactFlowAssociationCompletion

      Wartet, bis die AWS Lambda Funktion, die Telefonnummern den Kontaktabläufen zuordnet, erstellt wurde und der AWS CloudFormation Stack seinen Aufruf abgeschlossen hat.

    • GenerateReport

      Generiert den Bericht, der die Anzahl der Telefonnummern enthält, die den Kontaktabläufen zugeordnet sind, diejenigen, die aufgrund eines Fehlers nicht verarbeitet werden konnten, und diejenigen, die aufgrund einer Überschreitung der maximalen Anzahl von Telefonnummern, die in einer einzigen Ausführung verarbeitet werden können, nicht verarbeitet werden konnten. Der Bericht zeigt auch den Standort (Amazon S3-URI und Amazon S3-Konsolen-URL) für [automation:EXECUTION_ID]/ErrorResourceList.csv oder[automation:EXECUTION_ID]/NonProcessedResourceList.csv, falls zutreffend.

    • DeleteCloudFormationStack

      Löscht den AWS CloudFormation Stack, einschließlich der Lambda-Funktion für die Zuordnung.

    • DescribeCloudFormationErrorFromStackEvent

      Beschreibt Fehler aus dem AWS CloudFormation Stack des SchrittsAssociatePhoneNumbersToContactFlows.

  7. Wenn Sie fertig sind, finden Sie im Abschnitt Ausgaben die detaillierten Ergebnisse der Ausführung:

    • GenerateReport.OutputPayload

      Ausgabe von Rufnummern- und Kontaktflusszuordnungen. Dieser Bericht enthält die folgenden Informationen:

      • Die Anzahl der Telefonnummern- und Kontaktflusspaare, die in der CSV-Eingabedatei aufgeführt sind

      • Die Anzahl der Telefonnummern, die den Kontaktflüssen zugeordnet sind, wie in der CSV-Eingabedatei angegeben

      • Die Anzahl der Telefonnummern, die aufgrund eines Fehlers keinen Kontaktflüssen zugeordnet werden konnten

      • Die Anzahl der Telefonnummern, die aus Zeitgründen nicht mit Kontaktabläufen verknüpft wurden

      • Der Speicherort (Amazon S3-URI und Amazon S3-Konsolen-URL) der CSV-Datei, die die Telefonnummern- und Kontaktflusspaare enthält, die aufgrund eines Fehlers nicht verknüpft werden konnten

      • Der Speicherort (Amazon S3-URI und Amazon S3-Konsolen-URL) der CSV-Datei, die die Telefonnummern- und Kontaktflusspaare enthält, die aus Zeitgründen nicht verknüpft wurden

    • DescribeCloudFormationErrorFromStackEvents.Events

      Ausgabe, die AWS CloudFormation Stack-Ereignisse anzeigt, wenn der AssociatePhoneNumbersToContactFlows Schritt fehlschlägt.

Ausgabe der Ausführung mit einer kleinen Anzahl von Telefonnummern und Kontaktabläufen

Die Ausgabe zeigt 7 Telefonnummern, die mit Contact Flow verarbeitet wurden, 0 Fehler, 0 Probleme mit Zeitbeschränkungen.

Ausgabe der Ausführung mit einer großen Anzahl von Telefonnummern und Kontaktabläufen sowie Telefonnummern, die aufgrund eines Fehlers oder einer Zeitbeschränkung nicht zugeordnet wurden

Ausgabe mit Ergebnissen der Rufnummernzuweisung mit Fehlern und unverarbeiteten Speicherorten der Ressourcendateien.

Referenzen

Systems Manager Automation