# Patent

## Title
Internet based telephone line

## Abstract

A telephone service method that provides subscribers with the functionality of an extra telephone line during data/Internet sessions. Each subscriber has a unique telephone number Dns that can be dialed by anyone with access to the PSTN. When the Dns is dialed the call will be routed via the PSTN to the ILTD server. The ILTD server upon receiving the call attempt from the Dnc will analyze the dialed number (Dns) and determine if the subscriber's computer is able to receive the telephone call. If the subscriber's computer is actively engaged in an Internet Protocol session, with the ILTD client software running, the ILTD server will connect the call over the Internet to the ILTD client software. The ILTD client software will activate the subscriber's sound card and the microphone to play audio and receive input from the microphone to allow the subscriber and the calling party to have a full duplex telephone conversation (i.e. using voice-over-IP technology).

## Background
CROSS-REFERENCE TO RELATED APPLICATIONS
This application is a continuation of and claims priority to U.S. application Ser. No. 09/567,758, filed on May 9, 2000 (now U.S. Pat. No. 7,408,919), titled “Internet Based Telephone Line,” and to Canadian Application 2,271,828, entitled “INTERNET BASED TELEPHONE LINE,” filed on May 11, 1999, the entire contents of both of which are incorporated by reference in their entirety.


FIELD OF THE INVENTION
This invention relates to the field of providing telephone service over an Internet Protocol (IP) network, and more particularly, to the provision of full duplex local telephone service and call management features over an IP based network terminating to a personal computer.
BACKGROUND OF THE INVENTION
Currently, the only practical and affordable method to provide local voice telephone service (and associated call management features) is to rent a physical copper circuit from the local telephone company. The copper circuit would connect the customer premise equipment (CPE) to a central switching office (CO) of a Public Switched Telephone Network (PSTN). The CO is responsible for hosting the subscriber's public dial number and routing the calls to the subscriber's line when the number is dialed. Additionally, the CO is responsible for providing some call management features such as Caller-ID and Call Waiting type services.
Consequently, there is a need for a system and method for providing local telephone services over an IP based network to mitigate the requirement of renting a copper circuit from a telephone company.
SUMMARY OF THE INVENTION
An object of the present invention is to provide a system and method for establishing the equivalent of local telephone service over an IP based network.
In accordance with one aspect of the present invention there is provided a method for providing notification and support for incoming calls having a dialed number identifier associated with a computer in communication with an Internet Protocol based data communications network wherein the data communications network is connected to a public switched telephone network (PSTN) via a call direction server, said method comprising the steps of: notifying the computer when an incoming call is detected on the call direction server; receiving an indication of a selected response action from the computer; and processing the incoming call according to the selected response action.
In accordance with another aspect of the present invention there is provided a method for providing notification and support for incoming calls having a dialed number identifier associated with a computer in communication with an Internet Protocol based data communications network wherein the data communications network is connected to a public switched telephone network (PSTN) via a call direction server having a database of all valid subscriber dialed number identifiers, said method comprising the steps of: obtaining dialed number information about the call from the PSTN; comparing the dialed number information to valid subscriber dialed number identifiers in the database; and providing a message to the computer having a computer address corresponding to the dialed number identifier.
In accordance with a further aspect of the present invention there is provided a method for providing notification and support for incoming calls having a dialed number identifier associated with a computer in communication with an Internet Protocol based data communications network wherein the data communications network is connected to a public switched telephone network (PSTN) via a call direction server, said method comprising the steps of: receiving notification of an incoming call; providing a list of response actions for the incoming call; and sending an indication of a selected response action for the incoming call.
The details of one or more embodiments of the invention are set forth in the accompanying drawings and the description below. Other features, objects, and advantages of the invention will be apparent from the description and drawings, and from the claims.



BRIEF DESCRIPTION OF DRAWINGS
The present invention will be described in conjunction with the drawings in which:
FIG. 1A illustrates a schematic overview of a network embodying the method and apparatus of the present invention;
FIG. 1B is a block diagram illustrating the components of the ILTD server of FIG. 1A according to an embodiment of the present invention; and
FIGS. 2A and 2B represent a flow chart illustrating the steps of the Internet based telephone line functionality according to an embodiment of the present invention.



DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION
The present invention is based on exploiting the growth of affordable high speed Internet access services such as Asynchronous Digital Subscriber Line (ADSL) and Data-over-Cable (DOC). These high-speed services establish a permanent, “always-on”, connection to an IP based network. The present invention provides a system and method for providing existing and new voice telephone service delivery in the form of digital packet data over a logical circuit.
Referring to FIG. 1A there is provided a system 10 of the network components and interfaces required by the present invention. An Internet Line-Two Director (ILTD) server 12 is connected to a switching point 14 (e.g. a DMS host switch) by an Integrated Services Digital Network (ISDN) Private Rate Interface (PRI) link 16.
The ILTD server 12 is also connected to the Internet 18 through standard TCP/IP lines 20. Customer Premise Equipment (CPE) 22 (including a computer 24 having a soundcard 24A, a microphone 24B, ILTD client software 26, and a modem 28, and a telephone 30) is connected to the Internet 18 through another switching point 32. The ILTD server 12 is also connected to a PSTN (public switched telephone network) domain 34 having a DMS switch 35 through ISDN-PRI links 36. A calling telephone 38 is connected to the switch 14 for placing calls to, for example, the telephone 30.
In the present description, the links 16 and 36 are standard ISDN trunks consisting of 23 B channels and one D (signaling channel). In a configuration where there are multiple PRI trunks, there may be a shared D channel, which is used by multiple links. Subsequent links, which depend on the initial D channel, have 24 B channels. Further, traditional call processing functions are based on the well known Advanced Intelligent Network (AIN) using standard out of band signaling, such as the Signaling System 7 (SS7) protocol.
The above components can be implemented in various ways. A single component can be implemented as stand-alone network equipment, multiple components can be combined in a single item of network equipment or a given component can be partitioned over two or more items of network equipment.
The following terms are used in the subsequent description and drawings:

    
    
        Caller's dial number (DN) is Dnc (e.g. from telephone 38)
        Caller's name is name_c
        Subscriber's DN is Dns (e.g. for telephone 30)
        Subscriber's Name is name_s
    
    


