WO2006043917A1 - Liaison de numeros de telephone dans un systeme voix sur internet - Google Patents

Liaison de numeros de telephone dans un systeme voix sur internet Download PDF

Info

Publication number
WO2006043917A1
WO2006043917A1 PCT/US2004/033593 US2004033593W WO2006043917A1 WO 2006043917 A1 WO2006043917 A1 WO 2006043917A1 US 2004033593 W US2004033593 W US 2004033593W WO 2006043917 A1 WO2006043917 A1 WO 2006043917A1
Authority
WO
WIPO (PCT)
Prior art keywords
voice
over
customer
voi
internet
Prior art date
Application number
PCT/US2004/033593
Other languages
English (en)
Inventor
S. Beckemeyer. David
Original Assignee
Televolution Llc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Televolution Llc filed Critical Televolution Llc
Priority to PCT/US2004/033593 priority Critical patent/WO2006043917A1/fr
Publication of WO2006043917A1 publication Critical patent/WO2006043917A1/fr

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • H04M7/12Arrangements for interconnection between switching centres for working between exchanges having different types of switching equipment, e.g. power-driven and step by step or decimal and non-decimal
    • H04M7/1205Arrangements for interconnection between switching centres for working between exchanges having different types of switching equipment, e.g. power-driven and step by step or decimal and non-decimal where the types of switching equipement comprises PSTN/ISDN equipment and switching equipment of networks other than PSTN/ISDN, e.g. Internet Protocol networks
    • H04M7/128Details of addressing, directories or routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4557Directories for hybrid networks, e.g. including telephone numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/166Implementing security features at a particular protocol layer at the transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1083In-session procedures
    • H04L65/1094Inter-user-equipment sessions transfer or sharing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/253Telephone sets using digital voice transmission
    • H04M1/2535Telephone sets using digital voice transmission adapted for voice communication over an Internet Protocol [IP] network

