我希望当我的 Amazon Connect 联系中心的座席关闭联络控制面板 (CCP) 窗口时,他们的状态会自动更改为离线。该如何进行设置?
简短描述
使用 Amazon Connect Streams API 和 Agent API 在联系中心的自定义应用程序中集成 CCP。
有关自定义 CCP 设置的示例,请参阅如何在 Amazon Connect 屏幕弹出窗口中显示来电人联系属性?
**注意:**在使用原定设置的 Amazon Connect CCP 时,将其关闭不会使座席的状态从 Available(空闲)更改为 Offline(离线)。座席的状态必须手动更改。
解决方法
**重要提示:**以下说明提供了基本示例和资源。您必须确定如何为您自己的使用案例和联系中心要求实施 Streams API 并编写 JavaScript 客户端代码。
在自定义 Web 应用程序中设置您的 Amazon Connect 实例的 CCP
如需说明,请参阅 GitHub 上的 Amazon Connect Streams 文档。
更新您的应用程序代码
在您的 Web 应用程序中集成以下 Streams API 调用:
1. 使用 connect.agent() 来订阅代理事件与检索代理对象。
let mAgent;
connect.agent(function(agent) {
mAgent = agent;
});
2. 在 onbeforeunload 事件处理程序中调用 agent.setState() 以更改座席状态。
window.addEventListener("beforeunload", function(event) {
if (mAgent != null) {
let states = mAgent.getAgentStates();
// "states" is an array of changeable states. You can filter the desired state to change by name.
let offlineState = states.filter(state => state.name === "Offline")[0];
// Change agent state
mAgent.setState(offlineState, {
success: function() {
console.log("SetState succeeded");
},
failure: function() {
console.log("SetState failed");
}
});
}
});
防范错误的设计
如果 API 调用失败,联系人进入接洽流程的错误分支,那么座席状态可能不会如预期更改。请确保在自定义代码中包含逻辑以应对这种可能性。
例如,您可以在再次尝试 API 调用时延迟页面卸载。或者,您可以在模态对话框中输入“Call failed”警告消息,然后再卸载页面。
相关信息
添加自定义座席状态
提供对联系控制面板的访问权限
监控指标并运行报告