本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
AWSSupport-AssociatePhoneNumbersToConnectContactFlows
Description
可AWSSupport-AssociatePhoneNumbersToConnectContactFlows
協助您將電話號碼與 Amazon Connect 執行個體中的聯絡流程建立關聯。藉由在輸入逗號分隔值 (CSV) 檔案中提供電話號碼和連絡人流程的對應,runbook 會在 14.5 分鐘內將盡可能多的電話號碼與聯絡流程相關聯。runbook 會產生 CSV 檔案,其中包含無法在時間限制內關聯的所有電話號碼和聯絡流程配對,以便您可以在下次執行中輸入它們。
它是如何工作的?
Runbook 可AWSSupport-AssociatePhoneNumbersToConnectContactFlows
協助您使用存放在 Amazon 簡單儲存服務 (Amazon S3) 儲存貯體中的映射資料的 CSV 檔案,將電話號碼與 Amazon Connect 執行個體中的聯絡流程相關聯。輸入的 CSV 檔案應與下列格式對齊,其PhoneNumber
值為 E.164
輸入 CSV 檔案的範例
PhoneNumber,ContactFlowName +1800555xxxx,ContactFlowA +1800555yyyy,ContactFlowB +1800555zzzz,ContactFlowC
自動化執行手冊也會在DestinationFileBucket
和DestinationFilePath
中指定的目標位置建立下列檔案。
-
automation:EXECUTION_ID/ResourceIdList.csv
:包含AssociatePhoneNumberContactFlow
API 所需的PhoneNumberId
和ContactFlowId
配對的臨時文件。 -
automation:EXECUTION_ID/ErrorResourceList.csv
:包含由於錯誤而無法處理的電話號碼和聯絡流程配對ResourceNotFoundException
的檔案,例如PhoneNumber,ContactFlowName,ErrorMessage
. -
automation:EXECUTION_ID/NonProcessedResourceList.csv
:包含未處理的電話號碼和聯絡流程配對的檔案。Runbook 嘗試在 14.5 分鐘內處理盡可能多的電話號碼和聯繫流程(15 分鐘的 AWS Lambda 功能超時-緩衝 30 秒)。如果有一些電話號碼/連絡人流程無法由於時間限制而處理,runbook 將它們包含在 CSV 檔中,以作為下一個 runbook 執行的輸入。
文件類型
自動化
擁有者
Amazon
平台
Linux,macOS, Windows
參數
必要的 IAM 許可
此AutomationAssumeRole
參數需要下列動作才能成功使用 runbook。
{ "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" } ] }
指示
請依照下列步驟設定自動化操作:
-
瀏覽至「文件」下
AWSSupport-AssociatePhoneNumbersToConnectContactFlows
的「Systems Manager」。 -
選擇 Execute automation (執行自動化)。
-
對於輸入參數,請輸入以下內容:
-
AutomationAssumeRole (選擇性)
(IAM) 角色的 Amazon 資源名稱 AWS AWS Identity and Access Management (ARN),可讓 Systems Manager 自動化代表您執行動作。如果未指定角色,Systems Manager 自動化會使用啟動此 runbook 的使用者的權限。
-
ConnectInstanceId (必填)
您的 Amazon Connect 實例的 ID。
-
SourceFileBucket (必填)
儲存包含電話號碼和聯絡流程配對的 CSV 檔案的 Amazon S3 儲存貯體。
-
SourceFilePath (必填)
CSV 檔案的 Amazon S3 物件金鑰,其中包含電話號碼和聯絡流程配對。例如
path/to/input.csv
。 -
DestinationFileBucket (必填)
自動化將放置中繼檔案和結果報告的 Amazon S3 儲存貯體。
-
DestinationFilePath (選擇性)
應存放中繼檔案和結果報告的 Amazon S3 物件路徑。
DestinationFileBucket
例如,如果您指定path/to/files/
,檔案會儲存在下面s3://[DestinationFileBucket]/path/to/files/[automation:EXECUTION_ID]/
。 -
S3 BucketOwnerAccount (選擇性)
擁有您要上傳聯絡流程日誌之 Amazon S3 儲存貯體的 AWS 帳戶號碼。如果您未指定此參數,執行手冊會使用執行自動化的使用者或角色的 AWS 帳戶 ID。
-
S3 BucketOwnerRoleArn (選擇性)
IAM 角色的 ARN 具有取得 Amazon S3 儲存貯體和帳戶區塊公開存取設定、儲存貯體加密組態、儲存貯體 ACL、儲存貯體政策狀態,以及將物件上傳到儲存貯體的許可。如果未指定此參數,runbook 會使用
AutomationAssumeRole
(如果指定) 或啟動此 runbook 的使用者 (如果AutomationAssumeRole
未指定)。請參閱 runbook 描述中所需的權限部分。
-
-
選取執行。
-
自動化啟動。
-
文件會執行下列步驟:
-
CheckConnectInstanceExistance
檢查中提供的 Amazon Connect 實例是否
ConnectInstanceId
存在。 -
檢查 3 BucketPublicStatus
檢查 Amazon S3 儲存貯體是否在中指定,
SourceFileBucket
並DestinationFileBucket
允許匿名或公用讀取或寫入存取權限。 -
CheckSourceFileExistenceAndSize
檢查中指定的來源 CSV 檔案是否
SourceFilePath
存在,以及檔案大小是否超過 25 MiB 的限制。 -
GenerateResourceIdMap
下載在中指定的來源 CSV 檔案,
SourceFilePath
並ContactFlowId
為每個資源識別PhoneNumberId
和。完成後,它會將包含PhoneNumber
、PhoneNumberId
和的 CSV 檔案上傳ContactFlowId
到中指定的目的地 Amazon S3 儲存貯體DestinationFileBucket
。ContactFlowName
如果PhoneNumberId
無法識別特定數字,CSV 檔案中的欄位將為空。 -
AssociatePhoneNumbersToContactFlows
使用 AWS CloudFormation 堆棧在您的帳戶中創建一個 AWS Lambda 函數。該 AWS Lambda 函數將每個號碼與中指定的源 CSV 文件中列出的聯繫流程相關聯,
SourceFileBucket
SourceFilePath
並且 AWS CloudFormation 堆棧調用該函數。該 AWS Lambda 功能會在超時(15 分鐘)之前將盡可能多的電話號碼映射到聯繫流程。由於錯誤而無法處理的電話號碼和聯絡流程清單會在中上傳[automation:EXECUTION_ID]/ErrorResourceList.csv
。由於單次執行中可以處理的最大電話號碼數量超過了最大數量而無法處理的電話號碼,則會在中上傳[automation:EXECUTION_ID]/NonProcessedResourceList.csv
。如果此步驟失敗,它將進入該DescribeCloudFormationErrorFromStackEvents
步驟以顯示為什麼它從 AWS CloudFormation 堆棧事件失敗。 -
WaitForPhoneNumberContactFlowAssociationCompletion
等待,直到創建將電話號碼映射到聯繫人流程的 AWS Lambda 函數並完成 AWS CloudFormation 堆棧的調用。
-
GenerateReport
產生報告,其中包含對應至聯絡流程的電話號碼數目、由於錯誤而無法處理的電話號碼數目,以及因單次執行中可處理的電話號碼上限而無法處理的報告。此報告也會顯示
[automation:EXECUTION_ID]/ErrorResourceList.csv
或[automation:EXECUTION_ID]/NonProcessedResourceList.csv
(如果適用) 的位置 (Amazon S3 URI 和 Amazon S3 主控台 URL)。 -
DeleteCloudFormationStack
刪除 AWS CloudFormation 堆疊,包括用於對應的 Lambda 函數。
-
DescribeCloudFormationErrorFromStackEvent
描述
AssociatePhoneNumbersToContactFlows
步驟 AWS CloudFormation 堆疊中的錯誤。
-
-
完成後,請查看「輸出」部分以獲取執行的詳細結果:
-
GenerateReport.OutputPayload
輸出電話號碼和聯繫流程關聯。此報告包含下列資訊:
-
輸入 CSV 文件中列出的電話號碼和聯繫流程對的數量
-
輸入 CSV 檔案中指定的與聯絡流程相關聯的電話號碼數
-
由於錯誤而無法與聯絡流程相關聯的電話號碼數目
-
由於時間限制而與聯絡流程無關聯的電話號碼數目
-
CSV 檔案的位置 (Amazon S3 URI 和 Amazon S3 主控台 URL),其中包含由於錯誤而無法關聯的電話號碼和聯絡流程配對
-
CSV 檔案的位置 (Amazon S3 URI 和 Amazon S3 主控台 URL),其中包含由於時間限制而未關聯的電話號碼和聯絡流程配對
-
-
DescribeCloudFormationErrorFromStackEvents. 活動。
如果
AssociatePhoneNumbersToContactFlows
步驟失敗,顯示 AWS CloudFormation 堆疊事件的輸出。
-
輸出少量電話號碼和聯繫流程的執行
由於錯誤或時間限制而未關聯的大量電話號碼和聯繫流程以及電話號碼的執行輸出
參考
Systems Manager Automation