Systems and methods for providing recording as a network service

Information

  • Patent Grant
  • 8483074
  • Patent Number
    8,483,074
  • Date Filed
    Wednesday, April 28, 2010
    14 years ago
  • Date Issued
    Tuesday, July 9, 2013
    11 years ago
Abstract
Systems and methods for providing recording as a network service are provided. A representative method incorporates: communicating instructions to a network, the instructions indicating that IP packets associated with a communication that is to be recorded are to be directed to long term storage such that the network: receives the instructions; determines whether Internet Protocol (IP) packets, which are being communicated by the network, are associated with a communication that is to be recorded; and directs information corresponding to the IP packets associated with the communication to a long term storage device.
Description
BACKGROUND

Recording of communications is important to many industries, particularly those in which compliance regulations have been implemented. In this regard, a traditional passive tap Internet Protocol (IP) recording technique includes recorders that are deployed along routes of communications. In this technique, each recorder operates similar to a “sniffer” by analyzing pass-by communication IP packets. Each recorder detects the packets corresponding to certain communication sessions, locally stores the sessions by gathering the corresponding packets, and then directs the recorded sessions to long term storage. Clearly, interfacing such recorders with the communication network in the proper locations is required to ensure that the desired communications are detected and ultimately recorded.


SUMMARY

Systems and methods for providing recording as a network service are provided. In this regard, an embodiment of such a system comprises a switching device operative to: communicate Internet Protocol (IP) packets of a network with which the switching device is associated; receive instructions indicating that IP packets associated with a communication that is to be recorded are to be directed to long term storage; determine which of the IP packets communicated by the switching device are associated with a communication that is to be recorded; and direct information corresponding to the IP packets associated with the communication to a long term storage device. The switching device is a network infrastructure component configured for directing IP packets.


An embodiment of such a method comprises: communicating instructions to a network, the instructions indicating that IP packets associated with a communication that is to be recorded are to be directed to long term storage such that the network: receives the instructions; determines whether Internet Protocol (IP) packets, which are being communicated by the network, are associated with a communication that is to be recorded; and directs information corresponding to the IP packets associated with the communication to a long term storage device.


A computer-readable media having computer programs stored thereon also are provided. An embodiment of such a computer-readable medium has computer program comprising computer-executable instructions for performing the computer-implemented steps of: communicating instructions to a network, the instructions indicating that IP packets associated with a communication that is to be recorded are to be directed to long term storage such that the network: receives the instructions; determines whether Internet Protocol (IP) packets, which are being communicated by the network, are associated with the communication; and directs the IP packets associated with the communication to a long term storage device.


Other systems, methods, features and/or advantages of this disclosure will be or may become apparent to one with skill in the art upon examination of the following drawings and detailed description. It is intended that all such additional systems, methods, features and/or advantages be included within this description and be within the scope of the present disclosure.





BRIEF DESCRIPTION

Many aspects of the disclosure can be better understood with reference to the following drawings. The components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Moreover, in the drawings, like reference numerals designate corresponding parts throughout the several views.



FIG. 1 is a schematic diagram illustrating an exemplary embodiment of a system for providing recording as a network service.



FIG. 2 is a flowchart illustrating functionality (or method steps) that can be performed by the embodiment of FIG. 1.



FIG. 3 is a flowchart illustrating functionality (or method steps) that can be performed by another embodiment of a system for providing recording as a network service.



FIG. 4 is a schematic diagram illustrating another exemplary embodiment of a system for providing recording as a network service.



FIG. 5 is a schematic diagram illustrating an embodiment of a computer-implemented device that is configured to perform the functionality associated with a recorder, such as the recorder used in the embodiment of FIG. 4.



FIG. 6 is a flowchart illustrating functionality (or method steps) that can be performed by the embodiment of FIG. 5.



FIG. 7 is a schematic diagram illustrating another exemplary embodiment of a system for providing recording as a network service.



FIG. 8 is a flowchart illustrating functionality (or method steps) that can be performed by the embodiment of FIG. 7.





DETAILED DESCRIPTION

As will be described here with reference to several exemplary embodiments, systems and methods for providing recording as a network service are provided. In this regard, some embodiments of such a system involve the use of switching devices, e.g., network switches, network routers and/or other components that form the infrastructure of many communication networks, such as the World Wide Web. Specifically, in these embodiments, the switching devices themselves are capable of performing various functionality that conventionally is provided by recorders, which typically tap into a network, e.g., at a switching device, in order to record communications.


Referring now in detail to the drawings, FIG. 1 is a schematic diagram illustrating an exemplary embodiment of a system for providing recording as a network service. As shown in FIG. 1, system 100 incorporates communications networks 102 and 104. Each of these networks can be any or a combination of network types (WAN, LAN, the Internet) for providing Internet Protocol (IP) communications.


Communicating with each of networks 102 and 104 is a network switching device 110 that can be used for directing IP packets, such as directing IP packets between the networks. For instance, the network switching device can be a network switch, which directs IP packets based on the ports of the switch that receive the packets, or a network router, which directs IP packets based on header information contained in the packets.


Long term storage 112 also communicates with the networks 102, 104 and thus with the switching device 110. By way of example, long term storage 112 can be a storage area network (SAN) or network attached storage (NAS). Long term storage 112 receives IP packets, such as IP packets associated with a communication that is to be recorded, and stores information corresponding to the IP packets so that the recorded communications can be replayed. By way of example, in some embodiments in which the communications involve voice communications, received IP packets could be converted to audio files for storage, or the IP packets themselves could be stored. Notably, various other types of communications could be involved, such as email, chat and/or corresponding screens of data that are displayed during such communications. Clearly, the switching device could forward raw IP packets or re-ordered IP packets (i.e., IP packets arranged for conversion to a file type such as an audio file).



FIG. 2 is a flowchart illustrating functionality (or method steps) that can be performed by the system 100 of FIG. 1. In particular, as depicted in block 210, a determination is made as to whether Internet Protocol (IP) packets, which are being communicated by a switching device of a network, are associated with a communication that is to be recorded. By way of example, the switching device can be switching device 110, which can be a network router or a network switch.


