# Patent

## Title
System and method for speeding call originations to a variety of devices using intelligent predictive techniques for half-call routing

## Abstract

A mobile application gateway configured to interconnect mobile communication devices on a cellular network with an enterprise network is provided. The mobile application gateway includes a voice and data signaling gateway configured to provide routing functionalities, service functionalities and admission control. A gateway GPRS support node (GGSN) is configured to establish a secure data session between one or more of the mobile communication devices and the enterprise network by establishing a GPRS tunneling protocol (GTP) tunnel between a carrier-hosted serving GPRS support node (SGSN) and the GGSN.

## Background
PRIORITY CLAIM
This application claims priority of and is a continuation of U.S. Ser. No. 11/588,078, entitled “SYSTEM AND METHOD FOR SPEEDING CALL ORIGINATIONS TO A VARIETY OF DEVICES USING INTELLIGENT PREDICTIVE TECHNIQUES FOR HALF-CALL ROUTING” filed Oct. 26, 2006 now U.S. Pat. No. 7,974,618, which claim priority of U.S. Provisional Ser. No. 60/778,252, entitled “MOBILE APPLICATION GATEWAY FOR CONNECTING DEVICES ON A CELLULAR NETWORK WITH INDIVIDUAL ENTERPRISE AND DATA NETWORKS” filed Mar. 2, 2006; U.S. Provisional Ser. No. 60/778,276, entitled “CALL FLOW SYSTEM AND METHOD USE IN LEGACY TELECOMMUNICATION SYSTEM” filed Mar. 2, 2006; U.S. Provisional Ser. No. 60/778,443, entitled “CALL FLOW SYSTEM AND METHOD USE IN VOIP TELECOMMUNICATION SYSTEM” filed Mar. 2, 2006; and U.S. Provisional Ser. No. 60/797,724, entitled “SYSTEM AND METHOD FOR EXECUTING ORIGINATING SERVICES IN A TERMINATING NETWORK FOR IMS AND NON-IMS APPLICATIONS” filed May 4, 2006, and U.S. Ser. No. 11/509,222, entitled “MOBILE APPLICATION GATEWAY FOR CONNECTING DEVICES ON A CELLULAR NETWORK WITH INDIVIDUAL ENTERPRISE AND DATA NETWORKS” filed Aug. 24, 2006, each of which is incorporated herein by reference for all purposes.


CROSS REFERENCE TO RELATED APPLICATIONS
Cross reference is made to the following commonly assigned U.S. patent applications: U.S. Ser. No. 11/509,186, entitled “CALL FLOW SYSTEM AND METHOD USE IN LEGACY TELECOMMUNICATION SYSTEM” filed Aug. 24, 2006, now issued U.S. Pat. No. 7,843,901; U.S. Ser. No. 11/509,260, entitled “CALL FLOW SYSTEM AND METHOD USE IN VOIP TELECOMMUNICATION SYSTEM” filed Aug. 24, 2006; U.S. Ser. No. 11/509,200, entitled “SYSTEM AND METHOD FOR EXECUTING ORIGINATING SERVICES IN A TERMINATING NETWORK FOR IMS AND NON-IMS APPLICATIONS” filed Aug. 24, 2006; U.S. Ser. No. 11/509,450, entitled “SYSTEM AND METHOD FOR ENABLING MULTI-LINE MOBILE TELEPHONE SERVICE CAPABILITIES ON A SINGLE-LINE MOBILE TELEPHONE” filed Aug. 24, 2006; U.S. Ser. No. 11/509,372, entitled “SYSTEM AND METHOD FOR ENABLING DTMF DETECTION IN A COIP NETWORK” filed Aug. 24, 2006, each of which is hereby incorporated by reference for all purposes.
FIELD OF THE INVENTION
The present invention relates to telecommunications, and more particularly telecommunications including enterprise servers, wireless communications, and the interoperability of communication technologies.
BACKGROUND OF THE INVENTION
Corporations are increasingly relying on the use of cellular technology by their employees. Yet enterprises do not have adequate means to control cellular service, in terms of costs, Quality of Service, and corporate monitoring. This is because cellular service is independently managed and controlled by wireless carrier networks with no connectivity to the enterprise voice and data networks, as shown in FIG. 1.
Enterprises today control their enterprise fixed voice and data networks, as is shown on the left of the diagram. They own and manage their own PBXs, within each branch, and between branch offices. They also own and manage their own data networks and corporate LAN/WAN. They purchase bulk voice minutes and data capacity from land line carriers, or from other providers that have purchased bulk minutes and data capacity from carriers, to connect branch offices, using public IP Network providers (e.g. MCI, Sprint, L3, etc.) for Data and Voice over IP (VoIP).
With this invention, the enterprise is able to equally extend this paradigm to cellular service by connecting the public wireless voice and data network (on the right side of the diagram) into the enterprise. This is shown in FIG. 2. The gateway server inter-connects the carrier's Mobile Switching Center (MSC) that manages cellular voice traffic as well as the carrier's Serving GPRS Support Node (SGSN) that manage cellular data traffic, with the enterprise's voice and data network.
SUMMARY OF INVENTION
The invention achieves technical advantages as a mobile application gateway for connecting devices on a cellular network with individual networks, such as enterprise voice and data networks and/or residential networks. The effects of the present invention are far reaching in terms of transferring effective call control from the cellular network into the control of the individual network such as the enterprise, and enabling new business models for the purchase of cellular service from a public cellular carrier by an enterprise. The invention may consist of a primarily of core network and services components based on the IMS network architecture, and is backward compatible to support legacy systems in place in current telecom and data networks.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram of an independently managed and controlled wireless carrier network, and an independently managed corporate enterprise network;
FIG. 2 is a diagram of a conventional network with an enterprise network gateway server, according to the invention, connected to a wireless carrier network;
FIG. 3 is a diagram of a gateway server system accordingly to one preferred embodiment of the present invention;
FIG. 4A is a diagram of an enterprise data and voice network operably connected using the gateway server system using pure enterprise call control according to one preferred embodiment;
FIG. 4B is a diagram of an enterprise data and voice network operably connected using the gateway server system using split call control according to one preferred embodiment;
FIG. 5 depicts a network architecture according to another preferred embodiment using VoIP systems;
FIG. 6 is a call flow diagram for call origination according to one embodiment of the present invention;
FIG. 7 is a call flow diagram for effecting call delivery using VoIP system according to another preferred embodiment of the present invention;
FIG. 8 is a call flow diagram for effecting mobile termination using VoIP according to another preferred embodiment of the present invention;
FIG. 9 is a diagram of a network architecture for a Legacy (TDM) network according to another preferred embodiment of the present invention;
FIG. 10 is a diagram of a next generation IMS architecture that is backwards compatible with legacy cellular networks based on existing cellular protocols;
FIG. 11 is a diagram of a conventional legacy network architecture that does not support IM;
FIG. 12 depicts a Packet Engine according to another preferred embodiment of the present invention allowing a call server to detect DTMF digit events on the call path;
FIG. 13 depicts one embodiment of the Packet Engine consisting of a user space;
FIG. 14 depicts a Linux kernel module of the Packet Engine;
FIG. 15 depicts the current IMS standard definition;
FIG. 16 depicts one exemplary embodiment of the invention for IMS service;
FIG. 17 and FIG. 18 depict a gateway server carrier (GS-C) configured as an IMS standard-compliant SIP, and associated algorithm;
FIG. 19 depicts an algorithm for receiving incoming calls on various lines that are to be directed to a subscribers mobile phone;
FIG. 20 is a flow diagram of a method for speeding call originations and terminations to a variety of devices using intelligent predictive techniques for call routing in accordance with an exemplary embodiment of the present invention;
FIG. 21 is a flow diagram of a method for enabling secure VPN-less data sessions for connecting mobile data devices with an enterprise data network in accordance with an exemplary embodiment of the present invention; and
FIG. 22 is a flow diagram of a system and method for enabling call originations using a mobile data connection and hotline capabilities in accordance with an exemplary embodiment of the present invention.



DETAILED DESCRIPTION OF THE PRESENT INVENTION
Effectively in one preferred embodiment of the invention, a gateway mobile server is provided that runs a turnkey cellular system that does not include any radio network components. The gateway mobile server is appropriately scaled down to the smaller subscriber base of a large enterprise, compared with that of a public carrier. The gateway mobile server advantageously supports call routing between a legacy, hybrid or IP-PBX, and the public cellular network in support of the enterprise/virtual operator business model.
This solution ultimately enables enterprises to change the way they purchase cellular service from cellular operators by enabling enterprises to effectively become a Mobile Virtual Network Operator (MVNO) for their own employees, and ultimately even sell cellular service external to the enterprises corporation. Thus, the enterprise is able to purchase discount bulk rate cellular minutes of use from a public cellular carrier, and “resell” them internally to their cost centers, or externally to other entities. The solution effectively enables the enterprise to “plug-in” cellular service akin to how local and long distance are connected to the enterprise's PBX. The result is that enterprises can consume minutes of use from public cellular carriers and pay for those minutes at the end of a time period, for example at the end of the month. A single relationship can exist between the cellular carrier and the enterprise, rather than multiple individual subscriptions between the carrier and enterprise employees (where the carrier is forced to treat them as ordinary consumers). This embodiment of the invention also facilitates the situation in which a single service provider can provide local, long distance, cellular and internet service to an enterprise. Ultimately the enterprise can become its own service provider with its own Home Location Register (HLR) and Home Subscriber Server (HSS) operating on and interconnected with the public networks. Thus, employees making/receiving voice calls and data sessions can be roaming on cellular carrier networks, which will charge the enterprise based on their usage.
The voice gateway component in this embodiment of the invention comprises a hybrid gateway router, combining the traditional routing functionalities of a Wireless Gateway Mobile Switching Center (GMSC) with the admission control and routing functionalities of an IMS SIP Application Server proxy and/or H.323 gatekeeper in addition to functionality for call management and control in the enterprise space based on SIP and/or H.323.
All signaling is transported over IP instead of SS7 where possible using protocols, such as SIGTRAN. In cases where IP signaling is not available, SS7 may be required to connect with the public cellular and carrier networks. In addition, the invention supports functionality not traditionally associated with a Wireless GMSC. This includes support for 3GPP/2 SIP and/or H.323.
The present invention provides support for 3GPP/2 SIP, GSM MAP, CAP, ANSI-41/WIN and AIN protocols, converts between them and maps to individual SIP network elements in the enterprise network. Support for signaling is via SIGTRAN with high reliability over IP connections instead of traditional and expensive SS7 links.
Various embodiments of the invention provide technical advantages including:
Interconnection algorithms between carrier network telecom protocols and specific enterprise PBX services platforms, including enhancements to standard cellular network nodes including GMSC, SCP, GGSN:
Nodal inter-connection algorithms
Various configurations

    
    
        Enterprise-hosted, Enterprise Managed:
        The solution is hosted entirely within the enterprise and controlled by the enterprise
        Enterprise-hosted, Shared Management:
        The solution is hosted entirely within the enterprise and controlled by both the enterprise and remotely by the carrier
        Enterprise hosted, Carrier Managed:
        The solution is hosted entirely within the enterprise and controlled remotely by the carrier
        Carrier-hosted, Enterprise Managed:
        The solution is hosted at the carrier site and controlled remotely by the enterprise
        Carrier-hosted, Shared Management:
        The solution is hosted at the carrier and controlled by both the enterprise and remotely by the carrier
        Carrier-hosted, Carrier Managed:
        The solution is hosted at the carrier site and controlled by the carrier
        Shared-hosted, Shared Management:
        A component of the solution is hosted, managed and controlled at the carrier site, and a component of the solution is hosted, managed and controlled at the enterprise site.
    
    


Routing of dialed digits from carrier network to enterprise system without modifying carrier software, using existing intelligent network and/or IMS signaling and data messaging techniques.
Method for reducing/eliminating of PSTN interconnect charges between carrier and enterprise, enabling:

    
    
        Low cost mobile-to-mobile calls even when served by different carriers
        
            This may be achieved by routing the calls from the carrier network into the enterprise using VoIP technology, and thus bypassing the PSTN network
        
        
        Low cost mobile to IP voice client calls (mobile to PC client, Skype, etc.)
    
    


