掌桥专利:专业的专利平台
掌桥专利
首页

用于递送模块化工具的系统和方法

文献发布时间:2023-06-19 12:02:28


用于递送模块化工具的系统和方法

背景技术

本发明整体涉及电信系统和方法,以及模块化web组件。更具体地,本发明涉及通过基于云的远程计算环境在联络中心或企业中心中递送模块化web组件。

相关申请的交叉引用

本申请涉及并要求2018年12月21日于美国专利商标局提交的名称为“用于递送模块化工具的系统和方法(SYSTEM AND METHOD FOR DELIVERING MODULAR TOOLS)”的美国专利申请号16/229,027的权益,该专利申请的内容并入本文。

发明内容

本发明呈现了一种用于通过基于云的远程计算环境递送模块化工具的系统和方法。用户可创建和定制模块化工具的扩展以用于与产品系统集成而无需改变产品。使用添加到网站的脚本标签,用户能够将模块化工具安装到网站。模块化工具扩展能够与处理程序和网站直接地通信,并且能够与基于驻地的产品直接地集成。这可通过暴露于模块化工具扩展的复用API来完成,该复用API将模块化工具直接地联接到基于驻地的产品。模块化工具能够被配置在基于驻地的产品中,然而模块化工具被托管在云中,并且因此,基于驻地的产品能够从云接收连续的集成和部署。

在一个实施方案中,呈现了用于通过基于云的远程计算环境将桌面小程序递送到基于驻地的客户体验平台产品的方法,该方法包括:由用户通过连接到基于驻地的客户体验平台产品的设备上提供的用户界面来创建和保存桌面小程序;生成唯一ID并且将桌面小程序的配置作为展平JSON对象存储在基于驻地的客户体验平台产品的子系统内;生成与桌面小程序相关联的JavaScript片段作为HTML(超文本标记语言)脚本标签;将与桌面小程序相关联的片段应用于网站中的页面;加载桌面小程序的具体实施,其中将未认证的注册请求发送到该片段中指定的服务器;以及将配置对象转换为预期向桌面小程序提供上下文并且用上下文填充桌面小程序的JSON配置对象。

脚本标签可包括桌面小程序的唯一ID和服务器属性。脚本标签还可包括通用静态脚本。

在桌面小程序包括扩展的情况下,将配置对象转换为预期向桌面小程序提供上下文并且用上下文填充桌面小程序的JSON配置对象包括利用具有REST端点的复用API,其中用于填充的任何输入字段都被用作用于处理程序的JSON输入。调用JSON输入触发将发送到服务器的REST请求。处理程序用作集成点。

在另一个实施方案中,呈现了用于通过基于云的远程计算环境将桌面小程序递送到基于驻地的客户体验平台产品的方法,该方法包括:由用户通过连接到基于驻地的客户体验平台产品的设备上提供的用户界面来创建和保存多个桌面小程序实例;由用户选择多个桌面小程序实例中的第一实例;生成唯一ID并且将第一实例的配置作为展平JSON对象存储在基于驻地的客户体验平台产品的子系统内;通过用户界面生成第一实例的脚本标签;将所生成的脚本标签安装在用户的网站的页面上;加载第一桌面小程序实例的具体实施,其中将未认证的注册请求发送到脚本标签中指定的服务器;由基于驻地的客户体验平台产品内的桌面小程序架构将配置对象转换为预期向用户的桌面小程序实例提供上下文的JSON配置对象;以及用上下文填充第一实例。

在多个桌面小程序实例中的每个桌面小程序实例具有相关联的扩展的情况下,扩展可以是定制或内置的。定制扩展可由用户托管并且由配置实例引用。扩展和相关联的配置可以是基于云的,并且针对基于驻地的客户体验平台产品动态地显现。

用户界面包括充当用于特征和功能的特征切换的字段。字段是基于用户许可可用的。

脚本标签包括通用静态脚本。脚本标签可在加载时进行编码和解码。脚本标签包括用于桌面小程序的唯一ID和服务器属性。

通过云将任何更新或改变动态地且连续地执行到基于驻地的客户体验平台产品。

附图说明

图1是示出通信基础结构的实施方案的图示。

图2是示出了桌面小程序架构的实施方案的图示。

图3是示出用于桌面小程序的配置和部署过程的实施方案的流程图。

图4A是示出计算设备的实施方案的图示。

图4B是示出计算设备的实施方案的图示。

具体实施方式

出于促进对本发明的原理的理解的目的,现在将参考附图中示出的实施方案,并且将使用特定语言来描述这些实施方案。然而,应当理解,并不旨在据此限制本发明的范围。如本发明所涉及的领域的技术人员通常想到的,设想了所描述的实施方案中的任何更改和进一步修改以及如本文所述的本发明的原理的任何进一步应用。

在计算意义上,桌面小程序包括使得用户能够执行功能或访问服务的应用,或者界面的组件。传统上,桌面小程序可被配置在网站上。用户需要上载JavaScript文件,该JavaScript文件内包括了用户自身的权限,并且这是非常手动的过程。如果在其联络中心或企业平台内利用桌面小程序的联络中心或企业需要进行改变,则需要开发人员或IT管理员。这在必须进行快速改变的情况下是不切实际的,诸如高容量时期,仅举一个非限制性示例。在一个实施方案中,联络中心或企业平台管理员能够指定联络中心楼层上的人(诸如监管员),以立即对桌面小程序做出改变。例如,监管员可改变处理分配的工作组而无需牵涉IT管理员,并且由此缓解工作组的积压。一般来讲,管理权可被委托。

