# Patent

## Title
Recording in a distributed environment

## Abstract

Included are embodiments for recording data from a communication. A least one embodiment includes a system for recording data from a communication that includes a controller component and a gateway component passively coupled to a switching component. In at least one embodiment the gateway component configured to receive at least a portion of the control data, the gateway component further configured to receive media data associated with the with the communication.

## Background
CROSS REFERENCE
This application is related to U.S. patent application Ser. No. 11/608,340, entitled “Systems and Methods for Recording,” filed on the same day as this application, which is hereby incorporated by reference, in its entirety. This application is also related to U.S. patent application Ser. No. 11/608,358, entitled “Systems and Methods for Recording Data,” filed on the same day as this application, which is hereby incorporated by reference, in its entirety.
TECHNICAL FIELD
This application is related to recording at least a portion of a communication. More specifically, this application is related to recording at least a portion of a communication in a communications network.
BACKGROUND
In many communications environments, recording of communication data is desired. More specifically, oftentimes, users and/or organizations desire to capture data related to communications associated with one or more communications devices and/or other endpoints. While recording from a single communications device may be useful, users and organizations with a plurality of communications devices may desire to record data associated with two or more of the communications devices. Additionally, users and organizations may desire to implement automatic recording of communication data, such that a user need not actively initiate recording of a communication. As these users and organizations may desire increased functionality in their recording services, passively recording from each subscriber line via separate recording devices may prove unduly costly and inefficient. Similarly, actively recording communications may prove difficult due to reliability issues associated with a recording device.
SUMMARY
Included are embodiments for recording data from a communication. A least one embodiment includes a system for recording data from a communication that includes a controller component and a gateway component coupled to a switching component. In at least one embodiment the gateway component configured to receive at least a portion of the control data, the gateway component further configured to receive media data associated with the with the communication.
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 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. While several embodiments are described in connection with these drawings, there is no intent to limit the disclosure to the embodiment or embodiments disclosed herein. On the contrary, the intent is to cover all alternatives, modifications, and equivalents.
FIG. 1 is an exemplary embodiment of a communication network illustrating a plurality of components that may be utilized in facilitating a communication.
FIG. 2 is an exemplary embodiment of a Service Switching Point (SSP), similar to the SSPs from FIG. 1.
FIG. 3A is an exemplary embodiment of an implementation for passively recording a communication, such as between communications devices from FIG. 1.
FIG. 3B is an exemplary embodiment of an implementation for actively recoding a communication, such as between communications devices from FIG. 1.
FIG. 4 is an exemplary embodiment of an implementation for passively recording a communication from an SSP, such as the SSP from FIG. 2.
FIG. 5 is an exemplary embodiment of an implementation for passively recording a communication over a network, similar to the embodiment from FIG. 4.
FIG. 6 is a diagram illustrating an exemplary embodiment of passively tapping a communications line in an IP environment, similar to the diagram from FIG. 5.
FIG. 7A is a sequence diagram illustrating an exemplary embodiment of actions that may be taken in recording a communication, similar to the implementation from FIG. 3A.
FIG. 7B is a continuation of the exemplary embodiment FIG. 7A.
FIG. 8A is a sequence diagram illustrating an exemplary embodiment of actions that may be taken in recording a communication, similar to the sequence diagram from FIG. 7A.
FIG. 8B is a continuation of the exemplary embodiment from FIG. 8A.
FIG. 9A is a sequence diagram illustrating an exemplary embodiment of actions that may be taken in recording a communication, similar to the sequence diagram from FIG. 8A.
FIG. 9B is a continuation of the exemplary embodiment from FIG. 9A.
FIG. 10A is a sequence diagram illustrating an exemplary embodiment of actions that may be taken in recording a communication, similar to the sequence diagram from FIG. 9A.
FIG. 10B is a continuation of the exemplary embodiment from FIG. 10A.