Methods for increasing enterprise-grade availability via a cellular interconnection gateway:

    
    
        Methods for maintaining enterprise call handling capabilities when individual enterprise network nodes fail
        
            For example, when a call is originated from the cellular network and its control messages are sent to the gateway server for processing, if the gateway server detects that the PBX system is not available or out of service, the gateway server can instruct the cellular network to route the call directly. The gateway server may modify the digits if necessary. The cost of the call may be higher than if routed through the PBX, however the call will nevertheless be connected. Once the PBX becomes available, the gateway server can direct subsequent calls through the enterprise network.
        
        
    
    


Enterprise MVNO Business framework
Enabling large enterprises to become cellular service providers for their employees
Spinoff business opportunities for sale of cellular voice/data services PBX evolution for wireless interconnection
MVNO Infrastructure
Framework, methodology and mechanisms for increasing MVNO value-chain service capabilities
Framework to enable MVNOs to support own core network switching and services through an existing carrier's wireless access infrastructure
Integrated Services Capabilities Framework
Enabling improved integration and customization of enterprise applications on public carrier networks
Framework enables the migration of business solutions to customized enterprise environment, away from generic carrier offerings using enterprise information systems not available to carrier networks, e.g.

    
    
        Local Presence & Availability information
        Enterprise badging and security systems
        
            For example, with the call control managed out of the enterprise rather than the cellular network, the enterprise can connect disparate systems to enforce policy controls such as disabling an employee's cellular phone when they badge out of the office for the evening, or changing the charging codes such that the employee will be charged for calls made after they have badged out of the office for the evening, or limiting the employee to 250 minutes of personal phone calls after badging out for the evening, or restricting international calling, or enabling international calling to a single country such as the country of one's family, etc.
        
        
    
    


Intelligent Least cost routing techniques
Algorithms for enabling intelligent Tail-end Hop-off of calls and data sessions within the enterprise's network

    
    
        Including methodology for inter-office (e.g. international) call routing when local PBX is out of service
        Tail-end hop-off enables a call from one country to another country to be routed over a least-cost network to a connection point in the destination country, from which a local call is established and connected with the international least-cost route. The result is a lower-cost call to the destination.
    
    


Data Session Management
Similar to the ability to route voice calls into the enterprise which are then subject to enterprise voice policy, the invention describes the methodology and support for the routing of data sessions from the public network directly into the enterprise. By including a GGSN function within the enterprise and connected with the cellular carrier's SGSN, a secure tunnel can be established between the carrier and the enterprise networks. The GGSN component can be split among two components of the Gateway Server: One component located in the carrier network (within the GS-C), and a second component located in the enterprise (within the GS-E). Similarly this can be achieved with a Home Agent function located within the enterprise and connected with the carrier's Foreign Agent for CDMA networks. As such, the invention:

    
    
        Eliminates the need for VPN software to be launched on the mobile device
        Subjects the mobile device to enterprise data policy including security and firewalls no matter where the device is located, and without the need for user interaction—all data sessions are routed through the enterprise's corporate network and firewalls
        Enables software applications to be embedded in wireless devices that can be launched remotely to, for example, destroy data on the device should the unit be lost or stolen—e.g. Poison Pills
    
    


The present invention in one embodiment includes a software/server system that advantageously provides a cost effective and transparent means to connect enterprise employees' cellular phones to their corporation's PBX. The solution provides corporations with the ability to achieve, with regular single-mode mobile phones used by employees without requiring any special dialing sequences, the same PBX based benefits now provided for fixed office landline phones. The solution creates a multi-dimensional paradigm shift in the enterprise telecommunications market that is expected to change the way enterprises purchase and integrate cellular service with their PBX as well as the way carriers compete for all phone services to the enterprise.
The solution provides a unique product and business concept that is highly strategic for enterprise customers and channel distribution partners. Mobile operators have the opportunity to benefit from enterprises' need for operational control, efficiency and flexibility. The solution drives competitive advantage, higher market share and increased revenues for network operators by extending the cellular network and its call control into the enterprise.
One implication of moving the call control into the enterprise is that the invention enables the enterprise to control their communications—enabling the enterprise to track, monitor and even record voice conversations that occur on public carrier networks. The enterprise will be able to enforce policy-based call routing for employees making and receiving calls on public cellular networks. This means they can allow/prevent calls based on specific criteria such as destinations, time of day, external stimuli (e.g. active employee badge), other circumstances. As a result, corporations submitting to control-procedure legislations such as Sarbanes-Oxley will now have the ability to manage and control cellular communications in line with their landline (PBX) and data networks (e.g. e-mail traffic).
The gateway server transparently extends the cellular network directly to the PBX in the enterprise, ultimately enabling the enterprise to equally ‘plug’ cellular service into their PBX from a choice of providers, alongside their local and long distance landline service. In the enterprise, the server according to one aspect of the present invention is a mobility gateway that enables the enterprise to manage its own cellular services and costs as well as to deploy customized mobility solutions to bridge their internal business applications and processes with mobile devices. The architecture addresses the extension of the PBX control over both cellular voice and data systems, in addition to the current PBX control over land line voice. The approach of the present invention is a networking solution versus a device-centric solution, and does not require the enterprise to deploy and manage complex RF (radio frequency) components or purchase specialized mobile devices.
For the enterprise, the solution enables them to manage and control their cellular services & costs by routing all employees' cellular voice and data calls through their corporate PBX network, while simultaneously enabling them to deploy customized and secure mobility solutions integrated with their internal IT systems. For the mobile operator, the solution enables them to capture market share, grow revenues, reduce operational expenses and reduce churn in the highly profitable enterprise segment.
Referring now to FIG. 3, there is shown a gateway server at 10 according to one preferred embodiment of the invention.

    
    
        The gateway server:
        Enables the enterprise to manage and control its cellular service.
        Enables the enterprise to achieve significant overall cost reductions for telecommunications.
        Includes an overall platform and architecture for improved and integrated wireless enterprise solutions.
        Drives convergence between the enterprise's cellular and Voice over IP (Internet Protocol) infrastructure.
    
    


The gateway server 10 leverages the benefits of Voice over IP with cellular to extend the cellular network into the enterprise. The gateway server 10 addresses both cellular voice and data, and is a networking solution that works together with the enterprise's existing PBX, performing mobile call control functions (routing and services).
Additionally, the gateway server 10:
Bridges the enterprise PBX and public cellular environments to enable telecom applications for the cellular user, such as short-code dialing (e.g. 4 and 5-digit dialing), one number service (one phone number for the desktop and cellular phone), single voice mail box.
Enables the enterprise to leverage their existing telecom assets for cellular use (e.g., least-cost routing over corporation's VoIP or leased-lines network for discounted long distance; use of existing PBX voicemail system).
Is an application platform for deploying mobile IT applications. Either the enterprise IT department or a Systems Integrator can develop and integrate specific applications to interface with the corporation's cellular devices.

    
    
        For example, the enterprise can choose to replace the deskphone of an office employee with an inexpensive mobile phone. For this employee, when they ‘badge-out’ of the building at the end of the day, the enterprise security badging system can be used to inform the gateway server to de-activate the mobile phone, until the employee returns to the office and ‘badges-in’ the next morning. Alternatively, the gateway server can track and record the calls made outside the office hours, and enable the enterprise to charge them to the business, to the employee, or record them as a corporate benefit.
    
    


Provides a single control point for the IT organization to monitor and control cellular usage and services—all cellular calls can be tracked and recorded in the enterprise's PBX system.
The gateway server may be software-only solution that can execute on standard, inexpensive Linux platforms. The gateway server may consist of a mobile core network (for call handling and routing) and services network (voice and data services such as PBX-based short code dialing, voicemail, conference calling, VPN, etc.) components. It may be appropriately scaled down to the smaller subscriber base of a decentralized large enterprise, in the order of hundreds to several thousand subscribers, compared with carrier systems that manage many millions of “centralized” subscribers. The gateway server is designed to be managed and maintained by the same IT group that currently manages the enterprise's PBX system.
The gateway server in some aspects is a cellular system which does not require or include any radio frequency network components—which are highly complicated and expensive to deploy and manage. Campus radio networks, whether cellular, Wi-Fi or other, require highly skilled and dedicated resources to maintain and ensure network stability for the enterprise's critical voice and data communications, while simultaneously managing their spatial coexistence with live public carrier radio networks overlapping the enterprise campus.
Instead, the invention includes a method for combining the technology for enabling enterprises to integrate its call control and services with a proven business model (MVNOs) that further enables the enterprise to negotiate with carriers for a reasonable discounted price to use the carrier's professional nationwide cellular network. To the carrier, this maintains large numbers of high-value enterprise customers locked in on their networks, while reducing their costs of acquiring and maintaining individual subscribers.
One network architecture implementing an aspect of the present invention is shown in FIG. 4. From an IT organization perspective, the gateway server 10 appears as an extension to the PBX. To the cellular network, the gateway server 10 appears as a standard in-network endpoint for delivering calls. To the enterprise PBX, the gateway server 10 appears as a set of standard PBX endpoints (e.g. deskphones, or IP clients). The gateway server 10 mediates between the two disparate sets of network protocols and state machines.
The gateway server 10 includes the network functions for both voice (gateway MSC) and data (gateway GPRS Support Node or Home Agent), VoIP capability for interconnecting the mobile network with the enterprise thereby eliminating PSTN interconnect charges, a billing gateway, and a next-generation Network Services gateway (platform enabling third party value added services for the enterprise (e.g. mobile phone activation/de-activation, corporate directory integration) based on IMS (IP Multimedia Subsystem). It also includes the element management subsystem (EMS) and a service management subsystem (SMS) for the operational support system (OSS). The following Legend identified some of the terms used in FIG. 4.
Legend
GPRS: General Packet Radio Services—Provides mobility management, session management and transport for Internet Protocol packet services in GSM cellular packet networks.
GSM: Global System for Mobile Communications (GSM) is the most popular standard for mobile phones in the world. GSM is both an air interface and networking protocol. In the US this protocol is used by T-Mobile and Cingular. The most popular alternative combines the CDMA (Code Division Multiple Access) air interface protocol and ANSI-41 networking protocol that are used in the US by Verizon Wireless and Sprint.
HLR: Home Location Register—The central database that contains details of each mobile phone subscriber that is authorised to use the cellular core network.
IETF: Internet Engineering Task Force—Is charged with developing and promoting Internet standards, in particular, those of the IP protocol suite
IP: Internet Protocol—A data-oriented protocol used by source and destination hosts for communicating data across a packet-switched internetwork
ISDN: Integrated Services Digital Network—A type of circuit switched telephone network system, designed to allow digital transmission of voice and data over ordinary telephone copper wires
ISUP: ISDN User Part—Part of the Signaling System #7 which is used to set up telephone calls in Public Switched Telecom Networks.
MAP: Mobile Application Part (MAP)—A GSM protocol that provides an application layer for the various nodes in the core mobile network to communicate with each other in order to provide services to mobile phone users
MSC: Mobile Switching Center—The component of a cellular system that carries out switching functions and manages the communications between mobile phones and the Public Switched Telephone Network.
PRI: Primary Rate Interface—A telecommunications standard for carrying multiple voice and data transmissions between two physical locations.
PSTN: Public Switched Telephone Network—The concentration of the world's public circuit-switched telephone networks, in much the same way that the Internet is the concentration of the world's public IP-based packet-switched networks.
SGSN: Serving GPRS Support Node—The component of a cellular system that keeps track of the location of an individual mobile station and performs security functions and access control for Internet Protocol packet services in GSM cellular packet networks.
SIGTRAN: The name given to an IETF working group that produced specifications for a family of protocols that provide reliable datagram service and user layer adaptations for SS7 and ISDN communication protocols.
SS7: Signaling System #7—A set of telephony signaling protocols which are used to set up the vast majority of the world's PSTN telephone calls.
TDM: Time Division Multiplexing—A method for sending multiple digital signals along a single telecommunications transmission path.
VoIP: Voice over Internet Protocol—The routing of voice conversations over the Internet or any other IP-based network.
Configurations: The solution enables various configurations to be deployed.

    
    
        Pure enterprise call control in which the GS is located at the enterprise site (GS-E) as shown in FIG. 4A (denoted as GS). The GS-E interfaces with the cellular network nodes supporting SS7 and SIP or other messaging with the carrier network. The carrier network must be able to address the GS-E in order to send and receive messages.
        Split call control between carrier and enterprise in which the GS located at the enterprise (GS-E) interacts with a GS at the carrier (GS-C) as shown in FIG. 4B. The connection between the GS-E and the GS-C can be SIP or other protocols. This configuration typically enables the carrier network to have a central point of control for interacting with multiple enterprises, and may not require the use of SS7 messaging to the enterprise—instead it is possible to have a secure IP connection supporting SIP. This is also useful for offering a Centrex solution for interconnecting with a carrier-hosted PBX, or for interconnecting a carrier-hosted GS with enterprise-hosted PBX systems. The GS-C supports an SS7 point code multiplexer in which only one or two point codes are needed to address all enterprises, since the GS-C can identify for which enterprise the message is intended. The GS-E is able to provision the GS-C automatically over the IP interface to manage subscribers, e.g. to add new pilot DNs for new subscribers. In this case the triggers used by the originating and terminating triggers used in the cellular network for routing the calls to the GS-C can add identifying information of the specific enterprise in the triggering messages (e.g. ORREQ). Alternatively the GS-C can identify the enterprise based on the calling party information.
    
    


The following description is based on FIG. 4A and illustrates one operation of the invention. When an employee originates a call, the information is transmitted to the MSC where the subscriber's profile is examined. The subscriber profile, previously downloaded to the MSC from the HLR when the subscriber activated and registered on the network, contains information that might say they have no voicemail service (since they are using the enterprise voicemail system), no three-way calling capability (since they are using the enterprise conference bridge capabilities), and have an Intelligent Network trigger for call originations, terminations and mid-call triggers. These triggers direct the MSC to query an SCP (Service Control Point) to analyze the digits dialed and decide on how to continue to route the call. The SCP is addressed using standard SS7 point codes. Alternatively, in an IMS architecture, the SCP can be an IMS SIP Application Server that is addressed via IP addressing instead of an SS7 point code. The gateway server acts as the SCP and receives the message where it communicates with the PBX to determine the routing of the call based on criteria such as whether the call should be directed into the enterprise to send to a local device, redirect over corporate least-cost methods, requires monitoring, or if the call should be routed directly by the carrier if, for example, the destination is to another subscriber on the same network in the same calling area and does not need to be monitored. The gateway server then responds to the MSC with the routing instructions. In the case where it has been decided to route the call into the enterprise, the MSC may be instructed to route the call over the PSTN network, or alternatively and preferred, the MSC may be instructed to route the call to a soft-switch which will connect the cellular TDM call waiting in the MSC to a Media Gateway which will convert the TDM to VoIP and route the IP-based voice traffic to the enterprise. The media is then redirected at the enterprise to the destination by either the gateway server or the PBX. In some cases, the gateway server may act as a back-to-back user agent (B2BUA) to the PBX in which the incoming call from the MSC is directed to be routed to a destination that is the B2BUA via the PBX. The gateway server, acting as the B2BUA, can then establish a new call leg to the original destination through the PBX (based on the information received when the gateway server was acting as the SCP/IMS SIP Application Server), and then connect the incoming call from the MSC to the new call leg.
Current enterprise PBX systems are developed to be ‘enterprise grade’ in terms of their reliability and availability, compared with carrier network systems which are ‘carrier grade’ with failover solutions to prevent or minimize interruption of service. Enterprise PBX systems are by design not as reliable as carrier networks. With the gateway server solution of the present invention, overall system availability is increased as the gateway server intermediates between the carrier and enterprise networks. If the PBX goes down, the gateway server 10 can instruct the carrier to route calls on behalf of the enterprise until the PBX is back in service. In the event that the gateway server 10 should go out of service, the architecture of the invention is such that the carrier network will automatically take over the calls, with only nominal delays in routing (for example, a timeout event may occur in the MSC, after which the MSC will continue).
Many cellular carriers today allow free calling between subscribers on the same networks (e.g. Verizon to Verizon, T-Mobile to T-Mobile). This is partly because the call is maintained within the cellular carrier's own network, thus no PSTN (Public Switched Telephone Network) interconnect charges apply to the carrier. In addition, to call from a cellular phone on one carrier to a cellular phone on another carrier, or from a cellular phone to a landline phone requires the call be routed through the PSTN, thus incurring PSTN interconnect charges to the carrier.
One architecture of the present invention as shown in FIG. 5 employs VoIP (Voice over Internet Protocol) to interconnect the carrier's cellular network, via a managed IP network or the Internet, with the enterprise network, eliminating PSTN interconnect charges to the carrier where allowed (certain countries do not allow bypassing PSTN interconnect). As a result, employing this solution enables cellular calls from an enterprise user on one cellular network to connect with another enterprise user on a different cellular network without incurring PSTN interconnect charges for either cellular carrier thereby reducing the cost for the cellular carriers to service the enterprise calls. This is because the call is routed by the gateway server from the first cellular carrier into the enterprise using VoIP, and from the enterprise out to the terminating cellular carrier using VoIP.
Similarly, cellular calls from enterprise users to landline phones are also transitioned from the cellular network to the enterprise over VoIP, and are connected with the PSTN at the enterprise's PBX instead of being connected to the PSTN from the cellular network. Again, this reduces the cost for the cellular carrier to service enterprise calls.
For the enterprise, PSTN interconnect charges are included as part of the landline subscription. North American landline calling plans are typically ‘all-you-can-eat’, with no per-minute charges for local PSTN interconnection. In Europe and other parts of the world, landline calls are charged per time interval (e.g. per minute, or per 6-second interval), however at a substantially lower connection charge than for cellular calls.
The diagram of FIG. 5 outlines the architecture using VoIP between the carrier and the enterprise. The Gateway Server-Carrier (GS-C) is located in the carrier site. The Gateway Server-Enterprise (GS-E) is located in the various enterprise sites. GS-C supports carrier network SS7 and IP signaling within the carrier's network environment. The GS-C may contain information about multiple enterprises that use the present invention including information about the individual enterprise network configurations. The GS-C may also contain certain subscriber information for employees of the enterprise that assists the GS-C in optimally routing the calls or handle emergency situations. The GS-C communicates with the GS-E sites to determine if the cellular call should be routed into the enterprise network, and if so what is the closest point of attachment. Advantageously, the interface between the GS-C and GS-E is typically all IP-based—SIP, SIGTRAN or even an encapsulation of cellular protocols such as GSM MAP or ANSI-41 within IP or SIP. The GS-E interfaces with the enterprise PBX. Once the optimal routing is defined, the GS-E informs the GS-C. The GS-C communicates with the carrier's softswitch and media gateway to establish a bearer path that converts the TDM voice from the MSC to VoIP to be delivered to the enterprise. Once the bearer is connected with the enterprise, it is redirected to the appropriate destination using the bearer resources of the enterprise, such as VoIP connections to other offices, leased lines, or PSTN. The signaling and bearer traffic may traverse Session Border Controllers at the carrier and enterprise sites.
One preferred call flow for Call origination is shown in FIG. 6, and is as follows:
1. Origination Request received from Wireless Network
2. Info message used to query GS-E about mobile origination policy for subscriber
3. info message received by GS-C with mobile origination policy
4. Response is returned to ORREQ giving GS-C as the destination of the call
5. SS routes call to GS-C
6. GS-C—conveys the now call initiation to the GS-E
7. GS-E provides routing information to GS-C to get the mobile subscriber's call to route to their home PBX
8. Receipt of routing information is acknowledged by GS-C
9. The call is responded to providing the new contact address for GS-E.
10. Rerouting response is acknowledged
11. The call invitation is routed to GS-E
12. Media Server ports are requested—so that digits dialed can be capture for feature invocation
13. The media server responds with the ports allocated.
14. GS-E sends the call invite to the PBX for routing to the intended destination—user B
15. The PBX forwards on the Call invite to the User 8
16. User B indicates that ringing is occurring
17. The PBX sends the ringing indication onto the GS-E box
18. The GS-E box propagates the ringing indication to the wireless network
19. User 8 answers the call
20. Answer is sent by PBX to GS-E
21. GS-C provides the destination port information to the Media Server
22. Media Server acknowledges request
23. GS-C sends response to call onto wireless network
24. Answer is acknowledged by wireless network
25. GS-C propagates the acknowledgment to the PBX
26. PBX propagates the acknowledgment to User B
27. User B hangs up the call
28. PBX propagates the BYE to GS-E
29. GS-E, releases the media Server context
30. Media Server acknowledges the release
31. GS-E propagates the Bye to the wireless network.
One preferred call flow for effecting Call Delivery using VoIP is shown in FIG. 7 and is as follows:
1. Call Originates to PBX
2. PBX delivers call invite to User B desktop phone
3. PBX forks the call—delivers call invite to GS for wireless user
4. GS-E allocates a media port to insert into the call path
5. Media Server acknowledges media resource allocation
6. User B indicates that ringing is occurring on desktop phone
7. Invite for mobile phone is sent into GS-C
8. GS-C using the Location Request—asks for the Temporary Routing number required to deliver call to endpoint
9. Wireless network responses with the TLDN
10. GS-C tells GS-E to redirect the call to the TLDN
11. 302 Response is acknowledged
12. GS-E routes the call to the TLDN
13. Wireless network indicates that ringing is occurring on wireless phone
14. GS-E propagates ringing to PBX for wireless end point
15. Wireless phone indicates that call has been answered
16. GS-E box modifies media context to include the wireless port number information
17. Media server acknowledge update of media context
18. GS-E sends OK to PBX to acknowledge answer of call
19. PBX cancel the call log to User B
20. PBX acknowledges call answer to GS-E
21. GS-E propagates ACK to wireless network
22. User B acknowledges the cancel request
23. PBX acknowledges receipt of the request terminated message.
One preferred call flow for effecting Mobile termination using VoIP is shown in FIG. 8 and is as follows:
1. Termination Trigger indicating that call has been terminated to Mobile number
2. GS-C requests termination policy from GSE
3. GS-E returns termination policy and based on policy routes call into enterprise for handling
4. GS-C reroutes call into Enterprise for handling
5. Call arrives at GS-E for handling
6. GS-E allocates media ports for feature invocation
7. Media Ports and allocate and response is returned
8. GS-E ask PBX to route call to appropriate end point
9. PBX sends invite to end point
10. End Point starts ringing the end point
11. Ringing indication is sent back to GS-E
12. Endpoint answers the call
13. Response is relayed to GS-E
14. Media Ports are modified to reflect end point IP address/port
15. Media Server confirms that ports have been set up
17. Ack confirms that bearer path is set up to PBX
18. Ack confirms to end point that bearer path is set up








TABLE 1





Benefit
Description







Increased personal
The gateway server's cellular access enables anytime, anywhere


and workgroup
accessibility using the enterprise's corporate PBX network. Extending


productivity
voice and other applications such as e-mail and instant messaging with



mobility creates immediate productivity improvements.


Lower Long
Because the gateway server solution includes routing all enterprise users'


Distance Costs
cellular calls through the enterprise Voice over IP network, voice traffic



is always routed efficiently and takes advantage of the enterprise's low



cost long distance services. The higher volume of traffic also enables the



enterprise to negotiate better rates from their long distance service



provider.


Seamless integration
Using Voice over IP technology, the gateway server integrates


with the enterprise
seamlessly with the enterprise's existing PBX solution. Additionally, the


PBX and IT
gateway server provides a platform for tightly integrating wireless access


applications
with IT applications. Examples of these applications include e-mail,



instant messaging, sales force automation, enterprise resource planning,



field support, time reporting, customer billing, etc.


Control of a Mission
The gateway server enables the enterprise to control its cellular service


Critical Service
both from an administrative perspective and a disaster recovery



perspective. For example, the gateway server lets the enterprise and/or



the employee handle the provisioning of their own services. Additionally,



the gateway server supports geographic redundancy, such that in the



event of a disaster at one location, all control is transferred to the backup



installation.


Leverages existing
The gateway server solution allows the enterprise to re-use other voice


enterprise
and data infrastructure for both desktop and cellular use- One key


infrastructure
example is the enterprise voice mail system: Both the desktop phone and



wireless phone can forward to the same voice mail box operated by the



enterprise. Message waiting indicators can be turned on and off on both



phones simultaneously.


Enables “best-
The gateway server enables the enterprise to monitor and record cellular


practices” control
phone calls, just as they can do with deskphone calls today. This supports


procedures
“Sarbanes-Oxley”-like control procedures that are being implemented by



major corporations for best practices.


Seamless cellular
The gateway server solution includes the necessary business agreements


service, globally
(including roaming agreements) to enable enterprise users to have



seamless cellular access all over the world.


Higher Control for
Companies typically allow an employee to choose their own cellular


the Enterprise
phone, plan and carrier. Unlike the desktop phone, the company has no



controls over how the employee uses the cellular phone. The gateway



server solution provides for a policy-based service provisioning:



Employees are given a profile which defines what kind of calls they can



make.



Today, when the employee terminates their employment with the



company, they keep their phone and cellular phone number. As the



company's customers have been given this number, they will continue



calling the employee after he has left the company. With the gateway



server solution this situation will not occur as the company is now in



control of both the mobile device and cellular number. Calls to an un-



used number can be intercepted and handled appropriately.


Convenience of One
Enterprise users will no longer have to give out both desktop and cellular


Number
numbers. The gateway server solution integrates seamlessly with the



enterprises PBX and enables advanced services like “One Number”.


Single corporate
The gateway server and the enterprise PBX can share a common dialing


wide dialing plan
plan. This means that four or five digit dialing available on the desktop



phone can also be used on the cellular phone (both in and out of the



office). It also means that all cellular calls will be routed in the same way



a call originated from a desktop is routed.


Lower
Using the gateway server solution, the enterprise always receives the


Administration
lowest negotiated rate for both cellular voice and cellular data traffic. The


Costs
gateway server decides whether to route the call into the enterprise to be



routed over the enterprise network, or to instruct the cellular network to



proceed with routing the call (for example, if one enterprise user is



calling another enterprise user on the same cellular network, and neither



user is marked for the conversation to be monitored).



Neither the enterprise nor the employee have to evaluate the different



plans the cellular operator offers and guess at which one would be best



suited to the employee. Instead, all employees are part of the single



corporate negotiated plan. Additionally, costs involved in expensing and



reimbursing employee cellular phone costs are eliminated.


Security
As the gateway server includes the wireless data router, security



vulnerabilities are reduced as data traffic is never “exposed” outside of



the enterprise.









The invention enables a multi-dimensional paradigm change that has profound effects on the overall industry, as it will not only change how enterprises purchase and use cellular service—but will ultimately impact the entire value chain for wireless and wireline service providers and manufacturers.
The gateway server 10 architecture enables the migration of centralized call control from the cellular carrier networks to distributed call control throughout individual enterprise networks. The gateway server 10 enables cellular service to effectively be “plugged-in” to the PBX, similar to how local and long distance service are connected to current PBXs.
As a result of gateway server 10 capability, enterprises are equipped for carriers to compete for the enterprise's cellular PBX service as they do today for local and long distance interconnection with the PBX. By winning the business, carriers will benefit from locking in large numbers of users while significantly reducing its sales, marketing, and acquisition costs since service minutes will be sold bulk to the enterprise as a whole, no longer to individual employees. Though the invention has been described with respect to a specific preferred embodiment, many variations and modifications will become apparent to those skilled in the art upon reading the present application. It is therefore the intention that the appended claims be interpreted as broadly as possible in view of the prior art to include all such variations and modifications.
Advantages of the gateway architecture are shown in Table 2.










TABLE 2







Situation without Gateway Server
Situation with Gateway Server


















Cost for Cellular
High Cost
Low Cost


Service


Asset Reuse
No utilization of enterprise telecom
High utilization of enterprise telecom



assets
assets


Services
Purchase all services from carrier (e.g.
Reuse corporate Voice over IP, least



Long Distance, Voicemail, 3-way
cost routing, voicemail, etc.



calling, etc.)


Devices
Each employee requires a deskphone
Possibility to replace deskphone with



and a separate cellular phone
cellular phone results in less




equipment to support and less




subscriptions


Move-Add-
MAC required every time employee
No MACs required for cellular-PBX


Changes
changes offices for desk phone = time +
users


(MACs)
expense


Control of
Low degree of control - managed
Higher degree of Control for


Cellular Usage
exclusively by carrier
enterprise


Rate
Individual cellular subscription plans
Bulk Rate discount minutes for all




employees


On-Net Routing
Two-stage dialing required. Difficult
Automatic on-net routing, no user



to dial contacts
intervention required


Long Distance
Purchased from carrier - Included in
Bulk rate airtime minutes do not



service plan for national LD, charged
include Long Distance (lower cost to



separately for international at high
enterprise) - any LD calls (national or



rates
international) are routed over




corporate VoIP network: “Forced on-




net”


Tail-end Hop
No Tail-end Flop Off
Tail-end Hop Off for long distance


Off

calls where permitted


Service Provider
Individual employee relationships
Single relationship into Service


Relationship
with carrier
Provider for all corporate subscribers -




Better leverage for negotiating




supply, reduces minutes wasted in




individual buckets


Sales,
Carrier subject to expenses for sales,
Single relationship between enterprise


Marketing.
marketing, subsidies per individual
& carrier: No individual sales,


Customer Care,
subscriber
marketing, subsidies


Subsidies


Customer Care
Provided by carrier
Tier 1 provided by enterprise PBX IT




department, Tier 2 by carrier


Expense
Manual expense handling per
PBX tracks cellular calls - charges to


Handling
employee
appropriate cost center, like landline




calls


VolP Integration
No VoIP integration - all LD from
VoIP integration with carrier



carrier trunks
eliminates PSTN Interconnect




charges; VoIP call routing on




enterprise networks for LD


Policy and
No Policy control
Calls subject to PBX corporate


Control

policies per user (internal calling only,




local calling allowed, national long




distance allowed, international




allowed)


Tracking
Tracking of cellular calls via printed
Cellular calls automatically tracked in



subscriber bill only
PBX


Call Monitoring
Cannot monitor or record cellular
Cellular calls can be monitored and



calls
recorded no matter where subscriber




is located


Reconciliation
No reconciliation for cellular charges
Reconciliation of cellular calls tracked



from carrier
in PBX with carrier records


Integration with
Little or no integration with corporate
Can be integrated with corporate IT


IT Applications
IT applications.
applications, e.g., Corporate Phone




Directory, security/badging systems to




activate/deactivate cellular phone,




corporate ERP, CRM systems


Convergence
Cellular, Local and Long Distance
Possibility for single provider for



from separate carriers
Cellular, Local and Long Distance


One-Number
Separate desk phone and cellular
Opportunity for true single number


service
phone.
for both cellular and desk phone


Device
Through carrier - no customization
Direct from manufacturers.


Acquisition

Possibility to standardize corporate


Customization

device strategy, customize to




enterprise IT needs.









Current Situation

Existing platforms for detecting DTMF digit events fall into one of the following two categories:
Category I) Required to be a terminating end-point for a call session
Category II) Expensive hardware-based solution
Category I) solutions do not allow the call server to provide mid-call services during an active two party call session and therefore do not provide the necessary functionality. Category II) solutions provide the necessary functionality but are too expensive and increase the hardware footprint too much to be viable solutions.
The Solution
One preferred embodiment of the invention includes a new mechanism whereby a VoIP call server can detect Dual Tone Multi Frequency (DTMF) digit events within the bearer stream of a VoIP call session. A call server is defined as being an intermediate node on the signaling path of a call (e.g. a routing proxy) rather than an endpoint such as an Interactive Voice Response (IVR) system. This embodiment of the invention allows the call server to cost effectively provide mid-call services to end clients based on DTMF digit events originated by a client.
This preferred embodiment of the invention, herein as the Packet Engine and shown in FIG. 12, allows a call server to detect DTMF digit events on the call path of an active two party call session using a software only solution. This software only solution provides the requisite functionality in a cost-effective and scalable manner.
The Packet Engine can be advantageously deployed on a separate hardware platform from the call server, on the same hardware platform, or even statically linked into the call server process itself in order to provide both flexibility and scalability. The Packet Engine supports control by multiple call servers in the network. Likewise, a single call server can control multiple Packet Engines providing for a many-to-many relationship.
In one preferred embodiment, the Packet Engine consists of two parts: a user space process as shown in FIG. 13 and a Linux kernel module as shown in FIG. 14. The user space process is responsible for receiving and sending commands to/from the call server. The user space process utilizes the Linux utility IPTables to create port mappings within the IP stack. This advantageously allows RTP media packets to flow from one side of the Packet Engine to another in a highly efficient manner (all forwarding is done within the stack preventing packets from being sent up to the user space process).
The second part of the Packet Engine, the kernel module, allows the Packet Engine to determine which packets being forwarded by the IP stack contain DTMF digits. The kernel module examines the headers of each RTP packet being forwarded and checks the Payload Type field. If the Payload Type field indicates the packet contains a DTMF event (encoded as per IETF RFC 2833) then the kernel module sends the packet up to the user space process for further application level processing. The kernel module advantageously operates as an extension (plugin) to the Linux kernel and therefore allows incoming packets to be examined in a highly efficient manner since the packet never leaves the kernel.
Once in the user space, the DTMF events are reported up to the call server in order to enable feature invocation. The Packet Engine can be supervised by the call server to only look for specific DTMF digit patterns and report them to the call server or it can be supervised to look for and report all DTMF digit events. The Packet Engine utilizes a buffer and an inter-digit timer to determine the start and stop of digit patterns (e.g. *97) in order to differentiate a feature invocation digit pattern from standard DTMF digits being sent to end client application such as an IVR.
The invention also advantageously provides a network-based architecture that enables the support for existing standard cellular handsets, without modifications or client software on the devices. Next generation specialized Wi-Fi and client-based handsets are also supported. By comparison, alternative solutions may require specific expensive specialized handsets with downloadable software clients that need to be managed by the enterprise IT department. The usability of these services is often not as intuitive and simple as using the standard phone capability for making calls, since the software is downloaded onto the device and subject to the device's capabilities and restrictions such as window screen size and soft & hard key programming. In addition, because the client is itself is an application running on the device, the client has to be activated, or ‘turned-on’ to run the application to integrate with the enterprise network. This means it may be possible that the employee chooses not to activate the feature, and thereby continue to make calls on the cellular network that are not tracked, managed, monitored or routed over the corporate network (for least cost routing) by the enterprise's PBX.
Because the described solution is network-based, the employee cannot circumvent the enterprise integration. At the discretion of the enterprise, employees may be permitted to use the cellular phone for personal use, for example on weekends or after work, by tracking these calls and charging them to the employee or deducting directly from their paycheck. The cost of the personal calls may still be at the corporate discounted rates which would thereby benefit the employee.
IMS Architecture
The gateway server 10 is based on the next generation IMS (IP Multimedia Subsystem) architecture as shown in FIG. 10, and is designed to be backward compatible with legacy cellular networks based on existing cellular protocols. This feature enables the gateway server 10 to be futureproof as operators roll out an IMS architecture over time, while still supporting the overwhelming majority of existing legacy networks and devices that do not support IMS.
Current competing solutions are designed using legacy network architecture only, with no support for IMS. Effectively, the gateway server IMS solution adds modules for supporting ANSI-41/WIN and GSM-MAP/CAMEL and AIN protocols to achieve backward compatibility with legacy networks, as shown in FIG. 11.
Legend
BSC: Base Station Controller—Component of a cellular network that connects between the MSC and the Base Station Transceivers that communicate with mobile devices over the air
CAMEL: Customised Applications for Mobile networks Enhanced Logic A set of GSM standards designed to allow an operator to define services over and above standard GSM services based on the Intelligent Network (IN) standards, and uses the CAP protocol.
CAP: CAMEL Application Part—Protocol stack that provides service control for voice & data services and IP multimedia sessions
CCCF: Call Continuity Control Function—Signaling function for ensuring voice call continuity across disparate networks such as from cellular to Wi-Fi networks
IM-SSF: IP Multimedia Service Switching Function—Interfaces with CAMEL Application Servers using CAP
MGCF: Media gateway Control Function—Signaling controller of Media gateways using SIP
MGW: Media gateway—Component of a communications network that converts between different media types (e.g. VoIP and TDM voice) for delivering bearer traffic.
MMSC: Multimedia Messaging System—A system of transmitting various kinds of multimedia contents (e.g. images, audio &/or video clips) over wireless networks using the Wireless Application Protocol (WAP) protocol.
NeDS: Network Domain Selection—Signaling function that controls selection of different access networks for delivering calls
P-CSCF: Proxy Call Session Control Function—The SIP proxy server that is the first point of contact for a terminal with the IMS network
SCP: Service Control Point—A standard component of IN (Intelligent Networks) used to execute and control IN services
S-CSCF: Serving Call Session Control Function—The central IMS SIP server of the signaling plane for controlling sessions
SIP: Session Initiation Protocol—A protocol developed by the IETF for initiating, modifying, and terminating an interactive user session that involves multimedia elements such as video, voice, instant messaging. In November 2000, SIP was accepted as a signaling protocol of the IMS architecture. It is one of the leading signaling protocols for Voice over IP, along with H.323.
SIP-AS: SIP Application Server—IMS element for invoking and controlling services
SMSC: Short Message Service Center—Application for enabling the transmission and reception of text messages on mobile phones
VM: Voicemail—Application for recording and retrieving voice messages
WAP: Wireless Application Protocol (WAP)—Open standard for Internet access from a mobile phone.
WIN: Wireless Intelligent Network—Signaling standard designed to allow an operator to define services over and above standard ANSI-41 services based on the Intelligent Network (IN) standards
The invention also advantageously provides a network-based architecture that enables the support for existing standard cellular handsets, without modifications or client software on the devices. Next generation specialized Wi-Fi and client-based handsets are also supported. By comparison, alternative solutions may require specific expensive specialized handsets with downloadable software clients that need to be managed by the enterprise IT department. The usability of these services is often not as intuitive and simple as using the standard phone capability for making calls, since the software is downloaded onto the device and subject to the device's capabilities and restrictions such as window screen size and soft & hard key programming. In addition, because the client is itself is an application running on the device, the client has to be activated, or ‘turned-on’ to run the application to integrate with the enterprise network. This means it may be possible that the employee chooses not to activate the feature, and thereby continue to make calls on the cellular network that are not tracked, managed, monitored or routed over the corporate network (for least cost routing) by the enterprise's PBX.
Because the described solution is network-based, the employee cannot circumvent the enterprise integration. At the discretion of the enterprise, employees may be permitted to use the cellular phone for personal use, for example on weekends or after work, by tracking these calls and charging them to the employee or deducting directly from their paycheck. The cost of the personal calls may still be at the corporate discounted rates which would thereby benefit the employee.
System and Method for Executing Originating Services in a Terminating Network for IMS and Non-IMS Applications
The invention describes a system and method for executing originating services in a terminating IP Multimedia Subsystem (IMS) network in which a triggered application may or may not support IMS.
One of the benefits of such an invention is to enable an IMS network to interface with a non-IMS network. Another benefit is to enable an IMS network to interface with a second IMS network supporting a non-IMS application. A third benefit is that an originating IMS network need not have to support all originating services for the originator as the invention enables a second network to offer originating services for an originator in a first network.
A Gateway Server acting as an IMS standard-compliant SIP Application Server in a first IMS network can communicate with a corresponding GS in the terminating network to enable origination services to be executed in the terminating network even if the terminating network is not IMS-compliant. The GS-C is typically located in the wireless carrier network which may be IMS-compliant, while the GS-E is typically located in the enterprise network which may or may not be IMS-compliant. This application server in the enterprise could be a PBX which effectively serves subscribers in a manner similar to an IMS Serving-CSCF, however does not support IMS interfaces.
Irrespective of whether the terminating network is IMS-compliant or not, the described architecture in which a GS is acting as an IMS-compliant SIP-AS within the IMS network interfacing with a GS in another network enables this second network to offer origination services separately from the first network.
For this to occur, the session, when passed to the GS-C application server, is redirected into the terminating network, which could be an enterprise. This is performed by resetting the destination address to an enterprise specific address and instructing the wireless network route that session into the foreign domain of the enterprise network. GS-C may communicate with the GSE directly outside the IMS network, or through the stand IMS network messaging.
To enable the execution of originating services within the terminating network, the GS solution enables the enterprise network to provide those services by passing the session to a PBX as if it were a request for originating services. Therefore two types of originating services can be executed—those in the wireless carrier network (the originating network) and those of the enterprise (the terminating network).
In a similar manner, termination services are executed in the terminating network. When a session is terminated to an enterprise user, the GS solution enables the PBX to execute its terminating services for that user, and then pass the session to the IMS network as a termination such that the terminating wireless carrier may also apply terminating services for the terminating mobile subscriber.
FIG. 15 outlines the current IMS standard definition in which an IMS device A originating a session with the carrier IMS network communicates with the data gateway (1) which forward to the P-CSCF (2) which ultimately communicates with the Serving-CSCF (3). The S-CSCF triggers on the Initial Filter Criteria (IFC) to one or many SIP-AS which perform the origination services for user A prior to routing the session (6) to the destination in the terminating carrier IMS network through the I-CSCF to user B's S-CSCF (7).
The S-CSCF then triggers on the IFC to one or many SIP-AS which perform the terminating services for User B (8)-(9) prior to terminating the session through the data gateway (11) to user B.
FIG. 16 outlines the invention whereby the steps 1 through 5 are the same as previously described, whereby the GS-C represents a SIP-AS that is triggered by the IFC. The GS-C may communicate with the GS-E directly (8) to prepare it for an upcoming communication (9), in which case the GS-C/E are treated as a complex by the originating network's S-CSCF. Alternatively the GS-C can communicate with the GS-E entity through the standard IMS interfaces (9). In either case, the S-CSCF then routes the session (9) to the destination in the terminating carrier IMS network through the I-CSCF as part of the GS-E, to user B's S-CSCF (10), which may act as a front-end converted to a non-IMS application such as a PBX. In this case the S-CSCF Front End (FE) converts the IMS messaging into the corresponding SIP-AS service-invocation messages of the non-IMS application (11).
The FE may convert the terminating services request to an originating services request prior to communicating with the terminating service (11). This allows the terminating service to invoke services as if it were an originating node. For example, the PBX can perform originating services such as invoking call policy (restrict user A from dialing international) prior to routing the call.
Once the originating services are executed, the non-IMS application can then perform terminating services. For example, the PBX could invoke destination services for user B to route calls from user A to voicemail.
In the case where the terminating network application were IMS-compliant (e.g. an IMS-compliant PBX), the FE would convert the terminating services request to an originating services request prior to communicating with the IMS-compliant application (11), and once the originating service has been performed, the application would return control to the FE which would then invoke another service request back to the IMS-compliant application to perform terminating services.
System and Method for Enabling Multi-Line Mobile Telephone Service on a Single-Line Mobile Telephone
Another embodiment of the invention includes a system and method for enabling a multi-line mobile telephone service using a single-line mobile telephone. The embodiment of invention applies to various network architectures used in communications systems including legacy mobile network architecture based on SS7, GSM-MAP and/or ANSI-41, as well as the next generation IP Multimedia Subsystem (IMS) network architecture.
One of the benefits of this embodiment is enabling a subscriber to manipulate the outgoing caller identification information when originating a call, such that the called party will see the identity (including the phone number and name information) that was selected by the calling party.
An example of this embodiment of the usage of the invention might be a doctor whose patients are directed to call a special phone number to reach the doctor after hours. The doctor can set the special after-hours phone number to forward to their mobile phone using existing solutions that exist today. This way the doctor need not give out their personal mobile phone information. When a patient calls the special after-hours phone number, the call is forwarded to the doctor's mobile phone without revealing the doctor's mobile phone number to the patient.
However in the reverse case, this embodiment of the invention enables the doctor to call a patient from their mobile phone without revealing their mobile phone number. This is done by enabling the doctor to select a specific outgoing line from which to originate the call on their mobile phone. The patient will see the calling party identification information of the outgoing line selected by the doctor, which could be the special after-hours phone number, not be the doctor's mobile phone number.
The function of this embodiment of the invention is described below. This feature can operate in a legacy mobile network architecture such as GSM-MAP or ANSI-41, or in a next generation architecture such as IMS.
Outgoing Call Handling
Prior to originating an outgoing call the calling party can identify the outgoing line information using various means such as:

    
    
        On a per-call basis, dialing a prefix to the outgoing number such as #542 or *542 (where 54 are the digits that represent the letters LI on a telephone keypad) indicating to use Line 2. Thus the digit string might be *542-212-481-2813 <SEND>
        On a permanent calling basis, dialing a feature-activation code such as #542 or *542 indicating to use Line 2 for all outgoing calls until a subsequent instruction is received. The digit string might be *542 <SEND>. The subscriber can then dial any outgoing call such as 212-481-2813, and the call will be originated from Line 2.
    
    