In determining whether IP packets are associated with a communication that is to be recorded, various techniques can be used. By way of example, embodiments of such a system can incorporate one or more of receiving, filtering, analyzing and storing of the IP packets. In this regard, it should be noted that an IP packet (which can be of various IP versions, e.g., IPv4, Ipv6) incorporates three basic elements, i.e., a header, a data area, and a trailer. The header designates the beginning of the packet, the data area includes the data payload, and the trailer designates the end of the packet.


In some embodiments, the determining step mentioned above can include analyzing of one or more of the three basic elements of the IP packets received by the system. By way of example, some embodiments can operate in a promiscuous mode, in which each packet received is read in its entirety. Thus, in some embodiments, the device(s) of the system associated with performing the determining step can capture and save the packets for analysis.


Additionally or alternatively, such a system can operate in monitor mode, in which the device(s) of the system associated with performing the determining step wirelessly receive the packets and then act on the packets in a manner similar to the promiscuous mode.


Additionally or alternatively, such a system can operate in non-promiscuous (or normal) mode, in which the device(s) of the system associated with performing the determining step check the address of the packet and merely forward the packet to a next device if the packet is not of interest. Thus, these embodiments perform a type of filtering.


Referring back to FIG. 2, regardless of the manner in which the IP packets for recording are determined, in block 212, the switching device is used to direct the IP packets associated with the communication to a long term storage device that is connected to the network. By way of example, long term storage 112 can be such a device.



FIG. 3 is a flowchart illustrating functionality (or method steps) that can be performed by another system for providing recording as a network service. In particular, as depicted in block 310, instructions are provided to the network such as via broadcast, multicast, socket connection or other communication transport. The instructions indicate that IP packets associated with desired communications are to be directed to long term storage. For instance, the instructions may indicate that the following exemplary communications are to be recorded: those originating from a particular source; those including a particular source as a party to the communication; those exceeding a particular duration; and those having associated metadata such as ANI or DNIS. Clearly, these types of communications can potentially be identified by information provided with the IP packets used in facilitating the communications. However, other events also can be used to initiate recording. For example, when communications are associated with a contact center, various computer applications may be used in concert with a voice communication, e.g., Voice over IP (VoIP) communication, in order to facilitate an interaction between a contact center agent and a customer. In such a scenario, various triggers provided by one or more of the applications could be used to initiate recording. For instance, when a teleset/softphone is used, a request for recording the voice communication associated with that application could be encoded in instructions that are sent to the network via broadcast, multicast, socket connection or other communication transport.


In block 312, the instructions are received at the switching device. In block 314, a determination is made as to whether Internet Protocol (IP) packets, which are being communicated by the switching device, are associated with a communication that is to be recorded. Notably, the particular communication and/or the criteria for determining whether the communication is to be recorded are contained in the instructions. In block 316, the switching device is used to direct the IP packets associated with the communication to long term storage.


In contrast to conventional methods of recording that use dedicated recorders for tapping communications, using a switching device potentially reduces the latency associated with buffering IP packets in such a recorder prior to the recorder directing the captured data to long term storage. That is, in some embodiments, a switching device may not perform a buffering function at all, instead directing IP packets associated with communications that are to be recorded directly to a network-connected long term storage device without first buffering the packets. In other embodiments, however, some form of buffering could be provided by the switching device depending upon its particular configuration.


Additionally, by streaming information for recording directly to network attached storage, optimal usage of hard disks may be achieved. This is because hard disks used for storage typically are sized for expected load even though such load is difficult to predict. By sharing the hard disks attached to the network, the potential of a single hard disk being over used is diminished.


It should be noted that, in contrast to the embodiment described above with respect to FIG. 3, some embodiments may be provided with instructions for controlling recording by methods other than network broadcast instructions. For instance, the instructions could be directly provided to a switching device and/or provided to the switching device prior to interconnecting the switching device with the network.



FIG. 4 is a schematic diagram illustrating another exemplary embodiment of a system for providing recording as a network service. As shown in FIG. 4, system 400 incorporates communications networks 402 and 404. Each of these networks can be any or a combination of network types (WAN, LAN, the Internet) for providing Internet Protocol (IP) communications.


Communicating with each of networks 402 and 404 is a network switching device 410 that can be used for directing IP packets. Long term storage 412 communicates with the networks 402, 404 and thus with the switching device 410. Long term storage 412 receives IP packets, such as IP packets associated with a communication that is to be recorded, and stores information corresponding to the IP packets so that the recorded communications can be replayed. In some embodiments, such information could include an identification of the source (e.g., source address), an identification of the destination (e.g., destination address), identification of an agent that is a party to the communication, machine name and/or called phone number, for example.


As shown in FIG. 4, recording controller 414 also is provided. In this embodiment, the recording controller coordinates activity with the switching device to ensure that the desired communications are recorded. In particular, the recording controller can provide instructions to the switching device so that the communications to be recorded can be identified. This can be accomplished by a user interacting with a user interface of the recording controller. Such a user interface enables a user to provide input regarding criteria used for determining whether communications are to be recorded. The recording controller then converts the input into instructions that can be provided to the switching device by broadcast, for example.


Additionally or alternatively, duplicate recording of information can potentially be avoided. In some embodiments, this can be accomplished by permitting the storage devices to communicate with each other regarding recording activity. This could be facilitated via a network protocol. In other embodiments, a recording controller could be used to track the recording activity of the recording devices and to direct the recording activity. By way of example, the recording controller could inform the network about the recording device(s) that should be used for recording.



FIG. 5 is a schematic diagram illustrating an embodiment of a computer-implemented device that is configured to perform the functionality associated with a recording controller. Generally, in terms of hardware architecture, computer 500 includes a processor 502, memory 504, a user interface 506, and one or more input and/or communication (I/O) device interface(s) 508 that are communicatively coupled via a local interface 510. The local interface can include, for example but not limited to, one or more buses or other wired or wireless connections. The local interface may have additional elements, which are omitted for simplicity, such as controllers, buffers (caches), drivers, repeaters, and receivers to enable communications. Further, the local interface may include address, control, and/or data connections to enable appropriate communications among the aforementioned components.