DETAILED DESCRIPTION
FIG. 1 is an exemplary embodiment of a communication network illustrating a plurality of components that may be utilized in facilitating a communication. As illustrated in the nonlimiting example of FIG. 1, communications devices 102a, 102b, 102c, 102d, and 102e may be configured to facilitate communications among two or more users.
Additionally, Service Switching Point (SSP) 104a is coupled to communications device 102a. SSP 104a may be configured to facilitate a communications path between communications device 102a and one or more other communications devices. SSP 104a may be configured to originate, terminate, and/or switch communications sessions (e.g., telephone calls, and/or other communications). While SSP 104 may be configured to facilitate communication of media data (e.g., voice, screen, and/or other substantive data associated with the communication), SSP 104 may be configured to facilitate communication of control data via a signaling protocol, such as a Signaling System 7 (SS7) protocol. Control data may be configured to provide non-substantive data related to the communication, such as provide media data instruction information.
Similarly, communications devices 102b and 102c are coupled (electrically, communicatively, and/or physically) to SSP 104b. Communications device 102d is coupled to SSP 104c and communications device 102e is coupled to SSP 104d. Additionally, SSP 104a is coupled SSP 104b and SSP 104c, as well as Signal Transfer Point (STP) 106a and STP 106b. SSP 104b and SSP 104c are also coupled to STP 106a and 106b. SSP 104c is coupled to SSP 104d. SSP 104d is coupled to STP 106c and 106d. Similarly, STP 106a and STP 106b are coupled to STP 106d and 106d. 
One should note that SSP may include any of a plurality of different components, to provide the desired functionality. More specifically, as a nonlimiting example, at least one of the embodiments disclosed herein may substitute the SSP for any switching component, whether operating in a Time Division Multiplexing (TDM) environment and/or in an Internet Protocol (IP) environment.
STPs 106 may be configured as packet switches for control data associated with a communications session between users on communications devices 102. More specifically, STPs 106 may be configured to receive control data from SSP 104 and facilitate communication of the control data to a desired destination. As discussed above, STPs 106 may be configured to operate via the SS7 protocol and/or other protocols.
Additionally, STP 106a and STP 106b are also coupled to Signal Control Point (SCP) 108a and SCP 108b. Similarly, STP 106c and STP 106d are coupled to SCP 108c and 108d. In operation, SCPs 108 may be configured to store data that may be utilized for call processing. More specifically, SCPs 108 may be queried to determine how a communication is handled. As a nonlimiting example, one or more SCPs may be consulted to provide the translation of a toll free telephone number (and/or other address) to an actual phone number and facilitate billing of the owner of the toll free number for the communication.
In operation, the network of FIG. 1 may be configured to facilitate a communication among communications devices. As a nonlimiting example, if a user on communications device 102a may desire a communication with a user on communications device 102e. In such a scenario, a user may initiate the communication by dialing an address (e.g., telephone number and/or other address). The SSP 104a may receive data associated with communication device 102a and data associated with communications device 102e. SSP 104a may determine a desired path, such as a desired trunk to facilitate communication of media between users on communications devices 102a and 102e. Media data associated with the communication may be sent from SSP 104a to SSP 104c and then to SSP 104d for delivery to communications device 102e. Similarly, control data associated with the communication may be sent from SSP 104a to STP 106b. STP 106b may send the control data to STP 106d, which can send the control data to SSP 104d. 
One should also note, that while SSPs 104 are illustrated as a single component, one should note that in at least one embodiment, SSP 104 represents a plurality of components associated with a call center. As discussed in more detail below, a call center may include a local SSP, a call control server, and/or other data. Additionally, while some embodiments may be configured form implementation in a Time Division Multiplexing (TDM) environment, other environments are also contemplated.
FIG. 2 is an exemplary embodiment of a Service Switching Point (SSP), similar to the SSPs from FIG. 1. Although a wire-line device is illustrated, this discussion can be applied to wireless devices, as well. Generally, in terms of hardware architecture, as shown in FIG. 2, SSP 104 includes a processor 282, volatile and nonvolatile memory 284, a display interface 294, data storage 295, one or more input and/or output (I/O) device interface(s) 296, and/or one or more network interface 298 that are communicatively coupled via a local interface 292. The local interface 292 can include, for example but not limited to, one or more buses or other wired or wireless connections. The local interface 292 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 282 may be a device for executing software, particularly software stored in volatile and nonvolatile memory 284.
The processor 282 can be any custom made or commercially available processor, a central processing unit (CPU), an auxiliary processor among several processors associated with the SSP 104, a semiconductor based microprocessor (in the form of a microchip or chip set), a macroprocessor, or generally any device for executing software instructions.
The volatile and nonvolatile memory 284 can include any one or combination of volatile memory elements (e.g., random access memory (RAM, such as DRAM, SRAM, SDRAM, etc.)) and/or nonvolatile memory elements (e.g., ROM, hard drive, tape, CDROM, etc.). Moreover, the memory 284 may incorporate electronic, magnetic, optical, and/or other types of storage media. One should note that the volatile and nonvolatile memory 284 can have a distributed architecture (where various components are situated remote from one another), but can be accessed by the processor 282. Additionally volatile and nonvolatile memory 284 can include routing logic 287, recording logic 288, presence logic 299, and/or an operating system 286. The operating system 286 may be configured to control the execution of other computer programs and provides scheduling, input-output control, file and data management, memory management, and communication control and related services.
A system component and/or module 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 volatile and nonvolatile memory 284, so as to operate properly in connection with the operating system 286.
The Input/Output devices that may be coupled to system I/O Interface(s) 296 may include input devices, for example but not limited to, a keyboard, mouse, scanner, microphone, etc. Further, the Input/Output devices may also include output devices, for example but not limited to, a printer, display, speaker, etc. Finally, the Input/Output devices may further include devices that communicate both as inputs and outputs, for instance but not limited to, a modulator/demodulator (modem; for accessing another device, system, or network), a radio frequency (RF) or other transceiver, a telephonic interface, a media duplication system, a router, etc.
Additionally included are one or more network interfaces 298 for facilitating communication with one or more other devices. More specifically, network interface 298 may include any component configured to facilitate a connection with another device. While in some embodiments, among others, the SSP 104 can include a network interface 298 that includes a Personal Computer Memory Card International Association (PCMCIA) card (also abbreviated as “PC card”) for receiving a wireless network card, however this is a nonlimiting example. Other configurations can include the communications hardware within the computing device, such that a wireless network card is unnecessary for communicating wirelessly. Similarly, some embodiments may include network interfaces 298 for communicating via a wired connection. Such interfaces may be configured with Universal Serial Bus (USB) interfaces, serial ports, and/or other interfaces.
Additionally included in the nonlimiting example of FIG. 2 is a switching component 297. The switching component 297 may be configured to facilitate communication among two or more communications devices 102. While one or more of the switch ports 283 may be configured as a receiving port, one or more of the switch ports 293 may be configured as a transmit port. Similarly, while the switching component 297 may be configured to allow an operator to determine the receiving and/or transmit ports that are utilized for a particular communication, SSP 104 may be configured with logic to determine which switch ports are utilized.
If SSP 104 includes a personal computer, workstation, or the like, the software in the volatile and nonvolatile memory 284 may further include a basic input output system (BIOS) (omitted for simplicity). The BIOS is a set of software routines that initialize and test hardware at startup, start the operating system 286, and support the transfer of data among the hardware devices. The BIOS is stored in ROM so that the BIOS can be executed when the SSP 104 is activated.
When SSP 104 is in operation, the processor 282 may be configured to execute software stored within the volatile and nonvolatile memory 284, to communicate data to and from the volatile and nonvolatile memory 284, and to generally control operations of the client device 106 pursuant to the software. Software in memory, in whole or in part, may be read by the processor 282, perhaps buffered within the processor 282, and then executed.
One should note that while the description with respect to FIG. 2 includes an SSP 104 as a single component, this is a nonlimiting example. More specifically, in at least one embodiment, SSP 104 can include a plurality of servers, personal computers, and/or other devices. Similarly, while routing logic 287, recording logic 288 and presence logic 299 are each illustrated in FIG. 2 as single software components, this is also a nonlimiting example. In at least one embodiment, presence logic 299 may include one or more components, embodied in software, hardware, and/or firmware. Similarly, routing logic and/or recording logic 288 may include one or more logical components. Additionally, while routing logic 287, presence logic 299, and recording logic 288 are depicted as residing on a single computing device, such as recorder controller 210 may include one or more devices, presence logic 299 may include one or more components residing on one or more different devices.
Similarly, while the discussion with regard to FIG. 2 refers to a SSP 104, similar elements may also be included in other network components discussed herein. More specifically, a recorder, communications device, recorder controller, call control server, SCP, STP and/or other network elements may include similar components and/or functionality. Additionally, while components illustrated in FIG. 2 are illustrated as being part of an SSP 104, this is also a nonlimiting example, as other components may include the logic and/or functionality described in FIG. 2.
FIG. 3A is an exemplary embodiment of an implementation for passively recording a communication, such as between communications devices from FIG. 1. As illustrated in the nonlimiting example of FIG. 3A, a user on communications device 102f may desire a communication session with a user on communications device 102g. As such, the user of communications device 102f may initiate a communication session to SSP 104e, via a subscriber line, as illustrated with a solid line. SSP 104e may be configured to receive control data, as well as media data associated with the communication. The media data may be sent to SSP 104f, as illustrated with a large dashed line.
Additionally, control data may be sent to STP 106e (which may be formatted in an SS7 protocol), as illustrated with a small dashed line. STP 106e may send the control data to STP 106f. Control data may then be sent to SSP 104f. SSP 104f can then facilitate the communication by sending the media data to communications device 102g. 
As also illustrated in the nonlimiting example of FIG. 3A, a recorder (which may be embodied as a hardware component, a software component, and/or a hybrid hardware/software component) 308a may be passively coupled to the subscriber line between SSP 104f and communications device 102g. While such a configuration may provide recording functionality to communications device 102g, such a configuration may prove unable to adequately provide the desired recording functionality. More specifically, as the recorder 308a may be configured to passively record data from a point between SSP 104e and SSP 104f, the recorder in FIG. 3A may be unable to receive control data that would indicate control signals, such as signals that determine whether to record a particular communication, signals that determine when to start recording, when to end recording, and/or other control data.
FIG. 3B is an exemplary embodiment of an implementation for actively recoding a communication, such as between communications devices from FIG. 1. As illustrated in the nonlimiting example of FIG. 3B, communications device 102h may initiate a communication with communications device 102i. In this nonlimiting example, SSP 104f receives data from communications device 102h. SSP 104f sends media data to SSP 104g. SSP 104f also sends control data to STP 106g. 
Additionally, SSP 104g sends media data to recorder 308b, which captures the data and sends data to SSP 104g. Similarly, STP 106g sends control data to recorder 308b, which utilizes the control data to determine whether and/or when to begin and end recording. Recorder sends the control data back to STP 106g. SSP sends the media data to communications device 102i. 
Similarly, some embodiments may be configured such that SSP 104g sends media data to recorder 308b, which is configured to interface directly with communications device 102i. Regardless, the embodiment of FIG. 3B illustrates a configuration where the recorder 308b actively records at least a portion of the communication. More specifically, as illustrated in this nonlimiting example, recorder 308b is a party to the communication and/or is a pathway for the media data to travel between the communications devices 102. As such, these embodiments may rely on the recorder to facilitate the communication (as opposed to simply recording the communication).
FIG. 4 is an exemplary embodiment of an implementation for passively recording a communication from an SSP, such as the SSP from FIG. 2. As illustrated in the nonlimiting example of FIG. 4, communications device 102j may be configured to initiate a communication with communications device 102k. As such, data may be sent to SSP 104h, as discussed above. Similarly, STP 106h may be configured to receive control data associated with the present communication. At least a portion of the control data may be sent to a local Call Control Server (CCS), which may include logic for interfacing with the recorder 308c. 
Additionally, media data may be sent from SSP 104h to SSP 104i. As illustrated, SSP 104i may be configured such that one or more of receiver switch ports 283 are coupled to one or more transmit switch ports 283. Thus media data is received from SSP 104h via a first receive switch port 283. This data is output via a first transmit switch port 283. The first transmit switch port 283 is coupled to a second receive switch 283, such that the media data is sent along this path. The media data is then output to communications device 102k via a second transmit switch port 283.
In the configuration of FIG. 4, the recorder 308c may be passively coupled to the line between the first transmit switch port 283 and the second receive switch port 283. More specifically, as illustrated in this nonlimiting example, recorder 308 is not a party to the communication and/or does not facilitate the communication. As recorder 308c is passively coupled to the link between the transmit switch port 283 and the receive switch port 283, reliability of the recorder is not an issue with regard to quality of the communication. Additionally, the recorder 308c may receive control data via local CCS 410a. Such a configuration provides the desired control data to facilitate the recording, while maintaining a passive recording configuration with regard to the media data.
Additionally, one should note that, while a single recorder 308c is illustrated in FIG. 4, some embodiments may be configured such that SSP 104i is coupled to a plurality of recorders and/or a recorder bank. In such a configuration, SSP 104i (and/or other components) may be configured with logic to determine a desired recording for the present communication. Additionally, some embodiments may be coupled to a load balancer and/or link protector to facilitate routing of the media data to a desired recorder, according to current network conditions.
FIG. 5 is an exemplary embodiment of an implementation for passively recording a communication over a network, similar to the embodiment from FIG. 4. As illustrated in the nonlimiting example of FIG. 5, a communications device 102l may be configured to initiate a communications with communications device 102m. As such, data may be sent to an SSP 104j. Similarly, control data may be sent to an STP 106l, which sends at least a portion of the control data to a local CCS 410b. 
Similar to the configuration from FIG. 4, an IP gateway 512a may be coupled to an SSP 104j for receiving media data and/or control data. The IP gateway 512a may also be coupled to an IP gateway 512b. Additionally, a network 500 may be passively coupled to a line between the IP gateway 512a and the IP gateway 512b. The network 500, which may include the Internet, a Local Area Network (LAN), a Wide Area Network (WAN), and/or other network, may be configured to send data to recorder bank 514 for recording. The recorder bank 514 may include one or more recorders 308c, 308d, and 308e. Additionally, a recorder controller, link protector, and/or load balancer (not shown) may be coupled to the recorder bank 514 to facilitate efficient recording.
FIG. 6 is a diagram illustrating an exemplary embodiment of passively tapping a communications line in an IP environment, similar to the diagram from FIG. 5. As illustrated in the nonlimiting example of FIG. 6, control data may be received at an STP 106i. The STP 106i can send at least a portion of the control data to an STP 106j. The STP 106j can send data to and receive data from local CCS 410b. At least a portion of the control data can be sent to an IP recorder 308f. The STP 106i may also send data to and receive data from an SSP 104k. 
Additionally, media data may be sent from a communications device 102l to an SSP 104k. The SSP 104k may send at least a portion of the media data to an SSP 104l. The SSP 104l may send data to a LAN switch 604a, which may send at least a portion of the media data to a LAN switch 604b. The LAN switch 604b can send at least a portion of the media data back to the SSP 104j. Additionally, the IP recorder 308f may passively connect with a communications line between the LAN switch 604a and the LAN switch 604b. From this passive connection, the IP recorder 308f may receive media data for recording.
FIG. 7A is a sequence diagram illustrating an exemplary embodiment of actions that may be taken in recording a communication, similar to the implementation from FIG. 3A. As illustrated in the nonlimiting example of FIG. 7A, communications device A 102 can initiate a communication directed to communications device B 102 (Arrow 732). As discussed above, initiation of the communication may include sending data associated with the communications device A 102, as well as data related to the communications device B 102. SSP A 104 may receive this data and send media data to SSP B 104 (Arrow 734). Additionally, SSP A 104 sends an Initiating Address Message (IAM) to STP 106 (Arrow 736). STP 106 can send the IAM to SSP B 104 (Arrow 738). SSP B 104 can then send an Address Complete Message (ACM) to STP 106 (Arrow 740). SSP B 104 rings the line of communications device B 102 (Arrow 742).
FIG. 7B is a continuation of the sequence diagram from FIG. 7A. As illustrated, STP 106 sends the ACM to SSP A 104 (Arrow 744). The called party can answer the call and communications device B 102 sends indication that the call was answered to SSP B 104 (Arrow 746). Upon a user answering the call, SSP B 104 can send an Answer Message (ANM) to STP 106 (Arrow 748). STP 106 can then send the ANM to SSP A 104 (Arrow 750). At this point, the communications session between communications device A 102 and communications device B 102 is established (Arrow 752). As illustrated in the nonlimiting example of FIG. 3A, because the recorder 308a is passively recording the communication without access to control data, recording functionality may be limited (Arrow 754).
FIG. 8A is a sequence diagram illustrating an exemplary embodiment of actions that may be taken in recording a communication, similar to the sequence diagram from FIG. 6A. As illustrated in the nonlimiting example of FIG. 8A, a communications device A 102 may initiate a communication directed to communications device B 102 (Arrow 832). The SSP A 104 can send media data to the SSP B 104 via an idle trunk (Arrow 834). The SSP A 104 can then send an IAM to the STP 106 (Arrow 836). STP 106 can then send the IAM to recorder 308b (Arrow 838). The recorder 308b can then send the IAM to the SSP B 102 (Arrow 840). SSP B then sends an ACM to the recorder 308b (Arrow 844). The recorder 308b can then send the ACM to the STP 106 (Arrow 846). The SSP B 104 can then ring the line of communications device B 102 (Arrow 848).
FIG. 8B is a continuation of the sequence diagram from FIG. 8A. As illustrated, the STP can then send the ACM to the recorder 308b (Arrow 850). The recorder 308b can then send the ACM to the SSP A 104 (Arrow 852). Additionally, the called party can answer the call and the communications device B 102 can send an indication to the SSP A 104 (Arrow 854). The SSP B 104 then sends an ANM to the recorder 308b. The recorder 308b can then send the ANM to the STP 106 (Arrow 858). The STP 106 can send the ANM to the SSP A 104 (Arrow 860). At this point, the communications session may be established (Arrow 862). The SSP B 104 sends the media data to the recorder 308b (Arrow 864).
As discussed with reference to FIG. 3B, the embodiment of FIGS. 8A and 8B may facilitate recording via an active connection of the recorder with the communication. As such a configuration may allow the receipt of control data associated with the communication, such a configuration may rely on the recorder to facilitate the communication. As such, if the recorder malfunctions, the integrity of the communication may suffer.
FIG. 9A is a sequence diagram illustrating an exemplary embodiment of actions that may be taken in recording a communication, similar to the sequence diagram from FIG. 7A. As illustrated in the nonlimiting example of FIG. 9A, a communications device A 102 may be configured to initiate a communication directed to a communications device B 102 (Arrow 932). An SSP A 104 can send media data to an SSP B 104 via an idle trunk (Arrow 934). The SSP A 104 can also send an IAM to the STP 106 (Arrow 936). The STP 106 can then send the IAM to the SSP B 104 (Arrow 938). The SSP B 104 then sends an ACM to a local CCS 410a (Arrow 940). The SSP B 104 can then ring the line of communications device B 102.
FIG. 9B is a continuation of the sequence diagram from FIG. 9A. As illustrated, the local CCS 410a may then send the ACM (or at least a portion of the ACM) to the SSP A 104 (Arrow 944). The called party can then answer the call and the communications device B 102 can send an indication to the SSP B 104 (Arrow 946). The SSP B 104 sends an ANM to the local CCS 410a (Arrow 948). The local CCS 410a can then send the ANM to the SSP A 104 (Arrow 950). At this point the communications session may be established (Arrow 952). The SSP B 104 may then send media data to recorder 308c via a passive connection (Arrow 954). As discussed above, with regard to FIG. 4, by utilizing a connection between a transmit switch port and a receive switch port on the SSP 104, the recorder 308c can passively record the communication while receiving signal data.
FIG. 10A is a sequence diagram illustrating an exemplary embodiment of actions that may be taken in recording a communication, similar to the sequence diagram from FIG. 8A. As illustrated in the nonlimiting example of FIG. 10A, a communications device A 102 can initiate a communication directed to communications device B 102 (Arrow 1032). An SSP A 104 can send media data to an SSP B 104 via an idle trunk (Arrow 1034). The SSP A 104 can then send an IAM to an STP 106 (Arrow 1036). The STP 106 can send the IAM to SSP B 104 (Arrow 1038). The SSP B 104 can send an ACM to the local CCS 410b (Arrow 1040). The SSP B 104 can then ring the line of communications device B 102 (Arrow 1041).
FIG. 10B is a continuation of the sequence diagram from FIG. 8A. As illustrated, the local CCS 410b can send the ACM to the SSP A 104 (Arrow 1042). The called party can then answer the call and communications device B 102 can send an indication to the SSP B 104 (Arrow 1044). The SSP B 104 can send an ANM to the local CCS 410b (Arrow 1046). The local CCS 410b can send the ANM to the SSP A 104 (Arrow 1048). At this point the call may be connected (Arrow 1050). The local CCS can then send control data to an IP gateway 512 (Arrow 1052). Additionally, the SSP B 104 can send media data to the IP gateway 512 via a passive connection (Arrow 1054). The IP gateway can then send the media data to a recorder and/or recorder bank 514 (Arrow 1056).
As discussed with respect to FIG. 5, embodiments disclosed herein may facilitate passive recording with a distributed recorder configuration. By utilizing a distributed recorder configuration, recorders efficiency may be maximized by utilizing routing logic that distributes recording in a substantially equal manner. Additionally, depending on the particular embodiment, a controller component (which may include an SCP) may include an SSP node, an Automatic Call Distributor (ACD) Private Branch Exchange (PBX), and/or other components.
Additionally, a call center may include, but is not limited to, outsourced contact centers, outsourced customer relationship management, customer relationship management, voice of the customer, customer interaction, contact center, multi-media contact center, remote office, distributed enterprise, work-at-home agents, remote agents, branch office, back office, performance optimization, workforce optimization, hosted contact centers, and speech analytics, for example.
Additionally included in this disclosure are embodiments of integrated workforce optimization platforms, as discussed in U.S. application Ser. No. 11/359,356, filed on Feb. 22, 2006, entitled “Systems and Methods for Workforce Optimization,” which is hereby incorporated by reference in its entirety. At least one embodiment of an integrated workforce optimization platform integrates: (1) Quality Monitoring/Call Recording—voice of the customer; the complete customer experience across multimedia touch points; (2) Workforce Management—strategic forecasting and scheduling that drives efficiency and adherence, aids in planning, and helps facilitate optimum staffing and service levels; (3) Performance Management—key performance indicators (KPIs) and scorecards that analyze and help identify synergies, opportunities and improvement areas; (4) e-Learning—training, new information and protocol disseminated to staff, leveraging best practice customer interactions and delivering learning to support development; and/or (5) Analytics—deliver insights from customer interactions to drive business performance. By way of example, the integrated workforce optimization process and system can include planning and establishing goals—from both an enterprise and center perspective—to ensure alignment and objectives that complement and support one another. Such planning may be complemented with forecasting and scheduling of the workforce to ensure optimum service levels. Recording and measuring performance may also be utilized, leveraging quality monitoring/call recording to assess service quality and the customer experience.
The embodiments disclosed herein can be implemented in hardware, software, firmware, or a combination thereof. At least one embodiment, disclosed herein is implemented in software and/or firmware that is stored in a memory and that is executed by a suitable instruction execution system. If implemented in hardware, as in an alternative embodiment embodiments disclosed herein can be implemented with any or a combination of the following technologies: a discrete logic circuit(s) having logic gates for implementing logic functions upon data signals, an application specific integrated circuit (ASIC) having appropriate combinational logic gates, a programmable gate array(s) (PGA), a field programmable gate array (FPGA), etc.
One should note that the flowcharts included herein show the architecture, functionality, and operation of a possible implementation of 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 and/or not at all. 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.
One should note that any of the programs listed herein, which can include an ordered listing of executable instructions for implementing logical functions, 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, 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 nonexhaustive 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 the certain embodiments of this disclosure can include embodying the functionality described in logic embodied in hardware or software-configured mediums.
One should also note that conditional language, such as, among others, “can,” “could,” “might,” or “may,” unless specifically stated otherwise, or otherwise understood within the context as used, is generally intended to convey that certain embodiments include, while other embodiments do not include, certain features, elements and/or steps. Thus, such conditional language is not generally intended to imply that features, elements and/or steps are in any way required for one or more particular embodiments or that one or more particular embodiments necessarily include logic for deciding, with or without user input or prompting, whether these features, elements and/or steps are included or are to be performed in any particular embodiment.
It should be emphasized that the above-described embodiments are merely possible examples of implementations, merely set forth for a clear understanding of the principles of this disclosure. Many variations and modifications may be made to the above-described embodiment(s) 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 system for recording data from a communication, comprising:
a controller component configured to receive control data associated with a communication between a first communications device and a second communications device;
a switching component including a first receive port, a second receive port, a first transmit port and a second transmit port, the switching component configured to receive media data associated with the communication via the first receive port, the switching component further configured to send the received media data to the second receive port via the first transmit port, the switching component further comprising the second transmit port, wherein the first transmit port and the second receive port are coupled via a connection line; and
a gateway component passively coupled to the connection line, the gateway component configured to receive at least a portion of the control data, the gateway component further configured to receive media data associated with the communication,
wherein the coupling of the gateway component and the connection line is a non-terminating point.

2. The system of claim 1, wherein the gateway component is further configured to send at least a portion of the media data to a recorder.

3. The system of claim 1, wherein the gateway component is coupled to a wide area network, wherein the gateway component is configured to send at least a portion of the media data to at least one recorder via the wide area network.

4. The system of claim 1, wherein the gateway component is coupled to a Wide Area Network, wherein the gateway component is configured to send at least a portion of the control data to at least one recorder via the Wide Area Network.

5. The system of claim 1, wherein the controller component is configured to receive control data via a Signaling System 7 (SS7) protocol.

6. The system of claim 1, wherein the media data is configured for communication in a Time Division Multiplexing (TDM) environment.

7. The system of claim 1, wherein the media data is configured for communication in an Internet Protocol environment.

8. The system of claim 1, further comprising at least one recorder configured to receive at least a portion of the media data, wherein the at least one recorder is coupled to the gateway component via wide area network.

9. A system for recording data from a communication, comprising:
a controller component configured to receive control data associated with a communication between a first communications device and a second communications device;
a switching component including a first receive port, a second receive port, a first transmit port and a second transmit port, the switching component configured to receive media data associated with the communication and send the received media data to the first receive port via the first transmit port, wherein the first transmit port and the first receive port are coupled via a connection line; and
a gateway component passively coupled to the switching component at the connection line, the gateway component configured to receive at least a portion of the control data, the gateway component further configured to receive media data associated with the communication.