在一个实施方案中,桌面小程序(或者,另选地,模块化工具)可被托管在基于云的平台(例如,Genesys电信实验室公司(Genesys Telecommunications Laboratories,Inc.)的

在一个实施方案中,桌面小程序包括能够被直接地部署到网站上的模块化web组件。这些模块化web组件允许诸如即时聊天、回叫、上下文帮助等服务,仅举几个非限制性示例。桌面小程序还可包括应用编程接口(API)的允许诸如网上聊天、回叫和协同浏览等功能的扩展。扩展可包括创建并添加到桌面小程序的插件。扩展也可被托管在云中或用户可决定的任何地方。扩展可由系统用户构建以支持任何数量的独特功能,其中具有桌面小程序界面是理想的。例如,在一个实施方案中,桌面小程序可以是简化且轻量的元素,其可被添加到企业网站以支持像用代理聊天的活动。桌面小程序的扩展赋予利用基于驻地的平台的自动化工具的能力。在另一个实施方案中,桌面小程序可包括基于JavaScrip的、云托管的和云配置的扩展,其在连续地集成和部署的发布模型下将特定API实现到基于驻地的客户体验平台产品(诸如Genesys电信实验室公司的PureConnect平台)。在另一个实施方案中,这也可应用于基于云的平台产品。

图1是示出大体以100指示的通信基础结构的实施方案的图示。例如,图1示出了用于支持联络中心来提供联络中心服务的系统。联络中心可以是商业或企业的内部设施以用于服务企业来执行相对于通过企业可提供的产品和服务的销售和服务的功能。另一方面,联络中心可由第三方服务提供方操作。在一个实施方案中,联络中心可作为混合系统操作,其中联络中心系统的一些组件被托管在联络中心驻地处,并且其他组件被远程托管(例如,在基于云的环境中)。联络中心可部署在专用于企业或第三方服务提供方的设备上,和/或部署在远程计算环境(诸如,例如具有用于支持多个企业的多个联络中心的基础结构的私有或公共云环境)中。联络中心系统的各种组件也可分布在各种地理位置和计算环境上,并且不一定被包含在单个位置、计算环境或甚至计算设备中。

大体以100指示的通信基础结构的组件包括:多个最终用户设备105A、105B、105C;通信网络110;交换机/媒体网关115;呼叫控制器120;IMR服务器125;路由服务器130;存储设备135;统计服务器140;多个代理设备145A、145B、145C,包括工作箱(workbin)146A、146B、146C;管理员/监管员设备145D;多媒体/社交媒体服务器150;web服务器155;iXn服务器160;UCS 165;报告服务器170;以及媒体服务175。

在一个实施方案中,联络中心系统管理资源(例如,人员、计算机、电信设备等),以使得能够经由电话或其他通信机构递送服务。此类服务可根据联络中心的类型而变化,并且可涵盖从客户服务到服务台、紧急响应、远程营销、接受订单等的范围。

期望从联络中心接收服务的客户、潜在客户或其他最终用户(统称为客户或最终用户)可经由最终用户设备105A、105B和105C(统称为105)发起到联络中心的入站通信(例如,电话呼叫、电子邮件、聊天等)。最终用户设备105中的每个最终用户设备可以是本领域中常规的通信设备,诸如电话、无线电话、智能电话、个人计算机、电子平板电脑、膝上型电脑等,仅举一些非限制性示例。操作最终用户设备105的用户可发起、管理和响应于电话呼叫、电子邮件、聊天、文本消息、web浏览会话和其他多媒体事务处理。虽然为了简单起见,在100处示出了三个最终用户设备105,但是可存在任何数量的最终用户设备。

去往和来自最终用户设备105的入站通信和出站通信可根据正在使用的设备的类型来遍历网络110。网络110可包括电话、蜂窝和/或数据服务的通信网络,并且还可包括专用或公共交换电话网络(PSTN)、局域网(LAN)、专用广域网(WAN)和/或公共WAN,诸如互联网,仅举一个非限制性示例。网络110还可包括无线运营商网络,该无线运营商网络包括码分多址(CDMA)网络、全球移动通信系统(GSM)网络或本领域中常规的任何无线网络/技术,包括但不限于3G、4G、LTE等。

在一个实施方案中,联络中心系统包括联接到网络110的交换机/媒体网关115,以用于在最终用户与联络中心之间接收和传输电话呼叫。交换机/媒体网关115可包括被配置为用作用于在中心内的代理级路由的中心交换机的电话交换机或通信交换机。交换机可以是硬件交换机系统或经由软件实现的软交换机。例如,交换机115可包括自动呼叫分配器、专用交换分机(PBX)、基于IP的软交换机和/或被配置为从客户接收源自互联网的交互和/或源自电话网络的交互并且将那些交互路由到例如代理电话或通信设备的具有专用硬件和软件的任何其他交换机。在该示例中,交换机/媒体网关通过例如在客户的电话设备与代理电话设备之间建立连接来在呼叫客户与代理电话设备之间建立语音路径/连接(未示出)。

在一个实施方案中,交换机联接到呼叫控制器120,该呼叫控制器可例如用作在交换机与联络中心的路由、监视和其他通信处理组件的其余部分之间的适配器或接口。呼叫控制器120可被配置为处理PSTN呼叫、VoIP呼叫等。例如,呼叫控制器120可被配置有用于与交换机/媒体网关和联络中心装备介接的计算机电话集成(CTI)软件。在一个实施方案中,呼叫控制器120可包括用于处理SIP呼叫的会话发起协议(SIP)服务器。呼叫控制器120还可提取关于客户交互的数据,诸如呼叫方的电话号码(例如,自动号码识别(ANI)号码)、客户的互联网协议(IP)地址或电子邮件地址,并且在处理交互时与系统100的其他组件通信。

在一个实施方案中,系统100还包括交互式媒体响应(IMR)服务器125。IMR服务器125也可称为自助系统、虚拟助理等。IMR服务器125可类似于交互式语音响应(IVR)服务器,不同的是IMR服务器125不限于语音,而是还可覆盖多种媒体通道。在说明语音的示例中,IMR服务器125可被配置有IMR脚本,以用于向客户查询其需要。例如,银行的联络中心可经由IMR脚本告知客户如果他们希望检索他们的账户余额,则“请按1”。通过继续与IMR服务器125交互,客户可无需与代理说话就能够完成服务。IMR服务器125还可询问开放式问题,诸如“我能为您做些什么?”,并且客户可说出或以其他方式输入联系联络中心的原因。可由路由服务器130使用客户的响应来将呼叫或通信路由到适当联络中心资源。

如果通信要路由到代理,则呼叫控制器120与路由服务器(也称为编排服务器)130交互以找到用于处理交互的适当代理。对用于路由入站交互的适当代理的选择可基于例如路由服务器130所采用的路由策略,并且还基于关于代理可用性、技能和例如由统计服务器140提供的其他路由参数的信息。

在一个实施方案中,路由服务器130可查询客户数据库,该客户数据库存储关于现有客户端的信息,诸如联系人信息、服务级协议(SLA)要求、先前客户联系人的性质以及联络中心所采取的用于解决任何客户问题的动作等。数据库可以是例如Cassandra或任何NoSQL数据库,并且可被存储在大容量存储设备135中。数据库也可以是SQL数据库,并且可由任何数据库管理系统管理,所述数据库管理系统诸如,例如Oracle、IBM DB2、MicrosoftSQL服务器、Microsoft Access、PostgreSQL等,仅举几个非限制性示例。路由服务器130可经由ANI或由IMR服务器125收集的任何其他信息从客户数据库查询客户信息。

一旦适当代理被识别为可用于处理通信,就可在客户与所识别的代理的代理设备145A、145B和/或145C(统称为145)之间建立连接。虽然为了简单起见,图1中示出了三个代理设备,但是可存在任何数量的设备。也可存在管理员/监管员设备145D。管理员/监管员设备145D可由联络中心中管理代理的管理员或监管员控制。另外,管理员或监管员可从其设备145D配置联络中心软件平台内的设置。虽然为了简单起见,图1中示出了仅一个管理员/监管员设备145D,但是在联络中心或企业环境内可存在任何数量的管理员/监管员设备。还可将关于客户和/或客户的历史信息的所收集的信息提供给代理设备,以帮助代理更好地服务于通信,并且还可将这些信息提供给联络中心管理员/监管员设备,以用于管理联络中心。就这一点而言,每个设备145可包括适于常规的电话呼叫、VoIP呼叫等的电话。设备145还可包括用于与联络中心的一个或多个服务器通信并且执行与联络中心操作相关联的数据处理以及用于经由语音和其他多媒体通信机构与客户介接的计算机。

联络中心系统100还可包括多媒体/社交媒体服务器150,以用于进行与最终用户设备105和/或web服务器155的语音交互之外的媒体交互。媒体交互可与例如电子邮件、语音邮件(通过电子邮件的语音邮件)、聊天、视频、文本消息、网络、社交媒体、协同浏览等相关。多媒体/社交媒体服务器150可采用用于接收、处理和转发多媒体事件的本领域中常规的具有专用硬件和软件的任何IP路由器的形式。

web服务器155可包括例如用于最终用户可订阅的多种已知社交交互站点(诸如Facebook、Twitter、Instgraph等,仅举几个非限制性示例)的社交交互站点主机。在一个实施方案中,尽管web服务器155被描绘为联络中心系统100的一部分,但是web服务器也可由第三方提供和/或维持于联络中心驻地外。web服务器155还可提供在受联络中心系统100支持的企业的网页。最终用户可浏览网页并获得关于企业的产品和服务的信息。网页还可提供用于经由例如网上聊天、语音呼叫、电子邮件、web实时通信(WebRTC)等联系联络中心的机制。桌面小程序可被部署在托管在web服务器155上的网站上。

在一个实施方案中,除了实时交互之外,还可将可递延交互/活动路由到联络中心代理。可递延交互或活动可包括后台工作或可离线执行的工作,诸如对电子邮件、信件进行回复、参加培训或不需要与客户实时通信的其他活动。交互(iXn)服务器160与路由服务器130交互以选择适当代理来处理活动。一旦分配给代理,活动就可被推送给代理,或者可作为要由代理完成的任务而出现在代理的工作箱146A、146B、146C(统称146)中。代理的工作箱可经由本领域中常规的任何数据结构诸如链接列表、数组等实现。在一个实施方案中,可将工作箱146例如维持在每个代理设备145的缓冲存储器中。

在一个实施方案中,大容量存储设备135可存储与代理数据(例如,代理配置文件、计划表等)、客户数据(例如,客户配置文件)、交互数据(例如,与客户的每次交互的细节,包括但不限于:交互原因、处置数据、等待时间、处理时间等)等等相关的一个或多个数据库。在另一个实施方案中,可将数据(例如,客户配置文件数据)中的一些维持在托管于大容量存储设备135或其他地方的客户关系管理(CRM)数据库中。大容量存储设备135可采用如本领域中常规的硬盘或磁盘阵列的形式。

在一个实施方案中,联络中心系统可包括通用联系人服务器(UCS)165,该UCS被配置为检索存储在CRM数据库中的信息并指示要存储在CRM数据库中的信息。UCS 165还可被配置为便于维护客户偏好和交互历史的历史,以及捕获和存储关于来自代理的评论、客户通信历史等的数据。

联络中心系统还可包括报告服务器170,该报告服务器被配置为从由统计服务器140聚合的数据生成报告。此类报告可包括与资源状态(诸如,例如平均等待时间、弃用率、代理占用率等)有关的近实时报告或历史报告。报告可自动地生成或响应于来自请求方(例如,代理/管理员、联络中心应用程序等)的特定请求而生成。

图1的各种服务器可各自包括执行计算机程序指令并且与用于执行本文所述的各种功能的其他系统组件介接的一个或多个处理器。计算机程序指令存储在使用标准存储器设备(诸如,例如随机存取存储器(RAM))实现的存储器中。计算机程序指令还可存储在其他非暂态计算机可读介质(诸如,例如CD-ROM、闪存驱动器等)中。虽然服务器中的每个服务器的功能被描述为由特定服务器提供,但是本领域技术人员应当认识到,在不脱离本发明的实施方案的范围的情况下,各种服务器的功能可组合或集成到单个服务器中,或者特定服务器的功能可分布在一个或多个其他服务器上。

在一个实施方案中,术语“交互”和“通信”可互换地使用,并且大体是指使用任何通信通道的任何实时和非实时交互,包括但不限于电话呼叫(PSTN或VoIP呼叫)、电子邮件、语音邮件、视频、聊天、屏幕共享、文本消息、社交媒体消息、WebRTC呼叫等。

媒体服务175可提供音频和/或视频服务以支持联络中心特征,诸如用于IVR或IMR系统的提示(例如,音频文件的回放)、保持音乐、语音邮件/单方记录、多方记录(例如,音频和/或视频通话的多方记录)、语音识别、双音多频(DTMF)识别、传真、音频和视频转码、安全实时传输协议(SRTP)、音频会议、视频会议、指导(例如,对教练收听在客户与代理之间的交互的支持和对教练向代理提供评论而不使客户听到评论的支持)、呼叫分析和关键字识别。

在一个实施方案中,基于驻地的平台产品可通过呈现在代理设备145A至145C上和管理员/监管员设备145D上的用户界面(UI)提供对系统100的组件的访问和控制。图形应用生成器程序可集成在基于驻地的平台产品内,其允许用户写入控制在基于驻地的平台产品内的各种交互处理行为的程序(处理程序)。

如上所述,联络中心可作为混合系统操作,其中一些或所有组件被远程托管,诸如在基于云的环境中。为了方便起见,下面将相对于将模块化工具从基于云的环境提供到容纳在驻地的组件来描述本发明的实施方案的各方面。

图2是示出大体以200指示的桌面小程序架构的实施方案的图示。大体以200指示的桌面小程序架构的组件包括:基于驻地的平台服务器205,其可包括目录服务206、会话管理器207和HttpPluginHost 208;代理工作站145A至145C、管理员/监管员工作站145D;模块化工具210;以及浏览器215。

在一个实施方案中,代理工作站145A至145C在其设备上运行联络中心软件平台,通过该联络中心软件平台,该代理工作站接收路由到代理工作站以供处理的交互。在该示例中,代理使用基于驻地的平台。基于驻地的平台客户端经由交互中心Web服务(ICWS)与位于服务器205上的HttpPluginHost 208通信。一般来讲,ICWS管理与服务器205的连接,指定认证和站设置,监控连接状态改变事件,并且相对于所连接的会话用户执行动作。ICWS包括用于web、移动和桌面客户端应用的RESTful API。服务器205还包括彼此通信的目录服务206和会话管理器207。目录服务206存储桌面小程序配置。会话管理器207还与HttPluginHost 208通信。HttpPluginHost 208经由ICWS与管理员/监管员工作站145D通信。管理员/监管员工作站145D能够从其设备处理桌面小程序210的各个方面。在一个实施方案中,监管员能够配置路由并处理桌面小程序注册管理。管理员能够配置桌面小程序UI。桌面小程序210包括托管在云服务如Amazon Web Services上的微型化JavaScript代码,例如,从而允许连续的集成和部署。桌面小程序210JavaScript被添加到具有一组桌面小程序ID和服务器的浏览器网站210。浏览器网站210可被托管在图1中的系统100的web服务器155中。

图3是示出用于桌面小程序的配置和部署过程的实施方案的流程图,其大体以300指示。在一个实施方案中,通过网站上包括的代码片段来配置和部署模块化工具。使用分布式云模型,用户可引用在递送网络上的桌面小程序的单个静态脚本。上下文和配置基于在基于驻地的平台产品内的桌面小程序架构200来动态地出现。

在操作305中,管理员创建并保存桌面小程序。为管理员在其管理员设备145D上提供UI来添加和配置新桌面小程序实例,包括具有其自身的扩展的桌面小程序实例。可在桌面小程序内配置因素,诸如主题、语言和移动设备,仅举几个非限制性示例。也可配置平台唯一的其他因素,诸如服务器名称、反向代理以及是使用HTTP还是HTTPS进行web服务器与平台服务器之间的通信。另外,桌面小程序中使用的语言可基于浏览器偏好。在另一个实施方案中,如果桌面小程序不能使用浏览器的优选语言中的任一种,则桌面小程序将使用用户选择的语言。

桌面小程序也可被配置用于不同模式。例如,用于设备的移动模式、桌面模式或两者。桌面小程序代码可检测网站访客是正在使用桌面浏览器还是移动浏览器。也可通过配置来控制插件。例如,可动态地改变可用的插件名称的列表,使得不同桌面小程序配置访问不同插件。另外,还可将定制JavaScript对象表示法(JSON)对象投入到配置中,以将配置扩展到其当前结构之外。

在一个实施方案中,内置扩展(诸如网上聊天或回叫,仅举几个非限制性示例)可用于给定桌面小程序配置。这些扩展及其配置可存留在云中(诸如在web服务器155或云托管服务上),并且针对基于驻地的平台用户动态地出现。

另外,可供任何给定用户用于配置的字段取决于授予当前用户的权限。权限的粒度以管理员/监管员级提供。其他方,诸如在联络中心环境内的开发团队,也可能能够添加扩展。定制扩展可由创建方托管并且简单地由配置实例引用。

在另一个实施方案中,所提供的UI以基于驻地的层级从云提供。可从云中的JSON文件读入选项,该JSON文件可用于以驻地级进行更新。这允许动态地且连续地并且实时地进行更新。改变可通过云以连续的方式暴露于用户,而不是周期性地提供计划更新。将控制传递到操作310,并且过程300继续。

在操作310中,生成标识(ID)并且存储配置。在一个实施方案中,一旦创建并保存了桌面小程序,就可生成唯一ID,并且将配置作为展平JSON对象存储在基于驻地的平台的目录服务206子系统内。将控制传递到操作315,并且操作300继续。

在操作315中,生成脚本标签。在一个实施方案中,可通过生成HTML脚本标签的形式的JavaScript片段完成脚本标签的生成。服务器和桌面小程序ID属性被包括在脚本中,例如