The processor 502 may be a hardware device for executing software, particularly software stored in memory 504. In this regard, the processor can be a custom made or commercially available processor, a central processing unit (CPU), an auxiliary processor among several processors associated with the recorder, a semiconductor based microprocessor (in the form of a microchip or chip set), a macroprocessor, or generally any device for executing software instructions.


The memory 504 can include one or combination of volatile memory elements (e.g., random access memory (RAM, such as DRAM, SRAM, SDRAM, etc.)) and nonvolatile memory elements (e.g., ROM, hard drive, tape, CDROM, etc.). Moreover, the memory may incorporate electronic, magnetic, optical, and/or other types of storage media. Note that the memory can have a distributed architecture, where various components are situated remote from one another, but can be accessed by the processor. Additionally, the memory can include an operating system 512, as well as instructions associated with a recording controller 520.


The software in memory may include one or more separate programs, each of which includes an ordered listing of executable instructions for implementing logical functions. The operating system can be configured to control the execution of other computer programs and provides scheduling, input-communication control, file and data management, memory management, and communication control and/or related services.


It should be noted that a system component embodied as software may also be construed as a source program, executable program (object code), script, or any other entity comprising a set of instructions to be performed. When constructed as a source program, the program is translated via a compiler, assembler, interpreter, or the like, which may or may not be included within the memory, so as to operate properly in connection with the operating system.


When the computer 500 is in operation, the processor is configured to execute software stored within the memory, to communicate data to and from the memory, and to generally control operations of the recorder pursuant to the software. Software in memory, in whole or in part, is read by the processor, perhaps buffered, and is then executed. In this regard, when executing instructions associated with the recording controller, the exemplary functionality described above with respect to recording controllers may be performed.



FIG. 6 is a flowchart illustrating functionality (or method steps) that can be performed by a recording controller, such as the embodiment of FIG. 5. In particular, the functionality may be construed as beginning at block 610, in which user input regarding criteria used for determining whether communications are to be recorded is received. In block 612, the user input is convert into instructions that are operative to enable identification of a communication that is to be recorded. In block 614, the instructions are provided to a component that will be responsible for identifying communications that are to be recorded, such as to a switching device or recorder. Notably, the instructions can be provided in various manners, such as via network broadcast or direct communication to a selected IP address.



FIG. 7 is a schematic diagram illustrating another exemplary embodiment of a system for providing recording as a network service. As shown in FIG. 7, system 700 incorporates communications networks 702 and 704. Each of these networks can be any or a combination of network types (WAN, LAN, the Internet) for providing Internet Protocol (IP) communications.


Communicating with each of networks 702 and 704 is a network switching device 710 that can be used for directing IP packets. Long term storage 712 communicates with the networks 702, 704 and thus with the switching device 710. Long term storage 712 receives IP packets, such as IP packets associated with a communication that is to be recorded, and stores information corresponding to the IP packets so that the recorded communications can be replayed. Notably, the IP packets received can be copies or some other interpretation of the original IP packets, thereby ensuring that the original packets continue to be routed as desired.


As shown in FIG. 7, a recorder 714 also is provided. In this embodiment, the recorder coordinates activity with the switching device to ensure that the desired communications are recorded. In particular, the recorder can provide one or more of the following functions: instructing the switching device about the communications that are to be recorded; identifying which of the IP packets of the switching device are to be directed for recording; and directing identified IP packets to long term storage.


In some embodiments, the recorder determines which of the IP packets are to be recorded based on the tapping of the switching device and then directs the switching device to direct those packets for long term storage. In other embodiments, responsive to determining which of the IP packets are to be recorded based on the tapping of the switching device, the recorder transmits those packets back to the switching device so that those packets can be directed by the switching device to long term storage.


In such an embodiment, the recorder is somewhat similar to a conventional recorder in that the recorder taps communications. However, unlike a conventional recorder, the recorder of FIG. 7 may not be implemented with an ability to store IP packets locally for the purpose of manipulating, e.g., re-ordering, the packets. That is, in contrast to conventional recorders that buffer IP packets prior to directing those packets to a long term storage device so that the packets can be re-ordered, some embodiments of the recorder selectively direct IP packets to long term storage by re-transmitting the packets to the switching device without re-ordering those packets into a segment of a communication. In other embodiments, however, the IP packets can be held in memory, e.g., volatile memory, while some form of ordering and/or interpretation of the information contained in the IP packets takes place.



FIG. 8 is a flowchart illustrating functionality (or method steps) that can be performed by a system, such as the embodiment of FIG. 7. In particular, the functionality may be construed as beginning at block 810, in which IP packets associated with a communication that is to be recorded are identified by a recorder that is tapped into a switching device. In block 812, the IP packets are directed to long term storage device with the switching device.


It should be noted that any of the executable instructions, such as those depicted functionally in the accompanying flowcharts, can be embodied in any computer-readable medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system that can fetch the instructions from the instruction execution system, apparatus, or device and execute the instructions. In the context of this document, a “computer-readable medium” can be any means that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The computer readable medium can be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device. More specific examples (a non-exhaustive list) of the computer-readable medium could include an electrical connection (electronic) having one or more wires, a portable computer diskette (magnetic), a random access memory (RAM) (electronic), a read-only memory (ROM) (electronic), an erasable programmable read-only memory (EPROM or Flash memory) (electronic), an optical fiber (optical), and a portable compact disc read-only memory (CDROM) (optical). In addition, the scope of embodiments of this disclosure can include embodying the functionality described in logic embodied in hardware or software-configured media.


It should also be noted that the flowcharts included herein show the architecture, functionality and/or operation of implementations that may be configured using software. In this regard, each block can be interpreted to represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that in some alternative implementations, the functions noted in the blocks may occur out of the order depicted. For example, two blocks shown in succession may in fact be executed substantially concurrently or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved.


It should be emphasized that the above-described embodiments are merely possible examples of implementations set forth for a clear understanding of the principles of this disclosure. Many variations and modifications may be made to the above-described embodiments without departing substantially from the spirit and principles of the disclosure. All such modifications and variations are intended to be included herein within the scope of this disclosure.