Referring to FIG. 17 and FIG. 18, to enable this capability, a Gateway Server Carrier (GS-C) acting as an IMS standard-compliant SIP Application Server in an IMS network architecture, or acting as an SCP (Service Control Point) in a legacy network architecture, will be triggered by the network to invoke a service. In the IMS case this trigger typically results from the Initial Filter Criteria (IFC) that is derived from the subscriber's Home Subscriber Server (HSS) profile and utilized by the Call State Control Function (CSCF). In the legacy case this trigger results from an intelligent network trigger that is originated from the Mobile Switching Center (MSC) based on the subscriber's Home Location Register (HLR) profile.
Once the trigger is received in the GS-C containing the digits dialed by the subscriber, the GS-C can then invoke the service whereby it can communicate with a Gateway Server Enterprise (GS-E) located in an enterprise. The GS-E can then originate an outgoing call to the intended destination using the outgoing line including the appropriate calling line information selected by the subscriber, and then connect that outgoing call leg to the originating call leg from the subscriber.
In the case of a per-call invocation of the multi-line service, subsequent calls made from the mobile phone would have the line selection default back to either a primary line, or to the last line selected in a previous call. For example, if a user's primary line is 212-814-4490, and they originate a call with digits *542-212-481-2813 indicating to use line 2 to call to destination 212-481-2813, then if the same subscriber subsequently dials another number such as 212-777-2222, this call would originate from either the primary line 212-8144-490 or from the previously selected line 2 from the previous per-call invocation of *542-212-481-2813. Thus the called party (212-777-2222) would see the calling party information as either the primary line 212-814-4490, or the previously per-call selected line 212-481-2813. The preference of whether subsequent calls should default back to the primary line or to the last line selected in a previous call can be defined by either the service provider, the system administrator or the user if permitted.
In the case of a permanent invocation of the multi-line service, all subsequent calls to the feature invocation (i.e. following the dialing of *542 indicating the selection of line 2), would continue to use line 2 until changed by the user, the system administrator or a function such as a timer or external application. For example, a calendar event could automatically reset a doctor's outgoing mobile phone line back to the daytime office number beginning each morning.
Additionally, a user may select a personality or profile based on various criteria (such as the user being at work, in a meeting, at home outside of work hours, etc.). The personality or profile can be selected manually or automatically set based on criteria such as whether the employee has badged into the office or has logged into their work computer, Time-of-Day or Day-of-Week information, or other criteria. The personality or profile would determine the outgoing line to be used—such as a personal line when after six in the evening, or when the user has badged out of the office or has logged out of their work computer. Additionally the personality or profile could determine which voicemail system to use, in addition to the customizing and tailoring of other services.
Incoming Call Handling
Referring now to FIG. 19, for incoming calls on various lines that are to be directed to the subscriber's mobile phone, the calling name and number information may be preceded with supplementary information to indicate which line was called. For example, an indicator such as 2# could precede the incoming calling name or calling number information to indicate the call came in on line 2. Simultaneously or alternatively a distinctive ring can be invoked instead of the standard ring, to indicate which line was dialed by the calling party.
Note in some cases replacing the first set of digits (such as the area code digits) with the line information may be preferred instead of prefixing the line information to the full digits in order to preserve the display formatting on certain mobile phones. This is because certain mobile phones support only ten digits in the display, therefore if line information is prefixed to the digits, the ending digits would not appear in the display.
Incoming calls on various lines that are intended to be routed to the subscriber's mobile phone terminate at the GS-E. The GS-E identifies the destination mobile phone to which the incoming call should be routed based on various criteria such as time-of-day, day-of-week, permanent settings, or other user/administrator settings for determining call routing.
If the GS-C has the ability to originate outgoing calls then the GS-E orders the GS-C to originate a call to the subscriber's mobile phone with the calling name and number information of the calling party prefixed with supplementary information to indicate which line was called, and/or with a distinctive ring indicator. Once the outgoing leg is established, the GS-C connects the outgoing leg to the incoming call leg in the control of the GS-E.
If the GS-C does not have the ability to originate calls then the GS-E originates the outgoing call to the subscriber's mobile phone with the calling name and number information of the calling party prefixed with supplementary information to indicate which line was called, and/or with a distinctive ring indicator. Once the outgoing leg is established, the GS-E connects the outgoing leg to the incoming call leg.
FIG. 20 is a flow diagram of a method for speeding call originations and terminations to a variety of devices using intelligent predictive techniques for call routing in accordance with an exemplary embodiment of the present invention. The method begins at step 1, where the user dials the destination digits. The mobile device then originates the call over a mobile voice connection to the Cellular Radio Network. At step 2, the Radio Network sends the destination digits to the Cellular Switching Network. The Switching Network then sends the destination digits to the GS-C at step 3. At step 4, the GS-C identifies the user and informs the appropriate GS-E for the user. The GS-E then processes the origination and destination information to decide when to originate a call to the destination, and the process proceeds to step 5.
At step 5, the voice path is established between the mobile device to the Radio Network, and at step 6, the voice path is established between the Radio Network and the Switching Network. The GS-E then orders the Gateway at step 7 to originate a call to the destination. At step 8, the Gateway originates a call to the destination digits via the PSTN or a VoIP network. The PSTN or VoIP network then routes the second call to the destination at step 9. The voice path is then established between the Gateway and the PSTN or VoIP network at step 10, and the voice path is established between the PSTN or VoIP network and the destination at step 11.
At step 12, the Switching Network routes the call to the Gateway. At step 13, the Gateway informs the GS-E of the incoming call, and the GS-E records the event. The process then proceeds to step 14, where the voice path is established between the Switching Network and the Gateway. The Gateway then joins the original incoming call with the second outgoing call at step 15.
In operation the process shown in FIG. 20 speeds call originations and terminations to a variety of devices, using intelligent predictive techniques for call routing based on the historical data of the length of time required to establish a call to a destination. Thus, the amount of time that a user appears to wait until being joined with a called party can be decreased.
FIG. 21 is a flow diagram of a method for enabling secure VPN-less data sessions for connecting mobile data devices with an enterprise data network in accordance with an exemplary embodiment of the present invention. The method begins at step 1, where a user operating on a cellular network invokes a request to establish a data connection between the mobile device and the Cellular Radio Network. The method then proceeds to step 2, where the Radio Network sends the request to the SGSN. At step 3, the SGSN forwards the request to the appropriate GGSN which is the GS-C. The GS-C supports the GGSN interface to the SGSN within the cellular network. The method then proceeds to step 4.
At step 4, the GS-C forwards the request to the appropriate GS-E for the user, and the data bearer is established between the mobile device and the Radio Network at step 5. The method then proceeds to step 6 where the data bearer is established between the Radio Network and the SGSN.
At step 7, the data bearer is established between the SGSN and the GS-C. The method then proceeds to step 8 where the data bearer is established between the GS-C and the GS-E which supports the selectable security and encryption. At step 9, the GS-E supports the GGSN interface to the data network within the enterprise, and data destined for the Internet passes through the enterprise firewall at step 10.
In operation, the method of FIG. 21 enables a secure VPN-less data session for connecting mobile data devices with an enterprise data network, such as by using the GPRS tunneling or other enterprise-preferred security protocols or in other suitable manners.
FIG. 22 is a flow diagram of a system and method for enabling call originations using a mobile data connection and hotline capabilities in accordance with an exemplary embodiment of the present invention. The method begins at step 1 where a subscriber profile is downloaded to the MSC with the hotline feature active prior to the user originating a call. The method then proceeds to step 2 where the user originates a call by dialing destination digits. The mobile device sends the destination digits over a mobile data connection to the Cellular Radio Network. The method then proceeds to step 3.
At step 3, the Radio Network sends the destination digits to the Cellular Switching Network, and the method proceeds to step 4 where the Switching Network sends the destination digits to a Data Gateway. At step 5, the Data Gateway sends the destination digits to the Application Server. The Application Server stores the origination and destination digits.
At step 6, the mobile device originates a call over a mobile voice connection to the Radio Network, and the method proceeds to step 7 where the Radio Network connects the call to the Switching Network. At step 8, the voice path is established between the mobile device to the Radio Network. The method proceeds to step 9 where the voice path is established between the Radio Network and the Switching Network. The Switching Network then routes the call to the Gateway based on the hotline feature at step 10.
At step 11, the Gateway informs the Application Server of the incoming call. The Application Server uses the origination digits to identify the call. The Application Server then orders the Gateway to accept the call and to originate a second call to the destination digits at step 12, and the method proceeds to step 13.
At step 13, the voice path is established between the Switching Network and the Gateway. The Gateway then originates a call to the destination digits via the PSTN or a VoIP network at step 14, and the method proceeds to step 15 where the PSTN or VoIP network routes the second call to the destination. At step 16, the voice path is established between the Gateway and the PSTN or VoIP network. The voice path is then established between the PSTN or VoIP network and the destination at step 17, and the Gateway joins the original incoming call with the second outgoing call at step 18.
In operation, the method of FIG. 22 enables call originations using a mobile data connection with hotline capabilities such that the routing of the call is controlled by an external network.
TECHNICAL ADVANTAGES
1. Provisioning: The gateway server may also support a provisioning engine for provisioning the functions of the server itself, as well as provisioning external nodes including the enterprise PBX and the public carrier cellular network nodes. It may be possible that the gateway server provisioning engine (GSPE) front-end the entire PBX and be used to provision all data in the PBX. Alternatively the GSPE may be used to provision all functions in the PBX related to a cellular subscriber including their landline information, or it may be used to provision only the cellular portion of PBX subscriber information. In the cellular network, the GSPE may be used to provision the HLR/HSS of the carrier to modify existing service profiles for employees that are currently subscribers of the operator's network and are being transferred to the new service plan for enabling this service. The GSPE may also be used for provisioning new subscribers to the service that were previously not subscribers of that operator. The GSPE may also be used for provisioning other nodes in the cellular network such as a Foreign Agent, Home Agent, soft-switch, MSC, SGSN or GGSN. These functions would typically be provisioned with routing information used for enabling the service.
2. Method for speeding up call originations/terminations by using predictive techniques for routing half call, using intelligence to decide when to route calls to different devices based on presence, routes, TOD, distance. Calls routed to/from a subscriber of this service typically occurs in two stages, e.g. from the cellular network to the enterprise, and from the enterprise to the destination. Since the gateway server is notified in the first stage of the originator and the desired destination, it is possible for the GS to begin routing the second leg prior to the first leg's bearer being established. Using intelligence of the destination route combined with knowledge from past experience in the time it may take to route to a certain destination using a particular method or link, the GS may predict the moment at which it should begin routing the second leg of the call in anticipation of receiving the indication that the bearer for the first leg being established such that the two legs can be connected together with no delays. This technique can be used to minimize the chances that the second leg will be established and answered by the destination party before the first leg is setup. Conversely, this technique may minimize the wait of the originating party for the second leg to be established since the first leg need not be completely established to the enterprise before routing of the second leg is started. The GS may continuously update its information with intelligence about the routing times for specific destinations, and use this information in deciding the timing of setting up the call legs in order to minimize the end-to-end call establishment time.
3. Enterprise Call presence for mobile phones: Because the GS is located in the call path, the GS maintains knowledge of when a subscriber is active and available for calls, and also when a subscriber is currently in an active call. The GS can share this information with applications that may be used to, for example, indicate to other users that the subscriber is currently busy in a call. When the subscriber terminates the call, this information can be used to inform another user that the subscriber is available to receive a call. This presence information can also be provided to other presence servers that may be outside the enterprise site including with the carrier.
4. Enterprise HLR/HSS: The invention enables the distribution of HLR/HSS subscriber information among multiple sites within the enterprise. For example, the HLR/HSS information may be distributed according to the various PBXs in the enterprise network such that cellular information is stored at the site where the subscriber has a PBX subscription. The location of this information within the enterprise can be hidden from an outside entity such as the public carrier network such that an outside entity need not have to know where it is stored in order to access it. Any point of entry to the enterprise network may be able to locate the information of a particular subscriber.
5. Data—VPN-less session setup for enterprise. The invention enables a GGSN or HA to be including in the GS in the enterprise such that a secure data session can be established automatically between a device on the cellular network and the enterprise network by establishing a GTP tunnel between the carrier-hosted SGSN and the enterprise-hosted GGSN. In addition, in the case where there is a GS-C located in the carrier network that interfaces with GS-Es in the enterprise network, it is possible for the invention to add additional security and encryption specific to the enterprise's needs between the carrier's network and the enterprise. In this configuration, the function of the GGSN can be split between the GS-C and the GS-E such that the carrier network interfaces with the GS-C hosted within the carrier site, while the GTP tunnel and secure encrypted data session can be drawn out to the GS-E hosted within the enterprise. All data traffic to/from the mobile device will traverse the enterprise and its associated secure firewall. Billing for the wireless carrier can be supported within the carrier's network via charging records being generated from the GS-C. Enterprise charging records can equally be generated within the enterprise from the GS-E in order to enable the enterprise to keep track of usage and be able to compare with service bills from the carrier received at the end of a billing cycle.
6. Alternative methods for handling call originations: Using SMS and Hotline for call originations: Alternative solutions can be used in place of Intelligent Network triggers such as WIN or CAMEL for communicating with an SCP function in the enterprise. One technique is to use a method such as Short Message Service (SMS) to send the origination information from a mobile to an application server in the enterprise, and then to enable a “hotline” feature in the subscriber profile that forces the mobile to route to a specified destination no matter what is dialed. The hotline feature is often used to route to customer service when a new phone is being setup. In this case the hotline feature would route all calls to a destination that would ultimately route into the enterprise network, either using VoIP or PSTN. By sending the origination information including the originating subscriber number and the destination digits to the application server in advance of the hotline call, this information can be used to identify the incoming hotline call, and re-route it to the desired destination. In order to be able to use SMS in this manner, it may be required to have a special client on the device that captures the digits and sends them in an SMS to a specific server. Alternatively this functionality could be built into the device natively thus not requiring a software client. Note in this case that the destination SMSC may also be the GS instead of the carrier's SMSC since it is important that this information be delivered in real time, and not delayed through store-and-forward in the carrier's SMSC. Otherwise the routing of the call could be delayed.
An alternative routing method does not require the hotline feature to be activated. Instead, when the SMS message is received at the application server, the application server can originate calls to the destination and to the originator's device. The originator would answer the phone and be connected with the second leg. If a client is on the device, the client may automatically answer the incoming call from the application server without ringing so as to appear as if the call was established by the originator's device when the SMS was sent. Other methods other than SMS for delivering the origination message may be used such as over-the-air messages and/or Unstructured Supplementary Service Data (USSD). Another alternative provides that originating calls are routed based on the subscriber profile to specific routes or trunk groups within the MSC. The destination routes to the GS which captures the original calling and called party information. The GS can analyze the routes and re-route the call accordingly, for example into the enterprise using VoIP.
This solution also enables the GS to manipulate call legs to be able to perform handovers (or handoffs) between, for example, a wi-fi network and a cellular network by enabling the GS to establish a new call leg for a call in progress and join or switch the failing call leg to the new leg. Similarly this kind of call leg manipulation can be used to maintain or reconnect a call that has been lost—for example if a subscriber enters a tunnel where there is no cellular coverage and therefore the call leg is lost, the GS can decide to maintain the other call leg up and potentially treat the leg by playing a message to inform the party that the call is being reconnected. The GS can then proceed to re-establish the call leg by establishing an outbound call to the device once they exit the tunnel, or having the device originate a call back to the GS if the device has a software client—and then the GS can reconnect the legs together, or the user manually originates a call back to the GS.
7. The combining of cellular nodal functions in a single functional entity: GMSC, GGSN, SCP, IMS SIP Application Server, Call Server. The invention combines the functionality of multiple cellular network nodes into a single entity that is scaled down to support in the order of thousands of subscribers compared with individual cellular nodes supporting millions of subscribers. The invention supports a GMSC for enabling call originations to an enterprise number to be redirected to a cellular phone number and routed using least cost routing techniques whereby the GS discovers the location of the terminating subscriber and can route the call to that serving MSC over alternate routes such as a public or private VoIP network. This reduces or eliminates transport costs to the public carrier since the call is routed over lower cost routes using VoIP, or completely outside the carrier's network. The interconnection to the carrier's network can be using VoIP which avoids any PSTN interconnect charges. The SCP function enables originating and terminating calls to be routed according to instructions from the enterprise in the GS which interacts with the enterprise PBX system. Similarly this is achieved with the IMS SIP Application server function in the case of an IMS network architecture. The Call Server enables the carrier to route calls to and from their network using a distributed soft-switch and media gateway architecture that enables the bearer to be transmitted over VoIP instead of traditional trunks. Thus the carrier can route calls into and out of the enterprise over VoIP thereby avoiding PSTN interconnection and associated charges. The GGSN function onboard the GS enables the enterprise to route data sessions in a similar manner to how the invention describes the routing of voice calls. By including a GGSN function within the enterprise and connected with the cellular carrier's SGSN, a secure tunnel can be established between the carrier and the enterprise networks. Similarly this can be achieved with a Home Agent function located within the enterprise and connected with the carrier's Foreign Agent for CDMA networks. As such, the invention:

    
    
        i. Eliminates the need for VPN software to be launched on the mobile device
        ii. Subjects the mobile device to enterprise data policy including security and firewalls no matter where the device is located, and without the need for user interaction—all data sessions are routed through the enterprise's corporate network and firewalls
        iii. Enables software applications to be embedded in wireless devices that can be launched remotely to, for example, destroy data on the device should the unit be lost or stolen—e.g. Poison Pills
    
    


8. Least cost routing for mobile originations to bypass long distance in control of enterprise: The invention describes how to bypass long distance for cellular subscribers for both international and national long distance, by routing the calls from the serving MSC into the closest point of entry into the enterprise network. This connection can be using traditional trunks which incur costs but is reduced since the call may be routed from the serving MSC to a local point of attachment to the enterprise network, or the connection can be using VoIP from the carrier network to the enterprise, which avoids any PSTN interconnect charges and also enables the call to be considered a local call even if the closest point of attachment is not local—the cost is according to VoIP tariffing which may include free nationwide as well as to Canada, western Europe and parts of Latin America.
The invention also describes the concept of Tail-End-Hop-Off (TEHO). TEHO enables an employee dialing long distance to route the call as far as possible via least cost routing, and route the last leg from the least expensive point. For example, if an employee in the US dials a local telephone number in London, UK, the GS could detect this and decide to route the call from the US to the corporation's office in London, and from there initiate a local call to the destination. The invention would then enable all the legs of the call to be connected together. The end-to-end call would be routed from the originator in the cellular network into the enterprise network via a local connection, across the corporation's least cost routing (possibly VoIP) network to the London office, and connected with the local call from the London office to the final destination. The invention also stipulates that TEHO could be disallowed based on various criteria, such as destination (e.g. if such a solution were not allowed for connecting to certain countries), Time of Day/Day of Week or other criteria such as subscriber profile or policies.
9. PBX feature transparency: The invention describes how to enable PBX services from a desk phone be executed on a standard cellular phone with no special clients. The GS is configurable specific to the enterprise. Therefore the feature codes used on a deskphone in a particular enterprise can be programmed to be the same or similar on the cellular phone. The GS enables the use of “7” or “9” to be dialed in order to get an outside line, just like on a PBX. On the cellular phone, the employee would dial 9 followed by the destination digits, followed by the TALK button. If the employee dials destination digits without a “7” or “9”, the GS would consider them as internal PBX digits, such as a local 4 or 5-digit extension, or a 7-digit internal network destination. It is possible for the GS to suppress the use of “7” or “9” when using a cellular phone. The GS would analyze if the digits are internal or external and route accordingly. For example if the user dialed only 4 digits, the GS would treat as an internal extension. If the user dialed 10 digits, the GS would analyze the digits and if not associated with an internal extension, would consider it an external call and add the “7” or “9” prior to routing to the PBX. By enabling the suppression of the “7” or “9” for an outside line, the invention enables the employee to use the phone numbers stored in their device as they are—without modification.
An employee can select a person's name and which number they wish to connect with (office, home, cellular) in their directory in the phone and dial, and the GS will determine automatically if it is an external or internal number, and route accordingly.
Advanced PBX features such as Call Forward, Call Park, Call Pickup, Conference, Transfer, Do Not Disturb, Exclusive Hold, Consultative Hold, Last Number Redial, Link, Page, etc. that are available on the deskphone by pressing a “Feature” button followed by a code (e.g. Feature 74 to invoke Call Park, or Feature 85 to invoke Do Not Disturb), can be executed in a similar manner on the cellular phone by pressing an alternative button to “Feature” such as “*” or “#” followed by the same feature code. This is completely configurable and can be changed to suit the desire of the end user. If the user cannot recall what codes to use, the invention describes that the user can press a code such as “**”, “##” or “4HELP” (44357) which would connect the user with an Interactive Voice Response System (IVR). The IVR would prompt the user with information such as “Press *74 for Call Park, Press *85 for Do Not Disturb”. The user could enter the digits at anytime and the feature would be invoked. If the user remembers the code, they can avoid using the IVR on subsequent feature invocations.
The invention describes the invocation of features at the beginning of a call, and during a call. Mid-call triggers can be used by the system to inform the GS. For example if a user wishes to bridge in a third party, they could press TALK followed by the destination digits followed by TALK. A cellular system supporting mid-call triggers would send this information to the GS which would originate a call to the third party from the PBX, bridge the third part at the PBX, and enable the single voice path back to the cellular switch. The GS would respond to the midcall trigger with a message indicating to continue the call as normal. The result is that the original two parties would be connected with the third party through the PBX, and not through the cellular MSC—only a single voice path connection from the cellular MSC is required back to the PBX. Using the same concept, it is possible to link in multiple parties into a large conference call using the PBX and conference bridges in the enterprise, and only a single voice path connection to the cellular user.
If the cellular system does not support mid-call triggers, DTMF tones can be collected on the voice path using a code receiver placed in the voice path typically onboard a media gateway or subscribing to a media gateway for tone detection service. If a code receiver is used, it could be located in the enterprise, or at the carrier. As such, the user would not press the TALK button. Instead they would invoke features while in a call by pressing a designated code such as “*”, “#”, or alternatively “**” or “##” to invoke the IVR system to assist the user in invoking the services.
10. Monitoring and controlling of calls (voice and data) from enterprise mobiles. The invention previously described how all voice calls and data sessions from the cellular network are routed through the enterprise, enabling the enterprise to control, manage, subject to policy and even record the bearer information. The implications of this invention are consistent with what are considered “best practices” among corporations that must comply with regulations such as Sarbanes-Oxley for control procedures, similar to how corporations manage and control e-mail traffic or PBX voice communications that can be tracked and recorded.
While the invention enables an enterprise to gain control of voice and data calls, the design of invention also continues to enable federal legal requirements for monitoring calls on public cellular networks in compliance with regulations such as CALEA. Because the invention routes all calls through the serving MSC before they are routed to the enterprise, the serving MSC can still invoke wiretapping in accordance with federal law.
Similarly the invention design fully supports emergency call handling in that a subscriber that dials 911 will have the call immediately routed in accordance with emergency call handling procedures via the serving MSC which will override any triggers to route the call to the enterprise. As the invention uses standard cellular handsets, there E-911 location features operate as designed. Thus the architecture of the invention fully complies with emergency call handling regulations.
11. Identity manipulation for outgoing and incoming calls: The invention enables either the enterprise PBX landline phone number or the cellular phone number to be used as the single number. If the landline is used as primary and if the cellular number is called, the call can be allowed, or the call can be diverted to a voice recording that states the landline number to call. The call can then be routed, or it can hang up and require the originator to re-dial the new digits. Similarly this can be done with the cellular number as primary. If the landline is primary and the user originates a call from their cellular phone, the GS can manipulate the outgoing callerid information to be the landline number instead of the cellular number. If the terminator decides to call back the originator, they can select the callerid which will be the landline number. Similarly this can be done with the cellular number as the primary.
SMS message originations from the mobile user are triggered to the GS which converts the originator's cellular phone number to the landline number. The SMS can then be redirected back to the MSC for sending to the SMSC, or the GS can instruct the MSC to cancel the message, after which the GS originates a new SMS directly to the SMSC containing the landline origination number and the original destination. Similarly when an SMS is sent to a subscriber using their landline number, the MSC will trigger to the GS based on the terminating number. The GS will convert the destination number from the landline to the cellular number and return it to the MSC for routing to the subscriber or SMSC. In this case it may be required that the HLR be provisioned with a subscriber profile for the landline number to trigger to the GS. In the case where the GS also contains an SMSC on the SS7 network, the originating MSC would route the SMS to the GS-SMSC which would in turn convert the landline number to the cellular number and originate a new SMS to the cellular network for termination.
12. Enhanced Services

    
    
        a. Notification of policy enforcements: The invention describes new control procedures for mobile devices based on policies from the enterprise. For example, the enterprise can restrict incoming and/or outgoing calls when an employee is outside work hours, is outside the building, has badged out of the facility and/or has logged out of their enterprise data network from their computer. Should the employee attempt to originate a call, the system can provide a dynamic treatment that might play a message to inform the employee of the policy that is preventing the call from proceeding. Similarly, it is possible for an incoming call to apply a dynamic treatment that might inform the calling party that the called party is no longer in the office, has badged out for the evening and/or has logged out of their enterprise data network from their computer. The call could then be routed to standard voicemail or other appropriate treatments.
        b. Using an Application Programming Interface (API) and/or Software Development Kit (SDK) on the GS, applications can be written to control voice calls and data sessions. For example, a time clock, badging system, or signaling from a computer login/logout can be used to activate/deactivate a mobile phone. Similarly this technique can be used to change the recording of calls to be from a corporate account to a personal account for charging purposes. For example when an employee logs off their computer, the cellular phone account is switched to a personal account and phone calls may be deducted from the employee's paycheck. In another example, the API/SDK can be used to assign a particular cellular phone to a particular user at a particular time. For example, an employee may be assigned a set of equipment at the start of a shift which might include a cellular phone. To activate the assigned cellular phone to the employee, the API/SDK can be used to associate the phone with the employee. The phone may contain the same cellular phone number, but the enterprise landline number would be assigned to route to that particular cellular number for a duration of time until the employee returns the device at the end of the shift.
    
    


13. Billing

    
    
        a. Enabling carrier to store a enterprise-specific billing ID in CDR: The invention describes the assigning of a billing identifier generated by either the GS or the cellular system that is shared between the GS and cellular network, and can be included in the Charging Data Records. The billing identifier can be used to correlate multiple generated CDRs associated with a common event.
        b. Use of Prepaid triggers to mark the start and end of calls: The invention describes the use of cellular Prepaid triggers to mark the start and end of calls, even if the call is routed entirely by the cellular network. For example if user A calls user B and the GS determines that both users are on the same cellular carrier, and do not need to be monitored, then the GS may instruct the MSC to proceed with routing the call from A to B. The start and end of the call can still be recorded by the GS based on prepaid triggers.
    
    


14. IMS-Legacy Interaction

    
    
        a. Policy: The invention enables the enterprise GS to apply policy rules to the carrier PDF in order to enable target service objectives for the subscriber for the portion of the service that is handled by the carrier network. Conversely the invention enables the carrier PDF to provide the GS with policy rules for the portion of the service that is handled by the enterprise network. If the enterprise is not capable of meeting the minimum policy requirements for the session, the carrier network may take alternative actions—e.g. route the call themselves, reject call, redirect to another service or gateway.
        b. IM-SSF: The invention enables the IM-SSF function to be expanded beyond CAMEL prepaid triggering to support legacy network interaction for establishing legacy services such as SMS and voice calls. For voice services, the IM-SSF can be used by a SIP-AS to signal to an MSC or HLR by converting SIP messages into, for example, ISUP, AIN, GSM MAP or CAMEL, and/or ANSI-41 or WIN. This could be used to execute a handoff procedure between an IP network such as VoIP with a cellular network (or vv), or to enable IMS applications to invoke legacy services such as a voice call to a device that does not have an IMS client and does not support VoIP.
        c. CSCF: In the case that a solution supports Wi-Fi for voice calls, the GS acts as a local P-CSCF in the enterprise that interconnects with the carrier I-CSCF and S-CSCF. The GS can also perform the functions of an I-CSCF as a peer to the carrier network for routing sessions within the enterprise, and an S-CSCF to service the device within the enterprise network. For the routing of emergency calls, the GS can manage whether the call is sent to the landline network, in which case it would provide landline emergency location information, or to the cellular network in which case cellular emergency call handling would be performed including location tracking. Additionally, if the device is in the enterprise and operating on the Wi-Fi network, the GS could alternatively perform cellular emergency call handling and act as a proxy for the device in order to be able to interact with the cellular network emergency call handling functionality. In this case the GS would support the location information transactions with the cellular network by providing location information of the enterprise to the cellular network. This could be statically stored information in the GS describing the general location of the enterprise, or specific areas within the enterprise—or could be dynamically obtained by the GS using various location techniques, for example based on Wi-Fi location such as AP connection, and converted to cellular-recognized location information. In this manner the cellular network would require no changes, while the device could be operating on an alternative network and still receive emergency service.
    
    


15. Configurations: The solution enables various configurations to be deployed.

    
    
        a. Pure enterprise call control in which the GS is located at the enterprise site. The GS interfaces with the cellular network nodes supporting SS7 and SIP or other messaging with the carrier network. The carrier network must be able to address the GS in order to send and receive messages.
        b. Split call control between carrier and enterprise in which the GS located at the enterprise interacts with a GS at the carrier. The connection between the GS-E and the GS-C can be SIP or other protocols. This configuration typically enables the carrier network to have a central point of control for interacting with multiple enterprises, and may not require the use of SS7 messaging to the enterprise—instead it is possible to have a secure IP connection supporting SIP. This is also useful for offering a Centrex solution for interconnecting with a carrier-hosted PBX, or for interconnecting a carrier-hosted GS with enterprise-hosted PBX systems. The GS-C supports an SS7 point code multiplexer in which only one or two point codes are needed to address all enterprises, since the GS-C can identify for which enterprise the message is intended. The GS-E is able to provision the GS-C automatically over the IP interface to manage subscribers, e.g. to add new pilot DNs for new subscribers. In this case the triggers used by the originating and terminating triggers used in the cellular network for routing the calls to the GS-C can add identifying information of the specific enterprise in the triggering messages (e.g. ORREQ). Alternatively the GS-C can identify the enterprise based on the calling party information.
    
    


16. Availability: PBX systems are by nature designed to be enterprise-grade, which implies they may go out of service more frequently than carrier systems which must comply with strict minimum downtime requirements. The architecture of the invention increases the effective availability of a PBX system for routing calls since the GS (GS-E or GS-C) can instruct the cellular network to route the call (with same or modified dialing instructions) in the event that the PBX has gone out of service. The GS can store the call information and report it to the PBX when it is back online. In the event that the GS should go out of service, the architecture of the invention enables the cellular network to be configured such that if its communication with the GS times out, the cellular network can take alternate action, for example to route the call on its own, send to treatment (e.g. play a message), redirect to an alternative GS, or other call handling.
17. MVNO infrastructure: The invention is effectively a wireless core network that could alternatively be packaged and sold to MVNOs to enable them to operate their own core networks and host their own advanced services, while connecting to public cellular carrier networks for radio access.
18. Call Leg Manipulation and handling—In addition to using originating and terminating triggers to transfer call control from the carrier network to the enterprise via the GS, the solution also enables advanced services to be executed mid-call using mid-call triggers or in-line code receivers. When a user wishes to invoke a mid-call service such to invoke a multi-party call using an external conference bridge that resides in the enterprise network, the user can press digits on the device to invoke the service, and then press the TALK or SEND button to invoke a flash. The flash message is sent to the GS using mid-call triggers with the information of what was dialed. The GS can then respond to proceed with the call as normal, so that the voice conversation can continue, and then the GS can invoke the service, in this case to bridge in other users to the call, from the enterprise side. Thus for a multi-party call, only one voice leg is required from the user to the enterprise. Alternatively to the use of mid-call triggers, the solution can use an code receiver in the line that captures DTMF tones throughout the call. In this case the user could press a series of digits followed by, for example, # (instead of TALK or SEND). The code receiver or media gateway can then send a message to the GS to perform the service. In this case there is no interruption in the voice session. In this case the media gateway can block the transmission of the tones to other parties on the call such that the other parties will not hear them as they are being pressed. This section is in addition to what is described in section “Alternative methods for handling call originations”.
19. Corporate Calling Name: Calling name display is based on the carrier network database. This information does not contain calling name information for internal enterprise numbers. The invention enables the redirection of the GR-1188 or IS41 based query in the terminating switch to point to the GS. The GS will access the calling name information from the corporate directory. The GS can also obtain calling name information from a carrier database or other source, and decide which information (or both) to provide to the terminator depending on various factors such as completeness, originator's preferences, etc.
20. IMS Handover/Handoff: The invention enables handoff to occur between a voice conversation on a Wi-Fi network and a cellular network. Signaling between the Wi-Fi network and the cellular network is transited through the GS which converts the messaging between SIP call leg manipulation and ANSI-41 or GSM cellular signaling protocols for invoking a handoff. The solution can support the equivalent of an inter-MSC handoff as is done today in the cellular network, or alternatively a Call Redirection pseudo handoff in which a through-connected call is redirected. The latter uses messages such as SIP JOIN to connect the calls. In the case where the cellular network supports IMS, the GS acts as a SIP AS to perform the application function, and can also act as a peer IMS network including P-CSCF, I-CSCF and S-CSCF. In this case, the GS acting in these functions enables the PBX or IP-PBX that is controlling the user in Wi-Fi mode to be abstracted from having to support IMS to the cellular network, as the PBX/IP-PBX interfaces with the GS which interfaces with the IMS network.
Data—VPN-less session setup for enterprise. The invention enables a GGSN or HA to be including in the GS in the enterprise such that a secure data session can be established automatically between a device on the cellular network and the enterprise network by establishing a GTP tunnel between the carrier-hosted SGSN and the enterprise-hosted GGSN. In addition, in the case where there is a GS-C located in the carrier network that interfaces with GS-Es in the enterprise network, it is possible for the invention to add additional security and encryption specific to the enterprise's needs between the carrier's network and the enterprise. In this configuration, the function of the GGSN can be split between the GS-C and the GS-E such that the carrier network interfaces with the GS-C hosted within the carrier site, while the GTP tunnel and secure encrypted data session can be drawn out to the GS-E hosted within the enterprise. All data traffic to/from the mobile device will traverse the enterprise and its associated secure firewall.

## Claims

1. A system, comprising:
a carrier gateway server, located in a public cellular network, that communicates with a mobile switching network, the carrier gateway server configured to receive dialed digits from a mobile device located in the public cellular network; and
an enterprise gateway server, located in an enterprise network, that communicates with the carrier gateway server;
the carrier gateway server configured to:
send data to the enterprise gateway server for an upcoming communication associated with the dialed digits;

the enterprise gateway server configured to:
receive the data including a destination, from the carrier gateway server;
connect a second call leg to the destination with a first call leg from the carrier gateway server;
wherein the enterprise gateway server comprises an origination route delay system including access to historical destination routing time data wherein the enterprise gateway server is configured to use the historical destination routing time data to decide when to route the second call leg towards the destination in advance of the first call leg having been routed to the enterprise gateway.

2. The system of claim 1 wherein the enterprise gateway server comprises a destination route system storing historical destination routing time data based on destination data, wherein the enterprise gateway server is configured to use the historical destination routing time data to initiate the second call leg.

3. The system of claim 1 wherein the enterprise gateway server comprises a route history system storing historical route timing data based on route data, wherein the enterprise gateway server is configured to use the historical route timing data to initiate the second call leg.

4. The system of claim 1 wherein the enterprise gateway server comprises a device route system storing historical device routing data based on mobile device data associated with the data of the destination data, wherein the enterprise gateway server is configured to use the historical device routing data to initiate the second call leg.

5. The system of claim 1 wherein the decision when to route the second call leg towards the destination in advance of the first call leg having been routed to the enterprise gateway is performed in order to minimize a time to connect to the destination.

6. A method for executing originating services comprising:
receiving, by a carrier gateway server located in a public cellular network, dialed digits from a mobile device located in the public cellular network, wherein the carrier gateway server communicates with a mobile switching network;
transmitting originator and destination data associated with the dialed digits, from the carrier gateway server, located in a cellular network, to an enterprise gateway server, located in an enterprise network;
connecting a second call leg to the destination with a first call leg from the carrier gateway server;
wherein the enterprise gateway server comprises an origination route delay system including access to historical destination routing time data wherein the enterprise gateway server is configured to use the historical destination routing time data to decide when to route the second call leg towards the destination in advance of the first call leg having been routed to the enterprise gateway.

7. The method of claim 6 comprising retrieving historical call routing data at the enterprise gateway server including retrieving historical call route time data associated with one or more prior time intervals required to establish the second call leg over a predetermined route.

8. The method of claim 6 comprising retrieving historical call routing data at the enterprise gateway server including retrieving historical destination route time data associated with one or more prior time intervals required to establish the second call leg to a predetermined destination.

9. The method of claim 6 comprising retrieving historical call routing data at the enterprise gateway server including retrieving historical device route time data associated with one or more prior time intervals required to establish the second call leg to a predetermined class of mobile device.

10. The method of claim 6 comprising completing a route from the carrier gateway server to the enterprise gateway server based on the historical data.

11. The method of claim 6 wherein the decision when to route the second call leg towards the destination in advance of the first call leg having been routed to the enterprise gateway is performed in order to minimize a time to connect to the destination.

12. The method of claim 6 comprising storing call routing time data at the enterprise gateway server based on a time required to complete the second call leg from the enterprise gateway server to the destination.

13. The method of claim 6 comprising storing call routing time data at the enterprise gateway server based on a time required to complete the second call leg from the enterprise gateway server to the destination as a function of the destination.

14. The method of claim 6 comprising storing call routing time data at the enterprise gateway server based on a time required to complete the second call leg from the enterprise gateway server to the destination as a function of the second call leg.

15. The method of claim 6 comprising storing call routing time data at the enterprise gateway server based on a time required to complete the second call leg from the enterprise gateway server to the destination as a function of a type of mobile device being served.

16. A non-transitory computer readable medium comprising instructions for:
receiving, by a carrier gateway server located in a public cellular network, dialed digits from a mobile device located in the public cellular network, wherein the carrier gateway server communicates with a mobile switching network;
transmitting originator and destination data associated with the dialed digits, from the carrier gateway server, located in a cellular network, to an enterprise gateway server, located in an enterprise network;
connecting a second call leg to the destination with a first call leg from the carrier gateway server;
wherein the enterprise gateway server comprises an origination route delay system including access to historical destination routing time data wherein the enterprise gateway server is configured to use the historical destination routing time data to decide when to route the second call leg towards the destination in advance of the first call leg having been routed to the enterprise gateway.

17. The non-transitory computer readable medium of claim 16 comprising instructions for retrieving historical call routing data at the enterprise gateway server including at least one of:
retrieving historical call route time data associated with one or more prior time intervals required to establish the second call leg over a predetermined route;
retrieving historical destination route time data associated with one or more prior time intervals required to establish the second call leg to a predetermined destination; and
retrieving historical device route time data associated with one or more prior time intervals required to establish the second call leg to a predetermined class of mobile device.

18. The non-transitory computer readable medium of claim 16 comprising instructions for completing a route from the carrier gateway server to the enterprise gateway server based on the historical data.

19. The non-transitory computer readable medium of claim 16 comprising instructions for wherein the decision when to route the second call leg towards the destination in advance of the first call leg having been routed to the enterprise gateway is performed in order to minimize a time to connect to the destination.

20. The non-transitory computer readable medium of claim 16 comprising instructions for storing call routing time data at the enterprise gateway server based on a time required to complete the second call leg from the enterprise gateway server to at least one of:
the destination;
the destination as a function of the destination;
the destination as a function of the second call leg; and
the destination as a function of a type of mobile device being served.