1. Field of the Invention
The invention relates to the field communications, and more particularly, to a system and method for enhanced processing of communications made over a peer-to-peer network.
2. Description of the Related Art
Various systems exist that facilitate the transmission of voice, video and data communications over computer networks, such as the Internet or other circuit switched, cell switched or packet-switched networks. SKYPE limited is one provider of software that uses a proprietary protocol (“the SKYPE protocol”) to communicate voice and/or video telephone calls over the Internet. In order to transfer packetized voice and/or video telephone calls, the SKYPE protocol uses a peer-to-peer (“P2P”) architecture.
In particular, the SKYPE user directory is decentralized and distributed among the nodes forming the network. Under the SKYPE protocol, each “ordinary” node maintains a host cache with the IP address and port numbers or reachable “super” nodes. Each supernode hosts a portion of the directory of users logged-in to SKYPE at that particular time. Any node of the network can be selected as a supernode based, in part, on bandwidth, firewall status and processing power. Registered users login to the SKYPE network using a unique SKYPE name (“SKYPE ID”) that is assigned an IP address. When a first registered member wishes to contact a second registered member, the first registered member types in the second members unique SKYPE ID and a lookup is used to find the second registered member IP address in the directory distributed over the supernodes. If the second registered member is logged-in to the system, the two members are connected and the second registered member can accept or decline the call. Currently, if the second registered member is not logged-in, or is not at the computer when the call comes in, or if the second registered member declines the call, the call will terminate without the first member being able to speak with the second member. The second registered member is merely alerted to a missed call by an indicator on the screen.
What is needed is a voice over IP system that utilizes a modified P2P network, wherein a user can predefine rules for receiving communications over the P2P network. What is additionally needed is a coordinated system for processing calls made to a user or from a user in a P2P network and for implementing rules of communication over the P2P network, as defined by the user.
In order to overcome the above-mentioned disadvantages of the heretofore-known devices of this general type, it is accordingly an object of the invention to provide a system, method and apparatus for providing enhanced processing of communications over a peer-to-peer network. In one particular embodiment of the invention, a client running on a user's computer determines whether an incoming computer call should be further processed before being provided to the user. If it is determined that further processing is warranted, the call is provided to another destination for processing in accordance with rules preset by the user.
Although the invention is illustrated and described herein as embodied in a system, method and apparatus for providing enhanced processing of communications over a peer-to-peer network, it is nevertheless not intended to be limited to the details shown, since various modifications and structural changes may be made therein without departing from the spirit of the invention and within the scope and range of equivalents of the claims.
The construction of the invention, however, together with the additional objects and advantages thereof will be best understood from the following description of the specific embodiments when read in connection with the accompanying drawings.
BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING
Referring now to
Referring back to
Currently, SKYPE limited offers, for a fee, a call-forwarding option, wherein if you are not logged into the SKYPE network, or if you are logged into the SKYPE network, but do not answer a call request within a user specified amount of time, the SKYPE system will forward the incoming call. Under the SKYPE protocol, the call is first forwarded to a user-specified telephone number and, then, optionally, if the call is unanswered, to SKYPE voicemail. However, the foregoing features described in connection with the current SKYPE system start by presenting the call to a logged-in subscriber, and then forwarding the call if the logged-in subscriber does not answer it. In accordance with the instant invention, an incoming computer call can be sent for further processing and/or forwarding before it is ever provided to the user, even if the user is currently logged in to the SKYPE network.
In one particular embodiment, the instant invention includes a software client or application that runs in combination with the SKYPE software application on a user's computer. For example, the USER A at location 110 has loaded, and is running, the SKYPE software application on his computing device 115. Similarly, the USER B at location 120 is running the SKYPE software application on her device 125. Both of the devices 115 and 125 are now operating as ad hoc nodes of the P2P network and have the ability to call each other over that network. However, USER B is additionally running a software application, in accordance with the instant invention, that intercepts a call request from the P2P network and, if indicated by a determination of the software, provides the call request to a communications processor 140 at a remote location 150 (i.e., not the location of USER A or USER B) for further processing prior to providing the call information to USER B. Such further processing includes processing the incoming communications (COMM) request in accordance with a variety of rules or instructions that USER B has predefined, using the device 125, and which are stored in a database 145 of the communications processor 140. Under such rules, a communication request can be processed, for example, to be provided to a landline phone 122 of USER B, via the public switched telephone network (PSTN), or to a VOIP or mobile phone 127, as specified by the rules set in advance by USER B, all before the USER B is ever informed of the communication request having been received by the device 125. The communications processor 140 of the remote location 150 can be, but need not be, part of the P2P network on which the call originated or of any P2P network.
Referring more particularly to
When executing the module on the device 125, the user USER B can utilize a user interface of the device 125 to define rules for handling incoming communication requests. Step 230. Note that device 125 is not the only method by which USER B may define the rules for handling incoming communications requests. USER B may utilize any device equivalent in function to device 125 that has a connection to the communications processor 140 and/or the database 145. For example, USER B can set up rules so that incoming communication requests are first provided to the telephone 122, via the PSTN, and, then, upon non-answer of the telephone 122, to a mobile device 127, to voicemail, and/or to other devices, as desired by the user, all before the communication request is ever displayed on the user's computer display, or even, instead of ever displaying the communication request on the user's computer display. As such, once the user, USER B, logs onto the P2P communications network (step 240), the module runs in the background of the user's device 125 to receive or intercept the communication requests and forward them for processing in accordance with the user's predefined rules. Step 250. If desired, the user can inform the software module to pass calls through to be displayed on a display device of the user's device 125.
In particular, the user, USER B, can define the conditions upon which the call is forwarded to the remote location 150, and for processing of the call, once forwarded. The user defined rules are stored in a remote database 145 accessible by the communications processor 140 and a call to USER B is processed in accordance with these rules. In one particular embodiment, the remote location 150 is a centralized call processing center. In another particular embodiment of the invention, the remote location 150 is a centralized call processing center that additionally provides USER B with other services, such as VOIP phone services, via the device 127.
The rules preset by the user and stored in the database 145 of the remote location 150 can define any number of user preferences for the particular user, USER B. For example, the user preferences/rules stored in the database 145 can include, but are not limited to, such information as:
Similarly, the rules stored in the database 145 could be used to define the way calls are handled in particular situations. For example, the rules stored by the user could enable the server 140 to act as a virtual switchboard, i.e., providing options and/or instructions for the calling party and performing further actions based on the calling parties selections.
For example, using a software module in accordance with the present invention, USER B can preset the rules stored in the database 145 to first present information of the communication request to the display of the device 125, in the form of a pop-up screen, and, upon non-answer of the communication request, to forward the call to other devices of USER B. In one particular embodiment, upon non-answer of the communication request on the device 125, the rules can be set to specify that the call be processed and forwarded to USER B's landline 122, via the PSTN, and to USER B's mobile device 127, simultaneously. This gives USER B the option to select upon which device she takes the call. The rules can additionally define that, upon non-answer on the devices 125, 122 and 127, the call can be provided to a voicemail provider. In one particular embodiment of the invention, the voicemail provider is managed by the same entity as the server 140. Additionally, in such a system, the voicemail message can be associated with the account of USER B in the database 145.
Note that USER B can define other preferences that are stored in the database 145. For example, in one particular embodiment of the invention, USER B can specify, and/or upload to the database 145, a particular song or message to be played to a calling party (USER A, in the present example) while the communication request is being processed and provided to the devices 125, 122, 127.
Once USER B logs out of the P2P network (step 260) and/or exits the particularly described module of the invention, the normal default rules for the P2P network application apply. For example, in the SKYPE network, a registered user is permitted to store a telephone number to which the call will be forwarded if the user is not currently logged-in to the P2P network. In one particular embodiment of the instant invention, if desired, instructions stored in the client and/or user device can be used to inform the P2P/SKYPE network about how to process calls when the user is not currently logged into the P2P network or the user's device is non-responsive to a call request made over the P2P network. Such instructions can include instructions to forward information relating to a call request to the remote location (150 of
Referring now to
Next, if the module running in the background of USER B's device 125 determines that the incoming call should be sent for further processing prior to being presented to the user, the communication request received by USER B's device 125 (but not yet displayed to USER B) is forwarded to the server 140 of the remote location 150 for further processing, wherein it is processed in accordance with the rules predefined by USER B, stored in the database 145. Step 360. After such processing, the communication request made by USER A is step 310 can be provided to USER B, in accordance with USER B's preset rules. For example, the communication request can be provided to USER B as a pop-up window on the device 125 that is running the module and/or the communication request can be processed by the server 140 to forward the call to another device of USER B, such as the telephone 122 or mobile device 127 and/or other devices, as defined in the rules previously stored by USER B. Step 340.
In summary, a module in accordance with the present invention sits on a user's computer and waits for a communication request to be received over a P2P network. A received communication request is analyzed and processed in accordance with rules previously defined by the recipient user, before the recipient user is even informed of the receipt of the incoming call. Additionally, the storage of the user's rules, as well as the processing of the communication request in accordance with those rules, is performed on a computer remotely located from both of the recipient user's computer and the calling user's computer. The processing can be used to forward a call from the P2P network, to a device not part of the P2P network, such as to a mobile device, a voicemail address or even a landline telephone reached over the PSTN. Thus, if USER B is not sitting in front of the device 125 at the time the communication request comes in, the opportunity to communicate with the caller is not lost. Rather, the call is passed through to another one of USER B's devices.
Note that the module of the instant invention can also provide functionality other than the call-forwarding functionality described above. More particularly, referring now to
Note that the screening feature described in connection with
Referring now to
It should be clear that each block or step of the flowcharts of
Accordingly, while a preferred embodiment of the present invention is shown and described herein, it will be understood that the invention may be embodied otherwise than as herein specifically illustrated or described, and that within the embodiments certain changes in the detail and construction, as well as the arrangement of the parts, may be made without departing from the principles of the present invention as defined by the appended claims.
This application is a continuation of U.S. Non-Provisional Application Ser. No. 13/159,512, filed Jun. 14, 2011, entitled “System, Method and Apparatus for Enhanced Processing of Communication in a Peer-to-Peer Network” which claims the benefit of U.S. Provisional Application Ser. No. 61/357,627, filed on Jun. 23, 2010, entitled “System, Method and Apparatus for Enhanced Processing of Communication in a Peer-to-Peer Network”; the prior applications are herewith incorporated by reference in their entirety.
Number | Date | Country | |
---|---|---|---|
61357627 | Jun 2010 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 13159512 | Jun 2011 | US |
Child | 13355742 | US |