Claims
  • 1. A method for recording communications comprising: communicating instructions to a switching device of a network, the instructions indicating that IP packets associated with a communication that is to be recorded are to be directed to long term storage, and the communication that is to be recorded being determined by an external application that issues a trigger to initiate recording, comprising;receiving the instructions at the switching device as a broadcast from the network;determining, at the switching device, whether Internet Protocol (IP) packets being communicated by the network are associated with a communication that is to be recorded;directing information corresponding to the IP packets associated with the communication to a long term storage device; andreceiving the IP packets being communicated by the network at a network component to which the IP packets being communicated by the network are addressed,wherein the determining of whether the IP packets being communicated by the network are associated with the communication that is to be recorded is performed by the network component.
  • 2. The method of claim 1, wherein the switching device of the network directs the information corresponding to the IP packets associated with the communication to the long term storage device.
  • 3. The method of claim 2, wherein, in determining whether IP packets are associated with a communication that is to be recorded, the switching device receives the IP packets in a promiscuous mode.
  • 4. The method of claim 2, wherein, in determining whether IP packets are associated with a communication that is to be recorded, the switching device filters the IP packets.
  • 5. The method of claim 4, wherein the switching device filters the IP packets by operating in a non-promiscuous mode.
  • 6. The method of claim 2, wherein, in determining whether IP packets are associated with a communication that is to be recorded, the switching device analyzes at least some of the IP packets received, with a portion of each of those IP packets being analyzed.
  • 7. The method of claim 2, wherein, in determining whether IP packets are associated with a communication that is to be recorded, the switching device analyzes all of the IP packets received.
  • 8. The method of claim 1, further comprising replaying the communication to from the long term storage device.
  • 9. A non-transitory computer-readable medium having a computer program stored thereon, the computer program comprising computer-executable instructions for performing, at a switching device, the computer-implemented steps of: receiving broadcast instructions indicating that IP packets associated with a communication that is to be recorded are to be directed to long term storage, the communication that is to be recorded being determined by an external application that issues a trigger to initiate recording;determining whether Internet Protocol (IP) packets being communicated by the network are associated with the communication that is to be recorded;directing the IP packets associated with the communication to a long term storage device in response to a trigger from an external application; andreceiving the IP packets being communicated by the network at a network component to which the IP packets being communicated by the network are addressed,wherein the determining of whether the IP packets being communicated by the network are associated with the communication that is to be recorded is performed by the network component.
  • 10. The non-transitory computer-readable medium of claim 9, further comprising: receiving user input regarding criteria used for determining whether communications are to be recorded; andconverting the input into the instructions.
  • 11. A system for providing recording as a network service comprising: a switching device operative to: communicate Internet Protocol (IP) packets of a network with which the switching device is associated;receive broadcast instructions from the network indicating that IP packets associated with a communication that is to be recorded are to be directed to long term storage, the communication that is to be recorded being determined by an external application that issues a trigger to initiate recording;determine which of the IP packets of the network being communicated by the switching device are associated with a communication that is to be recorded based upon the instructions received; anddirect information corresponding to the IP packets associated with the communication to a long term storage device; anda recorder communicating with the switching device, the recorder being operative to facilitate identification of the IP packets associated with the communication,wherein the recorder is operative to transmit the IP packets associated with the communication for recording back to the switching device such that the switching device directs the IP packets associated with the communication transmitted from the recorder to long term storage.
  • 12. The system of claim 11, wherein the information corresponding to the IP packets comprises the IP packets.
  • 13. The system of claim 11, further comprising the long term storage device to which the IP packets are directed.
  • 14. The system of claim 11, further comprising means for facilitating identification of the IP packets associated with the communication.
  • 15. The system of claim 11, wherein the switching device is operative to receive the instructions from a recorder, which is in communication with the switching device.
  • 16. The system of claim 11, further comprising a user interface operative to: receive user input regarding criteria used for determining whether communications are to be recorded; and convert the input into the instructions.
CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No. 11/540,739, filed on Sep. 29, 2006, which claims priority to U.S. Provisional Application No. 60/817,630, filed on Jun. 29, 2006, which are incorporated by reference herein in their entireties.

