CN101931619A - 可插入的联系解析 - Google Patents
可插入的联系解析 Download PDFInfo
- Publication number
- CN101931619A CN101931619A CN2010101808578A CN201010180857A CN101931619A CN 101931619 A CN101931619 A CN 101931619A CN 2010101808578 A CN2010101808578 A CN 2010101808578A CN 201010180857 A CN201010180857 A CN 201010180857A CN 101931619 A CN101931619 A CN 101931619A
- Authority
- CN
- China
- Prior art keywords
- user
- expansion module
- contact resolution
- server
- sip
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/42—Systems providing special services or facilities to subscribers
- H04M3/46—Arrangements for calling a number of substations in a predetermined sequence until an answer is obtained
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4547—Network directories; Name-to-address mapping for personal communications, i.e. using a personal identifier
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1069—Session establishment or de-establishment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1083—In-session procedures
- H04L65/1094—Inter-user-equipment sessions transfer or sharing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1096—Supplementary features, e.g. call forwarding or call holding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1101—Session protocols
- H04L65/1104—Session initiation protocol [SIP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/54—Presence management, e.g. monitoring or registration for receipt of user log-on information, or the connection status of the users
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Multimedia (AREA)
- Telephonic Communication Services (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Sub-Exchange Stations And Push- Button Telephones (AREA)
Abstract
本发明涉及可插入的联系解析,提供了方法、设备和系统用于采用可插入的扩展并将其应用于唯一一组用户群体以处理他们的偏好和以用户为中心的提醒关系。更详细地,可插入的扩展允许用户将他们的个性化联系解析算法由服务器应用于由他们发起的或者发给他们的呼叫。联系解析算法可插入到任何服务器,并且不需要内置到服务器自身中。而且,多个用户可以参考和使用同一可插入联系解析算法。
Description
技术领域
本发明一般涉及通信,更详细地涉及便携式的以用户为中心的联系解析(contact resolution)机制。
背景技术
会话发起协议(SIP)是用于建立多种实时通信会话的开放式信令协议。可以利用SIP建立的通信会话类型的实例包括语音、视频、和/或即时消息。这些通信会话可以在任何类型的通信设备上实现,例如个人计算机、膝上型电脑、个人数字助理。SIP的一个关键特性是其利用终端用户的记录地址(AOR)作为用于所有通信的单个统一公共地址的能力。因此,在SIP增强通信环境中,用户的AOR成为将用户连接到与用户关联的所有通信设备的单个地址。利用这种AOR,呼叫者可以联络也称为用户代理(UA)的用户的通信设备中的任何一个,而不用知道每个唯一设备地址或者电话号码。
在建立SIP会话期间执行的多个步骤中的一个是联系解析,这决定注册到给定用户的哪些设备会在任何给定呼叫时发出提醒。在传统系统中,用户的联系解析策略(所作出的关于什么设备响铃、如何响铃的决定)集成在PBX中,并只为预定的电话机运行。因此,用户对联系解析策略的选择是依PBX版本和电话设备而定的。这在SIP中不是非常期望的,因为对于用户注册的任何数量的SIP通信设备,下层IP网络成为了通用附接机构。是SIP用户来决定注册、附接、使能他或者她的哪个设备,以及将这些设备中的每一个用于什么目的。在SIP中,联系解析通常是在定位服务器中完成的,但是象PBX那样,通常不期望将定位服务器重新部署成能够提供新的联系解析行为。因此期望用户具备访问联系解析策略的权利,联系解析策略可以由系统/网络管理者代表用户容易地提供,而一般不用修改网络的特定PBX或者通信特征服务器或者位置服务器。
发明内容
本发明实施例为用户尤其是SIP用户提供了使能联系解析策略或者算法的机制。很多企业允许SIP用户在定位服务器上将针对每个设备或者网络元件的其偏好注册为简单的q值。在SIP中,定位服务器的职责是根据用户策略来裁决向每个已注册的联系人发送SIP请求。这通常通过对实现用户策略的静态算法内的q值进行评估来完成。几个常用的策略包括顺序分叉(forking)(依次联系每个设备)、并行分叉(同时联系所有设备并允许最先响应的设备获取该联系)和负荷平衡。本发明实施例允许网络管理者对网络用户“热部署”新的算法选择,并允许用户选择并且可选地个性化在企业网络中可用的任何已部署的联系解析策略或者算法。更详细地,本发明实施例提供了允许用户查找和利用网络中已经适当部署的可插入联系解析算法(串行分叉、并行分叉、智能负荷平衡、基于呼叫者身份的可变响铃等)的机制。时常地,可插入的联系解析算法是由管理者或者具有管理者权限的一些其他用户来配置的。然而,本发明实施例并不局限于此,也可以允许非管理者用户为个人使用和/或其他用户使用的目的来开发和部署可插入的联系解析算法。也可以允许选择使用可插入的联系解析算法的任何用户在采用时改进和定制化这种联系解析算法。
包括联系解析算法的扩展模块可结合表条目来使用,该表条目显示了在接收到针对该用户的呼入联系时要使用哪个联系解析算法(CRA)(即应当引用哪个扩展模块)。
扩展模块类似于SIP小服务程序(servlet),因为扩展模块是可以单独地被部署和取消部署的自包含的jar文件。SIP小服务程序与其他类型的小服务程序非常相似,因为它们增强了将其加载以支持SIP功能的接口。另一种类型的小服务程序的实例是http小服务程序,其是运行于web服务器或者应用服务器上的Java应用并提供服务器侧的处理,通常以访问数据库或者执行电子商务处理。其是针对用C和C++编写的CGI脚本、活动服务页(ASP)和专用插件程序的基于Java的替换。小服务程序类似于CGI概念,但是不使用独立的进程,而将消息传递到在服务器内部的虚拟机上运行的类。
很多小服务程序使用特定的编程语言(例如Java)编写,这允许它们在服务器和操作系统之间移植。虽然Java是可以用于创建小服务程序或者扩展模块的编程语言的一个实例,但是本领域技术人员将理解,本发明实施例并不局限于此。更详细地,本发明实施例构想了以允许扩展模块在服务器和/或操作系统之间移植的任何类型的编程语言来创建扩展模块。本发明实施例还构想了能够在服务器(例如企业服务器,尤其是SIP服务器)上的虚拟机内部运行的扩展模块。
然而不象SIP小服务程序,扩展模块是可热部署的。它们允许运行时升级而没有服务损失。至少根据本发明某些实施例,扩展模块可以用于SIP对话适配(adaptation),以修改在接收到进入联系时特定用户获得的联系解析的形式。更详细地,各个对话适配逻辑可以被实现为扩展模块而不是用于每个适配器的小服务程序。除了扩展模块的热交换可用性之外,对扩展模块的使用允许更容易的管理并共享共同对话适配逻辑。扩展模块和传统SIP小服务程序之间的另一个区别是:与仅采取SIP小服务程序接口的SIP小服务程序不同,扩展模块可以定义很多接口来呈现其服务。
而且,至少根据本发明某些实施例,扩展模块用于呈现可以由小服务程序、应用路由器、和/或其他SIP应用访问的服务。在某些实施例中,扩展模块被绑定到在部署期间定义(通常由系统管理者定义)的唯一短ID。扩展模块还可以定义呈现其服务的接口。扩展API可以在需要时通过扩展模块的短ID来辅助检索扩展模块。因为扩展模块是可部署的自包含jar,所以扩展模块的配置信息与实现扩展模块的类文件一起包含在jar文件中。配置信息可以以与小服务程序类似的方式被定义在部署XML文件中。
运行时,每个远程方与被实现为服务主机扩展模块的呼入和呼出对话适配逻辑相关联。需要对话适配(例如联系解析)的任何服务将通过其扩展模块标识符(即分配给扩展模块的唯一短ID)来调用适配模块。
除了示出在接收到联系解析请求时要使用哪个CRA的表条目以外,该扩展模块也被使用。根据本发明至少某些实施例,该表包含用户相关的配置数据和动态数据。在该表中,用户可以被允许定义他们个人与所部署的CRA之间的关联,该CRA是每当接收到针对他们的联系时他们想使用的CRA。更详细地,特定用户的表可以包括将应用特定CRA的扩展模块的标识符。可以有与这种扩展关联的以用户为中心的数据,该扩展可以由用户按照需要通过用于设置用户选项的单独网页界面进行配置和重新配置。更详细地,一旦表中发生了用户数据配置或者重新配置,则活动CRA的有效性检验可以在有知识的端点进行的注册或者重新注册期间发生。
当接收到联系解析请求时,调用扩展模块。因此,联系解析是可插入的,不需要内置到SIP定位服务器自身内部。而且,多个用户可以引用同一扩展模块,并使用与他们自己的个性化用户设置相同的或者类似的CRA。
根据本发明至少某些实施例,提供了一种通信方法,主要包括:
在第一服务器处接收针对第一用户的联系解析请求;
识别第一用户的联系解析偏好;
确定第一用户的联系解析偏好利用了扩展模块作为联系解析的一部分;以及
由第一服务器调用扩展模块,并针对该请求将用户偏好选项应用于该扩展模块。
在此所用的术语“计算机可读媒介”指参与向处理器提供用于执行的指令的任何有形的存储和/或传输媒介。这种媒介可以采取很多形式,包括但不局限于非易失性媒介、易失性媒介和传输媒介。非易失性媒介例如包括NVRAM,或者磁盘或光盘。易失性媒介包括动态存储器,例如主存储器。计算机可读媒介的常用形式例如包括软盘、软碟、硬盘、磁带、或任何其他磁性媒介、磁光媒介、CD-ROM、任何其他光媒介、穿孔卡片、纸带、具有孔图案的任何其他物理媒介、RAM、PROM、EPROM、FLASH-EPROM、固态媒介例如存储卡、任何其他存储芯片或者存储盒、下文中所述的载波、或者计算机可以读取的任何其他媒介。电子邮件的数字文件附件或者其他自包含信息归档或者归档集被认为是与有形存储媒介等同的分布式媒介。当计算机可读媒介配置为数据库时,可以理解,数据库可以是任何类型的数据库,例如关系型、分层的、面向对象的等等。因此,考虑本发明包括有形存储媒介或者分布式媒介和现有技术认可的等同体和后续媒介,其中存储有本发明的软件应用。
此处使用的术语“确定”、“计算”和“运算”以及其变形可互换使用,并且包括任何类型的方法、过程、数学运算或者技术。
此处使用的术语“模块”、“代理”或“工具”是指任何已知的或者以后开发的硬件、软件、固件、人工智能、模糊逻辑、或者能够执行与该元件相关的功能的硬件和软件的结合。还有,虽然本发明按照示意性实施例来描述,但是应当理解,本发明的各个方面可以单独请求保护。
前面是本发明实施例的概述说明,以提供对本发明某些方面的理解。这个概述既不是对本发明及其各个实施例的详尽概括也不是穷举式概括。。既不希望标识本发明的关键或者重要元素也不是说明本发明的范围,而是以简化的形式表示本发明选择的概念,来作为对下面更详细描述的介绍。可以理解的是,本发明其他实施例可以单独地或者组合地利用上述或者下面详细说明的一个或者多个特征。
附图说明
图1是示出根据本发明至少一些实施例的通信系统的框图;
图2是示出根据本发明至少一些实施例的联系解析系统的元件的框图;
图3是示出根据本发明至少一些实施例的允许用户定义他们自己的(一个或多个)联系解析算法的方法的流程图;以及
图4是示出根据本发明至少一些实施例的联系解析方法的流程图。
具体实施方式
下面结合示意性通信系统说明本发明。虽然适合用于例如利用(一个或多个)服务器和/或(一个或多个)数据库的系统,但是本发明并不局限于用于任何特定类型的通信系统或者系统元件的配置。本领域技术人员将理解,所公开的技术可以用于期望允许用户个性化他们的联系解析算法的任何通信应用,尤其是在SIP环境中。
还将结合分析软件、模块、和相关的分析硬件来说明本发明的示意性系统和方法。然而,为了避免不必要的混淆本发明,下面的说明省略了可以是以框图形式示出的、众所周知的或者以其它方式概述的已知的结构、组件和设备。
为了说明的目的,阐明了多个细节以提供对本发明全面的理解。然而应当清楚,本发明可以以除了在此阐明的特定细节之外的多种方式实现。
首先参考图1,将根据本发明至少一些实施例说明示意性通信系统100。更详细地,通信系统100包括适合于将一个或者多个通信设备108连接到用户注册服务器112的通信网络104。
通信网络104可以是任何类型的已知通信媒介或者通信媒介的集合,并且可以使用任何类型的协议以在端点之间传输消息。通信网络104可以包括有线的和/或无线通信技术。互联网是通信网络104的一个实例,该互联网构成了IP网络,IP网络包括位于世界各地的很多计算机和其他通信设备,它们通过很多电话系统和其他装置连接起来。通信网络104的其他实例包括但不限于标准普通老式电话系统(POTS)、综合业务数字网(ISDN)、公共交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、会话发起协议(SIP)网、任何类型的企业网络、以及现有技术已知的任何类型的分组交换或者电路交换网络。另外,可以理解,通信网络104不必局限于任何一个网络类型,相反可以包括多种不同的网络和/或网络类型。
通信设备108可以是任何类型的已知通信或处理设备,例如个人计算机、膝上型电脑、个人数字助理(PDA)、蜂窝电话、智能电话、电话、模拟电话、DCP电话、或者它们的组合。单个通信设备108可以由单个用户控制或与单个用户关联,或者适合于由很多用户使用(例如企业通信设备,其允许任何企业用户在呈现了有效的用户名和密码时利用该通信设备)。
每个通信设备108可以与同一个用户关联。换句话说,通信设备108可以属于单个用户,并可以对应于不同类型的通信设备。作为一个实例,用户可以具有四个通信设备108,其中每一个分别对应于单个用户的个人电话、工作电话、个人计算机、和电子邮件检索设备。可选地,每个通信设备108可以由(例如关联到)不同用户拥有和操作。
通常,通信设备108可以适合于支持与其他通信设备108的视频、音频、文本、和/或数据通信。由通信设备108用来与其他通信设备108通信的媒介类型可以根据通信设备108上可用的通信应用来决定。
用户注册服务器112适用于接收和存储操作一个或者多个通信设备108的多个用户的用户偏好。更详细地,可以允许用户登陆到用户注册服务器112,并且定义他们想应用到该用户参与的任何通信会话的某些偏好(即用户喜好)。可以全局地定义针对用户的这些用户偏好(例如单组用户偏好可以一致地应用于任何网络和与该用户关联的任何通信设备)。可选地,可以允许用户为不同的网络或者使用案例定义不同的用户偏好(例如用户可以具有不同的家庭生活偏好和工作偏好)。还可以允许用户为他们的每个通信设备108定义不同的用户偏好。例如,用户可以为他们的移动通信设备108定义第一组联系解析偏好(例如第一CRA),为他们的工作通信设备定义不同的第二组联系解析偏好(例如第二CRA),并且为他们的家庭通信设备定义不同的第三组联系解析偏好(例如第三CRA)。所有这些不同的用户偏好可以与用户注册服务器112上的单组用户偏好116关联起来存储。例如,链接或者形成类似的CRA层级结构是有用的,其中,例如用户的一些设备的子集是利用并行分叉来处理的,而其他设备是利用串行分叉来处理的。在这样的实施例中,可以存在处理CRA之间的链接的某些更高级的协调者。此外,逐设备地,算法可能对象一天中的时间、星期中的日期、设备状态等事件敏感,以改变特定于设备的联系解析行为。
可选地,单组联系解析偏好(即单个CRA)可以用于在与用户关联的所有通信设备108之间解析该用户的联系。换句话说,单个CRA可以用于确定是否应当提醒特定通信设备108,应当何时提醒特定通信设备108,以及应当如何提醒特定通信设备108。可以根据本发明至少某些实施例应用的这种CRA的实例在授予Brunson等的美国专利申请No.12/241,368中有进一步详细的描述,其全部内容在此通过引用结合于此。
根据本发明至少某些实施例,可以允许用户通过他们的通信设备108在用户注册服务器112上更新和/或改变他们的用户偏好116。换句话说,用户可以连接到用户注册服务器112来配置他们的用户偏好116,通常通过某些类型的网页用户选项界面来配置。根据本发明至少某些实施例,可插入的(pluggable)CRA可以适用于支持网页选项界面以供用户设置他们的用户偏好116。这些用户选项可以存储于本地数据存储设施中,例如企业数据库,并/或作为用户偏好116存储于用户注册服务器112中。这些偏好116然后可以被分发到在呼叫处理的联系解析阶段期间调用用户偏好116的一个或多个网络设备。
根据本发明至少某些实施例,用户偏好116包括定义优选CRA(用于一个或者多个通信设备108)的参数。当用户更新他们的用户偏好116时,用户偏好的改变可以在整个网络中被分发以到达使用这些偏好的任何设备。通常,网络中只有非常少量的设备(例如两个或三个)真正需要知道用户的CRA选择。然而,本发明实施例并不局限于此,用户偏好116的改变可以被分发到任意数量的网络设备。如这里将详细说明的,这些偏好可以存储在用户配置的表中。
本发明实施例构想了如下情形,其中,可以在网络运行的同时将新的CRA部署到网络中,而不会对网络的运行产生不利影响(即管理者可以以扩展模块的形式将可热插入的CRA加入到网络中)。换句话说,允许网络管理者将新的CRA加入到网络或者单个网络设备,该CRA可以由该设备应用于随后接收的联系。根据本发明至少某些实施例,当这样的CRA加入到网络中时,可以向网络中一个或者多个用户通知该更新。响应于这个通知,可以允许用户改变他们的用户偏好116(通过响应该通知直接地或者通过分别访问用户注册服务器112间接地)来使用新加的CRA。同样,可以允许用户通过任何类型的已知的或者以后开发的网页选项界面来访问和更新他们的用户偏好116。这个过程的细节将在下面进一步详细说明。
可选择的,或者另外,为了允许用户更新他们的用户偏好116,还可以允许网络管理者更新用户偏好116。因此,改变用户偏好116以调用新加的CRA可以由用户和/或网络管理者来执行。
而且,用户偏好116可以是用密码或者类似类型的认证凭证安全写入的。因此,例如,不提供恰当的密码作为用户名的话,可以不允许用户或者管理者改变用户偏好116。还预想了限制用户和/或管理者更新用户偏好116的能力的其它可选项,并且这些其它可选项可以根据网络安全需求而变化。
现在参考图2,将根据本发明至少某些实施例说明示意性SIP通信系统200。系统200可以包括将一个或者多个呼叫设备208(其可以对应或者不对应用户通信设备108)连接到呼叫路由机构212的通信网络204。
通信网络204可以与通信网络104相同或者不同。例如,网络104、204都可以对应于企业网络。可选地,通信网络104可以对应于因特网而通信网络204对应于企业网或者具有SIP功能的网络。
无论通信网络204的配置如何,都允许呼叫者通过呼叫设备发起到被呼叫者(callee)的联系。根据本发明至少某些实施例,被呼叫者可以对应于具有多个与之关联的SIP设备232a-232N的SIP用户。本领域技术人员可以理解,SIP设备232a-232N中的一个或者多个也可以对应于图1中所示的用户通信设备108中的一个。
当呼叫者发起指向被呼叫者的联系时,联系解析请求被发送到适合于根据被呼叫者的联系解析偏好来执行联系解析的呼叫路由机构212,例如定位服务器。被呼叫者的偏好可以定义于用户配置表216中,其可以与被叫用户的用户偏好116相同或者不同。因此,呼叫路由机构212可以与用户注册服务器112相同。可选地,在用户注册服务器112上对用户偏好116的更新可以被转发给呼叫路由机构212,在此它们被合并到用户配置表216中。根据本发明至少某些实施例,用户配置表216包括被映射到每个用户的联系解析偏好的用户AOR列表。这些偏好可以包括指示符,该指示符标识将要应用于去往该用户的进入联系的特定CRA。
因此,除了包括用户配置表216之外,呼叫路由机构212还可以包括动态表220,一个或者多个旧CRA 224,和一个或者多个扩展模块228(或者新CRA)。旧CRA 224包括在呼叫路由机构212升级之前(即在呼叫路由机构212上部署扩展模块228之前)存在于呼叫路由机构212中的任何类型的CRA。
扩展模块228可以包括可以由任何用户使用的新CRA,如果该用户更新用户配置表216以指向并调用该扩展模块的话。更详细地,当扩展模块228被部署时,可以向其分配唯一ID。如果用户期望利用与该扩展模块228关联的CRA,那么用户就更新用户配置表216中的他们的信息以包括该扩展模块的唯一ID。因此,当呼叫路由机构212接收到针对去往该用户的联系的联系解析请求时,呼叫路由机构212能够参考用户配置表216,确定用户想调用扩展模块228的CRA而不是旧CRA 224,并且然后利用扩展模块228来处理接收到的联系解析请求。
在处理期间,扩展模块228的CRA可能需要确定哪个SIP设备232适合于将联系路由给它。这个决定可以基于用户是否将特定SIP设备232注册到呼叫路由机构212。换句话说,一些联系路由决定可以基于SIP设备232是否开启并注册到呼叫路由机构212。与SIP设备232的活动相关的这个动态注册信息可以存储在动态表220中。因此,在处理过程期间,扩展模块228的CRA可以适用于参考动态表220来确定应当将联系路由到何处。
动态表220中的信息并不总是基于SIP设备232是否注册到呼叫路由机构212的,虽然它可以部分地基于这个考虑。相反,可以根据检测到的特定用户的存在活动性、一天中的时间、一周中的日期、呼叫处理负荷、和可由任何CRA(即旧CRA 224或者新CRA)考虑的其它动态参数来改变动态表220中的信息。根据本发明至少某些实施例,动态表220中的信息可以响应于SIP设备232的状态改变(例如SIP设备232当前是否在SIP会话中被调用,SIP设备当前使用的什么类型的通信媒介等)。这些变化可以由SIP设备232通过任何类型的已知信令或者SIP消息报告给呼叫路由机构212。作为一个实例,SIP设备232可以通过向呼叫路由机构212发送NOTIFY(通知)或者PUBLISH(公告)消息来向呼叫路由机构212更新所述SIP设备232的状态信息。
另外,动态表220可以响应于其他参数,例如另一个用户或者另一个用户设备的存在状态。因此,特定用户的CRA算法可以包含允许其他用户的设备被包含到设备组中的逻辑,该设备组作为特定用户的INVITE请求的目标参与到CRA算法中。换句话说,当尝试到达第一不同的设备时,CRA算法可以决定提醒第二用户设备。例如,第一用户可以定义他们的CRA算法以在特定日期的特定时间内(例如,为了联络到我,尝试在星期五的2点到3点之间提醒第二用户的工作电话)提醒第二用户设备。如果第一用户知道他们将在特定时间与第二用户会面,这就可以完成。而且,这种信息可以从存储在日程表应用等中的用户的电子日程表中自动检索出来。
现在参考图3,将根据本发明至少某些实施例说明更新用户联系解析偏好的示意性方法。该方法开始于将新的扩展模块228部署到网络设备上,网络设备例如是呼叫路由机构212(步骤304)。根据本发明至少某些实施例,扩展模块228是可热部署(hot deployable)的,这意味着扩展模块228的代码可以加入到网络设备中,同时网络设备仍然在运行并且同时该网络设备连接到其他网络设备。因此,不需要设备的停运时间(downtime)以将扩展模块228部署到网络设备上。这在非常大的网络中尤其有用,因为如果部署新的CRA需要网络停运时间,则整个网络运营会受到一个网络设备的停运时间的不利影响,或者需要长时间来更新所有网络设备,由此延长了网络停运时间量并增加了产率损失。本发明实施例避免了这样的负面影响。本领域技术人员可以理解,新CRA的部署通常是由网络管理者来执行的,但也可以由非管理用户来执行。
该方法继续以向一个或者多个用户通知新部署的扩展模块228(步骤308)。这个通知可以由于新扩展模块228被部署的事实而自动发生。可选地,通知可以由网络管理者在新扩展模块228被部署之后发起。而且,用户通知的范围(即被通知该更新的用户数量)可以根据网络安全方面的考虑、用户是否订阅了接收这样的通知等而变化。而且,通知可以以电子格式到达(例如通过电子邮件、SMS消息、即时消息(IM)等)或者以纸件格式到达。
一旦接收到已经部署了新扩展模块228的通知,用户然后可以更新他们的偏好116来包括进对新部署的扩展模块228的利用,尤其是对新扩展模块228的CRA的利用(步骤312)。这种更新可以通过直接响应于该通知而被发起,或者用户可以通过网页选项界面单独地与用户注册服务器112通信来更新他们的偏好116。
更新用户偏好116使得呼叫路由机构212中的用户配置表216也被更新(步骤316)。更详细地,当用户更新他们的联系解析偏好时,用户配置表216中针对该特定用户的条目也被更新以反映出新的偏好。甚至更详细地,用户配置表中的条目可以包括新加入的扩展模块228的标识符。如果用户直接响应于该通知,则该标识符可以自动地被输入表216,或者可能需要用户在更新他们的用户偏好116时手工输入该标识符。一旦用户配置表216已经更新,任何后续接收的去往该用户的联系将调用新加入的扩展模块228。
本领域技术人员可以理解,步骤312和316可以结合到一个步骤中,尤其是如果用户直接更新用户配置表216而不是通过中间用户注册服务器112的话。然而,在具有很多呼叫路由机构212的较大网络中,可能期望具有单个注册服务器112作为针对用户的单个更新点。在这样的配置中,单个注册服务器112可以作为关于用户的偏好的与用户的接口,然后注册服务器112可以向网络中其他呼叫路由机构212通知用户偏好的任何改变。
现在参考图4,将根据本发明至少某些实施例说明处理进入联系解析请求的示意性方法。该方法开始于呼叫路由机构212接收到联系解析请求(步骤404)。联系解析请求可以包括被呼叫者的标识符。这个信息可以包含在联系解析请求的一个或者多个头部中。尤其是联系解析请求与SIP INVITE消息关联时,消息和联系解析请求可以通过SIP头部中的AOR来包括被呼叫者的标识。然而可以理解的是,进入联系解析请求并不一定需要以SIP消息的形式。而是,进入联系解析请求可以对应于由模拟电话等发出的定期呼入呼叫,其通过用户的AOR来标识特定通信设备而不是特定用户。可选地,呼叫路由机构212可以根据用户的通信设备中的一个已经由该联系识别、以及标识信息已经包括在联系解析请求中的事实来确定呼入联系解析请求是针对特定用户的。
一旦识别了被呼叫者,则该方法继续,呼叫路由机构212参考用户配置表216来识别该用户的联系解析偏好(步骤408)。更详细地,呼叫路由机构212适用于识别表216中的用户的AOR,并且确定将要为该用户调用哪个CRA(步骤412)。CRA可以由与该CRA关联的唯一ID来标识。根据本发明至少某些实施例,标识出的CRA可以对应于通过扩展模块228新加入到呼叫路由机构212的CRA。
一旦得到CRA的标识符(或者更详细地扩展模块228的唯一ID),则呼叫路由机构212调用识别出的CRA,并将联系传送到该CRA(步骤416)。一旦CRA接收到该联系,则CRA参考动态表220(如果需要的话)来确定哪个(哪些)SIP设备232适合于将联系路由给它,以及如何向这个(这些)设备提醒该联系。SIP设备232的适合性可以基于被调用的CRA中定义的规则,以及SIP设备232是否注册到呼叫路由机构212。CRA的规则可以定义:最初提醒一个SIP设备232,并且如果用户没有在该SIP设备232上应答该联系,那么可以提醒另一个SIP设备232(串行分叉)。可选地,CRA的规则可以定义:应当同时提醒两个或者多个SIP设备232,并且首先响应该提醒的设备将获得该联系(并行分叉)。其他类型的CRA也可以包括在扩展模块228中,并且本发明的实施例并不局限于在此所述的CRA实例。
虽然上述流程图是关于特定事件顺序进行讨论的,然而应当理解,在对本发明的操作没有实质性影响的情况下,可以对这个顺序进行改变。另外,事件的准确顺序不一定如在示意性实施例中阐述的那样来进行。此处说明的示意性技术并不局限于详细说明的实施例,而是可以应用于其他示意性实施例,并且每个所述特征可单独地分别请求保护。
本发明的系统、方法和协议可以在除了所述通信设备之外或者替换所述通信设备的专用计算机,编程微处理器或者微控制器和(一个或多个)外围集成电路元件,ASIC或者其他集成电路、数字信号处理器、硬连线电子或者逻辑电路例如分立元件电路、可编程逻辑器件例如PLD、PLA、FPGA、PAL、通信设备例如服务器、个人计算机、任何类似装置等上来实现。通常,能够实现状态机(其进而能够实现这里所示的方法)的任何设备可以用于实现根据本发明的各种通信方法、协议和技术。
而且,公开的方法可以容易地用利用对象的软件或者面向对象的软件开发环境来实现,软件和开发环境提供了可用于不同的计算机或者工作站平台的可移植的源代码。可选地,公开的系统可以利用标准逻辑电路或者VLSI设计而部分地或者全部地由硬件实现。是软件还是硬件用于实现根据本发明的该系统依赖于使用的系统、特定功能、和特定软件或硬件系统或微处理器或微计算机系统的速度和/或效率需求。在此说明的分析系统、方法和协议可以利用任何已知的或者以后由本领域技术人员根据在此提供的功能描述以及通信和计算机技术的常用基本知识开发出的系统或者结构、设备和/或软件来容易地以硬件和/或软件实现。
而且,公开的方法可以容易地以软件来实现,该软件可以存储在存储媒介上、在具有控制器和存储器的协作的编程通用计算机、专用计算机、微处理器等上执行。在这些实例中,本发明的系统和方法可以实现为嵌入到个人计算机的程序例如小应用程序、JAVA或者CGI脚本,实现为驻存于服务器或者计算机工作站的源代码,实现为嵌入到专用通信系统或者系统组件的例程等等。系统还可以通过将系统和/或方法物理地结合到软件和/或硬件系统中来实现,例如通信设备或者系统的硬件和软件系统。
因此很清楚,根据本发明实施例已经提供了用于创建和利用可插入联系解析算法的系统、装置和方法。虽然结合一些实施例描述了本发明,很明显对本领域技术人员来说,很多变更、修改和变化是可以的或者显而易见的。因此,期望包含在本发明的精神和范围之内的所有这些变更、修改、等同体和变化。
Claims (10)
1.一种方法,包括:
在第一服务器处接收针对第一用户的联系解析请求;
识别所述第一用户的联系解析偏好;
确定所述第一用户的联系解析偏好利用了扩展模块作为联系解析的一部分;以及
由所述第一服务器调用该扩展模块,并针对该请求将用户偏好选项应用于该扩展模块。
2.一种服务器,包括:
表,所述表包括用户联系解析偏好;以及
扩展模块,其中,该服务器适合于接收与去往第一用户的联系有关的联系解析请求,并针对该第一用户的联系解析偏好来参考所述表,然后,根据所述第一用户的联系解析偏好来调用所述扩展模块以将所述第一用户的联系解析偏好应用于所述联系解析请求。
3.根据权利要求1或2的发明,其中所述第一用户的联系解析偏好被标识在存储于第一服务器上的用户配置表中。
4.根据权利要求3的发明,其中,所述联系解析表包括可以由用户通过用户选项界面来配置并重新配置的以用户为中心的数据。
5.根据权利要求3的发明,进一步包括:
将第一SIP设备注册到该第一服务器上,其中该第一SIP设备与该第一用户相关联;
更新动态表来指示该第一SIP设备已经注册到该第一服务器;
将第二SIP设备注册到该第一服务器上,其中该第二SIP设备也与该第一用户相关联;以及
更新所述动态表来指示该第二SIP设备已经注册到该第一服务器,其中,该扩展模块在处理该联系解析请求期间参考该动态表来确定是否在联系解析期间提醒所述第一SIP设备和第二SIP设备中的一个或多个。
6.根据权利要求3的发明,其中,该用户配置表包括:该第一用户的记录地址与该第一用户的联系解析偏好之间的映射。
7.根据权利要求1或2的发明,其中,调用该扩展模块包括:确定与该扩展模块关联的标识符,并且利用所确定的标识符来引用该扩展模块。
8.根据权利要求1或2的发明,其中,该扩展模块是可热部署的,以使得在该第一服务器在运行中并连接到通信网络时,该扩展模块被部署在该第一服务器上,其中该第一服务器在部署之前不具有该扩展模块,该第一用户被通知该扩展模块的部署。
9.根据权利要求1或2的发明,其中该扩展模块确定以下所述的一个或者多个:(i)是否使该第一用户的SIP设备响铃;(ii)何时使该第一用户的SIP设备响铃;(iii)如何使该第一用户的SIP设备响铃;(iv)是否使该第二用户的SIP设备响铃;(v)何时使该第二用户的SIP设备响铃;以及(vi)如何使该第二用户的SIP设备响铃。
10.一种利用处理器可执行指令进行了编码的计算机可读媒介,当所述指令被执行时可操作来执行权利要求1的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/488,277 | 2009-06-19 | ||
US12/488,277 US8032624B2 (en) | 2009-06-19 | 2009-06-19 | Pluggable contact resolution |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101931619A true CN101931619A (zh) | 2010-12-29 |
CN101931619B CN101931619B (zh) | 2015-01-28 |
Family
ID=42153782
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201010180857.8A Active CN101931619B (zh) | 2009-06-19 | 2010-03-31 | 可插入的联系解析 |
Country Status (5)
Country | Link |
---|---|
US (1) | US8032624B2 (zh) |
EP (1) | EP2264971B1 (zh) |
JP (1) | JP5676128B2 (zh) |
KR (1) | KR101352647B1 (zh) |
CN (1) | CN101931619B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103036956A (zh) * | 2012-11-30 | 2013-04-10 | 航天恒星科技有限公司 | 一种分布式组态化海量数据归档系统及实现方法 |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8825836B1 (en) * | 2010-01-18 | 2014-09-02 | Symantec Corporation | Systems and methods for managing notification messages generated by one or more applications |
US9450989B2 (en) | 2010-05-19 | 2016-09-20 | Avaya Inc. | SIP anchor points to populate common communication logs |
US8886789B2 (en) | 2010-05-19 | 2014-11-11 | Avaya Inc. | SIP monitoring and control anchor points |
US20120166652A1 (en) * | 2010-12-23 | 2012-06-28 | Bouthemy Jean-Luc R | Advanced simultaneous and sequential sip forking |
US9578602B1 (en) * | 2011-03-15 | 2017-02-21 | Google Inc. | Device aware social graphs |
US9876912B2 (en) * | 2012-05-14 | 2018-01-23 | Avaya Inc. | Parallel forking with AoR chaining |
JP6021487B2 (ja) * | 2012-07-18 | 2016-11-09 | キヤノン株式会社 | 情報処理システム、制御方法、サーバ、情報処理装置およびコンピュータプログラム |
US9372963B2 (en) | 2012-08-30 | 2016-06-21 | Verizon Patent And Licensing Inc. | User device selection |
JP5973087B2 (ja) * | 2013-11-19 | 2016-08-23 | 日立マクセル株式会社 | 投射型映像表示装置 |
CN112527353A (zh) * | 2015-05-27 | 2021-03-19 | 谷歌有限责任公司 | 用于增强对话系统的插件的在线市场 |
US10200339B2 (en) * | 2015-08-03 | 2019-02-05 | Verizon Patent And Licensing Inc. | Providing a service to a user device based on a capability of the user device when the user device shares an identifier |
US10320971B2 (en) * | 2015-12-15 | 2019-06-11 | Avaya Inc. | Call log management for multiple communication devices using the same address of record |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1769672A (zh) * | 2004-11-05 | 2006-05-10 | 乐金电子(天津)电器有限公司 | 密闭式压缩机 |
CN1913503A (zh) * | 2005-08-08 | 2007-02-14 | 华为技术有限公司 | 一种会话路由路径控制方法和系统 |
CN101171820A (zh) * | 2005-05-10 | 2008-04-30 | 诺基亚西门子网络公司 | 通信系统中的服务提供 |
US20090154452A1 (en) * | 2007-12-12 | 2009-06-18 | At&T Knowledge Ventures, Lp | Method and System to Provide Contact Services in a Communication Network |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US753915A (en) | 1903-11-03 | 1904-03-08 | George H Corbett | Wrench. |
DE69942735D1 (de) * | 1998-12-10 | 2010-10-21 | Lucent Technologies Inc | PABX-Verwaltung |
US20020178227A1 (en) * | 2001-05-25 | 2002-11-28 | International Business Machines Corporation | Routing instant messages using configurable, pluggable delivery managers |
US7535915B2 (en) * | 2001-12-31 | 2009-05-19 | Samsung Electronics Co., Ltd. | System and method for scalable and redundant SIP message routing in an IP multimedia subsystem |
KR100472952B1 (ko) * | 2002-10-30 | 2005-03-10 | 한국전자통신연구원 | 세션 초기화 프로토콜(sip)기반의 부하 분산장치 및방법 |
US20050044127A1 (en) * | 2003-08-18 | 2005-02-24 | Vivek Jaiswal | Dynamic load distribution within a session initiation protocol network |
US7383250B2 (en) * | 2004-01-30 | 2008-06-03 | Research In Motion Limited | Contact query data system and method |
US7721277B1 (en) * | 2004-06-08 | 2010-05-18 | Oracle America, Inc. | Hot deployment of shared modules in an application server |
GB0412888D0 (en) | 2004-06-10 | 2004-07-14 | Nortel Networks Ltd | Method of operating a contact center |
US7676577B2 (en) | 2004-12-21 | 2010-03-09 | Alcatel Lucent | Scalable presence distribution system and method |
US20070201459A1 (en) * | 2006-02-27 | 2007-08-30 | Cisco Technology, Inc. | System and method for providing status notification for conventional telephony devices in a session initiation protocol environment |
US8064342B2 (en) * | 2006-10-27 | 2011-11-22 | Verizon Patent And Licensing Inc. | Load balancing session initiation protocol (SIP) servers |
US20090013062A1 (en) * | 2007-07-06 | 2009-01-08 | Mitel Networks Corporation | Configuration of ip telephony and other systems |
CN101868940A (zh) | 2007-07-31 | 2010-10-20 | 泰克莱克公司 | 用于在会话发起协议(sip)实体间发布应用或更高层通信网络信令实体的操作状态信息的系统、方法和计算机程序产品 |
EP2026550A1 (en) | 2007-08-17 | 2009-02-18 | Voxbone SA | Incoming call routing system and method for a VoIP network |
US20100287131A1 (en) * | 2009-05-11 | 2010-11-11 | Hartford Fire Insurance Company | System and method for dynamic multi-platform handler assignment |
-
2009
- 2009-06-19 US US12/488,277 patent/US8032624B2/en active Active
-
2010
- 2010-03-29 JP JP2010074120A patent/JP5676128B2/ja active Active
- 2010-03-30 EP EP10158284.9A patent/EP2264971B1/en active Active
- 2010-03-31 KR KR1020100029447A patent/KR101352647B1/ko active IP Right Grant
- 2010-03-31 CN CN201010180857.8A patent/CN101931619B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1769672A (zh) * | 2004-11-05 | 2006-05-10 | 乐金电子(天津)电器有限公司 | 密闭式压缩机 |
CN101171820A (zh) * | 2005-05-10 | 2008-04-30 | 诺基亚西门子网络公司 | 通信系统中的服务提供 |
CN1913503A (zh) * | 2005-08-08 | 2007-02-14 | 华为技术有限公司 | 一种会话路由路径控制方法和系统 |
US20090154452A1 (en) * | 2007-12-12 | 2009-06-18 | At&T Knowledge Ventures, Lp | Method and System to Provide Contact Services in a Communication Network |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103036956A (zh) * | 2012-11-30 | 2013-04-10 | 航天恒星科技有限公司 | 一种分布式组态化海量数据归档系统及实现方法 |
CN103036956B (zh) * | 2012-11-30 | 2016-03-30 | 航天恒星科技有限公司 | 一种分布式组态化海量数据归档系统及实现方法 |
Also Published As
Publication number | Publication date |
---|---|
US20100325249A1 (en) | 2010-12-23 |
JP5676128B2 (ja) | 2015-02-25 |
US8032624B2 (en) | 2011-10-04 |
KR101352647B1 (ko) | 2014-02-12 |
JP2011004386A (ja) | 2011-01-06 |
EP2264971A1 (en) | 2010-12-22 |
KR20100136906A (ko) | 2010-12-29 |
EP2264971B1 (en) | 2018-05-09 |
CN101931619B (zh) | 2015-01-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101931619B (zh) | 可插入的联系解析 | |
US20180374534A1 (en) | System and method for provisioning a remote resource for an electronic device | |
EP2296350B1 (en) | Management of application server-related user data | |
CN1742475B (zh) | 在通信路径中的中间装置的应用服务过滤 | |
KR101159312B1 (ko) | 웹기반 이벤트 통지 방법 및 시스템 | |
US20080025307A1 (en) | System and method for pushing information from a source device to an available destination device | |
US20070047530A1 (en) | Application server (AS) database with class of service (COS) | |
WO2013112740A1 (en) | System and method for conducting real-time and historical analysis of complex customer care processes | |
CN101861723A (zh) | 活跃简档选择 | |
CN103843308A (zh) | 跨越多个计算设备分布的应用的执行 | |
GB2422218A (en) | A system for providing services | |
CN104391687A (zh) | 企业和社团的互联网app公共平台的实现方法及系统 | |
US8737960B2 (en) | Interface system of subscriber information management, billing, prepaid system for mobile network system, and prepaid method using the interface system | |
US20060161616A1 (en) | Provision of services over a common delivery platform such as a mobile telephony network | |
CN1867907A (zh) | 用于自动学习邮箱配置规约的系统和方法 | |
WO2010075884A1 (en) | Method in a database server | |
US8064961B2 (en) | Communication system and method therefor | |
CN101938510A (zh) | 共同主持sip小服务程序应用 | |
CN101616223A (zh) | 在软件应用程序中实施分布式语音功能的方法 | |
CN101554071A (zh) | 移动订户身份代码的自动置换 | |
EP1681832A1 (en) | Provision of services over a common delivery platform such as a mobile telephony network | |
CA2835193A1 (en) | Email address and telephone number unification systems and methods | |
US20090124198A1 (en) | System and method for blocking devices from a carrier network | |
EP2347558B1 (en) | Method and apparatus for controlling telecommunication services | |
CN101330435B (zh) | 初始过滤规则优先级冲突处理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |