The present disclosure relates generally to telephone networks and, more specifically, to methods and apparatus to control distribution of call information.
Telephone communication networks typically employ a common channel signaling scheme that functions as a network-to-network interface to enable communications between different carrier operated telephone networks or switches. In this manner, the common channel signaling scheme enables efficient interoperation the telephone networks or switches owned and operated by various regional telephone companies, long distance service providers, etc.
Signaling system seven (SS7) is one particularly well-known common channel signaling architecture, scheme or protocol that may be used to enable carrier-to-carrier communications. In some telephone network applications, SS7 is used to control or configure communication trunks that convey voice calls between carriers using the integrated digital services network user part (ISUP) of the SS7 protocol. While common channel signaling schemes such as SS7 have been successfully deployed for use with carrier owned and operated public telephone switching networks, the use of a common channel signaling scheme such as SS7 with non-carrier networks or switches has presented some difficulties. For example, it may not be desirable or permissible to convey certain call signaling information to privately owned and operated telephone equipment such as, for example, private telephone switching networks (e.g., private branch exchange systems) used by corporations, building owners, etc. More generally, providing complete transparency of call signaling information between non-carrier or private networks or switches and carrier operated public networks or switches may be restricted or prohibited as a result of one or more legal or regulatory issues.
In one known system that conveys SS7 signaling information between carrier and non-carrier operated telephone switches, privacy indicators sent with call configuration or setup data are used to identify certain calling party signaling data as private and, thus, not to be conveyed to non-carrier private switching equipment. More specifically, in this known system, a first signal switching point (SSP) associated with a calling party marks certain signaling data associated with the calling party's call (e.g., the caller's phone number) as private. The marked signaling data is then conveyed via one or more signal transfer points (STPs) to a signal control point (SCP) that examines the signaling data and privacy markers to generate modified signaling data to be sent to a second SSP associated with a non-carrier operated network. The SCP hides data marked as private (as determined from the privacy indicators sent with the signaling data) by inserting nonsense data in the data fields associated with the private data and returns the modified signaling data to the first SSP. The first SSP then conveys the modified signaling data to the second SSP to set up the call without exposing the caller's phone number to the non-carrier switching network associated with the second SSP.
While the known system described above enables one type of signaling data to be hidden from non-carrier networks, the capabilities of that known system are somewhat limited. For instance, the above-described known system does not enable signaling parameters to be restricted, modified, or added (e.g., inserted) based on a relationship between an entity that owns or operates a first SSP and another entity owning or operating a second SSP.
In general, the example methods and apparatus described herein enable call information to be conveyed between carrier operated public telephone networks or switches and non-carrier privately operated telephone networks or switches in accordance with legal requirements, government regulatory requirements, contractual requirements, and/or business requirements. More specifically, with the example methods and apparatus described herein, call information associated with a call to be established between an SSP associated with a carrier operated telephone network and an SSP associated with a non-carrier operated telephone network is processed at an intermediate control point. The intermediate control point, which may be, for example, an SCP or an adjunct processing system, is configured to retrieve and apply switching point profile information, which may be representative of a relationship between the non-carrier operated telephone network and the carrier operated telephone network (e.g., the telephone network as a whole, one or more SSPs coupled to the telephone network, one or more SCPs coupled to the telephone network, etc.) The intermediate control point may then modify the call information (e.g., delete data, change data, and/or add data) based on the switching point profile information.
In some examples, the switching point profile information reflects a legal or regulatory and/or a business or contractual relationship between the non-carrier network or switch and the carrier operated network or switch. Call information modified at the intermediate control point is then conveyed to the SSP associated with the call destination without exposing, for example, data required to remain private and/or other data that is not desirably or permissibly conveyed between the carrier and non-carrier networks or switches.
Although the following discloses example systems, including software or firmware executed on hardware, it should be noted that such systems are merely illustrative and should not be considered as limiting. For example, it is contemplated that any or all of these hardware and software components could be embodied exclusively in hardware, exclusively in software, exclusively in firmware or in some combination of hardware, firmware and/or software. Accordingly, while the following describes example systems, persons of ordinary skill in the art will readily appreciate that the examples are not the only way to implement such systems.
Turning to
In general, the example telephone network 100 is configured to provide advanced intelligent network (AIN) functionality. For example, the example telephone network 100 of
As noted above, the SSPs 116, 118 and 120 are digital programmable switches that may be configured to recognize AIN-type calls, launch queries to the SCP 152, receive commands and data from the SCP 152 to process and route AIN-type calls, etc. One or more of the SSPs 116, 118 and 120 may be carrier operated switches (i.e., operated by a recognized public telephone service provider), which are commonly referred to as central offices, and/or one or more of the SSP 116, 118 and 120 may be non-carrier operated switches such as, for example, a private branch exchange (PBX) system or the like. For purposes of describing the example methods and apparatus herein, the SSP 116 is described as a carrier operated switch or network and the SSPs 118 and 120 are described as non-carrier operated switches or networks. Of course, it should be recognized that other examples including more or fewer SSPs and/or having more or fewer carrier operated and/or non-carrier operated switches or networks than those shown in the example network 100 of
The signal transfer point 150 functions as a packet switch using well-known methods to route call signaling information, data, commands, etc. among the SSPs 116, 118 and 120 and the SCP 152. The SCP 152 includes a database containing translation and routing data. The SCP 152 may use a number of well-known methods to access its database to determine the manner in which calls are to be routed, billed, etc. However, as described in greater detail in connection with
In the example telephone network 100 of
The example methods described below in connection with
Initially, the SSP 116 examines call information associated with the call placed via the telephone station 102 and its associated link 122 (block 202). Such an examination of the call information may include determining whether execution of the call requires AIN-type functionality (e.g., call forwarding), the nature of the destination switching point (e.g., whether the destination switching point is associated with a private entity or any other non-carrier entity), etc.
After examining the call information (block 202), the SSP 116 determines if the call requires a query (block 204). In general, calls requiring AIN-type functionality (e.g., further processing at the SCP 152) require a query to be sent to, for example, an SCP. In the example of
If the SSP determines at block 204 that a query is required, the SSP 116 sends a query (which includes the call signaling information) via the link 142, the signal transfer point 150 and the link 154 to the SCP 152 (block 206). The SCP 152 then examines the call information and modifies the call information based on the profile of the destination or non-carrier operated SSP (block 208). For example, if the destination of the call placed by the telephone station 102 via the SSP 116 is the SSP 118 which, in this example, is a non-carrier operated or privately operated switch, the SCP 152 may alter or modify the call information to eliminate, for example, information uniquely associated with the caller, the location of the caller, or that could be used to identify attributes of the caller's service. Similarly, the SCP 152 may alter or modify the call information to modify or eliminate carrier-related information that would be inappropriate or unnecessary for the non-carrier's operations. In this example, the SCP 152 may store or otherwise have access to (e.g., may selectively retrieve information from) a database including a list or other record or data structure containing profile information pertaining to SSPs (e.g., non-carrier operated) that require altered or modified call information. The SSPs in the database may require altered or modified call information based on, for example, on a business or contractual relationship to the network 100 and/or one or more other entities coupled to the network 100, governmental requirements, regulatory requirements, etc. In any event, such a list or record may then be used by the SCP 152 as it receives call information associated with calls placed via, for example, the telephone stations 102 and 104 to quickly determine whether those calls require altered or modified call information. As described in greater detail below, altered or modified call information or signaling may be required in cases where it is not desirable or permissible to convey certain call information available at the carrier operated SSP 116 to another SSP such as, for example, a non-carrier operated or privately operated switching point (e.g., the SSPs 118 and 120).
In some cases, the application of profile information results in the deletion or hiding of certain call information. For example, in the case where the destination switch is the privately operated SSP 118, caller identifying information (e.g., a caller's name, phone number, billing number, type of service, etc.), carrier identification information, and the like may be deleted or hidden (e.g., overwritten with nonsense data) to prevent the privately operated SSP 118 from receiving and having access to this information. Alternatively or additionally, the application of the profile information at the SCP 152 may result in the addition of data to the signaling information for the call and/or the changing of data making up the signaling information.
The SCP 152 may store or otherwise have access to a plurality of profiles, each of which may correspond to a different destination SSP or group of SSPs. Thus, the manner in which call information is conveyed from a given SSP originating a call to different destination SSPs can vary based on the relationship each of the destination SSPs has with respect to the telephone network 100 as a whole, an originating SSP, an SCP, and/or any other entity's equipment coupled to the network 100.
After the SCP 152 has altered or modified the call information (block 208), the SCP 152 returns the modified call information to the SSP 116 (block 210). The SSP 116 then forwards the modified call information to the destination SSP (i.e., the SSP 118) via the link 142, the signal transfer point 150 and the link 144 to configure or setup the trunk 136 to execute the call originating at the telephone station 102 (block 212).
In some cases, altered signaling may not be required (block 204). For example, if the telephone station 102 initiates a call to a telephone station coupled to another carrier operated SSP, it may be permissible and/or desirable to send all call information to that SSP without modifying or otherwise altering the call information. In that case, in the example of
Initially, the SSP 118 sends call information via the link 144, the signal transfer point 150 and the link 142 to the SSP 116 (block 302). The SSP 116 then examines the call information (block 304) and determines if the call requires a query (block 306). The operations of blocks 304 and 306 may be implemented as described above in connection with blocks 202 and 204 of
If a query is required (block 306), the destination carrier operated SSP 116 then sends a query to the SCP 152 via the link 142, the signal transfer point 150 and the link 154 (block 308). The SCP 152 then modifies the call information based on profile information associated with the originating non-carrier operated SSP 118 in a manner similar to that described in connection with block 208 of
The example method depicted in
An example processor system 502 that may be used to implement, for example, the SCP 152 and/or the adjunct processing system 156, is shown in
The processor 500 may, for example, be implemented using one or more Intel® microprocessors from the Pentium® family, the Itanium® family or the XScale® family. Of course, other processors from other families are also appropriate. The processor 500 is in communication with a main memory including a volatile memory 504 and a non-volatile memory 506 via a bus 508. The volatile memory 504 may be implemented by Synchronous Dynamic Random Access Memory (SDRAM), Dynamic Random Access Memory (DRAM), RAMBUS Dynamic Random Access Memory (RDRAM) and/or any other type of random access memory device. The non-volatile memory 506 may be implemented by flash memory and/or any other desired type of memory device. Access to the memory 504 is typically controlled by a memory controller (not shown) in a conventional manner.
The system 502 also includes an interface circuit 510. The interface circuit 510 may be implemented by any type of well-known interface standard to, for example, enable the system 502 to communicate via one or more of the links 142, 144, 146, 148 and 154.
The system 502 also includes one or more mass storage devices 518 for storing software and/or data. Examples of such mass storage devices include floppy disk drives, hard drive disks, compact disk drives and digital versatile disk (DVD) drives.
Turning to
In one example, the query generator 602 is integrated within a carrier operated SSP such as, for example, the SSP 116 (
The switching point identifier 604 is configured to examine the call information in the query received from the query generator 602 and to determine the destination switching point associated with the call. The call information modifier 606 receives the destination switching point information from the switching point identifier 604 and accesses the SSP profile information 610 to determine the manner in which call information needs to be modified. In general, the SSP profile information 610 may be embodied as a table, linked list, or any other suitable data structure that enables destination switching points to be associated with instructions or other information pertaining to the manner in which data associated with the call information needs to be changed, deleted, added in accordance with, for example, a relationship between the destination switching point and the telephone network or the switching point originating the call. As discussed above in connection with
The profile information accessed or retrieved by the call information modifier 606 is then used by the call information modifier 606 to modify the call information. The modified call information may then be returned to the switching point that will complete the call.
As can be appreciated from the foregoing description, the example methods and apparatus described herein enable a carrier operated SSP to convey an outgoing call or to receive an incoming call from a non-carrier or privately operated SSP in compliance with certain requirements or restrictions relating to call signaling information. In contrast to known manners of conveying call information in telephone networks, the example methods and apparatus described herein enable call information (including non-private call information) associated with a particular telephone station and/or carrier operated switching point to be changed, modified, or otherwise altered in different manners (without reference to privacy restriction indicators as is required in at least one known system) for different non-carrier operated SSPs and associated telephone stations.
Further, the example methods described, in
Although certain methods, apparatus, and articles of manufacture have been described herein, the scope of coverage of this patent is not limited thereto. To the contrary, this patent covers all methods, apparatus and articles of manufacture fairly falling within the scope of the appended claims either literally or under the doctrine of equivalents.