US Referenced Citations (182)
Number Name Date Kind
3594919 De Bell et al. Jul 1971 A
3705271 De Bell et al. Dec 1972 A
4510351 Costello et al. Apr 1985 A
4684349 Ferguson et al. Aug 1987 A
4694483 Cheung Sep 1987 A
4763353 Canale et al. Aug 1988 A
4815120 Kosich Mar 1989 A
4924488 Kosich May 1990 A
4953159 Hayden et al. Aug 1990 A
5016272 Stubbs et al. May 1991 A
5101402 Chiu et al. Mar 1992 A
5117225 Wang May 1992 A
5210789 Jeffus et al. May 1993 A
5239460 LaRoche Aug 1993 A
5241625 Epard et al. Aug 1993 A
5267865 Lee et al. Dec 1993 A
5299260 Shaio Mar 1994 A
5311422 Loftin et al. May 1994 A
5315711 Barone et al. May 1994 A
5317628 Misholi et al. May 1994 A
5347306 Nitta Sep 1994 A
5388252 Dreste et al. Feb 1995 A
5396371 Henits et al. Mar 1995 A
5432715 Shigematsu et al. Jul 1995 A
5465286 Clare et al. Nov 1995 A
5475625 Glaschick Dec 1995 A
5485569 Goldman et al. Jan 1996 A
5491780 Fyles et al. Feb 1996 A
5499291 Kepley Mar 1996 A
5535256 Maloney et al. Jul 1996 A
5572652 Robusto et al. Nov 1996 A
5577112 Cambray et al. Nov 1996 A
5590171 Howe et al. Dec 1996 A
5597312 Bloom et al. Jan 1997 A
5619183 Ziegra et al. Apr 1997 A
5696906 Peters et al. Dec 1997 A
5717879 Moran et al. Feb 1998 A
5721842 Beasley et al. Feb 1998 A
5742670 Bennett Apr 1998 A
5748499 Trueblood May 1998 A
5778182 Cathey et al. Jul 1998 A
5784452 Carney Jul 1998 A
5790798 Beckett, II et al. Aug 1998 A
5796952 Davis et al. Aug 1998 A
5809247 Richardson et al. Sep 1998 A
5809250 Kisor Sep 1998 A
5825869 Brooks et al. Oct 1998 A
5835572 Richardson, Jr. et al. Nov 1998 A
5862330 Anupam et al. Jan 1999 A
5864772 Alvarado et al. Jan 1999 A
5884032 Bateman et al. Mar 1999 A
5907680 Nielsen May 1999 A
5918214 Perkowski Jun 1999 A
5923746 Baker et al. Jul 1999 A
5933811 Angles et al. Aug 1999 A
5944791 Scherpbier Aug 1999 A
5948061 Merriman et al. Sep 1999 A
5958016 Chang et al. Sep 1999 A
5964836 Rowe et al. Oct 1999 A
5978648 George et al. Nov 1999 A
5982857 Brady Nov 1999 A
5987466 Greer et al. Nov 1999 A
5990852 Szamrej Nov 1999 A
5991373 Pattison et al. Nov 1999 A
5991796 Anupam et al. Nov 1999 A
6005932 Bloom Dec 1999 A
6009429 Greer et al. Dec 1999 A
6014134 Bell et al. Jan 2000 A
6014647 Nizzari et al. Jan 2000 A
6018619 Allard et al. Jan 2000 A
6035332 Ingrassia et al. Mar 2000 A
6038544 Machin et al. Mar 2000 A
6039575 L'Allier et al. Mar 2000 A
6057841 Thurlow et al. May 2000 A
6058163 Pattison et al. May 2000 A
6061798 Coley et al. May 2000 A
6072860 Kek et al. Jun 2000 A
6076099 Chen et al. Jun 2000 A
6078894 Clawson et al. Jun 2000 A
6091712 Pope et al. Jul 2000 A
6108711 Beck et al. Aug 2000 A
6122665 Bar et al. Sep 2000 A
6122668 Teng et al. Sep 2000 A
6130668 Stein Oct 2000 A
6138139 Beck et al. Oct 2000 A
6144991 England Nov 2000 A
6146148 Stuppy Nov 2000 A
6151622 Fraenkel et al. Nov 2000 A
6154771 Rangan et al. Nov 2000 A
6157109 Schiferl et al. Dec 2000 A
6157808 Hollingsworth Dec 2000 A
6182094 Humpleman et al. Jan 2001 B1
6195679 Bauersfeld et al. Feb 2001 B1
6201948 Cook et al. Mar 2001 B1
6211451 Tohgi et al. Apr 2001 B1
6225993 Lindblad et al. May 2001 B1
6230197 Beck et al. May 2001 B1
6236977 Verba et al. May 2001 B1
6244758 Solymar et al. Jun 2001 B1
6282548 Burner et al. Aug 2001 B1
6286030 Wenig et al. Sep 2001 B1
6286046 Bryant Sep 2001 B1
6288753 DeNicola et al. Sep 2001 B1
6289340 Puram et al. Sep 2001 B1
6301462 Freeman et al. Oct 2001 B1
6301573 McIlwaine et al. Oct 2001 B1
6324282 McIlwaine et al. Nov 2001 B1
6347374 Drake et al. Feb 2002 B1
6351467 Dillon Feb 2002 B1
6353851 Anupam et al. Mar 2002 B1
6360250 Anupam et al. Mar 2002 B1
6370547 Eftink Apr 2002 B1
6385200 Erami et al. May 2002 B1
6404857 Blair et al. Jun 2002 B1
6411989 Anupam et al. Jun 2002 B1
6418471 Shelton et al. Jul 2002 B1
6459787 McIlwaine et al. Oct 2002 B2
6487195 Choung et al. Nov 2002 B1
6493758 McLain Dec 2002 B1
6502131 Vaid et al. Dec 2002 B1
6510220 Beckett, II et al. Jan 2003 B1
6535909 Rust Mar 2003 B1
6542602 Elazar Apr 2003 B1
6546405 Gupta et al. Apr 2003 B2
6560328 Bondarenko et al. May 2003 B1
6583806 Ludwig et al. Jun 2003 B2
6606657 Zilberstein et al. Aug 2003 B1
6665644 Kanevsky et al. Dec 2003 B1
6674447 Chiang et al. Jan 2004 B1
6683633 Holtzblatt et al. Jan 2004 B2
6697858 Ezerzer et al. Feb 2004 B1
6724887 Eilbacher et al. Apr 2004 B1
6738456 Wrona et al. May 2004 B2
6738803 Dodrill et al. May 2004 B1
6757361 Blair et al. Jun 2004 B2
6772396 Cronin et al. Aug 2004 B1
6775377 McIlwaine et al. Aug 2004 B2
6792575 Samaniego et al. Sep 2004 B1
6810414 Brittain Oct 2004 B1
6820083 Nagy et al. Nov 2004 B1
6823384 Wilson et al. Nov 2004 B1
6870916 Henrikson et al. Mar 2005 B2
6871229 Nisani et al. Mar 2005 B2
6901438 Davis et al. May 2005 B1
6959078 Eilbacher et al. Oct 2005 B1
6965886 Govrin et al. Nov 2005 B2
7120930 Maufer et al. Oct 2006 B2
20010000962 Rajan May 2001 A1
20010032335 Jones Oct 2001 A1
20010043697 Cox et al. Nov 2001 A1
20020038363 MacLean Mar 2002 A1
20020052948 Baudu et al. May 2002 A1
20020065911 Von Klopp et al. May 2002 A1
20020065912 Catchpole et al. May 2002 A1
20020071529 Nelkenbaum Jun 2002 A1
20020128925 Angeles Sep 2002 A1
20020143925 Pricer et al. Oct 2002 A1
20020165954 Eshghi et al. Nov 2002 A1
20030055883 Wiles, Jr. Mar 2003 A1
20030079020 Gourraud et al. Apr 2003 A1
20030144900 Whitmer Jul 2003 A1
20030154240 Nygren et al. Aug 2003 A1
20040019700 Ilan et al. Jan 2004 A1
20040100507 Hayner et al. May 2004 A1
20040111473 Lysenko et al. Jun 2004 A1
20040165717 McIlwaine et al. Aug 2004 A1
20040207724 Crouch et al. Oct 2004 A1
20050013560 Mazotti et al. Jan 2005 A1
20050018622 Halbraich et al. Jan 2005 A1
20050021809 Zhu et al. Jan 2005 A1
20050108518 Pandya et al. May 2005 A1
20050240656 Blair Oct 2005 A1
20060067303 Murakami et al. Mar 2006 A1
20060133582 McCulloch Jun 2006 A1
20060168234 Safstrom et al. Jul 2006 A1
20060203807 Kouretas et al. Sep 2006 A1
20060268847 Halbraich et al. Nov 2006 A1
20070019634 Fisher et al. Jan 2007 A1
20070058793 Li et al. Mar 2007 A1
20070263603 Schmitt Nov 2007 A1
20070287477 Tran Dec 2007 A1
20090016522 Torres et al. Jan 2009 A1
Foreign Referenced Citations (7)
Number Date Country
0453128 Oct 1991 EP
0773687 May 1997 EP
0989720 Mar 2000 EP
1635534 Mar 2006 EP
2369263 May 2002 GB
WO9843380 Nov 1998 WO
WO0016207 Mar 2000 WO
Non-Patent Literature Citations (127)
Entry
Balahishnan et al., Peering Peer-to-Peer Providers,2005.
Balahishnan et al., Metadata Version 2 for Peering Peer-to-Peer Providers, 2005.
Benyon and Murray, “Adaptive Systems: from intelligent tutoring to autonomous agents,” pp. 1-52, Web page, unknown date.
Blumenthal et al., “Reducing Development Costs with Intelligent Tutoring System Shells,” pp. 1-5, Web page, unverified print date of Apr. 9, 2002, unverified cover date of Jun. 10, 1996.
Brusilovsky et al., “Distributed intelligent tutoring on the Web,” Proceedings of the 8th World Conference of the AIED Society, Kobe, Japan, Aug. 18-22, pp. 1-9 Web page, unverified print date of Apr. 12, 2002, unverified cover date of Aug. 18-22, 1997.
Brusilovsky and Pesin, ISIS-Tutor: An Intelligent Learning Environment for CD/ISIS Users, @pp. 1-15 Web page, unverified print date of May 2, 2002.
Brusilovsky, “Adaptive Educational Systems on the World-Wide-Web: A Review of Available Technologies,” pp. 1-10, Web Page, unverified print date of Apr. 12, 2002.
Byrnes et al., “The Development of a Multiple-Choice and True-False Testing Environment on the Web,” pp. 1-8, Web page, unverified print date Apr. 12, 2002, unverified cover date of 1995.
Calvi and De Bra, “Improving the Usability of Hypertext Courseware through Adaptive Linking,” ACM, unknown page numbers (1997).
Coffey, “Are Performance Objectives Really Necessary?” Technical Skills and Training pp. 25-27 (Oct. 1995).
Cohen, “Knowledge Management's Killer App,” pp. 1-11, Web page, unverified print date of Apr. 12, 2002, unverified cover date of 2001.
Cole-Gomolski, “New ways to manage E-Classes,” Computerworld 32(48):4344 (Nov. 30, 1998).
Cross, “Sun Microsystems13 the SunTAN Story,” Internet Time Group 8 (2001).
Cybulski and Linden, “Teaching Systems Analysis and Design Using Multimedia and Patterns,” unknown date, unknown source.
De Bra et al., “Adaptive Hypermedia: From Systems to Framework,” ACM (2000).
De Bra, “Adaptive Educational Hypermedia on the Web,” Communications ACM 45(5):60-61 (May 2002).
Dennis and Gruner, “Computer Managed Instruction at Arthur Andersen & Company: A Status Report,” Educational Technical, pp. 7-16 (Mar. 1992).
Diessel et al., “Individualized Course Generation: A Marriage Between CAL and ICAL,” Computers Educational 22(1/2) 57-64 (1994).
Dyreson, “An Experiment in Class Management Using the World-Wide Web,” pp. 1-12, Web page, unverified print date of Apr. 12, 2002.
E Learning Community, “Excellence in Practice Award: Electronic Learning Technologies,” Personal Learning Network pp. 1-11, Web page, unverified print date of Apr. 12, 2002.
Eklund and Brusilovsky, “The Value of Adaptivity in Hypermedia Learning Environments: A Short Review of Empirical Evidence,” pp. 1-8, Web page, unverified print date of May 2, 2002.
e-Learning the future of learning, THINQ Limited, London, Version 1.0 (2000).
Eline, “A Trainer's Guide to Skill Building,” Technical Training pp. 34-41 (Sep./Oct. 1998).
Eline, “Case Study: Bridging the Gap in Canada's IT Skills,” Technical Skills and Training pp. 23-25 (Jul. 1997).
Kane, AOL-Tivo: You've Got Interactive TV, ZDNN, Aug. 17, 1999.
Kay, “E-Mail in Your Kitchen”, PC World Online, Mar. 28, 1996.
Kenny, “TV Meets Internet”, PC World Online, Mar. 28, 1996.
Linderholm, “Avatar Debuts Home Theater PC”, PC World Online, Dec. 1, 1999.
Mendoza, “Order Pizza While You Watch”, ABCNews.com.
Moody, “WebTV: What the Big Deal?”, ABCNews.com.
Murdorf et al., “Interactive Television—Is There Life After the Internet?”, Interactive TV News.
Needle, “PC, TV or Both?”, PC World Online.
Interview with Steve Perlman, CEO of Web-TV Networks, PC World Online.
Press, Two Cultures, The Internet and Interactive TV, Universite de Montreal.
Reuters, “Will TV Take Over Your PC?”, PC World Online.
Rohde, “Gates Touts Interactive TV”, InfoWorld, Oct. 14, 1999.
Ross, “Broadcasters Use TV Signals to Send Data”, PC World, Oct. 1996.
Schlisserman, “Is Web TV a Lethal Weapon?”, PC World Online.
Stewart, “Interactive Television at Home: Television Meets the Internet”, Aug. 1998.
Swedlow, “Computer TV Shows: Ready for Prime Time?”, PC World Online.
Witness Systems promotional brochure for eQuality entitled “Bringing eQuality to eBusiness.”.
Aspect Call Center Product Specification, “Release 2.0”, Aspect Telecommunications Corporation, May 23, 1998, 798.
Metheus X Window Record and Playback, XRP Features and Benefits, 2 pages, Sep. 1994 LPRs.
“Keeping an Eye on Your Agents,” Call Center Magazine, pp. 32-34, Feb. 1993 LPRs & 798.
Anderson: Interactive TVs New Approach, The Standard, Oct. 1, 1999.
Ante, “Everything You Ever Wanted to Know About Cryptography Legislation . . . (But Were too Sensible to Ask)”, PC World Online, Dec. 14, 1999.
Berst, “It's Baa-aack. How Interactive TV is Sneaking Into Your Living Room”, The AnchorDesk, May 10, 1999.
Berst, “Why Interactive TV Won't Turn You On (Yet)”, The AnchorDesk, Jul. 13, 1999.
Borland and Davis, “US West Plans Web Services on TV”, CNETNews.com, Nov. 22, 1999.
Brown, “Let PC Technology Be Your TV Guide”, PC Magazine, Jun. 7, 1999.
Brown, “Interactive TV: The Sequel”, NewMedia, Feb. 10, 1998.
Cline, “Deja vu—Will Interactive TV Make It This Time Around?”, DevHead, Jul. 9, 1999.
Crouch, “TV Channels on the Web”, PC World, Sep. 15, 1999.
D'Amico, “Interactive TV Gets $99 set-top box”, IDG.net, Oct. 6, 1999.
Davis, “Satellite Systems Gear Up for Interactive TV Fight”, CNETNews.com, Sep. 30, 1999.
Diederich, “Web TV Data Gathering Raises Privacy Concerns”, ComputerWorld, Oct. 13, 1998.
Digital Broadcasting, Interactive TV News.
EchoStar, “MediaX Mix Interactive Multimedia With Interactive Television”, PRNews Wire, Jan. 11, 1999.
Furger, “The Internet Meets the Couch Potato”, PCWorld, Oct. 1996.
“Hong Kong Comes First with Interactive TV”, SCI-TECH, Dec. 4, 1997.
“Interactive TV Overview TimeLine”, Interactive TV News.
“Interactive TV Wars Heat Up”, Industry Standard.
Official Action received, dated Sep. 29, 2011, in connection with U.S. Appl. No. 12/466,673.
Minton-Eversole, “IBT Training Truths Behind the Hype,” Technical Skills and Training pp. 15-19 (Jan. 1997).
Mizoguchi, “Intelligent Tutoring Systems: The Current State of the Art,” Trans. IEICE E73(3):297-307 (Mar. 1990).
Mostow and Aist, “The Sounds of Silence: Towards Automated Evaluation of Student Learning a Reading Tutor that Listens” American Association for Artificial Intelligence, Web page, unknown date Aug. 1997.
Mullier et al., “A Web base Intelligent Tutoring System,” pp. 1-6, Web page, unverified print date of May 2, 2002.
Nash, Database Marketing, 1993, pp. 158-165, 172-185, McGraw Hill, Inc., USA.
Nelson et al., “The Assessment of End-User Training Needs,” Communications ACM 38(7):27-39 (Jul. 1995).
O'Herron, “CenterForce Technologies' CenterForce Analyzer,” Web page, unverified print date of Mar. 20, 2002, unverified cover date of Jun. 1, 1999.
O'Roark, “Basic Skills Get a Boost,” Technical Training pp. 10-13 (Jul./Aug. 1998).
Pamphlet, “On Evaluating Educational Innovations,” authored by Alan Lesgold, unverified cover date of Mar. 5, 1998.
Papa et al., “A Differential Diagnostic Skills Assessment and Tutorial Tool,” Computer Education 18(1-3):45-50 (1992).
PCT International Search Report, International Application No. PCT/US03/02541, mailed May 12, 2003.
Phaup, “New Software Puts Computerized Tests on the Internet: Presence Corporation announces breakthrough Question Mark Web product,” Web page, unverified print date of Apr. 1, 2002.
Phaup, “QM Perception Links with Integrity Training's WBT Manager to Provide Enhanced Assessments for Web-Based Courses,” Web page, unverified print date of Apr. 1, 2002, unverified cover date of Mar. 25, 1999.
Phaup, “Question Mark Introduces Access Export Software,” Web page, unverified print date of Apr. 2, 2002, unverified cover date of Mar. 1, 1997.
Phaup, “Question Mark Offers Instant Online Feedback for Web Quizzes and Questionnaires: University of California assist with Beta Testing, Server scripts now available to high-volume users,” Web page, unverified print date of Apr. 1, 2002, unverified cover date of May 6, 1996.
Piskurich, “Now-You-See-'Em, Now-You-Don't Learning Centers,” Technical Training pp. 18-21 (Jan./Feb. 1999).
Read, “Sharpening Agents' Skills,” pp. 1-15, Web page, unverified print date of Mar. 20, 2002, unverified cover date of Oct. 1, 1999.
Reid, “On Target: Assessing Technical Skills,” Technical Skills and Training pp. 6-8 (May/Jun. 1995).
Stormes, “Case Study: Restructuring Technical Training Using ISD,” Technical Skills and Training pp. 23-26 (Feb./Mar. 1997).
Tennyson, “Artificial Intelligence Methods in Computer-Based Instructional Design,” Journal of Instruction Development 7(3):17-22 (1984).
The Editors, Call Center, “The Most Innovative Call Center Products We Saw in 1999,” Web page, unverified print date of Mar. 20, 2002, unverified cover date of Feb. 1, 2000.
Tinoco et al., “Online Evaluation in WWW-based Courseware,” ACM pp. 194-198 (1997).
Uiterwijk et al., “The virtual classroom,” InfoWorld 20(47):6467 (Nov. 23, 1998).
Unknown Author, “Long-distance learning,” InfoWorld 20(36):7276 (1998).
Untitled, 10th Mediterranean Electrotechnical Conference vol. 1 pp. 124-126 (2000).
Watson and Belland, “Use of Learner Data in Selecting Instructional Content for Continuing Education,” Journal of Instructional Development 8(4):29-33 (1985).
Weinschenk, “Performance Specifications as Change Agents,” Technical Training pp. 12-15 (Oct. 1997).
Needle, “Will The Net Kill Network TV?” PC World Online, Mar. 10, 1999.
“Customer Spotlight: Navistar International,” Web page, unverified print date of Apr. 1, 2002.
DKSystems Integrates QM Perception with OnTrack for Training, Web page, unverified print date of Apr. 1, 2002, unverified cover date of Jun. 15, 1999.
“OnTrack Online” Delivers New Web Functionality, Web page, unverified print date of Apr. 2, 2002, unverified cover date of Oct. 5, 1999.
“Price Waterhouse Coopers Case Study: The Business Challenge,” Web page, unverified cover date of 2000.
Abstract, networking: “An Online Webliography,” Technical Training pp. 4-5 (Nov./Dec. 1998).
Adams et al., “Our Turn-of-the-Century Trend Watch” Technical Training, pp. 46-47 (Nov./Dec. 1998).
Barron, “The Road to Performance: Three Vignettes,” Technical Skills and Training, pp. 12-14 (Jan. 1997).
Bauer, “Technology Tools: Just-in-Time Desktop Training is Quick, Easy, and Affordable,” Technical Training, pp. 8-11 (May/Jun. 1998).
Beck et al., “Applications of Al in Education,” AMC Crossroads vol. 1:1-13 (Fall 1996), Web page, unverified print date of Apr. 12, 2002.
Benson and Cheney, “Best Practices in Training Delivery,” Technical Training pp. 14-17 (Oct. 1996).
Bental and Cawsey, “Personalized and Adaptive Systems for Medical Consumer Applications,” Communications ACM 45(5):62-63 (May 2002).
Witness Systems promotional brochure for eQuality entitled “Building Customer Loyalty Through Business-Driven Recording of Multimedia Interactions in your Contact Center” (2000).
Eline, “Case Study: IBT's Place in the Sun,” Technical Training pp. 12-17 (Aug./Sep. 1997).
Fritz, “CB templates for productivity: Authoring system templates for trainers,” Emedia Professional 10(8):6876 (Aug. 1997).
Fritz, “ToolBook II: Asymetrix's updated authoring software tackles the Web,” Emedia Professional 10(2):102106 (Feb. 1997).
Gibson et al., “A Comparative Analysis of Web-Based Testing and Evaluation Systems,” pp. 1-8, Web page, unverified print date of Apr. 11, 2002.
Hallberg and DeFiore, “Curving Toward Performance: Following a Hierarchy of Steps Toward a Performance Orientation,” Technical Skills and Training pp. 9-11 (Jan. 1997).
Harsha, “Online Training “Sprints” Ahead,” Technical Training pp. 27-29 (Jan./Feb. 1999).
Heideman, “Training Technicians for a High-Tech Future: These six steps can help develop technician training for high-tech work,” pp. 11-14 (Feb./Mar. 1995).
Heideman, “Writing Performance Objectives Simple as A-B-C (and D),” Technical Skills and Training pp. 5-7 (May/ Jun. 1996).
Hollman, “Train Without Pain: The Benefits of Computer-Based Training Tools,” pp. 1-11, Web page, unverified print date of Mar. 20, 2002, unverified cover date of Jan. 1, 2000.
Koonce, “Where Technology and Training Meet,” Technical Training pp. 10-15 (Nov./Dec. 1998).
Kursh, “Going the distance with Web-based training,” Training and Development 52(3):5053 (Mar. 1998).
Larson, “Enhancing Performance Through Customized Online Learning Support,” Technical Skills and Training pp. 25-27 (May/Jun. 1997).
Linton et al., “Owl: A Recommender System for Organization-Wide Learning,” Educational Technical Society 3 (1):62-76 (2000).
Lucadamo and Cheney, “Best Practices in Technical Training,” Technical Training pp. 21-26 (Oct. 1997).
McNamara, “Monitoring Solutions: Quality Must Be Seen and Heard,” Inbound/Outbound pp. 66-67 (Dec. 1989).
Merrill, “The New Component Design Theory: Instruction design for courseware authoring,” Instructional Science 16:19-34 (1987).
Wilson, “U.S. West Revisits Interactive TV”, Interactive Week, Nov. 28, 1999.
Klein, “Command Decision Training Support Technology,” Web page, unverified print date of Apr. 12, 2002.
Notification of Transmittal of the International Search Report and the Written Opinion of the International Searching Authority, dated Jun. 6, 2008.
Notification Concerning Transmittal of International Preliminary Report on Patentability and Written Opinion of the International Searching Authority, dated Apr. 9, 2009.
Setting up switched port analyzer for monitoring and recording IP-ICD agents on the Cisco ICS 7750, Cisco Systems, Nov. 22, 2002. http://www.cisco.com/en/US/docs/routers/access/ics7750/software/notes/icsspan.html.
NICE announces the next generation of active VoIP recording solutions, Press Release, NICE Systems, Mar. 14, 2006. http://www.nice.com/news/show—pr.php?id=581.
NICE Systems announces interoperability of its VoIP recording technology with Cisco Systems' customer contact software platform, Business Wire, Jul. 3, 2001. http://findarticles.com/p/articles/mi—m0EIN/is—2001—July—3/ai—76154034.
NICE and Cisco ICM/IPCC integration, (Feb. 2003). http://www.cisco.com/en/US/solutions/collateral/ns340/ns394/ns165/ns45/ns14/net—brochure09186a00800a3292.pdf.
Provisional Applications (1)
Number Date Country
60817630 Jun 2006 US
Continuations (1)
Number Date Country
Parent 11540739 Sep 2006 US
Child 12769542 US