US20070159973A1 - Methods and Apparatuses to Provide Multimedia Connections - Google Patents

Methods and Apparatuses to Provide Multimedia Connections Download PDF

Info

Publication number
US20070159973A1
US20070159973A1 US11/677,993 US67799307A US2007159973A1 US 20070159973 A1 US20070159973 A1 US 20070159973A1 US 67799307 A US67799307 A US 67799307A US 2007159973 A1 US2007159973 A1 US 2007159973A1
Authority
US
United States
Prior art keywords
connection
call
callee
user
caller
Prior art date
Legal status (The legal status 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 status listed.)
Abandoned
Application number
US11/677,993
Inventor
Ebbe Altberg
Scott Faber
Ron Hirson
Sean Van der Linden
Paul MANCA
Kelvin Ho
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
UTBK Inc
Original Assignee
UTBK Inc
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 UTBK Inc filed Critical UTBK Inc
Priority to US11/677,993 priority Critical patent/US20070159973A1/en
Assigned to UTBK, INC. reassignment UTBK, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: MANCA, PAUL G., ALTBERG, EBBE, FABER, SCOTT, HIRSON, RON, HO, KELVIN, VAN DER LINDEN, SEAN
Publication of US20070159973A1 publication Critical patent/US20070159973A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • 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/10Architectures or entities
    • H04L65/102Gateways
    • H04L65/1023Media gateways
    • H04L65/103Media gateways in the network
    • 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/1101Session protocols
    • 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/10Architectures or entities
    • H04L65/102Gateways
    • H04L65/1033Signalling gateways
    • H04L65/104Signalling gateways in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13034A/D conversion, code compression/expansion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/1313Metering, billing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13175Graphical user interface [GUI], WWW interface, visual indication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/1324Conference call
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13248Multimedia
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13389LAN, internet