Definitions

  • VoIP voice-over-Internet-Protocol
  • VoIPDSL voice- over-digital-subscriber-line
  • VoIPATM voice-over-asynchronous-transfer-mode
  • a soft phone is computer software that may be installed on a typical personal computer.
  • the computer software enables any computer device with a speaker and a microphone to place free Internet calls through an Internet service provider (ISP).
  • ISP Internet service provider
  • Soft phones suffer from various disadvantages and problems. For example, in many cases, soft phones only enable a user to make free Internet calls to other users that have installed the same or similar software on their computer. Furthermore, these software-based solutions offer no or limited calling to the PSTN.
  • Another Internet telephony solution employs service providers (e.g., Internet telephone service providers (ITSP)) that offer voice-over-Internet services to subscribers.
  • An ITSP usually provides the subscribers with supporting hardware.
  • the supporting hardware may comprise a stand-alone device manufactured by another company (e.g., a VoIP phone) that connects to the Internet.
  • the supporting hardware, software, etc. may also be other equipment that functions as an interface between the customer's standard telephone and the PSTN and Internet connections.
  • the ITSP sells or leases the hardware to the subscriber and charges the customer a subscription service (e.g., monthly service fee) for the services.
  • the potential subscriber may purchase the hardware from another entity and then request service from the ITSP.
  • ITSP solutions also have a number of disadvantages. Many customers have been slow to adopt this approach because they are unwilling to abandon the familiar expectations of their traditional phone service. Another major disadvantage is that the hardware provided by most ITSPs is difficult for some consumers to use, configure, etc.
  • a provisioning process In order to configure the hardware provided by the ITSP for communication with other devices, hardware, etc., a provisioning process is typically performed. In general, the provisioning process involves two steps: (1) establishing a terminating ID for the subscriber; and (2) provisioning the hardware with the information necessary to use the terminating ID to facilitate Internet telephony services.
  • the purpose of the provisioning process is to enable the ITSP to associate the terminating ID with the hardware for a particular subscriber. For example, some ITSPs assign the terminating ID during an ordering/activation process with the subscriber.
  • the terminating ID is typically a private number assigned by the service provider at sign-up and is usually specific to the ITSP. In other words, the ITSP defines the terminating ID and then associates the number with the subscriber's account.
  • the ITSP may provide the subscriber with basic information (e.g., usemame, password, IP addresses of gateway servers, etc.), and the subscriber is left with the task of configuring the hardware, software, etc.
  • the hardware may be pre-provisioned by the ITSP. For example, at the time of account creation, the hardware may be provisioned, bound to the account, and shipped to the subscriber. After the hardware is installed by subscriber, the hardware may register with an ITSP server, which recognizes the device by its association to the subscriber's account.
  • One embodiment is a method for provisioning a customer voice-over-Internet device for voice-over-Internet service.
  • One such method comprises: providing a customer voice-over-Internet device for communicating with an existing telephone line and a data network; providing a telephone number associated with the existing telephone line to a voice-over-Internet platform; and linking the existing telephone number to a unique identifier associated with the customer voice-over-Internet device.
  • Another such method comprises: simultaneously controlling a data session and a telephone call between a voice-over-Internet platform and a customer device; and linking a telephone number received via the telephone call to the customer device, if a transmitted session identifier received via the telephone call matches a session identifier associated with the data session.
  • Yet another such method comprises: establishing a data session between a customer device and a voice-over-Internet platform via a data network; receiving a device identifier associated with the customer device via the data session; instructing the customer device, via the data session, to make a telephone call to a predetermined telephone number that terminates at the voice-over-Internet platform; capturing a telephone number corresponding to the customer device via the telephone call; instructing the customer device, via the data session, to transmit a session identifier associated with the data session to the voice-over-Internet platform via the telephone call; and associating the telephone number with the customer device if the transmitted session identifier matches the session identifier.
  • Another embodiment comprises a voice-over-Internet system.
  • a customer device comprising a data interface for communicating via a data network and a telephone interface for communicating with the public-switched telephone network (PSTN); a voice-over-Internet platform for communicating with the customer device via the PSTN and a data session that occurs over the data network; and a telephone number binding system associated with the voice-over-Internet platform, the telephone number binding system configured to provision the customer device by linking the customer's existing telephone number to a unique device identifier corresponding to the customer device.
  • PSTN public-switched telephone network
  • Another embodiment comprises a voice-over-Internet platform.
  • One such platform comprises: means for simultaneously controlling a data session and a telephone call with a customer device ; and means for linking an existing telephone number with the customer device, the existing telephone number received via one of the data session and the telephone call.
  • FIG. 1 is a block diagram of an embodiment of a voice-over- Internet system.
  • FIG. 2 is a block diagram of another embodiment of a voice-over-Internet system, which illustrates an implementation of the telephone number binding system of FIG. 2.
  • FIG. 3 is a flow chart illustrating the general architecture, operation, and/or functionality of an embodiment of a method for provisioning a customer voice-over- Internet device via the systems of FIGS. 1 & 2.
  • FIGS. 4a & 4b represent a flow chart that illustrates the general operation of the voice-over-Internet systems of FIGS. 1 & 2.
  • FIG. 5 is a combined block diagram and flow diagram that illustrates an embodiment of a method for provisioning the customer VOI device in the voice-over-Internet systems of FIGS. 1 & 2.
  • FIG. 6 is a block diagram illustrating an embodiment of the customer VOI devices of
  • FIG. 7 is a block diagram illustrating an embodiment of the voice-over- Internet platforms of FIGS. 1 & 2.
  • FIG. 8 is a diagram illustrating an embodiment of the telephone number binding database in the voice-over-Internet platform of FIGS. 1.
  • FIG. 9 is a flow chart illustrating the architecture, operation, and/or functionality of an embodiment of the VOI provisioning module in the customer VOI device of FIG. 6.
  • FIG. 10 is a flow chart illustrating the architecture, operation, and/or functionality of an embodiment of the telephone number binding system in the VOI platform of FIG. 7
  • FIG. 11 is a combined block diagram and flow diagram that illustrates an embodiment of a method and/or VOI platform for providing VOI services.
  • FIGS. 1 - 11 Various embodiments of systems, methods, computer programs, communications platforms, etc. that employ telephone number binding in a voice-over-Internet environment will be described with respect to FIGS. 1 - 11. As an introductory matter, however, an exemplary embodiment of a system for providing voice-over-Internet services will be briefly described. With regard to all described embodiments, it should be appreciated that the term "voice-over-Internet” is not limited to any particular protocol, transmission medium, communications network, topology, architecture, etc. Rather, "voice-over-Internet” applies to any system that supports telephone calls between two or more individuals via a data network.
  • voice-over-Internet should be construed to include existing and future Internet telephony services, such as voice-over-Internet-Protocol (VoIP), voice-over-digital-subsriber-line (VoDSL), voice- over-asynchronous-transfer-mode (VoATM), etc.
  • VoIP voice-over-Internet-Protocol
  • VoIP voice-over-digital-subsriber-line
  • VoIP voice- over-asynchronous-transfer-mode
  • the voice services need not be provided over a public network but, rather, may also be provided over a private network, such as a local area network, wide area network, etc., to name a few examples.
  • the exemplary system for providing VOI services comprises a VOI platform which supports communications with one or more customer VOI devices located at the customer premise.
  • the customer VOI device communicates with the customer's existing telephone line to the public-switched telephone network (PSTN) and the customer's data line to a data service provider.
  • PSTN public-switched telephone network
  • the customer VOI device may also connect to the existing telephone or, in alternative embodiments, the customer VOI device may be integrated with appropriate functionality, hardware, etc. for controlling PSTN communications.
  • the customer VOI device is a black-box device that may be easily configured (and, in some embodiments, automatically configured) for communication with the VOI platform.
  • the customer may initiate telephone calls to other individuals without regard to whether the call is being placed over the PSTN or the data network.
  • the customer VOI device and the VOI platform perform the logical functions necessary to support both standard PSTN telephone calls and VOI calls.
  • a provisioning process may be initiated which configures the customer VOI device for VOI service.
  • the provisioning process may be initiated by the customer, the customer VOI device, or the VOI platform.
  • the customer's existing telephone number is provided to the VOI platform.
  • the existing telephone number is used by the VOI platform as a terminating identifier during the provisioning of VOI and/or PSTN services. In this manner, the existing telephone number may be used to make VOI calls to the corresponding customer VOI device. Therefore, rather than having to assign a new terminating identifier, the VOI platform may use the existing telephone number as the terminating identifier.
  • the existing telephone number may be automatically provided to the VOI platform by the customer VOI device, either via the data network or the PSTN.
  • the customer may provide the existing telephone number to the VOI platform.
  • the VOI platform may support an interactive voice response (IVR) system by which the customer interactively supplies the existing telephone number.
  • IVR interactive voice response
  • the VOI platform may also support a web-based (or other data) channel via the data network, which enables the customer, the customer VOI device, or a combination thereof to provide the existing telephone number to the VOI platform.
  • the VOI platform may also provide a means for authenticating the telephone number provided, in order to confirm that the telephone number is in fact within the control of the customer VOI device. Without any authentication process, it may be possible for a customer to usurp someone else's phone number. Therefore, in certain embodiments, it may be desirable to employ a reliable and accurate authentication scheme to validate the telephone number provided.
  • the authentication mechanism may be fully automated via data and/or PSTN connections between the customer VOI device and the VOI platform. In some embodiments, at least portions of the authentication scheme may involve interactive or manual input from the customer, rather than the customer VOI device.
  • one embodiment of a provisioning method or process may be fully automated in order to minimize (or completely avoid) any burdensome user interaction with the customer VOI device or the VOI platform.
  • the communications between the VOI platform and the customer VOI device occur via parallel PSTN and data connections.
  • the customer connects the customer VOI device to a telephone line and a data network.
  • the customer VOI device establishes communication with the VOI platform via the data network.
  • the customer VOI device transmits a unique device identifier stored in memory to the VOI platform via the data network.
  • the VOI platform may verify the customer VOI device based on the unique device identifier.
  • the VOI platform may generate a unique session identifier for the data connection.
  • the VOI platform instructs the customer VOI device (via the data network) to make a telephone call to a predetermined telephone number, which terminates at the VOI platform.
  • the customer VOI device initiates the telephone call over the PSTN to the predetermined telephone number.
  • the VOI platform receives the call from the customer VOI device, the customer's telephone number may be identified through the automatic number identification (ANI) service provided by the supporting telephone service provider.
  • ANI automatic number identification
  • the VOI platform may then instruct the customer VOI device to transmit the session identifier over the telephone call (e.g., using dual tone multi-frequency (DTMF) digits).
  • DTMF dual tone multi-frequency
  • the VOI platform compares the transmitted information to the session identifier for the data connection to confirm the identity of the customer VOI device. If the correct session identifier is received by the VOI platform, the VOI platform may authenticate the customer VOI device and link the customer VOI device to the corresponding telephone number. It should be appreciated that additional and/or alternative schemes may be employed to confirm that the telephone number is within the control of the customer VOI device as deemed appropriate by particular system providers, for particular applications or customers, etc. Furthermore, it should be appreciated that the authentication request(s) may be submitted to the customer VOI device via the data channel or the PSTN connection.
  • the call-to-platform request and the transmit-session-identifier request initiated by the VOI platform are performed via the data session and the corresponding actions or responses from the customer VOI device are provided via the PSTN.
  • the closed- loop authentication scheme may be reversed so that the requests from the VOI platform are made via the PSTN and the customer VOI device responds via the data session.
  • the VOI platform associates (e.g., links, binds, relates, etc.) the existing telephone number to the customer VOI device.
  • the VOI platform may develop and maintain a database containing information that links a particular customer VOI device to the existing telephone number.
  • the association between the existing telephone number and the customer VOI device enables the VOI platform to establish VOI calls between customers. For example, when a calling customer associated with a first customer VOI device attempts to place a call to a particular PSTN telephone number, the VOI platform may determine whether the customer at that particular PSTN telephone number has been provisioned by the VOI platform. The VOI platform may access the database and determine whether the PSTN telephone number has been associated with a second customer VOI device.
  • the first customer VOI device may use the PSTN to place the call to the called customer.
  • the VOI platform may orchestrate a VOI call between the calling customer and the called customer via the respective customer VOI devices.
  • FIG. 1 illustrates an embodiment of a system 100 for providing VOI services to one or more customer VOI devices 102.
  • customer VOI device(s) 102 may connect to a telephone 106, although in alternative embodiments customer VOI device(s) 102 may integrate telephone 106 into the device.
  • customer VOI device(s) 102 may include appropriate connection(s) and supporting hardware/software for interfacing with a personal computer and/or a data phone (e.g., VoIP phone).
  • customer VOI device(s) 102 interface with the PSTN 108 and a data network 1 10. It should be further appreciated that customer VOI device(s) 102 may comprise a computer with appropriate software, hardware, etc. to function in the manner described below.
  • VOI platform 104 includes a telephone number binding system (TNBS) 112 and a database 114.
  • TNBS 1 12 comprises the logic, functionality, etc. for provisioning customer VOI device(s) 102 and for associating authenticated customer VOI devices 102 with the corresponding telephone number.
  • Information corresponding to customer VOI device/telephone number bindings or pairs may be stored in database 114 and accessed as needed to support VOI services to customers.
  • FIG. 2 is a block diagram of a VOI environment 200 in which a VOI platform 104 may provision a customer VOI device 102 located at a customer premise 202.
  • customer VOI device 102 connects to an existing telephone line to PSTN 108 and a data connection to data network 110.
  • VOI platform 104 may communicate with customer VOI device 102 via data network 110 and PSTN 108.
  • customer premise 202 may have existing telephone service via PSTN 108 and, therefore, customer premise 202 may be associated with an existing telephone number 210 (represented by arrow 218 - FIG. 2).
  • Customer VOI device 102 may be associated with a unique device identifier (e.g., device ID 206), which is represented by arrow 208.
  • VOI platform 104 provisions customer VOI device 102 by receiving existing telephone number 210 (arrow 212).
  • VOI platform 104 may also receive a unique device identifier (e.g., device ID 206) associated with customer VOI device 102 (arrow 214).
  • VOI platform 104 may receive existing telephone number 210 in various ways via data network 110 and/or PSTN 108.
  • existing telephone number 210 may be automatically provided to VOI platform 104 by customer VOI device 102, either via the data network or the PSTN.
  • the customer may provide existing telephone number 210 to VOI platform 104.
  • VOI platform 104 may also support an IVR system by which the customer interactively supplies existing telephone number 210 .
  • customer premise 202 may include a computer 204 which also communicates with VOI platform 104.
  • Computer 204 may connect directly to data network 1 10 or to customer VOI device 102.
  • existing telephone number 210 may be provided to VOI platform 104 via a web-based (or other data) channel between computer 204 and VOI platform 104.
  • VOI platform 104 continues the provisioning process by associating existing telephone number 210 to the unique device identifier (e.g., device ID 206) associated with customer VOI device 102. As illustrated by arrow 216, VOI platform 104 may store existing telephone number 210 and device ID 206 in database 114 as a look-up data pair or binding. Thus, VOI platform 104 may use existing telephone number 210 as the terminating identifier for providing VOI services to customer VOI device 102.
  • the unique device identifier e.g., device ID 206
  • FIG. 3 illustrates another embodiment of a provisioning method.
  • a customer obtains a customer VOI device 102.
  • the customer may purchase or lease the device.
  • Customer VOI device 102 may also be provided to the customer by a service provider.
  • customer VOI device 102 is connected to a telephone 106, PSTN 108, and data network 1 10.
  • customer VOI device 102 may integrate the functionality of telephone 106 into the device, in which case customer VOI device 102 is connected to PSTN 108 and data network 110.
  • VOI platform 104 determines an existing telephone number 210 associated with the customer.
  • VOI platform 104 may receive existing telephone number 210 in a variety of ways via PSTN 108 and/or data network 110. At block 308. VOI platform 104 binds customer VOI device 102 to existing telephone number 210. At block 310, VOI platform 103 may provision customer VOI device 102 for VOI service.
  • FIGS. 4a & 4b illustrate another embodiment of a method for provisioning a customer VOI device 102, in which customer VOI device 102 is initially provisioned with little or no user interaction.
  • the customer may connect the customer VOI device 102 to an existing telephone line and a data line — but logic embedded within customer VOI device 102 and VOI platform 104 controls the provisioning process.
  • customer VOI device 102 and VOI platform 104 may automatically provision the device without burdening the customer.
  • VOI device 102 is connected to PSTN 108 and a data network 110 (FIGS. 1 and 2). If VOI device 102 is appropriately connected, at block 404, the auto-provisioning process is initiated. At block 406, customer VOI device 102 may submit a device identifier (e.g., device ID 206 - FIG. 2) associated with the device to VOI platform 104 via data network 110. For example, each customer VOI device 102 may have unique credentials written to the device during the manufacturing process, which uniquely identify the customer VOI device 102 to VOI platform 104. The unique credentials (e.g., digital certificate, etc.) may be stored in any suitable manner (e.g., in flash memory).
  • a device identifier e.g., device ID 206 - FIG. 2
  • VOI platform 104 receives the device identifier and authenticates customer VOI device 102 based on the device identifier. In other words, VOI platform 104 verifies that customer VOI device 102 is an approved device based on the submitted device identifier. Therefore, VOI platform 104 may prevent non-approved devices from attempting to access the platform, as well as provide protection from attacks, forged requests, etc. It should be appreciated that the authentication process may support various encryption schemes, algorithms, etc. to provide suitable security measures and to further guarantee the authenticity of customer VOI device 102. If the customer VOI device 102 is authenticated, at block 408, VOI platform 104 may assign a number to the provisioning request. For instance, VOI platform 104 may generate a unique session number or identifier (e.g., random number, pseudo-random number, etc.) that identifies the provisioning request initiated by customer VOI device 102.
  • a unique session number or identifier e.g., random number, pseudo-random
  • VOI platform 104 instructs the authenticated customer VOI device 102 to initiate a telephone call over PSTN 108 to a predetermined telephone number that terminates at VOI platform 104.
  • the instructions, messages, requests, commands, data communications, etc. between customer VOI device 102 and VOI platform 104 may use any suitable protocol. It should be appreciated that the device identifier may be provided by VOI platform 104 or, in alternative embodiments, may be locally stored in customer VOI device 102.
  • customer VOI device 102 initiates the telephone call via PSTN 108 to the predetermined telephone number.
  • VOI platform 104 receives the telephone call initiated by customer VOI device 102 and determines the existing telephone number 210 (FIG. 2) associated with customer VOI device 102 ⁇ e.g., via an automatic number identification (ANI) service provided by the supporting telephone company).
  • ANI automatic number identification
  • VOI platform 104 instructs customer VOI device
  • customer VOI device 102 (via data network 1 10) to transmit the session identifier (block 408) to VOI platform 104 over the telephone call.
  • customer VOI device 102 transmits the session identifier over the telephone call. It should be appreciated that the session identifier may be transmitted over the telephone call in a number of ways. In one embodiment, customer VOI device 102 is configured to transmit the session identifier using dual tone multi- frequency (DTMF) tone digits.
  • DTMF dual tone multi- frequency
  • VOI platform 104 receives the transmitted session number and determines whether it matches the system-generated session identifier (block 408). If VOI platform 104 confirms that the session number transmitted by customer VOI device 102 via the telephone call matches the session number generated by VOI platform 104, at block 422, VOI platform 104 associates the customer's existing telephone number 210 (block 414) with customer VOI device 102. It should be appreciated that the association between the telephone number and the device may be implemented in various ways. For example, in one embodiment, the customer's telephone number may be associated, bound, linked, etc. with the device identifier. It should be appreciated that other implementations may be employed. FIG.
  • FIG. 5 illustrates the communication between customer VOI device 102 and VOI platform 104 during another embodiment of a method for provisioning customer VOI device 102.
  • VOI platform 104 simultaneously controls communications with customer VOI device 102 via PSTN 108 and data network 110.
  • the provisioning method involves both a data session (data network 110) and a telephone call (PSTN 108).
  • PSTN 108 a telephone call
  • VOI platform 104 uses both connections to associate the customer's existing telephone number (received via the telephone call) to a device identifier associated with customer VOI device 102 (received via the data session) — if a transmitted session identifier received via the telephone call matches a session identifier associated with the data session.
  • customer VOI device(s) 102 are automatically configured for the provision of VOI services with little or no demands on customer interaction.
  • the data session between customer VOI device 102 and VOI platform 104 is represented in FIG. 5 with references lines A, B and D, while the telephone call is represented by reference lines C and E.
  • customer VOI device 102 transmits a device identifier 502 to VOI platform 104 via data network 110.
  • VOI platform 104 may authenticate customer VOI device 102 based on device identifier 502.
  • VOI platform may generate a session number 508 to identify the data session with customer VOI device 102.
  • VOI platform 104 provides a call-to-platform request 504 (reference line B) to customer VOI device 102.
  • Call-to-platform request 504 instructs customer VOI device 102 to initiate the telephone call to VOI platform 104.
  • Customer VOI device 102 initiates the telephone call to VOI platform 104 via PSTN 108 (reference line C).
  • VOI platform 104 determines the existing telephone number 210 corresponding to customer VOI device 102 by, for example, the ANI service mentioned above.
  • VOI platform 104 provides a transmit-session-ID request 506 to customer VOI device 102 via data network 102.
  • Request 506 instructs customer VOI device 102 to transmit session identifier 508 via the telephone call. If the transmitted session identifier matches session identifier 508, VOI platform 104 associates the customer's existing telephone number with customer VOI device 102, and provisions the device for VOI services.
  • FIG. 6 illustrates a block diagram of a customer VOI device 102 which supports dynamic provisioning with VOI platform 104.
  • customer VOI device 102 comprises a data interface 602, a telephone interface (e.g., plain-old- telephone-service (POTS) interface 604), a processor 606, and VOI provisioning module(s) 600.
  • Data interface 602 comprises a suitable interface for communicating with VOI platform 104 via data network 110. It should be appreciated that a number of data interfaces (hardware, software, firmware) may be employed depending on the particular configuration of data network 110.
  • Data interface 602 may be configured to communicate directly with data network 110 or, in alternative embodiments, may merely communicate with another data interface (e.g., cable modem, DSL modem, etc.) that connects to data network 110.
  • the telephone interface comprises any suitable interface for enabling telephone 106 to communicate via PSTN 108.
  • Processor 606 controls the functional operation of various aspects of customer VOI device 102, including VOI provisioning module 600.
  • VOI provisioning module 600 The architecture, operation, and/or functionality of an embodiment of VOI provisioning module 600 is described below with reference to FIG. 9. In general, however, it should be appreciated that VOI provisioning module 600 comprises the logic, functionality, etc. for automatically provisioning customer VOI device 102 via VOI platform 102.
  • FIG. 7 illustrates a block diagram of an embodiment of a VOI platform 104 for providing various VOI services to customer VOI device(s) 102.
  • VOI platform 104 comprises web server 702, telephone interface 706, a uniform resource identifier (URI) server 708, SIP proxy 704, database 114, and TNBS 1 12.
  • URI uniform resource identifier
  • SIP proxy 704 SIP proxy 704
  • database 114 database 114
  • TNBS 1 TNBS 1 12
  • the components of VOI platform 104 may be distributed across one or more computer systems at any number of physical locations.
  • some of the functional aspects of VOI platform 104 may be located locally at customer VOI device(s) 102.
  • TNBS 112 comprises the logic, functionality, etc. for provisioning customer VOI device 102.
  • TNBS 112 controls the process of associating, matching, linking, etc. the customer's existing telephone number (e.g., received via the telephone call) to the device identifier 502 (FIG. 2) associated with customer VOI device 102 ⁇ e.g., received via the data session) — if a transmitted session identifier received via the telephone call matches a session identifier 508 (FIG. 2) associated with the data session.
  • TNBS 112 integrates the functions of web server 702, SIP proxy 704, telephone interface 706, URI server 708, and database 114 to create the telephone number/device identifier pairings used to facilitate VOI communications between customers.
  • FIG. 8 illustrates an embodiment of database 114.
  • the telephone number/device identifier pairing(s) created during the provisioning process may be stored in database 1 14.
  • URI server 708 may access database 114 in order to provide the VOI services.
  • Web server 702 controls communications with customer VOI device(s) 102 via data network 110.
  • Web server 702 may support any suitable communication protocol.
  • web server 702 may be configured as a secure server which employs the hypertext transfer transport protocol (HTTP) (secure) — HTTPS.
  • HTTP hypertext transfer transport protocol
  • VOI platform 104 employs a session initiation protocol (SIP), which is described in detail in the following Requests for Comment (RFC) of the Internet Engineering Task Force (IETF), each of which are hereby incorporated by reference in their entirety: RFC 2543 - SIP: Session Initiation Protocol; RFC 3261 - SIP: Session Initiation Protocol; RFC 3262 - Reliability of Provisional Responses in SIP; RFC 3263 - Location SIP Servers; RFC 3264 - An Offer/Answer Model with SDP; and RFC 3265 - SIP-Specific Event Notification.
  • VOI platform 104 comprises a SIP proxy 704 for supporting the session initiation protocol.
  • Telephone interface 706 comprises any suitable interface for facilitating communication via PSTN 108. As mentioned above, telephone interface 706 may be further integrated with an IVR functionality.
  • Uniform resource identifier (URI) server 708 provides query capabilities for compatible VOI end points (e.g., customer VOI device 102).
  • a compatible VOI device may query URI server 708 to obtain the identifier of a VOI device stored in database 1 12.
  • URJ server 708 and/or database 112 may further employ the ENUM system, which is defined in RFC 2916, RFC 2782, and RFC 3403, each of which are hereby incorporated by reference in their entirety.
  • SIP proxy 704 refers to any of a variety of individual SIP-related functions, roles, etc. (or a collection thereof), which may be distributed over a communications network.
  • SIP proxy 704 may include any of the following, or other, client and/or server roles: proxy, registrar, back-to-back user agent, etc.
  • FIG 9 illustrates the architecture, operation, and/or functionality of an embodiment of VOI provisioning module 600.
  • VOI provisioning module 600 confirms that customer VOI device 102 is connected to PSTN 108.
  • VOI provisioning module 600 confirms that customer VOI device 102 is connected to data network 110. If customer VOI device 102 is properly connected, at block 906, VOI provisioning module 600 may begin the auto- provisioning process by establishing contact with VOI platform 104.
  • VOI provisioning module 600 may support a number of communication protocols.
  • VOI provisioning module 600 may be configured to support HTTP, HTTPS, SIP, as well as any other suitable protocol over data network 110.
  • SIP is implemented
  • VOI provisioning module 600 may initially register with, for example, a SIP proxy 704 associated with VOI platform 104.
  • HTTPS is implemented
  • VOI provisioning module 600 may issue a "GET" request to an HTTPS server associated with VOI platform.
  • VOI provisioning module 600 provides device identifier 502 to VOI platform 104.
  • device identifier 502 comprises a digital certificate which is signed by a root certificate for VOI platform 104.
  • VOI provisioning module 600 receives (at block 908) a request from VOI platform 104 (e.g., call-to- platform request 504 - FIG. 5), which instructs VOI provisioning module 600 to call VOI platform 104 via PSTN 108.
  • VOI provisioning module 600 initiates the telephone call to VOI platform 104 over PSTN 108 via the telephone interface (e.g., POTS interface 604 - FIG. 6).
  • VOI provisioning module 600 receives another request from VOI platform 104 via data interface 602, which instructs VOI provisioning module 600 to transmit session identifier 508.
  • VOI provisioning module 600 provides session identifier 508 to VOI platform 104 via the telephone interface.
  • VOI platform 104 matches the transmitted session identifier to session identifier 508, the customer's existing telephone number (captured via the telephone call) is linked to device identifier 502 (or otherwise associated with customer VOI device 102).
  • VOI provisioning module 600 may receive further information from VOI platform 104 to complete the provisioning process.
  • FIG. 10 illustrates the architecture, operation, and/or functionality of an embodiment of TNBS 112.
  • TNBS 112 controls the provisioning process at VOI platform 104. In the embodiment of FIG.
  • TNBS 112 establishes a connection to customer VOI device 102 via data network 110.
  • VOI provisioning module 600 may initiate a request to web server 702 and/or SIP proxy 704.
  • customer VOI device 102 is authenticated based on the submitted device identifier (blocks 1004 and 1006)
  • TNBS 112 may be notified that a data connection has been established.
  • TNBS 112 generates a unique identifier for the data session (e.g., session identifier 508).
  • TNBS 112 initiates call-to-platform request 504, which instructs customer VOI device 102 to place a telephone call to VOI platform 104.
  • TNBS 1 12 receives notification that the telephone call from customer VOI device 102 has been received.
  • TNBS 112 also receives the existing telephone number associated with the call.
  • TNBS 112 initiates transmit- session-identifier request 506, which instructs customer VOI device 102 to transmit session identifier 508 via the telephone call.
  • TNBS 112 may not actually provide the requests to customer VOI device 102. Rather, it should be appreciated that TNBS 112 may route the requests to the appropriate component(s) within VOI platform 102. In this regard, TNBS 112 may control the provisioning process but delegate tasks to the appropriate components. Similarly, TNBS 112 may not actually receive communications directly from customer VOI device 102. Instead, the communications may be received by other component(s) in VOI platform 104 and forwarded to TNBS 112.
  • TNBS 112 receives the transmission from customer VOI device 102.
  • TNBS 112 determines whether the transmitted information matches session identifier 508. If there is not a match, TNBS 112 may indicate, at block 1022, that the provisioning process has failed. If there is a match, TNBS 112 associates, at block 1020, the customer's existing telephone number to customer VOI device 102.
  • customer VOI device 102 and VOI platform 104 may support various protocols, including the Session Initiation Protocol (SIP).
  • SIP Session Initiation Protocol
  • Tables 1 - 23 an exemplary implementation of the SIP will be described to illustrate an embodiment of the related communications between customer VOI device 102 and VOI platform 104 to provision VOI service(s).
  • SIP is described in detail in RFCs 3261, 3262, 3263, 3264, and 3265, each of which are hereby incorporated by reference in their entirety.
  • Other protocols including a Session Description Protocol (SDP) and real-time Transport Protocol (RTP) are used in this exemplary implementation.
  • SDP Session Description Protocol
  • RTP real-time Transport Protocol
  • Table 1 illustrates various example variables that are referenced in the following description of one of a number of exemplary SIP implementations.
  • public addresses appear in the exemplary SIP messages, they are not presented in numeric form as they would otherwise appear to avoid compromising any existing public information. Rather, this information is included as a data variable indicated in bold text. For example, rather than specify the actual public IP address for the customer VOI device, the information is presented as REMOTE-IP- ADDRESS.
  • SIP may not appear below in a fully SIP- compliant data format due to word wrapping, etc.
  • SIP may require certain forms of wrapping in the SIP header lines which are not illustrated in the Tables.
  • SIP messages are merely one of a number of possible SIP implementations.
  • SIP messages may be employed.
  • any SIP implementation may include various other SIP messages, sequences, etc. for handling retransmit contingencies and other reliability issues, to name a few.
  • Table 1 Example Variables for Exemplary SIP Implementation
  • NAT Network Address Translation
  • firmware of customer VOI device 102 may be programmed to trigger the action of block 404 when it has successfully registered with the SIP proxy.
  • the initial credentials for customer VOI device 102 may be factory-configured and shared between server and device.
  • the customer VOI device 102 boots ⁇ e.g., starts up, is turned on, etc.), it attempts to register to the VOI platform SIP proxy using the SIP protocol.
  • Customer VOI device 102 device sends a REGISTER request, such as illustrated in
  • the VOI platform SIP proxy may authenticate customer VOI device 102.
  • the HTTP Digest authentication method as specified in RFC 3261 (which is hereby incorporated by reference in its entirety) may be used.
  • the VOI platform SIP proxy may respond with the response illustrated in Table 3 to challenge the REGISTER request.
  • Customer VOI device 102 then generates the proper credentials and re-issues the REGISTER request with credentials as illustrated in Table 4.
  • the VOI platform SIP proxy may respond as illustrated in Table 5 with an "OK" response.
  • customer VOI device 102 may also register as a separately addressable SIP end-point for its PSTN connection. This creates two virtual addressable paths to the VOI device. This allows the VOI platform to independently interact with the user (phone) and the PSTN (telephone line) through the VOI device.
  • This second registration is much like the first registration described above, but using a different (auxiliary) username and SIP port as illustrated in Table 6.
  • ADDRESS:5061>;expires 3600 Warning: 399 pg "Restricted Cone NAT Detected"
  • the VOI platform SIP proxy may also authenticate this registration, in a manner similiar to the previous example, by sending the challenge to customer VOI device 102 as illustrated in Table 7.
  • Customer VOI device 102 then sends a challenge-response with proper credentials as illustrated in Table 8.
  • This second registration applies to the PSTN connection of customer VOI device 102.
  • customer VOI device 102 has successfully registered with VOI platform 104.
  • customer VOI device 102 initiates the action shown at block 404 (FIG. 4).
  • customer VOI device 102 may actually initiate the action shown at block 404 after some predetermined time (e.g., one hour), whether it has successfully completed the above registration process(es) or not. This is to provide a mechanism for VOI platform 104 to control and interact with customer VOI device 102 through configuration parameters, if for some reason the device is unable to register (in which case VOI platform 104 cannot interact with or control customer VOI device 102 using SIP).
  • Customer VOI device 102 may attempt the action shown at block 404 regardless of the state of the PSTN connection. In other words, it will try to perform telephone phone number binding, whether the PSTN line appears live or not.
  • customer VOI device 102 may initiate an HTTPS GET request to initiate the binding process. Therefore, it should be appreciated that customer VOI device 102 may comprise HTTP and HTTPS client capabilities. In one embodiment, customer VOI device 102 may function like a browser requesting web pages from remote Internet sites. In this manner, customer VOI device 102 provides a very reliable means of reaching VOI platform 104, even if customer VOI device 102 is connected through a Network Address Translation (NAT) router, firewall, etc.
  • NAT Network Address Translation
  • Customer VOI device 102 may also implement the Secure Socket Layer (SSL) protocol.
  • SSL Secure Socket Layer
  • This enables the VOI device HTTP client to connect to servers using the secure HTTPS protocol.
  • This is the same protocol used universally to secure internet transactions, such as to submit credit card information on web-site purchases, and to obtain bank and investments statements over the Internet.
  • HTTPS encrypts the communication between client and server, protecting the message contents from other intervening network devices. Beyond encryption, HTTPS also provides for the authentication of the server and the client engaged in a secure transaction. This feature ensures that VOI platform 104 and the individual VOI clients cannot be spoofed by other nodes on the network.
  • the means for server and client authentication in SSL is private key cryptography, and the issuance of public certificates corresponding to private keys.
  • the essential property of private key cryptography is that content encrypted with a public key can only be decrypted by its corresponding private key (and vice versa). Certificates are authenticated in the context of a certificate chain. A certificate authority lies at the root of the chain, with all other certificates ultimately depending on the root authority for authentication.
  • the VOI platform HTTPS server may be configured with an SSL server certificate that has been signed by the VOI platform root certificate.
  • the firmware running on customer VOI device 102 may recognize such certificates as valid.
  • the clients attempt to authenticate the server certificate when connecting via HTTPS, and will reject any server certificate not signed by the proper authority.
  • This mechanism may protect the VOI system from direct network attacks on the VOI end-point, in which the attacker attempts to spoof a particular VOI platform server. If successful, such an attack would allow the attacker to re-provision the VOI device, presumably to gain configuration information or assume control of the VOI device.
  • Server certificates are the only certificates required in a typical secure web transaction.
  • the VOI system described here also uses client certificates to prevent rogue client requests.
  • Each VOI device 102 carries a unique client certificate.
  • Each client certificate is signed by the VOI platform root certificate, and carries identifying information about that specific VOI device 102.
  • the certificate authority root certificate capable of authenticating the VOI device client certificate is used by VOI platform 104 to authenticate and identify VOI devices. Requests from unauthorized clients are rejected by VOI platform 104.
  • VOI device 102 can assert with confidence that it is communicating with the correct VOI platform server and the VOI platform server can assert with confidence the identity of the specific remote VOI device 102 it is communicating with. Furthermore, VOI platform 104 and VOI device 102 can both assert that the transaction is protected from eavesdropping.
  • VOI device 102 may issue an HTTPS GET request to the VOI platform server.
  • the VOI device may issue a /prov/ft URL request to invoke a CGI (Common Gateway Interface) application on the HTTPS server.
  • CGI Common Gateway Interface
  • a CGI program is executed in real-time, so that it can take action and output dynamic information.
  • Other mechanisms for executing an application in real-time on the server based on an HTTPS request could be used, such as Java Server Pages (JSP), Active Server Pages (ASP), PHP, and other similar technologies.
  • the VOI platform HTTPS server may be configured to require client certificates.
  • the VOI device client certificate contains a unique identifier for the specific individual VOI device 102.
  • the HTTPS server supplies the certificate information to the /prov/ft CGI application.
  • the VOI platform HTTPS server may process requests from
  • VOI devices 102 that provide a valid certificate, as described above.
  • the /prov/ft CGI application processes requests if the VOI device identifier contained in the certificate is valid. State may be maintained on VOI platform 104 about each known VOI device identifier.
  • the /prov/ft CGI application knows the state of the device making the request and can therefore determine the action to take for the VOI device 102. If the /prov/ft CGI application determines that the requesting device is in need of telephone number binding, it sets the state for the VOI device to PENDING and adds the VOI device identifier to the queue of devices requiring number binding.
  • Another application of VOI platform 104 may process the queue and initiate the binding process for each device sequentially.
  • this application begins the binding process for a given VOI device 102, it allocates a Binding Session ID for the specific binding session associated with a given VOI device.
  • the Binding Session ID is a sequence of digits. Referring to block 410, the binding application of VOI platform 104 instructs the
  • VOI platform SIP proxy to initiate a call to VOI device 102 for the active binding session.
  • the VOI platform SIP proxy initiates the call using SIP protocol with an INVITE request (Table 10) sent to the VOI Device at the registered location established at block 402 described above.
  • VOI device 102 uses the HTTP Digest authentication mechanism to authenticate the VOI platform proxy, by responding to the above request with a challenge as illustrated in Table 1 1.
  • the VOI platform proxy acknowledges this response as illustrated in Table 12.
  • the VOI platform proxy then re-issues the INVITE with proper credentials (the challenge-response) as illustrated in Table 13.
  • VOI device 102 may initiate the call over the
  • PSTN and indicate to VOI platform 104 that the call is proceeding by sending various Informational Responses as defined in SIP RFC 3261, which is hereby incorporated by reference in its entirety.
  • customer VOI device 102 may initiate the process illustrated in Table 14.
  • This process initiates a call from VOI platform 104 to the VOI device 102 PSTN port with SIP Call-ID 6540e2c22085ee3708d270086740841b@ PROXY-IP- ADDRESS.
  • SIP INVITE transaction associated with this Call-ID exists across several steps until terminated with a final SIP response, such as the "200 OK" response described below with respect to block 414.
  • This Call-ID is part of a SIP INVITE dialog that exists across several of the following steps until the BYE request associated with block 420.
  • the INVITE request includes Session Description Protocol (SDP) information, which indicates the format and acceptable encodings to be used for the media associated with the call.
  • the media includes an RTP digital audio stream and an RFC 2833 telephone-event payload for carrying dual-tone multifrequency (DTMF) digits.
  • SDP Session Description Protocol
  • customer VOI device 102 dials the number specified above using the attached POTS line.
  • the line may indicate ringing and customer VOI device 102 may send an informational response to VOI platform 104 as illustrated in Table 15.
  • VOI platform 104 answers the call and receives ANI information indicating the number of the calling party, which is the existing telephone number of the line used by VOI device 102 to place the call. It should be appreciated that caller-ID or calling party number (CPN) techniques may be employed, but may be less reliable because ANI is used internally by telephone carriers for billing purposes. While CPN is created by the sending equipment, ANI is generated and sent by the telephone network and cannot be blocked by the caller.
  • CPN calling party number
  • VOI device 102 detects that condition on its PSTN interface and indicates that the call is established by sending the appropriate SIP response to the INVITE request initiated at block 410 above ⁇ as illustrated in Table 16.
  • This response may include the SDP information for VOI device 102 indicating how the VOI device 102 wishes to receive media for the call, including telephone-event DTMF data.
  • the VOI platform SIP proxy acknowledges this response, per the SIP protocol, sending the SIP message illustrated in Table 17.
  • VOI platform 104 enters into a listening state for DTMF tones on the incoming call from the PSTN.
  • Session ID over the established SIP call to VOI device 102 It does this using the media path established by the SIP INVITE for that call.
  • the DTMF digits may be sent to VOI device 102 using RFC 2833 telephone-event path specified in the 200 OK response from VOI device 102 in block 414 above.
  • VOI platform 104 receives the DTMF digits over the PSTN connection. When it collects sufficient digits, it performs a check to see if the digits received match the Binding Session ID. Additional functions may be performed to improve the reliability of the DTMF transmission process.
  • customer VOI device 102 may use redundancy by transmitting each digit multiple times, so that if one instance of a DTMF digit gets distorted or interrupted over the PSTN, at least one of the other copies should get through.
  • VOI platform 104 may test for "similarity" of the received digits to the original Binding Session ID using the Levenshtein string distance algorithm, rather than requiring an exact match.
  • VOI platform 104 may hang up the phone. This is detected by VOI device 102 on its
  • VOI device 102 terminates the SIP call by sending a BYE request to VOI platform 104 - as illustrated in Table 18.
  • VOI platform 104 accepts the BYE request by sending an "OK" response, as illustrated in Table 19.
  • VOI platform 104 terminates the call initiated at block 410. At this point, the SIP dialog with Call-ID 6540e2c22085ee3708d270086740841b@ PROXY-IP-ADDRESS is no longer active.
  • VOI platform 104 completes the binding process by associating the existing telephone phone number obtained at block 414 with the customer VOI device 102 associated with the active binding request.
  • the binding or association process may be performed in a variety of ways.
  • the telephone number may be looked up in a Calling Name Database (CNAM) to determine the name associated with the telephone number.
  • CNAM Calling Name Database
  • the telephone number and name for customer VOI device 102 are then stored into a name/number to a mapping database (e.g., database 114). If no CNAM data exists for the phone number, the number is still bound to VOI device 102, without any corresponding name data.
  • CNAM Calling Name Database
  • a Naming Authority Pointer (NAPTR) (RFC 2915) entry may be added to the VOI platform E.164 to Uniform Resource Identifiers (URI) Dynamic Delegation Discovery System (DDDS) (ENUM) (RFC 3761).
  • This NAPTR entry maps the E.164 number associated with the phone number to a SIP URI associated with the VOI Device.
  • VOI platform 104 instructs VOI device 102 to perform an HTTPS action to obtain final configuration parameters. This is performed by VOI platform 104 sending a SIP NOTIFY request to VOI device 102 with a 'resync' event specified ⁇ as illustrated in Table 20.
  • the action may be authenticated by VOI device 102.
  • VOI device 102 may challenge the request as illustrated in Table 21.
  • Table 21 VOI platform 104 may re-send the NOTIFY request with the proper credentials (challenge-response) as illustrated in Table 22.
  • Customer VOI device 102 may accept the request as illustrated in Table 23.
  • customer VOI device 102 may request, in response to the NOTIFY event above, the HTTPS url with the following message: https://voiprov,televolution.net/prov/ft.
  • the /prov/ft CGI application executes, it will observe that the telephone number binding process for customer VOI device 102 has completed. As a result, it will then change the state of the device to BOUND, and update customer VOI device 102 parameters as appropriate for final operation.
  • this may include changing the VOI device configuration such that subsequently the device will obtain configuration data from a static file using the HTTP protocol, rather than executing the /prov/ft CGI application using HTTPS.
  • separate explicit encryption is used instead of SSL.
  • FIG. 11 is a combined block diagram and flow diagram illustrating an exemplary method employed by VOI platform 104 for establishing calls between customer VOI devices 102.
  • customer VOI device A initiates a call to customer VOI device B.
  • device A corresponds to the calling party and device B corresponds to the called party.
  • the method illustrated in FIG. 1 1 is based on the SIP protocol described above.
  • URI is the generic set of all names/addresses that are short strings that refer to resources.
  • SIP URIs are described in more detail in RFC 3261, which is hereby incorporated by reference in its entirety.
  • the SIP address may take any of the following, or other, forms: (1) sip:user:password@domain:port;uri-parameters?headers; (2) sip:user@domain:port; and (3) sip:user@domain.
  • the user is the name of the user being addressed.
  • the domain is the host providing the SIP resource (in this case the VOI calling service).
  • the domain is typically a fully-qualified domain name, but it may also be a numeric IP address (e.g., IPv4, IPv6, etc.).
  • the port is the port to which the request is to be sent. It is common for this token to be omitted, in which a default port (e.g., port 5060) is established.
  • the port number may also be specified in SRV DNS records, so SIP implementations which support such DNS lookups may obtain the port number via DNS. If the port number is specified in the URI it may override DNS.
  • Customer VOI devices 102 may be configured with a unique SIP URI. The URI is what distinctly identifies a specific device and permits other compatible devices to connect to and start a conversation with any other device.
  • customer VOI devices A and B may register with their respective SIP proxy servers (reference lines 11 10). Both devices A and B receive acknowledgement (e.g., a "200 OK") from the respective SIP proxies indicating that registration succeeded (reference lines 1112).
  • the calling party associated with device A initiates a call by sending an INVITE to proxy A (reference line 1114).
  • the INVITE includes SDP information specifying the media parameters this node supports/desires, including codecs, ports, IP address for the streams, etc.
  • proxy A determines that proxy B is authoritative for the SIP URI being called, and forwards the INVITE to proxy B (reference line 1116).
  • a message (e.g., "100 TRYING" message) may be sent back to device A (reference line 1118).
  • Proxy B receives the INVITE, checks to see if device B is currently registered, and if so passes the INVITE to device B (as illustrated by reference line 1120). Device B accepts the INVITE and returns an acknowledge (e.g., "180 RINGING" message), as illustrated by reference line 1122, to proxy B.
  • an acknowledge e.g., "180 RINGING" message
  • Proxy B forwards the acknowledgement message to proxy A (reference line
  • proxy A forwards the acknowledgement message to device A.
  • the device accepts the call and returns another message (reference line 1128) to proxy B (e.g., "a 200 OK" message).
  • the "200 OK" message may include SDP information specifying the media parameters supported by device B, including codecs, ports, and the IP address for the streams.
  • Proxy B forwards the 200 OK message back to proxy A (reference line 1130).
  • A forwards the 200 OK message back to device A (reference line 1132).
  • device A returns an acknowledge (ACK) message to proxy A, which may include appropriate SDP information.
  • Proxy A forwards the ACK message to proxy B (reference line 1136).
  • Proxy B forwards the ACK message to device B (reference line 1138).
  • device A and device B may then communicate directly with each other without the aid of the corresponding proxies.
  • the INVITE from device A may require authentication by proxy A. For example, various provisional response packets may be passed between the proxies and the devices, but these should have no affect on the overall call setup. Once the basic call is established, media parameters may be altered via RE-INVITE messages via proxies A and B.
  • the SIP registration process may be implemented as follows.
  • SIP supports a dynamic registration mechanism.
  • SIP end- points send REGISTER requests to a registration server to register their physical location with the SIP service of record. This provides limited mobility for SIP end-points.
  • the REGISTER requests have an expiry and the end-points refresh their registration by sending REGISTER requests periodically, as determined by the end node configuration.
  • the REGISTER requests tell the proxy/registrar where to route the calls for the given user name.
  • SIP uses a challenge-based authentication mechanism which is based on HTTP authentication defined in RFC 2617, which is hereby incorporated by reference in its entirety.
  • An exemplary registration sequence may be implemented as follows:
  • the client device sends a REGISTER packet to the SIP proxy; (2) the SIP proxy returns a "401 Unauthorized” packet, which contains a realm and a "nonce" which will be used by the client to construct its response;
  • the client responds with a new REGISTER packet with authorization information in it;
  • the response may be a MD5 checksum of the username, the password, the nonce, and the realm;
  • the server generates the same MD5 checksum and compares it with that sent by the client; if they match, the registration is accepted and a "200 OK" packet is returned.
  • a call can be placed from one SIP node to another.
  • Another mechanism may be used to translate numbers dialed by users into corresponding SIP URIs.
  • a telephone number in a SIP service is nothing more than a simple "label". The number is only given meaning by the rules used by the system to process the dialed number.
  • the manner in which a dialed number is processed is often referred to as a dialing plan or numbering plan.
  • a numbering plan is nothing more than making decisions about how to route a call based upon examination of the number dialed by the user. In practice, any processing rules could be used. Furthermore, the routing logic may be configured to process various prefixes. In one embodiment, the logic dialing model is configured to mirror the numbering plan of an existing local telephone service to simplify the process for customers.
  • customer VOI devices 102 may contain region- specific dialing plan processing rules to support traditional PSTN-style dialing for that region.
  • the region may be specified by the country code associated with customer VOI device 102 or set by factory configuration according to the local (within that country code) PSTN number associated with the device (e.g., determined through the TNBS process for that country- code/region).
  • Customer VOI devices 102 and VOI platform 104 may be designed to support the
  • ITU-T Recommendation E.164 numbering plan The system may make use of E.164 to Uniform Resource Identifiers (URI) Dynamic Delegation Discovery (ENUM) as defined in RFC 3761.
  • URI Uniform Resource Identifiers
  • ENUM Dynamic Delegation Discovery
  • RFC 3761 defines a way to use NAPTR queries to convert an E.164 number to a SIP URI.
  • E.164 number For example, a fully-defined E.164 number, as written on paper, looks something like this: +1-555-444-11 11". The plus-sign at the beginning of the number is a notation meaning "what follows should be interpreted as an E.164 number”.
  • An exemplary process may operate as follows.
  • the basic format of the NAPTR record is: domain IN NAPTR order pref flags service regexp replacement.
  • the fields have the following meanings: Domain
  • the domain label for the NAPTR record e.g. , sip.earthlink.net or sip.mindspring.com. Order
  • RFC 2915 defines four flags: "S",
  • the "S” and “U” flags are of primary interest in a SIP infrastructure.
  • the "S” flag means that the "replacement” field from the NAPTR record should be used to do a query on a SRV record.
  • the "U” flag means that the "regexp” field should be applied to the SIP URI, potentially rewriting the URI. This is most commonly used to implement reverse lookups for a phone number. Service
  • VOI platform 104 may operate in much the same manner, with exception of the use of a private domain, rather than the "el64.arpa".
  • the TNBS process ultimately results in a NAPTR record being created for the PSTN number associated with the specific customer VOI device, with the number being represented in full E.164 form.
  • the NAPTR record directs the E.164 number to the SIP URI for the specific customer VOI device.
  • the region-specific dialed number processing of the device may perform some local-specific processing to identify local numbers, and other numbers that should be directed to the attached PSTN connection (POTS port). For example, special processing may be performed for 91 1 , 411 , etc.
  • the dialed number may be normalized into an E.164 form and a process such as defined in RFC 3761 performed. If a matching NAPTR is found, a SIP call is attempted to the SIP URI specified by the matching NAPTR record. If the SIP call fails, depending on configuration settings, the call may be attempted using the attached PSTN connnection (POTS port). When the SIP call is successful, a peer-to-peer session is established between customer VOI devices (or other compatible end-points).
  • VOI provisioning module(s) 600 and TNBS 1 12 may be implemented in software, hardware, firmware, or a combination thereof. Accordingly, in one embodiment, VOI auto-provisioning module(s) 600 and TNBS 112 are implemented in software or firmware that is stored in a memory and that is executed by a suitable instruction execution system (e.g., processor 606 - FIG. 6).
  • a suitable instruction execution system e.g., processor 606 - FIG. 6
  • VOI auto-provisioning module(s) 600 and TNBS 112 may be implemented with any or a combination of the following technologies, which are all well known in the art: a discrete logic circuit(s) having logic gates for implementing logic functions upon data signals, an application specific integrated circuit (ASIC) having appropriate combinational logic gates, a programmable gate array(s) (PGA), a field programmable gate array (FPGA), etc.
  • ASIC application specific integrated circuit
  • PGA programmable gate array
  • FPGA field programmable gate array
  • FIGS. 1 - 11 represent modules, segments, or portions of logic, code, etc. which include one or more executable instructions for implementing specific logical functions or steps in the process. It should be further appreciated that any logical functions may be executed out of order from that shown or discussed, including substantially concurrently or in reverse order, depending on the functionality involved, as would be understood by those reasonably skilled in the art.
  • VOI provisioning module(s) 600 and TNBS 1 12 may be embodied in any computer-readable medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system that can fetch the instructions from the instruction execution system, apparatus, or device and execute the instructions.
  • a "computer-readable medium" can be any means that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
  • the computer-readable medium can be, for example but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, device, or propagation medium.
  • the computer-readable medium would include the following: an electrical connection (electronic) having one or more wires, a portable computer diskette (magnetic), a random access memory (RAM) (electronic), a read-only memory (ROM) (electronic), an erasable programmable read-only memory (EPROM or Flash memory) (electronic), an optical fiber (optical), and a portable compact disc read ⁇ only memory (CDROM) (optical).
  • an electrical connection having one or more wires
  • a portable computer diskette magnetic
  • RAM random access memory
  • ROM read-only memory
  • EPROM or Flash memory erasable programmable read-only memory
  • CDROM portable compact disc read ⁇ only memory
  • the computer-readable medium could even be paper or another suitable medium upon which the program is printed, as the program can be electronically captured, via for instance optical scanning of the paper or other medium, then compiled, interpreted or otherwise processed in a suitable manner if necessary, and then stored in a computer memory.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Multimedia (AREA)
  • Telephonic Communication Services (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

La présente invention concerne la liaison de numéros de téléphone dans un système voix sur Internet (112). Cette invention concerne aussi un procédé permettant de fournir un dispositif voix sur Internet de client destiné à des services voix sur Internet. Ce procédé consiste fournir un dispositif VOIP Internet de client (102) permettant de communiquer avec une ligne téléphonique existante et un réseau de données, à fournir un numéro de téléphone associé avec cette ligne téléphonique existante à une plate-forme voix sur Internet (104) et, à lier un numéro de téléphone existant à un identificateur unique associé au dispositif voix sur Internet de client (102).
PCT/US2004/033593 2004-10-12 2004-10-12 Liaison de numeros de telephone dans un systeme voix sur internet WO2006043917A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/US2004/033593 WO2006043917A1 (fr) 2004-10-12 2004-10-12 Liaison de numeros de telephone dans un systeme voix sur internet

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2004/033593 WO2006043917A1 (fr) 2004-10-12 2004-10-12 Liaison de numeros de telephone dans un systeme voix sur internet

Publications (1)

Publication Number Publication Date
WO2006043917A1 true WO2006043917A1 (fr) 2006-04-27

Family

ID=36203238

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2004/033593 WO2006043917A1 (fr) 2004-10-12 2004-10-12 Liaison de numeros de telephone dans un systeme voix sur internet

Country Status (1)

Country Link
WO (1) WO2006043917A1 (fr)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2021200641B2 (en) * 2011-01-07 2022-07-07 Starlogik Ip Llc System and Method for Verifying Telephone Numbers

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6600734B1 (en) * 1998-12-17 2003-07-29 Symbol Technologies, Inc. Apparatus for interfacing a wireless local network and a wired voice telecommunications system
US6671272B2 (en) * 1997-02-02 2003-12-30 Fonefriend Systems, Inc. Internet switch box, system and method for internet telephony
US6738461B2 (en) * 2001-11-01 2004-05-18 Callwave, Inc. Methods and apparatus for returning a call over a telephony system
US6747970B1 (en) * 1999-04-29 2004-06-08 Christopher H. Lamb Methods and apparatus for providing communications services between connectionless and connection-oriented networks
US6801604B2 (en) * 2001-06-25 2004-10-05 International Business Machines Corporation Universal IP-based and scalable architectures across conversational applications using web services for speech and audio processing resources
US6826174B1 (en) * 2000-03-02 2004-11-30 3Com Corporation Voice-over-IP interface for standard household telephone
US6839341B1 (en) * 1999-06-17 2005-01-04 Oki Electric Industry Co., Ltd. Device capable of accommodating existing voice terminals

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6671272B2 (en) * 1997-02-02 2003-12-30 Fonefriend Systems, Inc. Internet switch box, system and method for internet telephony
US6600734B1 (en) * 1998-12-17 2003-07-29 Symbol Technologies, Inc. Apparatus for interfacing a wireless local network and a wired voice telecommunications system
US6747970B1 (en) * 1999-04-29 2004-06-08 Christopher H. Lamb Methods and apparatus for providing communications services between connectionless and connection-oriented networks
US6839341B1 (en) * 1999-06-17 2005-01-04 Oki Electric Industry Co., Ltd. Device capable of accommodating existing voice terminals
US6826174B1 (en) * 2000-03-02 2004-11-30 3Com Corporation Voice-over-IP interface for standard household telephone
US6801604B2 (en) * 2001-06-25 2004-10-05 International Business Machines Corporation Universal IP-based and scalable architectures across conversational applications using web services for speech and audio processing resources
US6738461B2 (en) * 2001-11-01 2004-05-18 Callwave, Inc. Methods and apparatus for returning a call over a telephony system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2021200641B2 (en) * 2011-01-07 2022-07-07 Starlogik Ip Llc System and Method for Verifying Telephone Numbers

Similar Documents

Publication Publication Date Title
US7701883B2 (en) Telephone number binding in a voice-over-internet system
US7983254B2 (en) Method and system for securing real-time media streams in support of interdomain traversal
US8948200B2 (en) Method and system for providing secure communications between proxy servers in support of interdomain traversal
EP2449744B1 (fr) Restriction de communication dans un dispositif d'administration d' adresses voip
US7920549B2 (en) Method and system for providing secure media gateways to support interdomain traversal
US8537854B2 (en) Method and system for providing interdomain traversal in support of packetized voice transmissions
US8675642B2 (en) Using PSTN reachability to verify VoIP call routing information
US8228902B2 (en) Separation of validation services in VoIP address discovery system
US20070022289A1 (en) Method and system for providing secure credential storage to support interdomain traversal
US8228903B2 (en) Integration of VoIP address discovery with PBXs
US20100202439A1 (en) Prevention of voice over ip spam
US8437254B2 (en) Dynamic configuration of VoIP trunks
US9654520B1 (en) Internet SIP registration/proxy service for audio conferencing
US20130212646A1 (en) Usage authentication via intercept and challege for network services
US9485361B1 (en) Internet SIP registration/proxy service for audio conferencing
EP1835701B1 (fr) Système pour identifier de manière unique et joindre des utilisateurs VoIP
WO2006043917A1 (fr) Liaison de numeros de telephone dans un systeme voix sur internet
CN111163465B (zh) 连接用户终端与本地终端的方法、装置以及呼叫中心系统
US7197766B1 (en) Security with authentication proxy
Abdallah Secure Intelligent SIP Services
Palmieri Improving authentication in voice over IP infrastructures
Ono et al. Implementation Agreement for SIP Signalling Security for GMI 2004
Washington CCVP GWGK Quick Reference Sheets

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase