US9282193B2 - Call routing - Google Patents
Call routing Download PDFInfo
- Publication number
- US9282193B2 US9282193B2 US14/252,071 US201414252071A US9282193B2 US 9282193 B2 US9282193 B2 US 9282193B2 US 201414252071 A US201414252071 A US 201414252071A US 9282193 B2 US9282193 B2 US 9282193B2
- Authority
- US
- United States
- Prior art keywords
- site
- service
- data
- services
- route capacity
- 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.)
- Expired - Fee Related, expires
Links
- 230000036541 health Effects 0.000 claims abstract description 36
- 238000000034 method Methods 0.000 claims description 46
- 230000010076 replication Effects 0.000 claims description 5
- 238000012545 processing Methods 0.000 claims description 2
- 230000008569 process Effects 0.000 description 22
- 230000032683 aging Effects 0.000 description 15
- 230000015654 memory Effects 0.000 description 7
- 230000004044 response Effects 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 3
- 230000000737 periodic effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 240000005020 Acaciella glauca Species 0.000 description 1
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 235000003499 redwood Nutrition 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M7/00—Arrangements for interconnection between switching centres
- H04M7/006—Networks other than PSTN/ISDN providing telephone service, e.g. Voice over Internet Protocol (VoIP), including next generation networks with a packet-switched transport layer
-
- 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/50—Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
- H04M3/51—Centralised call answering arrangements requiring operator intervention, e.g. call or contact centers for telemarketing
- H04M3/523—Centralised call answering arrangements requiring operator intervention, e.g. call or contact centers for telemarketing with call distribution or queueing
- H04M3/5232—Call distribution algorithms
- H04M3/5234—Uniform load distribution
-
- 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/487—Arrangements for providing information services, e.g. recorded voice services or time announcements
- H04M3/493—Interactive information services, e.g. directory enquiries ; Arrangements therefor, e.g. interactive voice response [IVR] systems or voice portals
-
- 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/56—Arrangements for connecting several subscribers to a common circuit, i.e. affording conference facilities
Definitions
- Calls originating from both a public switched telephone network (PSTN) and a packet network may be routed through a packet network. Further, such calls may be provided with various services, such as interactive voice response (IVR), voicemail, call conferencing, prepaid calling, etc.
- IVR interactive voice response
- a network may make decisions about which nodes to use for providing services, and for routing calls, merely on the availability and capability of network nodes. That is, upon routing a call, a network may simply determine what hard-wired circuit connections are available to satisfy needs for the call, and may route the call accordingly.
- present routing mechanisms do not take into account which nodes will best provide, e.g., most reliably and efficiently, services requested for a call.
- FIG. 1 illustrates an exemplary system for providing call services.
- FIG. 2A further illustrates the exemplary system of FIG. 1 , including a detailed depiction of an exemplary Internet Protocol Converged Call Center (IPCCC) that includes a database and a Service Selection Application Server.
- IPCCC Internet Protocol Converged Call Center
- FIG. 2B further illustrates the exemplary system of FIG. 1 , including a detailed depiction of an exemplary Internet Protocol Converged Call Center (IPCCC) that does not include a database and a Service Selection Application Server.
- IPCCC Internet Protocol Converged Call Center
- FIG. 3 illustrates certain exemplary data elements that may be stored and/or calculated in a database in an IPCCC.
- FIG. 4 illustrates an exemplary set of values for determining route capacity of a site-service.
- FIG. 5 illustrates an exemplary process for determining stored route capacity for a particular site-service.
- FIG. 6 illustrates an exemplary process for routing a call.
- FIG. 1 illustrates an exemplary system 100 for providing call services.
- an Internet Protocol Converged Call Center (IPCCC) 105 may handle calls originated either from a public switched telephone network (PSTN) or a packet network, e.g., an Internet Protocol (IP) network.
- PSTN public switched telephone network
- IP Internet Protocol
- the system 100 may include one or more IPCCCs 105 a , 105 b , 105 c , etc.
- each IPCCC 105 provides one or more call services, e.g., IVR, prepaid calling, conferencing, etc.
- An IPCCC 105 is sometimes referred to as a “node” or a “site.”
- the combination of an IPCCC 105 with a particular service, e.g., IVR, prepaid calling, conferencing, etc. provided at the IPCCC 105 is sometimes referred to as a “site-service.”
- directing the inbound call to the IPCCC 105 is sometimes referred to as “routing” the call. Accordingly, a “call” is “routed” to a “site-service”.
- the set of all site-services for a particular service is sometimes referred to as a “service group.”
- One IPCCC 105 generally performs routing operations, e.g., makes determinations concerning which IPCCC 105 in system 100 is to handle an inbound call. Thus, where system 100 includes multiple IPCCCs 105 , one IPCCC 105 , sometimes referred to as the “active” IPCCC 105 , is generally designated to perform routing operations.
- PSTN-originated calls are provided from a conventional circuit switch 110 to a gateway 115 , the gateway 115 being in communication with one or more IPCCCs 105 .
- the gateway 115 generally translates analog calls from a PSTN to a digital format suitable for transmission over a packet network, e.g., according to a protocol such as Internet Protocol.
- Packet-originated calls such as IP calls are received by a session border controller (SBC) 120 , and provided from the SBC 120 to an IPCCC 105 .
- the SBC 120 may perform the function, for example, of controlling traffic between an IPCCC 105 and a wide area network such as the Internet.
- IPCCCs 105 send data to and from each other, e.g., via a wide area network such as the Internet, although other kinds of networks could connect IPCCCs 105 .
- multiple IPCCC 105 sites in system 100 may include databases 210 (see FIGS. 2A and 2B ), and data may be replicated, e.g., using replication mechanisms provided in many relational database management systems (RDBMS), from one database 210 to one or more other databases 210 for purposes of redundancy.
- RDBMS relational database management systems
- FIG. 2A further illustrates the exemplary system 100 of FIG. 1 , including a detailed depiction of an exemplary Internet Protocol Converged Call Center (IPCCC) 105 that includes a database 210 and a Service Selection Application Server (SSAS) 220 .
- IPCCC 105 nodes such as illustrated in FIG. 2A , i.e., that include a database 210 and a SSAS 220 , are sometimes referred to as “super nodes.”
- IPCCC 105 nodes such as illustrated in FIG. 2B , i.e., that do not include a database 210 and a SSAS 220 , are sometimes referred to as “micro nodes.”
- SIP session initiation protocol
- SIP is a signaling protocol that is often used for establishing and terminating communications, e.g., call sessions in a packet network.
- SIP may be used for messages from gateway 115 and/or SBC 120 to SSAS 220 , and based on responses to such messages, to instruct gateway 115 and/or SBC 120 concerning how to route an inbound call.
- database 210 is used to determine how to route inbound calls, e.g., to select an IPCCC 105 to service an inbound call according to one or more services requested by the inbound call.
- Database 210 includes IP-based Inbound Traffic Allocation (IP-ITA) module 215 , as well as tables and files for storing data described herein below.
- IP-ITA 215 generally includes collection of stored procedures, e.g., written according to the PL/SQL language or some other computer programming language for executing procedures within a database, or for executing procedures using data stored in a database. Examples of such stored procedures are procedures used to determine values such as are described below with respect to FIGS. 3 and 4 .
- IP-ITA 215 generally accesses data stored in database 210 to provide information for routing inbound calls. For example, IP-ITA 215 receives data from each IPCCC 105 in system 100 generally via one or more traffic managers 235 discussed below, and also receives inputs from a network operator, e.g., from web client 250 , as described further below.
- Database 210 selectively communicates with SSAS 220 , which may include one or more computing devices within IPCCC 105 .
- SSAS 220 generally further includes, e.g., as sets of computer-executable instructions stored on computer readable media in the one or more computing devices, modules for variously communicating with gateway 115 and/or SBC 120 , a web client 250 , one or more media servers 240 , one or more application servers 245 , and/or database 210 .
- modules include a web server 225 , a Service Selection Engine (SSE) 230 , and a traffic manager 235 .
- SSE Service Selection Engine
- multiple IPCCCs 105 include a database 210 , although, as discussed below with respect to FIG. 2B , one or more IPCCCs 105 may not include a database 210 . Where more than one IPCCC 105 includes a database 210 , database replication is performed so that the data in respective databases 210 included in IPCCCs 105 is synchronized. Such synchronization is performed for redundancy purposes, i.e., if the database 210 in the active IPCCC 105 fails, then the database 210 in one of the other IPCCC 105 sites becomes active and provides routing operations as described herein.
- the web server 225 provides a graphical user interface (GUI) 255 via the web client 250 . Further, the web server 225 receives inputs prompted by the GUI 255 , and provide such inputs to web server 225 . For example, such inputs may be used to populate tables in database 210 with information used by IP-ITA 215 . Accordingly, an operator at web client 250 can provide information used to influence how inbound calls are routed among IPCCCs 105 . In general, GUI 255 is used to provide network operators with monitoring, control, and administrative capabilities. Examples of data that may be collected through the GUI 255 are provided and discussed below.
- GUI graphical user interface
- SSE 330 receives inbound SIP requests, e.g., SIP “invite” requests, and, based on a service or services requested by the call, and information retrieved from database 210 , including calculations made and stored by IP-ITA 215 , selects an appropriate site-service to handle an inbound call.
- data from database 210 needed for SSE 330 to make routing decisions is retrieved from database 210 and stored in a memory accessible to SSE 330 , so that the data is available without the overhead of a query to database 210 when SSE 330 is called upon to make a routing decision.
- the memory may be refreshed on a periodic basis, e.g., such as may be specified in a “refresh” table or the like in database 210 .
- Traffic manager 235 is a process that runs at every IPCCC 105 node in system 100 .
- the traffic manager 235 operates to collect statistics related to operation of the IPCCC 105 node. Such statistics and/or metrics calculated on the statistics may be stored in database 210 . Examples of such statistics and/or metrics are discussed in more detail below, and include, for example, information relating to busyness, usage, health, etc. of application servers 245 within the IPCCC 105 .
- Each IPCCC 105 includes one or more media servers 240 that provide various data used for calls routed through the IPCCC 105 .
- media servers 240 may be used to store and provide audio used during the IVR call. Such audio could include voice, music, etc. that is played in response to various inputs received during the IVR call.
- each IPCCC 105 includes one or more application servers 245 that may be used to provide various services for calls routed through the IPCCC 105 .
- application server 245 may provide services such as IVR functionality, prepaid call functionality, conference calling, dual tone multi-frequency (DTMF) dialing, and the like.
- DTMF dual tone multi-frequency
- Web client 250 may be any computing device that includes a web browser or other software for communicating with Web server 225 .
- Such browser or other software generally includes instructions stored on a computer readable medium included in web client 250 , including instructions for rendering GUI 255 , receiving inputs, and sending data to and receiving data from web server 225 .
- FIG. 2B further illustrates the exemplary system 100 of FIG. 1 , including a detailed depiction of an exemplary Internet Protocol Converged Call Center (IPCCC) 105 that does not include an SSAS 220 or a database 210 .
- IPCCC Internet Protocol Converged Call Center
- At least one IPCCC 105 in system 100 must include an SSAS 220 and a database 210 for performing operations described herein.
- every IPCCC 105 in system 100 , or at least more than one IPCCC 105 includes an SSAS 220 and a database 210 , thereby providing redundancy in the event of a failure in the active IPCCC 105 .
- some implementations include one or more IPCCCs 105 that do not include an SSAS 220 or a database 210 , thereby avoiding costs and overhead associated with SSAS 220 and database 210 .
- an IPCCC 105 includes a traffic manager 235 , which generally includes a set of executable instructions stored in a memory of a computing device included in the IPCCC 105 , for execution by a processor included in the computing device.
- the traffic manager 235 gathers statistics and calculates metrics related to calls handled by the IPCCC 105 , as described above and forwards them to the active IPCCC 105 .
- FIG. 3 illustrates certain data elements that may be stored and/or calculated in database 210 , and used by IP-ITA 215 . These data elements include a set of calculated data 302 , a subset of traffic manager reported values 305 , and a set of operator inputs 310 . Data elements illustrated in FIG. 3 are generally associated with what is a site-service. That is, at each IPCCC 105 site, various services are provided by application servers 245 . Accordingly, data elements may be obtained and/or calculated for each service, e.g., generally according to one or more application servers 245 , provided at each IPCCC 105 site, i.e., for each site-service combination in system 100 .
- IP-ITA 215 uses combinations of traffic manager reported values 305 , operator inputs 310 , and in some cases, calculated data 302 , to obtain calculated data values 302 . Thus, it may be said that the calculated data 302 is determined in a cascading fashion.
- allocation percentage 390 is generally a number on a scale of 0 to 100 indicating a degree to which a site-service presently is allocated to handling calls.
- allocation percentage 390 may further be an indicator of availability of a site-service to handle calls, and may be used in making routing determinations, as described in more detail below with respect to FIG. 4 .
- calculated data 302 is generally computed according to stored procedures or the like included within IP-ITA 215 .
- Such stored procedures or other program instructions generally make use of traffic manager reported values 305 , operator inputs 310 , and/or results of other stored procedures to provide various calculated data 302 .
- Traffic manager reported values 305 are periodically populated in database 215 for various application servers 245 associated with respective IPCCCs 105 , and generally for specific site-service combinations.
- a traffic manager 235 may be configured to provide data to database 215 whenever it has data to report concerning a site-service, an application server 245 , or an IPCCC 105 according to various schedules or triggers, e.g., on a periodic schedule for all site-services in an IPCCC 105 , when it has accumulated a certain amount of data to report either regarding a site-service or an entire IPCCC 105 , etc.
- Updates of traffic manager reported values 305 in database 215 may trigger stored procedures or the like included in IP-IPA 215 to generate or update one or more values of calculated data 302 .
- stored procedures determining calculated data 302 may be executed on a periodic basis, maybe manually triggered, etc.
- Operator inputs 310 are generally provided by a user of web client 250 , e.g., through GUI 255 . Accordingly, operator inputs 310 may generally be provided at any time, although of course it is possible to configure database 215 to accept operator inputs 310 only at selected times, or under selected conditions. Updates of operator inputs 310 in database 215 may trigger stored procedures or the like included in IP-ITA 215 to generate or update one or more values of calculated data 302 .
- application server busyness 315 provides an indication of busyness a particular application server 245 at a particular IPCCC 105 .
- application server busyness 315 may be a percentage value, i.e., on a scale of 0 to 100, indicating the percentage which the application server 245 is being used at a particular moment in time, i.e., the moment in time at which traffic manager 235 measured the busyness of the application server 245 .
- a traffic manager 235 in an IPCCC 105 may measure the busyness of application servers 245 in the IPCCC 105 by, for example, querying operating systems or other application software in the application server 245 to obtain a measure of the current number of calls being processed in the application server 245 versus the maximum number of calls that the application server 245 is capable of processing. Such measure may then be reported as application server busyness 315 .
- Traffic manager 235 generally queries and application server 245 at predetermined intervals, or according to a predetermined schedule, e.g., every 30seconds, to obtain values such as application server busyness 315 .
- an application server 245 may provide multiple services, and therefore application server busyness 315 reflects the busyness of the application server 245 for all services that the application server 245 is used to provide, not just for a particular site-service.
- Reported application server rating 320 is a value provided by traffic manager 235 according to a rating associated with a particular application server 245 .
- Reported application server rating 320 is generally a predetermined number stored in a file or in some other way on the application server 245 .
- reported application server rating 320 may be a number ranging from 0 to 99,999.
- Rating 320 is generally an empirically derived number based on the processor capability of an application server 245 , and possibly other factors.
- reported application server rating 320 generally pertains to application server 245 for all services provided by the application server 245 , not just for a particular site-service.
- Service usage factor 325 provides an indication of the degree to which a particular application server 245 in an IPCCC 105 is dedicated to a particular service, e.g., IVR, conference calling, prepaid calling, etc. Accordingly, service usage factor 325 may be a percentage value, i.e., a value on a scale of 0 to 100, indicating the percentage to which the application server 245 may be dedicated to the particular service. Service usage factor 325 can be significant because different services, e.g., DTMF, automated speech recognition, conferencing, etc. may put different demands on an application server 245 . For example, conferencing may place more demands on an application server 245 then simple DTMF dialing.
- Server health 330 provides an indication of the availability of processes running on an application server 245 that are needed for the application server 245 to provide a particular service. For example, if the particular service is conferencing, server health 330 would provide an indication of the availability of processes running on the application server 245 needed to provide call conferencing.
- Server health 330 is generally a percentage value, i.e., a value on a scale of 0 to 100. As with other values discussed above, server health 330 may be obtained by querying and operating system or other application software provided on application server 245 .
- health aging 335 is a factor that is used to determine effective health 385 .
- Health aging 335 may be a period of time, e.g., in seconds, since a report of server health 330 has been received for a particular site-service. In the event that a traffic manager 235 at an IPCCC 105 stops sending data, it is possible to make a determination that the IPCCC 105 is not functioning in its entirety.
- effective health 385 may be adjusted according to a predetermined percentage based on health aging 335 .
- Busyness running average interval 345 is a period of time, generally a number of seconds, specified by an operator of web client 250 .
- the interval 345 is the period of time over which an average busyness of an application server 245 is to be calculated.
- Busyness threshold 350 is a number between zero and 100 . As explained below, busyness threshold 350 provides a threshold of busyness at or above which busyness coefficient 375 is used to reduce the allocation percentage 390 attributed to an application server 245 .
- Service Is Monitored Flag 355 controls whether allocation percentage 390 should be recalculated for a particular service provided by an application server 245 . That is, traffic manager 235 does not provide data relating to all services that may be provided by an application server 245 . For example, certain services are controlled only manually. Accordingly, if traffic manager 235 is not monitoring a service for an application server 245 , then allocation percentage 390 should not be calculated.
- Busyness aging 360 is generally a Boolean value determined according to a determination of whether one or more data relating to application server busyness 315 have been reported within a period of time, e.g., busyness running average interval 345 or some other period of time, e.g., what is sometimes referred to as a “data aging check interval,” such as may be provided by an operator of GUI 255 .
- busyness aging 360 may be 0, false, etc. if no data for application server busyness 315 have been reported within busyness running average interval 345 and/or a data aging check interval, or if a predetermined number of data, e.g., less than one reports, less than two reports, etc. have been received within busyness running average interval 345 or other period of time such as a data aging check interval. Otherwise, busyness aging 360 may be 1, true, etc.
- application server average busyness 365 represents the sum of application server busyness 315 values recorded during a given busyness running average interval 345 , divided by the count of application server busyness 315 values recorded during that busyness running average interval 345 . Accordingly, application server average busyness 365 is generally a value ranging from 0 to 100. However, if busyness aging 340 is 0, false, etc., then application server average busyness 365 could be set to an arbitrary value, e.g., ⁇ 1, 101, etc. to indicate that the particular site-service application server average busyness 365 has not been reliably reported and/or that the particular site-service should not be considered for call routing.
- Adjusted application server rating 370 is based on application server rating 320 , adjusted according to service usage factor 325 . When determining whether to route a call requesting a particular service, it is desirable to evaluate each application server 245 providing the service against other application servers 245 providing the service. Therefore, in an exemplary implementation, adjusted application server rating 370 is the product of application server rating 320 , multiplied by service usage factor 325 .
- Application server rating percentage 380 is based on adjusted application server rating 370 .
- Application server rating percentage 380 is a number resulting from normalizing application server rating 370 to a scale ranging from 0 to 100.
- Effective health 385 is generally a value ranging from 0 to 100, determined according to a value for health 330 , reduced if necessary according to health aging 335 .
- a table or the like may be included in database 210 to govern use of health aging 335 . Values for such table may be provided by inputs by an operator through, e.g., GUI 255 , or may be simply predetermined and stored in database 210 . For example, if health aging 335 indicates that no data has been received within a first certain period of time, e.g., 60 seconds, such table could indicate to reduce health 330 by a certain percentage, e.g., 10%, to obtain effective health 385 .
- the table could indicate to reduce health 330 by a second certain percentage, e.g. 20%, to obtain effective health 385 .
- a second certain percentage e.g. 20%
- health aging 335 indicated that no data had been received within a further certain period of time, e.g., 360 seconds
- such table could indicate that effective health 385 should be set to 0, regardless of a value for health 330 .
- such table indicating an influence of health aging 335 on health 330 in determining effective health 385 could include different or additional entries; the foregoing are provided merely for purposes of illustration.
- Allocation percentage 390 is determined by multiplying busyness coefficient 375 , application server rating percentage 380 , and effective health 385 all together, and is generally represented by a number between 0 and 100. An allocation percentage 390 for a service provided by an application server 245 may then be used to determine the site-service route capacity, as described further with respect to FIG. 4 .
- FIG. 4 illustrates a set of values 400 for determining route capacity of a site-service.
- certain of the values 400 are stored in and retrieved from database 210 by IP-ITA 215 , whereas other values 400 are calculated by IP-ITA 215 , generally using values 400 that were stored in database 210 .
- IP-ITA 215 may compare the determination of route capacity for a particular site-service to determinations of route capacities for other site-services, thereby allowing IP-ITA 215 to identify a site-service for handling an inbound call to SSE 230 , e.g., a call through gateway 115 or SBC 120 . For example, in one implementation, calls are routed to the site-service having the most capacity.
- the set of values 400 includes a first subset of values 401 and a second subset of values 402 .
- Values included in the first subset 401 include default route capacity 410 , route capacity override 415 , site-accept-new-calls 420 , service-accept-new-calls 425 , and new route capacity 430 .
- the second subset 402 also includes site-accept-new-calls 420 and service-accept-new-calls 425 , and further includes allocation percentage 390 , allocation percentage maximum 455 , allocation percentage override 460 , and new allocation percentage 465 .
- the set of values 400 further includes service allocation threshold 435 , select-base-data-set 440 , route capacity snapshot 445 , and stored route capacity 470 .
- Default route capacity 410 and allocation percentage 390 are sometimes referred to as “base data sets.” That is, default route capacity 410 and allocation percentage 390 provide initial data to be used in calculating route capacity snapshot 445 . Generally only one base data set is selected for calculation of route capacity snapshot 445 .
- Default route capacity 410 is sometimes referred to as a static data set, because the default route capacity 410 of a site-service is a predetermined percentage of capacity associated with the site-service. Limitation, default route capacity 410 is a number ranging from 0 to 100, indicating a capacity of a route, i.e., a site-service, relative to other routes. Because default route capacity 410 is a static number, it may be empirically derived, i.e., based on past experience with a site-service, but is not based on real-time or near real-time data being gathered by a traffic manager 235 .
- Allocation percentage 390 is sometimes referred to as a dynamic data set, because it is calculated on an ongoing basis, e.g., in real-time or near real-time, according to data collected by one or more traffic managers 235 , as described above with respect to FIG. 3 .
- New route capacity 430 is calculated based on values for route capacity override 415 , site-accept-new-calls 420 , service-accept-new-calls 425 , and default route capacity 410 .
- Route capacity override 415 may provide a value for overriding default route capacity 410 when determining a value for new route capacity 430 .
- Route capacity override 415 is generally set by an operator through GUI 255 .
- possible values for route capacity override 415 include ⁇ 1 and values ranging from 0 to 100. A value of ⁇ 1 indicates that default route capacity 410 is not to be overwritten. A value between 0 and 100 indicates that default route capacity 410 is to be overwritten with that value, i.e., the value between 0 and 100 of route capacity override 415 , to establish new route capacity 430 .
- Site-accept-new-calls 420 and service-accept-new-calls 425 are generally Boolean flags indicating when a particular IPCCC 105 , and a particular service, e.g. provided by an application server 245 , within an IPCCC 105 , are respectively accepting new calls e.g., from gateway 115 and/or SBC 120 . If, for a particular site-service, either site-accept-new-calls 420 or service-accept-new-calls 425 is set to zero, false, etc., the new route capacity 430 should be set to zero. That is, if a site-service is not accepting new calls, then IP-ITA 215 should determine that that site-service has no route capacity.
- New allocation percentage 465 is generally determined based on values for allocation percentage 390 , allocation percentage maximum 455 , allocation percentage override 460 , as well as site-accept-new-calls 420 , and a service-accept-new-calls 425 . With respect to site-accept-new-calls 420 and service-accept-new-calls 425 , as explained above with respect to the determination of new route capacity 430 , if a site-service is not accepting new calls, then, like new route capacity 430 , new allocation percentage 465 should be set to zero to indicate that the site-service has no capacity to handle inbound calls.
- Allocation percentage maximum 455 is generally a value ranging from 0 to 100, providing a maximum value for new allocation percentage 465 . That is, if allocation percentage 390 is greater than allocation percentage maximum 455 , then new allocation percentage 465 may be set to, at most, the value of application percentage maximum 455 .
- Allocation percentage override 460 is similar to route capacity override 415 . Allocation percentage override 460 is generally set by an operator through GUI 255 . Further, allocation percentage override 460 may override, i.e., be used in place of, a value for allocation percentage 390 in the determination of new allocation percentage 465 . For example, in one implementation, possible values for allocation percentage override 460 include ⁇ 1 and values ranging from 0 to 100. If allocation percentage override 460 is ⁇ 1, then allocation percentage 390 is used in determining new allocation percentage 465 , subject to site-accept-new-calls 420 , service-accept-new-calls 425 , and allocation percentage maximum 455 , as described above.
- allocation percentage override 460 is a value ranging from 0 to 100, then allocation percentage override 460 is used in the determination of new allocation percentage 465 , generally subject to site-accept-new-calls 420 , service-accept-new-calls 425 , and allocation percentage maximum 455 .
- Select-base-data-set 440 generally has two possible values. A first value may indicate that new route capacity 430 is to be used by IP-ITA 215 in determining route capacity snapshot 445 . A second value for select-base-data-set 440 may indicate that new allocation percentage 465 is to be used by IP-ITA 215 in determining route capacity snapshot 445 . A value for select-base-data-set 440 may be determined according to input by an operator, e.g., via GUI 255 .
- Service allocation threshold 435 is generally a value ranging from 0 to the number of site-services in a service group.
- Service allocation threshold 435 represents a minimum number of site-services (within a service group) that must have a new route capacity 430 or new allocation percentage 465 (depending on the value of select-base-data-set 440 ) greater than zero in order for the operator, e.g., user of GUI 255 , to be able to request the setting of the route capacity snapshot 445 .
- IP-ITA 215 is generally configured to prevent route capacity snapshot 445 from being saved in database 210 and stored route capacity 470 cannot be updated using route capacity snapshot 445 .
- service allocation threshold 435 is set to a value of 5 , and there are ten site-services within the applicable service group, and only four of these site-services have a new route capacity 430 or new allocation percentage 465 (depending on the value of select-base-data-set 440 ) greater than zero, the operator would not be allowed to request that the route capacity snapshot 445 be saved.
- service allocation threshold 435 it might be possible to “zero-allocate” a call, i.e., to accept a route capacity snapshot 445 as stored route capacity 470 when it is not possible to actually provide the service based on the stored route capacity 470 , thereby routing calls to site-services that cannot actually service them. Further, service allocation threshold 435 must be set to zero before it is possible to remove a route, i.e., a service that is part of a site-service combination, service from system 100 .
- Stored route capacity 470 provides a capacity of a site-service, generally on a scale ranging from 0 to 100.
- Stored route capacity 470 could be updated according to a stored procedure in database 210 or other computer-executable instructions. Such instructions could periodically invoke a comparison of the new allocation percentage 465 for each site-service to the corresponding stored route capacity 470 , and, if these values were different, stored route capacity 470 could be adjusted to be made equal to new allocation percentage 465 , or the stored route capacity 470 could be incrementally adjusted, e.g., increased by five percent, ten, percent, etc., to be made closer in value to the current value for new allocation percentage 465 .
- FIG. 5 illustrates an exemplary process 500 for determining stored route capacity 470 for a particular site-service. Some or all of the steps of process 500 may be carried out according to computer-executable instructions included in the IP-ITA 215 .
- the process 500 begins in a step 505 , in which a base data set, e.g., a default route capacity 410 or an allocation percentage 390 is selected. For example, such selection may be made according to input received from an operator of GUI 255 .
- a base data set e.g., a default route capacity 410 or an allocation percentage 390.
- IP-ITA 215 checks site-accept-new-calls 420 and service-accept-new-calls 425 flags to determine if the site-service is available to handle inbound calls. If not, step 515 is executed next. However, if the site-service is available to accept new calls, then step 520 is executed next.
- IP-ITA 215 sets one and generally both of new route capacity 430 and new allocation percentage 465 for the site-service to 0. Following step 515 , process 500 ends.
- IP-ITA 215 determines whether route capacity override 415 , or allocation percentage override 460 , is in fact, as appropriate, i.e., depending on the base data set selected in step 505 . If overrides are in effect, then step 525 is executed next. Otherwise, step 530 is executed next.
- IP-ITA 215 sets new route capacity 430 or new allocation percentage 465 , to the value indicated by route capacity override 415 or allocation percentage override 460 , as appropriate. Further, IP-ITA 215 in some implementations may set both route capacity 430 and allocation percentage 465 in step 525 , regardless of which base data set was selected in step 505 . Step 530 is executed following step 525 .
- step 530 which is generally only executed if allocation percentage 390 is the selected base data set, IP-ITA 215 determines whether an allocation percentage maximum 455 has been established. If so, step 535 is executed next. Otherwise, step 540 is executed next.
- step 535 IP-ITA 215 sets new allocation percentage 465 to a value indicated by application percentage maximum 455 .
- step 540 is executed.
- IP-ITA 215 compares service allocation threshold 435 to the number of site-services with new route capacity 430 or new allocation percentage 465 , depending on the base data set selected in step 505 . If the number of site-services is less than the service group's service allocation threshold 435 , then route capacity snapshot 445 for the service group is not allowed, and process 500 ends. Otherwise, step 545 is executed next.
- step 545 an operator of GUI 255 may review route capacity snapshot 445 and can commit it to the database 210 as stored route capacity 470 . Accordingly, if input is received to commit route capacity snapshot 445 , IP-ITA 215 stores route capacity snapshot 445 as stored route capacity 470 . Otherwise, the process ends. Following step 545 , process 500 ends.
- FIG. 6 illustrates an exemplary process 600 for routing a call.
- Process 600 begins in a step 605 , in which an inbound call is received.
- gateway 115 or SBC 120 may foreword a call to SSE 230 , including a request that one or more services be provided for the call.
- SSE 230 queries database 210 , generally by communicating with a module included in IP-ITA 215 , to obtain a route, i.e., a site-service, to handle the call.
- a route i.e., a site-service
- IP-ITA 215 provides a response to SSE 230 to the query sent in step 610 .
- IP-ITA includes computer-executable instructions for identifying a route for a call in response to such a query, e.g., by identifying a route associated with a stored route capacity 470 .
- step 620 the call received in step 605 is routed according to the response received in step 615 . That is, SSAS 220 may provide a message or messages to gateway 115 or SBC 120 concerning how to route a call, whereupon gateway 115 or SBC 220 may route the call appropriately. Following step 620 , the process 600 ends.
- Computing devices such as those discussed herein generally each include instructions executable by one or more processors.
- processes disclosed herein may be implemented as sets of instructions stored in memories or other media of computers such as server 120 , etc., and executable by one or more processors included in such computers.
- Computer-executable instructions may be compiled or interpreted from computer programs created using a variety of programming languages and/or technologies known to those skilled in the art, including, without limitation, and either alone or in combination, JavaTM, C, C++, Visual Basic, Java Script, Perl, etc.
- a processor receives instructions, e.g., from a memory, a computer-readable medium, etc., and executes these instructions, thereby performing one or more processes, including one or more of the processes described herein.
- instructions and other data may be stored and transmitted using a variety of known computer-readable media.
- a computer-readable medium includes any medium that participates in providing data (e.g., instructions), which may be read by a computer. Such a medium may take many forms, including, but not limited to, non-volatile media, volatile media, etc.
- Non-volatile media include, for example, optical or magnetic disks and other persistent memory.
- Volatile media include dynamic random access memory (DRAM), which typically constitutes a main memory.
- DRAM dynamic random access memory
- Computer-readable media include, for example, tangible media such as a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, DVD, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASH-EEPROM, any other memory chip or cartridge, or any other medium from which a computer can read.
- tangible media such as a floppy disk, a flexible disk, hard disk, magnetic tape, any other magnetic medium, a CD-ROM, DVD, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, an EPROM, a FLASH-EEPROM, any other memory chip or cartridge, or any other medium from which a computer can read.
- Databases or data stores described herein, including database 210 may include various kinds of mechanisms for storing, accessing, and retrieving various kinds of data, including a hierarchical database, a set of files in a file system, an application database in a proprietary format, a relational database management system (RDBMS), etc.
- database 210 includes Oracle version 10 RDBMS software provided by Oracle Corporation of Redwood Shores, Calif.
- Each such database or data store, including databases 210 is generally included within a computing device employing a computer operating system such as one of those mentioned above, and are accessed via a network in any one or more of a variety of manners, as is known.
- a file system may be accessible from a computer operating system, and may include files stored in various formats.
- An RDBMS generally employs the known Structured Query Language (SQL) in addition to a language for creating, storing, editing, and executing stored procedures, such as the PL/SQL language mentioned above.
- SQL Structured Query Language
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Marketing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Telephonic Communication Services (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
BC=(100−(AB−BT)/100),
where “BC” represents
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/252,071 US9282193B2 (en) | 2008-12-12 | 2014-04-14 | Call routing |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/333,620 US8699690B2 (en) | 2008-12-12 | 2008-12-12 | Call routing |
US14/252,071 US9282193B2 (en) | 2008-12-12 | 2014-04-14 | Call routing |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/333,620 Continuation US8699690B2 (en) | 2008-12-12 | 2008-12-12 | Call routing |
Publications (2)
Publication Number | Publication Date |
---|---|
US20140307731A1 US20140307731A1 (en) | 2014-10-16 |
US9282193B2 true US9282193B2 (en) | 2016-03-08 |
Family
ID=42240548
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/333,620 Active 2032-09-21 US8699690B2 (en) | 2008-12-12 | 2008-12-12 | Call routing |
US14/252,071 Expired - Fee Related US9282193B2 (en) | 2008-12-12 | 2014-04-14 | Call routing |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/333,620 Active 2032-09-21 US8699690B2 (en) | 2008-12-12 | 2008-12-12 | Call routing |
Country Status (1)
Country | Link |
---|---|
US (2) | US8699690B2 (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120060186A1 (en) | 2009-02-27 | 2012-03-08 | JVC Kenwood Corporation | Information reception apparatus, information reception method, computer program for information reception, and information distribution apparatus |
US9432451B2 (en) * | 2009-12-15 | 2016-08-30 | Tekelec, Inc. | Methods, systems, and computer readable media for communicating media server capabilities and status information between media servers and a media resource broker |
US20140079207A1 (en) * | 2012-09-12 | 2014-03-20 | Genesys Telecommunications Laboratories, Inc. | System and method for providing dynamic elasticity of contact center resources |
US9912813B2 (en) | 2012-11-21 | 2018-03-06 | Genesys Telecommunications Laboratories, Inc. | Graphical user interface with contact center performance visualizer |
US9912812B2 (en) | 2012-11-21 | 2018-03-06 | Genesys Telecommunications Laboratories, Inc. | Graphical user interface for configuring contact center routing strategies |
US9628623B2 (en) | 2012-11-21 | 2017-04-18 | Genesys Telecommunications Laboratories, Inc. | Graphical user interface for monitoring and visualizing contact center routing strategies |
Citations (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6085243A (en) | 1996-12-13 | 2000-07-04 | 3Com Corporation | Distributed remote management (dRMON) for networks |
US6182157B1 (en) | 1996-09-19 | 2001-01-30 | Compaq Computer Corporation | Flexible SNMP trap mechanism |
US20010027491A1 (en) | 2000-03-27 | 2001-10-04 | Terretta Michael S. | Network communication system including metaswitch functionality |
US20020016911A1 (en) | 2000-08-07 | 2002-02-07 | Rajeev Chawla | Method and system for caching secure web content |
US20020165892A1 (en) | 2001-05-03 | 2002-11-07 | Doug Grumann | Method and apparatus to extract the health of a service from a host machine |
US6631409B1 (en) | 1998-12-23 | 2003-10-07 | Worldcom, Inc. | Method and apparatus for monitoring a communications system |
US6738811B1 (en) | 2000-03-31 | 2004-05-18 | Supermicro Computer, Inc. | Method and architecture for monitoring the health of servers across data networks |
US20040220830A1 (en) | 1999-10-12 | 2004-11-04 | Advancepcs Health, L.P. | Physician information system and software with automated data capture feature |
US20050160429A1 (en) | 2002-03-25 | 2005-07-21 | Heino Hameleers | Method and devices for dynamic management of a server application on a server platform |
US7003564B2 (en) | 2001-01-17 | 2006-02-21 | Hewlett-Packard Development Company, L.P. | Method and apparatus for customizably calculating and displaying health of a computer network |
US20060048017A1 (en) | 2004-08-30 | 2006-03-02 | International Business Machines Corporation | Techniques for health monitoring and control of application servers |
US20060209695A1 (en) | 2005-03-15 | 2006-09-21 | Archer Shafford R Jr | Load balancing in a distributed telecommunications platform |
US20060242300A1 (en) | 2005-04-25 | 2006-10-26 | Hitachi, Ltd. | Load balancing server and system |
US20070201677A1 (en) | 2006-01-11 | 2007-08-30 | Michael Bates | Enhanced directory assistance system with enhanced peripheral call queuing and handling |
US20070266148A1 (en) | 2006-05-11 | 2007-11-15 | Computer Associates Think, Inc. | Synthetic transactions based on system history and load |
US7313735B1 (en) | 2004-04-30 | 2007-12-25 | Sun Microsystems, Inc. | In-line server health checking |
US20080118052A1 (en) | 2006-11-17 | 2008-05-22 | Mounire El Houmaidi | Methods, systems, and computer program products for rule-based direction of customer service calls |
US20080159262A1 (en) | 2006-12-28 | 2008-07-03 | Verizon Business Network Services Inc. | Routing calls in a network |
US20080192915A1 (en) | 2006-04-13 | 2008-08-14 | Huawei Technologies Co., Ltd. | Method for Routing Network Call and Network Call Center |
US7447194B1 (en) | 2004-09-08 | 2008-11-04 | Sprint Communications Company L.P. | Application server update message processing |
US20100015958A1 (en) | 2006-12-27 | 2010-01-21 | Telecom Italia S.P.A. | Method and apparatuses for the provision of network services offered through a set of servers in an ims network |
US20100030905A1 (en) | 2006-12-19 | 2010-02-04 | Ioannis Fikouras | Technique for providing services in a service provisioning network |
US7689676B2 (en) | 2003-03-06 | 2010-03-30 | Microsoft Corporation | Model-based policy application |
US20100208634A1 (en) | 1994-10-11 | 2010-08-19 | Arbinet Corporation | System and Method For Managing Multimedia Communications Across Convergent Networks |
US7782907B2 (en) | 2006-09-12 | 2010-08-24 | Broadcom Corporation | DSL modems with analog voice band support |
US7804832B2 (en) | 2006-02-13 | 2010-09-28 | Cisco Technology, Inc. | Method and system for simplified network wide traffic and/or flow monitoring in a data network |
US7849368B2 (en) | 2002-02-22 | 2010-12-07 | Oracle International Corporation | Method for monitoring server sub-system health |
US7899892B2 (en) | 2006-03-28 | 2011-03-01 | Microsoft Corporation | Management of extensibility servers and applications |
US7933743B2 (en) | 2007-11-28 | 2011-04-26 | Cisco Technology, Inc. | Determining overall network health and stability |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8161323B2 (en) * | 2007-10-19 | 2012-04-17 | Oracle International Corporation | Health monitor |
-
2008
- 2008-12-12 US US12/333,620 patent/US8699690B2/en active Active
-
2014
- 2014-04-14 US US14/252,071 patent/US9282193B2/en not_active Expired - Fee Related
Patent Citations (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100208634A1 (en) | 1994-10-11 | 2010-08-19 | Arbinet Corporation | System and Method For Managing Multimedia Communications Across Convergent Networks |
US6182157B1 (en) | 1996-09-19 | 2001-01-30 | Compaq Computer Corporation | Flexible SNMP trap mechanism |
US6085243A (en) | 1996-12-13 | 2000-07-04 | 3Com Corporation | Distributed remote management (dRMON) for networks |
US6631409B1 (en) | 1998-12-23 | 2003-10-07 | Worldcom, Inc. | Method and apparatus for monitoring a communications system |
US20040220830A1 (en) | 1999-10-12 | 2004-11-04 | Advancepcs Health, L.P. | Physician information system and software with automated data capture feature |
US20010027491A1 (en) | 2000-03-27 | 2001-10-04 | Terretta Michael S. | Network communication system including metaswitch functionality |
US6738811B1 (en) | 2000-03-31 | 2004-05-18 | Supermicro Computer, Inc. | Method and architecture for monitoring the health of servers across data networks |
US20020016911A1 (en) | 2000-08-07 | 2002-02-07 | Rajeev Chawla | Method and system for caching secure web content |
US7003564B2 (en) | 2001-01-17 | 2006-02-21 | Hewlett-Packard Development Company, L.P. | Method and apparatus for customizably calculating and displaying health of a computer network |
US20020165892A1 (en) | 2001-05-03 | 2002-11-07 | Doug Grumann | Method and apparatus to extract the health of a service from a host machine |
US7849368B2 (en) | 2002-02-22 | 2010-12-07 | Oracle International Corporation | Method for monitoring server sub-system health |
US7849367B2 (en) | 2002-02-22 | 2010-12-07 | Oracle International Corporation | Method for performing a corrective action upon a sub-system |
US20050160429A1 (en) | 2002-03-25 | 2005-07-21 | Heino Hameleers | Method and devices for dynamic management of a server application on a server platform |
US7689676B2 (en) | 2003-03-06 | 2010-03-30 | Microsoft Corporation | Model-based policy application |
US7313735B1 (en) | 2004-04-30 | 2007-12-25 | Sun Microsystems, Inc. | In-line server health checking |
US20060048017A1 (en) | 2004-08-30 | 2006-03-02 | International Business Machines Corporation | Techniques for health monitoring and control of application servers |
US7447194B1 (en) | 2004-09-08 | 2008-11-04 | Sprint Communications Company L.P. | Application server update message processing |
US20060209695A1 (en) | 2005-03-15 | 2006-09-21 | Archer Shafford R Jr | Load balancing in a distributed telecommunications platform |
US20060242300A1 (en) | 2005-04-25 | 2006-10-26 | Hitachi, Ltd. | Load balancing server and system |
US20070201677A1 (en) | 2006-01-11 | 2007-08-30 | Michael Bates | Enhanced directory assistance system with enhanced peripheral call queuing and handling |
US7804832B2 (en) | 2006-02-13 | 2010-09-28 | Cisco Technology, Inc. | Method and system for simplified network wide traffic and/or flow monitoring in a data network |
US7899892B2 (en) | 2006-03-28 | 2011-03-01 | Microsoft Corporation | Management of extensibility servers and applications |
US20080192915A1 (en) | 2006-04-13 | 2008-08-14 | Huawei Technologies Co., Ltd. | Method for Routing Network Call and Network Call Center |
US8102993B2 (en) | 2006-04-13 | 2012-01-24 | Huawei Technologies Co., Ltd. | Method for routing network call and network call center |
US20120016983A1 (en) | 2006-05-11 | 2012-01-19 | Computer Associated Think, Inc. | Synthetic Transactions To Test Blindness In A Network System |
US20070266148A1 (en) | 2006-05-11 | 2007-11-15 | Computer Associates Think, Inc. | Synthetic transactions based on system history and load |
US7782907B2 (en) | 2006-09-12 | 2010-08-24 | Broadcom Corporation | DSL modems with analog voice band support |
US20080118052A1 (en) | 2006-11-17 | 2008-05-22 | Mounire El Houmaidi | Methods, systems, and computer program products for rule-based direction of customer service calls |
US20100030905A1 (en) | 2006-12-19 | 2010-02-04 | Ioannis Fikouras | Technique for providing services in a service provisioning network |
US20100015958A1 (en) | 2006-12-27 | 2010-01-21 | Telecom Italia S.P.A. | Method and apparatuses for the provision of network services offered through a set of servers in an ims network |
US20080159262A1 (en) | 2006-12-28 | 2008-07-03 | Verizon Business Network Services Inc. | Routing calls in a network |
US7933743B2 (en) | 2007-11-28 | 2011-04-26 | Cisco Technology, Inc. | Determining overall network health and stability |
Also Published As
Publication number | Publication date |
---|---|
US20100150335A1 (en) | 2010-06-17 |
US8699690B2 (en) | 2014-04-15 |
US20140307731A1 (en) | 2014-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9282193B2 (en) | Call routing | |
US9635071B2 (en) | Load balancing in a central conferencing routing server | |
US9432504B2 (en) | Central call platform | |
US5787163A (en) | Intelligent load balancing of special service calls based on availability of terminations | |
US11831809B2 (en) | Limiting contact in a networked contact center environment | |
US9451089B2 (en) | Calling center system and calling processing method thereof | |
US20180176375A1 (en) | Scalable approach to agent-group state maintenance in a contact center | |
AU2010260416A1 (en) | Distributed record server architecture for recording call sessions over a VoIP network | |
CN107968895B (en) | Call center and method for processing speech channel request thereof, electronic equipment and storage medium | |
US20070201640A1 (en) | System, device and method for operation and maintenance of network devices | |
CA2860509A1 (en) | Central conferencing routing server | |
Cisco | Introducing ICM Software | |
Cisco | Introducing ICM Software | |
Cisco | Introducing ICM Software | |
US9036799B2 (en) | Method for communication and components in a communications network | |
CN110445943A (en) | A kind of state monitoring method and device that text is attended a banquet | |
CN114500752B (en) | Call center control method, device, system and storage medium | |
US8718264B2 (en) | Automated agent availability detection | |
WO2003039117A2 (en) | Telecommunications data capture system | |
AU2002337525A1 (en) | Telecommunications data capture system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: VERIZON PATENT AND LICENSING INC., NEW JERSEY Free format text: CHANGE OF NAME;ASSIGNOR:VERIZON BUSINESS NETWORK SERVICES INC.;REEL/FRAME:032671/0897 Effective date: 20090801 Owner name: VERIZON BUSINESS NETWORK SERVICES INC., VIRGINIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:DOWDY, PAUL R.;REEL/FRAME:032671/0858 Effective date: 20081211 |
|
ZAAA | Notice of allowance and fees due |
Free format text: ORIGINAL CODE: NOA |
|
ZAAB | Notice of allowance mailed |
Free format text: ORIGINAL CODE: MN/=. |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |
|
FEPP | Fee payment procedure |
Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
LAPS | Lapse for failure to pay maintenance fees |
Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20240308 |