Definitions

  • At least some embodiments of the present invention relate to user interface techniques to assist people to connect for real-time communication, such as connecting people for telephonic conversation, chat, document sharing, screen-sharing, etc., and/or non-real time communication, such as email.
  • Internet cellular communication systems, television, newspaper, etc., provide diverse communication media channels through which people may receive information and/or communicate with each other.
  • a web site may be referred to as a blog.
  • a blog may include content showing what is happening in the life of the person, collecting information on certain types of subjects of interest to the person, providing links to related web sites, etc.
  • a personal web site may include a collection of contents that may be helpful to people of similar interest.
  • Telephone systems allow users to conduct real time two-way voice communication.
  • Traditional land-line based telephone systems connect one telephone set to another through one or more switching centers, operated by one or more telephone companies, over a land-line based telephone network.
  • a telephone connection is based on a circuit switched network.
  • VoIP Voice over IP
  • WAP Wireless Application Protocol
  • FIG. 1 illustrates a system according to one embodiment of the present invention.
  • FIG. 2 illustrates a user interface to create a listing according to one embodiment of the present invention.
  • FIG. 3 illustrates a user interface to start a communication according to one embodiment of the present invention.
  • FIG. 4 illustrates a user interface to display the status of a communication connection process and to provide the user guidance through the process according to one embodiment of the present invention.
  • FIGS. 5-12 show examples of flow diagrams of a process to connect a user and an adviser for communication according to one embodiment of the present invention.
  • FIG. 13 illustrates a method to display a call button according to one embodiment of the present invention.
  • FIG. 14 illustrates a method to monitor and control a connection according to one embodiment of the present invention.
  • FIG. 15 shows a diagram of a system to assist and track connections according to one embodiment of the present invention.
  • FIG. 16 shows a block diagram example of a data processing system which may be used with the present invention.
  • FIG. 17 illustrates a connection interface that allows a user to request multiple types of concurrent connections with a callee according to one embodiment.
  • FIG. 18 illustrates a call button showing the real time availability of the types of connections available to a customer according to one embodiment.
  • FIG. 19 illustrates a connection interface that allows a user to monitor the current connections and to request further concurrent connections according to one embodiment.
  • FIG. 20 shows a method to provide multiple concurrent connections with separate billing according to one embodiment.
  • FIG. 21 shows a system including a connection server configured on a packet switched network according to one embodiment.
  • FIG. 22 shows a connection server according to one embodiment.
  • a first embodiment includes: an application receiving a representation of an object including a reference to a remote system and a callee; the application communicating with the remote system via the reference to the remote system and the callee to determine a rendering of the object; and the application rendering the object identifying a state of the callee for accepting a request for real time communication, the object selectable to at least initiate a request for real time communication with the callee.
  • a second embodiment includes: maintaining a listing for offering to establish real time communications with a first entity, including: contact information of the first entity; a price for a first predetermined period of real time communication with the first entity; and at least one option provided by the first entity to continue beyond the first predetermined period of real time communication; and after purchasing a first session of the first predetermined period of real time communication, presenting the option to continue the first session beyond the first predetermined period of real time communication.
  • a third embodiment includes: presenting a graphic to guide a communicator through a connection process to establish a media connection between the communicator and a communicatee for real time communication; updating the graphic to provide an updated status of the connection process; and updating the graphic to instruct the communicator to take an action based on a current status of the connection process.
  • a fourth embodiment includes: receiving in a system a call back time window for a request from a first entity to establish a media connection for real time communication with a second entity, the call back time window being specified by the first entity to indicate a period of time including a current time during which the first entity is available for real time communication with the second entity; and attempting to establish the media connection between the first entity and the second entity according to the call back time window.
  • a fifth embodiment includes: responsive to a first request from a callee, providing a communication reference to the callee for distribution; and responsive to a second request from a caller indicating the communication reference, determining a current availability state of the callee for real time communication and providing information to the caller according to the current availability state of the callee.
  • a sixth embodiment includes: a first party providing one or more references to a second party for distribution to customers, the one or more references capable of being used to request the first party to provide a plurality of communication connections to a communicatee, the plurality of communication connections being connected simultaneously to the communicatee at least for a period of time; and the first party charging separate fees for the plurality of communication connections
  • the disclosure includes methods and apparatuses which perform these methods, including data processing systems which perform these methods, and computer readable media containing instructions which when executed on data processing systems cause the systems to perform these methods.
  • a system is to provide services to people who wish to make connections for real time communication, such as live telephone conversation, chat, video conferencing, instant messaging, and other forms of real time communications.
  • benefits of the services may include anonymity for one or more of the parties of the real time communication.
  • the service can connect the caller and callee without revealing the contact information of one party to another, such as the actual telephone number.
  • the services may include filtering callers/participants so that only those who are willing to pay can get connected.
  • the services may include collecting payments for the callee so that the callee can earn money from talking to the callers over the phone without the burden of managing payment collection, etc.
  • the services may include scheduling so that the real time communication are initiated at a convenient time (e.g., no night calls).
  • the services may include queue managing to serve both the callees and the callers.
  • the services may include providing the cool, convenient click-to-call functionality to attract callers for the callees.
  • the services may include providing a persistent and consistent way to reach people.
  • a web link, or a toll-free number, or a local phone number can be provided by the system so that the callers can reach the callee using the web link, or the toll-free number, or the local phone number even after the telephone of the callee has been changed.
  • the callee can publish the web link and/or the phone number, knowing that the calls will follow if the callee updates the telephone number in the system.
  • the callees do not need to reveal their actual telephone numbers to the potential callers. If desired, the callee can keep the caller from knowing the actual telephone number of the callee for anonymity.
  • the service may provide any combination of the benefits discussed above.
  • Embodiments of the present invention can also be applied to other real time communication systems (e.g., text chat, instant messaging, voice/video conferencing, etc.) in a way similar to the telephone conversation.
  • real time communication systems e.g., text chat, instant messaging, voice/video conferencing, etc.
  • FIG. 1 illustrates a system according to one embodiment of the present invention.
  • callees who have customers, fans, far-away clients, etc., can make money talking with them on the phone.
  • the system provides the callees with services of managing the transactions such that the callees can sell what they have to say with reduced/minimum efforts on business aspects. For example, a blogger can earn money from the blog by talking to the interested readers of the blog.
  • the callee can sign up for a call button of the system and/or for a phone number provided by the system.
  • the call button and/or the assigned phone number can be used as the contact information of the callee.
  • the callee can publish the call button and/or the phone number in a variety of media channels and environments, such as in the blog, in advertisements, in news articles, in column discussions, in business cards, etc.
  • the callees manage their own distribution of the call button and/or the phone number, since the callees may have their unique ways to reach potential callers (e.g., through blogs, home pages, business cards, etc.).
  • the callees can bring the call button and/or the phone number into the context where the customers of the callees are, such as their own web pages or blogs or business cards (e.g., via a phone number).
  • the system may also help the callees to reach callers through presenting the call buttons and/or the phone numbers in marketplaces, such as online listings of services, advertisements embedded in the search results generated by a search engine, classified advertisements, etc.
  • the callees After signing up for the call button and/or the phone number, the callees can set up their own prices and their own hours for receiving the calls.
  • the call button and/or the phone number leads the callers to callees, the callees can earn money by talking to the callers without having to manage scheduling, queue, payment collection, privacy, etc.
  • the callees can enjoy the benefit of anonymity provided by the system, since the callees do not have to reveal their actual phone numbers to the potential callers in order to receive calls.
  • the system provides the filtering functionality so that some callers can reach the callees.
  • the services of the system are packaged and delivered through the use of a call button and/or a communication reference (such as a phone number) assigned to the callee.
  • a call button and/or a communication reference such as a phone number assigned to the callee.
  • the callees do not have to rely upon a marketplace, such as keen.com, to reach callers.
  • FIG. 2 illustrates a user interface to create a listing according to one embodiment of the present invention.
  • the callee can specify the rate the callee will charge the callers when the callers want to talk to the callee.
  • the callee may specify the price (rate) in terms of a package, such as $100 for one hour.
  • a call package has a specified price for a given time limit that is longer than one minute (e.g., one hour).
  • the callee may specify the price in terms of a price per unit of time, such as $2 per minute, without specifying a time limit.
  • the callee can further specify the policy for the continuation of the call beyond the time limit (e.g., $50 per 30 minutes thereafter, or end call, or no longer charge).
  • a time limit e.g. 60 minutes, two hours, etc.
  • the callee can further specify the policy for the continuation of the call beyond the time limit (e.g., $50 per 30 minutes thereafter, or end call, or no longer charge).
  • the callee can specify the phone number (e.g., 415-861-6100) at which the system will call the callee when a customer wishes to speak to the callee.
  • the phone number is used by the system to call the callee and make a connection to the customer.
  • the phone number of the callee is not provided to callers (customers of the callee) for anonymity.
  • the callee may specify a listing name (e.g., for this listing).
  • the callee may create multiple listings with different rates, phone numbers, etc., in the same account.
  • the callee provide may further description and a photo (e.g., a photo of the callee) for the listing.
  • the photo of the listing should be no larger than 70 pixel wide by 70 pixel high and should be in either GIF or JPEG format.
  • the system may automatically convert the image uploaded from the callee into the appropriate size and format. However, it is understood that other sizes can also be used.
  • the callee can select the button “Continue” to access the next screen for getting the call button.
  • the web server of the system provides the callee with: a call button and/or a phone number, such as 1-800-GO-ETHER extension XXXX, after the callee finishes creating the listing.
  • the call button and the phone number assigned to the callee are intended for the callee to place wherever a caller (buyer) will come across them.
  • a golf pro provides great swing tips.
  • the golf pro as a callee (seller) can put a call button on a blog, on a web page, in the footer of an email, etc.
  • people are reading the blog about golf equipment, they might think “I'm really interested in what this person has to say, I think I'll pay to talk to them live and ask them all my questions.”
  • the call button includes HTML (Hypertext Markup Language) code which contains a reference to the listing and one or more links to a server of the system.
  • HTML code can be inserted into the blog and/or the home page of the callee, or an email.
  • the browser shows a call button which can be selected (e.g., through “clicking” on the call button using a cursor controlling device, such as a mouse, a track ball, a joystick, a touch screen, etc.) to request a phone connection.
  • a cursor controlling device such as a mouse, a track ball, a joystick, a touch screen, etc.
  • An example of the appearance of a call button includes an icon showing a telephone set and the text “call now”, as illustrated in FIG. 1 .
  • the appearance of the call button may include an icon, which when selected or activated can initiated a request for a real time communication connection.
  • the call button can be specified in documents in a format other than HTML, such as in an extensible markup language (XML).
  • XML extensible markup language
  • the call button can change its state depending on the state of the caller and/or callee. For instance, if the callee is already on a phone call with a caller, the button would indicate “busy,” so that a second caller would see that the callee is already on a telephone. Clicking on the button in this instance would give the second caller the ability to get in line to talk to the callee. Or, in another embodiment, the second caller clicking on the button could give him the ability to join the call in progress.
  • the call button can change its state depending on what the callee explicitly indicates.
  • the callee could, for instance, tell the system, via a web form or telephone IVR, that he is currently “taking calls” or “not taking calls” or “offering video” or “offering chat” or “taking appointments” or taking “arranged calls” or “callbacks.” He could indicate that he is taking calls and is “by my phone,” indicating a heightened presence. Depending upon each of such states, the system would lead callers down different communication paths. If a callee is “by my [his/her] phone,” the system might call the caller first, since it's highly probably that the callee will be available for his/her side of the connection.
  • the system might call the callee first, since he/she might be the more unlikely party to be available.
  • Other communication paths include getting in line, joining a conference call, turning on a video connection, scheduling an appointment, entering into a chat session, etc.
  • the golf pro can use the phone number for various offline media and other media. For example, if the golf pro writes a column for Golf Digest magazine, he can put the phone number that is assigned to him (e.g., Ether phone number) at the end of the column, such as 1-800-GO-ETHER, extension XXXX. The system can even provide him with a custom 800 number, such as 1-800-GOLF-PRO, rather than the extension to a generic 1-800-GO-ETHER number.
  • the column may include the following message: “Call me to talk about your own golf swing. Dial 1-800-GOLF-PRO. $100/hour.”
  • the Ether phone number can be a phone number local to a specific region of interest to the golf pro (e.g., having the same area code, or the same area code and exchange, as those in the target geographical area).
  • the callee may request a phone number, such as “1-800-GO-ETHER” extension “YOU”, which is specifically assigned to the callee (and/or the listing).
  • the callee can publish the assigned phone number in the blog, home page, printed publications, brochure, or business card.
  • the phone number may be given out during a TV or radio talk show, etc.
  • the call is first connected to a server of the system. The system can then call the callee and join the caller and the callee for real time communication.
  • FIG. 3 illustrates a user interface to start a communication according to one embodiment of the present invention. For example, after a caller selects a call button, the user interface as illustrated in FIG. 3 is displayed (e.g., in the browser of the caller, or in a pop-up window).
  • a call graphic is displayed to show the progress of making the connection.
  • the photo of the callee e.g., the photo uploaded by the callee to the server for the listing during the creation of the listing
  • a link “More about me” which when selected causes the browser to display the description of the listing corresponding to the call button.
  • the system may present a standard icon to represent the callee.
  • an icon and the description “Your Telephone” are displayed to present the caller.
  • An “ether” icon between the caller and callee represents the system.
  • the link “How this works” under the “ether” icon can be selected to see the details of the call process, which can be helpful to a user who is not familiar with the system.
  • the user interface presents an entry to receive a time window (e.g., 4 hours) within which the caller is available to take a call back from the system to talk to the callee.
  • the user interface also includes an entry to receive the phone number of the caller such that the system can call back the caller to make the connection between the caller and the callee in this time window.
  • the user interface can be part of the VoIP client application (e.g., the user interface of a VoIP terminal, such as the user interface of a VoIP-enable phone, or an application window of a VoIP application running on a computer or a Personal Digital Assistant (PDA)).
  • the VoIP phone connection can be established, whether the user inputs the callback phone number or if the VoIP connection simply connects the two parties without the need of a phone number.
  • the user interface includes a button “call now” which when selected causes the user interface to send the time window and the callback phone number to a server to request for a phone connection.
  • the user interface is part of the VoIP client application which can send the telephonic contact information (e.g., the phone number of the VoIP client application or a user ID of the VoIP system) to the server without the user explicitly specifying the call back number.
  • the telephonic contact information e.g., the phone number of the VoIP client application or a user ID of the VoIP system
  • FIG. 4 illustrates a user interface to display the status of a communication connection process and to provide the user guidance through the process according to one embodiment of the present invention.
  • the call graphic shows that the phone of the callee is off the hook, indicating that the callee has accept the call.
  • the call graphic shows the icon “Press 1 ” to instruct the caller to press “1” on the phone to be connected to the callee.
  • the user interface further provides text explaining the status and instruction to the caller.
  • the system calls the callee, during which the call graphic shows that the phone of the callee is ringing and the phone of the caller is on the hook, not yet answered by the callee.
  • the text is provided in the user interface to explain the current status of the connection process and to instruct the user to wait while the system is contacting the callee.
  • the system provides the user-friendly, step-by-step feedback and instruction to the caller to guide the caller through the connection process.
  • the system further provides feedback and instructions on the call graphic. For example, during the call the system can provide the accumulated call time for the purchased call. If the purchased call has a time limit, the call graphic can further show the remaining minutes of the call. When the time limit is approaching (or reached), the call graphic can provide the guidance and instructions for “recharge” (e.g., by purchasing a further package, or switching to a per minute mode with a further time limit, etc.). In one embodiment, the options to continue the call when the time limit is approaching (or reached) is displayed in the graphical user interface so that the caller may select an option in the graphical user interface without interrupting the conversation with the callee.
  • “recharge” e.g., by purchasing a further package, or switching to a per minute mode with a further time limit, etc.
  • the caller can continue the call by requesting a re-connection with a time window.
  • the call graphic can present the guidance and instructions for continue the call and present the status of the continuation of the call.
  • the call graphic may present a description of the continuation policy for interrupted/dropped call and show the remaining portion of the time window to resume the call.
  • the caller clicks on the button, the caller (buyer) is led to a landing page that explains how the service works and indicates the price, which might be $100 to talk on the phone for 60 minutes and $1 per minute thereafter.
  • the caller (buyer) When the caller (buyer) clicks the “Continue” button on the landing page, the caller (buyer) is brought to a page to specify payment options (e.g., credit card information). Or, if the caller (buyer) is a returning member, the caller (buyer) can sign in (e.g., through providing the correct member name and password) to instruct the system to use the billing information (e.g., credit card and billing address) that is already on file (e.g., that has been previously submitted to the system and that is stored in the database of the system in association with account of the caller). If the caller (buyer) is not a member, the caller (buyer) is presented with a page to register with the system and become a member. Alternatively, the caller (buyer) may specify the payment information without becoming a member.
  • payment options e.g., credit card information
  • the caller (buyer) can sign in (e.g., through providing the correct member name and
  • the page may identify the caller (buyer) as a member according to the information provided by a cookie maintained by the web browser of the caller (buyer). If the cookie exists, the cookie includes the member name of the caller (buyer). If the cookie indicates that the caller (buyer) has already signed in, the server may skip the sign-in process; otherwise, the caller (buyer) is prompt to sign in. If the caller (buyer) is new to the network, the caller (buyer) is asked to register and become a member.
  • a cookie maintained by the web browser of the caller (buyer). If the cookie exists, the cookie includes the member name of the caller (buyer). If the cookie indicates that the caller (buyer) has already signed in, the server may skip the sign-in process; otherwise, the caller (buyer) is prompt to sign in. If the caller (buyer) is new to the network, the caller (buyer) is asked to register and become a member.
  • the call button/link does not bring the caller (buyer) inside the marketplace (e.g., a list showing competitors). Instead, the actions related to the call button happen in the environment of the callee (seller).
  • the web page(s) can be just a pop-up window so that the caller does not have to leave the web page (e.g., blog or home page) of the callee (seller).
  • the landing page may be within a frame of the blog/home page of the callee, or within an applet embedded in the blog/home page of the callee.
  • the call button may bring the caller (buyer) to a VoIP application and provide the guidance and instruction to the caller on the user interface of the VoIP application.
  • the VoIP application has browser functionality and shows the call button with the blog, web page or email in the user interface of the VoIP application.
  • the call button may bring the caller (buyer) to the marketplace which shows the offers of the competitors of the callee (seller).
  • the caller (buyer) is led to a page to specify the phone number that the caller (buyer) would like to be called back at and the time window within which the caller (buyer) is willing to receive the call back to talk to the callee (seller).
  • the time window might be “four hours.”
  • FIG. 3 shows an example of such a page.
  • the system obtains the authorization to charge an amount, when the call is connected (e.g., $100 from the buyer's credit card, if the credit card is the method of payment).
  • a call for a package of bulk minutes is charged when the two parties are connected, regardless of whether the duration of the time limit is reached.
  • the system does not charge the buyer until after a connection between the caller (buyer) and the callee (seller) is successfully established (e.g., for a minimum period of time, or after the phone call is completed, or after the time limit is reached, etc.).
  • the system “pre-authorizes” the charge (e.g., $100) on the buyer's credit card to make sure that, should the connection be completed, the buyer would be able to pay.
  • the system indicates the status of pre-authorization, charging/not-charging to the buyer in the user interface that guides the user through the process of making the connection.
  • the system may make the charge (e.g., $100) on the buyer's credit card when starting to make the connection and make a refund to the buyer if the connection is not successful within the call back time window specified by the caller (buyer).
  • the system may charge a portion of the fee (e.g., $100) during the phone connection set up period, and refund the charge if the connection is not successful or charge the remaining portion after the connection is made successfully (e.g., after the phone call is completed).
  • the system determines whether or not to pre-charge the buyer based on statistical data, such as the credit history of the caller (buyer), the success rate of the callee (seller) to call back within the time window specified by the caller (buyer), etc.
  • the system may pre-charge the caller; for example, if the system determines that the caller (buyer) has a good credit history, the system may defer the charge to a later stage (e.g., after the completion of the call).
  • the system calls the callee (seller) and says: “We have a caller who is calling you on your call button. He is paying your $100 fee and is willing to wait up to 4 hours to talk to you. Please press 1 on your telephone keypad if you want to take the call now; press 2 if you can't take it now but can indeed take it within the next 4 hours that has been requested, or press 3 if you won't be able to take it within 4 hours.”
  • different system may associate different sets of key pressing events (e.g., press 1, press 2, press 3, . . . ) with different options.
  • the system can optionally provide the callee (seller) with more information about the caller (buyer) based on pre-recorded information.
  • the system can record the self introduction of the caller (buyer) (e.g., the name of the caller, for instance ‘Bob’) so that the system tells the callee “We have ‘Bob’ . . . ” instead of “We have a caller . . . ”, where ‘Bob’ is the recording of the self-introduction of the callee (buyer).
  • the system has the name of caller (buyer) recorded as part of the member preference/attribute of the caller (buyer).
  • the system can use a text-to-speech program to “read out” the name of the buyer when introducing the call to the callee (seller).
  • the system can record the name of the caller (buyer) when the system receives a call from the caller at the phone number assigned to the callee, or callback the caller first to obtain the recording.
  • the system tells the callee (seller) to hold on while the system calls the caller (buyer).
  • the screen of the caller (buyer) is updated automatically to indicate that the callee (seller) is ready and the caller (buyer) is being called back for the connection between the caller (buyer) and the callee (seller).
  • the system tells the caller (buyer) (e.g., on the screen of the caller) that the callee (seller) can't take the call now but expect to take the call within an identified period of time (e.g., the next 4 hours).
  • the system will arrange to make the phone connection within the identified period of time (e.g., the next 4 hours).
  • system may use alternative numbers to indicate a response of the callee.
  • the system may send a message (e.g., through email, a web-based user interface for the callee (seller), a voice mail, an instant message, etc) to the callee about the call and the identified period of time (e.g., 4-hour time window) so that the callee (seller) may indicate to the system within the identified period of time (e.g., next 4 hours) that the callee (seller) is ready for the call.
  • a message e.g., through email, a web-based user interface for the callee (seller), a voice mail, an instant message, etc
  • the identified period of time e.g., 4-hour time window
  • the system may try to call the callee (seller) periodically or according to a time period specified by the callee (seller). For example, the callee may press 15 after pressing 2 to indicate that system should try to make the connection after 15 minutes.
  • the callee may provide such an indication through replying to the email, instant message, short text message, or through a network-based user interface (e.g., web-based) that is designed to manage the user account.
  • the network-based user interface may present a list of calls in the queue and the corresponding time windows. When ready to take the next phone call, the callee can indicate to the system that the callee is currently available to take a call (or a particular one of the calls in the list).
  • the caller may try to call the callee (seller) again within the time window (e.g., next 4 hours).
  • the system may monitor the activities related to this call to avoid duplicated efforts in making the connection within the time window (e.g., next 4 hours) so that the caller and callee are not interrupted by unnecessary attempts to make the connection.
  • the time window e.g., next 4 hours
  • the system tells the caller (buyer) that the callee (seller) can't take the call within the requested time window.
  • the caller (buyer) in this case is not charged the price (e.g., $100).
  • the caller (buyer) is charged the price (e.g., $100) only when the call between the caller (buyer) and callee (seller) is actually connected.
  • the system may call the caller (buyer) first or call the callee (seller) first, or call both at about the same time. For example, the system may determine which one of the caller and callee is more reliable and call the reliable one of the two first. The system may determine which of the parties is more reliable based on statistic data collected from past call connection activities. Alternatively, the system may connect to the less reliable party first. Alternatively, the callee (seller) may specify the preference of who is to be called first as part of the specification of the listing.
  • the system may first authenticate the caller and/or arrange the payment options and then prompt the caller to enter the time window and the call back phone number using the key pad of the phone.
  • An interactive voice response (IVR) system can be used to interact with the caller so that the caller does not need web access to be connect to the callee (seller).
  • the system may determine automatically the telephone contact information of the caller from the call received from the caller (buyer) (e.g., through call ID service or an Automatic Number Identification (ANI) service) and use the telephone contact information in calling back.
  • the system may present an option for the caller (buyer) to confirm the automatically detected telephone contact information of the caller for calling back so that the caller has an opportunity to specify different telephone contact information for the call back.
  • ANI Automatic Number Identification
  • the system uses the graphical user interface to assist the caller.
  • the system uses the IVR system to provide the caller (buyer) with guidance.
  • the system automatically switches between using the web interface to guide the caller or using the IRV interface to guide the caller.
  • the system may further use other communication systems to guide the callee (e.g., according to the presence and availability of such communication systems).
  • the interface may be Wireless Application Protocol based (WAP-based) applications, or based on instant messaging, or based on a custom designed client-server application/protocol.
  • WAP-based Wireless Application Protocol based
  • a web-based interface is presented as an example.
  • User interfaces based on other communication protocols and/or other types of communication systems can also be used.
  • the system may ask the caller (buyer) to hang up temporarily until the callee accepts the call.
  • the system may allow the caller (buyer) to stay on the line while the system attempt to reach the callee (seller).
  • the system allows the callee (seller) to specify one or more alternative phone numbers in case the callee (seller) is not reachable at the primary phone number specified for the listing. Similarly, the caller (buyer) may also specify one or more alternative call back phone numbers.
  • the system allows the parties to specify other telephonic references (e.g., user names of Internet telephonic application) to make the telephone connection.
  • the system may further allow the user to specify other identities to make connections for other types of real time communications, such as chat, instant messaging, video conferencing, etc.
  • the system arranges the call according to aspects of the methods described in the U.S. Patent Application Publication No. 2004/0252820 (application Ser. No. 10/360,776, filed on Jun. 12, 2003), which is hereby incorporated herein by reference.
  • the web server When the caller (buyer) requests the connection using the call button, the web server provides the instructions and feedback to guide the caller (buyer) through the call process.
  • an interactive voice response (IVR) system is used to provide similar instructions and feedback to guide the caller (buyer) through the call process.
  • IVR interactive voice response
  • the caller buyer registers and creates an identity using the phone number and a PIN.
  • a credit card is asked for via IVR or live operator to set up payment options.
  • the call window is entered on the keypad of the phone, such as pressing the string of keys “4*” to indicate a “4” hours window or “60#” for a “60” minutes window.
  • the system when the callee is having a telephonic connection with the system, the system prompts the caller (buyer) to utter a message for the callee (seller). For example, the caller (buyer) may say “I'm Bob Stanley—remember we met at the golf conference last weekend.” The system records the messages of the caller (buyer).
  • the system says, “There's a buyer on the line who's paid $100 and is willing to wait 4 hours and here's how he identifies himself: I'm Bob Stanley—remember we met at the golf conference last weekend.”
  • the system in such a way provides as much identifying information to the callee (seller) as possible so that the callee (seller) may screen the callers for acceptance.
  • the system behaves as an automatic secretary, screening who's on the line for the callee (seller).
  • the system provides functionality for bulk-minute pricing.
  • the system metes out the time that has been bought. When the time limit, for example, 60 minutes, is up, the system tells both parties on the phone that the time is up. The system then prompts the buyer to add more money to buy a second package, or go to per minute pricing, or end the call, or let them talk further for free, according to the continuation policy of the call which is specified by the callee (seller) in the listing (e.g., specified during the creation of the listing).
  • the system has a time window in which it expires the remaining minutes.
  • the time window can be set quite large, such as a year, so that someone can buy a 1,000-minute discount package and talk 100 times over the course of the year.
  • the time window can be set small, such as 30 minutes, in which case the caller (buyers) can call again within the 30-minute window after the 35-minute call to keep talking based on the already purchased 60-minute package, but the caller (buyers) can be connected on the basis of the unused portion of the 60-minute call package after a break that is longer than the time window.
  • the system time window specifies the longest period of break before the unused portion of the purchased package expires.
  • the system time window specifies the period from the starting of the conversation and the time when the purchased package expires.
  • the system may specify a window of 4 hours or so by default, so that people who get cut off or interrupted can finish their calls in this window of time.
  • the system time window is based on the size of the purchased package. The larger the time limit of the package, the larger is the time window. In one embodiment, the expiration of the package is based on a limit on the separate calls (e.g., three). In one embodiment, the expiration of the package is based on the expiration time window and the limit on separate calls, whichever is reached first.
  • the system allows the callee (seller) to specify the expiration time window in the specification of the listing (e.g., as part of the continuation policy of the call package) and/or the limit on the separate calls.
  • FIGS. 5-12 show examples of flow diagrams of a process to connect a user and an adviser for telephonic conversation according to one embodiment of the present invention.
  • a caller selects (e.g., clicks) on a call button according to one embodiment of the present invention
  • the selection leads down several different paths depending on the availability status of the seller.
  • the system determines ( 201 ) the current status of the adviser at the time the telephonic connection is started.
  • the current status of the adviser is determined based at least partially on the information provided by the adviser.
  • the adviser can specify the scheduled hours of the day during which the adviser is expected to take calls; the adviser may select a button (e.g., push through placing a cursor over the button on a display of a graphical user interface and activating a selecting device, such as a key or a button of a cursor positioning device such as a mouse or a touch pad or a joystick, etc.) on a web page, or make a phone call to the system, to indicate whether the adviser is currently busy and not answering new calls and/or to further specify the estimated duration of the busy period.
  • a button e.g., push through placing a cursor over the button on a display of a graphical user interface and activating a selecting device, such as a key or a button of a cursor positioning device such as a mouse or
  • the adviser may select a button on a user interface (e.g., a web page designed for the manage of the listing and/or account of the adviser) to indicate that the adviser is now free and ready to take calls.
  • the adviser may pick up the phone call from the system and indicate to the system the current status of the adviser.
  • the adviser may transmit the current status information to the system using instant messages, email, SMS messages, etc.
  • the system starts (e.g., immediately) a telephone connection and tracks the call ( 205 ).
  • the system starts ( 207 ) to arrange the call to be placed within the time period specified by the caller without trying to call the adviser immediately, since the adviser is temporary busy and will be available to take calls within a short period of time.
  • the system starts ( 209 ) to make an appointment for the user to call the adviser, since the adviser is not available to take the call and will not be available for a longer period of time.
  • the system when the system starts to at least initiate a telephone connection (e.g., in response to a request from a selected call button), the system displays ( 301 ) a landing page to at least initiate a telephone connection and track the call.
  • the web server of the system transmits information defining the landing page to the web browser of the user to show the landing page (e.g., in a pop-up window).
  • the landing page may show the name, photo, status, rate of the adviser, show/explain the process to make the connection, buttons to navigate the process, option to mail the adviser, etc.
  • the system alerts ( 303 ) the adviser about the request for telephone conversation (e.g., through a web-based user interface, or through email, instant messaging, short text message, etc.)
  • the system determines whether the user has been authenticated ( 305 ). If the user has not been authenticated, the system authenticates ( 307 ) the user. For example, the system signs in the user if the user is already a member, or registers the user as a new member if the user is not yet a member.
  • the system determines ( 309 ) a source of payment for the call.
  • the system may further determine if the adviser is still having the status of “Taking Calls Now”. In certain instances, the process of authenticating the user and securing the source of payment may take an extended period of time such that the availability status of the adviser may have changed.
  • the system proceeds ( 317 ) according to the current status of the adviser, based on whether the current status is “Taking Calls Shortly” or “Not Taking Calls for a While”.
  • the system displays ( 313 ) a call setup page.
  • the call setup page may show the progress of call and user interface elements to receive the time window and the phone number of the user (caller).
  • the system calls ( 315 ) the adviser.
  • the system updates ( 403 ) the call setup page.
  • the system may play an animation and/or sound clip and/or a text message to indicate that the system is calling the adviser, in one embodiment.
  • the system determines whether or not the adviser answered the call ( 405 ).
  • the system sends ( 407 ) a mail to the adviser about the unanswered call.
  • the system notifies ( 409 ) the user that the adviser did not answer the call and a mail has been sent to the adviser.
  • the system then presents ( 411 ) the user with the option of making an appointment with the adviser.
  • the system obtains the adviser's choice ( 413 ) on the call.
  • the adviser may indicate that the adviser will take the call in the time window specified by the caller, in which case, the system notifies ( 415 ) the user that the adviser will take the call in the time window. Then, the system waits ( 417 ) for a period of time to call the adviser again. Alternatively, the system may try the connection based on an indication from the adviser that the adviser is ready to take the call (e.g., by calling the system, selecting a button or a link on a web page in the account of the adviser, sending an email/instant message/short text message to the system or replying to a message from the system about the call, etc.)
  • the adviser may indicate that the adviser cannot take the call in the time window specified by the caller, in which case, the system notifies ( 421 ) the user (caller) that the adviser is not able to take the call and presents ( 423 ) the user with the options of updating the time window and making an appointment.
  • the adviser may indicate that the adviser wants to take the call now, in which case, the system notifies ( 421 ) the user that the adviser is connected and the server is now calling the user (at which point of the process, the caller may or may not one the phone). The system then determines if the user is already on the line ( 433 ).
  • the system starts ( 435 ) to call the user and determines whether the user answered the call ( 437 ).
  • the system terminates ( 443 ) the call ( 443 ) and the adviser is notified.
  • the system then prompts ( 439 ) the user to accept the charge of the call before connection to the adviser and determines whether the user accepts the charge ( 441 ).
  • the system connects ( 449 ) the user to the adviser (e.g., by joining the calls) and starts to monitor aspects of the call (e.g., duration) and charge the user.
  • the adviser e.g., by joining the calls
  • aspects of the call e.g., duration
  • the system terminates ( 443 ) call.
  • the system updates ( 445 ) the user interface to show the reason for the termination.
  • the system mails ( 447 ) the user about the termination of the call.
  • the system displays ( 501 ) a landing page, if the adviser's status is “Not Taking Calls for a While”.
  • the landing page may show the name, photo, status, rate of the adviser, and show the process to reach the adviser, buttons to navigate the process, explanation of availability, etc.
  • the system alerts ( 503 ) the adviser about the request for telephone conversation.
  • the system receives ( 505 ) from the landing page the user selection whether to mail (e.g., email or use other types of messaging systems) the adviser or to make an appointment with the adviser.
  • mail e.g., email or use other types of messaging systems
  • the system determines if the user has been authenticated ( 509 ). If the user has not been authenticate, the system authenticates ( 515 ) the user. For example, if there is no cookie in the web browser of the user indicating that the user is currently in a valid session, the user may be presented with an interface to sign in or to register.
  • the system presents ( 511 ) a page to receive the subject and message of the mail from the user. After receiving the subject and message of the mail, the system sends ( 513 ) the mail to the adviser (without showing the mailing address of the adviser to the user and without showing the mailing address of the user to the adviser) in accordance with one embodiment.
  • the mail is delivered electronically (e.g., through an email, instant message, SMS message, web mail).
  • the mail may be delivered as voice mail, print out, etc.
  • the system starts ( 517 ) to make an appointment.
  • the system displays ( 601 ) a landing page for making an appointment.
  • the landing page may display one or more of the name, photo, status, rate of the adviser, and show stages of operations to make the appointment, buttons to navigate through the stages of operations, show the option to mail the adviser, etc.
  • the system displays ( 603 ) entries to receive a requested appointment time.
  • the entries can be part of the landing page or a page displayed after a navigation button is selected.
  • the entries are used to receive one or more of the date, start time, time length of the appointment, the time zone of the user, etc.
  • the system further displays existing schedules and the phone number of the user, etc. for the convenience of the user (e.g., if the user is already authenticated at this point of the process).
  • the system determines if the adviser is available at the requested time ( 605 ). If the adviser is not available at the requested time, the system prompts ( 607 ) the user to adjust the appointment time; otherwise, the system proceeds to the task of filtering the callers.
  • the system determines that the user has not been authenticated ( 609 )
  • the system authenticates ( 611 ) the user through signing in the user or registering the user.
  • the system determines ( 613 ) if a sufficient source of payment for the call is available from the user.
  • the system accepts the appointment and displays ( 615 ) a page to confirm the appointment.
  • the confirmation page may show confirmation text including the appointment time and the name of the adviser.
  • the system automatically starts to make connections to the caller and the callee separately at the requested time of the appointment.
  • the system may reserve a time slot on the schedule of the callee on behalf of the caller and request the caller to make a request for a connection at the scheduled time.
  • the system may request the adviser (callee) to make the request for the connection.
  • the system may determine a less reliable one of the two to make a request for the connection, or contacting the less reliable one first, during the appointment time is reached before starting to contact the other party.
  • the system displays ( 601 ) a landing page for arranging a call.
  • the landing page may display one or more of the name, photo, status, rate of the adviser, show stages of operations to make the appointment, buttons to navigate through the stages, show the option to mail the adviser.
  • the system receives ( 703 ) a user selection of whether to accept a callback, to make an appointment, or both.
  • operation 707 or operation 709 is performed to set up an appointment (e.g., according to the process illustrated in FIG. 9 ).
  • the system receives ( 711 ) user input to identify the user and the call back phone number of the user and determines whether the user has been authenticated ( 713 ). If the user has not yet been authenticated, the system authenticates ( 715 ) the user (e.g., through signing in the user or registering the user).
  • the system determines ( 717 ) if a sufficient source of payment for the call is available (e.g., to filter out non-serious callers). The system then displays a page to confirm the arrangement (e.g., confirmation text including the time window and the name of the adviser).
  • FIG. 11 shows an example to authenticate the user.
  • the system determines ( 803 ) if there is information to indicate that the user is a member.
  • the information may be in a cookie in the browser of the user, or a parameter encoded in an URL (universal resource locator) of a link, or a parameter in an applet running in the web browser.
  • URL universal resource locator
  • the system displays ( 811 ) a sign-in page which may include entries to receive a username and a password from the user.
  • the sign-in page may optionally further include the photo of the adviser, text alerting the user about the connection to the adviser, the rate to talk to the adviser, etc.
  • the sign-in appears to be in the environment of the adviser.
  • the system then authenticates ( 813 ) the user using the username and password received in the sign-in page.
  • the system displays ( 807 ) a registration page.
  • the registration page may include information already collected about the user (e.g., during the interaction before the registration) for confirmation purpose.
  • the registration page includes entries to receive username and password of the user.
  • the registration page may optionally further include the photo of the adviser, text alerting the user about the connection to the adviser, the rate to talk to the adviser, etc. Thus, the registration appears to be in the environment of the adviser.
  • the system then creates ( 809 ) an account for the user using the information received from the registration page.
  • information is created to indicate that the user is authenticated for a valid session (e.g., using a cookie, a parameter in URL or in an applet) until the session expires or the user signs off.
  • FIG. 12 shows an example to determine if a sufficient source of payment of the call is available.
  • the system determines ( 823 ) whether the call is charged by per interval (e.g., per minute). If the call is charged by per interval, the system determines ( 825 ) the minimum charge for the call (e.g., for one minute). If the call is not charged by per interval, the system determines ( 827 ) the price for a call package (e.g., $100 for 1 hour, as specified by the adviser).
  • per interval e.g., per minute
  • the minimum charge for the call e.g., for one minute
  • the system determines ( 827 ) the price for a call package (e.g., $100 for 1 hour, as specified by the adviser).
  • the system determines whether there is enough money in the account of the user ( 829 ) and/or whether there is an active credit card of the user is on file ( 839 and 831 ).
  • the system optionally requests ( 841 ) for the credit card information and the associated billing address for security reason.
  • the system will pre-authorize ( 837 ) an amount according the requirement of the call for deposit purpose. If an active credit card of the user is on file, the system optionally presents ( 833 ) an option to update the credit card information. If no active credit card of the user is on file, the system requests ( 835 ) credit card information and billing address for pre-authorization.
  • the system uses the information about the user to help the user. For example, from the member information database, the system may retrieve the phone numbers of the user. If there are multiple phone numbers for the user, a combo box is displayed for the user to select one from the known phone numbers of the user (or to type in a different one). If there is only one known phone number of the user, the system may display the known phone number of the user in an entry box as the default value.
  • a “cookie” implemented in the web browser or parameters encoded in the URL, or parameters stored in the variables of an applet running in the web browser, etc.
  • the system uses the information about the user to help the user. For example, from the member information database, the system may retrieve the phone numbers of the user. If there are multiple phone numbers for the user, a combo box is displayed for the user to select one from the known phone numbers of the user (or to type in a different one). If there is only one known phone number of the user, the system may display the known phone number of the user in an entry box as the default value.
  • the current user can choose to edit the information and/or sign in as a different user.
  • the information e.g., cookie
  • a user can enter the input information to set up a call, such as the call window and/or the callback phone number before the user is authenticated.
  • a call such as the call window and/or the callback phone number
  • the user is subsequently authenticated (e.g., through signing in as an existing member or registering as a new member)
  • the information provided by the user before the authentication process is used to update the account information (if changed).
  • FIG. 13 illustrates a method to display a call button according to one embodiment of the present invention.
  • the appearance of a call button is displayed according to the current availability status of the adviser to take the call.
  • the system determines ( 853 ) the current status of the adviser (at the time of the request). After the system determines ( 855 ) an appearance of the call button of the adviser to indicate the status of the adviser, the system presents ( 857 ) the call button of the adviser with the appearance to indicate the status of the adviser.
  • the system further determines ( 859 ) (e.g., periodically) the current status of the adviser to update ( 861 ) the appearance of the button according the currently status of the adviser.
  • the call button to be inserted in the blog of the callee can include an image at a URL on a server computer.
  • the URL causes the server computer to determine a response based on the parameters encoded in the URL.
  • the URL can be pointing to a CGI (Common Gateway Interface) program which provides or generates the image according to the current status of the adviser.
  • the URL may include a parameter to identify the adviser and/or the advertisement.
  • the call button may show a telephone with text “Call Now”; when the current status of the adviser is “Taking Calls Shortly”, the call button may show an off-hook telephone with text “Arrange a Call”; when the current status of the adviser is “Not Taking Calls for a While”, the call button may show a telephone and a calendar with text “Appointment”.
  • different types of availability status of a callee includes: on call, off call, busy, get in line, schedule an appointment, join conference, etc. It is understood that different systems may implement more or less types of availability status of a callee. Further, the call button may include other current status information about the callee, such as price, how many people are in line to call the callee, the schedule of the callee, and/or others.
  • the call button is implemented using an applet running in the browser of the user.
  • the applet displays the call button according to the current status of the adviser and checks the status of the adviser periodically to update the appearance of the button.
  • the call button when an estimated time until which the adviser can take the call is available (e.g., received in the system from the adviser when the system attempts to contact the adviser, or provided by the adviser when the adviser is talking to a different user, etc.), the call button also shows an indication of such an estimated time to help the user in selecting a time window.
  • the call button may be implemented in custom applications (e.g., as plug-in to web browsers, email clients, etc., or as stand-along applications).
  • the call button may communicate with the server using a special purpose protocol.
  • a web/email (document) authoring tool is designed to automatically detect the phone number of the callee in a web page/email/document.
  • the authoring tool can be set up to replace the phone number of the callee with the corresponding call button assigned to the callee and/or the phone number (e.g., ether phone number) that is assigned to the callee.
  • the authoring tool can detect the occurrence of the phone number of the callee in the document and prompt the user of the authoring tool to replace the phone number of the callee with the call button and/or the phone number assigned by the system. If the user accepts the suggestion, the authoring tool automatically replace the phone number of the callee with the call button and/or the phone number assigned by the system.
  • FIG. 14 illustrates a method to monitor and control a connection according to one embodiment of the present invention.
  • the system determines ( 875 ) whether the current call is within a time window of a previously purchased call package (e.g., a year or 4 hours).
  • a time window of a previously purchased call package e.g., a year or 4 hours.
  • a call is considered a continuation of the previously purchased call package if the current call is within the time window.
  • the call of a previously purchased call package is interrupted, the user can continue the call within the time window without having to purchase another package.
  • the system determines ( 879 ) the time limit according to the previously purchased call package, or determines ( 881 ) the purchased minutes of the call package for the current call. The system then monitors ( 883 ) the call until the time limit for the current call is reached. When the time limit for the call is reached, the system alerts ( 885 ) the user and the adviser about the end of the time limit.
  • the continuation policy specified by the adviser is retrieved ( 887 ) to process the call at the end of the time limit.
  • the system prompts ( 891 ) the user to purchase the next package to remain connected. For example, the user may be offered to continue the call at the price of $50 for another 30 minutes.
  • the system prompts ( 895 ) the user to accept the continuation at the per minute price.
  • the system maintain ( 897 ) the connection for the user and the adviser until at least one of the user and the adviser hangs up.
  • the system disconnects ( 893 ) the user and the adviser after altering the user and the adviser.
  • the system stores a replication of the policy of the package the user purchased with the records of the purchased call (e.g., the policy at the time the call button is selected for the call package, or at the time the user is first connected to the adviser for the call package, or at the time the user explicitly confirms the purchase of the call package, etc.).
  • the adviser is free to change the listing for the future callers even before the users finish the purchased call packages without retroactively affecting the purchased calls.
  • the real time communication may be on a one-to-one basis (e.g., one caller connected to one callee).
  • the real time communication can also be in the form of one-to-many.
  • the seller may be hosting a conference in which multiple callers may attend.
  • 100 people can be in the same call or the same video session provided by the same seller.
  • the real time communication may include access to recorded sessions (e.g., recorded audio content and/or recorded video content).
  • recorded sessions e.g., recorded audio content and/or recorded video content.
  • the system on the whole may be used as a filter for sellers (callees), only letting in calls from people who are serious—they're serious because they have entered their credit card and are willing to pay.
  • Celebrities can use the system. For example, people want to talk to the Oakland A's from the 70's, who are sitting on their porches these days. For example, Hollywood executives can use the system to hear pitches from scriptwriters who are willing to pay $1000 for the chance to pitch their script.
  • these call buttons and the Ether phone numbers go to where the action is happening.
  • the Ether phone numbers can be in magazines, underneath photographs, in newspapers, on business cards, etc.
  • the current status of the callee e.g., availability, schedule, etc.
  • guidance and instructions for the phone connection are provided through the appearance of the call button and the content of the call graphic.
  • the status information, guidance and instructions can also be presented based using an interactive voice response (IVR) system.
  • IVR interactive voice response
  • a talk radio station may have a guest on every day at a noon talk show. After the one-hour show, the radio announcer may say, “The time is up on our show. We've enjoyed talking with Dr. Webber and answering your calls. If you'd like to talk further with Dr. Webber, go to our website at WKBR.com and set up a conversation with him. Or, just dial the number 1-800-TALK-KBR and get in line. It's just $29 per 10-minute conversation.”
  • the phone number 1-800-TALK-KBR is assigned to Dr. Webber, which can be used to achieve many of the same goals as the call button assigned to Dr. Webber. While the button can visually communicate to the user the current (e.g., real-time) availability of the callee, the price, how many people are in line already, the schedule of the callee, etc., telephony prompts on a interactive voice response (IVR) system can also be used to provide such information after the caller dials the phone number that is assigned to the callee.
  • IVR interactive voice response
  • the call is connected to a server, which determines that the call is for Dr. Webber since the phone number 1-800-TALK-KBR is assigned to (associated with) Dr. Webber.
  • the server can then determine the current status of Dr. Webber, including the availability status, the price for the package, etc., and provide the information to the caller through the IVR system.
  • the server prompts options according to the current availability status of Dr. Webber. For example, the server may offer an immediate connection when Dr. Webber is available for immediate talk, or an opportunity to input a callback time window and/or callback phone number when Dr.
  • the server may use the IVR system to inform the caller the current status of the connection process and to provide instructions to the caller to take actions, such as providing a callback time window, providing an appointment time, providing an indication to accept the price of the call package, etc.
  • the status information, instruction and guidance are provided using a combination of graphical presentations (e.g., over a graphical user interface terminal) and voice prompts (e.g., through an IVR system).
  • the callee (seller) charges the caller(s) for the real time communication.
  • the system provides the service to arrange and connect the call.
  • the system can collect the payment from the caller(s), deduct a portion of the payment as fees to provide the service, and deliver the remaining payment to the callee (seller).
  • the callers may be not required to pay for the call; and the callee (e.g., advertisers) may pay the system for the service.
  • the system may not provide the filtering functionality based on the willingness of the callers to pay.
  • the callees e.g., the advertisers
  • the call buttons and the phone numbers assigned to the callees can also be published in advertisements in marketplaces, online or offline, on behalf of the callees; the callees bid for changes of the publicity and pay the bid amount on a per call basis for calls generated by the advertisements.
  • the callees When the callees generate the phone lead from their own media channel, the callees are only charged for a flat fee for the service of making the connection.
  • the system tracks the media channels that lead the caller to make the call.
  • FIG. 15 shows a diagram of a system to assist and track connections according to one embodiment of the present invention.
  • a database ( 921 ) may contain the phone numbers of target phone A ( 931 ), target phone B ( 933 ), . . . , target phone X ( 939 ), etc., of callees.
  • the target phones belong to the institutions, businesses, individuals, etc, which seek for the services of embodiments of the present invention.
  • the call button and/or phone numbers assigned to the callees are distributed in various media channels, such as media channel A ( 901 ) (e.g., web server), media channel B ( 902 ) (e.g., WAP server), media channel C ( 903 ) (e.g., short messaging service center), media channel D ( 904 ) (e.g., custom server), media channel E ( 907 ) (e.g., cable television), media channel E ( 908 ) (e.g., news press), media channel G ( 909 ) (e.g., radio station), etc.
  • media channel A 901
  • media channel B e.g., WAP server
  • media channel C 903
  • media channel D 904
  • media channel E 907
  • media channel E ( 908 ) e.g., news press
  • media channel G ( 909 ) e.g., radio station
  • the call buttons and/or the assigned phone numbers which can be considered as the encoded phone numbers of the callees, are presented in the environment specific to the callees, not in the marketplaces that are specially designed to advertise the callees.
  • the callees generate the phone leads on their own media distributions, such as their web site or blog site.
  • the call buttons and/or the assigned phone numbers can also be presented in marketplaces, such as in listings/directories of services, advertisements in search results, etc.
  • the phone numbers of the target phones are not directly publicized over the media channels. Instead, encoded target phone numbers ( 923 ) are used. Using the encoded target phone numbers ( 923 ), a user cannot reach target phones directly. Using the encoded target phone numbers ( 923 ), a user reaches a server of the system first, which allows the system to provide various services before actually connecting the user to the callee, such as filtering, payment processing, etc.
  • the encoded target phone numbers ( 923 ) allow the association of additional information with the target phone numbers, such as the media channels used, special promotions, etc.
  • the encoded target phone numbers and/or the call buttons are delivered with content information (e.g., web page, WAP page, short message, television programs, news articles, advertisement, blog, etc.) to user devices, such as user device A ( 911 ) (e.g., cellular phone), user device B ( 912 ) (e.g., personal digital assistant (PDA)), user device C ( 913 ) (e.g., computer), user device D ( 916 ) (e.g., receiver), user device E ( 918 ) (e.g., newspaper).
  • content information e.g., web page, WAP page, short message, television programs, news articles, advertisement, blog, etc.
  • user devices such as user device A ( 911 ) (e.g., cellular phone), user device B ( 912 ) (e.g., personal digital assistant (PDA)), user device C ( 913 ) (e.g., computer), user device D ( 916 ) (e.g., receiver), user device E ( 918
  • a user device can include a USB phone, a Bluetooth wireless phone, or one or more speakers or headphones with one or microphones for the implementation of a software based phone.
  • the user devices/phones support one or more real time communication capabilities, such as VoIP using Session Initiation Protocol (SIP) which may support video and instant-messaging applications, IP phone, regular phone over VoIP service, Bluetooth wireless phone, USB phone, software based phone, and other forms of IP telephony.
  • SIP Session Initiation Protocol
  • the user device can include a television set to receive the advertisement.
  • the television set may have the capability to accept user input so that the television content may be changed according to the user input (e.g., interactive television, web television, internet television, etc.), or be coupled with a set top box which has such capability.
  • the user input may be provided to the content provider through the same communication channel in which the television content/programs are delivered (e.g., a cable system of a cable television system), or a separate channel (e.g., a phone line, an Internet connection, etc.).
  • the user input may include a request to make a connection to an advertiser featured in an advertisement presented in a television program, such as a request for a telephonic connection to the advertiser.
  • the user devices are mobile devices, such as PDA, cellular phone, etc.
  • the user devices obtain content information, including advertisements, through wireless communication connections, such as cellular communication links, wireless access points for wireless local area network, etc.
  • a user device e.g., a cellular phone, a computer, a PDA
  • can receive content information from multiple types of media channels e.g., a web server, a WAP server, an SMSC, etc.
  • a user device is capable of dialing a phone call (e.g., automatically according to the encoded phone number embedded in the content information when a user selects the number).
  • a user may manually dial a phone call using a separate phone, such as user phone S ( 917 ) or user phone T ( 919 ).
  • a user device e.g., 911 , 912 , 193
  • a user device is capable of rendering the call button and sending a message to the communication server(s) ( 929 ) when the call button is activated.
  • the call button includes an identifier of the callee so that when the call button is activated the user devices communicates the identifier of the callee to the server(s) ( 929 ).
  • the user device e.g., 911
  • the user device is further capable of automatically identifying a phone number of the caller, or a VoIP identifier of the caller, as a callback number.
  • the user device e.g., 911 , 912 , 913
  • the server(s) 929
  • dialing at least a portion of an encoded target phone number connects the phone call to a phone decoder and router ( 925 ) first.
  • the phone decoder and router ( 925 ) determines the corresponding target phone number using the database ( 921 ) and connects the phone call to the corresponding target phone (e.g., one of target phones 931 - 939 ) through the telephone network ( 927 ).
  • the telephone network ( 927 ) may be circuit switched, package switched, or partially circuit switched and partially package switched.
  • the telephone network may partially use the Internet to carry the phone call (e.g., through VoIP).
  • the connection between the user phone/device and the phone decoder and router ( 925 ) may be carried using VoIP; and the connection between the phone decoder and router ( 925 ) may be carried using a land-line based, circuit switched telephone network.
  • the information associated with the encoded target phone number such as the media channel used to provide the encoded target phone number to the users, is also decoded/retrieved using the database ( 921 ).
  • the information associated with the encoded target phone number can be tracked/stored.
  • the phone decoder and router ( 925 ) also determines the phone number of the user through Automatic Number Identification (ANI).
  • ANI is a phone system feature that provides the billing number of the person making the phone call.
  • the information about the caller, target phone number, the media channel used for delivering the contact information to the user can be used to bill the caller and/or the target phone number, and provide credit/compensation for the corresponding media channel.
  • connection to target phone numbers can be paid for on a pay per call basis.
  • Monitoring and tracking the calls can be used for billing the callee and/or the caller.
  • the additional information associated with the encoded target phone number is used to tracking phone calls for conditional promotions, electronic coupons, etc.
  • the additional information for conditional promotions, electronic coupons, etc. are retrieved from the database of the listings at the time the corresponding call button is activated or presented, or at the time the encoded phone number is called.
  • the information about the media channels that are responsible for leading the users to the phone calls to the target phones can also be useful for the advisers.
  • the advisers may wish to know which media channel is more effective in reaching users.
  • an encoded target phone number has the same number of digits as a standard phone number (e.g., a typical telephone number assigned by a telephone company).
  • dialing the encoded target phone number is as easy as dialing the target phone number; and dialing the target phone number reaches the phone decoder and router ( 925 ).
  • a large number of encoded phone numbers are generally required to differentiate the different target phones and different media channels.
  • an encoded target phone number has more digits than a standard phone number (e.g., having an extension to the standard phone number).
  • a first portion of the encoded target phone number has the same number of digits as a standard phone number to reach the phone decoder and router ( 925 ) through the telephone network ( 927 ); and a second portion of the encoded target phone number (e.g., the extension) is to be decoded by the phone decoder and router ( 925 ).
  • the Dual Tone Multi-Frequency (DTMF) decoder can be installed in the phone decoder and router ( 925 ) to detect the second portion of the encoded target phone number dialed at the user phone. The detected phone number can then be used to recover the target phone number.
  • DTMF Dual Tone Multi-Frequency
  • a single telephone number is used to reach the phone decoder and router ( 925 ) for different target phone numbers; and the portion of the encoded target phone number that is used to reach the phone decoder and router ( 925 ) is not used in determining the information associated with the encoded target phone number.
  • multiple telephone numbers can be used to reach the phone decoder and router ( 925 ); and the entire encoded target phone number can be used to determine the information associated with the encoded target phone number.
  • the encoded target phone numbers can have different numbers of digits.
  • the callees may be arranged to bid for shorter encoded target phone numbers.
  • a look-up table approach is used to encode the information.
  • the database ( 921 ) keeps track of the information about the media channel and the target phone number (and other information, if any) for the encoded target phone number so that the encoded target phone number can be used as a key to retrieve the corresponding information.
  • the database 921
  • the database keeps track of the information about the media channel and the target phone number (and other information, if any) for the encoded target phone number so that the encoded target phone number can be used as a key to retrieve the corresponding information.
  • algorithms can be used to generate and encode target phone number and associated information.
  • a predetermined algorithm may be used to encode different information in the target phone number.
  • the target phone number may include a number of field separated by “*” or “#”. Each of the field can be decoded separately (e.g., from a separate look up table or a mapping algorithm) to determine the target phone number, identity of the media channel, etc.
  • a set of parameters can be mapped from a string of characters to a string of numerical digits as a part of the encoded target phone number; and the string of numbers can be mapped back into the string of characters at the phone decoder and router ( 925 ).
  • a look up table is not necessary.
  • an encoded target phone number may include a first portion that is the phone number of the phone decoder and router ( 925 ), a second portion that is the target phone number appended with other parameters.
  • an encryption/scrambling scheme can be used to encode the second portion, which is decoded at the phone decoder and router ( 925 ).
  • the phone decoder and router determines the target phone number from the encoded target phone number dialed by the user and then dials the target phone number for the user and joins the phone calls so that the user can talk to the target phone.
  • the communication server(s) ( 929 ) determines the target phone number from the message sent from the user devices when the call button is pressed.
  • users dial the encoded target phone numbers manually.
  • a user can dial the encoded target phone number regardless the user device used and the media channel used.
  • user devices can automatically dial the encoded target phone numbers.
  • a cellular phone, a computer or a PDA can dial a phone number using a Dual Tone Multi-Frequency (DTMF) generator.
  • DTMF Dual Tone Multi-Frequency
  • the encoded target phone numbers are presented in the content information in a format such that when the user selects the phone number the user device (e.g., a cellular phone or a computer) dials the encoded target phone number for the user.
  • the user selection may be in the form of an keyboard/keypad input, a touch pad input, a track ball input, a mouse input, a voice command, etc.
  • the user device initiates the phone call through a VoIP system when the user selects the encoded target phone number.
  • the system initiates the VoIP connection to the user device after receiving the message from the user device requesting the phone connection.
  • the user device dials the phone number for the user without the user manually press the sequence of the encoded target phone numbers. This greatly simplifies the process of make the phone call. Since a user device can dial a long sequence of number easily, a large number of digits can be used to encode the information without presenting any difficulties for the users.
  • the encoded target phone numbers are formatted so that the user device dials a first portion of the encoded target phone numbers to access the phone decoder and router ( 925 ), pauses for a short period of time for the phone decoder and router ( 925 ) to prepare for receiving the second portion of the encoded target phone numbers, and then dials the second portion of the encoded target phone numbers.
  • the user device provides a user-friendly way of dialing the encoded target phone numbers; and, making the phone call can be as easy as making a “click” to access a web page.
  • the user device initiates the phone call.
  • a phone router may be used to initiate phone calls both to the user device (or a separate user phone) and the target phone and then join the phone calls to connect the user to the target phone.
  • the encoded target phone number is transmitted to the communication server(s) ( 929 ), which can instruct the phone decoder and router ( 925 ) to initiate the phone calls.
  • the user phone number can be automatically determined through ANI, or through a user preference setting, or through an entry submitted with the selection of the encoded target phone number (e.g., the call button).
  • the selection of the encoded target phone number is transmitted to the corresponding media channel, which forwards the request for making the phone call to a server (e.g., a web server) connected to the phone router.
  • a server e.g., a web server
  • the content information can be formatted so that the selection is sent directly to the server that is connected to the phone router.
  • the encoded target phone number can also include alphabetic characters (and/or other characters).
  • the server and/or the phone router can decode the encoded target phone number to recover/retrieve the target phone number and other associated information, such as the identity of the media channel that is creditable for providing the encoded target phone number to user.
  • the user devices/phones support one or more real time communication capabilities, such as VoIP using Session Initiation Protocol (SIP) which may support video and instant-messaging applications, IP phone, regular phone over VoIP service, Bluetooth wireless phone, USB phone, software based phone, and other forms of IP telephony.
  • SIP Session Initiation Protocol
  • FIG. 16 shows a block diagram example of a data processing system which may be used with the present invention.
  • FIG. 16 illustrates various components of a computer system, it is not intended to represent any particular architecture or manner of interconnecting the components. Other systems that have fewer or more components may also be used with the present invention.
  • the communication device ( 951 ) is a form of a data processing system.
  • the system ( 951 ) includes an inter-connect ( 952 ) (e.g., bus and system core logic), which interconnects a microprocessor(s) ( 953 ) and memory ( 958 ).
  • the microprocessor ( 953 ) is coupled to cache memory ( 954 ) in the example of FIG. 16 .
  • the inter-connect ( 952 ) interconnects the microprocessor(s) ( 953 ) and the memory ( 958 ) together and also interconnects them to a display controller and display device ( 957 ) and to peripheral devices such as input/output (I/O) devices ( 955 ) through an input/output controller(s) ( 956 ).
  • I/O devices include mice, keyboards, modems, network interfaces, printers, scanners, video cameras and other devices which are well known in the art.
  • the inter-connect ( 952 ) may include one or more buses connected to one another through various bridges, controllers and/or adapters.
  • the I/O controller ( 956 ) includes a USB (Universal Serial Bus) adapter for controlling USB peripherals, and/or an IEEE-1394 bus adapter for controlling IEEE-1394 peripherals.
  • USB Universal Serial Bus
  • the memory ( 958 ) may include ROM (Read Only Memory), and volatile RAM (Random Access Memory) and non-volatile memory, such as hard drive, flash memory, etc.
  • ROM Read Only Memory
  • RAM Random Access Memory
  • non-volatile memory such as hard drive, flash memory, etc.
  • Volatile RAM is typically implemented as dynamic RAM (DRAM) which requires power continually in order to refresh or maintain the data in the memory.
  • Non-volatile memory is typically a magnetic hard drive, a magnetic optical drive, or an optical drive (e.g., a DVD RAM), or other type of memory system which maintains data even after power is removed from the system.
  • the non-volatile memory may also be a random access memory.
  • the non-volatile memory can be a local device coupled directly to the rest of the components in the data processing system.
  • a non-volatile memory that is remote from the system such as a network storage device coupled to the data processing system through a network interface such as a modem or Ethernet interface, can also be used.
  • a server data processing system as illustrated in FIG. 16 is used as one of the communication server(s) (e.g., 929 , 925 , and/or 921 in FIG. 15 ).
  • a user terminal as a client system can be a data processing system similar to the system of FIG. 16 .
  • a client system can be in the form of a PDA, a cellular phone, a notebook computer or a personal desktop computer.
  • the I/O devices of the user device may include a USB phone, a Bluetooth wireless phone, or one or more speakers or headphones with one or microphones for the implementation of a software based phone.
  • the traditional communication client(s) may be used in some embodiments of the present invention.
  • a system can provide multiple concurrent connections to a callee with separate billing.
  • multimedia connections for voice chat, text chat, video conferencing, application sharing, common whiteboarding, etc. can be selectively provided via an Ether button that is assigned to a callee for distribution in the callee's environment; the multimedia connections may overlap partially in time; and the multimedia connections can be charged separately (e.g., based on the respective connection durations, the number of transmitted messages, and/or the amounts of transmitted data, etc.).
  • an Ether button can be provided to a callee to host a communication conference having concurrent connections to multiple callers.
  • the multiple callers are separately billed for their connection durations in the conference.
  • different callers may purchase different communication packages to join the same conference. For example, one caller may choose to pay on a per minute basis, while another caller may choose to purchase a pre-determined amount of minutes, which may be extended on a per minute basis after the purchased amount is used.
  • a callee can communicate with multiple simultaneous callers via multiple media types simultaneously, in which each of the caller may be connected via various different combinations of media types, and be billed separately based on which media types they are tuned into and which pricing plans they selected.
  • FIG. 17 illustrates a connection interface that allows a user to request multiple types of concurrent connections with a callee according to one embodiment.
  • the connection interface ( 1001 ) shows a call graphic including a graphical representation of the customer ( 1007 ), a graphical representation of the seller ( 1009 ) (e.g., communicate/callee), and a graphical representation of the connection statuses ( 1002 ) between the system and the seller ( 1009 ) and between the system and the customer ( 1007 ).
  • the customer can choose to request a voice connection via a callback to a phone number provided by the customer.
  • the customer is prompted to provide a callback phone number in the text entry box ( 1003 ). If the customer provides the callback phone number and selects the “Submit” button ( 1005 ), the system will call back the customer at the phone number provided in entry ( 1003 ) and call the seller based on a reference embedded in the connection interface ( 1001 ) to make a phone connection between the customer and the seller.
  • the reference embedded in the connection interface ( 1001 ) is inherited from the call button that was selected to initiate the connection interface ( 1001 ).
  • the customer can further specify a time window for the callback (similar to that shown in FIG. 3 but not shown in FIG. 17 ).
  • the graphical connection interface ( 1001 ) illustrated in FIG. 17 allows the customer to request alternative or additional concurrent connections via other media channels, such as VoIP telephony ( 1011 ), Instant Messaging ( 1013 ), Email ( 1015 ), SMS ( 1017 ), etc.
  • VoIP telephony 1011
  • Instant Messaging 1013
  • Email 1015
  • SMS 1017
  • the icons can be selected to request the respective connections.
  • a VoIP client application is launched to establish a connection between the system and the customer; and the system can further bridge the VoIP-based connection to the seller over a voice connection of choice by the seller (e.g., a connection to a POTS compatible phone number, voice-based instant messaging, etc.).
  • a web form may be presented to receive input for an email message.
  • an email client program is launched to send an email to the system; and the email is then forwarded to seller via a choice of the seller.
  • the seller may choose to receive non-real time text communications via email, or SMS, or a web-based messaging system.
  • a further interface is displayed to prompt the customer to select a preferred way to compose and send the electronic message to the seller via the connection system.
  • the system can establish the media channels with the customer and with the seller separately and bridge the media channels to facilitate the communications.
  • the system can establish an instant messaging session with the customer and an instant messaging session with the seller and relay the messages between the two instant messaging sessions to facilitate instant messaging between the seller and the customer.
  • the customer and the seller may use the same instant messaging network or different instant messaging networks.
  • the customer and the seller can used instant messaging clients with different communication protocols; and communication protocol translation is performed by the system (e.g., using a software robot (Bot)) to bridge the connections.
  • a customer may start with one communication connection (e.g., entering the callback phone number in entry box 1003 for voice communication and pressing the “Submit” button 1005 , or selecting icon 1011 for voice communication via VoIP) and then subsequently, or when needed, request one or more other connections (e.g., selecting icon 1013 for instant messaging for text and/or video communications, selecting icon 1015 for email communication, and/or selecting icon 1017 for communication via SMS).
  • a connection interface may be provided to allow a customer to select multiple communication channels (e.g., an instant messaging session for text-based chat and a callback to POTS phone number for voice chat) and then a “Submit” button to request simultaneous connections of the different communication channels.
  • the customer may start with a request for a phone connection via a callback.
  • the customer may further request an email connection, an SMS connection, or an instant messaging connection.
  • the customer may start with a text-based instant messaging connection, during which it may be determined that a voice connection is needed.
  • the customer may further request a concurrent voice connection, which can be established via a callback, or via a voice-based instant messaging connection.
  • the customer may start with a channel for non-real time communications (e.g., email or SMS) and then switch to a channel for real time communications.
  • non-real time communications e.g., email or SMS
  • the system can provide protocol and/or format conversion/transformation to bridge the connection to the customer and the connection to the seller.
  • the system may use one protocol/format for a connection with a customer and another protocol/format for a connection with the seller and perform the protocol/format transformation to properly bridge the connections.
  • the seller may use an instant messaging client of one instant messaging network and the customer may use an instant messaging client of another network.
  • the system may use instant messaging clients of the respective networks to make connections with the customer and the seller and relay the messages to facilitate the communications between the customer and the seller.
  • the seller may prefer to use email to receive text based communications and the customer may prefer to use SMS to receive responses; thus, the system provides a gateway for receiving text message from the customer via a web page (or SMS), sending the text message to the seller via email, receiving a response from the seller via email and sending the response to the customer via SMS.
  • a web page or SMS
  • the seller may choose text-based instant messaging and the customer may choose voice-based instant messaging; and the system can receive the voice message from the customer, convert it into a text message (e.g., via a human operator or an automated voice recognition system), send the text message to the seller (with or without the confirmation of the customer), receive text response from seller, convert it into a voice response (e.g., via a human operator or an automated voice recognition system), and deliver the voice response to the customer.
  • a text message e.g., via a human operator or an automated voice recognition system
  • send the text message to the seller with or without the confirmation of the customer
  • receive text response from seller convert it into a voice response (e.g., via a human operator or an automated voice recognition system)
  • a voice response e.g., via a human operator or an automated voice recognition system
  • the seller may communicate in one language (in text or voice) and the customer in another language.
  • the system can perform translation (e.g., via a human translator and/or an automated translation system) while bridging the communication channels.
  • translation e.g., via a human translator and/or an automated translation system
  • one person can be giving a speech via the system where a number of people from different countries are listening to the speech translated in different languages via the system, where each of the people from different countries may be connected to the speaker with one or more types of media connections (e.g., voice, text, video) and be charged according to the durations media connections and translation services selected.
  • the translation service includes voice recognition and/or text to speech service.
  • the seller may offer different prices on different communication channels. For example, communications with the seller via phone connection, text-based instant messaging, application sharing, common whiteboarding, email, SMS, video-based instant messaging, etc., can have different prices.
  • the seller/communicatee may specify a set of offers based on media types (e.g., text, image, voice, video) and based on whether or not the communication is in real time; the seller/communicatee can further specify the available connection channels (methods) for the transmission and/or reception of communications in these media types.
  • One media type e.g., text
  • media channels e.g., email, SMS, instant messaging, etc.
  • the system can select one or more appropriate channels to reach the seller and best match the preferred communication channel selected by the customer; and the customer is charged according to the different prices specified by the seller/communicatee.
  • the customers may also increase the bid prices over the prices specified by the seller/communicate to improve their positions in the queue.
  • the customer can select a combination of desired media types (e.g., text, image, voice/audio, video, etc.) and the mode of the connections for the selected media types (e.g., real time communications or non-real time communications).
  • the system then prompts the customer to specify the connection methods/channels to facilitate communications in the selected media types. For example, the customer may select to have a voice connection via a callback to PSTN phone numbers, VoIP telephony, or instant messaging, or via voice mail, multimedia message, etc.).
  • a call graphic can be presented to help the customer step by step through the selection/connection process.
  • FIG. 18 illustrates a call button showing the real time availability of the types of connections available to a customer according to one embodiment.
  • the call button ( 1031 ) is in the form of an icon, which is presented in the browser (or other applications, such as an email viewer) after a segment of web page is rendered.
  • the segment of web page includes at least one reference that is assigned to the callee. When the segment of web page is rendered, the reference is used in a request (e.g., http request) to obtain information for the rendering of the call button ( 1031 ).
  • the call button ( 1031 ) is provided as an iconic image in response to the request during the rendering of the segment of web page.
  • the reference that is assigned to the callee is used to determine the real time availability (e.g., at the time of the request) for connecting to the callee via various communication channels (and/or media types).
  • the call button ( 1031 ) in FIG. 18 indicates that the callee currently accepts phone connections, instant messaging connections, email and SMS.
  • the appearance of the call button ( 1031 ) is based on the current availability statuses of various communication channels (and/or media types).
  • the call button ( 1031 ) shows the set of communication channels that the caller can currently request connections for without showing the set of communication channels that are not currently available.
  • the image portions that represents the communication channels may be rendered differently based on the corresponding availability statuses. For example, image portions that represent the available channels can be rendered in color while image portions that represent unavailable channels are rendered in grayscale.
  • the segment of web page is implemented using a reference to a web page of the system.
  • the segment of the web page may reference the web page for the iconic image which is generated dynamically on the server of the system based on the current availability information.
  • the segment of the web page may include scripts which obtain availability information from the server of the system and then generate the iconic image on the client (e.g., the web browser) based on the obtained availability information.
  • the scripts can periodically obtain the updated availability information.
  • the call button indicates the current availability status of various media types (e.g., text, voice, image, video, etc.).
  • various media types e.g., text, voice, image, video, etc.
  • the availability of callee for real time communications is indicated in the call button; and the status of various media types (e.g., text, voice, image, video, etc.) and/or media channels are displayed in a separate page after the call button is selected.
  • FIG. 19 illustrates a connection interface that allows a user to monitor the current connections and to request further concurrent connections according to one embodiment.
  • the connection interface ( 1041 ) shows a representation of the customer ( 1043 ), a representation of the seller ( 1045 ), and the statuses of various connections.
  • the voice connection ( 1051 ) and the instant messaging connection ( 1053 ) are currently maintained for real time communications.
  • the durations of the connections are shown in text boxes ( 1061 and 1063 ) respectively.
  • the durations for the separate connections are separately tracked.
  • the voice connection ( 1051 ) and the instant messaging connection ( 1053 ) can be provided concurrently at least for a period of time.
  • the customer can select the icons ( 1051 and 1053 ) to terminate the respective connections for voice and instant messaging.
  • the customer can terminate the connections for voice and instant messaging separately without using the connection interface ( 1041 ).
  • the customer can hang up the phone to disconnect the voice connection, or close an instant messaging session to stop the voice connection and the instant messaging connection.
  • separate stop buttons are provided, which can be used to terminate the respective connections separately.
  • the customer can select the video icon ( 1055 ) to request a concurrent video connection, while the voice connection and instant messaging connection are maintained.
  • the customer can select the email icon ( 1057 ) to request an email connection to the seller, the SMS icon ( 1059 ) for an SMS connection to the seller, etc.
  • connections may have different prices.
  • the real time communication connections may be priced based on the time duration of the communication connections; and the non-real time communication connections may be priced based on the size of the communications.
  • email connections may be charged based on the size of the email messages; and the SMS connections may be charged based on the number of messages transmitted.
  • the price for a particular media type connection may vary. For example, a number of price options may be offered for one media type connection; and the price for a particular user may depend upon the selection of the user. For instance, price for the video connection can be selected from the option of $0.75 per minutes or the option of $6.00 for 10 minutes.
  • the user can negotiate with the seller to determine a price. For example, when the user selects icon 1055 in FIG. 19 , another interface (not shown) can be displayed to allow the user to choose from multiple pricing options.
  • the prices/rates can change over time based on a number of seller-specified rules and/or other conditions. For example, the seller can set up a rule such that for every 10 minutes that the user is connected via the phone, the rate on the video connection is decreased. Sellers can set up different rules for their different media types to encourage the customer to upgrade media types, to make bulk time purchase, and/or to select a seller preferred media type, etc.
  • connection interface can further present the amounts that have been spent on the respective communication connections in the session and/or the total amount that has been spent on the communication connections in the session (not illustrated in FIG. 19 ).
  • FIG. 20 shows a method to provide multiple concurrent connections with separate billing according to one embodiment.
  • a first party provides ( 1101 ) one or more references (e.g., an Ether button) to a second party.
  • the second party distributes ( 1103 ) the one or more references to customers (e.g., via web sites, blogs, emails, etc.).
  • the first party receives ( 1105 ) requests for a plurality of communication connections to a communicatee via the one or more references distributed to customers by the second party.
  • the first party provides ( 1107 ) the plurality of communication connections which are connected simultaneously to the communicatee at least for a period of time.
  • the first party charges ( 1109 ) separate fees for the plurality of communication connections.
  • the separate fees are based on respective time lengths of the communication connections.
  • the time lengths of the partially concurrent communication connections can be different; and the first party separately tracks the time lengths of the communication connections.
  • the at least partially concurrent connections are from different customers.
  • a first connection of the communication connections is from a first customer to the communicatee; the second connection of the communication connections is from a second customer to the communicatee; and the first party bridges or conferences the connections to allow the communicatee to speak to the first and second customers while the connections are overlapping with each other in time.
  • the first connection and the second connection are of a same type (e.g., phone connections, which may be partially over circuit switched network and partially over packet switched network).
  • the first connection and the second connection are bridged in a conference in which a voice input from the first customer is delivered to both the communicatee and the second customer.
  • the first connection and the second connection are bridged in a conference in which the voice input from the communicatee is provided to both the customers, but the voice input from one customer is not provided to another customer.
  • the communication connections provided is one-way or half-duplex (not full-duplex).
  • the customers can hear or see the seller but do not provide voice or video feedback.
  • a person can give a lecture or speech to a number of people connected via the connection provider to just listen (or watch) without the privilege to speak to the person.
  • the first connection of the communication connections is of a first type; and the second connection of the communication connections is of a second type.
  • the first connection and the second connection can be connections for communications in different ones of text, voice, audio, video, and image from a same customer.
  • the first connection and the second connection may use different communication protocol.
  • the first connection is capable to support real time communications (e.g., instant messaging, voice chat, video conferencing, application sharing, common whiteboarding, etc.) and the second connection is capable to support non-real time communications (e.g., email, SMS, voice message, etc.).
  • the first and second connections are of different types and from different customers; and the first and second connections are partially conferenced together.
  • the audio portion of a video connection can be conferenced with a phone connection.
  • the first connection and the second connection can be requested via a same reference (e.g., a reference assigned to an Ether button) or separate ones of the one or more references (e.g., separate Ether buttons for requesting separate connections via different media channels).
  • a same reference e.g., a reference assigned to an Ether button
  • separate ones of the one or more references e.g., separate Ether buttons for requesting separate connections via different media channels.
  • information on availability of the communicatee to accept the connections is provided in response to the one or more references to be rendered in a browser.
  • the information may include an icon, which determines an appearance of the one or more references in the browser.
  • Embodiments of the present invention can be implemented using hardware, programs of instruction, or combinations of hardware and programs of instructions.
  • a connection provider uses a connection server configured on a packet switched network to provide telephone connections between callers (e.g., customers) and callees (e.g., advertisers), as illustrated in FIG. 21 .
  • the connection server ( 2107 ) receives and/or places telephone calls via the telecommunication carrier ( 2105 ) over the packet switched network ( 2109 ).
  • the telecommunication carrier ( 2105 ) further routes the telephone communications towards the caller ( 2101 ) and the callee ( 2103 ).
  • the connection sever ( 2107 ) can use one type of communication connection with the telephone carrier ( 2105 ) to facilitate the communication connections with variety of devices used by the customers (e.g., callers and callees).
  • the connection server ( 3307 ) can also place and/or receive direct VoIP calls to/from the caller (or callee).
  • the connection server can place separate VoIP calls, via the telecommunication carrier ( 2105 ), to the caller ( 2101 ) (e.g., the requester of the click-to-call) and the callee ( 2103 ) (e.g., the destination of the click-to-call request).
  • the caller e.g., the requester of the click-to-call
  • the callee e.g., the destination of the click-to-call request.
  • the telecommunication carrier ( 2105 ) bridges the packet switched the network and the public switched telephone network (PSTN).
  • PSTN public switched telephone network
  • the telecommunication carrier ( 2105 ) routes the call from the packet switched network ( 2109 ) to the caller ( 2101 ) (or the callee 2103 ) on the circuit switched network.
  • POTS Plain Old Telephone Service
  • POTS Plain Old Telephone Service
  • the connection server ( 2107 ) joins the separate calls that are placed via the packet switched network ( 2109 ) to connection the callee ( 2103 ) and the caller ( 2101 ).
  • call signaling and media content may use different network paths. While call signaling is arranged to go through the packet switched network ( 2109 ) and the connection server ( 2107 ), the media stream does not have to go through the connection server ( 2107 ). For example, when the calls are joined, the media content may be redirected to flow over the communication carrier ( 2105 ) without going through the packet switched network ( 2109 ) to the connection server ( 2107 ) for improved performance and efficiency.
  • the connection server ( 2107 ) can release the control over the media stream to allow the media stream to flow through the shortest path, without going through the connection server, while maintaining control to the connection for the call by staying on the path for call signaling.
  • the telecommunication carrier ( 2105 ) converts the call for the packet switched network ( 2109 ) for the connection server ( 2107 ).
  • virtual softphones on the telecommunication carrier ( 2105 ) are assigned to the caller ( 2101 ) and the callee ( 2103 ) for interfacing with the connection server ( 2107 ) over the packet switched network ( 2109 ).
  • the virtual softphones encapsulates the devices and networks used by the caller ( 2101 ) and callee ( 2103 ) to access the connection server ( 2107 ); and the telecommunication carrier ( 2105 ) shields the connection server ( 2107 ) from the implementation details of the user devices and networks used by the caller ( 2101 ) and the callee ( 2103 ).
  • the connection server ( 2107 ) calls (or receives calls from) and connects the virtual softphones on the telecommunication carrier ( 2105 ) to connect the caller ( 2101 ) and the callee ( 2103 ).
  • connection server ( 2107 ) can operate efficiently in a digital domain.
  • the connection server ( 2107 ) interfaces with the telecommunication carrier ( 2105 ) using one type of Internet Telephony systems (e.g., SIP-based Internet telephony).
  • a connection server may include some or all of the functionality of the telecommunication carrier ( 2105 ).
  • the connection server may be configured to bridge a packet switched network and a circuit switched network.
  • the connection server may support multiple, different types of Internet Telephony systems.
  • connection server ( 2107 ) and the telecommunication carrier ( 2105 ) are operated by different, separate entities.
  • the connection server ( 2107 ) and the telecommunication carrier ( 2105 ) may be operated by the same entity.
  • the telecommunication carrier ( 2105 ) includes a set of facilities operated by a number of separate entities.
  • the caller ( 2101 ) and/or the callee ( 2103 ) may also place/receive calls via a packet switched network.
  • the telecommunication carrier ( 2105 ) may route the calls between the caller ( 2101 ) and the callee ( 2103 ) without using a PSTN.
  • caller ( 2101 ) and/or the callee ( 2103 ) may place calls to or receive calls from the connection server ( 2107 ) via Internet.
  • FIG. 22 shows a connection server according to one embodiment.
  • the connection server ( 2106 ) is configured to place and/or receive VoIP calls using Session Initiation Protocol (SIP).
  • SIP Session Initiation Protocol
  • a session border controller ( 2201 ) is used to interface with the packet switched network ( 2203 ) and control the types of network traffic related to VoIP calls that might go into the connection server ( 2205 ).
  • the session border controller ( 2106 ) is configured to control the signaling and media stream during the setting up, conducting and tearing down of VoIP calls to or from the connection server ( 2205 ).
  • the session border controller ( 2106 ) may pick up the call that comes to the session border controller ( 2106 ), places a separate call from the session border controller ( 2106 ), and joins the received call and the placed call to control both the signaling and media stream.
  • the session border controller ( 2106 ) may perform signaling/encoding translation to allow the connection server ( 2205 ) to process the VoIP calls in one standard, while receiving VoIP calls in a variety of standards (e.g., SIP, H.323, etc.).
  • the session border controller ( 2106 ) is configured to perform one or more firewall functionalities, such as denial of service protection, call filtering, bandwidth management, etc.
  • the session border controller ( 2106 ) is configured to perform media releasing operation.
  • the session border controller ( 2106 ) determines that the source and destination of a media stream is on the same side of the session border controller ( 2106 ) (e.g., both the source and the destination of the media stream is outside the connection server 2205 )
  • the session border controller ( 2106 ) can release the hairpining of the media stream and allow the media stream to flow without going through the session border controller ( 2106 ).
  • a set of SIP servers (e.g., 2211 , 2213 , . . . , 2219 ) are networked to the session border controller ( 2201 ) to receive messages for incoming calls and to initiate outgoing calls.
  • the session border controller ( 2201 ) is configured to evenly distribute the calls for processing by the SIP servers.
  • the session border controller may route it to a SIP server (e.g., 2211 ) for processing.
  • the INVITE message includes the phone number dialed by the caller and the contact information about the caller (e.g., the phone number of the caller 2101 and/or the identity of the virtual SIP phone at the telecommunication carrier 2105 ).
  • the SIP server may determine whether the phone number dialed by the caller ( 2103 ) is sufficient to determine the phone number of the callee (e.g., 2103 ). If the phone number of the callee (e.g., 2103 ) can be determined from the phone number dialed by the caller ( 2103 ) (e.g., via decoding the phone number dialed by the callee, or looking up the phone number of the callee from a table using the phone number dialed by the caller as a key), the SIP server can place a separate SIP call to the callee via the packet switched network ( 2203 ) and then connect the caller and the callee.
  • the phone number of the callee e.g., 2103
  • the SIP server can place a separate SIP call to the callee via the packet switched network ( 2203 ) and then connect the caller and the callee.
  • the SIP server can further route the SIP INVITE message (e.g., to the telecommunication carrier ( 2105 ) to direct the call to the callee.
  • the SIP server may modify the INVITE message by replacing the destination with the determined phone number of the callee.
  • the SIP server can modify the INVITE message by removing the phone number of the caller (or replacing the phone number of the caller with a phone number of the connection server).
  • the modified INVITE message identifies the virtual softphone corresponding to the caller on the telecommunication carrier as the SIP phone initiated the call; thus, the virtual softphone corresponding to the callee on the telecommunication carrier can establish media connection with the virtual softphone corresponding to the caller on the telecommunication carrier directly.
  • the modified INVITE message may identifies a media server ( 2221 ) (or a virtual softphone on SIP server) as the initiator for a separate call. The SIP server then connects the calls for the media stream.
  • the caller is first connected to a media server (e.g., 2221 , 2223 , or 2229 ).
  • the SIP server may forward the SIP INVITE message to one or more of the media servers for answering the call.
  • a media server e.g., 2221
  • a prompt is played to the caller by the media server.
  • the media server may include an Interactive Voice Response (IVR) system, or be connected to an IVR system, to obtain input from the caller.
  • IVR Interactive Voice Response
  • the media server may prompt the caller to enter the extension assigned to the callee, such that the phone number of the callee can be determined based on the phone number including the extension dialed by the caller.
  • the extension dialed by the caller is sufficient to determine the phone number of the callee.
  • the SIP server can further connect the call to the callee.
  • the media server can send a message to the SIP server.
  • the message identifies the call and the extension obtained from the caller.
  • the SIP server determines the callee's phone number based at least on the extension received from the media server and initiates a SIP call via the packet switched network ( 2203 ) (e.g., by sending a SIP INVITE message to the telecommunication carrier 2105 , which further bridges the call to the callee 2103 ). Then, the SIP server disconnects the media server from the call and reconnects the call to the callee.
  • the SIP server can send a SIP BYE message to the media server to disconnect the media server from the call (e.g., by sending a “BYE” message to the media server for the call) and send a re-INVITE message towards the caller to connect the caller and the callee.
  • the media server may send a SIP BYE message to the SIP server for the call; the BYE message may include the extension obtained from the caller; in response to the BYE message that contains the extension, the SIP server determines the phone number of the callee and further connects the caller to the callee.
  • the SIP server can direct the caller and the callee to connect to each other for the media stream without having the media stream going through the session border controller ( 2201 ) into the connection server ( 2205 ).
  • the media stream can go through the telecommunication carrier ( 2105 ) in FIG. 21 without going to the connection server ( 2107 ) after the SIP server connects the caller and the callee.
  • the SIP server stays on the signaling path to monitor the progress and termination of the call.
  • the SIP server can also break the connection between the caller and the callee, or force the media stream to come through the connection serve ( 2205 ).
  • the SIP server may selectively conference a media server into the call to monitor and/or record the communication of the call between the caller and the callee.
  • the SIP server may reconnect the caller and the callee to separate media servers for interaction with an IVR system or a human operator to confirm a deal or transaction.
  • the SIP server may initiate a callback to a caller via a SIP call over the packet switched network ( 2203 ) for a connection to the caller.
  • the SIP call may be bridged onto a circuit switched network (e.g., by a telecommunication carrier 2105 ).
  • the SIP server can then reconnect the call to a media server for sending a prompt to the caller before reconnect the call to the callee.
  • the callback can be initiated from a media server; and the call signaling (e.g., the INVITE message from the media server) goes through the SIP server for call control.
  • the SIP server sends out the INVITE message on behalf of the media server.
  • the SIP servers ( 2211 , 2213 , . . . , 2219 ) and media servers ( 2221 , 2223 , . . . , 2229 ) are implemented on separate computers connected via a local area network (and/or intranet or Internet). Alternatively, at least the some of the servers can be implemented on a same computer. In one embodiment, the SIP servers and the media servers are also integrated with the session border controller ( 2201 ) on a same data process system having multiple processors coupled with a data bus. In one embodiment, the SIP servers are coupled to the media servers via a network; and a SIP server may use any of the available media server for interaction with the caller (or callee). Alternatively, a SIP server may be configured to use one or more of media servers that are not shared by other SIP server. For example, a SIP server may be implemented on a same data processing system with one or more media servers which are reserved for the SIP server.
  • connection server ( 2205 ) may further include a database server ( 2205 ) to storing records related to the calls, data mapping between the communication references assigned to the callees and the actual phone numbers of the callees, etc.
  • contact mapping are cached in the local memory (e.g., RAM) of the servers for improved performance; and the cached mapping is updated when the database is updated.
  • routines executed to implement the embodiments of the invention may be implemented as part of an operating system or a specific application, component, program, object, module or sequence of instructions referred to as “computer programs.”
  • the computer programs typically comprise one or more instructions set at various times in various memory and storage devices in a computer, and that, when read and executed by one or more processors in a computer, cause the computer to perform operations necessary to execute elements involving the various aspects of the invention.
  • Examples of computer-readable media include but are not limited to recordable and non-recordable type media such as volatile and non-volatile memory devices, read only memory (ROM), random access memory (RAM), flash memory devices, floppy and other removable disks, magnetic disk storage media, optical storage media (e.g., Compact Disk Read-Only Memory (CD ROMS), Digital Versatile Disks, (DVDs), etc.), among others.
  • the instructions may be embodied in digital and analog communication links for electrical, optical, acoustical or other forms of propagated signals, such as carrier waves, infrared signals, digital signals, etc.
  • a machine readable medium can be used to store software and data which when executed by a data processing system causes the system to perform various methods of the present invention.
  • the executable software and data may be stored in various places including for example ROM, volatile RAM, non-volatile memory and/or cache. Portions of this software and/or data may be stored in any one of these storage devices.
  • a machine readable medium includes any mechanism that provides (i.e., stores and/or transmits) information in a form accessible by a machine (e.g., a computer, network device, personal digital assistant, manufacturing tool, any device with a set of one or more processors, etc.).
  • a machine e.g., a computer, network device, personal digital assistant, manufacturing tool, any device with a set of one or more processors, etc.
  • aspects of the present invention may be embodied, at least in part, in software. That is, the techniques may be carried out in a computer system or other data processing system in response to its processor, such as a microprocessor, executing sequences of instructions contained in a memory, such as ROM, volatile RAM, non-volatile memory, cache or a remote storage device.
  • processor such as a microprocessor
  • a memory such as ROM, volatile RAM, non-volatile memory, cache or a remote storage device.
  • hardwired circuitry may be used in combination with software instructions to implement the present invention.
  • the techniques are not limited to any specific combination of hardware circuitry and software nor to any particular source for the instructions executed by the data processing system.

Abstract

Methods and apparatuses to provide services to people who wish to make connections for real time communication, such as live telephone conversation, chat, video conferencing, etc., and/or non-real time communication, such as email. In one embodiment, a method includes: a first party providing one or more references to a second party for distribution to customers, the one or more references capable of being used to request the first party to provide a plurality of communication connections to a communicatee, the plurality of communication connections being connected simultaneously to the communicatee at least for a period of time; and the first party charging separate fees for the plurality of communication connections.

Description

  • The present application is a continuation in part application of a copending U.S. patent application Ser. No. 11/329,459, filed Jan. 10, 2006, the disclosure of which is hereby incorporated herein by reference.
  • TECHNOLOGY FIELD
  • At least some embodiments of the present invention relate to user interface techniques to assist people to connect for real-time communication, such as connecting people for telephonic conversation, chat, document sharing, screen-sharing, etc., and/or non-real time communication, such as email.
  • BACKGROUND
  • Internet, cellular communication systems, television, newspaper, etc., provide diverse communication media channels through which people may receive information and/or communicate with each other.
  • People may use a web site to chronologically publish personal thoughts and web links. Such a web site may be referred to as a blog. A blog may include content showing what is happening in the life of the person, collecting information on certain types of subjects of interest to the person, providing links to related web sites, etc. Thus, a personal web site may include a collection of contents that may be helpful to people of similar interest.
  • Telephone systems allow users to conduct real time two-way voice communication. Traditional land-line based telephone systems connect one telephone set to another through one or more switching centers, operated by one or more telephone companies, over a land-line based telephone network. Traditionally, a telephone connection is based on a circuit switched network.
  • Current telephone systems may also use a packet-switched network for a telephone connection. A packet switched network is typical in a computer data environment. Recent developments in the field of Voice over IP (VoIP) allow the delivery of voice information using the Internet Protocol, in which voice information is packaged in a digital form in discrete packets rather than in the traditional circuit-committed protocols of the public switched telephone network (PSTN).
  • Cellular networks allow a cellular phone to connect to a nearby cellular base station through an air interface for wireless access to a telephone network. Recent developments in wireless telephone systems allow not only voice communications but also data communications. For example, cellular phones can now receive and send short messages through a Short Message Service (SMS). Web pages can now be retrieved through wireless cellular links and displayed on cellular phones. Wireless Application Protocol (WAP) has been developed to overcome the constraints of relatively slow and intermittent nature of wireless links to access information similar or identical to World Wide Web.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The present invention is illustrated by way of example and not limitation in the figures of the accompanying drawings in which like references indicate similar elements.
  • FIG. 1 illustrates a system according to one embodiment of the present invention.
  • FIG. 2 illustrates a user interface to create a listing according to one embodiment of the present invention.
  • FIG. 3 illustrates a user interface to start a communication according to one embodiment of the present invention.
  • FIG. 4 illustrates a user interface to display the status of a communication connection process and to provide the user guidance through the process according to one embodiment of the present invention.
  • FIGS. 5-12 show examples of flow diagrams of a process to connect a user and an adviser for communication according to one embodiment of the present invention.
  • FIG. 13 illustrates a method to display a call button according to one embodiment of the present invention.
  • FIG. 14 illustrates a method to monitor and control a connection according to one embodiment of the present invention.
  • FIG. 15 shows a diagram of a system to assist and track connections according to one embodiment of the present invention.
  • FIG. 16 shows a block diagram example of a data processing system which may be used with the present invention.
  • FIG. 17 illustrates a connection interface that allows a user to request multiple types of concurrent connections with a callee according to one embodiment.
  • FIG. 18 illustrates a call button showing the real time availability of the types of connections available to a customer according to one embodiment.
  • FIG. 19 illustrates a connection interface that allows a user to monitor the current connections and to request further concurrent connections according to one embodiment.
  • FIG. 20 shows a method to provide multiple concurrent connections with separate billing according to one embodiment.
  • FIG. 21 shows a system including a connection server configured on a packet switched network according to one embodiment.
  • FIG. 22 shows a connection server according to one embodiment.
  • SUMMARY
  • Methods and apparatuses to provide services to people who wish to make connections for real time communication, such as live telephone conversation, chat, video conferencing, etc., are described herein. Some embodiments are summarized in this section.
  • A first embodiment, includes: an application receiving a representation of an object including a reference to a remote system and a callee; the application communicating with the remote system via the reference to the remote system and the callee to determine a rendering of the object; and the application rendering the object identifying a state of the callee for accepting a request for real time communication, the object selectable to at least initiate a request for real time communication with the callee.
  • A second embodiment, includes: maintaining a listing for offering to establish real time communications with a first entity, including: contact information of the first entity; a price for a first predetermined period of real time communication with the first entity; and at least one option provided by the first entity to continue beyond the first predetermined period of real time communication; and after purchasing a first session of the first predetermined period of real time communication, presenting the option to continue the first session beyond the first predetermined period of real time communication.
  • A third embodiment, includes: presenting a graphic to guide a communicator through a connection process to establish a media connection between the communicator and a communicatee for real time communication; updating the graphic to provide an updated status of the connection process; and updating the graphic to instruct the communicator to take an action based on a current status of the connection process.
  • A fourth embodiment, includes: receiving in a system a call back time window for a request from a first entity to establish a media connection for real time communication with a second entity, the call back time window being specified by the first entity to indicate a period of time including a current time during which the first entity is available for real time communication with the second entity; and attempting to establish the media connection between the first entity and the second entity according to the call back time window.
  • A fifth embodiment, includes: responsive to a first request from a callee, providing a communication reference to the callee for distribution; and responsive to a second request from a caller indicating the communication reference, determining a current availability state of the callee for real time communication and providing information to the caller according to the current availability state of the callee.
  • A sixth embodiment, includes: a first party providing one or more references to a second party for distribution to customers, the one or more references capable of being used to request the first party to provide a plurality of communication connections to a communicatee, the plurality of communication connections being connected simultaneously to the communicatee at least for a period of time; and the first party charging separate fees for the plurality of communication connections
  • The disclosure includes methods and apparatuses which perform these methods, including data processing systems which perform these methods, and computer readable media containing instructions which when executed on data processing systems cause the systems to perform these methods.
  • Other features will be apparent from the accompanying drawings and from the detailed description which follows.
  • DETAILED DESCRIPTION
  • The following description and drawings are illustrative of the invention and are not to be construed as limiting the invention. Numerous specific details are described to provide a thorough understanding of the present invention. However, in certain instances, well known or conventional details are not described in order to avoid obscuring the description. References to one or an embodiment in the present disclosure can be, but not necessarily are, references to the same embodiment; and, such references mean at least one.
  • In one embodiment of the present invention, a system is to provide services to people who wish to make connections for real time communication, such as live telephone conversation, chat, video conferencing, instant messaging, and other forms of real time communications.
  • For example, benefits of the services may include anonymity for one or more of the parties of the real time communication. For example, the service can connect the caller and callee without revealing the contact information of one party to another, such as the actual telephone number. The services may include filtering callers/participants so that only those who are willing to pay can get connected. The services may include collecting payments for the callee so that the callee can earn money from talking to the callers over the phone without the burden of managing payment collection, etc. The services may include scheduling so that the real time communication are initiated at a convenient time (e.g., no night calls). The services may include queue managing to serve both the callees and the callers. The services may include providing the cool, convenient click-to-call functionality to attract callers for the callees.
  • In one embodiment, the services may include providing a persistent and consistent way to reach people. For example, a web link, or a toll-free number, or a local phone number can be provided by the system so that the callers can reach the callee using the web link, or the toll-free number, or the local phone number even after the telephone of the callee has been changed. The callee can publish the web link and/or the phone number, knowing that the calls will follow if the callee updates the telephone number in the system. The callees do not need to reveal their actual telephone numbers to the potential callers. If desired, the callee can keep the caller from knowing the actual telephone number of the callee for anonymity.
  • In general, the service may provide any combination of the benefits discussed above.
  • Many examples are presented in the context of telephone connection for real time conversation. Embodiments of the present invention can also be applied to other real time communication systems (e.g., text chat, instant messaging, voice/video conferencing, etc.) in a way similar to the telephone conversation.
  • FIG. 1 illustrates a system according to one embodiment of the present invention. As illustrated in FIG. 1, callees who have customers, fans, far-away clients, etc., can make money talking with them on the phone. The system provides the callees with services of managing the transactions such that the callees can sell what they have to say with reduced/minimum efforts on business aspects. For example, a blogger can earn money from the blog by talking to the interested readers of the blog.
  • In one embodiment, the callee can sign up for a call button of the system and/or for a phone number provided by the system. The call button and/or the assigned phone number can be used as the contact information of the callee. For example, the callee can publish the call button and/or the phone number in a variety of media channels and environments, such as in the blog, in advertisements, in news articles, in column discussions, in business cards, etc.
  • In one embodiment of the present invention, the callees manage their own distribution of the call button and/or the phone number, since the callees may have their unique ways to reach potential callers (e.g., through blogs, home pages, business cards, etc.). The callees can bring the call button and/or the phone number into the context where the customers of the callees are, such as their own web pages or blogs or business cards (e.g., via a phone number).
  • Alternative, or in combination, the system may also help the callees to reach callers through presenting the call buttons and/or the phone numbers in marketplaces, such as online listings of services, advertisements embedded in the search results generated by a search engine, classified advertisements, etc.
  • After signing up for the call button and/or the phone number, the callees can set up their own prices and their own hours for receiving the calls. When the call button and/or the phone number leads the callers to callees, the callees can earn money by talking to the callers without having to manage scheduling, queue, payment collection, privacy, etc. For example, the callees can enjoy the benefit of anonymity provided by the system, since the callees do not have to reveal their actual phone numbers to the potential callers in order to receive calls. The system provides the filtering functionality so that some callers can reach the callees.
  • In one embodiment of the present invention, the services of the system are packaged and delivered through the use of a call button and/or a communication reference (such as a phone number) assigned to the callee. The callees do not have to rely upon a marketplace, such as keen.com, to reach callers.
  • FIG. 2 illustrates a user interface to create a listing according to one embodiment of the present invention. In FIG. 2, the callee can specify the rate the callee will charge the callers when the callers want to talk to the callee.
  • In one embodiment, the callee may specify the price (rate) in terms of a package, such as $100 for one hour. A call package has a specified price for a given time limit that is longer than one minute (e.g., one hour). Alternatively, the callee may specify the price in terms of a price per unit of time, such as $2 per minute, without specifying a time limit.
  • In one embodiment, when the rate is specified as a package that includes a time limit (e.g., 60 minutes, two hours, etc.), the callee can further specify the policy for the continuation of the call beyond the time limit (e.g., $50 per 30 minutes thereafter, or end call, or no longer charge).
  • In the user interface illustrated in FIG. 2, the callee can specify the phone number (e.g., 415-861-6100) at which the system will call the callee when a customer wishes to speak to the callee. The phone number is used by the system to call the callee and make a connection to the customer. The phone number of the callee is not provided to callers (customers of the callee) for anonymity.
  • In one embodiment, the callee may specify a listing name (e.g., for this listing). The callee may create multiple listings with different rates, phone numbers, etc., in the same account. Optionally, the callee provide may further description and a photo (e.g., a photo of the callee) for the listing.
  • In one embodiment, the photo of the listing should be no larger than 70 pixel wide by 70 pixel high and should be in either GIF or JPEG format. Alternatively, the system may automatically convert the image uploaded from the callee into the appropriate size and format. However, it is understood that other sizes can also be used.
  • After the listing is created, the callee can select the button “Continue” to access the next screen for getting the call button.
  • In one embodiment, the web server of the system provides the callee with: a call button and/or a phone number, such as 1-800-GO-ETHER extension XXXX, after the callee finishes creating the listing. The call button and the phone number assigned to the callee are intended for the callee to place wherever a caller (buyer) will come across them.
  • For example, a golf pro provides great swing tips. The golf pro as a callee (seller) can put a call button on a blog, on a web page, in the footer of an email, etc. When people are reading the blog about golf equipment, they might think “I'm really interested in what this person has to say, I think I'll pay to talk to them live and ask them all my questions.”
  • In one embodiment, the call button includes HTML (Hypertext Markup Language) code which contains a reference to the listing and one or more links to a server of the system. The HTML code can be inserted into the blog and/or the home page of the callee, or an email. When the HTML code is rendered in the browser of the caller (e.g., when the caller visits the blog or the home page of the callee, or when the caller views an email from the callee), the browser shows a call button which can be selected (e.g., through “clicking” on the call button using a cursor controlling device, such as a mouse, a track ball, a joystick, a touch screen, etc.) to request a phone connection. An example of the appearance of a call button includes an icon showing a telephone set and the text “call now”, as illustrated in FIG. 1.
  • In one embodiment, when the call button is rendered, the appearance of the call button may include an icon, which when selected or activated can initiated a request for a real time communication connection.
  • Alternative, the call button can be specified in documents in a format other than HTML, such as in an extensible markup language (XML).
  • In one embodiment, the call button can change its state depending on the state of the caller and/or callee. For instance, if the callee is already on a phone call with a caller, the button would indicate “busy,” so that a second caller would see that the callee is already on a telephone. Clicking on the button in this instance would give the second caller the ability to get in line to talk to the callee. Or, in another embodiment, the second caller clicking on the button could give him the ability to join the call in progress.
  • In one embodiment, the call button can change its state depending on what the callee explicitly indicates. The callee could, for instance, tell the system, via a web form or telephone IVR, that he is currently “taking calls” or “not taking calls” or “offering video” or “offering chat” or “taking appointments” or taking “arranged calls” or “callbacks.” He could indicate that he is taking calls and is “by my phone,” indicating a heightened presence. Depending upon each of such states, the system would lead callers down different communication paths. If a callee is “by my [his/her] phone,” the system might call the caller first, since it's highly probably that the callee will be available for his/her side of the connection. If the callee is simply “taking calls,” the system might call the callee first, since he/she might be the more unlikely party to be available. Other communication paths include getting in line, joining a conference call, turning on a video connection, scheduling an appointment, entering into a chat session, etc.
  • Similarly, the golf pro can use the phone number for various offline media and other media. For example, if the golf pro writes a column for Golf Digest magazine, he can put the phone number that is assigned to him (e.g., Ether phone number) at the end of the column, such as 1-800-GO-ETHER, extension XXXX. The system can even provide him with a custom 800 number, such as 1-800-GOLF-PRO, rather than the extension to a generic 1-800-GO-ETHER number. For example, the column may include the following message: “Call me to talk about your own golf swing. Dial 1-800-GOLF-PRO. $100/hour.” Alternatively, the Ether phone number can be a phone number local to a specific region of interest to the golf pro (e.g., having the same area code, or the same area code and exchange, as those in the target geographical area).
  • In one embodiment, the callee may request a phone number, such as “1-800-GO-ETHER” extension “YOU”, which is specifically assigned to the callee (and/or the listing). The callee can publish the assigned phone number in the blog, home page, printed publications, brochure, or business card. The phone number may be given out during a TV or radio talk show, etc. When the assigned phone number is called, the call is first connected to a server of the system. The system can then call the callee and join the caller and the callee for real time communication.
  • FIG. 3 illustrates a user interface to start a communication according to one embodiment of the present invention. For example, after a caller selects a call button, the user interface as illustrated in FIG. 3 is displayed (e.g., in the browser of the caller, or in a pop-up window).
  • In the example of FIG. 3, a call graphic is displayed to show the progress of making the connection. In FIG. 3, the photo of the callee (e.g., the photo uploaded by the callee to the server for the listing during the creation of the listing) is displayed with a link “More about me”, which when selected causes the browser to display the description of the listing corresponding to the call button.
  • In one embodiment, when the photo of the listing is not available, the system may present a standard icon to represent the callee.
  • In FIG. 3, an icon and the description “Your Telephone” are displayed to present the caller. An “ether” icon between the caller and callee represents the system. The link “How this works” under the “ether” icon can be selected to see the details of the call process, which can be helpful to a user who is not familiar with the system.
  • The user interface presents an entry to receive a time window (e.g., 4 hours) within which the caller is available to take a call back from the system to talk to the callee. The user interface also includes an entry to receive the phone number of the caller such that the system can call back the caller to make the connection between the caller and the callee in this time window.
  • In one embodiment, the user interface can be part of the VoIP client application (e.g., the user interface of a VoIP terminal, such as the user interface of a VoIP-enable phone, or an application window of a VoIP application running on a computer or a Personal Digital Assistant (PDA)). The VoIP phone connection can be established, whether the user inputs the callback phone number or if the VoIP connection simply connects the two parties without the need of a phone number.
  • In FIG. 3, the user interface includes a button “call now” which when selected causes the user interface to send the time window and the callback phone number to a server to request for a phone connection.
  • In one embodiment, the user interface is part of the VoIP client application which can send the telephonic contact information (e.g., the phone number of the VoIP client application or a user ID of the VoIP system) to the server without the user explicitly specifying the call back number.
  • FIG. 4 illustrates a user interface to display the status of a communication connection process and to provide the user guidance through the process according to one embodiment of the present invention.
  • In FIG. 4, the call graphic shows that the phone of the callee is off the hook, indicating that the callee has accept the call. The call graphic shows the icon “Press 1” to instruct the caller to press “1” on the phone to be connected to the callee.
  • The user interface further provides text explaining the status and instruction to the caller.
  • In one embodiment, before the callee accepts the call, the system calls the callee, during which the call graphic shows that the phone of the callee is ringing and the phone of the caller is on the hook, not yet answered by the callee. The text is provided in the user interface to explain the current status of the connection process and to instruct the user to wait while the system is contacting the callee.
  • Thus, in one embodiment, the system provides the user-friendly, step-by-step feedback and instruction to the caller to guide the caller through the connection process.
  • In one embodiment, after the connection between the caller and callee is established, the system further provides feedback and instructions on the call graphic. For example, during the call the system can provide the accumulated call time for the purchased call. If the purchased call has a time limit, the call graphic can further show the remaining minutes of the call. When the time limit is approaching (or reached), the call graphic can provide the guidance and instructions for “recharge” (e.g., by purchasing a further package, or switching to a per minute mode with a further time limit, etc.). In one embodiment, the options to continue the call when the time limit is approaching (or reached) is displayed in the graphical user interface so that the caller may select an option in the graphical user interface without interrupting the conversation with the callee.
  • In one embodiment, if a purchased call with a time limit is interrupted/dropped before the time limit is reached, the caller can continue the call by requesting a re-connection with a time window. To help the caller, the call graphic can present the guidance and instructions for continue the call and present the status of the continuation of the call. For example, the call graphic may present a description of the continuation policy for interrupted/dropped call and show the remaining portion of the time window to resume the call.
  • One example scenario of using a call button that is placed in the blog, home page, or email of the callee (seller) is described below.
  • When the callee (seller) is taking calls, the call button of the callee (seller) says “Call Me.”
  • When the caller (buyer) clicks on the button, the caller (buyer) is led to a landing page that explains how the service works and indicates the price, which might be $100 to talk on the phone for 60 minutes and $1 per minute thereafter.
  • When the caller (buyer) clicks the “Continue” button on the landing page, the caller (buyer) is brought to a page to specify payment options (e.g., credit card information). Or, if the caller (buyer) is a returning member, the caller (buyer) can sign in (e.g., through providing the correct member name and password) to instruct the system to use the billing information (e.g., credit card and billing address) that is already on file (e.g., that has been previously submitted to the system and that is stored in the database of the system in association with account of the caller). If the caller (buyer) is not a member, the caller (buyer) is presented with a page to register with the system and become a member. Alternatively, the caller (buyer) may specify the payment information without becoming a member.
  • For example, the page may identify the caller (buyer) as a member according to the information provided by a cookie maintained by the web browser of the caller (buyer). If the cookie exists, the cookie includes the member name of the caller (buyer). If the cookie indicates that the caller (buyer) has already signed in, the server may skip the sign-in process; otherwise, the caller (buyer) is prompt to sign in. If the caller (buyer) is new to the network, the caller (buyer) is asked to register and become a member.
  • In one embodiment of the present invention, the call button/link does not bring the caller (buyer) inside the marketplace (e.g., a list showing competitors). Instead, the actions related to the call button happen in the environment of the callee (seller). For example, the web page(s) can be just a pop-up window so that the caller does not have to leave the web page (e.g., blog or home page) of the callee (seller). The landing page may be within a frame of the blog/home page of the callee, or within an applet embedded in the blog/home page of the callee.
  • Alternatively, the call button may bring the caller (buyer) to a VoIP application and provide the guidance and instruction to the caller on the user interface of the VoIP application.
  • In one embodiment, the VoIP application has browser functionality and shows the call button with the blog, web page or email in the user interface of the VoIP application.
  • Alternatively, the call button may bring the caller (buyer) to the marketplace which shows the offers of the competitors of the callee (seller).
  • In one embodiment, after confirming the payment information, the caller (buyer) is led to a page to specify the phone number that the caller (buyer) would like to be called back at and the time window within which the caller (buyer) is willing to receive the call back to talk to the callee (seller). The time window might be “four hours.” FIG. 3 shows an example of such a page.
  • When the caller (buyer) continues (e.g., pressing the button “Call Now” in FIG. 3), the system obtains the authorization to charge an amount, when the call is connected (e.g., $100 from the buyer's credit card, if the credit card is the method of payment).
  • In one embodiment, a call for a package of bulk minutes (e.g., that has a specified time limit) is charged when the two parties are connected, regardless of whether the duration of the time limit is reached. In one embodiment, to avoid the difficulty in charging the buyer (e.g., $100) to talk to a seller but the seller fails to call back within the time window requested by the buyer, the system does not charge the buyer until after a connection between the caller (buyer) and the callee (seller) is successfully established (e.g., for a minimum period of time, or after the phone call is completed, or after the time limit is reached, etc.).
  • In one embodiment, the system “pre-authorizes” the charge (e.g., $100) on the buyer's credit card to make sure that, should the connection be completed, the buyer would be able to pay. In one embodiment, the system indicates the status of pre-authorization, charging/not-charging to the buyer in the user interface that guides the user through the process of making the connection.
  • Alternatively, the system may make the charge (e.g., $100) on the buyer's credit card when starting to make the connection and make a refund to the buyer if the connection is not successful within the call back time window specified by the caller (buyer). Alternatively, the system may charge a portion of the fee (e.g., $100) during the phone connection set up period, and refund the charge if the connection is not successful or charge the remaining portion after the connection is made successfully (e.g., after the phone call is completed).
  • In one embodiment, the system determines whether or not to pre-charge the buyer based on statistical data, such as the credit history of the caller (buyer), the success rate of the callee (seller) to call back within the time window specified by the caller (buyer), etc. Thus, for example, if the system determines that the call is likely to be established within the time window, the system may pre-charge the caller; for example, if the system determines that the caller (buyer) has a good credit history, the system may defer the charge to a later stage (e.g., after the completion of the call).
  • In one embodiment, after the system determines that the caller (buyer) has a sufficient source to pay for the call, the system calls the callee (seller) and says: “We have a caller who is calling you on your call button. He is paying your $100 fee and is willing to wait up to 4 hours to talk to you. Please press 1 on your telephone keypad if you want to take the call now; press 2 if you can't take it now but can indeed take it within the next 4 hours that has been requested, or press 3 if you won't be able to take it within 4 hours.” Note that different system may associate different sets of key pressing events (e.g., press 1, press 2, press 3, . . . ) with different options.
  • In one embodiment, the system can optionally provide the callee (seller) with more information about the caller (buyer) based on pre-recorded information. For example, the system can record the self introduction of the caller (buyer) (e.g., the name of the caller, for instance ‘Bob’) so that the system tells the callee “We have ‘Bob’ . . . ” instead of “We have a caller . . . ”, where ‘Bob’ is the recording of the self-introduction of the callee (buyer).
  • In one embodiment, the system has the name of caller (buyer) recorded as part of the member preference/attribute of the caller (buyer). Alternatively, the system can use a text-to-speech program to “read out” the name of the buyer when introducing the call to the callee (seller). Alternatively, the system can record the name of the caller (buyer) when the system receives a call from the caller at the phone number assigned to the callee, or callback the caller first to obtain the recording.
  • In one embodiment, if the callee (seller) presses 1, the system tells the callee (seller) to hold on while the system calls the caller (buyer). The screen of the caller (buyer) is updated automatically to indicate that the callee (seller) is ready and the caller (buyer) is being called back for the connection between the caller (buyer) and the callee (seller).
  • If the callee (seller) presses 2, the system tells the caller (buyer) (e.g., on the screen of the caller) that the callee (seller) can't take the call now but expect to take the call within an identified period of time (e.g., the next 4 hours). The system will arrange to make the phone connection within the identified period of time (e.g., the next 4 hours).
  • In one embodiment, the system may use alternative numbers to indicate a response of the callee.
  • For example, the system may send a message (e.g., through email, a web-based user interface for the callee (seller), a voice mail, an instant message, etc) to the callee about the call and the identified period of time (e.g., 4-hour time window) so that the callee (seller) may indicate to the system within the identified period of time (e.g., next 4 hours) that the callee (seller) is ready for the call.
  • Alternatively, the system may try to call the callee (seller) periodically or according to a time period specified by the callee (seller). For example, the callee may press 15 after pressing 2 to indicate that system should try to make the connection after 15 minutes. Alternatively, the callee may provide such an indication through replying to the email, instant message, short text message, or through a network-based user interface (e.g., web-based) that is designed to manage the user account. For example, the network-based user interface may present a list of calls in the queue and the corresponding time windows. When ready to take the next phone call, the callee can indicate to the system that the callee is currently available to take a call (or a particular one of the calls in the list).
  • Alternatively, the caller (buyer) may try to call the callee (seller) again within the time window (e.g., next 4 hours).
  • In one embodiment, the system may monitor the activities related to this call to avoid duplicated efforts in making the connection within the time window (e.g., next 4 hours) so that the caller and callee are not interrupted by unnecessary attempts to make the connection.
  • If the callee (seller) presses 3, the system tells the caller (buyer) that the callee (seller) can't take the call within the requested time window. The caller (buyer) in this case is not charged the price (e.g., $100). In one embodiment, the caller (buyer) is charged the price (e.g., $100) only when the call between the caller (buyer) and callee (seller) is actually connected.
  • When the system makes the connection between the caller (buyer) and callee (seller), the system may call the caller (buyer) first or call the callee (seller) first, or call both at about the same time. For example, the system may determine which one of the caller and callee is more reliable and call the reliable one of the two first. The system may determine which of the parties is more reliable based on statistic data collected from past call connection activities. Alternatively, the system may connect to the less reliable party first. Alternatively, the callee (seller) may specify the preference of who is to be called first as part of the specification of the listing.
  • When the caller (buyer) calls the phone number assigned to the callee (assignee) (e.g., 800-GO-ETHER extension 4567), the system may first authenticate the caller and/or arrange the payment options and then prompt the caller to enter the time window and the call back phone number using the key pad of the phone. An interactive voice response (IVR) system can be used to interact with the caller so that the caller does not need web access to be connect to the callee (seller).
  • Alternatively, the system may determine automatically the telephone contact information of the caller from the call received from the caller (buyer) (e.g., through call ID service or an Automatic Number Identification (ANI) service) and use the telephone contact information in calling back. The system may present an option for the caller (buyer) to confirm the automatically detected telephone contact information of the caller for calling back so that the caller has an opportunity to specify different telephone contact information for the call back.
  • In one embodiment, when the system determines that the caller has a graphical user interface (e.g., web access) while requesting the connection for the call (e.g., when the caller pushes a button on a web interface to request the call, or when the caller is signed into the system or when the online presence of the caller is detected, or when the call is initiated from a VoIP terminal that has a graphics capability), the system uses the graphical user interface to assist the caller. When the system fails to detect the online presence of the caller, the system uses the IVR system to provide the caller (buyer) with guidance. Thus, the system automatically switches between using the web interface to guide the caller or using the IRV interface to guide the caller.
  • In one embodiment, the system may further use other communication systems to guide the callee (e.g., according to the presence and availability of such communication systems). For example, the interface may be Wireless Application Protocol based (WAP-based) applications, or based on instant messaging, or based on a custom designed client-server application/protocol. Thus, a web-based interface is presented as an example. User interfaces based on other communication protocols and/or other types of communication systems can also be used.
  • In one embodiment, the system may ask the caller (buyer) to hang up temporarily until the callee accepts the call. Alternatively, the system may allow the caller (buyer) to stay on the line while the system attempt to reach the callee (seller).
  • In one embodiment, the system allows the callee (seller) to specify one or more alternative phone numbers in case the callee (seller) is not reachable at the primary phone number specified for the listing. Similarly, the caller (buyer) may also specify one or more alternative call back phone numbers. In one embodiment, the system allows the parties to specify other telephonic references (e.g., user names of Internet telephonic application) to make the telephone connection. In one embodiment, the system may further allow the user to specify other identities to make connections for other types of real time communications, such as chat, instant messaging, video conferencing, etc.
  • In one embodiment, the system arranges the call according to aspects of the methods described in the U.S. Patent Application Publication No. 2004/0252820 (application Ser. No. 10/360,776, filed on Jun. 12, 2003), which is hereby incorporated herein by reference.
  • When the caller (buyer) requests the connection using the call button, the web server provides the instructions and feedback to guide the caller (buyer) through the call process.
  • When the caller (buyer) dials the callee's listing via the Ether phone number (e.g., the 800 number assigned to the callee), an interactive voice response (IVR) system is used to provide similar instructions and feedback to guide the caller (buyer) through the call process.
  • For example, the caller (buyer) registers and creates an identity using the phone number and a PIN. A credit card is asked for via IVR or live operator to set up payment options. Then the call window is entered on the keypad of the phone, such as pressing the string of keys “4*” to indicate a “4” hours window or “60#” for a “60” minutes window.
  • In one embodiment, when the callee is having a telephonic connection with the system, the system prompts the caller (buyer) to utter a message for the callee (seller). For example, the caller (buyer) may say “I'm Bob Stanley—remember we met at the golf conference last weekend.” The system records the messages of the caller (buyer). When the callee (seller) gets the call, the system says, “There's a buyer on the line who's paid $100 and is willing to wait 4 hours and here's how he identifies himself: I'm Bob Stanley—remember we met at the golf conference last weekend.” The system in such a way provides as much identifying information to the callee (seller) as possible so that the callee (seller) may screen the callers for acceptance. In one embodiment, the system behaves as an automatic secretary, screening who's on the line for the callee (seller).
  • In one embodiment, the system provides functionality for bulk-minute pricing.
  • For example, once a call starts, the system metes out the time that has been bought. When the time limit, for example, 60 minutes, is up, the system tells both parties on the phone that the time is up. The system then prompts the buyer to add more money to buy a second package, or go to per minute pricing, or end the call, or let them talk further for free, according to the continuation policy of the call which is specified by the callee (seller) in the listing (e.g., specified during the creation of the listing).
  • In one embodiment, if the parties hang up after just, for example, 35, minutes of a 60-minute call, the system has a time window in which it expires the remaining minutes. The time window can be set quite large, such as a year, so that someone can buy a 1,000-minute discount package and talk 100 times over the course of the year. Or the time window can be set small, such as 30 minutes, in which case the caller (buyers) can call again within the 30-minute window after the 35-minute call to keep talking based on the already purchased 60-minute package, but the caller (buyers) can be connected on the basis of the unused portion of the 60-minute call package after a break that is longer than the time window.
  • In one embodiment, the system time window specifies the longest period of break before the unused portion of the purchased package expires.
  • In one embodiment, the system time window specifies the period from the starting of the conversation and the time when the purchased package expires. For example, the system may specify a window of 4 hours or so by default, so that people who get cut off or interrupted can finish their calls in this window of time.
  • In one embodiment, the system time window is based on the size of the purchased package. The larger the time limit of the package, the larger is the time window. In one embodiment, the expiration of the package is based on a limit on the separate calls (e.g., three). In one embodiment, the expiration of the package is based on the expiration time window and the limit on separate calls, whichever is reached first.
  • In one embodiment, the system allows the callee (seller) to specify the expiration time window in the specification of the listing (e.g., as part of the continuation policy of the call package) and/or the limit on the separate calls.
  • FIGS. 5-12 show examples of flow diagrams of a process to connect a user and an adviser for telephonic conversation according to one embodiment of the present invention.
  • In one embodiment, when a caller selects (e.g., clicks) on a call button according to one embodiment of the present invention, the selection (e.g., click) leads down several different paths depending on the availability status of the seller.
  • For example, in FIG. 5, the system determines (201) the current status of the adviser at the time the telephonic connection is started. In one embodiment, the current status of the adviser is determined based at least partially on the information provided by the adviser. For example, the adviser can specify the scheduled hours of the day during which the adviser is expected to take calls; the adviser may select a button (e.g., push through placing a cursor over the button on a display of a graphical user interface and activating a selecting device, such as a key or a button of a cursor positioning device such as a mouse or a touch pad or a joystick, etc.) on a web page, or make a phone call to the system, to indicate whether the adviser is currently busy and not answering new calls and/or to further specify the estimated duration of the busy period. The adviser may select a button on a user interface (e.g., a web page designed for the manage of the listing and/or account of the adviser) to indicate that the adviser is now free and ready to take calls. The adviser may pick up the phone call from the system and indicate to the system the current status of the adviser. The adviser may transmit the current status information to the system using instant messages, email, SMS messages, etc.
  • If the current status (203) of the adviser is “Taking Calls Now” or something equivalent, the system starts (e.g., immediately) a telephone connection and tracks the call (205).
  • If the current status (203) of the adviser is “Taking Calls Shortly”, the system starts (207) to arrange the call to be placed within the time period specified by the caller without trying to call the adviser immediately, since the adviser is temporary busy and will be available to take calls within a short period of time.
  • If the current status (203) of the adviser is “Not Taking Calls for a While” or something equivalent, the system starts (209) to make an appointment for the user to call the adviser, since the adviser is not available to take the call and will not be available for a longer period of time.
  • In FIG. 6, when the system starts to at least initiate a telephone connection (e.g., in response to a request from a selected call button), the system displays (301) a landing page to at least initiate a telephone connection and track the call. For example, the web server of the system transmits information defining the landing page to the web browser of the user to show the landing page (e.g., in a pop-up window).
  • For example, the landing page may show the name, photo, status, rate of the adviser, show/explain the process to make the connection, buttons to navigate the process, option to mail the adviser, etc.
  • Optionally, the system alerts (303) the adviser about the request for telephone conversation (e.g., through a web-based user interface, or through email, instant messaging, short text message, etc.)
  • The system determines whether the user has been authenticated (305). If the user has not been authenticated, the system authenticates (307) the user. For example, the system signs in the user if the user is already a member, or registers the user as a new member if the user is not yet a member.
  • The system then determines (309) a source of payment for the call.
  • After the system has identified a source of payment for the call based on the price for the call specified by the adviser in the listing, the system may further determine if the adviser is still having the status of “Taking Calls Now”. In certain instances, the process of authenticating the user and securing the source of payment may take an extended period of time such that the availability status of the adviser may have changed.
  • If the adviser is no longer available for immediate connection, the system proceeds (317) according to the current status of the adviser, based on whether the current status is “Taking Calls Shortly” or “Not Taking Calls for a While”.
  • If the adviser is still available for immediate connection, the system displays (313) a call setup page. The call setup page may show the progress of call and user interface elements to receive the time window and the phone number of the user (caller).
  • Once the time window within which the user (caller) is available for the call and the call back phone number of the user is received, the system calls (315) the adviser.
  • In FIG. 7, after the system starts (401) to call the adviser, the system updates (403) the call setup page. For example, the system may play an animation and/or sound clip and/or a text message to indicate that the system is calling the adviser, in one embodiment.
  • Then, the system determines whether or not the adviser answered the call (405).
  • If the adviser failed to answer the call, the system sends (407) a mail to the adviser about the unanswered call. The system notifies (409) the user that the adviser did not answer the call and a mail has been sent to the adviser. The system then presents (411) the user with the option of making an appointment with the adviser.
  • If the adviser answered the call, the system obtains the adviser's choice (413) on the call.
  • The adviser may indicate that the adviser will take the call in the time window specified by the caller, in which case, the system notifies (415) the user that the adviser will take the call in the time window. Then, the system waits (417) for a period of time to call the adviser again. Alternatively, the system may try the connection based on an indication from the adviser that the adviser is ready to take the call (e.g., by calling the system, selecting a button or a link on a web page in the account of the adviser, sending an email/instant message/short text message to the system or replying to a message from the system about the call, etc.)
  • The adviser may indicate that the adviser cannot take the call in the time window specified by the caller, in which case, the system notifies (421) the user (caller) that the adviser is not able to take the call and presents (423) the user with the options of updating the time window and making an appointment.
  • The adviser may indicate that the adviser wants to take the call now, in which case, the system notifies (421) the user that the adviser is connected and the server is now calling the user (at which point of the process, the caller may or may not one the phone). The system then determines if the user is already on the line (433).
  • If the user is not already on the line, the system starts (435) to call the user and determines whether the user answered the call (437).
  • If the user did not answer the call back, the system terminates (443) the call (443) and the adviser is notified.
  • After the user answers the call back, the user is on one line and the adviser on another line. The system then prompts (439) the user to accept the charge of the call before connection to the adviser and determines whether the user accepts the charge (441).
  • If the user accepts the charge, the system connects (449) the user to the adviser (e.g., by joining the calls) and starts to monitor aspects of the call (e.g., duration) and charge the user.
  • If the user rejects the charge or fails to provide a response within a predetermined period of time, the system terminates (443) call. After the termination of the call, the system updates (445) the user interface to show the reason for the termination. Optionally, the system mails (447) the user about the termination of the call.
  • In FIG. 8, the system displays (501) a landing page, if the adviser's status is “Not Taking Calls for a While”. The landing page may show the name, photo, status, rate of the adviser, and show the process to reach the adviser, buttons to navigate the process, explanation of availability, etc.
  • Optionally, the system alerts (503) the adviser about the request for telephone conversation.
  • In one embodiment, the system receives (505) from the landing page the user selection whether to mail (e.g., email or use other types of messaging systems) the adviser or to make an appointment with the adviser.
  • If the user selection (507) is to mail the adviser, the system determines if the user has been authenticated (509). If the user has not been authenticate, the system authenticates (515) the user. For example, if there is no cookie in the web browser of the user indicating that the user is currently in a valid session, the user may be presented with an interface to sign in or to register.
  • If the authenticated user chooses to mail the adviser, the system presents (511) a page to receive the subject and message of the mail from the user. After receiving the subject and message of the mail, the system sends (513) the mail to the adviser (without showing the mailing address of the adviser to the user and without showing the mailing address of the user to the adviser) in accordance with one embodiment.
  • In one embodiment, the mail is delivered electronically (e.g., through an email, instant message, SMS message, web mail). Alternatively, the mail may be delivered as voice mail, print out, etc.
  • If the user selection (507) is to make an appointment, the system starts (517) to make an appointment.
  • In FIG. 9, the system displays (601) a landing page for making an appointment. The landing page may display one or more of the name, photo, status, rate of the adviser, and show stages of operations to make the appointment, buttons to navigate through the stages of operations, show the option to mail the adviser, etc.
  • The system displays (603) entries to receive a requested appointment time. The entries can be part of the landing page or a page displayed after a navigation button is selected. In one embodiment, the entries are used to receive one or more of the date, start time, time length of the appointment, the time zone of the user, etc.
  • In one embodiment, the system further displays existing schedules and the phone number of the user, etc. for the convenience of the user (e.g., if the user is already authenticated at this point of the process).
  • After the requested time of the appointment is received from the user, the system determines if the adviser is available at the requested time (605). If the adviser is not available at the requested time, the system prompts (607) the user to adjust the appointment time; otherwise, the system proceeds to the task of filtering the callers.
  • If the system determines that the user has not been authenticated (609), the system authenticates (611) the user through signing in the user or registering the user. The system then determines (613) if a sufficient source of payment for the call is available from the user.
  • If there is a sufficient source of payment for the call, the system accepts the appointment and displays (615) a page to confirm the appointment. The confirmation page may show confirmation text including the appointment time and the name of the adviser.
  • In one embodiment, after the appointment is made, the system automatically starts to make connections to the caller and the callee separately at the requested time of the appointment. Alternatively, the system may reserve a time slot on the schedule of the callee on behalf of the caller and request the caller to make a request for a connection at the scheduled time. Alternatively, the system may request the adviser (callee) to make the request for the connection. For example, the system may determine a less reliable one of the two to make a request for the connection, or contacting the less reliable one first, during the appointment time is reached before starting to contact the other party.
  • In FIG. 10, the system displays (601) a landing page for arranging a call. The landing page may display one or more of the name, photo, status, rate of the adviser, show stages of operations to make the appointment, buttons to navigate through the stages, show the option to mail the adviser.
  • The system receives (703) a user selection of whether to accept a callback, to make an appointment, or both.
  • If the user selection includes making an appointment, operation 707 or operation 709 is performed to set up an appointment (e.g., according to the process illustrated in FIG. 9).
  • If the user selection includes accepting a callback, the system receives (711) user input to identify the user and the call back phone number of the user and determines whether the user has been authenticated (713). If the user has not yet been authenticated, the system authenticates (715) the user (e.g., through signing in the user or registering the user).
  • After the user is authenticated, the system determines (717) if a sufficient source of payment for the call is available (e.g., to filter out non-serious callers). The system then displays a page to confirm the arrangement (e.g., confirmation text including the time window and the name of the adviser).
  • FIG. 11 shows an example to authenticate the user. In FIG. 11, after the system starts (801) to authenticate the user, the system determines (803) if there is information to indicate that the user is a member. The information may be in a cookie in the browser of the user, or a parameter encoded in an URL (universal resource locator) of a link, or a parameter in an applet running in the web browser.
  • If the user is a member (805), the system displays (811) a sign-in page which may include entries to receive a username and a password from the user. In one embodiment, the sign-in page may optionally further include the photo of the adviser, text alerting the user about the connection to the adviser, the rate to talk to the adviser, etc. Thus, the sign-in appears to be in the environment of the adviser. The system then authenticates (813) the user using the username and password received in the sign-in page.
  • If the user is not a member (805), the system displays (807) a registration page. The registration page may include information already collected about the user (e.g., during the interaction before the registration) for confirmation purpose. The registration page includes entries to receive username and password of the user. In one embodiment, the registration page may optionally further include the photo of the adviser, text alerting the user about the connection to the adviser, the rate to talk to the adviser, etc. Thus, the registration appears to be in the environment of the adviser. The system then creates (809) an account for the user using the information received from the registration page.
  • In one embodiment, after the user is authenticated, information is created to indicate that the user is authenticated for a valid session (e.g., using a cookie, a parameter in URL or in an applet) until the session expires or the user signs off.
  • FIG. 12 shows an example to determine if a sufficient source of payment of the call is available.
  • After the system starts (821) to determine if a sufficient source of payment for the call is available, the system determines (823) whether the call is charged by per interval (e.g., per minute). If the call is charged by per interval, the system determines (825) the minimum charge for the call (e.g., for one minute). If the call is not charged by per interval, the system determines (827) the price for a call package (e.g., $100 for 1 hour, as specified by the adviser).
  • The system then determines whether there is enough money in the account of the user (829) and/or whether there is an active credit card of the user is on file (839 and 831).
  • If the account of the user has enough money for the call and/or an active credit card of the user is not on file, the system optionally requests (841) for the credit card information and the associated billing address for security reason.
  • If the account of the user does not have enough money for the call, the system will pre-authorize (837) an amount according the requirement of the call for deposit purpose. If an active credit card of the user is on file, the system optionally presents (833) an option to update the credit card information. If no active credit card of the user is on file, the system requests (835) credit card information and billing address for pre-authorization.
  • In one embodiment, when information identifying the user is available (e.g., through a “cookie” implemented in the web browser or parameters encoded in the URL, or parameters stored in the variables of an applet running in the web browser, etc.), the system uses the information about the user to help the user. For example, from the member information database, the system may retrieve the phone numbers of the user. If there are multiple phone numbers for the user, a combo box is displayed for the user to select one from the known phone numbers of the user (or to type in a different one). If there is only one known phone number of the user, the system may display the known phone number of the user in an entry box as the default value.
  • If a user as identified by the information (e.g., cookie) is different from the current user, the current user can choose to edit the information and/or sign in as a different user.
  • In one embodiment, a user can enter the input information to set up a call, such as the call window and/or the callback phone number before the user is authenticated. When the user is subsequently authenticated (e.g., through signing in as an existing member or registering as a new member), the information provided by the user before the authentication process is used to update the account information (if changed).
  • FIG. 13 illustrates a method to display a call button according to one embodiment of the present invention.
  • In one embodiment, the appearance of a call button is displayed according to the current availability status of the adviser to take the call.
  • For example, in FIG. 13, when the system receives (851) a request to display a call button of an adviser, the system determines (853) the current status of the adviser (at the time of the request). After the system determines (855) an appearance of the call button of the adviser to indicate the status of the adviser, the system presents (857) the call button of the adviser with the appearance to indicate the status of the adviser.
  • In one embodiment, the system further determines (859) (e.g., periodically) the current status of the adviser to update (861) the appearance of the button according the currently status of the adviser.
  • For example, the call button to be inserted in the blog of the callee can include an image at a URL on a server computer. When being requested the URL causes the server computer to determine a response based on the parameters encoded in the URL. For example, the URL can be pointing to a CGI (Common Gateway Interface) program which provides or generates the image according to the current status of the adviser. The URL may include a parameter to identify the adviser and/or the advertisement.
  • For example, when the current status of the adviser is “Taking Calls Now”, the call button may show a telephone with text “Call Now”; when the current status of the adviser is “Taking Calls Shortly”, the call button may show an off-hook telephone with text “Arrange a Call”; when the current status of the adviser is “Not Taking Calls for a While”, the call button may show a telephone and a calendar with text “Appointment”.
  • In one embodiment, different types of availability status of a callee (adviser) includes: on call, off call, busy, get in line, schedule an appointment, join conference, etc. It is understood that different systems may implement more or less types of availability status of a callee. Further, the call button may include other current status information about the callee, such as price, how many people are in line to call the callee, the schedule of the callee, and/or others.
  • In one embodiment, the call button is implemented using an applet running in the browser of the user. The applet displays the call button according to the current status of the adviser and checks the status of the adviser periodically to update the appearance of the button. In one embodiment, when an estimated time until which the adviser can take the call is available (e.g., received in the system from the adviser when the system attempts to contact the adviser, or provided by the adviser when the adviser is talking to a different user, etc.), the call button also shows an indication of such an estimated time to help the user in selecting a time window.
  • Alternatively, the call button may be implemented in custom applications (e.g., as plug-in to web browsers, email clients, etc., or as stand-along applications). The call button may communicate with the server using a special purpose protocol.
  • In one embodiment, a web/email (document) authoring tool is designed to automatically detect the phone number of the callee in a web page/email/document. The authoring tool can be set up to replace the phone number of the callee with the corresponding call button assigned to the callee and/or the phone number (e.g., ether phone number) that is assigned to the callee. For example, the authoring tool can detect the occurrence of the phone number of the callee in the document and prompt the user of the authoring tool to replace the phone number of the callee with the call button and/or the phone number assigned by the system. If the user accepts the suggestion, the authoring tool automatically replace the phone number of the callee with the call button and/or the phone number assigned by the system.
  • FIG. 14 illustrates a method to monitor and control a connection according to one embodiment of the present invention.
  • In FIG. 14, after the system connects (871) a user to an adviser, the system determines (875) whether the current call is within a time window of a previously purchased call package (e.g., a year or 4 hours).
  • In one embodiment, a call is considered a continuation of the previously purchased call package if the current call is within the time window. Thus, if the call of a previously purchased call package is interrupted, the user can continue the call within the time window without having to purchase another package.
  • Based on whether or not the current call is the continuation of a previous call (877), the system determines (879) the time limit according to the previously purchased call package, or determines (881) the purchased minutes of the call package for the current call. The system then monitors (883) the call until the time limit for the current call is reached. When the time limit for the call is reached, the system alerts (885) the user and the adviser about the end of the time limit.
  • In one embodiment, the continuation policy specified by the adviser is retrieved (887) to process the call at the end of the time limit.
  • If the continuation policy (889) is “purchase a further package”, the system prompts (891) the user to purchase the next package to remain connected. For example, the user may be offered to continue the call at the price of $50 for another 30 minutes.
  • If the continuation policy (889) is “continue at a per minute price”, the system prompts (895) the user to accept the continuation at the per minute price.
  • If the continuation policy (889) is “no longer charge”, the system maintain (897) the connection for the user and the adviser until at least one of the user and the adviser hangs up.
  • If the continuation policy (889) is “end call”, the system disconnects (893) the user and the adviser after altering the user and the adviser.
  • In one embodiment, the system stores a replication of the policy of the package the user purchased with the records of the purchased call (e.g., the policy at the time the call button is selected for the call package, or at the time the user is first connected to the adviser for the call package, or at the time the user explicitly confirms the purchase of the call package, etc.). Thus, the adviser is free to change the listing for the future callers even before the users finish the purchased call packages without retroactively affecting the purchased calls.
  • Some of the above examples are in the context of telephonic conversations. From this description, it will be understood that the techniques for connecting people for real time communications can also be applied to other types of communications, such as video and other multimedia channels, chat, instant messaging, document sharing, or screen-sharing, common “whiteboarding,” interactive TV or internet TV, etc. Each of different multimedia channels can have different prices or be inclusive in one price (e.g., the use of part or all of the different channels can be included in the same price).
  • The real time communication may be on a one-to-one basis (e.g., one caller connected to one callee). The real time communication can also be in the form of one-to-many. For example, the seller may be hosting a conference in which multiple callers may attend. For example, 100 people can be in the same call or the same video session provided by the same seller.
  • Further, in one embodiment, the real time communication may include access to recorded sessions (e.g., recorded audio content and/or recorded video content).
  • Thus, the system on the whole may be used as a filter for sellers (callees), only letting in calls from people who are serious—they're serious because they have entered their credit card and are willing to pay. Celebrities can use the system. For example, people want to talk to the Oakland A's from the 70's, who are sitting on their porches these days. For example, Hollywood executives can use the system to hear pitches from scriptwriters who are willing to pay $1000 for the chance to pitch their script.
  • In one embodiment, these call buttons and the Ether phone numbers go to where the action is happening. In at least one embodiment of the present invention, it is recognized that not all service commerce will happen through marketplaces, such as keen.com or a search engine. People who want to talk to the Oakland A's players are more likely the visitor of the web site www.oaklandathletics.com—and that's where the call buttons can be very effective. And the Ether phone numbers can be in magazines, underneath photographs, in newspapers, on business cards, etc.
  • In one embodiment, the current status of the callee (e.g., availability, schedule, etc.) and guidance and instructions for the phone connection are provided through the appearance of the call button and the content of the call graphic. Alternatively or in combination, the status information, guidance and instructions can also be presented based using an interactive voice response (IVR) system.
  • For example, a talk radio station may have a guest on every day at a noon talk show. After the one-hour show, the radio announcer may say, “The time is up on our show. We've enjoyed talking with Dr. Webber and answering your calls. If you'd like to talk further with Dr. Webber, go to our website at WKBR.com and set up a conversation with him. Or, just dial the number 1-800-TALK-KBR and get in line. It's just $29 per 10-minute conversation.”
  • In this example scenario, the phone number 1-800-TALK-KBR is assigned to Dr. Webber, which can be used to achieve many of the same goals as the call button assigned to Dr. Webber. While the button can visually communicate to the user the current (e.g., real-time) availability of the callee, the price, how many people are in line already, the schedule of the callee, etc., telephony prompts on a interactive voice response (IVR) system can also be used to provide such information after the caller dials the phone number that is assigned to the callee.
  • For example, in one embodiment, after a caller dials the phone number 1-800-TALK-KBR, the call is connected to a server, which determines that the call is for Dr. Webber since the phone number 1-800-TALK-KBR is assigned to (associated with) Dr. Webber. The server can then determine the current status of Dr. Webber, including the availability status, the price for the package, etc., and provide the information to the caller through the IVR system. In one embodiment, the server prompts options according to the current availability status of Dr. Webber. For example, the server may offer an immediate connection when Dr. Webber is available for immediate talk, or an opportunity to input a callback time window and/or callback phone number when Dr. Webber is expected to be available in a short period of time, or an opportunity to schedule an appointment with Dr. Webber when Dr. Webber is not expected to be available in a short period of time, etc. The server may use the IVR system to inform the caller the current status of the connection process and to provide instructions to the caller to take actions, such as providing a callback time window, providing an appointment time, providing an indication to accept the price of the call package, etc.
  • In one embodiment, the status information, instruction and guidance are provided using a combination of graphical presentations (e.g., over a graphical user interface terminal) and voice prompts (e.g., through an IVR system).
  • In one embodiment, the callee (seller) charges the caller(s) for the real time communication. The system provides the service to arrange and connect the call. The system can collect the payment from the caller(s), deduct a portion of the payment as fees to provide the service, and deliver the remaining payment to the callee (seller).
  • Alternatively, the callers may be not required to pay for the call; and the callee (e.g., advertisers) may pay the system for the service. In this case, the system may not provide the filtering functionality based on the willingness of the callers to pay. However, the callees (e.g., the advertisers) can still enjoy other benefits from the service provided by the system, such as call scheduling (no night calls), call queuing, toll-free number, local phone number, click-to-call, etc.
  • In one embodiment, the call buttons and the phone numbers assigned to the callees can also be published in advertisements in marketplaces, online or offline, on behalf of the callees; the callees bid for changes of the publicity and pay the bid amount on a per call basis for calls generated by the advertisements. When the callees generate the phone lead from their own media channel, the callees are only charged for a flat fee for the service of making the connection. Thus, in one embodiment, the system tracks the media channels that lead the caller to make the call.
  • FIG. 15 shows a diagram of a system to assist and track connections according to one embodiment of the present invention.
  • In FIG. 15, a database (921) may contain the phone numbers of target phone A (931), target phone B (933), . . . , target phone X (939), etc., of callees. Typically, the target phones belong to the institutions, businesses, individuals, etc, which seek for the services of embodiments of the present invention.
  • The call button and/or phone numbers assigned to the callees are distributed in various media channels, such as media channel A (901) (e.g., web server), media channel B (902) (e.g., WAP server), media channel C (903) (e.g., short messaging service center), media channel D (904) (e.g., custom server), media channel E (907) (e.g., cable television), media channel E (908) (e.g., news press), media channel G (909) (e.g., radio station), etc.
  • In one embodiment of the present invention, the call buttons and/or the assigned phone numbers, which can be considered as the encoded phone numbers of the callees, are presented in the environment specific to the callees, not in the marketplaces that are specially designed to advertise the callees. Thus, the callees generate the phone leads on their own media distributions, such as their web site or blog site.
  • Alternatively, or in combination, the call buttons and/or the assigned phone numbers can also be presented in marketplaces, such as in listings/directories of services, advertisements in search results, etc.
  • In one embodiment of the present invention, the phone numbers of the target phones are not directly publicized over the media channels. Instead, encoded target phone numbers (923) are used. Using the encoded target phone numbers (923), a user cannot reach target phones directly. Using the encoded target phone numbers (923), a user reaches a server of the system first, which allows the system to provide various services before actually connecting the user to the callee, such as filtering, payment processing, etc.
  • The encoded target phone numbers (923) allow the association of additional information with the target phone numbers, such as the media channels used, special promotions, etc.
  • The encoded target phone numbers and/or the call buttons are delivered with content information (e.g., web page, WAP page, short message, television programs, news articles, advertisement, blog, etc.) to user devices, such as user device A (911) (e.g., cellular phone), user device B (912) (e.g., personal digital assistant (PDA)), user device C (913) (e.g., computer), user device D (916) (e.g., receiver), user device E (918) (e.g., newspaper).
  • In one embodiment, a user device can include a USB phone, a Bluetooth wireless phone, or one or more speakers or headphones with one or microphones for the implementation of a software based phone.
  • In one embodiment, the user devices/phones support one or more real time communication capabilities, such as VoIP using Session Initiation Protocol (SIP) which may support video and instant-messaging applications, IP phone, regular phone over VoIP service, Bluetooth wireless phone, USB phone, software based phone, and other forms of IP telephony.
  • In one embodiment, the user device can include a television set to receive the advertisement. Further, the television set may have the capability to accept user input so that the television content may be changed according to the user input (e.g., interactive television, web television, internet television, etc.), or be coupled with a set top box which has such capability. The user input may be provided to the content provider through the same communication channel in which the television content/programs are delivered (e.g., a cable system of a cable television system), or a separate channel (e.g., a phone line, an Internet connection, etc.). The user input may include a request to make a connection to an advertiser featured in an advertisement presented in a television program, such as a request for a telephonic connection to the advertiser.
  • In one embodiment, the user devices are mobile devices, such as PDA, cellular phone, etc. The user devices obtain content information, including advertisements, through wireless communication connections, such as cellular communication links, wireless access points for wireless local area network, etc.
  • In one embodiment, a user device (e.g., a cellular phone, a computer, a PDA) can receive content information from multiple types of media channels (e.g., a web server, a WAP server, an SMSC, etc.).
  • In one embodiment, a user device is capable of dialing a phone call (e.g., automatically according to the encoded phone number embedded in the content information when a user selects the number). Alternatively, a user may manually dial a phone call using a separate phone, such as user phone S (917) or user phone T (919).
  • In one embodiment, a user device (e.g., 911, 912, 193) is capable of rendering the call button and sending a message to the communication server(s) (929) when the call button is activated. The call button includes an identifier of the callee so that when the call button is activated the user devices communicates the identifier of the callee to the server(s) (929).
  • In one embodiment, the user device (e.g., 911) is further capable of automatically identifying a phone number of the caller, or a VoIP identifier of the caller, as a callback number. Alternatively, the user device (e.g., 911, 912, 913) is capable of communicating with the server(s) (929) to present user interfaces to receive the callback number and other parameters, such as the callback time window.
  • In one embodiment of the present invention, dialing at least a portion of an encoded target phone number connects the phone call to a phone decoder and router (925) first. According to the encoded target phone number dialed, the phone decoder and router (925) determines the corresponding target phone number using the database (921) and connects the phone call to the corresponding target phone (e.g., one of target phones 931-939) through the telephone network (927).
  • Note the telephone network (927) may be circuit switched, package switched, or partially circuit switched and partially package switched. For example, the telephone network may partially use the Internet to carry the phone call (e.g., through VoIP). For example, the connection between the user phone/device and the phone decoder and router (925) may be carried using VoIP; and the connection between the phone decoder and router (925) may be carried using a land-line based, circuit switched telephone network.
  • In one embodiment of the present invention, the information associated with the encoded target phone number, such as the media channel used to provide the encoded target phone number to the users, is also decoded/retrieved using the database (921). Thus, the information associated with the encoded target phone number can be tracked/stored.
  • In one embodiment, the phone decoder and router (925) also determines the phone number of the user through Automatic Number Identification (ANI). ANI is a phone system feature that provides the billing number of the person making the phone call.
  • The information about the caller, target phone number, the media channel used for delivering the contact information to the user can be used to bill the caller and/or the target phone number, and provide credit/compensation for the corresponding media channel.
  • For example, the connection to target phone numbers can be paid for on a pay per call basis. Monitoring and tracking the calls can be used for billing the callee and/or the caller.
  • In one embodiment of the present invention, the additional information associated with the encoded target phone number is used to tracking phone calls for conditional promotions, electronic coupons, etc. Alternatively, the additional information for conditional promotions, electronic coupons, etc. are retrieved from the database of the listings at the time the corresponding call button is activated or presented, or at the time the encoded phone number is called.
  • The information about the media channels that are responsible for leading the users to the phone calls to the target phones can also be useful for the advisers. The advisers may wish to know which media channel is more effective in reaching users.
  • In one embodiment of the present invention, an encoded target phone number has the same number of digits as a standard phone number (e.g., a typical telephone number assigned by a telephone company). Thus, dialing the encoded target phone number is as easy as dialing the target phone number; and dialing the target phone number reaches the phone decoder and router (925). In such an arrangement, a large number of encoded phone numbers are generally required to differentiate the different target phones and different media channels.
  • In one embodiment of the present invention, an encoded target phone number has more digits than a standard phone number (e.g., having an extension to the standard phone number). A first portion of the encoded target phone number has the same number of digits as a standard phone number to reach the phone decoder and router (925) through the telephone network (927); and a second portion of the encoded target phone number (e.g., the extension) is to be decoded by the phone decoder and router (925). For example, the Dual Tone Multi-Frequency (DTMF) decoder can be installed in the phone decoder and router (925) to detect the second portion of the encoded target phone number dialed at the user phone. The detected phone number can then be used to recover the target phone number.
  • In one embodiment of the present invention, a single telephone number is used to reach the phone decoder and router (925) for different target phone numbers; and the portion of the encoded target phone number that is used to reach the phone decoder and router (925) is not used in determining the information associated with the encoded target phone number.
  • Alternatively, multiple telephone numbers can be used to reach the phone decoder and router (925); and the entire encoded target phone number can be used to determine the information associated with the encoded target phone number.
  • In one embodiment of the present invention, the encoded target phone numbers can have different numbers of digits. The callees may be arranged to bid for shorter encoded target phone numbers.
  • In one embodiment, a look-up table approach is used to encode the information. For example, the database (921) keeps track of the information about the media channel and the target phone number (and other information, if any) for the encoded target phone number so that the encoded target phone number can be used as a key to retrieve the corresponding information. Thus, it is not necessary to have a predetermined structure to encode the information about the media channels and the target phone number.
  • Alternatively, algorithms can be used to generate and encode target phone number and associated information. For example, a predetermined algorithm may be used to encode different information in the target phone number. For example, the target phone number may include a number of field separated by “*” or “#”. Each of the field can be decoded separately (e.g., from a separate look up table or a mapping algorithm) to determine the target phone number, identity of the media channel, etc.
  • For example, a set of parameters can be mapped from a string of characters to a string of numerical digits as a part of the encoded target phone number; and the string of numbers can be mapped back into the string of characters at the phone decoder and router (925). When such a mapping scheme is used, a look up table is not necessary. For example, an encoded target phone number may include a first portion that is the phone number of the phone decoder and router (925), a second portion that is the target phone number appended with other parameters. To prevent revealing the target phone number and the parameters, an encryption/scrambling scheme can be used to encode the second portion, which is decoded at the phone decoder and router (925).
  • In one embodiment, the phone decoder and router (925) determines the target phone number from the encoded target phone number dialed by the user and then dials the target phone number for the user and joins the phone calls so that the user can talk to the target phone.
  • In one embodiment, the communication server(s) (929) determines the target phone number from the message sent from the user devices when the call button is pressed.
  • In one embodiment of the present invention, users dial the encoded target phone numbers manually. A user can dial the encoded target phone number regardless the user device used and the media channel used.
  • Alternatively, in one embodiment, user devices can automatically dial the encoded target phone numbers. For example, a cellular phone, a computer or a PDA can dial a phone number using a Dual Tone Multi-Frequency (DTMF) generator. In one embodiment of the present invention, the encoded target phone numbers are presented in the content information in a format such that when the user selects the phone number the user device (e.g., a cellular phone or a computer) dials the encoded target phone number for the user. The user selection may be in the form of an keyboard/keypad input, a touch pad input, a track ball input, a mouse input, a voice command, etc.
  • In one embodiment, the user device initiates the phone call through a VoIP system when the user selects the encoded target phone number. Alternatively, the system initiates the VoIP connection to the user device after receiving the message from the user device requesting the phone connection.
  • In one embodiment of the present invention, the user device dials the phone number for the user without the user manually press the sequence of the encoded target phone numbers. This greatly simplifies the process of make the phone call. Since a user device can dial a long sequence of number easily, a large number of digits can be used to encode the information without presenting any difficulties for the users.
  • In one embodiment of the present invention, the encoded target phone numbers are formatted so that the user device dials a first portion of the encoded target phone numbers to access the phone decoder and router (925), pauses for a short period of time for the phone decoder and router (925) to prepare for receiving the second portion of the encoded target phone numbers, and then dials the second portion of the encoded target phone numbers. Thus, the user device provides a user-friendly way of dialing the encoded target phone numbers; and, making the phone call can be as easy as making a “click” to access a web page.
  • In FIG. 15, the user device initiates the phone call. Alternatively, a phone router may be used to initiate phone calls both to the user device (or a separate user phone) and the target phone and then join the phone calls to connect the user to the target phone. For example, when the user selects the call button, the encoded target phone number is transmitted to the communication server(s) (929), which can instruct the phone decoder and router (925) to initiate the phone calls.
  • The user phone number can be automatically determined through ANI, or through a user preference setting, or through an entry submitted with the selection of the encoded target phone number (e.g., the call button).
  • In one embodiment, the selection of the encoded target phone number is transmitted to the corresponding media channel, which forwards the request for making the phone call to a server (e.g., a web server) connected to the phone router. Alternatively, the content information can be formatted so that the selection is sent directly to the server that is connected to the phone router.
  • When the router starts the phone calls, the encoded target phone number can also include alphabetic characters (and/or other characters). The server and/or the phone router can decode the encoded target phone number to recover/retrieve the target phone number and other associated information, such as the identity of the media channel that is creditable for providing the encoded target phone number to user.
  • In one embodiment, the user devices/phones support one or more real time communication capabilities, such as VoIP using Session Initiation Protocol (SIP) which may support video and instant-messaging applications, IP phone, regular phone over VoIP service, Bluetooth wireless phone, USB phone, software based phone, and other forms of IP telephony.
  • FIG. 16 shows a block diagram example of a data processing system which may be used with the present invention.
  • While FIG. 16 illustrates various components of a computer system, it is not intended to represent any particular architecture or manner of interconnecting the components. Other systems that have fewer or more components may also be used with the present invention.
  • In FIG. 16, the communication device (951) is a form of a data processing system. The system (951) includes an inter-connect (952) (e.g., bus and system core logic), which interconnects a microprocessor(s) (953) and memory (958). The microprocessor (953) is coupled to cache memory (954) in the example of FIG. 16.
  • The inter-connect (952) interconnects the microprocessor(s) (953) and the memory (958) together and also interconnects them to a display controller and display device (957) and to peripheral devices such as input/output (I/O) devices (955) through an input/output controller(s) (956). Typical I/O devices include mice, keyboards, modems, network interfaces, printers, scanners, video cameras and other devices which are well known in the art.
  • The inter-connect (952) may include one or more buses connected to one another through various bridges, controllers and/or adapters. In one embodiment the I/O controller (956) includes a USB (Universal Serial Bus) adapter for controlling USB peripherals, and/or an IEEE-1394 bus adapter for controlling IEEE-1394 peripherals.
  • The memory (958) may include ROM (Read Only Memory), and volatile RAM (Random Access Memory) and non-volatile memory, such as hard drive, flash memory, etc.
  • Volatile RAM is typically implemented as dynamic RAM (DRAM) which requires power continually in order to refresh or maintain the data in the memory. Non-volatile memory is typically a magnetic hard drive, a magnetic optical drive, or an optical drive (e.g., a DVD RAM), or other type of memory system which maintains data even after power is removed from the system. The non-volatile memory may also be a random access memory.
  • The non-volatile memory can be a local device coupled directly to the rest of the components in the data processing system. A non-volatile memory that is remote from the system, such as a network storage device coupled to the data processing system through a network interface such as a modem or Ethernet interface, can also be used.
  • In one embodiment, a server data processing system as illustrated in FIG. 16 is used as one of the communication server(s) (e.g., 929, 925, and/or 921 in FIG. 15).
  • Further, a user terminal as a client system can be a data processing system similar to the system of FIG. 16. A client system can be in the form of a PDA, a cellular phone, a notebook computer or a personal desktop computer. For example, the I/O devices of the user device may include a USB phone, a Bluetooth wireless phone, or one or more speakers or headphones with one or microphones for the implementation of a software based phone.
  • Alternatively, the traditional communication client(s) may be used in some embodiments of the present invention.
  • In one embodiment, a system can provide multiple concurrent connections to a callee with separate billing. For example, multimedia connections for voice chat, text chat, video conferencing, application sharing, common whiteboarding, etc. can be selectively provided via an Ether button that is assigned to a callee for distribution in the callee's environment; the multimedia connections may overlap partially in time; and the multimedia connections can be charged separately (e.g., based on the respective connection durations, the number of transmitted messages, and/or the amounts of transmitted data, etc.). For example, an Ether button can be provided to a callee to host a communication conference having concurrent connections to multiple callers. In one embodiment, the multiple callers are separately billed for their connection durations in the conference. In one embodiment, different callers may purchase different communication packages to join the same conference. For example, one caller may choose to pay on a per minute basis, while another caller may choose to purchase a pre-determined amount of minutes, which may be extended on a per minute basis after the purchased amount is used. In one example, a callee can communicate with multiple simultaneous callers via multiple media types simultaneously, in which each of the caller may be connected via various different combinations of media types, and be billed separately based on which media types they are tuned into and which pricing plans they selected.
  • FIG. 17 illustrates a connection interface that allows a user to request multiple types of concurrent connections with a callee according to one embodiment. In FIG. 17, the connection interface (1001) shows a call graphic including a graphical representation of the customer (1007), a graphical representation of the seller (1009) (e.g., communicate/callee), and a graphical representation of the connection statuses (1002) between the system and the seller (1009) and between the system and the customer (1007).
  • In FIG. 17, the customer can choose to request a voice connection via a callback to a phone number provided by the customer. The customer is prompted to provide a callback phone number in the text entry box (1003). If the customer provides the callback phone number and selects the “Submit” button (1005), the system will call back the customer at the phone number provided in entry (1003) and call the seller based on a reference embedded in the connection interface (1001) to make a phone connection between the customer and the seller. In one embodiment, the reference embedded in the connection interface (1001) is inherited from the call button that was selected to initiate the connection interface (1001).
  • In one embodiment, the customer can further specify a time window for the callback (similar to that shown in FIG. 3 but not shown in FIG. 17).
  • In addition to the offer to make a phone connection to a user specified phone number compatible with a Plain Old Telephone System (POTS) via a callback, the graphical connection interface (1001) illustrated in FIG. 17 allows the customer to request alternative or additional concurrent connections via other media channels, such as VoIP telephony (1011), Instant Messaging (1013), Email (1015), SMS (1017), etc.
  • In one embodiment, the icons (e.g., 1011, 1013, 1015, 1017, etc.) can be selected to request the respective connections. For example, when the VoIP telephony (1011) is selected, a VoIP client application is launched to establish a connection between the system and the customer; and the system can further bridge the VoIP-based connection to the seller over a voice connection of choice by the seller (e.g., a connection to a POTS compatible phone number, voice-based instant messaging, etc.).
  • For example, when the Email icon (1015) is selected, a web form may be presented to receive input for an email message. Alternatively, an email client program is launched to send an email to the system; and the email is then forwarded to seller via a choice of the seller. For example, the seller may choose to receive non-real time text communications via email, or SMS, or a web-based messaging system. In one embodiment, when the Email icon (1015) is selected, a further interface is displayed to prompt the customer to select a preferred way to compose and send the electronic message to the seller via the connection system.
  • In one embodiment, the system can establish the media channels with the customer and with the seller separately and bridge the media channels to facilitate the communications. For example, the system can establish an instant messaging session with the customer and an instant messaging session with the seller and relay the messages between the two instant messaging sessions to facilitate instant messaging between the seller and the customer. The customer and the seller may use the same instant messaging network or different instant messaging networks. In one embodiment, the customer and the seller can used instant messaging clients with different communication protocols; and communication protocol translation is performed by the system (e.g., using a software robot (Bot)) to bridge the connections.
  • In one embodiment, a customer may start with one communication connection (e.g., entering the callback phone number in entry box 1003 for voice communication and pressing the “Submit” button 1005, or selecting icon 1011 for voice communication via VoIP) and then subsequently, or when needed, request one or more other connections (e.g., selecting icon 1013 for instant messaging for text and/or video communications, selecting icon 1015 for email communication, and/or selecting icon 1017 for communication via SMS). Alternatively, a connection interface may be provided to allow a customer to select multiple communication channels (e.g., an instant messaging session for text-based chat and a callback to POTS phone number for voice chat) and then a “Submit” button to request simultaneous connections of the different communication channels.
  • For example, the customer may start with a request for a phone connection via a callback. During the connection, if the customer wishes to send text to the seller, the customer may further request an email connection, an SMS connection, or an instant messaging connection.
  • In another example, the customer may start with a text-based instant messaging connection, during which it may be determined that a voice connection is needed. Thus, the customer may further request a concurrent voice connection, which can be established via a callback, or via a voice-based instant messaging connection.
  • In one example, the customer may start with a channel for non-real time communications (e.g., email or SMS) and then switch to a channel for real time communications.
  • In one embodiment, the system can provide protocol and/or format conversion/transformation to bridge the connection to the customer and the connection to the seller. For example, the system may use one protocol/format for a connection with a customer and another protocol/format for a connection with the seller and perform the protocol/format transformation to properly bridge the connections.
  • For example, the seller may use an instant messaging client of one instant messaging network and the customer may use an instant messaging client of another network. The system may use instant messaging clients of the respective networks to make connections with the customer and the seller and relay the messages to facilitate the communications between the customer and the seller.
  • For example, the seller may prefer to use email to receive text based communications and the customer may prefer to use SMS to receive responses; thus, the system provides a gateway for receiving text message from the customer via a web page (or SMS), sending the text message to the seller via email, receiving a response from the seller via email and sending the response to the customer via SMS.
  • For example, the seller may choose text-based instant messaging and the customer may choose voice-based instant messaging; and the system can receive the voice message from the customer, convert it into a text message (e.g., via a human operator or an automated voice recognition system), send the text message to the seller (with or without the confirmation of the customer), receive text response from seller, convert it into a voice response (e.g., via a human operator or an automated voice recognition system), and deliver the voice response to the customer.
  • For example, the seller may communicate in one language (in text or voice) and the customer in another language. The system can perform translation (e.g., via a human translator and/or an automated translation system) while bridging the communication channels. For example, one person can be giving a speech via the system where a number of people from different countries are listening to the speech translated in different languages via the system, where each of the people from different countries may be connected to the speaker with one or more types of media connections (e.g., voice, text, video) and be charged according to the durations media connections and translation services selected. In one embodiment, the translation service includes voice recognition and/or text to speech service.
  • In one embodiment, the seller may offer different prices on different communication channels. For example, communications with the seller via phone connection, text-based instant messaging, application sharing, common whiteboarding, email, SMS, video-based instant messaging, etc., can have different prices.
  • Alternatively or in combination, the seller/communicatee may specify a set of offers based on media types (e.g., text, image, voice, video) and based on whether or not the communication is in real time; the seller/communicatee can further specify the available connection channels (methods) for the transmission and/or reception of communications in these media types. One media type (e.g., text) may be facilitated via a number of media channels (e.g., email, SMS, instant messaging, etc.). Thus, based on a media connection request from the customer, the system can select one or more appropriate channels to reach the seller and best match the preferred communication channel selected by the customer; and the customer is charged according to the different prices specified by the seller/communicatee.
  • In one embodiment, when there is a queue of customers waiting to be connected to the seller/communicatee, the customers may also increase the bid prices over the prices specified by the seller/communicate to improve their positions in the queue.
  • In one embodiment, the customer can select a combination of desired media types (e.g., text, image, voice/audio, video, etc.) and the mode of the connections for the selected media types (e.g., real time communications or non-real time communications). The system then prompts the customer to specify the connection methods/channels to facilitate communications in the selected media types. For example, the customer may select to have a voice connection via a callback to PSTN phone numbers, VoIP telephony, or instant messaging, or via voice mail, multimedia message, etc.). A call graphic can be presented to help the customer step by step through the selection/connection process.
  • FIG. 18 illustrates a call button showing the real time availability of the types of connections available to a customer according to one embodiment. In FIG. 18, the call button (1031) is in the form of an icon, which is presented in the browser (or other applications, such as an email viewer) after a segment of web page is rendered. The segment of web page includes at least one reference that is assigned to the callee. When the segment of web page is rendered, the reference is used in a request (e.g., http request) to obtain information for the rendering of the call button (1031).
  • In one embodiment, the call button (1031) is provided as an iconic image in response to the request during the rendering of the segment of web page. The reference that is assigned to the callee is used to determine the real time availability (e.g., at the time of the request) for connecting to the callee via various communication channels (and/or media types). For example, the call button (1031) in FIG. 18 indicates that the callee currently accepts phone connections, instant messaging connections, email and SMS. In one embodiment, the appearance of the call button (1031) is based on the current availability statuses of various communication channels (and/or media types). In one embodiment, the call button (1031) shows the set of communication channels that the caller can currently request connections for without showing the set of communication channels that are not currently available. Alternatively, the image portions that represents the communication channels may be rendered differently based on the corresponding availability statuses. For example, image portions that represent the available channels can be rendered in color while image portions that represent unavailable channels are rendered in grayscale.
  • In one embodiment, the segment of web page is implemented using a reference to a web page of the system. The segment of the web page may reference the web page for the iconic image which is generated dynamically on the server of the system based on the current availability information. Alternatively, the segment of the web page may include scripts which obtain availability information from the server of the system and then generate the iconic image on the client (e.g., the web browser) based on the obtained availability information. In one embodiment, the scripts can periodically obtain the updated availability information.
  • In one embodiment, the call button indicates the current availability status of various media types (e.g., text, voice, image, video, etc.). Alternatively, the availability of callee for real time communications is indicated in the call button; and the status of various media types (e.g., text, voice, image, video, etc.) and/or media channels are displayed in a separate page after the call button is selected.
  • FIG. 19 illustrates a connection interface that allows a user to monitor the current connections and to request further concurrent connections according to one embodiment. In FIG. 19, the connection interface (1041) shows a representation of the customer (1043), a representation of the seller (1045), and the statuses of various connections.
  • In FIG. 19, the voice connection (1051) and the instant messaging connection (1053) are currently maintained for real time communications. The durations of the connections are shown in text boxes (1061 and 1063) respectively. The durations for the separate connections are separately tracked. In one embodiment, the voice connection (1051) and the instant messaging connection (1053) can be provided concurrently at least for a period of time.
  • In one embodiment, the customer can select the icons (1051 and 1053) to terminate the respective connections for voice and instant messaging. Alternatively or in combination, the customer can terminate the connections for voice and instant messaging separately without using the connection interface (1041). For example, the customer can hang up the phone to disconnect the voice connection, or close an instant messaging session to stop the voice connection and the instant messaging connection. In another embodiment, separate stop buttons (not shown in FIG. 19) are provided, which can be used to terminate the respective connections separately.
  • In FIG. 19, the customer can select the video icon (1055) to request a concurrent video connection, while the voice connection and instant messaging connection are maintained. The customer can select the email icon (1057) to request an email connection to the seller, the SMS icon (1059) for an SMS connection to the seller, etc.
  • As illustrated FIG. 19, different connections may have different prices. For example, the real time communication connections may be priced based on the time duration of the communication connections; and the non-real time communication connections may be priced based on the size of the communications. For example, email connections may be charged based on the size of the email messages; and the SMS connections may be charged based on the number of messages transmitted.
  • In one embodiment, the price for a particular media type connection may vary. For example, a number of price options may be offered for one media type connection; and the price for a particular user may depend upon the selection of the user. For instance, price for the video connection can be selected from the option of $0.75 per minutes or the option of $6.00 for 10 minutes. In one embodiment, the user can negotiate with the seller to determine a price. For example, when the user selects icon 1055 in FIG. 19, another interface (not shown) can be displayed to allow the user to choose from multiple pricing options.
  • In one embodiment, the prices/rates can change over time based on a number of seller-specified rules and/or other conditions. For example, the seller can set up a rule such that for every 10 minutes that the user is connected via the phone, the rate on the video connection is decreased. Sellers can set up different rules for their different media types to encourage the customer to upgrade media types, to make bulk time purchase, and/or to select a seller preferred media type, etc.
  • In one embodiment, the connection interface can further present the amounts that have been spent on the respective communication connections in the session and/or the total amount that has been spent on the communication connections in the session (not illustrated in FIG. 19).
  • FIG. 20 shows a method to provide multiple concurrent connections with separate billing according to one embodiment. In FIG. 20, a first party provides (1101) one or more references (e.g., an Ether button) to a second party. The second party distributes (1103) the one or more references to customers (e.g., via web sites, blogs, emails, etc.). The first party receives (1105) requests for a plurality of communication connections to a communicatee via the one or more references distributed to customers by the second party. The first party provides (1107) the plurality of communication connections which are connected simultaneously to the communicatee at least for a period of time. The first party charges (1109) separate fees for the plurality of communication connections.
  • In one embodiment, the separate fees are based on respective time lengths of the communication connections. For example, the time lengths of the partially concurrent communication connections can be different; and the first party separately tracks the time lengths of the communication connections.
  • In one embodiment, the at least partially concurrent connections are from different customers. For example, a first connection of the communication connections is from a first customer to the communicatee; the second connection of the communication connections is from a second customer to the communicatee; and the first party bridges or conferences the connections to allow the communicatee to speak to the first and second customers while the connections are overlapping with each other in time. In one embodiment, the first connection and the second connection are of a same type (e.g., phone connections, which may be partially over circuit switched network and partially over packet switched network). In one embodiment, the first connection and the second connection are bridged in a conference in which a voice input from the first customer is delivered to both the communicatee and the second customer. In another embodiment, the first connection and the second connection are bridged in a conference in which the voice input from the communicatee is provided to both the customers, but the voice input from one customer is not provided to another customer.
  • In one embodiment, the communication connections provided is one-way or half-duplex (not full-duplex). For example, the customers can hear or see the seller but do not provide voice or video feedback. For example, a person can give a lecture or speech to a number of people connected via the connection provider to just listen (or watch) without the privilege to speak to the person.
  • In another embodiment, the first connection of the communication connections is of a first type; and the second connection of the communication connections is of a second type. For example, the first connection and the second connection can be connections for communications in different ones of text, voice, audio, video, and image from a same customer. For example, the first connection and the second connection may use different communication protocol. For example, the first connection is capable to support real time communications (e.g., instant messaging, voice chat, video conferencing, application sharing, common whiteboarding, etc.) and the second connection is capable to support non-real time communications (e.g., email, SMS, voice message, etc.). In one embodiment, the first and second connections are of different types and from different customers; and the first and second connections are partially conferenced together. For example, the audio portion of a video connection can be conferenced with a phone connection.
  • In one embodiment, the first connection and the second connection can be requested via a same reference (e.g., a reference assigned to an Ether button) or separate ones of the one or more references (e.g., separate Ether buttons for requesting separate connections via different media channels).
  • In one embodiment, information on availability of the communicatee to accept the connections is provided in response to the one or more references to be rendered in a browser. For example, the information may include an icon, which determines an appearance of the one or more references in the browser.
  • From this description, it will be appreciated that certain aspects of the invention are embodied in the user devices, certain aspects of the invention are embodied in the server systems, and certain aspects of the invention are embodied in a system as a whole.
  • Embodiments of the present invention can be implemented using hardware, programs of instruction, or combinations of hardware and programs of instructions.
  • In one embodiment, a connection provider uses a connection server configured on a packet switched network to provide telephone connections between callers (e.g., customers) and callees (e.g., advertisers), as illustrated in FIG. 21. In FIG. 21, the connection server (2107) receives and/or places telephone calls via the telecommunication carrier (2105) over the packet switched network (2109). The telecommunication carrier (2105) further routes the telephone communications towards the caller (2101) and the callee (2103).
  • Since the telecommunication carrier (2105) can route a call from a packet switched network to a variety of destinations (e.g., a traditional analog telephone set, a mobile phone, a cellular phone, a WiFi phone, a Bluetooth phone, a softphone running on a computer, etc.), the connection sever (2107) can use one type of communication connection with the telephone carrier (2105) to facilitate the communication connections with variety of devices used by the customers (e.g., callers and callees). Thus, the implementation of the connection server (2107) can be simplified. In one embodiment, the connection server (3307) can also place and/or receive direct VoIP calls to/from the caller (or callee).
  • For example, to make a voice connection in response to a click-to-call request, the connection server can place separate VoIP calls, via the telecommunication carrier (2105), to the caller (2101) (e.g., the requester of the click-to-call) and the callee (2103) (e.g., the destination of the click-to-call request).
  • If the caller (2101) (or the callee 2103) is on a public switched telephone network (PSTN), the telecommunication carrier (2105) bridges the packet switched the network and the public switched telephone network (PSTN). The telecommunication carrier (2105) routes the call from the packet switched network (2109) to the caller (2101) (or the callee 2103) on the circuit switched network. Thus, the caller (2101) (or the callee 2103) can use a telephone set to receive the call via a Plain Old Telephone Service (POTS). The connection server (2107) joins the separate calls that are placed via the packet switched network (2109) to connection the callee (2103) and the caller (2101).
  • In one embodiment, call signaling and media content may use different network paths. While call signaling is arranged to go through the packet switched network (2109) and the connection server (2107), the media stream does not have to go through the connection server (2107). For example, when the calls are joined, the media content may be redirected to flow over the communication carrier (2105) without going through the packet switched network (2109) to the connection server (2107) for improved performance and efficiency. The connection server (2107) can release the control over the media stream to allow the media stream to flow through the shortest path, without going through the connection server, while maintaining control to the connection for the call by staying on the path for call signaling.
  • In another example, when the caller (2101) initiates a call over a PSTN to the connection server (2107), the telecommunication carrier (2105) converts the call for the packet switched network (2109) for the connection server (2107).
  • In one embodiment, virtual softphones on the telecommunication carrier (2105) are assigned to the caller (2101) and the callee (2103) for interfacing with the connection server (2107) over the packet switched network (2109). The virtual softphones encapsulates the devices and networks used by the caller (2101) and callee (2103) to access the connection server (2107); and the telecommunication carrier (2105) shields the connection server (2107) from the implementation details of the user devices and networks used by the caller (2101) and the callee (2103). The connection server (2107) calls (or receives calls from) and connects the virtual softphones on the telecommunication carrier (2105) to connect the caller (2101) and the callee (2103).
  • In FIG. 21, the telephone connection between the telecommunication carrier (2105) and the connection server (2107) is facilitated via a packet switched network (2109). Thus, the connection server (2107) can operate efficiently in a digital domain. The connection server (2107) interfaces with the telecommunication carrier (2105) using one type of Internet Telephony systems (e.g., SIP-based Internet telephony).
  • Alternatively, a connection server may include some or all of the functionality of the telecommunication carrier (2105). For example, the connection server may be configured to bridge a packet switched network and a circuit switched network. The connection server may support multiple, different types of Internet Telephony systems.
  • In one embodiment, the connection server (2107) and the telecommunication carrier (2105) are operated by different, separate entities. Alternatively, the connection server (2107) and the telecommunication carrier (2105) may be operated by the same entity. In another embodiment, the telecommunication carrier (2105) includes a set of facilities operated by a number of separate entities.
  • In one embodiment, the caller (2101) and/or the callee (2103) may also place/receive calls via a packet switched network. The telecommunication carrier (2105) may route the calls between the caller (2101) and the callee (2103) without using a PSTN. In one embodiment, caller (2101) and/or the callee (2103) may place calls to or receive calls from the connection server (2107) via Internet.
  • FIG. 22 shows a connection server according to one embodiment. In FIG. 22, the connection server (2106) is configured to place and/or receive VoIP calls using Session Initiation Protocol (SIP). A session border controller (2201) is used to interface with the packet switched network (2203) and control the types of network traffic related to VoIP calls that might go into the connection server (2205).
  • In one embodiment, the session border controller (2106) is configured to control the signaling and media stream during the setting up, conducting and tearing down of VoIP calls to or from the connection server (2205). In some embodiments, the session border controller (2106) may pick up the call that comes to the session border controller (2106), places a separate call from the session border controller (2106), and joins the received call and the placed call to control both the signaling and media stream. In some embodiments, the session border controller (2106) may perform signaling/encoding translation to allow the connection server (2205) to process the VoIP calls in one standard, while receiving VoIP calls in a variety of standards (e.g., SIP, H.323, etc.). In one embodiment, the session border controller (2106) is configured to perform one or more firewall functionalities, such as denial of service protection, call filtering, bandwidth management, etc.
  • In one embodiment, the session border controller (2106) is configured to perform media releasing operation. When the session border controller (2106) determines that the source and destination of a media stream is on the same side of the session border controller (2106) (e.g., both the source and the destination of the media stream is outside the connection server 2205), the session border controller (2106) can release the hairpining of the media stream and allow the media stream to flow without going through the session border controller (2106).
  • In FIG. 22, a set of SIP servers (e.g., 2211, 2213, . . . , 2219) are networked to the session border controller (2201) to receive messages for incoming calls and to initiate outgoing calls. The session border controller (2201) is configured to evenly distribute the calls for processing by the SIP servers.
  • For example, when an incoming message for the initiation of a call is received (e.g., a SIP INVITE message from the telecommunication carrier 2105), the session border controller (2201) may route it to a SIP server (e.g., 2211) for processing. The INVITE message includes the phone number dialed by the caller and the contact information about the caller (e.g., the phone number of the caller 2101 and/or the identity of the virtual SIP phone at the telecommunication carrier 2105).
  • The SIP server may determine whether the phone number dialed by the caller (2103) is sufficient to determine the phone number of the callee (e.g., 2103). If the phone number of the callee (e.g., 2103) can be determined from the phone number dialed by the caller (2103) (e.g., via decoding the phone number dialed by the callee, or looking up the phone number of the callee from a table using the phone number dialed by the caller as a key), the SIP server can place a separate SIP call to the callee via the packet switched network (2203) and then connect the caller and the callee. Alternatively, the SIP server can further route the SIP INVITE message (e.g., to the telecommunication carrier (2105) to direct the call to the callee. For example, the SIP server may modify the INVITE message by replacing the destination with the determined phone number of the callee. Further, the SIP server can modify the INVITE message by removing the phone number of the caller (or replacing the phone number of the caller with a phone number of the connection server). In one embodiment, the modified INVITE message identifies the virtual softphone corresponding to the caller on the telecommunication carrier as the SIP phone initiated the call; thus, the virtual softphone corresponding to the callee on the telecommunication carrier can establish media connection with the virtual softphone corresponding to the caller on the telecommunication carrier directly. Alternatively, the modified INVITE message may identifies a media server (2221) (or a virtual softphone on SIP server) as the initiator for a separate call. The SIP server then connects the calls for the media stream.
  • In one embodiment, the caller is first connected to a media server (e.g., 2221, 2223, or 2229). For example, the SIP server may forward the SIP INVITE message to one or more of the media servers for answering the call. When a media server (e.g., 2221) answers the call, a prompt is played to the caller by the media server. The media server may include an Interactive Voice Response (IVR) system, or be connected to an IVR system, to obtain input from the caller.
  • For example, the media server may prompt the caller to enter the extension assigned to the callee, such that the phone number of the callee can be determined based on the phone number including the extension dialed by the caller. In some embodiments, the extension dialed by the caller is sufficient to determine the phone number of the callee. After the phone number of the callee is determined, the SIP server can further connect the call to the callee.
  • For example, the media server can send a message to the SIP server. The message identifies the call and the extension obtained from the caller. The SIP server then determines the callee's phone number based at least on the extension received from the media server and initiates a SIP call via the packet switched network (2203) (e.g., by sending a SIP INVITE message to the telecommunication carrier 2105, which further bridges the call to the callee 2103). Then, the SIP server disconnects the media server from the call and reconnects the call to the callee.
  • For example, the SIP server can send a SIP BYE message to the media server to disconnect the media server from the call (e.g., by sending a “BYE” message to the media server for the call) and send a re-INVITE message towards the caller to connect the caller and the callee. Alternatively, the media server may send a SIP BYE message to the SIP server for the call; the BYE message may include the extension obtained from the caller; in response to the BYE message that contains the extension, the SIP server determines the phone number of the callee and further connects the caller to the callee.
  • In one embodiment, the SIP server can direct the caller and the callee to connect to each other for the media stream without having the media stream going through the session border controller (2201) into the connection server (2205). For example, the media stream can go through the telecommunication carrier (2105) in FIG. 21 without going to the connection server (2107) after the SIP server connects the caller and the callee.
  • However, the SIP server stays on the signaling path to monitor the progress and termination of the call. The SIP server can also break the connection between the caller and the callee, or force the media stream to come through the connection serve (2205). For example, the SIP server may selectively conference a media server into the call to monitor and/or record the communication of the call between the caller and the callee. For example, the SIP server may reconnect the caller and the callee to separate media servers for interaction with an IVR system or a human operator to confirm a deal or transaction.
  • Similarly, the SIP server may initiate a callback to a caller via a SIP call over the packet switched network (2203) for a connection to the caller. The SIP call may be bridged onto a circuit switched network (e.g., by a telecommunication carrier 2105). The SIP server can then reconnect the call to a media server for sending a prompt to the caller before reconnect the call to the callee. Alternatively, the callback can be initiated from a media server; and the call signaling (e.g., the INVITE message from the media server) goes through the SIP server for call control. Alternatively, the SIP server sends out the INVITE message on behalf of the media server.
  • In one embodiment, the SIP servers (2211, 2213, . . . , 2219) and media servers (2221, 2223, . . . , 2229) are implemented on separate computers connected via a local area network (and/or intranet or Internet). Alternatively, at least the some of the servers can be implemented on a same computer. In one embodiment, the SIP servers and the media servers are also integrated with the session border controller (2201) on a same data process system having multiple processors coupled with a data bus. In one embodiment, the SIP servers are coupled to the media servers via a network; and a SIP server may use any of the available media server for interaction with the caller (or callee). Alternatively, a SIP server may be configured to use one or more of media servers that are not shared by other SIP server. For example, a SIP server may be implemented on a same data processing system with one or more media servers which are reserved for the SIP server.
  • In one embodiment, the connection server (2205) may further include a database server (2205) to storing records related to the calls, data mapping between the communication references assigned to the callees and the actual phone numbers of the callees, etc. In one embodiment, contact mapping are cached in the local memory (e.g., RAM) of the servers for improved performance; and the cached mapping is updated when the database is updated.
  • In general, routines executed to implement the embodiments of the invention may be implemented as part of an operating system or a specific application, component, program, object, module or sequence of instructions referred to as “computer programs.” The computer programs typically comprise one or more instructions set at various times in various memory and storage devices in a computer, and that, when read and executed by one or more processors in a computer, cause the computer to perform operations necessary to execute elements involving the various aspects of the invention.
  • While some embodiments of the invention have been described in the context of fully functioning computers and computer systems, those skilled in the art will appreciate that various embodiments of the invention are capable of being distributed as a program product in a variety of forms and are capable of being applied regardless of the particular type of machine or computer-readable media used to actually effect the distribution.
  • Examples of computer-readable media include but are not limited to recordable and non-recordable type media such as volatile and non-volatile memory devices, read only memory (ROM), random access memory (RAM), flash memory devices, floppy and other removable disks, magnetic disk storage media, optical storage media (e.g., Compact Disk Read-Only Memory (CD ROMS), Digital Versatile Disks, (DVDs), etc.), among others. The instructions may be embodied in digital and analog communication links for electrical, optical, acoustical or other forms of propagated signals, such as carrier waves, infrared signals, digital signals, etc.
  • A machine readable medium can be used to store software and data which when executed by a data processing system causes the system to perform various methods of the present invention. The executable software and data may be stored in various places including for example ROM, volatile RAM, non-volatile memory and/or cache. Portions of this software and/or data may be stored in any one of these storage devices.
  • In general, a machine readable medium includes any mechanism that provides (i.e., stores and/or transmits) information in a form accessible by a machine (e.g., a computer, network device, personal digital assistant, manufacturing tool, any device with a set of one or more processors, etc.).
  • Aspects of the present invention may be embodied, at least in part, in software. That is, the techniques may be carried out in a computer system or other data processing system in response to its processor, such as a microprocessor, executing sequences of instructions contained in a memory, such as ROM, volatile RAM, non-volatile memory, cache or a remote storage device.
  • In various embodiments, hardwired circuitry may be used in combination with software instructions to implement the present invention. Thus, the techniques are not limited to any specific combination of hardware circuitry and software nor to any particular source for the instructions executed by the data processing system.
  • In this description, various functions and operations are described as being performed by or caused by software code to simplify description. However, those skilled in the art will recognize what is meant by such expressions is that the functions result from execution of the code by a processor, such as a microprocessor.
  • Although some of the drawings illustrate a number of operations in a particular order, operations which are not order dependent may be reordered and other operations may be combined or broken out. While some reordering or other groupings are specifically mentioned, others will be apparent to those of ordinary skill in the art and so do not present an exhaustive list of alternatives. Moreover, it should be recognized that the stages could be implemented in hardware, firmware, software or any combination thereof.
  • In the foregoing specification, the invention has been described with reference to specific exemplary embodiments thereof. It will be evident that various modifications may be made thereto without departing from the broader spirit and scope of the invention as set forth in the following claims. The specification and drawings are, accordingly, to be regarded in an illustrative sense rather than a restrictive sense.

Claims (22)

1. A method, comprising:
a first party providing one or more references to a second party for distribution to customers, the one or more references capable of being used to request the first party to provide a plurality of communication connections to a communicatee, the plurality of communication connections being connected simultaneously to the communicatee at least for a period of time; and
the first party charging separate fees for the plurality of communication connections.
2. The method of claim 1, further comprising:
the first party placing one or more Voice over Internet Protocol (VoIP) calls via a telecommunication carrier to the communicatee to establish at least some of the communication connections to the communicatee, the telecommunication carrier to bridge the VoIP calls to the communicatee.
3. The method of claim 2, wherein subsequent calls of the VoIP calls are placed into a conference with prior calls of the VoIP calls to the communicatee.
4. The method of claim 1, wherein the separate fees are based on respective time lengths of the communication connections.
5. The method of claim 4, wherein the time lengths of the communication connections are different.
6. The method of claim 4, wherein a first connection of the communication connections is from a first customer to the communicatee; and the second connection of the communication connections is from a second customer to the communicatee.
7. The method of claim 6, wherein the first connection and the second connection are of a same type.
8. The method of claim 7, wherein the first connection and the second connection are phone connections.
9. The method of claim 8, wherein the phone connections are partially over circuit switched network and partially over packet switched network; and the method further comprises:
receiving a communication from the communicates in a first language;
translating the communication from the first language to a second language; and
providing the communication in the second language to a customer over one of the plurality of communication connections.
10. The method of claim 8, wherein the first connection and the second connection are bridged in a conference in which a voice input from the first customer is delivered to both the communicates and the second customer.
11. The method of claim 4, wherein the first connection of the communication connections is of a first type; and the second connection of the communication connections is of a second type.
12. The method of claim 11, wherein the first connection and the second connection are from a same customer.
13. The method of claim 11, wherein the first connection and the second connection are for communications in different ones of text, voice, audio, video, and image.
14. The method of claim 11, wherein the first connection and the second connection use different communication protocol.
15. The method of claim 11, wherein the first connection is capable to support real time communications and the second connection is capable to support non-real time communications.
16. The method of claim 11, wherein the first connection and the second connection are requested via a same reference.
17. The method of claim 11, wherein the first connection and the second connection are requested via separate ones of the one or more references.
18. The method of claim 1, further comprising:
providing information on availability of the communicatee to accept the connections in response to the one or more references to be rendered in a browser.
19. The method of claim 18, wherein the provided information determines an appearance of the one or more references in the browser.
20. The method of claim 18, wherein the information comprises an icon.
21. A machine readable medium containing instructions which when executed on a data processing system cause the system to perform a method, comprising:
a first party providing one or more references to a second party for distribution to customers, the one or more references capable of being used to request the first party to provide a plurality of communication connections to a communicatee, the plurality of communication connections being connected simultaneously to the communicatee at least for a period of time; and
the first party charging separate fees for the plurality of communication connections.
22. A data processing system, comprising:
means for a first party providing one or more references to a second party for distribution to customers, the one or more references capable of being used to request the first party to provide a plurality of communication connections to a communicatee, the plurality of communication connections being connected simultaneously to the communicatee at least for a period of time; and
means for the first party charging separate fees for the plurality of communication connections.
US11/677,993 2006-01-10 2007-02-22 Methods and Apparatuses to Provide Multimedia Connections Abandoned US20070159973A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/677,993 US20070159973A1 (en) 2006-01-10 2007-02-22 Methods and Apparatuses to Provide Multimedia Connections

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/329,459 US8125931B2 (en) 2006-01-10 2006-01-10 Systems and methods to provide availability indication
US11/677,993 US20070159973A1 (en) 2006-01-10 2007-02-22 Methods and Apparatuses to Provide Multimedia Connections

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US11/329,459 Continuation-In-Part US8125931B2 (en) 2006-01-10 2006-01-10 Systems and methods to provide availability indication

Publications (1)

Publication Number Publication Date
US20070159973A1 true US20070159973A1 (en) 2007-07-12

Family

ID=38232640

Family Applications (4)

Application Number Title Priority Date Filing Date
US11/329,459 Active 2028-07-04 US8125931B2 (en) 2006-01-10 2006-01-10 Systems and methods to provide availability indication
US11/677,993 Abandoned US20070159973A1 (en) 2006-01-10 2007-02-22 Methods and Apparatuses to Provide Multimedia Connections
US11/692,739 Active 2029-09-13 US9106473B2 (en) 2006-01-10 2007-03-28 Systems and methods to connect buyers and sellers
US11/692,743 Abandoned US20070291783A1 (en) 2006-01-10 2007-03-28 Systems and Methods to Provide Real Time Communication Connections

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US11/329,459 Active 2028-07-04 US8125931B2 (en) 2006-01-10 2006-01-10 Systems and methods to provide availability indication

Family Applications After (2)

Application Number Title Priority Date Filing Date
US11/692,739 Active 2029-09-13 US9106473B2 (en) 2006-01-10 2007-03-28 Systems and methods to connect buyers and sellers
US11/692,743 Abandoned US20070291783A1 (en) 2006-01-10 2007-03-28 Systems and Methods to Provide Real Time Communication Connections

Country Status (3)

Country Link
US (4) US8125931B2 (en)
EP (1) EP1971907A4 (en)
WO (1) WO2007081432A2 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080046573A1 (en) * 2006-08-21 2008-02-21 Nokia Corporation Mechanism for charging and session handling supporting forking
EP2396734A1 (en) * 2009-02-11 2011-12-21 Volt Delta Resources LLC System and method to facilitate voice communication between members of social networking websites while maintaining member privacy
US8170036B1 (en) * 2008-05-12 2012-05-01 Nextel Communications, Inc. Systems and methods of voice chat
US20140337765A1 (en) * 2013-05-07 2014-11-13 Yp Interactive Llc Systems and methods to provide multiple connections for anonymous communication in a virtual environment
US9462121B2 (en) 2007-02-22 2016-10-04 Yellowpages.Com Llc Systems and methods to confirm initiation of a callback
US20170046337A1 (en) * 2015-08-13 2017-02-16 Language Line Services, Inc. Language interpretation/translation resource configuration
US9704182B2 (en) 2007-01-18 2017-07-11 Yellowpages.Com Llc Systems and methods to provide connections via callback acceptance
US9986089B2 (en) 2015-08-25 2018-05-29 At&T Intellectual Property I, L.P. Optimizing channel selection for customer care
US10089658B2 (en) 2007-04-09 2018-10-02 Yellowpages.Com Llc Systems and methods to provide connections via callback acceptance cross-reference to related applications

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8125931B2 (en) * 2006-01-10 2012-02-28 Utbk, Inc. Systems and methods to provide availability indication
US7720091B2 (en) 2006-01-10 2010-05-18 Utbk, Inc. Systems and methods to arrange call back
US7804845B2 (en) * 2006-01-12 2010-09-28 Gm Global Technology Operations, Inc. Method to confirm the server identity for server-initiated services
US7792095B2 (en) * 2006-03-31 2010-09-07 The Boeing Company VoIP and associated data delivery
US20080059476A1 (en) * 2006-09-05 2008-03-06 Gm Global Technology Operations, Inc. Method For Protecting User Privacy in Short Range Communication
US7656318B2 (en) * 2007-01-29 2010-02-02 Ntt Docomo, Inc. Optimized content-based and royalty-based encoding and distribution of media data
US8755502B1 (en) * 2007-02-07 2014-06-17 Sprint Spectrum L.P. Call contention mediation after dropped call
US8837710B2 (en) * 2007-02-08 2014-09-16 Yp Interactive Llc Systems and methods to facilitate searches
US9209984B2 (en) * 2007-02-08 2015-12-08 Yellowpages.Com Llc Systems and methods to facilitate communications
US8219558B1 (en) 2008-04-25 2012-07-10 David Scott Trandal Methods and systems for inventory management
US7899823B1 (en) 2008-04-25 2011-03-01 Trandal David S Methods and systems for inventory management
US8127001B1 (en) * 2008-10-06 2012-02-28 Rockstar Bidco, LP Method and system for selecting providers for role based services
US7792709B1 (en) 2008-10-08 2010-09-07 Trandal David S Methods and systems for receipt management and price comparison
US8346622B2 (en) * 2009-02-17 2013-01-01 Ebay Inc. Connection system
US8295452B1 (en) 2009-06-17 2012-10-23 Trandal David S Methods and systems for processing telephonic communications and product data
US8259915B2 (en) 2010-07-01 2012-09-04 Marchex, Inc. System and method to analyze calls to advertised telephone numbers
US8433048B2 (en) 2010-07-01 2013-04-30 Marchex, Inc. System and method to direct telephone calls to advertisers
US9002350B1 (en) 2010-09-02 2015-04-07 Ringcentral, Inc. Unified caller identification across multiple communication modes
US8369847B1 (en) 2010-09-13 2013-02-05 Ringcentral, Inc. Mobile devices having a common communication mode
US8934383B1 (en) * 2012-02-22 2015-01-13 West Corporation Internet SIP registration/proxy service for audio conferencing
US8467514B1 (en) 2012-04-09 2013-06-18 Ringcentral, Inc. Cross-platform presence
CN103580986B (en) 2012-07-30 2016-12-21 华为终端有限公司 A kind of real-time communication method, terminal unit, real-time communication server and system
US9485459B2 (en) 2012-12-14 2016-11-01 Biscotti Inc. Virtual window
US9300910B2 (en) 2012-12-14 2016-03-29 Biscotti Inc. Video mail capture, processing and distribution
US9310977B2 (en) 2012-12-14 2016-04-12 Biscotti Inc. Mobile presence detection
US9654563B2 (en) 2012-12-14 2017-05-16 Biscotti Inc. Virtual remote functionality
US9443036B2 (en) 2013-01-22 2016-09-13 Yp Llc Geo-aware spellchecking and auto-suggest search engines
US10051115B2 (en) * 2013-05-01 2018-08-14 Thomson Licensing Call initiation by voice command
US8737973B1 (en) * 2013-07-22 2014-05-27 Robert W. Petrunka Enhanced voice calling using smart phone services
US11310348B2 (en) * 2015-01-30 2022-04-19 Calgary Scientific Inc. Highly scalable, fault tolerant remote access architecture and method of connecting thereto
US10419511B1 (en) * 2016-10-04 2019-09-17 Zoom Video Communications, Inc. Unique watermark generation and detection during a conference
US20240031324A1 (en) * 2022-07-25 2024-01-25 At&T Intellectual Property I, L.P. Intelligent messaging delivery

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5793851A (en) * 1993-05-17 1998-08-11 Albertson; David V. Pay telephone communication system
US20010026609A1 (en) * 1999-12-30 2001-10-04 Lee Weinstein Method and apparatus facilitating the placing, receiving, and billing of telephone calls
US6393412B1 (en) * 1999-09-23 2002-05-21 Peter Deep Method for allowing users to purchase professional services in a private chat room through a service brokerage via the internet
US20030152207A1 (en) * 2002-02-13 2003-08-14 Kevin Ryan Telecommunications and cellular telephone homepage call screening control center
US6865540B1 (en) * 2000-08-09 2005-03-08 Ingenio, Inc. Method and apparatus for providing group calls via the internet
US20060069610A1 (en) * 2004-03-19 2006-03-30 Pascal Rossini Browsing device and platform for management and distrubtion in server mode, in particular for the display of advertising links
US7117152B1 (en) * 2000-06-23 2006-10-03 Cisco Technology, Inc. System and method for speech recognition assisted voice communications
US20070025338A1 (en) * 2005-07-26 2007-02-01 Smartlink Ltd.. Software-based solutions for telephone network bridging
US20070111716A1 (en) * 2005-11-14 2007-05-17 Leigh Randolph J Mobile-device directed conference calling
US20070174124A1 (en) * 2005-02-25 2007-07-26 Utbk, Inc. Methods and Apparatuses for Prioritizing Featured Listings

Family Cites Families (348)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4313035A (en) * 1980-01-18 1982-01-26 Bell Telephone Laboratories, Incorporated Method of providing person locator service
JPS5998283A (en) * 1982-11-27 1984-06-06 Hitachi Ltd Pattern segmenting and recognizing system
US4577065A (en) * 1983-11-03 1986-03-18 At&T Bell Laboratories Meet-me conference arrangement
US4751669A (en) * 1984-03-30 1988-06-14 Wang Laboratories, Inc. Videotex frame processing
US4677434A (en) * 1984-10-17 1987-06-30 Lotus Information Network Corp. Access control system for transmitting data from a central station to a plurality of receiving stations and method therefor
US4631428A (en) 1984-10-26 1986-12-23 International Business Machines Corporation Communication interface connecting binary logic unit through a trinary logic transmission channel
US4645873A (en) 1985-01-23 1987-02-24 Telecue Systems Transactional telecommunication system
JPH0638621B2 (en) 1985-03-01 1994-05-18 日本電気株式会社 Voice addition and distribution device
JPH0685517B2 (en) * 1985-06-28 1994-10-26 ソニー株式会社 Information service system
US4845739A (en) * 1985-07-10 1989-07-04 Fdr Interactive Technologies Telephonic-interface statistical analysis system
US4752675A (en) * 1985-12-23 1988-06-21 Zetmeir Karl D Method of collecting response data from direct mail advertising
US4847890A (en) 1987-08-10 1989-07-11 The Telephone Connection Anonymous interactive telephone system
US4796293A (en) 1987-12-18 1989-01-03 Communications Network Enhancement Inc. Enhanced dedicated teleconferencing system
US5191573A (en) 1988-06-13 1993-03-02 Hair Arthur R Method for transmitting a desired digital video or audio signal
CA1341310C (en) 1988-07-15 2001-10-23 Robert Filepp Interactive computer network and method of operation
US5497502A (en) * 1989-06-07 1996-03-05 Genese Method and apparatus for transmitting information recorded on digital disks from a central server to subscribers via a high data rate digital telecommunications network
US5058152A (en) 1989-12-12 1991-10-15 The Telephone Connection Anonymous interactive telephone system having direct connect feature
US5099510A (en) 1990-06-11 1992-03-24 Communications Network Enhancement Inc. Teleconferencing with bridge partitioning and other features
US5319542A (en) * 1990-09-27 1994-06-07 International Business Machines Corporation System for ordering items using an electronic catalogue
EP0559732B1 (en) 1990-11-27 1996-01-03 JACOBS, Gordon, M. Digital data converter
US5325424A (en) 1991-04-22 1994-06-28 Motorola, Inc. Method of automatically establishing a communication path between two devices
US5148474A (en) 1991-08-21 1992-09-15 Nancy Haralambopoulos Interactive value-added telecommunications system and method
CA2077061C (en) 1991-11-22 1998-04-21 Mark J. Baugher Scheduling system for distributed multimedia resources
US5608186A (en) * 1992-01-27 1997-03-04 Thomas & Betts Corporation Ground rod
SE500819C2 (en) 1992-02-17 1994-09-12 Ericsson Telefon Ab L M Ways of establishing a connection in a telecommunications network
SE500820C2 (en) 1992-02-17 1994-09-12 Ericsson Telefon Ab L M Ways to arrange communication between at least two users in the form of a meeting
US5701419A (en) 1992-03-06 1997-12-23 Bell Atlantic Network Services, Inc. Telecommunications service creation apparatus and method
US5418844A (en) 1992-04-17 1995-05-23 Bell Atlantic Network Services, Inc. Automatic access to information service providers
JP2881357B2 (en) 1992-05-29 1999-04-12 株式会社田村電機製作所 Public telephone
US5638432A (en) 1992-06-23 1997-06-10 Siemens Aktiengesellschaft Method of setting up telecommunication connections
JP2756392B2 (en) 1992-08-27 1998-05-25 富士通株式会社 Computer with the function of linking e-mail and telephone
JP3358627B2 (en) * 1992-10-16 2002-12-24 ソニー株式会社 Information recording / reproducing device
US5369694A (en) 1992-12-23 1994-11-29 At&T Corp. Unattended meet-me-conference controlled by a telephone terminal
US5373549A (en) 1992-12-23 1994-12-13 At&T Corp. Multi-level conference management and notification
US5436957A (en) 1992-12-24 1995-07-25 Bell Atlantic Network Services, Inc. Subscriber control of access restrictions on a plurality of the subscriber's telephone lines
SE500950C2 (en) 1993-02-18 1994-10-03 Info Dev & Patent Ab Procedure for information transfer and device for carrying out the procedure
TW234796B (en) * 1993-02-24 1994-11-21 Advanced Micro Devices Inc
US5453352A (en) 1993-03-02 1995-09-26 Konica Corporation Silver halide color photographic light-sensitive material
US5448625A (en) 1993-04-13 1995-09-05 Msi Electronics Inc. Telephone advertising method and apparatus
US5689553A (en) 1993-04-22 1997-11-18 At&T Corp. Multimedia telecommunications network and service
US6131085A (en) 1993-05-21 2000-10-10 Rossides; Michael T Answer collection and retrieval system governed by a pay-off meter
US5359508A (en) 1993-05-21 1994-10-25 Rossides Michael T Data collection and retrieval system for registering charges and royalties to users
US5802502A (en) 1993-05-24 1998-09-01 British Telecommunications Public Limited Company System for selective communication connection based on transaction pricing signals
US5428606A (en) 1993-06-30 1995-06-27 Moskowitz; Scott A. Digital information commodities exchange
US5377258A (en) * 1993-08-30 1994-12-27 National Medical Research Council Method and apparatus for an automated and interactive behavioral guidance system
US5589892A (en) 1993-09-09 1996-12-31 Knee; Robert A. Electronic television program guide schedule system and method with data feed access
US5590180A (en) 1993-09-30 1996-12-31 Hitachi, Ltd. Communication method of supplying information in intelligent network and apparatus therefor
US6594688B2 (en) * 1993-10-01 2003-07-15 Collaboration Properties, Inc. Dedicated echo canceler for a workstation
EP1235177A3 (en) * 1993-12-16 2003-10-08 divine technology ventures Digital active advertising
US5619725A (en) * 1994-01-21 1997-04-08 Alphanet Telecom Inc. Method for auxiliary software providing instruction for facsimile modem to simulate a telephone communication while connecting to store and forward computer to receive communication
US5694549A (en) 1994-03-03 1997-12-02 Telescan, Inc. Multi-provider on-line communications system
AU2273895A (en) 1994-03-23 1996-10-16 Futurevision Of America Corp. Interactive advertising system and device
US5974141A (en) 1995-03-31 1999-10-26 Mitsubishi Corporation Data management system
US5537314A (en) 1994-04-18 1996-07-16 First Marketrust Intl. Referral recognition system for an incentive award program
US5768521A (en) 1994-05-16 1998-06-16 Intel Corporation General purpose metering mechanism for distribution of electronic information
AU699785B2 (en) 1994-05-27 1998-12-17 Head To Head Games Pty. Ltd. Communication system and method
GB9416673D0 (en) 1994-08-17 1994-10-12 Reuters Ltd Data exchange filtering system
US5740231A (en) * 1994-09-16 1998-04-14 Octel Communications Corporation Network-based multimedia communications and directory system and method of operation
US5715314A (en) * 1994-10-24 1998-02-03 Open Market, Inc. Network sales system
WO1996015505A2 (en) 1994-11-08 1996-05-23 Vermeer Technologies, Inc. An online service development tool with fee setting capabilities
US5634012A (en) * 1994-11-23 1997-05-27 Xerox Corporation System for controlling the distribution and use of digital works having a fee reporting mechanism
US5574781A (en) 1994-12-08 1996-11-12 At&T Translation indicator for database-queried communications services
US5596634A (en) * 1994-12-13 1997-01-21 At&T Telecommunications system for dynamically selecting conversation topics having an automatic call-back feature
US5544237A (en) 1994-12-22 1996-08-06 At&T Corp. Automatic conference initiation upon all telephones for the conference being idle
CA2139081C (en) 1994-12-23 1999-02-02 Alastair Gordon Unified messaging system and method
US5483588A (en) 1994-12-23 1996-01-09 Latitute Communications Voice processing interface for a teleconference system
CA2164896C (en) 1994-12-27 2000-11-21 Daniel Jitzchak Mayer Context-based transactions using broadcast advertising
US5602905A (en) * 1995-01-23 1997-02-11 Mettke; Richard P. On-line communication terminal/apparatus
US5546452A (en) * 1995-03-02 1996-08-13 Geotel Communications Corp. Communications system using a central controller to control at least one network and agent system
US5590197A (en) 1995-04-04 1996-12-31 V-One Corporation Electronic payment system and method
US5615213A (en) * 1995-04-13 1997-03-25 International Business Machines Corporation Message transmission using out-of-band signaling channel
CA2173304C (en) 1995-04-21 2003-04-29 Anthony J. Dezonno Method and system for establishing voice communications using a computer network
DE69636239T2 (en) 1995-04-24 2007-05-10 International Business Machines Corp. A method and apparatus for skill-based routing in a call center
US5911132A (en) 1995-04-26 1999-06-08 Lucent Technologies Inc. Method using central epidemiological database
US5619991A (en) * 1995-04-26 1997-04-15 Lucent Technologies Inc. Delivery of medical services using electronic data communications
GB2301445B (en) * 1995-05-22 1997-07-09 At & T Corp Silica optical circuit switch and method
US5740549A (en) 1995-06-12 1998-04-14 Pointcast, Inc. Information and advertising distribution system and method
US5841763A (en) 1995-06-13 1998-11-24 Multilink, Inc. Audio-video conferencing system
JP3455790B2 (en) 1995-06-30 2003-10-14 富士通株式会社 Know-how management device used for information retrieval
US6301350B1 (en) 1995-06-30 2001-10-09 Qwest Communications International, Inc. System and method for call handling
US5794221A (en) 1995-07-07 1998-08-11 Egendorf; Andrew Internet billing method
US5619555A (en) 1995-07-28 1997-04-08 Latitude Communications Graphical computer interface for an audio conferencing system
US5559875A (en) 1995-07-31 1996-09-24 Latitude Communications Method and apparatus for recording and retrieval of audio conferences
US5818836A (en) 1995-08-09 1998-10-06 Duval; Stephen C. Method and apparatus for anonymous voice communication using an online data service
US5781894A (en) 1995-08-11 1998-07-14 Petrecca; Anthony Method and system for advertising on personal computers
US5893077A (en) * 1995-08-23 1999-04-06 Microsoft Corporation Method and apparatus for generating and collecting a billing event object within an on-line network
US5710887A (en) * 1995-08-29 1998-01-20 Broadvision Computer system and method for electronic commerce
JP3566458B2 (en) 1995-08-30 2004-09-15 株式会社東芝 Archive device
JP3813210B2 (en) 1995-09-14 2006-08-23 富士通株式会社 Online advertising system and method
US5712979A (en) * 1995-09-20 1998-01-27 Infonautics Corporation Method and apparatus for attaching navigational history information to universal resource locator links on a world wide web page
US5819285A (en) 1995-09-20 1998-10-06 Infonautics Corporation Apparatus for capturing, storing and processing co-marketing information associated with a user of an on-line computer service using the world-wide-web.
US5717860A (en) * 1995-09-20 1998-02-10 Infonautics Corporation Method and apparatus for tracking the navigation path of a user on the world wide web
US5812769A (en) 1995-09-20 1998-09-22 Infonautics Corporation Method and apparatus for redirecting a user to a new location on the world wide web using relative universal resource locators
US5884032A (en) * 1995-09-25 1999-03-16 The New Brunswick Telephone Company, Limited System for coordinating communications via customer contact channel changing system using call centre for setting up the call between customer and an available help agent
EP0769866A3 (en) * 1995-10-19 2001-02-07 Ncr International Inc. Automated voice mail/answering machine greeting system
US6130933A (en) 1996-02-02 2000-10-10 Genesys Telecommunications Laboratories, Inc. Apparatus and methods for coordinating telephone and data communications
US6021428A (en) 1997-09-15 2000-02-01 Genesys Telecommunications Laboratories, Inc. Apparatus and method in improving e-mail routing in an internet protocol network telephony call-in-center
US5574780A (en) 1995-11-16 1996-11-12 Lucent Technologies Inc. Controll of call features provided to a subscriber by a hierarchical telecommunication switch
US5825876A (en) 1995-12-04 1998-10-20 Northern Telecom Time based availability to content of a storage medium
US5778367A (en) 1995-12-14 1998-07-07 Network Engineering Software, Inc. Automated on-line information service and directory, particularly for the world wide web
US5745681A (en) * 1996-01-11 1998-04-28 Sun Microsystems, Inc. Stateless shopping cart for the web
US5721763A (en) * 1996-01-31 1998-02-24 At&T Corp Method for providing information during a chat session
US5842212A (en) 1996-03-05 1998-11-24 Information Project Group Inc. Data modeling and computer access record memory
JP2985762B2 (en) * 1996-03-18 1999-12-06 日本電気株式会社 Exhaust gas processing method and processing apparatus
US5835896A (en) 1996-03-29 1998-11-10 Onsale, Inc. Method and system for processing and transmitting electronic auction information
US5914951A (en) 1996-04-16 1999-06-22 At&T Corp System and method for controlling and monitoring communication between customers and customer service representatives
US5790426A (en) * 1996-04-30 1998-08-04 Athenium L.L.C. Automated collaborative filtering system
US5850433A (en) 1996-05-01 1998-12-15 Sprint Communication Co. L.P. System and method for providing an on-line directory service
US5718247A (en) * 1996-05-30 1998-02-17 Frankel; Kenneth Apparatus and process for interactive psychotherapy
SE9602187L (en) * 1996-05-31 1997-10-13 Anders Edvard Trell Telephony procedure which offers subscribers temporary additional telephone numbers in addition to the basic subscription
US5864871A (en) * 1996-06-04 1999-01-26 Multex Systems Information delivery system and method including on-line entitlements
US5819271A (en) 1996-06-04 1998-10-06 Multex Systems, Inc. Corporate information communication and delivery system and method including entitlable hypertext links
US7013001B1 (en) 1996-06-05 2006-03-14 David Felger Method of billing a communication session conducted over a computer network
US5729594A (en) 1996-06-07 1998-03-17 Klingman; Edwin E. On-line secured financial transaction system through electronic media
US5901214A (en) * 1996-06-10 1999-05-04 Murex Securities, Ltd. One number intelligent call processing system
US5809145A (en) 1996-06-28 1998-09-15 Paradata Systems Inc. System for distributing digital information
US5890138A (en) * 1996-08-26 1999-03-30 Bid.Com International Inc. Computer auction system
US5944790A (en) 1996-07-19 1999-08-31 Lucent Technologies Inc. Method and apparatus for providing a web site having a home page that automatically adapts to user language and customs
US5862223A (en) * 1996-07-24 1999-01-19 Walker Asset Management Limited Partnership Method and apparatus for a cryptographically-assisted commercial network system designed to facilitate and support expert-based commerce
US6385646B1 (en) 1996-08-23 2002-05-07 At&T Corp. Method and system for establishing voice communications in an internet environment
US5907677A (en) * 1996-08-23 1999-05-25 Ecall Inc. Method for establishing anonymous communication links
US5884272A (en) * 1996-09-06 1999-03-16 Walker Asset Management Limited Partnership Method and system for establishing and maintaining user-controlled anonymous communications
US6011794A (en) * 1996-09-09 2000-01-04 Netplus Communications Corp. Internet based telephone apparatus and method
US5940471A (en) 1996-10-04 1999-08-17 Northern Telecom Limited Method and apparatus for obtaining feedback regarding network services
US5915001A (en) 1996-11-14 1999-06-22 Vois Corporation System and method for providing and using universally accessible voice and speech data files
US5901286A (en) 1996-11-15 1999-05-04 Canon Information Systems, Inc. Method and apparatus for communicating with a network peripheral
US5999611A (en) 1996-11-19 1999-12-07 Stentor Resource Centre Inc. Subscriber interface for accessing and operating personal communication services
US6014644A (en) * 1996-11-22 2000-01-11 Pp International, Inc. Centrally coordinated communication systems with multiple broadcast data objects and response tracking
SE9700334L (en) 1997-02-03 1998-08-04 Gratistelefon Svenska Ab Procedure for telecommunications including advertising messages
US6026400A (en) * 1997-02-19 2000-02-15 Casio Computer Co., Ltd. Information processors which provide advice information, and recording mediums
US5960416A (en) 1997-02-27 1999-09-28 Block; Robert S. Real time subscriber billing at a subscriber location in an unstructured communication network
US5889774A (en) * 1997-03-14 1999-03-30 Efusion, Inc. Method and apparatus for selecting an internet/PSTN changeover server for a packet based phone call
US6212192B1 (en) * 1997-03-14 2001-04-03 Itxc, Inc. Method and apparatus for synchronizing information browsing among multiple systems
US6026087A (en) * 1997-03-14 2000-02-15 Efusion, Inc. Method and apparatus for establishing a voice call to a PSTN extension for a networked client computer
US6310941B1 (en) 1997-03-14 2001-10-30 Itxc, Inc. Method and apparatus for facilitating tiered collaboration
US6304637B1 (en) 1997-03-14 2001-10-16 Itxc, Inc. Method and apparatus for establishing and facilitating a direct quality voice call to a telephone extension on behalf of a client computer
US6199096B1 (en) * 1997-03-14 2001-03-06 Efusion, Inc. Method and apparatus for synchronizing information browsing among multiple systems
US5987102A (en) 1997-03-14 1999-11-16 Efusion, Inc. Method and apparatus for bridging a voice call including selective provision of information in non-audio to the caller
US6144670A (en) 1997-03-14 2000-11-07 Efusion, Inc. Method and apparatus for establishing and facilitating a voice call connection from a client computer to a PSTN extension
US6529878B2 (en) * 1997-03-24 2003-03-04 De Rafael Carey A. System for rewarding viewers of interactive commercial advertisements
US6028601A (en) * 1997-04-01 2000-02-22 Apple Computer, Inc. FAQ link creation between user's questions and answers
US6614783B1 (en) * 1997-04-01 2003-09-02 Cosmocom, Inc. Multimedia telecommunication automatic call distribution system using internet/PSTN call routing
US6046762A (en) * 1997-04-01 2000-04-04 Cosmocom, Inc. Multimedia telecommunication automatic call distribution system
US5999609A (en) 1997-04-04 1999-12-07 Sun Microsystems, Inc. Computer-telephony (CT) system including an electronic call request
US5974398A (en) 1997-04-11 1999-10-26 At&T Corp. Method and apparatus enabling valuation of user access of advertising carried by interactive information and entertainment services
US5903635A (en) * 1997-04-18 1999-05-11 At&T Corp. Advertising effectiveness rating system
US5940484A (en) 1997-04-25 1999-08-17 At & T Corp. Self-provisioning names database for caller identification services
US6026148A (en) * 1997-05-28 2000-02-15 Blue Grotto Technologies, Inc. System and method for delivering expert information by computer
US6064978A (en) * 1997-06-24 2000-05-16 Experts Exchange, Inc. Question and answer system using computer networks
US6029141A (en) * 1997-06-27 2000-02-22 Amazon.Com, Inc. Internet-based customer referral system
US5870744A (en) * 1997-06-30 1999-02-09 Intel Corporation Virtual people networking
US6058379A (en) * 1997-07-11 2000-05-02 Auction Source, L.L.C. Real-time network exchange with seller specified exchange parameters and interactive seller participation
AU8576798A (en) * 1997-07-25 1999-02-16 Starvox, Inc. Apparatus and method for integrated voice gateway
US5982863A (en) * 1997-08-27 1999-11-09 Phytel, Inc. Communications system for a service provider
US5987430A (en) 1997-08-28 1999-11-16 Atcom, Inc. Communications network connection system and method
US6192050B1 (en) * 1997-08-29 2001-02-20 Nortel Networks Limited Method and apparatus for inquiry response via internet
US6188673B1 (en) 1997-09-02 2001-02-13 Avaya Technology Corp. Using web page hit statistics to anticipate call center traffic
GB2329046B (en) 1997-09-04 2002-12-18 Mitel Corp Web based help desk
CA2246130C (en) * 1997-09-04 2003-01-14 Mitel Corporation Web based help desk
US6118860A (en) 1997-09-12 2000-09-12 Nortel Networks Corporation Public communications services vending method and apparatus
US6337858B1 (en) 1997-10-10 2002-01-08 Nortel Networks Limited Method and apparatus for originating voice calls from a data network
US5987118A (en) 1997-10-21 1999-11-16 Mci Communiations Corporation Method and computer program logic for providing an intelligent network operator console with enhanced services
US6188761B1 (en) * 1997-10-21 2001-02-13 Mci Communications Corporation System and method for providing operator and customer services
JP3906535B2 (en) * 1997-11-07 2007-04-18 ソニー株式会社 Download system and recording medium
US6167449A (en) 1997-11-19 2000-12-26 Apple Computer, Inc. System and method for identifying and locating services on multiple heterogeneous networks using a query by type
US6493447B1 (en) 1997-11-21 2002-12-10 Mci Communications Corporation Contact server for call center for syncronizing simultaneous telephone calls and TCP/IP communications
US5860068A (en) * 1997-12-04 1999-01-12 Petabyte Corporation Method and system for custom manufacture and delivery of a data product
US6185194B1 (en) * 1997-12-12 2001-02-06 Zip2 System and method for initiating a telephone call utilizing internet initiation
US6606376B1 (en) 1998-02-24 2003-08-12 Anders Trell Trust Method for entrance telephone communication utilizing public subcriber telephone networks
US6038544A (en) * 1998-02-26 2000-03-14 Teknekron Infoswitch Corporation System and method for determining the performance of a user responding to a call
US6766369B1 (en) * 1998-03-09 2004-07-20 Net Zero, Inc. Internet service error tracking
US6055513A (en) * 1998-03-11 2000-04-25 Telebuyer, Llc Methods and apparatus for intelligent selection of goods and services in telephonic and electronic commerce
US20010048737A1 (en) 1998-03-23 2001-12-06 Randy G. Goldberg Method and apparatus for providing advertisement supported communications
US6173279B1 (en) * 1998-04-09 2001-01-09 At&T Corp. Method of using a natural language interface to retrieve information from one or more data resources
US6006197A (en) 1998-04-20 1999-12-21 Straightup Software, Inc. System and method for assessing effectiveness of internet marketing campaign
US6404877B1 (en) 1998-06-02 2002-06-11 At&T Corp. Automated toll-free telecommunications information service and apparatus
US6292799B1 (en) 1998-06-05 2001-09-18 Netnumber.Com, Inc. Method and apparatus to automatically address a voice mail reply to a voice mail message
US6175619B1 (en) * 1998-07-08 2001-01-16 At&T Corp. Anonymous voice communication using on-line controls
DE69940281D1 (en) * 1998-07-22 2009-02-26 Panasonic Corp Digital data recording apparatus and method for copyright protection and for easier reproduction of encrypted data and computer readable recording medium for program recording
US6269336B1 (en) 1998-07-24 2001-07-31 Motorola, Inc. Voice browser for interactive services and methods thereof
US6385583B1 (en) * 1998-10-02 2002-05-07 Motorola, Inc. Markup language for interactive services and methods thereof
US6418202B1 (en) 1998-10-27 2002-07-09 At&T Corp. Spontaneous messaging service for prepaid calling card users
US6430276B1 (en) 1998-11-18 2002-08-06 Hewlett-Packard Company Telecommunications system and method providing generic network access service
US6122355A (en) 1998-12-11 2000-09-19 At&T Corp. Method and apparatus for portable pay phone
US6243684B1 (en) 1999-02-19 2001-06-05 Usada, Inc. Directory assistance system and method utilizing a speech recognition system and a live operator
JP2000242501A (en) * 1999-02-23 2000-09-08 Sony Corp Information processor, information processing method and program writing device
US6223165B1 (en) 1999-03-22 2001-04-24 Keen.Com, Incorporated Method and apparatus to connect consumer to expert
US7245707B1 (en) 1999-03-26 2007-07-17 Chan Hark C Data network based telephone messaging system
US6493324B1 (en) * 1999-03-29 2002-12-10 Worldcom, Inc. Multimedia interface for IP telephony
US6690672B1 (en) * 1999-04-05 2004-02-10 Avaya Inc. Method and apparatus for placing an intelligent telephone call using an internet browser
US6314402B1 (en) 1999-04-23 2001-11-06 Nuance Communications Method and apparatus for creating modifiable and combinable speech objects for acquiring information from a speaker in an interactive voice response system
US6535506B1 (en) 1999-05-11 2003-03-18 Click Interconnect, Inc. Method and apparatus for establishing communications with a remote node on a switched network based on hypertext calling received from a packet network
US6434527B1 (en) 1999-05-17 2002-08-13 Microsoft Corporation Signalling and controlling the status of an automatic speech recognition system for use in handsfree conversational dialogue
US7305473B2 (en) * 1999-05-28 2007-12-04 The Coca-Cola Company Provision of transparent proxy services to a user of a client device
US6269361B1 (en) 1999-05-28 2001-07-31 Goto.Com System and method for influencing a position on a search result list generated by a computer network search engine
US6404864B1 (en) 1999-06-05 2002-06-11 Itxc Corp Article comprising a distributed call monitoring, evaluation and routing system and method therefor
US8065155B1 (en) * 1999-06-10 2011-11-22 Gazdzinski Robert F Adaptive advertising apparatus and methods
US6463136B1 (en) 1999-06-15 2002-10-08 Bellsouth Intellectual Property Corporation Method and system for preserving telephone numbers
US6470079B1 (en) 1999-07-09 2002-10-22 Who's Calling, Inc. System and method for real-time reporting of advertising effectiveness
US6707889B1 (en) 1999-08-24 2004-03-16 Microstrategy Incorporated Multiple voice network access provider system and method
WO2001016842A1 (en) * 1999-08-31 2001-03-08 Eliberation.Com Corporation Methods and systems for a dynamic networked commerce architecture
JP3463010B2 (en) * 1999-09-17 2003-11-05 Necエレクトロニクス株式会社 Information processing apparatus and information processing method
US6404884B1 (en) 1999-10-08 2002-06-11 Grape Technology Group, Inc. Personalized assistance system and method
KR100644579B1 (en) * 1999-10-26 2006-11-13 삼성전자주식회사 Real-time audio/video communication device in internet and method thereof
US6807423B1 (en) 1999-12-14 2004-10-19 Nortel Networks Limited Communication and presence spanning multiple access networks
US6484148B1 (en) 2000-02-19 2002-11-19 John E. Boyd Electronic advertising device and method of using the same
US20030050837A1 (en) 2000-03-09 2003-03-13 Kim Do Sik Method and system providing advertisement using tone of ringing sounds of mobile phone and commerical transaction service in association with the same
US20010051893A1 (en) 2000-03-16 2001-12-13 Atsushi Hanai Online shopping system and method
US6510417B1 (en) * 2000-03-21 2003-01-21 America Online, Inc. System and method for voice access to internet-based information
US6658389B1 (en) 2000-03-24 2003-12-02 Ahmet Alpdemir System, method, and business model for speech-interactive information system having business self-promotion, audio coupon and rating features
US20010037283A1 (en) * 2000-03-27 2001-11-01 Mullaney Julian S. Systems, methods, and computer program products for facilitating the establishment of cross-referral agreements among members of a marketing community
US20010032247A1 (en) * 2000-03-31 2001-10-18 Nobuyuki Kanaya Additional value appended e-mail selecting apparatus, transmitting apparatus, transmitting/receiving system and methods of selecting and transmitting/receiving the same
US6757661B1 (en) 2000-04-07 2004-06-29 Netzero High volume targeting of advertisements to user of online service
US7353267B1 (en) * 2000-04-07 2008-04-01 Netzero, Inc. Targeted network video download interface
ATE387783T1 (en) * 2000-04-10 2008-03-15 Honeywell Int Inc ELECTRONIC MESSAGE SYSTEM FOR USE DURING FLIGHT
US20040204994A1 (en) 2000-04-17 2004-10-14 Olson A. Wayne Escrow management structure
US20020003867A1 (en) * 2000-04-20 2002-01-10 Peter Rothschild Systems and methods for connecting customers to merchants over a voice communication network
US6560576B1 (en) * 2000-04-25 2003-05-06 Nuance Communications Method and apparatus for providing active help to a user of a voice-enabled application
US6493437B1 (en) 2000-04-26 2002-12-10 Genuity Inc. Advertising-subsidized PC-telephony
US6298056B1 (en) 2000-05-19 2001-10-02 Itxc, Inc. Credit based telephony service facilitation
US20020038233A1 (en) * 2000-06-09 2002-03-28 Dmitry Shubov System and method for matching professional service providers with consumers
US7433459B2 (en) * 2000-06-19 2008-10-07 Verizon Services Corp. Methods and apparatus for providing telephone support for internet sales
US6625595B1 (en) 2000-07-05 2003-09-23 Bellsouth Intellectual Property Corporation Method and system for selectively presenting database results in an information retrieval system
US6910035B2 (en) 2000-07-06 2005-06-21 Microsoft Corporation System and methods for providing automatic classification of media entities according to consonance properties
US6771969B1 (en) 2000-07-06 2004-08-03 Harris Corporation Apparatus and method for tracking and communicating with a mobile radio unit
WO2002011004A1 (en) * 2000-07-27 2002-02-07 Yozan Inc. Authentication managing apparatus, and shop communication terminal
US6834048B1 (en) 2000-09-22 2004-12-21 Dialpad Acquisition Corporation Method for initiating internet telephone service from a web page
KR100446289B1 (en) * 2000-10-13 2004-09-01 삼성전자주식회사 Information search method and apparatus using Inverse Hidden Markov Model
JP2002133117A (en) * 2000-10-19 2002-05-10 Hirofumi Kawahara Automobile insurance system, automobile insurance center and automobile
US6636590B1 (en) 2000-10-30 2003-10-21 Ingenio, Inc. Apparatus and method for specifying and obtaining services through voice commands
US20020095331A1 (en) 2001-01-16 2002-07-18 Anas Osman Pay-for-results based marketing
US20020107697A1 (en) * 2001-02-05 2002-08-08 Jensen John Michael Method and system to enable, to organize, to facilitate, and to transact communications for a fee or cost utilizing a network such as the internet
US6546087B2 (en) 2001-02-16 2003-04-08 Siemens Information & Communication Networks, Inc. Method and system for enabling queue camp-on for skills-based routing
US20020120554A1 (en) 2001-02-28 2002-08-29 Vega Lilly Mae Auction, imagery and retaining engine systems for services and service providers
US7249066B1 (en) 2001-03-16 2007-07-24 Identity Branding Incorporated Internet-based sales aid
US20020136377A1 (en) 2001-03-22 2002-09-26 Stewart Brett B. System and method for providing advertisement contingent charge options to a user of a telephony device
US6968174B1 (en) 2001-03-22 2005-11-22 Callwave, Inc. Call routing apparatus
US7107249B2 (en) 2001-03-31 2006-09-12 First Data Corporation Electronic identifier payment systems and methods
US7149210B2 (en) * 2001-04-02 2006-12-12 Demartino Kevin A Wide area multi-service communications network based on dynamic channel switching
AUPR426001A0 (en) * 2001-04-06 2001-05-17 Copy Management Systems Pty Ltd Asset performance management
US7035468B2 (en) * 2001-04-20 2006-04-25 Front Porch Digital Inc. Methods and apparatus for archiving, indexing and accessing audio and video data
US6728731B2 (en) * 2001-05-15 2004-04-27 Yahoo!, Inc. Method and apparatus for accessing targeted, personalized voice/audio web content through wireless devices
US7272645B2 (en) * 2001-05-25 2007-09-18 Sbc Technology Resources, Inc. Method of improving the reliability of peer-to-peer network downloads
US20020193094A1 (en) 2001-06-15 2002-12-19 Lawless John P. Method and system for downloading software products directly to wireless phones
US7269162B1 (en) * 2001-07-20 2007-09-11 Cisco Technology, Inc. Integration of presence services with a network enabled telephony device
US20030031028A1 (en) * 2001-08-09 2003-02-13 Murray Timothy B. Vehicle emergency warning light having TIR lens, LED light engine and heat sink
US20030046231A1 (en) * 2001-08-31 2003-03-06 Robert Wu Access terminal for telecommunication and automated teller machine services
US6704403B2 (en) * 2001-09-05 2004-03-09 Ingenio, Inc. Apparatus and method for ensuring a real-time connection between users and selected service provider using voice mail
US7778872B2 (en) * 2001-09-06 2010-08-17 Google, Inc. Methods and apparatus for ordering advertisements based on performance information and price information
US20030063121A1 (en) * 2001-09-28 2003-04-03 Kumhyr David B. Determining availability of participants or techniques for computer-based communication
US7263669B2 (en) * 2001-11-14 2007-08-28 Denholm Enterprises, Inc. Patient communication method and system
US6996216B2 (en) 2001-12-17 2006-02-07 International Business Machines Corporation Compensating recipients of calls
EP1459234A4 (en) 2001-12-28 2009-06-24 Miva Inc System and method for pay for performance advertising in general media
US7404001B2 (en) * 2002-03-27 2008-07-22 Ericsson Ab Videophone and method for a video call
US6831969B2 (en) * 2002-04-04 2004-12-14 Innomedia Pre Ltd. Caller ID display system for telephony over a packet switched network
US20030190907A1 (en) 2002-04-09 2003-10-09 Smith Ervin M. Hands-free telephone in dispenser
US20040148351A1 (en) 2003-01-29 2004-07-29 Web.De Ag Communications web site
US7076043B2 (en) 2002-05-01 2006-07-11 Sun Microsystems, Inc. System and method of using presence information to delay dialing phone calls initiated by a caller to a callee
AU2003243201A1 (en) * 2002-05-07 2003-11-11 Teltier Technologies, Inc. Method and system for supporting non-intrusive and effective voice communication among mobile users
GB0211644D0 (en) * 2002-05-21 2002-07-03 Wesby Philip B System and method for remote asset management
US7212615B2 (en) * 2002-05-31 2007-05-01 Scott Wolmuth Criteria based marketing for telephone directory assistance
US20030225682A1 (en) 2002-06-03 2003-12-04 Interchange Corp. Competitive bidding in an EDA advertising system
US7596218B2 (en) 2002-06-03 2009-09-29 Local.Com Corporation Enhanced directory assistance services in a telecommunications network
US20040010518A1 (en) 2002-07-03 2004-01-15 Interchange Corp. Methods and system for a distributed advertiser publishing system in enhanced directory assistance services
US20040006511A1 (en) * 2002-07-08 2004-01-08 Interchange Corp. Methods and sytem for a distributed transaction control system in enhanced directory assistance services
US7200413B2 (en) 2002-07-31 2007-04-03 Interchange Corporation Methods and system for enhanced directory assistance using wireless messaging protocols
US6757364B2 (en) 2002-08-23 2004-06-29 Usa★Usa★Usa, Llc Voice-activated telephone directory
KR100492965B1 (en) 2002-09-27 2005-06-07 삼성전자주식회사 Fast search method for nearest neighbor vector quantizer
US20040162757A1 (en) 2002-11-27 2004-08-19 Pisaris-Henderson Craig Allen System and method for pay for performance advertising having biddable advertising units utilizing rotating routing to advertiser websites
HK1057973A2 (en) * 2003-02-12 2004-04-08 Pinpoint Company Ltd Wireless communication device, system and communication method
US7941762B1 (en) * 2003-02-14 2011-05-10 Shoretel, Inc. Display of real time information for selected possibilities
US7702542B2 (en) * 2003-03-28 2010-04-20 Lions & Bears Llc Electronic cards systems and methods
US7769145B2 (en) 2003-05-19 2010-08-03 Q Tech Systems, Inc. Telephone calling interface
ES2364134T3 (en) * 2003-05-19 2011-08-25 Otis Elevator Company ELEVATOR CALL BUTTON WITH TOUCH FEEDBACK.
US7240290B2 (en) 2003-05-19 2007-07-03 John Melideo Telephone call initiation through an on-line search
US7103010B2 (en) 2003-05-19 2006-09-05 Jambotech, Llc Application independent telephone call initiation
US7434175B2 (en) 2003-05-19 2008-10-07 Jambo Acquisition, Llc Displaying telephone numbers as active objects
US7657599B2 (en) * 2003-05-29 2010-02-02 Mindshare Design, Inc. Systems and methods for automatically updating electronic mail access lists
US7359498B2 (en) * 2003-06-12 2008-04-15 Utbk, Inc. Systems and methods for arranging a call
US7698183B2 (en) 2003-06-18 2010-04-13 Utbk, Inc. Method and apparatus for prioritizing a listing of information providers
JP4718767B2 (en) 2003-06-24 2011-07-06 Necインフロンティア株式会社 Communication switch
US20050027669A1 (en) * 2003-07-31 2005-02-03 International Business Machines Corporation Methods, system and program product for providing automated sender status in a messaging session
US7552393B2 (en) * 2003-08-14 2009-06-23 The Hayes-Roth Family Trust Hook-up assistant
WO2005022330A2 (en) * 2003-08-27 2005-03-10 Jambo Networks, Inc. A system and method for providing communication services to mobile device users
US7516086B2 (en) * 2003-09-24 2009-04-07 Idearc Media Corp. Business rating placement heuristic
DE10345072B4 (en) 2003-09-26 2009-02-12 Siemens Enterprise Communications Gmbh & Co. Kg Method for establishing a communication connection in a directly communicating communication network
US7239338B2 (en) * 2003-10-01 2007-07-03 Worldgate Service, Inc. Videophone system and method
US7120235B2 (en) * 2003-10-06 2006-10-10 Ingenio, Inc. Method and apparatus to provide pay-per-call performance based advertising
US8027878B2 (en) 2003-10-06 2011-09-27 Utbk, Inc. Method and apparatus to compensate demand partners in a pay-per-call performance based advertising system
US8024224B2 (en) * 2004-03-10 2011-09-20 Utbk, Inc. Method and apparatus to provide pay-per-call advertising and billing
US7428497B2 (en) 2003-10-06 2008-09-23 Utbk, Inc. Methods and apparatuses for pay-per-call advertising in mobile/wireless applications
CN100527682C (en) * 2003-11-12 2009-08-12 株式会社日立制作所 Conversation Qo S controller
US20050149423A1 (en) * 2003-12-15 2005-07-07 Roseme Stephen J. Option value indicator
US7453993B2 (en) 2003-12-16 2008-11-18 Alcatel Lucent Apparatus and method for a world wide web-based directory with automatic call capability
US20050138564A1 (en) * 2003-12-17 2005-06-23 Fogg Brian J. Visualization of a significance of a set of individual elements about a focal point on a user interface
US20050141439A1 (en) * 2003-12-26 2005-06-30 Wei-Lien Hsu Method for enabling the user of a local computer operating in an instant messenger environment to make a voice communications link
US20050190744A1 (en) * 2004-02-27 2005-09-01 Xian-He Sun Method of informing a callee of an attempted telephone call by means of internet protocol messaging
US7854378B1 (en) * 2004-04-06 2010-12-21 Diebold, Incorporated Automated banking machine system and method
US8015292B2 (en) 2004-08-03 2011-09-06 Gopesh Kumar System and method for connecting consumers with a diverse set of consultants and experts
US7474224B2 (en) * 2004-09-08 2009-01-06 Smart Caregiver Corporation Patient monitor with magnetic disarming circuit
US20060059159A1 (en) * 2004-09-15 2006-03-16 Vu Hao Thi Truong Online dating service providing response status tracking for a service subscriber
US8046472B2 (en) * 2004-09-24 2011-10-25 Gopesh Kumar System and method for expert service providers to provide advice services through unique, empowered independent agents to consumers
US7492880B2 (en) 2004-10-14 2009-02-17 International Business Machines Corporation Method and system for transferring an administrator and associated charges during a multi-way call
US7543032B2 (en) * 2004-10-22 2009-06-02 Canyonbridge, Inc. Method and apparatus for associating messages with data elements
US7440453B2 (en) * 2004-11-12 2008-10-21 International Business Machines Corporation Determining availability of a destination for computer network communications
US20060123127A1 (en) * 2004-12-08 2006-06-08 Evil Twin Studios, Inc. System and method for organizing online communities and virtual dwellings within a virtual environment
US8302011B2 (en) 2005-01-24 2012-10-30 A9.Com, Inc. Technique for modifying presentation of information displayed to end users of a computer system
US8233597B2 (en) 2005-02-11 2012-07-31 Cisco Technology, Inc. System and method for the playing of key phrases in voice mail messages
US8538768B2 (en) 2005-02-16 2013-09-17 Ingenio Llc Methods and apparatuses for delivery of advice to mobile/wireless devices
US8934614B2 (en) * 2005-02-25 2015-01-13 YP Interatcive LLC Systems and methods for dynamic pay for performance advertisements
US8595046B1 (en) * 2005-04-16 2013-11-26 Jennifer Christian System and method for interactive coordination of scheduling, calendaring, and marketing
US7565404B2 (en) * 2005-06-14 2009-07-21 Microsoft Corporation Email emotiflags
CN100544388C (en) * 2005-07-01 2009-09-23 华为技术有限公司 A kind ofly control the method that professional multiple forwardings cover is beaten
US7623643B2 (en) * 2005-07-26 2009-11-24 Microsoft Corporation Augmenting a call with context
US8599832B2 (en) * 2005-09-28 2013-12-03 Ingenio Llc Methods and apparatuses to connect people for real time communications via voice over internet protocol (VOIP)
US20070094073A1 (en) 2005-10-24 2007-04-26 Rohit Dhawan Advertisements for initiating and/or establishing user-advertiser telephone calls
US7522608B2 (en) * 2005-11-01 2009-04-21 Microsoft Corporation Endpoint selection for a call completion response
US7991137B2 (en) 2005-11-09 2011-08-02 Shields Neal G System and method for collaborative and social group phone conferencing
US20070132597A1 (en) * 2005-12-09 2007-06-14 Valence Broadband, Inc. Methods and systems for monitoring patient support exiting and initiating response
US7606357B2 (en) 2005-12-29 2009-10-20 At&T Intellectual Property I, L.P. Caller identification of recipient that answered a simultaneous or routed communication
US8125931B2 (en) 2006-01-10 2012-02-28 Utbk, Inc. Systems and methods to provide availability indication
US20070165841A1 (en) 2006-01-10 2007-07-19 Scott Faber Systems and methods to provide guidance during a process to establish a communication connection
US7720091B2 (en) 2006-01-10 2010-05-18 Utbk, Inc. Systems and methods to arrange call back
US20070271110A1 (en) * 2006-05-22 2007-11-22 Utbk, Inc. Systems and methods to connect customers and marketers
US20070271138A1 (en) * 2006-05-22 2007-11-22 Utbk, Inc. Systems and methods to connect marketing participants and marketers
US7907707B2 (en) * 2006-06-07 2011-03-15 Cisco Technology, Inc. Techniques for storing real-time voice messages in a caller's voicemail box
US9800732B2 (en) * 2006-12-13 2017-10-24 Ebay Inc. Method and system to contact a provider
US8532276B2 (en) 2007-06-26 2013-09-10 Ingenio Llc Systems and methods to provide telephonic connections via concurrent calls
US8660966B2 (en) * 2007-08-31 2014-02-25 Microsoft Corporation Payment system and method
US8838476B2 (en) * 2007-09-07 2014-09-16 Yp Interactive Llc Systems and methods to provide information and connect people for real time communications
FI120645B (en) * 2008-02-11 2010-01-15 Kone Corp Elevator call and display arrangement
US8036349B2 (en) * 2008-03-28 2011-10-11 International Business Machines Corporation Ordering telephone messages left for a user
TWI378684B (en) * 2008-04-29 2012-12-01 Quanta Comp Inc Communication method and system of internet
US8458456B2 (en) * 2008-04-30 2013-06-04 Nec Europe Ltd. Method and system for verifying the identity of a communication partner
US20090288123A1 (en) * 2008-05-14 2009-11-19 Havlovick Ron G Passenger tray convenience system
WO2010013804A1 (en) * 2008-07-31 2010-02-04 日本電気株式会社 Anonymous communication system
JP5093012B2 (en) * 2008-09-11 2012-12-05 富士通株式会社 COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL METHOD, AND COMMUNICATION CONTROL PROGRAM
US8233604B2 (en) * 2008-09-16 2012-07-31 International Business Machines Corporation Automated call routing based on an active presence profile
US10204317B2 (en) * 2009-03-09 2019-02-12 Sabre Glbl Inc. Post-booking travel assistance and organization
KR101633928B1 (en) * 2009-08-11 2016-06-27 엘지전자 주식회사 A method and an apparatus for providing social network service
JP5218357B2 (en) * 2009-09-25 2013-06-26 ブラザー工業株式会社 COMMUNICATION METHOD, COMMUNICATION SYSTEM, TERMINAL DEVICE
US8565388B2 (en) * 2010-07-06 2013-10-22 Millind Mittal Method and apparatus for data channel augmented auto attended voice response systems
US8423436B2 (en) * 2010-09-18 2013-04-16 Oracle International Corporation Data-driven customizable payroll element template
US20120265567A1 (en) * 2011-04-14 2012-10-18 Art Technology Group, Inc. Offline conversion reporting
US8478252B2 (en) * 2011-05-15 2013-07-02 Pinger, Inc. Enforcing limits on free and/or discounted electronic communications
KR101860022B1 (en) * 2011-09-21 2018-05-23 삼성전자 주식회사 Method and apparatus for providing information about a call recipient in a user device
US20130211975A1 (en) * 2011-11-26 2013-08-15 Kevin James Masterson Portable electronic kit for payroll voucher, time tracking, and production administration in the entertainment industry
US20130275516A1 (en) * 2012-04-11 2013-10-17 Apple Inc. Avoiding Communication at Designated No-Contact Times

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5793851A (en) * 1993-05-17 1998-08-11 Albertson; David V. Pay telephone communication system
US6393412B1 (en) * 1999-09-23 2002-05-21 Peter Deep Method for allowing users to purchase professional services in a private chat room through a service brokerage via the internet
US20010026609A1 (en) * 1999-12-30 2001-10-04 Lee Weinstein Method and apparatus facilitating the placing, receiving, and billing of telephone calls
US7117152B1 (en) * 2000-06-23 2006-10-03 Cisco Technology, Inc. System and method for speech recognition assisted voice communications
US6865540B1 (en) * 2000-08-09 2005-03-08 Ingenio, Inc. Method and apparatus for providing group calls via the internet
US20030152207A1 (en) * 2002-02-13 2003-08-14 Kevin Ryan Telecommunications and cellular telephone homepage call screening control center
US20060069610A1 (en) * 2004-03-19 2006-03-30 Pascal Rossini Browsing device and platform for management and distrubtion in server mode, in particular for the display of advertising links
US20070174124A1 (en) * 2005-02-25 2007-07-26 Utbk, Inc. Methods and Apparatuses for Prioritizing Featured Listings
US20070025338A1 (en) * 2005-07-26 2007-02-01 Smartlink Ltd.. Software-based solutions for telephone network bridging
US20070111716A1 (en) * 2005-11-14 2007-05-17 Leigh Randolph J Mobile-device directed conference calling

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080046573A1 (en) * 2006-08-21 2008-02-21 Nokia Corporation Mechanism for charging and session handling supporting forking
US8850012B2 (en) * 2006-08-21 2014-09-30 Nokia Corporation Mechanism for charging and session handling supporting forking
US9704182B2 (en) 2007-01-18 2017-07-11 Yellowpages.Com Llc Systems and methods to provide connections via callback acceptance
US9462121B2 (en) 2007-02-22 2016-10-04 Yellowpages.Com Llc Systems and methods to confirm initiation of a callback
US10089658B2 (en) 2007-04-09 2018-10-02 Yellowpages.Com Llc Systems and methods to provide connections via callback acceptance cross-reference to related applications
US8170036B1 (en) * 2008-05-12 2012-05-01 Nextel Communications, Inc. Systems and methods of voice chat
EP2396734A4 (en) * 2009-02-11 2014-06-11 Volt Delta Resources Llc System and method to facilitate voice communication between members of social networking websites while maintaining member privacy
EP2396734A1 (en) * 2009-02-11 2011-12-21 Volt Delta Resources LLC System and method to facilitate voice communication between members of social networking websites while maintaining member privacy
US20140337765A1 (en) * 2013-05-07 2014-11-13 Yp Interactive Llc Systems and methods to provide multiple connections for anonymous communication in a virtual environment
US10097592B2 (en) * 2013-05-07 2018-10-09 Yellowpages.Com Llc Systems and methods to provide multiple connections for anonymous communication in a virtual environment
US20170046337A1 (en) * 2015-08-13 2017-02-16 Language Line Services, Inc. Language interpretation/translation resource configuration
US9986089B2 (en) 2015-08-25 2018-05-29 At&T Intellectual Property I, L.P. Optimizing channel selection for customer care
US10182152B2 (en) 2015-08-25 2019-01-15 At&T Intellectual Property I, L.P. Optimizing channel selection for customer care

Also Published As

Publication number Publication date
US8125931B2 (en) 2012-02-28
US20070287488A1 (en) 2007-12-13
EP1971907A4 (en) 2013-08-07
US20070161386A1 (en) 2007-07-12
WO2007081432A2 (en) 2007-07-19
US9106473B2 (en) 2015-08-11
US20070291783A1 (en) 2007-12-20
WO2007081432A3 (en) 2007-12-06
EP1971907A2 (en) 2008-09-24

Similar Documents

Publication Publication Date Title
US8937887B2 (en) Systems and methods to provide communication connections
US7720091B2 (en) Systems and methods to arrange call back
US8125931B2 (en) Systems and methods to provide availability indication
US9183559B2 (en) Systems and methods to convert a call generated from an advertisement
US8681778B2 (en) Systems and methods to manage privilege to speak
US20070189520A1 (en) Systems and Methods to Facilitate Transition from Communication to Commerce
US8848696B2 (en) Systems and methods to facilitate searches of communication references
US9197479B2 (en) Systems and methods to manage a queue of people requesting real time communication connections
US8077849B2 (en) Systems and methods to block communication calls
US20070165608A1 (en) Systems and Methods to Prioritize a Queue
US9209984B2 (en) Systems and methods to facilitate communications
US20070165804A1 (en) Systems and Methods to Convert a Free Call to a Fee-Based Call
US20070165841A1 (en) Systems and methods to provide guidance during a process to establish a communication connection
US8838476B2 (en) Systems and methods to provide information and connect people for real time communications
US8724789B2 (en) Systems and methods to connect people for real time communications via directory assistance
US20070174187A1 (en) Systems and methods to process payment
US20080275813A1 (en) Systems and Methods to Provide Connections for Real Time Communications and Commerce
US8837710B2 (en) Systems and methods to facilitate searches

Legal Events

Date Code Title Description
AS Assignment

Owner name: UTBK, INC., DELAWARE

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:ALTBERG, EBBE;FABER, SCOTT;HIRSON, RON;AND OTHERS;REEL/FRAME:018924/0017;SIGNING DATES FROM 20070207 TO 20070221

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION