Abstract:
A method and apparatus for providing voice over internet protocol (VoIP) call setup progress status comprising creating an indication associated with a call placed from a client VoIP device in a providing network, modifying the indication periodically based on call setup progress and presenting the modified indication.

Description:
BACKGROUND OF THE INVENTION 
       [0001]    1. Field of the Invention 
         [0002]    Embodiments of the present invention generally relate to a voice over internet protocol (VoIP) service, and more specifically, to a VoIP call setup progress indicator. 
         [0003]    2. Description of the Related Art 
         [0004]    Establishing VoIP calls, particularly international calls, may take a significant amount of time to go through the various signaling and media stream establishment stages. Delay between placement of the call and reception of the call is due to the various stages the call goes through from the originating network to the destination network. Call setup involves performing authentication, performing database searches, transferring or hopping between various networks and the like. In hopping networks, the originating network may have difficulty in negotiating call exchanges and the like, and may seem to be “stuck”, creating a delay in establishing the call. This delay can cause users to lose confidence in the VoIP system and, in some cases, to disengage calls because they are unsure of the progress of the call, i.e., whether the call setup has become stuck or the network has disengaged the call. 
         [0005]    Therefore there is a need in the art for a method and apparatus for providing a VoIP call setup progress indicator as feedback for a user. 
       SUMMARY OF THE INVENTION 
       [0006]    Embodiments of the present invention relate to a method for providing voice over internet protocol (VoIP) call setup progress status comprising creating an indication associated with a call placed from a client VoIP device in a providing network, modifying the indication periodically based on call setup progress and presenting the modified indication. 
         [0007]    Further embodiments of the present invention relate to an apparatus for providing VoIP call setup progress comprising a progress reception module for receiving call setup progress on a call placed by a user of a client device and presenting the user with an indication of an initial call placement, an indication modification module for modifying the indication periodically based on the call setup progress, and a presentation module for presenting the user with the indication each time the indication is modified. 
         [0008]    Various advantages, aspects and features of the present disclosure, as well as details of an illustrated embodiment thereof, are more fully understood from the following description and drawings. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0009]    So that the manner in which the above recited features of the present invention can be understood in detail, a more particular description of the invention, briefly summarized above, may be had by reference to embodiments, some of which are illustrated in the appended drawings. It is to be noted, however, that the appended drawings illustrate only typical embodiments of this invention and are therefore not to be considered limiting of its scope, for the invention may admit to other equally effective embodiments. 
           [0010]      FIG. 1  is an illustration depicting a progress indication apparatus in accordance with one or more embodiments of the present invention; 
           [0011]      FIG. 2  is an illustration depicting a progress indication apparatus in accordance with another embodiment of the present invention; 
           [0012]      FIG. 3  is a block diagram of a computer system for implementing the progress indication apparatus of  FIG. 1  in accordance with another embodiment of the present invention; and 
           [0013]      FIG. 4  depicts a flow diagram for a method for providing VoIP call setup status in accordance with another embodiment of the present invention. 
       
    
    
     DETAILED DESCRIPTION 
       [0014]    Embodiments of the present invention generally relate to VoIP calls. According to one embodiment, a user is presented with an indication of call initiation, and the indication is modified during various stages of the call setup. In some embodiments, the network provides the user&#39;s client device with the call setup progress information, and the client device modifies the indication to update the user. In other embodiments, the network provides a modified indication to the user&#39;s client device, which then displays the indication to the user. The indication can be an audio, visual or tactile indication, or any other type of indication which alerts the user in a prompt manner as to the progress of the call setup. One of ordinary skill in the art would recognize that methods of indication besides audio, visual and tactile may be utilized in alerting the user. 
         [0015]      FIG. 1  is an illustration depicting a progress indication apparatus  100  in accordance with one or more embodiments of the present invention. The progress indication apparatus  100  comprises a progress reception module  102 , an indication modification module  104  and a presentation module  106 . According to this embodiment, the progress indication apparatus  100  is either located as hardware within a network  101 , or runs as software connected to, or within, the network  101 . In other embodiments, the progress indication apparatus  100  may be implemented as a combination of hardware and software located in the network  101  or within the client device  121 . According to some embodiments of the present invention, the network  101  is a VoIP network, or any compatible packet based network. 
         [0016]    A user of the VoIP network  101  initiates a call from device  121 , (a client device), to device  122  (a third party device), which may be a mobile phone, a land-line device connected to a PSTN network, another VoIP device, a computer telephony software application, or any other device adapted for use on a telecommunications network. The user of the device  121  initiates the call by entering the phone number, or selecting the name of the device or user of the device  122 . At this point, the VoIP network  101  receives the call request and performs validation and authentication operations on the device  121 . The authentication services may involve inspecting authentication tables to determine whether the device  121  is a valid device for the VoIP network  101  and the user is authorized to make calls from this device. 
         [0017]    The authentication process also determines which plan the user has subscribed to, and which services are available. After the authentication process, the network  101  may look at the identification of the calling party, determine whether the calling party is an “on-net” user, determine which types of calls the device is supports such as video or high definition calls, build a network path to the called party or the recipient, and any other stage used in call placement. More detail is found in U.S. Pat. No. 8,265,083 for “Systems and Methods of Providing Communication Services” issued on Sep. 11, 2012 which is herein incorporated by reference in its entirety. In some instances, for example, where the device  122  is a mobile device, the network  101  may transfer control of the call to another network, such as a GSM network, or another IP network in order to connect with computer based clients. Eventually, the call originating from device  121  connects to the device  122  and the two users can speak. 
         [0018]    As the call setup progresses in the network  101 , the progress indication apparatus  100  is informed of each step in the setup process. The progress reception module  102  receives notification that a setup step has been concluded during the call setup progress. Once the call leaves the network  101 , the network  101  forwards any progress messages received from external networks regarding call setup progress to the progress reception module  102  of the progress indication apparatus  100 . The indication modification module  104  receives notice from the progress reception module  102  that a change in progress has occurred, and modifies an indication  108  stored in the indication apparatus  100 . 
         [0019]    According to some embodiments, the type of the indication  108  is stored as a part of the user&#39;s profile in the network  101 . In other embodiments, the indication  108  is a predetermined indication. According to some embodiments, the indication  108  can be one or more of an audio ring-tone, a visual indicator, or tactile feedback, either stored locally in the client device  121 , or stored remotely in the network  101 . In the case where the indication  108  is a visual indicator or tactile feedback, the indication  108  stores data regarding how the indicator will be formatted in the client device  121  or the network  101 . 
         [0020]    The indication modification module  104  modifies the indication  108  pattern, tone, pitch, frequency, or replaces the indication  108  with another indication, similar in type to the previous indication. For example, if the indication  108  is an audio ring-tone, the audio ring-tone is replaced with a modified pitch ring-tone when the progress reception module  102  receives a notification that call setup has progressed to the next step. According to some embodiments, the network  101  provides the audio indication to the client device  121  and the client device  121  renders the visual feedback. 
         [0021]    The progress indication apparatus  100  further comprises a presentation module  106 , which, when the indication modification module  104  has modified the indication  108 , presents the indication  108  to the device  121 . If the user has preconfigured their device  121  to only receive audio indications of call setup progress, the presentation module  106  presents the indication  108  as an audio indication, and the client device  121  functions similarly for other types of indications. 
         [0022]    The client device  121  can be configured to receive audio as well as other types of indications. In addition, according to some embodiments, the presentation module  106  determines the specifications of the device  121  and returns only those indications which the device  121  is capable of receiving, for example, audio and tactile only, or any combination of indication types. If the device  121  is capable of receiving and presenting all types of indications, the device  121  can be configured to display all indications, or to display those indications preferred by the user of device  121 . In addition, the network  101 , according to some embodiments, may store configuration parameters for the type of indications which are sent by the presentation module  106 , where certain types of indications are permitted to some users, and other types are prohibited. 
         [0023]      FIG. 2  is an illustration depicting a progress indication apparatus  200  in accordance with another embodiment of the present invention. According to this embodiment, the progress indication apparatus  200  is located as a software or hardware component within a client device  201 . The progress indication apparatus  200  comprises a progress reception module  202 , an indication modification module  204  and a presentation module  206 . The indication  208  is also stored in the client device  201  and accessed by the client device  201  and the indication modification module  204 . 
         [0024]    Initially, a user of the client device  201  places a call over the network  101  to a target device  222 . The call setup progresses through various stages 1 . . . N as shown in  FIG. 2 . In some embodiments, the call may be rerouted through various network devices located in network  101 , and each network device “hop” may be considered a call setup stage. According to some embodiments, the user can configure what is considered a call setup stage, and according to other embodiments, the network pre-configures each call setup stage definition. In some instances, the call may be received at a network terminator, and a call setup stage update notification can be sent to the client device  201  after reaching the terminator. 
         [0025]    After each call setup stage in the call setup is complete, a notification is sent to the progress reception module  202 . The progress reception module  202  transmits a notification to the indication modification module  204  to modify the indication because a new step in the call setup has started. The indication modification module  204  modifies the indication  208 , which may be an audio indication, a visual indication, a tactile indication, or any type of indication capable of capturing the user&#39;s attention. The presentation module  206  then presents the modified indication  108  to the client device  201 . 
         [0026]    In some embodiments, the presentation module  206  presents the indication  208  directly to the user, i.e., the presentation module  206  is coupled to the audio output of the client device  201  and modifies the ring tone as the call setup progresses, and the presentation module  206  may be coupled to an LED on the client device  201  and update the color of the LED, or a visual display on the client device  201  and update the visual display by showing percentage complete. According to some embodiments, one or more of the various types of indications are presented to the user through the client device  201 . According to other embodiments, the user configures which type of indication the user would like to see in the client device  201 . According to some embodiments, if the user of the client device  201  has other devices in place connected to the network  101 , the indication can also appear there, for example, on a television screen. 
         [0027]      FIG. 3  depicts an implementation of the progress indicator apparatus  100  of  FIG. 1  by a computer  300  in accordance with at least one embodiment of the present invention. In some embodiments, the progress indicator apparatus  100  may be implemented using a plurality of such computers, for example a group of servers. The computer  300  includes a processor  302 , various support circuits  306 , and memory  304 . The processor  302  may include one or more microprocessors known in the art. The support circuits  306  for the processor  302  include conventional cache, power supplies, clock circuits, data registers, I/O interface  307 , and the like. The I/O interface  307  may be directly coupled to the memory  304  or coupled through the support circuits  306 . The I/O interface  307  may also be configured for communication with input devices and/or output devices  368  such as network devices, various storage devices, mouse, keyboard, display, video and audio sensors, IMU and the like. 
         [0028]    The memory  304 , or computer readable medium, stores non-transient processor-executable instructions and/or data that may be executed by and/or used by the processor  302 . These processor-executable instructions may comprise firmware, software, and the like, or some combination thereof. Modules having processor-executable instructions that are stored in the memory  304  comprise a progress indication module  306 . 
         [0029]    As described below, in an exemplary embodiment, the progress indicator module  306  comprises a progress reception module  308 , an indication modification module  310  and a presentation module  312 . The computer  300  may be programmed with one or more operating systems, which may include OS/2, Java Virtual Machine, Linux, SOLARIS, UNIX, HPUX, AIX, WINDOWS, IOS, ANDROID among other known platforms. 
         [0030]    The memory  304  may include one or more of the following random access memory, read only memory, magneto-resistive read/write memory, optical read/write memory, cache memory, magnetic read/write memory, and the like, as well as signal-bearing media as described below. 
         [0031]      FIG. 4  depicts a flow diagram for a method  400  for providing VoIP call setup status in accordance with previous embodiment of the present invention as depicted in  FIGS. 1 and 2 . The method  400  is an exemplary implementation of the progress indicator module  300  as executed on the computer system  300  shown in  FIG. 3 . 
         [0032]    The method  400  begins at step  402  and proceeds to step  404 . At step  404 , the progress reception module  308  receives a progress update or notification related to an initiated call from a client device to a target device. As discussed above, the client/target device may be computer software, mobile devices, land-line devices, VoIP devices or the like. During each call setup step, the network over which the call is placed will notify the reception module  308  of any “hops” to different networks or other steps in the call setup. 
         [0033]    When the call is initially placed, an indication is provided to the user of the client device regarding the initiation of the call at step  404 . For example, an audio ring-tone is played, the client device delivers tactile feedback such as vibration, or an LED on the client device activates or blinks. 
         [0034]    When a call setup progress notification is received by the progress reception module  308 , the indication modification module  310  modifies the indication according to the received progress update at step  408 . For instance, if the call setup progress indicates that authentication is complete and the call is moving to the next setup step, the progress reception module  308  receives a notification from the VoIP network, and requests that the indication modification module  310  modify the indication, whether it is an audio indication, a visual indication or the like. 
         [0035]    At step  410 , the presentation module  312  presents the user with the modified indication through the client device. The modified indication may be a modified audio ring tone, a modification of a pattern of LED lights, a visual graphic showing a progress bar, a textual display or graph of a percentage of call setup completion, a change in ring-tone pitch, frequency or the like. Embodiments of the present invention do not limit the type of indication to be presented to the user, and one of ordinary skill in the art would recognize that any type of indication may be used to keep the user updated as to the call setup progress. Alternatively, the user can configure the client device to present the user with the modified indication only at a particular progress step, i.e., the completion of the call setup progress, or when the call moves to a different network, or the like. The method terminates at step  412 . 
         [0036]    While the foregoing is directed to embodiments of the present invention, other and further embodiments of the invention may be devised without departing from the basic scope thereof, and the scope thereof is determined by the claims that follow.