The method of the present invention is a subscription based telephone service that provides subscribers with the functionality of an extra telephone line. Each subscriber 22 has a unique telephone number Dns associated with their telephone 30 that can be dialed by anyone with access to the PSTN 34. When the Dns is dialed (e.g. by a user of telephone 38) the call is routed to the ILTD server 12 through the PSTN 34 using standard AIN/SS7 signaling.
The ILTD server 12 upon receiving the call attempt from the Dnc will analyze the dialed number (Dns) and determine if the subscriber's computer 24 is able to receive the telephone call. If the subscriber's computer 24 is actively engaged in a data communications session over the Internet 18 with the ILTD client software 26 running, the ILTD server 12 will connect the call over the Internet 18 to the ILTD client software 26.
The ILTD client software 26 will activate the subscriber's sound card 24A and the microphone 24B to play audio and receive input from the microphone 24B to allow the subscriber and the calling party to have a full duplex telephone conversation.
Each subscriber typically has a subscription to an Internet access service; either a dialup service or a dedicated access service. It is preferable that the subscribers use a high-speed access service to enable a high level of throughput for the digitally compressed voice stream.
In each local calling area (covered by a typical Local Exchange Carrier {LEC}) at least one computer telephony server (for example an industrial Pentium□ rack mounted computer running the Solaris□ operating system) is required.
As discussed above, the ILTD server 12 is connected to the Internet 18 via one or more high speed dedicated connections 20 to an Internet service provider. To enable high throughput and faster communication with customers, multiple high-speed links could be connected to the ILTD server 12.
The PRI ISDN trunks 16, 36 offer the ability to have an unlimited number of direct-inward-dial (DID) numbers that route to the ILTD server 12. These DID numbers will be assigned to individual subscribers. When calls are routed to the ILTD server 12 via the PRI trunks 16, the DID number is identified to the ILTD server 12 by the switch 14. This notifies the ILTD server 12 which subscriber is being called. In addition to identifying the dialed number (Dns), the PRI trunk 36 carries the calling party number (Dnc) and name (name_c) information as well as other standard call setup data according to the standard AIN call model and SS7 signaling.
The ILTD server 12 includes a number of components as illustrated in FIG. 1B. Each component has a different responsibility in enabling the IP based telephone line of the present invention. The components of the ILTD server 12 work in conjunction with industry standard digital signal processing hardware, which is installed in the ILTD server 12. In a typical configuration, the ILTD server 12 includes one or more PRI or T1 network interface cards 40 (such as the Dialogic□ D240SCT1), one or more voice processing boards 42 (such as the Natural Microsystems□ AG48), one or more voice-over-IP encoding/decoding (vocoder) boards 44 (such as the Natural Microsystems Fusion□ board) and one or more Ethernet interface boards 46. Each of these components includes an Application Programming Interface (API) well known to those skilled in the art.
Using the components 40, 42, 44 and 46 listed above, the ILTD server 12 includes the following modules:
PSTN Network Interface (PNI) module: The PNI module operates the PSTN network interface cards 40 and enables the termination telephone calls offered by the serving switch 35 of the PSTN 34. The PNI module is responsible for capturing the Dns, Dnc and name_c that are delivered to the ILTD server 12 over a PRI 16 or equivalent trunk. Alternatively, the PSTN Network Interface module functions can be implemented using an SS7 interface.
Voice Processing (VP) module: The VP module operates the voicing processing board 42 and the vocoder 44 to perform all voice processing related functions such as the playback of audio prompts and the like.
State Management (SM) module: The SM module is responsible for tracking the presence of subscribers. When a subscriber's computer 24 is active and connected to the Internet 18, the ILTD client software 26 will notify the ILTD server 12 by sending a login request to the ILTD server 12. The login request contains the subscriber's IP address along with their DN, password and other service related parameters (such as version of the service to which they subscribe). When the SM module receives the login request it validates or denies the request.
If the request is validated the subscriber is considered and able to receive or make telephone calls over the Internet 18. The SM module continues to monitor the presence of the subscriber throughout the life of their connection. The ILTD client software 26 will periodically send a confirmation message to the ILTD server 12 notifying it that it is still connected. If the SM module does not receive a confirmation message from the ILTD client software 26 within a predetermined time, such as every 3 minutes, it will attempt to communicate with the subscriber, at the previously recorded IP address, to determine if they are still connected.
The ILTD client software 26 is a compiled software application residing on the subscriber's computer 24. The ILTD software 26 acts as the ‘soft telephone’ for the subscriber. Its function is to monitor for the presence of an Internet connection on the subscriber's computer 24 and once found, attempt to authenticate itself with the appropriate ILTD server 12. The authentication process involves the transmission of the subscriber's telephone number (Dns), a password, an IP (Internet Protocol) address and other subscriber profile data.
The ILTD client software 26 also has the responsibility of communicating with multimedia hardware/software (sound card 24a, microphone 24b) and operating systems on the computer 24. This enables the subscriber to communicate via
voice through the computer 24 back to the ILTD server 12 and ultimately back to the calling party (Dnc and name_c).
IP Based Telephone Line Call Processing Method—Receiving Calls
A call processing method according to an embodiment of the present invention is illustrated in the flow chart of FIGS. 2A and 2B.
Step 50: The subscriber's computer 24 is activated and connected to the Internet 18 using any one of many well known methods, including dialup over a standard POTS line, ISDN, cable modem, ADSL or “1 Meg” modem type service.
Step 52: The ILTD client software 26 sends an authentication request message to the ILTD server 12 via the Internet 18.
Steps 54 and 55: The ILTD server 12 either authenticates or denies the request (proceed to step 56 if authenticates, terminated at step 55 if ILTD server 12 denies the request).
Step 56 Call is made to the subscriber's telephone number (Dns).
Step 58: Call is routed via the PSTN 34 and offered to the ILTD server 12. Call setup message containing the subscriber number (Dns), calling party number (Dnc), calling party name (name_c) is delivered to the ILTD server 12.
Steps 60 and 61: The ILTD server 12 verifies that the subscriber is a valid subscriber and whether or not they are authenticated, meaning they are connected to the Internet 18 (proceed to step 62 if yes, Internet based telephone line is inactive at stage 61).
Step 62: ILTD server 12 sends the call request/notification via the Internet 18 to the ILTD client software 26. This notification contains the calling party number (Dnc) and name (name_c).
Step 64 and 65: ILTD client software 26 initiates a ‘popup’ window on the computer screen indicating that someone is calling. The subscriber can select to answer (proceed to step 66) or perform other call processing functions at step 65 (such as transfer call, ignore call, acknowledge call by playing a prescribed message, or send the call to voice mail).
Step 66: The ILTD client software 26 sends a Call Accept message back to the ILTD server 12.
Step 68: The ILTD server 12 negotiates with the ILTD client software 26 or appropriate voice software communications packages (via standard H.323 protocol) to establish a voice telephone call using Internet Protocol (i.e. voice-over-Internet-Protocol: VOIP) between the ILTD server 12 and the subscriber's computer 24.
The subscriber 22 can also use telephone 30 to make outgoing calls using VOIP when an Internet session is activated on the computer 24 following the basic principles outlined in FIGS. 2A and 2B. In particular, when the subscriber 22 has an active Internet connection the computer 24 is used to establish a VOIP call through the Internet 18 using the ILTD server 12.
In summary, the IP based telephone line service of the present invention does not merely redirect a call from the subscriber's POTS line. The DID number is actually hosted on the ILTD server 12 and when it is dialed the call is connected to the ILTD server 12 then converted to VOIP to get to the subscriber 22.

## Claims

1. A method comprising:
registering call processing functions with a signaling system to route calls to unique party numbers to a call direction device, wherein the call direction device is configured to:
interface with a circuit switched network to receive one or more calls routed to the call direction device with the registered call processing functions at the signaling system,
communicate Internet Protocol (IP) data with a data communications network, and
provide call direction services for received calls from the circuit switched network using communication of IP data with the data communications network;

receiving a call routed to the call direction device with the registered call processing functions at the signaling system, the call received at the call direction device and from the circuit switched network;
obtaining dialed number information corresponding to a unique party number registered at the signaling system;
identifying a called party and a computer address by comparing the dialed number information corresponding to the unique party number registered at the signaling system to dialed number identifiers; and
providing a message to the identified computer address using the data communications network.

2. The method of claim 1 wherein to interface with the circuit switched network to receive one or more calls routed to the call direction device, the call direction device is configured to interface with a telephone switch in a public switched telephone network.

3. The method of claim 2 wherein obtaining the dialed number information corresponding to the unique party number registered at the signaling system includes interfacing with a telephone switch hosting the dialed number identifiers.

4. The method of claim 2 wherein obtaining the dialed number information corresponding to the unique party number registered at the signaling system includes interfacing with the telephone switch in the public switched telephone network.

5. The method of claim 4 further comprising including the dialed number information corresponding to the unique party number in the provided message to the identified computer address.

6. The method of claim 1 wherein identifying the called party and the corresponding computer address by comparing the dialed number information corresponding to the unique party number registered at the signaling system to the dialed number identifiers includes comparing the dialed number information related to the unique party number registered at the signaling system to the called party's personal telephone number.

7. The method of claim 1 further comprising receiving state and registration information of the identified called party.

8. The method of claim 7 wherein receiving state and registration information includes communicating with the computer address using the data communications network.

9. The method of claim 7 wherein receiving the state and registration information includes receiving a label for a name of a registered party.

10. The method of claim 7 further comprising updating a database with the received state and registration information.

11. The method of claim 10 wherein updating the database includes continually monitoring a presence of the called party throughout a duration of a connection between the computer of the computer address and the call direction device.

12. A call direction device configured to:
interface with a circuit switched network to receive one or more calls routed to the call direction device with a call routing device of a signaling system, wherein the call routing device includes registered call processing functions to route calls to unique party numbers to the call direction device;
receive a call routed to the call direction device on the circuit switched network, the call routed with the call routing device according to the registered call processing functions;
obtain dialed number information corresponding to a unique party number registered at the signaling system;
identify a called party and a computer address by comparing the dialed number information corresponding to the unique party number registered at the signaling system to dialed number identifiers; and
provide a message to the identified computer address using a data communications network.

13. The device of claim 12 wherein to interface with the circuit switched network to receive one or more calls routed to the call direction device with the call routing device, the call direction device is configured to interface with a telephone switch in a public switched telephone network.

14. The device of claim 13 wherein to obtain the dialed number information corresponding to the unique party number registered at the signaling system, the call direction device is configured to interface with the telephone switch in the public switched telephone network.

15. The device of claim 14 wherein the call direction device is configured to include the dialed number information corresponding to the unique party number in the message provided to the identified computer address.

16. The device of claim 12 wherein to identify the called party and the computer address by comparing the dialed number information corresponding to the unique party number registered at the signaling system to the dialed number identifiers, the call direction device is configured to compare the dialed number information corresponding to the unique party number registered at the signaling system to the called party's personal telephone number.

17. The device of claim 12 wherein the call direction device is configured to receive state and registration information of the identified called party.

18. The device of claim 17 wherein to receive state and registration information, the call direction device is configured to communicate with the computer address using the data communications network.

19. The device of claim 17 wherein to receive state and registration information, the call direction device is configured to receive a label for a name of a registered party.

20. The device of claim 17 wherein the call direction device is configured to update a database with the received state and registration information.

21. The device of claim 20 wherein to update the database, the call direction device is configured to continually monitor a presence of the called party throughout a duration of a connection between the computer of the computer address and the call direction device.