This invention relates to telephony, and more specifically, to an improved system and method for facilitating context sensitive telephone calls; i.e., telephone calls that convey the context of such call to the called party.
Telephone service has been in use for more than one hundred years without much change in the basic service concept and user experience. Recently, however, caller ID has become available. Caller ID provides that prior to a call being completed, and during call setup, out of band information identifying the calling party is transmitted to the called party. Caller ID allows the calling number and possibly a name associated with the calling number to be displayed on a called terminal. As indicated in
One disadvantage of caller ID is that the displayed information is typically tied to the calling terminal. That is, it is usually not variable to display anything about the call other than the calling terminal from which is originates and possibly a user that is somewhat permanently associated with that terminal.
Still another problem with prior art caller ID systems is that they do not optimally take advantage of more advanced computerized and internet voice equipment which has, to a large extent, replaced conventional telephones.
In view of the foregoing, there exists a need in the art to advantageously utilize modern voice communication systems in order to convey out of band and potentially context sensitive information concerning telephone calls.
In accordance with one embodiment of the invention, a soft button is utilized on a computing device to initiate a call. The activation of the button causes a server to download a “soft phone.” The soft phone is essentially a software agent that operates on the computing device to cause the computing device to call a specified telephone number only. Because the called telephone number is associated with a computing device, the call can embed certain context information unique to the particular soft button activated. Alternatively, the system can substitute for the caller ID information a unique identification number, which is used to do a database lookup and cause context for the call to be pulled and conveyed to the called terminal. This unique identification number is called a context reference number.
In other embodiments the context may be placed into the call by the computing device initiating the call, rather than by the server, or by any other router or server through which the call may pass.
In still other embodiments, the system can ascertain whether the called terminal is sophisticated enough to accept certain context information and based upon such determination, insert the context information when appropriate.
In still other embodiments, the system can ascertain what type or volume of context information the called terminal can accept and display, and based thereon, insert a context reference number that causes information to be displayed which is dependant upon said type or volume of information the called terminal can display.
These and other embodiments are described in more detail below.
Optionally, the downloaded agent may also include a context reference number that specifies how to lookup the context of the call. The lookup can be performed optionally at the PC, but may be simply transmitted through the media router to the called terminal 207 or 209. The context may be looked up in a database at any point in call routing, by any server or computer.
The PC 201 may use the soft phone to initiate a call via the internet and the call is directed to a specific media router handling media packets from the PC. The media router then transmits the media packets, optionally through the media gateway, over a network to a called terminal 207 or 209.
Although media gateway is shown as connected to a VOIP service 206, the media gateway may include plural interfaces to various services, such as PSTN, an IP telephony network, etc.
When the call reaches, for example, an intelligent terminal 209, the intelligent terminal can extract out the context reference number and use it to perform a database lookup. The database lookup maps the context reference number to a specific activation of a specific soft button by PC 201. The context associated with that call may then be displayed if terminal 209 has a display.
During call setup, the context reference number can also be used by the media router, the call router, or any other server in the system, to look up the context of the call in a database or other electronic file. In such embodiments, the context information pulled from the database and forwarded through the network to the called terminal, so that the called terminal itself does not have to do the lookup in order to obtain the context sensitive information.
Button server 304 captures the context reference number embedded in the button, and gives instructions to the mobile device to a make a PSTN call to the Media Router 305. Button server 304 then informs the media router 305 of the caller ID of calling terminal 301, as well as the context reference number associated with the call. When the call arrives at media router 304 from calling terminal 301, it is associated with the previously stored context reference number, and the proper context for the call may be extracted from a database or other file.
In one or more of the above embodiments, the context that is to be sent with the call to the called terminal may be varied based upon that called terminal type. Specifically, if the calling terminal, or other server, computer, or router in the system, does a table lookup to determine the context information, the same computer, router, or other server, or some other computer in the network, can maintain information indicating the type of terminal associated with the called number. Then, the context information can be optimally displayed on such terminal, depending upon whether such called terminal is a simple cell phone, or a more sophisticated PC type of device. The specific context information pulled may also vary depending upon the particular called terminal equipment, and whether its display is capable of displaying certain types and amounts of information. By maintaining, or obtaining in real time, information concerning the called terminal type, the information to be displayed can be customized to the type or category of terminal called.
In one example of the above embodiment, a server in the system ascertains first whether the called terminal is a simple, conventional telephone, or a more sophisticated computing device. This determination may be made from prestored data. In the former case, the context information is caller ID only. In the latter, the caller ID is removed from the signaling and in its place is substituted either the context reference number discussed above, or, alternatively, the context information itself may be placed therein. Thus, prior to altering the conventional caller ID, the server first determines if the called terminal is capable of optimally displaying the type and volume of information to be substituted for the caller ID, or if the called terminal is capable of using a context reference number to look up such context information. Then, the proper substitution of data, customized to the called terminal type, is placed into the call.
In one or more embodiments, the system or server inserting the context information may determine whether the destination equipment, or some other equipment through which the call will be routed, has the ability to look up context information from a context reference number. If so, said context reference number is inserted, but if not, the context information itself may be inserted.
In one or more embodiments, a plurality of context sensitive buttons may be displayed on a calling computing device. In response to a user activating one of said context buttons, the software agent including the web phone that is downloaded, may differ for each button. The downloading of the software agent may be accomplished using one or more known techniques for an agent to be downloaded and installed on a PC or a handheld device.
In addition, the context associated with one or more of the plurality of buttons may vary depending upon user login, even for the same computing device. The context may also be dependant upon a combination of the category or type of called number equipment, user login, and the particular soft button activated by the user.
Regardless of the context ultimately transmitted with the call, the called terminal can itself log the various contexts of numerous calls, and can thus create an audit trail of the context of numerous calls. In addition, the context information can cause a called terminal to initiate some other action, such as send an email, make an audible announcement, etc.
In another embodiment, the examples shown and described above in
Moreover, the type or category of called equipment and/or caller equipment may be utilized to determine which of the embodiments described above is utilized, and also, what particular content is displayed on the destination device. The device can be queried to make such a determination if the destination device is prearranged to supply such information, or alternatively, a table lookup as described above can be used for this purpose.
Following are some examples of using the foregoing techniques to convey and/or display specific call context.
Electronic Greeting Cards: Each e-card includes a “Call Me” button. In purchasing the e-card, the Card Giver is given an option to designate the card with a code to identify the intended Card Recipient with a context, for example, “Melissa—Birthday.” This code is imprinted into the button by way of associating the code “Melissa—Birthday” with the button's unique Button ID Number in a Database maintained as part of the system. When the Call-Me button is clicked to trigger a phone connection to be established from the Card Recipient to the Card Giver, at least two scenarios are possible depending on the handset used by the Call Recipient.
In a first scenario, the called party is using a PC or a smart cell phone with Internet capabilities, as opposed to a legacy telephone with, at most, a simple display. The message “Melissa—Birthday” can be retrieved from the Database and displayed on the receiving device so that the Card Giver can identify the call context readily. A relatively simple software application can retrieve and display the context information.
In a second scenario, the receiving device, a legacy phone, cannot display or accept the context code. In this case, a particular numeric code is pre-programmed and substituted as Caller ID for display, in advance of the message. The Card Giver has the choice of pre-programming this numeric code into the receiver's phone book directory for display as “Melissa—Birthday” upon receiving this numeric code as Caller ID.
Note that a Card Giver could have sent multiple cards to the same Card Recipient, e.g., “Melissa—Birthday,” “Melissa—Golf Game,” or “Melissa—Fri Dinner,” and the traditional use of Caller ID cannot differentiate between these contexts, but the techniques of the present invention can.
Sales email and cards: In this application scenario, the Call-Me button is applied to email messages and e-cards distributed for the purpose of sales promotion and advertisements. The technical aspects are similar to those of the Greeting Card example. But there are additional advantages of having the context available in the following cases.
First, if the electronic advertisements are distributed to a general list with unknown recipients, then the context can pinpoint the item in promotion and be used in routing the call to a dedicated merchant or a particular sales person for that item. Further, the electronic ads can be distributed to a pre-selected group of customers whose identities are known to the sender. In that case, regardless of how or where the caller is making the caller, the button context can readily identify the exact identity of the caller and the item of promotion at the same time.
Social Networking: In social networking, people often email to one another without knowing their identities other than their email user names. The anonymity in the situation is a desirable aspect to be preserved if voice communications were to be added. Current practice typically involves both parties to use the same application software to establish mutual voice communications, e.g., QQ, MSN or Skype. In using the context-based button of the present invention (made available on a website or an email), a call can be made to any receiving phone (VoIP or PSTN) without disclosing the receiving number and thus preserving the anonymity of the receiving party, and the button itself can be clicked on an email message to initiate the call without disclosing the origin of the call, or clicked from a website from anywhere. The call context in this example is the ready identification of the call as part of social networking.
Website Shopping: In using the call buttons on a shopping website, it is possible to assign a different button to every different product of different choice parameters, that is, at granular levels not easily achievable otherwise. This aspect can be used to direct calls based on the model or merchandise type, or special items, or type of customers (if login information is captured as part of the context).
Political Action: As an example, a political action organization engages in a massive email campaign to lobby support (or objection) to a proposed bill pending in the Congress. A call button is included in the email to call some public political office to voice one's opinion on a specific issue, e.g., “Call White House to Object to Income Tax Increase.” The context of the call is then the opinion of the issue itself. Not only can the system route the call to the White House, a simultaneous logging of the call made available to the originating political action organization will create statistics and records to use. Note that this approach is distinctly different from asking people to call the White House themselves to voice their opinions—the offered button allows for issue-specific opinions and the retained use of statistics to the originating organization.
Other examples of context can include text describing the purpose of the call, or any other information relevant to the call beyond simply conveying the identification of the originating number and a user associated with it, as in caller ID. Also, it is noted that the network over which the above described embodiments operate may be a VOIP network, a network more directed to telephony, or any other type or mix of types of networks over which the invention may be implemented.
The above and other variations of context are intended to be covered by the following claims appended hereto.
The foregoing describes the preferred embodiments of the present invention, but is not intended to be by way of limitation.