10. The system of claim 9, further comprising a switching component configured to receive the media data via a first receive port, the switching component further configured to send the received media data to a second receive port via the first transmit port, the switching component further comprising the second transmit port, wherein the first transmit port and the second receive port are coupled via a connection line.

11. The system of claim 10, wherein the gateway component is coupled to the switching component via the connection line.

12. The system of claim 9, wherein the control data is received via a Signaling System 7 (SS7) protocol.

13. The system of claim 9, further comprising a recorder coupled to the gateway component, the recorder configured to receive at least a portion of the media data.

14. The system of claim 9, wherein the media data is configured for communication in a Time Division Multiplexing (TDM) environment.

15. The system of claim 9, wherein the media data is configured for communication in an Internet Protocol (IP) environment.

16. The system of claim 9, wherein at least a portion of the media data is sent to a recorder controller, the recorder controller configured to determine a recorder for recording the media data.

17. A system for recording data from a communication, comprising:
controller logic configured to receive control data associated with a communication;
switching logic executing at a switching component that includes a first receive port, a second receive port, a first transmit port and a second transmit port, the switching component configured to receive media data associated with the communication and send the received media data to the first receive port via the first transmit port, wherein the first transmit port and the first receive port are coupled via a connection line; and
gateway logic passively coupled to the switching component at the connection line, the gateway component configured to receive media data associated with the communication.

18. The system of claim 17, further comprising switching logic configured to receive the media data via the first receive port, the switching component further configured to send the received media data to the second receive port via the first transmit port, the switching component further comprising the second transmit port, wherein the first transmit port and the second receive port are coupled via a connection line.

19. The system of claim 17, wherein the gateway logic is coupled to the switching logic via the connection line.

20. The system of claim 17, wherein the control data is received via a Signaling System 7 (SS7) protocol.

21. The system of claim 17, further comprising recording logic coupled to the gateway logic, the recording logic configured to receive at least a portion of the media data.

22. The system of claim 17, wherein the gateway component is further configured to receive at least a portion of the control data.