Help us improve the AWS re:Post Knowledge Center by sharing your feedback in a brief survey. Your input can influence how we create and update our content to better support your AWS journey.
如何設定分機,讓客服直接在我的 Amazon Connect 聯絡中心互相呼叫?
我想設定分機,讓我的 Amazon Connect 聯絡中心中的客服可以直接互相呼叫。
解決方法
注意: 在 Amazon Connect 執行個體所在的同一 AWS 區域中,完成下列步驟。
建立包含客服登入名稱及其分機的 DynamoDB 資料表
請完成下列步驟:
- 開啟 Amazon DynamoDB 主控台。
- 在 Create DynamoDB table (建立 DynamoDB 資料表) 頁面上,在 Table name (資料表名稱) 中輸入 AgenttoAgent。
- 在 Primary key (主索引鍵) 中,於 Partition key (分割區索引鍵) 面板中輸入 Extension (分機)。
- 在 Data type (資料類型),選擇 String (字串)。
- 選擇 Create (建立)。
- 為每個客服登入名稱指定唯一的分機。
- 將分機和客服登入名稱新增至資料表。
注意: 在分機號碼 Attribute name key (屬性名稱鍵) 中,輸入 Extension (分機)。 在客服登入名稱 Attribute name key (屬性名稱鍵) 中,輸入 AgentLoginNameAgentLoginName。
注意: 如需如何編輯 DynamoDB 資料表的詳細資訊,請參閱將資料寫入 DynamoDB 資料表。
為 Lambda 函數建立 IAM 角色
為您的 AWS Lambda 函數建立 AWS 身分和存取管理 (IAM) 角色。然後,將下列政策附加到角色,以便 Lambda 可以在 DynamoDB 中尋找客服的登入名稱:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "dynamodb:BatchGetItem", "dynamodb:GetItem", "dynamodb:Query", "dynamodb:Scan", "dynamodb:BatchWriteItem", "dynamodb:PutItem", "dynamodb:UpdateItem" ], "Resource": "Replace with ARN of DynamoDB table you created" }, { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": "*" } ] }
建立 Lambda 函數
建立 Lambda 函數。在內建程式碼編輯器中,輸入下列 Python 程式碼,該程式碼會以分機輸入查詢 DynamoDB 資料表,並從表格傳回對應的客服登入名稱:
import jsonimport boto3 from boto3.dynamodb.conditions import Key def get_agent_id(Extension, dynamodb=None): if not dynamodb: dynamodb = boto3.resource('dynamodb') table = dynamodb.Table('AgenttoAgent') response = table.query( KeyConditionExpression=Key('Extension').eq(str(Extension)) ) return response['Items'] def lambda_handler(event, context): Extension = event['Details']['Parameters']['Extension'] AgentLoginName = get_agent_id(Extension) for agent in AgentLoginName: print(agent['Extension'], ":", agent['AgentLoginName']) print(AgentLoginName) return agent
建立函數後,將 IAM 角色附加至函數。
將 Lambda 函數新增至您的 Amazon Connect 執行個體
請完成下列步驟:
- 開啟 Amazon Connect 主控台。
- 在 Instance alia (執行個體別名) 欄中,選擇 Amazon Connect 執行個體的名稱。
- 在導覽窗格中,選擇 Contact flows (聯絡流程)。
- 在 AWS Lambda 區段中,從 Function (功能) 下拉式清單中選取 Lambda 函數。
- 選擇 Add Lambda Function (新增 Lambda 函數)。
- 在 Lambda Functions (Lambda 函數) 下,新增函數的 ARN。
如需如何將 Lambda 與 Amazon Connect 整合的詳細資訊,請參閱授與 Amazon Connect 對 AWS Lambda 函數的存取權限。
建立客戶佇列流程,該流程會檢查客服的可用性以接收呼叫
請完成下列步驟:
- 建立新的客戶佇列流程。
- 新增 Check staffing (檢查人員配置) 區塊。
- 選擇 Branch (分支)。
- 將 Check staffing (檢查人員配置) 區塊拖放到 Entry point (進入點) 區塊之後的畫布上。
- 在 Status to check (要檢查的狀態) 中,選擇 Available (可用)。
- 選擇 Save (儲存)。
注意: 設定的 Check staffing (檢查人員配置) 區塊有三個分支:True、False 和 Error。
將「Loop prompts」(循環提示) 區塊新增到「Check staffing」(檢查人員配置) 區塊的「True」分支中
請完成下列步驟:
- 選擇 Interact (互動)。
- 將 Loop prompts (循環提示) 區塊拖放到 Check staffing (檢查人員配置) 區塊之後的畫布上。
- 將 Loop prompts (循環提示) 區塊連接到 Check staffing (檢查人員配置) 區塊的 True 分支中。
- 選擇 Loop prompts (循環提示) 以開啟區塊的設定功能表。
- 在 Prompts (提示) 中,選擇 Text-to-speech (文字轉語音),然後輸入類似於「現在我們將來電轉移到 $.External.AgentLoginName」的提示。
- 選擇 Add another prompt to the loop (將另一個提示新增至循環)。
- 選擇 Audio recording (錄音),然後選擇來電者在等待客服接受通話時聽到的音樂。
- 在 Interrupt (中斷) 中,選擇呼叫逾時的時間範圍。例如,選擇 Interrupt every 1 minute (每 1 分鐘中斷一次)。
- 選擇 Save (儲存)。
將「Play prompts」(播放提示) 區塊新增到「Check staffing」(檢查人員配置) 區塊的「False」和「Error」分支
請完成下列步驟:
- 選擇 Interact (互動)。
- 將 Play prompts (播放提示) 區塊拖放到 Check staffing (檢查人員配置) 區塊之後的畫布上。
- 將 Play prompts (播放提示) 區塊連接到 Check staffing (檢查人員配置) 區塊的 False 和 Error 分支。
- 選擇 Play prompts (播放提示) 以開啟區塊的設定功能表。
- 選取 Text-to-speech (文字轉語音) 或 chat text (聊天文字)。
- 在 Set manually (手動設定) 區段中,輸入類似於「您嘗試聯絡的客服目前不在或正忙碌於其他通話。請稍後再試一次。」
- 選擇 Save (儲存)。
新增「Disconnect / hang up」(中斷連線/掛斷) 區塊
請完成下列步驟:
- 選擇 Terminate/Transfer (終止/轉移)。
- 將 Disconnect / hang up (中斷連線/掛斷) 區塊拖放到 Play prompts (播放提示) 區塊之後的畫布上。
- 將所有 Timeout (逾時)和 Error (錯誤) 分支連接至Disconnect / hang up (中斷連線/掛斷) 區塊和 Play prompts (播放提示) 區塊的 Success (成功) 分支。
- 選擇 Save (儲存)。
- 選擇 Publish (發佈)。
建立來電流程,當客服呼叫另一個客服的分機時,啟用 Lambda 函數
- 建立新的來電流程。
- 選擇 Create contact flow (建立聯絡流程) 以開啟聯絡流程設計工具。
注意: 您可以為您的使用案例新增或編輯區塊。例如,您可以將 Error (錯誤) 分支連接到 Play prompt (播放提示) 區塊,以播放自訂訊息。
新增「Store customer input」(儲存客戶輸入) 區塊
請完成下列步驟:
- 選擇 Interact (互動)。
- 將 Store customer input (儲存客戶輸入) 區塊拖放到 Entry point (進入點) 區塊之後的畫布上。
- 選擇 Store customer input (儲存客戶輸入) 以開啟區塊的設定功能表。
- 選取 Text-to-speech (文字轉語音),然後輸入類似於「請輸入客服的分機號碼以繼續。」的提示。
- 在 Customer input (客戶輸入) 區段中,選擇 Custom (自訂),然後輸入要用於每個客服的分機的數字數。
- 選擇 Save (儲存)。
新增「Invoke AWS Lambda function」(調用 AWS Lambda 函數) 區塊
請完成下列步驟:
- 選擇 Integrate (整合)。
- 將 Invoke AWS Lambda function (調用 AWS Lambda 函數) 區塊拖放到 Store customer input (儲存客戶輸入) 區塊之後的畫布上。
- 選擇 Invoke AWS Lambda function (調用 AWS Lambda 函數) 以開啟區塊的設定。
- 選取 Lambda 函數。
- 在 Function input parameters (函數輸入參數) 區段中,選擇 Add a parameter (新增參數),然後選擇 Use attribute (使用屬性)。
- 在 Destination key (目的地金鑰) 中,輸入 Extension (分機) 屬性名稱。
- 在 Type (類型) 中選擇 System (系統)。
- 在 Attribute (屬性) 中,選擇 Stored customer input (已儲存的客戶輸入)。
- 選擇 Save (儲存)。
新增「Set working queue」(設定工作佇列) 區塊
請完成下列步驟:
- 選擇 Set (設定)。
- 將 Set working queue (設定工作佇列) 區塊拖放到 Invoke AWS Lambda function (調用 AWS Lambda 函數) 區塊之後的畫布上。
- 選擇 Set working queue (設定工作佇列) 以開啟區塊的設定功能表。
- 在 Outputs (輸出) 中,選擇 By agent (依客服),然後選擇 Use attribute (使用屬性)。
- 在 Type (類型) 中選擇 External (外部)。
- 在 Attribute (屬性) 中,輸入 AgentLoginName。
- 選擇 Save (儲存)。
新增「Set customer queue flow」(設定客戶佇列流程) 區塊
請完成下列步驟:
- 選擇 Set (設定)。
- 將 Set customer queue flow (設定客戶佇列流程) 區塊拖放到 Set working queue (設定工作佇列) 區塊之後的畫布上。
- 選擇 Select a flow (選取流程)。
- 選擇 AgentQueueFlow。
- 選擇 Save (儲存)。
新增「Transfer to queue」(轉移至佇列) 區塊
請完成下列步驟:
- 選擇 Terminate/Transfer (終止/轉移)。
- 將 Transfer to queue (轉移至佇列) 區塊拖放到 Set customer queue flow (設定客戶佇列流程) 區塊之後的畫布上。
注意: 對於此使用案例,您不需要設定 Transfer to queue (轉移到佇列) 區塊的設定。
新增「Disconnect / hang up」(中斷連線/掛斷) 區塊
請完成下列步驟:
- 選擇 Terminate/Transfer (終止/轉移)。
- 將 Disconnect / hang up (中斷連線/掛斷) 區塊拖放到 Transfer to queue (轉移至柱列) 區塊之後的畫布上。
- 選擇 Save (儲存)。
- 選擇 Publish (發佈)。
重要: 請確定為客服指派電話號碼,以便用來對 AgentToAgentCall 聯絡流程進行內部呼叫。
建立快速連接,讓客服能夠使用內部呼叫功能
請完成下列步驟:
- 命名快速連接為內部通話。
- 在「Type」(類型) 中選擇 External (外部)。
- 在 Destination (目的地) 中,輸入指派給 AgentToAgentCall 聯絡流程的號碼。
- 將 InternalCalling 快速連接新增至指派給客戶的佇列。
注意: 每次呼叫的費用會根據呼叫持續時間而變化。如需有關定價的詳細資訊,請參閱 Amazon Connect 定價。
