WO2001072020A2 - Instant messaging with additional voice communication - Google Patents

Instant messaging with additional voice communication Download PDF

Info

Publication number
WO2001072020A2
WO2001072020A2 PCT/US2001/008558 US0108558W WO0172020A2 WO 2001072020 A2 WO2001072020 A2 WO 2001072020A2 US 0108558 W US0108558 W US 0108558W WO 0172020 A2 WO0172020 A2 WO 0172020A2
Authority
WO
WIPO (PCT)
Prior art keywords
host
recipient
sender
instant messaging
talk
Prior art date
Application number
PCT/US2001/008558
Other languages
French (fr)
Other versions
WO2001072020A3 (en
Inventor
Shuwu Wu
Original Assignee
America Online, 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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=26885660&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=WO2001072020(A2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by America Online, Inc. filed Critical America Online, Inc.
Priority to AU2001245826A priority Critical patent/AU2001245826A1/en
Priority to JP2001570058A priority patent/JP4467220B2/en
Priority to CA002403520A priority patent/CA2403520C/en
Priority to DE60132433T priority patent/DE60132433T2/en
Priority to EP01918787A priority patent/EP1264469B1/en
Publication of WO2001072020A2 publication Critical patent/WO2001072020A2/en
Publication of WO2001072020A3 publication Critical patent/WO2001072020A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • H04L51/046Interoperability with other network applications or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/56Unified messaging, e.g. interactions between e-mail, instant messaging or converged IP messaging [CPM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1083In-session procedures
    • H04L65/1094Inter-user-equipment sessions transfer or sharing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • 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/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/22Arrangements for supervision, monitoring or testing
    • H04M3/2236Quality of speech transmission monitoring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/50Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
    • H04M3/53Centralised arrangements for recording incoming messages, i.e. mailbox systems
    • H04M3/533Voice mail systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/56Arrangements for connecting several subscribers to a common circuit, i.e. affording conference facilities
    • H04M3/567Multimedia conference systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M7/00Arrangements for interconnection between switching centres
    • H04M7/0003Interconnection between telephone networks and data networks
    • H04M7/0009Interconnection between telephone networks and data networks where voice calls remain entirely in the telephone network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2203/00Aspects of automatic or semi-automatic exchanges
    • H04M2203/20Aspects of automatic or semi-automatic exchanges related to features of supplementary services
    • H04M2203/2066Call type detection of indication, e.g. voice or fax, mobile of fixed, PSTN or IP
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2203/00Aspects of automatic or semi-automatic exchanges
    • H04M2203/45Aspects of automatic or semi-automatic exchanges related to voicemail messaging
    • H04M2203/4536Voicemail combined with text-based messaging
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/22Arrangements for supervision, monitoring or testing
    • H04M3/26Arrangements for supervision, monitoring or testing with means for applying test signals or for measuring
    • H04M3/28Automatic routine testing ; Fault testing; Installation testing; Test methods, test equipment or test arrangements therefor
    • H04M3/30Automatic routine testing ; Fault testing; Installation testing; Test methods, test equipment or test arrangements therefor for subscriber's lines, for the local loop
    • H04M3/305Automatic routine testing ; Fault testing; Installation testing; Test methods, test equipment or test arrangements therefor for subscriber's lines, for the local loop testing of physical copper line parameters, e.g. capacitance or resistance

Definitions

  • the present invention relates generally to transferring data between subscribers of a communications system and more particularly to transferring audio data between subscribers of an instant messaging host.
  • Online service providers are constantly offering new services and upgrading existing services to enhance their subscribers' online experience. Subscribers have on-demand access to news, weather, financial, sports, and entertainment services as well as the ability to transmit electronic messages and to participate in online discussion groups. For example, subscribers of online service providers such as America Online or CompuServe may view and retrieve information on a wide variety of topics from servers located throughout the world. A server may be maintained by the service provider or by a third party provider who makes information .and services available through the worldwide network of computers that make up the online service.
  • America Online has provided subscribers with the ability to send and receive instant messages.
  • Instant messages are private online conversations between two or more people who have subscribed to the instant messaging service and have installed the necessary software. Because such online conversations take place in essentially real time, instant messaging can provide immediate access to desired information. Instant messaging is becoming a preferred means of communicating among online subscribers.
  • electronic data is transferred between users of a communications system by enabling instant messaging communication between a sender an at least one recipient through an instant messaging host.
  • voice communication is enabled between the sender and the recipient through the instant messaging host.
  • Implementations may include one or more of the following features. For example, implementations may include receiving and authenticating a text instant message from the sender at the instant messaging host; dete ⁇ nining capabilities of the recipient; reporting the capabilities of the recipient; receiving a request to establish voice communication from the sender and/or the recipient; and/or authenticating the request.
  • Authenticating may include identifying a screen name and/or an IP address of the sender and/or the recipient.
  • Determining capabilities of the recipient may include identifying hardware or software associated with the recipient.
  • a user interface may be displayed according to the capabilities of the recipient.
  • Voice communication may be enabled by establishing a generic signaling interface channel, a control channel, and an audio channel between the sender and the recipient.
  • a mode UDP test may be attempted on the audio channel.
  • the control channel may include a TCP/IP socket.
  • the audio channel may include a UDP or TCP channel.
  • the computer readable medium may comprise a disc, a client device, a host device, and/or a propagated signal.
  • Fig. 1 is a block diagram of a communications system.
  • Figs. 2-5 are expansions of the block diagram of Fig. 1.
  • Fig. 6 is a flow chart of a communications method that may be implemented by the systems of Figs. 1-5.
  • Figs. 7-10 are illustrations of different graphical user interfaces that may be provided by the systems of Figs. 1-5. DETAILED DESCRIPTION
  • FIGs. 1-5 describe a communications system for implementing techniques for transferring electronic data.
  • FIGs. 1-5 describe a communications system for implementing techniques for transferring electronic data.
  • FIGs. 1-5 describe a communications system for implementing techniques for transferring electronic data.
  • FIG. 1-5 describe a communications system for implementing techniques for transferring electronic data.
  • FIG. 1-5 describe a communications system for implementing techniques for transferring electronic data.
  • FIG. 1-5 describe a communications system for implementing techniques for transferring electronic data.
  • FIG. 1-5 describe a communications system for implementing techniques for transferring electronic data.
  • FIG. 1-5 describe a communications system for implementing techniques for transferring electronic data.
  • FIG. 1-5 describe a communications system for implementing techniques for transferring electronic data.
  • FIG. 1-5 describe a communications system for implementing techniques for transferring electronic data.
  • FIG. 1-5 describe a communications system for implementing techniques for transferring electronic data.
  • FIG. 1-5 describe a communications system for implementing techniques for transferring electronic data.
  • a communications system 100 is capable of delivering and exchanging data between a client system 105 and a host system 110 through a communications link 115.
  • the client system 105 typically includes one or more client devices 120 and/or client controllers 125.
  • the client system 105 may include one or more general-purpose computers (e.g., personal computers), one or more special- purpose computers (e.g., devices specifically programmed to communicate with each other and/or the host system 110), or a combination of one or more general-purpose computers and one or more special-purpose computers.
  • the client system 105 may be arranged to operate within or in concert with one or more other systems, such as for example, one or more LANs ("Local Area Networks") and/or one or more WANs ("Wide Area Networks").
  • LANs Local Area Networks
  • WANs Wide Area Networks
  • the client device 120 is generally capable of executing instructions under the command of a client controller 125.
  • the client device 120 is connected to the client controller 125 by a wired or wireless data pathway 130 capable of delivering data.
  • the client device 120 and client controller 125 each typically includes one or more hardware components and/or software components.
  • An example of a client device 120 is a general-purpose computer (e.g., a personal computer) capable of responding to and executing instructions in a defined manner. Other examples include a special-purpose computer, a workstation, a server, a device, a component, other equipment or some combination thereof capable of responding to and executing instructions.
  • An example of client controller 125 is a software application loaded on the client device 120 for commanding and directing communications enabled by the client device 120. Other examples include a program, a piece of code, an instruction, a device, a computer, a computer system, or a combination thereof, for independently or collectively instructing the client device 120 to interact and operate as described herein.
  • the client controller 125 may be embodied permanently or temporarily in any type of machine, component, equipment, storage medium, or propagated signal capable of providing instructions to the client device 120.
  • the communications link 115 typically includes a delivery network 160 making a direct or indirect communication between the client system 105 and the host system 110, irrespective of physical separation.
  • a delivery network 160 include the Internet, the World Wide Web, WANs, LANs, analog or digital wired and wireless telephone networks (e.g. PSTN, ISDN, or xDSL), radio, television, cable, satellite, and/ or any other delivery mechanism for carrying data.
  • the communications link 115 may include communication pathways 150, 155 that enable communications through the one or more delivery networks 160 described above. Each of the communication pathways 150, 155 may include, for example, a wired, wireless, cable or satellite communication pathway.
  • the host system 110 includes a host device 135 capable of executing instructions under the command and direction of a host controller 140.
  • the host device 135 is connected to the host controller 140 by a wired or wireless data pathway 145 capable of carrying and delivering data.
  • the host system 110 typically includes one or more host devices 135 and/or host controllers 140.
  • the host system 110 may include one or more general-purpose computers (e.g., personal computers), one or more special-purpose computers (e.g., devices specifically programmed to communicate with each other and/or the client system 105), or a combination of one or more general-purpose computers and one or more special-purpose computers.
  • the host system 110 may be arranged to operate within or in concert with one or more other systems, such as, for example, one or more LANs ("Local Area Networks") and/or one or more WANs ("Wide Area Networks").
  • LANs Local Area Networks
  • WANs Wide Area Networks
  • the host device 135 and host controller 140 each typically includes one or more hardware components and/or software components.
  • An example of a host device 135 is a general-purpose computer (e.g., a personal computer) capable of responding to and executing instructions in a defined manner. Other examples include a special-purpose computer, a workstation, a server, a device, a component, other equipment or some combination thereof capable of responding to and executing instructions.
  • An example of host controller 140 is a software application loaded on the host device 135 for commanding and directing communications enabled by the host device 135.
  • the host controller 140 may be embodied permanently or temporarily in .any type of machine, component, equipment, storage medium, or propagated signal capable of providing instructions to the host device 135.
  • Fig. 2 illustrates a communication system 200 including a client system 205 communicating with a host system 210 through a communications link 215.
  • Client system 205 typically includes one or more client devices 220 and one or more client controllers 225 for controlling the client devices 220.
  • Host system 210 typically includes one or more host devices 235 and one or more host controllers 240 for controlling the host devices 235.
  • the communications link 215 may include communication pathways 250, 255 enabling communications through the one or more delivery networks 260.
  • Examples of each element within the communication system of Fig. 2 are broadly described above with respect to Fig. 1.
  • the host system 210 and communications link 215 typically have attributes comparable to those described with respect to host system 110 and communications link 115 of Fig. 1.
  • the client system 205 of Fig. 2 typically has attributes comparable to and illustrates one possible embodiment of the client system 105 of Fig. 1.
  • the client device 220 typically includes a general purpose computer 270 having an internal or external storage 272 for storing data and programs such as an operating system 274 (e.g., DOS, WindowsTM, Windows 95TM, Windows 98TM, Windows 2000TM, Windows NTTM, OS/2, or Linux) and one or more application programs.
  • an operating system 274 e.g., DOS, WindowsTM, Windows 95TM, Windows 98TM, Windows 2000TM, Windows NTTM, OS/2, or Linux
  • application programs e.g., DOS, WindowsTM, Windows 95TM, Windows 98TM, Windows 2000TM, Windows NTTM, OS/2, or Linux
  • Examples of application programs include authoring applications 276 (e.g., word processing, database programs, spreadsheet programs, or graphics programs) capable of generating documents or other electronic content; client applications 278 (e.g., AOL client, CompuServe client, AIM client, AOL TV client, or ISP client) capable of communicating with other computer users, accessing various computer resources, and viewing, creating, or otherwise manipulating electronic content; and browser applications 280 (e.g., Netscape's Navigator or Microsoft's Internet Explorer) capable of rendering standard Internet content.
  • the general-purpose computer 270 also includes a central processing unit 282 (CPU) for executing instructions in response to commands from the client controller 225.
  • CPU central processing unit
  • the client controller 225 includes one or more of the application programs installed on the internal or external storage 272 of the general-purpose computer 270. In another implementation, the client controller 225 includes application programs externally stored in and performed by one or more device(s) external to the general- purpose computer 270.
  • the general-purpose computer typically will include a communication device 284 for sending and receiving data.
  • a communication device 284 is a modem.
  • Other examples include a transceiver, a set-top box, a communication card, a satellite dish, an antenna, or another network adapter capable of transmitting and receiving data over the communications link 215 through a wired or wireless data pathway 250.
  • the general- purpose computer 270 also may include a TV (“television") tuner 286 for receiving television programming in the form of broadcast, satellite, and/or cable TV signals.
  • the client device 220 can selectively and/or simultaneously display network content received by communications device 284 and television programming content received by the TV tuner 286.
  • the general-purpose computer 270 typically will include an input/output interface 288 for wired or wireless connection to various peripheral devices 290.
  • peripheral devices 290 include, but are not limited to, a mouse 291, a mobile phone 292, a personal digital assistant 293 (PDA), a keyboard 294, a display monitor 295 with or without a touch screen input, a TV remote control 296 for receiving information from and rendering information to subscribers, and a video input device 298.
  • Fig. 2 illustrates devices such as a mobile telephone 292, a PDA 293, and a TV remote control 296 as being peripheral with respect to the general-purpose computer 270
  • such devices may themselves include the functionality of the general-purpose computer 270 and operate as the client device 220.
  • the mobile phone 292 or the PDA 293 may include computing and networking capabilities and function as a client device 220 by accessing the delivery network 260 and communicating with the host system 210.
  • the client system 205 may include one, some or all of the components and devices described above.
  • a communications system 300 is capable of delivering and exchanging information between a client system 305 and a host system 310 through a communication link 315.
  • Client system 305 typically includes one or more client devices 320 and one or more client controllers 325 for controlling the client devices 320.
  • Host system 310 typically includes one or more host devices 335 and one or more host controllers 340 for controlling the host devices 335.
  • the communications link 315 may include communication pathways 350, 355 enabling communications through the one or more delivery networks 360.
  • each element within the communication system of Fig. 3 are broadly described above with respect to Figs. 1 and 2.
  • the client system 305 and the communications link 315 typically have attributes comparable to those described with respect to client systems 105 and 205 and communications links 115 and 215 of Figs. 1 and 2.
  • the host system 310 of Fig. 3 may have attributes comparable to and illustrates one possible embodiment of the host systems 110 and 210 shown in Figs. 1 and 2, respectively.
  • the host system 310 includes a host device 335 and a host controller 340.
  • the host controller 340 is generally capable of transmitting instructions to any or all of the elements of the host device 335.
  • the host controller 340 includes one or more software applications loaded on the host device 335.
  • the host controller 340 may include any of several other programs, machines, and devices operating independently or collectively to control the host device 335.
  • the host device 335 includes a login server 370 for enabling access by subscribers and routing communications between the client system 305 and other elements of the host device 335.
  • the host device 335 also includes various host complexes such as the depicted OSP ("Online Service Provider") host complex 380 and IM ("Instant Messaging") host complex 390.
  • the client system 305 includes communication software, for example, an OSP client application and an IM client application.
  • the OSP and IM communication software applications are designed to facilitate the subscriber's interactions with the respective services and, in particular, may provide access to all the services available within the respective host complexes.
  • the OSP host complex 380 supports different services, such as email, discussion groups, chat, news services, and Internet access.
  • the OSP host complex 380 is generally designed with an architecture that enables the machines within the OSP host complex 380 to communicate with each other and employs certain protocols (i.e., standards, formats, conventions, rules, and structures) to transfer data.
  • the OSP host complex 380 ordinarily employs one or more OSP protocols and custom dialing engines to enable access by selected client applications.
  • the OSP host complex 380 may define one or more specific protocols for each service based on a common, underlying proprietary protocol.
  • the IM host complex 390 is generally independent of the OSP host complex 380, and supports instant messaging services irrespective of a subscriber's network or Internet access. Thus, the TM host complex 390 allows subscribers to send and receive instant messages, whether or not they have access to any particular ISP.
  • the IM host complex 390 may support associated services, such as administrative matters, advertising, directory services, chat, and interest groups related to the instant messaging.
  • the IM host complex 390 has an architecture that enables all of the machines within the IM host complex to communicate with each other. To transfer data, the IM host complex 390 employs one or more standard or exclusive BVI protocols.
  • the host device 335 may include one or more gateways that connect and therefore link complexes, such as the OSP host complex gateway 385 and the IM host complex gateway 395.
  • the OSP host complex gateway 385 and the IM host complex 395 gateway may directly or indirectly link the OSP host complex 380 with the TM host complex 390 through a wired or wireless pathway.
  • the OSP host complex gateway 385 and the IM host complex gateway 395 are privy to information regarding the protocol type anticipated by a destination complex, which enables any necessary protocol conversion to be performed incident to the transfer of data from one complex to another.
  • the OSP host complex 380 and IM host complex 390 generally use different protocols such that transferring data between the complexes requires protocol conversion by or at the request of the OSP host complex gateway 385 and/or the IM host complex gateway 395.
  • a communications system 400 is capable of delivering and exchanging information between a client system 405 and a host system 410 through a communication link 415.
  • Client system 405 typically includes one or more client devices 420 and one or more client controllers 425 for controlling the client devices 420.
  • Host system 410 typically includes one or more host devices 435 and one or more host controllers 440 for controlling the host devices 435.
  • the communications link 415 may include communication pathways 450, 455 enabling communications through the one or more delivery networks 460.
  • the client system 405 may access the Internet 465 through the host system 410.
  • each element within the communication system of Fig. 4 are broadly described above with respect to Figs. 1-3.
  • the client system 405 and the communications link 415 typically have attributes comparable to those described with respect to client systems 105, 205, and 305 and communications links 115, 215, and 315 of Figs. 1-3.
  • the host system 410 of Fig. 4 may have attributes comparable to and illustrates one possible embodiment of the host systems 110, 210, and 310 shown in Figs. 1- 3, respectively.
  • Fig. 4 describes an aspect of the host system 410, focusing primarily on one particular implementation of OSP host complex 480.
  • the delivery network 460 is generally a telephone network.
  • the client system 405 includes a client device 420 and a client controller 425.
  • the client controller 425 is generally capable of establishing a connection to the host system 410, including the OSP host complex 480, the IM host complex 490 and/or the Internet 465.
  • the client controller 425 includes an OSP application for communicating with servers in the OSP host complex 480 using exclusive OSP protocols.
  • the client controller 425 also may include applications, such as an IM client application, and/or an Internet browser application, for communicating with the IM host complex 490 and the Internet 465.
  • the host system 410 includes a host device 435 and a host controller 440.
  • the host controller 440 is generally capable of transmitting instructions to any or all of the elements of the host device 435.
  • the host controller 440 includes one or more software applications loaded on one or more elements of the host device 435.
  • the host controller 440 may include any of several other programs, machines, and devices operating independently or collectively to control the host device 435.
  • the host system 410 includes a login server 470 capable of enabling communications with and authorizing access by client systems 405 to various elements of the host system 410, including an OSP host complex 480 and an IM host complex 490.
  • the login server 470 may implement one or more authorization procedures to enable simultaneous access to the OSP host complex 480 and the IM host complex 490.
  • the OSP host complex 480 and the IM host complex 490 are connected through one or more OSP host complex gateways 485 and one or more IM host complex gateways 495.
  • Each OSP host complex gateway 485 and EVI host complex gateway 495 may perform any protocol conversions necessary to enable communication between the OSP host complex 480, the IM host complex 490, and the Internet 465.
  • the OSP host complex 480 supports a set of services from one or more servers located internal to and external from the OSP host complex 480.
  • Servers external to the OSP host complex 480 generally may be viewed as existing on the Internet 465.
  • Servers internal to the OSP complex 480 may be arranged in one or more configurations. For example, servers may be arranged in centralized or localized clusters in order to distribute servers and subscribers within the OSP host complex 480.
  • the OSP host complex 480 includes a routing processor 4802.
  • the routing processor 4802 will examine an address field of a data request, use a mapping table to determine the appropriate destination for the data request, and direct the data request to the appropriate destination.
  • the client system 405 may generate information requests, convert the requests into data packets, sequence the data packets, perform error checking and other packet-switching techniques, and transmit the data packets to the routing processor 4802.
  • the routing processor 4802 may directly or indirectly route the data packets to a specified destination within or outside of the OSP host complex 480.
  • the routing processor 4802 may direct the data request to a local server 4804. Li the event that the data request cannot be satisfied locally, the routing processor 4802 may direct the data request externally to the Internet 465 or the IM host complex 490 through the gateway 485.
  • the OSP host complex 480 also includes a proxy server 4806 for directing data requests and/or otherwise facilitating communication between the client system 405 and the Internet 465 through.
  • the proxy server 4802 may include an IP ("Internet Protocol") tunnel for converting data from OSP protocol into standard Internet protocol and transmitting the data to the Internet 465. The IP tunnel also converts data received from the Internet in the standard Internet protocol back into the OSP protocol and sends the converted data to the routing processor 4802 for delivery back to the client system 405.
  • the proxy server 4806 also may allow the client system 405 to use standard Internet protocols and formatting to access the OSP host complex 480 and the Internet 465.
  • the subscriber can use an OSP TV client application having an embedded browser application installed on the client system 405 to generate a request in standard Internet protocol, such as HTTP ("HyperText Transport Protocol").
  • HTTP HyperText Transport Protocol
  • data packets may be encapsulated inside a standard Internet tunneling protocol, such as, for example, UDP ("User Datagram Protocol") and routed to the proxy server 4806.
  • the proxy server 4806 may include a L2TP ("Layer Two Tunneling Protocol") tunnel capable of establishing a point-to-point protocol (PPP) session with the client system 405.
  • L2TP Layer Two Tunneling Protocol
  • the proxy server 4806 also may act as a buffer between the client system 405 and the Internet 465, and may implement content filtering and time saving techniques. For example, the proxy server 4806 can check parental controls settings of the client system 405 and request and transmit content from the Internet 465 according to the parental control settings.
  • the proxy server 4806 may include one or more caches for storing frequently accessed information. If requested data is determined to be stored in the caches, the proxy server 4806 may send the information to the client system 405 from the caches and avoid the need to access the Internet 465.
  • a communications system 500 is capable of delivering and exchanging information between a client system 505 and a host system 510 through a communication link 515.
  • Client system 505 typically includes one or more client devices 520 and one or more client controllers 525 for controlling the client devices 520.
  • Host system 510 typically includes one or more host devices 535 and one or more host controllers 540 for controlling the host devices 535.
  • the communications link 515 may include communication pathways 550, 555 enabling communications through the one or more delivery networks 560.
  • the client system 505 may access the Internet 565 through the host system 510.
  • the client system 505 and the communications link 515 typically have attributes comparable to those described with respect to client systems 105, 205, 305, and 405 and communications links 115, 215, 315, and 415 of Figs. 1-4.
  • the host system 510 of Fig. 5 may have attributes comparable to and illustrates one possible embodiment of the host systems 110, 210, 310, and 410 shown in Figs. 1-4, respectively.
  • Fig. 5 describes an aspect of the host system 510, focusing primarily on one particular implementation of IM host complex 590.
  • the delivery network 560 is generally a telephone network.
  • the client system 505 includes a client device 520 and a client controller 525.
  • the client controller 525 is generally capable of establishing a connection to the host system 510, including the OSP host complex 580, the IM host complex 590 and/or the Internet 565.
  • the client controller 525 includes an IM application for communicating with servers in the IM host complex 590 utilizing exclusive IM protocols.
  • the client controller 525 also may include applications, such as an OSP client application, and/or an Internet browser application for communicating with the OSP host complex 580 and the Internet 565, respectively.
  • the host system 510 includes a host device 535 and a host controller 540.
  • the host controller 540 is generally capable of transmitting instructions to any or all of the elements of the host device 535.
  • the host controller 540 includes one or more software applications loaded on one or more elements of the host device 535.
  • the host controller 540 may include any of several other programs, machines, and devices operating independently or collectively to control the host device 535.
  • the host system 510 includes a login server 570 capable of enabling communications with and authorizing access by client systems 505 to various elements of the host system 510, including an OSP host complex 580 and an IM host complex 590.
  • the login server 570 may implement one or more authorization procedures to enable simultaneous access to the OSP host complex 580 and the IM host complex 590.
  • the OSP host complex 580 and the IM host complex 590 are connected through one or more OSP host complex gateways 585 and one or more IM host complex gateways 595.
  • Each OSP host complex gateway 585 and IM host complex gateway 595 may perform any protocol conversions necessary to enable communication between the OSP host complex 580, the IM host complex 590, and the Internet 565.
  • the client system 505 To access the IM host complex 590 to begin an instant messaging session, the client system 505 establishes a connection to the login server 570.
  • the login server 570 typically determines whether the particular subscriber is authorized to access the IM host complex 590 by verifying a subscriber identification and password. If the subscriber is authorized to access the IM host complex 590, the login server 570 employs a hashing technique on the subscriber's screen name to identify a particular IM server 5902 for use during the subscriber's session.
  • the login server 570 provides the client system 505 with the IP address of the particular IM server 5902, gives the client system 505 an encrypted key (i.e., a cookie), and breaks the connection.
  • the client system 505 then uses the IP address to establish a connection to the particular IM server 5902 through the communications link 515, and obtains access to that IM server 5902 using the encrypted key.
  • the client system 505 will be equipped with a Winsock API ("Application Programming Interface") that enables the client system 505 to establish an open TCP connection to the IM server 5902.
  • the client system 505 may directly or indirectly transmit data to and access content from the IM server 5902 and one or more associated domain servers 5904.
  • the IM server 5902 supports the fundamental instant messaging services and the domain servers 5904 may support associated services, such as, for example, administrative matters, directory services, chat and interest groups.
  • the purpose of the domain servers 5904 is to lighten the load placed on the IM server 5902 by assuming responsibility for some of the services within the IM host complex 590.
  • a subscriber can use the IM client application to view whether particular subscribers ("buddies") are online, exchange instant messages with particular subscribers, participate in group chat rooms, trade files such as pictures, invitations or documents, find other subscribers with similar interests, get customized news and stock quotes, and search the Web.
  • the IM server 5902 is directly or indirectly connected to a routing gateway 5906.
  • the routing gateway 5906 facilitates the connection between the IM server 5902 and one or more alert multiplexors 5908, for example, by serving as a link minimization tool or hub to connect several IM servers to several alert multiplexors.
  • an alert multiplexor 5908 maintains a record of alerts and subscribers registered to receive the alerts.
  • a subscriber can register for and/or receive one or more types of alerts.
  • the connection pathway between the client system 505 and the alert multiplexor 5908 is determined by employing another hashing technique at the IM server 5902 to identify the particular alert multiplexor 5908 to be used for the subscriber's session.
  • the IM server 5902 provides the client system 505 with the IP address of the particular alert multiplexor 5908 and gives the client system 505 an encrypted key (i.e., a cookie).
  • the client system 505 uses the IP address to connect to the particular alert multiplexor 5908 through the communication link 515 and obtains access to the alert multiplexor 5908 using the encrypted key.
  • the alert multiplexor 5908 is connected to an alert gate 5910 that, like the IM host complex gateway 595, is capable of performing the necessary protocol conversions to form a bridge to the OSP host complex 580.
  • the alert gate 5910 is the interface between the IM host complex 590 and the physical servers, such as servers in the OSP host complex 580, where state changes are occurring. In general, the information regarding state changes will be gathered and used by the IM host complex 590.
  • the alert multiplexor 5908 also may communicate with the OSP host complex 580 through the IM gateway 595, for example, to provide the servers and subscribers of the OSP host complex 580 with certain information gathered from the alert gate 5910.
  • the alert gate 5910 can detect an alert feed corresponding to a particular type of alert.
  • the alert gate 5910 may include a piece of code (alert receive code) capable of interacting with another piece of code (alert broadcast code) on the physical server where a state change occurs.
  • the alert receive code installed on the alert gate 5910 instructs the alert broadcast code installed on the physical server to send an alert feed to the alert gate 5910 upon the occurrence of a particular state change.
  • the alert gate 5910 contacts the alert multiplexor 5908, which in turn, informs the client system 505 of the detected alert feed.
  • the TM host complex 590 also includes a subscriber profile server 5912 connected to a database 5914 for storing large amounts of subscriber profile data.
  • the subscriber profile server 5912 may be used to enter, retrieve, edit, manipulate, or otherwise process subscriber profile data.
  • a subscriber's profile data includes, for example, the subscriber's buddy list, alert preferences, designated stocks, identified interests, and geographic location. The subscriber may enter, edit and/or delete profile data using an installed IM client application on the client system 505 to interact with the subscriber profile server 5912.
  • the subscriber does not have to reenter or update such information in the event that the subscriber accesses the IM host complex 590 using new or a different client system 505. Accordingly, when a subscriber accesses the IM host complex 590, the IM server 5902 can instruct the subscriber profile server 5912 to retrieve the subscriber's profile data from the database 5914 and to provide, for example, the subscriber's buddy list to the IM server 5902 and the subscriber's alert preferences to the alert multiplexor 5908.
  • the subscriber profile server 5912 also may communicate with other servers in the OSP host complex 590 to share subscriber profile data with other seivices. Alternatively, user profile data may be saved locally on the client device 505.
  • a sender 602a, a recipient 602b, and a host 604 interact according to a procedure 600 to transfer audio data.
  • the procedure 600 may be implemented by any suitable type of hardware, software, device, computer, computer system, equipment, component, program, application, code, storage medium, or propagated signal.
  • each element of Fig. 6 are broadly described above with respect to Figs. 1-5.
  • the sender 602a and the recipient 602b typically have attributes comparable to those described with respect to client devices 120, 220, 320, 420, and 520 and/or client controllers 125, 225, 325, 425, and 525.
  • the host 604 typically has attributes comparable to those described with respect to host device 135, 235, 335, 435, and 535 and/or host controllers 140, 240, 340, 440, and 540.
  • the sender 602a, the recipient 602b, and/or the host 604 may be directly or indirectly interconnected through a known or described delivery network.
  • the sender 602a and the recipient 602b are each associated with a subscriber. To allow file transfers, each subscriber sets certain preferences for permitting files to be transferred to and from other subscribers. For example, the sender and recipient may identify screen names of subscribers who have permission to send files to them or retrieve files from them. Typically, each subscriber will be presented with a graphical user interface that permits selection among various transfer preferences. A subscriber's transfer preferences may be maintained locally at the client or remotely at the host 604.
  • the sender 602a and the recipient 602b communicate over an open connection, such as an open TCP connection established through the host 604.
  • the sender 602a and the recipient 602b each include a Winsock API for establishing an open TCP connection to the host 604 and a client application for accessing the host 604.
  • the sender 602a and the recipient 602b connect to the host 604 to establish the connection.
  • the sender 602a and the recipient 602b use the connection to communicate with the host 604 and with each other.
  • the connection remains open during the time that the sender 602a and the recipient 602b are accessing the host 604.
  • the sender 602a and the recipient 602b each send a separate request to the host 604.
  • the request identifies the associated subscriber to the host 604 and to other subscribers using a unique screen name.
  • the host 604 verifies a subscriber's information (e.g., screen name and password) against data stored in a subscriber database. If the subscriber's information is verified, the host 604 authorizes access. If the subscriber's information is not verified, the host 604 denies access and sends an error message.
  • a subscriber's information e.g., screen name and password
  • a "buddy list” is displayed to the subscriber.
  • a subscriber's buddy list is a user interface that lists the online status and capabilities of certain screen names, i.e., "buddies", identified the subscriber, h particular, the host 604 informs the sender whether identified buddies are online, i.e., currently accessing the host 604. The host 604 also informs any subscriber who has identified the sender as a buddy that the sender is currently online.
  • the buddy list also facilitates instant messaging communication between subscribers. A subscriber can activate an instant messaging message user interface pre-addressed to a buddy simply by clicking the screen name of a buddy on the buddy list.
  • a recipient is not a "buddy"
  • the first subscriber must activate a blank instant messaging user interface and then address the instant message to the screen name of the intended recipient.
  • a subscriber can look up the screen name of an intended recipient using the intended recipient's e-mail address.
  • a sender 602a, a recipient 602b, and a host 604 interact according to a procedure 600 to transfer audio data.
  • the transfer of audio data extends the functionality of instant messaging by allowing the sender 602a and the recipient 602b to communicate peer to peer via audio, i.e., microphone and speaker.
  • the sender initiates the process 600 by designating one or more recipients to receive an instant message (e.g., a text message). If the intended recipients are "buddies" of the sender 602a, the sender 602a may confirm the online status and capabilities of each recipient prior to sending the video message by viewing the "buddy list.” After a subscriber composes an instant message and clicks a SEND button, the instant message is sent from the sender 602a to the host (step 605).
  • the host 704 After receiving the instant message from the sender 602a, the host 704 authenticates the instant message (step 610). h addition to the textual body, the instant message may include header information identifying the message type, the screen name and/or IP address of the sender and recipient, and a randomly generated security number. The instant message may be authenticated by, for example, using a reverse look-up table to match the screen names and/or IP addresses with those of valid subscribers. In the event that either the sender 602a or the recipient 602b is not associated with a valid subscriber, the host 604 reports an error message.
  • the host 604 determines the capabilities of the recipient (step 615). For example, the host 604 may monitor and update the online status, client version, and device type of all connected subscribers in real time. The capability to receive audio data may depend on hardware (e.g., device type), software (e.g., client version), and/or transfer preferences (e.g., blocked screen names). To be talk enabled, both the talk software and audio equipment must be available. The host 604 then reports the capabilities of the recipient to the sender (step 620).
  • the sender 602a Upon receiving the report from the host 604, the sender 602a displays a Ul according to the capabilities of the sender and or the recipient 702b (step 625). If the sender 602a is not talk enabled, then a standard instant messaging user interface is displayed. If the sender 602a is talk enabled, but the recipient 602b is not talk enabled, a START TALK Ul having a grayed START TALK button is displayed. If both the sender 602a and the recipient 602b are talk enabled, a START TALK Ul having a functioning START TALK button is displayed. The process 600 continues with the host 604 sending the instant message to the recipient 602b (step 630).
  • the recipient 602b accepts the initial text message from the host 604 (step 635) and displays a Ul according to the capabilities of the sender 602a and/or the recipient 602b (step 640). If the recipient 602b is not talk enabled, then a standard instant messaging Ul is displayed. If the recipient 602b is talk enabled, but the sender 602a is not talk enabled, an instant messaging Ul having a grayed START TALK button is displayed. If both the recipient 602b and the sender 602a are talk enabled, an instant messaging Ul with a functioning START TALK button is displayed.
  • both the sender 602a and the recipient 602b have a START TALK Ul displayed.
  • START TALK Ul When the START TALK Ul is displayed, a subscriber can initiate a talk session.
  • the sender 602a initiates a talk session by sending a talk request to the host 604 (step 645).
  • the talk request may contain information including, but not limited to, the message type, the screen name and/or IP address of the sender and recipient, and a randomly generated security number.
  • the sender 602a clicks the START TALK Ul the START TALK Ul transitions to an END TALK Ul.
  • the host 604 Upon receiving the talk request, the host 604 authenticates the talk request from the sender 602a (step 650). The host 604 may authenticate the talk request by, for example, using a reverse look-up table to match the screen names and or IP addresses with those of valid subscribers, hi the event that either the sender 602a or the recipient 602b is not associated with a valid subscriber, the host 604 reports an error message.
  • the host 604 After verifying the talk request, the host 604 sends the talk request to the recipient 602b (step 655).
  • the START TALK Ul displayed by the recipient 620b transitions to a CONNECT Ul (step 660).
  • the CONNECT Ul informs the recipient 602b that the sender 602a wants to engage in a talk session. At this point, the recipient 602b may ignore the talk request, accept the talk request, or terminate the instant message session.
  • the CONNECT Ul transitions to the END TALK Ul and the host 604 establishes a talk session (step 670).
  • a talk session is active, users can talk to each other.
  • END TALK Ul is displayed by both the sender 602a and the recipient 602b.
  • the talk session (steps 675a-b) remains active until one of the users clicks END TALK Ul.
  • both the sender 602a and the recipient 602b will display the START TALK Ul, allowing either side to initiate yet another talk session.
  • the CONNECT Ul at the recipient 602b transitions back to the START TALK Ul. If both users click the START TALK Ul simultaneously, the host will ignore one of the START TALK clicks such that one user will display the END TALK Ul and the other will display the CONNECT Ul. If the sender clicks the START TALK Ul prior to the recipient 602b accepting the initial text message, the recipient 602b does not display the START TALK Ul, but instead immediately displays the CONNECT Ul.
  • a talk tool establishes an active talk session using three comiriunication chiannels: a Generic Signaling Interface (GSI) channel, a control channel, and an audio channel.
  • GSI Generic Signaling Interface
  • the talk tool uses the GSI channel to establish the initial connection.
  • the local IP addresses are exchanged.
  • the GSI channel is no longer used.
  • the exchange of local IP addresses is only done when both users permit such an exchange, i.e., by clicking on the CONNECT Ul.
  • the control channel is a TCP/IP socket, for which the IP address and port number of the remote side are obtained through the GSI channel.
  • the control channel is used to send/receive control attributes of the talk session while the session is active. For example, because some firewalls will not allow an external connection to a socket on the inside of the firewall, the talk tool attempts a connection from both sides of the session. TMs action allows a connection to be made if there is a maximum of one firewall within the connection. If there is a firewall on both sides, the chances are that no connection can be made and the talk session will fail. To work across two firewalls, the user must obtain the port range used by talk such that one of the firewalls can be modified to permit the range to pass through the firewall.
  • the audio channel is a TCP/IP socket used to transport audio packets.
  • This channel can either be UDP or TCP.
  • UDP is used since it minimizes latency. However, because some firewalls will not pass through UDP packets, the audio channel may have to use TCP.
  • the talk tool indicates the mode (i.e., TCP, UDP), or employs an auto mode in which the talk tool attempts a UDP test and resorts to TCP upon failure of UDP. Talk sessions may work in either full or half duplex. Full duplex is when both users can talk at the same time. Half duplex is where only one user can talk at a time.
  • a client device is determined to be incapable of handling full duplex, for example, if the CPU is too slow to compress/decompress audio simultaneously and/or the microphone and speakers cannot be opened simultaneously. If a client device is marked as half duplex, then any talk session used by that client device becomes a half duplex session, regardless of whether another device can handle duplex mode.
  • a TALK LISTEN button on the END TALK Ul supports half duplex operation. This button has two states: LISTEN or TALK. If the talk session is full duplex, this button is not shown. If the button reads TALK at both the sender 702a and the recipient 702b (Initial Half Duplex), the first user to click TALK is allowed to talk and the other user is forced to listen.
  • the user who is listening has a grayed out TALK button (Half Duplex Listen) and the user who is talking has a LISTEN button (Talking Half Duplex).
  • TALK Haf Duplex Listen
  • LISTEN button Talking Half Duplex
  • the talk tool that enables the audio transfer (talk) functionality may be any type of client controller (e.g., software, application, program) loaded on to a client device.
  • the talk tool supports use by different OSP and IM clients.
  • the talk tool is responsible for responding to user interfaces and translating user commands into the appropriate actions with the client device. For example, the talk tool opens, reads, writes, and closes the physical components on the client devices needed for audio.
  • the talk tool also controls audio and control channels with callbacks being executed to indicate status change.
  • the talk tool determines if the client device is capable of handling full duplex.
  • the talk tool also may allow the user to control the volume for the speaker and microphone. In one implementation, the user speaks into a microphone and the audio data are recorded into memory.
  • a slider control is used to adjust the input level to an optimal value. After the speaker stops speaking, the speaker's stored speech is played back through the computer's audio output device. The speaker level slider control may be used to adjust the output level to an acceptable volume. If the user starts to speak again, the talk tool reverts to the record mode and the cycle repeats. Once the user is satisfied with the settings, the user can save the settings for use in subsequent talk sessions.
  • the talk tool may support additional functionality including, but not limited to, multi- conferencing, hold, and muting.
  • Multi-conferencing allows more than two users to engage in a talk session.
  • Hold allows the suspension of an active talk session in order to connect to another talk session. Muting rums off the microphone to prevent user feedback/echo during full duplex mode.
  • the talk tool also may include security features to protect the integrity of transferred data.
  • the talk tool may compress data using a proprietary algorithm or may send the data in a proprietary protocol.
  • the talk tool may select the port numbers at random from a large range.
  • an instant messaging talk session is similar to a telephonic session in that it has the same three states: not connected (hung up), connecting (ringing), and connected (talking). As described above, these states and the ability to switch among them are supported by corresponding UIs, namely a START TALK Ul (not connected), a CONNECT Ul (ringing), and an END TALK Ul (connected).
  • Fig. 7 illustrates one example of a START TALK Ul. As shown in Fig. 7, a START
  • Ul 700 includes an instant message box 705 having a START TALK button 710 for requesting a talk session.
  • Fig. 8 illustrates one example of a CONNECT Ul.
  • a Ul 800 includes an instant message box 805 having a CONNECT button 810 for accepting a request to initiate a talk session.
  • Fig. 9 illustrates one example of an END TALK Ul.
  • a Ul 900 includes an instant message box 905 having an END TALK button 910 for terminating a talk session.
  • Fig. 10 illustrate one example of a half duplex user interface.
  • a Ul 1000 includes an instant message box 1005 having a TALK button 1010.
  • the bottom 1010 is greyed out or otherwise disabled when the other party is talking.

Abstract

Systems and techniques for transferring electronic data include enabling instant messaging communication between a sender (602a) an at least one recipient (602b) through an instant messaging host (604). In addition, voice communication is enabled between the sender (602a) and the recipient (602b) through the instant messaging host (604).

Description

Voice Instant Messaging
This application claims the benefit of U.S. Provisional Application No. 60/189,974 filed March 17, 2000 and U.S. Provisional Application No. 60/239,917 filed October 13, 2000.
TECHNICAL FIELD The present invention relates generally to transferring data between subscribers of a communications system and more particularly to transferring audio data between subscribers of an instant messaging host.
BACKGROUND
Online service providers are constantly offering new services and upgrading existing services to enhance their subscribers' online experience. Subscribers have on-demand access to news, weather, financial, sports, and entertainment services as well as the ability to transmit electronic messages and to participate in online discussion groups. For example, subscribers of online service providers such as America Online or CompuServe may view and retrieve information on a wide variety of topics from servers located throughout the world. A server may be maintained by the service provider or by a third party provider who makes information .and services available through the worldwide network of computers that make up the online service.
America Online has provided subscribers with the ability to send and receive instant messages. Instant messages are private online conversations between two or more people who have subscribed to the instant messaging service and have installed the necessary software. Because such online conversations take place in essentially real time, instant messaging can provide immediate access to desired information. Instant messaging is becoming a preferred means of communicating among online subscribers. SUMMARY
In one general aspect, electronic data is transferred between users of a communications system by enabling instant messaging communication between a sender an at least one recipient through an instant messaging host. In addition, voice communication is enabled between the sender and the recipient through the instant messaging host.
Implementations may include one or more of the following features. For example, implementations may include receiving and authenticating a text instant message from the sender at the instant messaging host; deteπnining capabilities of the recipient; reporting the capabilities of the recipient; receiving a request to establish voice communication from the sender and/or the recipient; and/or authenticating the request. Authenticating may include identifying a screen name and/or an IP address of the sender and/or the recipient. Determining capabilities of the recipient may include identifying hardware or software associated with the recipient. A user interface may be displayed according to the capabilities of the recipient. Voice communication may be enabled by establishing a generic signaling interface channel, a control channel, and an audio channel between the sender and the recipient. A mode UDP test may be attempted on the audio channel. The control channel may include a TCP/IP socket. The audio channel may include a UDP or TCP channel.
These and other general aspects may be implemented by an apparatus and/or by a computer program stored on a computer readable medium. The computer readable medium may comprise a disc, a client device, a host device, and/or a propagated signal.
Other features and advantages will be apparent from the following description, including the drawings, and from the claims.
DESCRIPTION OF THE DRAWINGS
Fig. 1 is a block diagram of a communications system.
Figs. 2-5 are expansions of the block diagram of Fig. 1.
Fig. 6 is a flow chart of a communications method that may be implemented by the systems of Figs. 1-5. Figs. 7-10 are illustrations of different graphical user interfaces that may be provided by the systems of Figs. 1-5. DETAILED DESCRIPTION
For illustrative purposes, Figs. 1-5 describe a communications system for implementing techniques for transferring electronic data. For brevity, several elements in the figures described below are represented as monolithic entities. However, as would be understood by one skilled in the art, these elements each may include numerous interconnected computers and components designed to perform a set of specified operations and/or dedicated to a particular geographical region.
Referring to Fig. 1, a communications system 100 is capable of delivering and exchanging data between a client system 105 and a host system 110 through a communications link 115. The client system 105 typically includes one or more client devices 120 and/or client controllers 125. For example, the client system 105 may include one or more general-purpose computers (e.g., personal computers), one or more special- purpose computers (e.g., devices specifically programmed to communicate with each other and/or the host system 110), or a combination of one or more general-purpose computers and one or more special-purpose computers. The client system 105 may be arranged to operate within or in concert with one or more other systems, such as for example, one or more LANs ("Local Area Networks") and/or one or more WANs ("Wide Area Networks").
The client device 120 is generally capable of executing instructions under the command of a client controller 125. The client device 120 is connected to the client controller 125 by a wired or wireless data pathway 130 capable of delivering data.
The client device 120 and client controller 125 each typically includes one or more hardware components and/or software components. An example of a client device 120 is a general-purpose computer (e.g., a personal computer) capable of responding to and executing instructions in a defined manner. Other examples include a special-purpose computer, a workstation, a server, a device, a component, other equipment or some combination thereof capable of responding to and executing instructions. An example of client controller 125 is a software application loaded on the client device 120 for commanding and directing communications enabled by the client device 120. Other examples include a program, a piece of code, an instruction, a device, a computer, a computer system, or a combination thereof, for independently or collectively instructing the client device 120 to interact and operate as described herein. The client controller 125 may be embodied permanently or temporarily in any type of machine, component, equipment, storage medium, or propagated signal capable of providing instructions to the client device 120.
The communications link 115 typically includes a delivery network 160 making a direct or indirect communication between the client system 105 and the host system 110, irrespective of physical separation. Examples of a delivery network 160 include the Internet, the World Wide Web, WANs, LANs, analog or digital wired and wireless telephone networks (e.g. PSTN, ISDN, or xDSL), radio, television, cable, satellite, and/ or any other delivery mechanism for carrying data. The communications link 115 may include communication pathways 150, 155 that enable communications through the one or more delivery networks 160 described above. Each of the communication pathways 150, 155 may include, for example, a wired, wireless, cable or satellite communication pathway.
The host system 110 includes a host device 135 capable of executing instructions under the command and direction of a host controller 140. The host device 135 is connected to the host controller 140 by a wired or wireless data pathway 145 capable of carrying and delivering data.
The host system 110 typically includes one or more host devices 135 and/or host controllers 140. For example, the host system 110 may include one or more general-purpose computers (e.g., personal computers), one or more special-purpose computers (e.g., devices specifically programmed to communicate with each other and/or the client system 105), or a combination of one or more general-purpose computers and one or more special-purpose computers. The host system 110 may be arranged to operate within or in concert with one or more other systems, such as, for example, one or more LANs ("Local Area Networks") and/or one or more WANs ("Wide Area Networks").
The host device 135 and host controller 140 each typically includes one or more hardware components and/or software components. An example of a host device 135 is a general-purpose computer (e.g., a personal computer) capable of responding to and executing instructions in a defined manner. Other examples include a special-purpose computer, a workstation, a server, a device, a component, other equipment or some combination thereof capable of responding to and executing instructions. An example of host controller 140 is a software application loaded on the host device 135 for commanding and directing communications enabled by the host device 135. Other examples include a program, a piece of code, an instruction, a device, a computer, a computer system, or a combination thereof, for independently or collectively instructing the host device 135 to interact and operate as described herein. The host controller 140 may be embodied permanently or temporarily in .any type of machine, component, equipment, storage medium, or propagated signal capable of providing instructions to the host device 135.
Fig. 2 illustrates a communication system 200 including a client system 205 communicating with a host system 210 through a communications link 215. Client system 205 typically includes one or more client devices 220 and one or more client controllers 225 for controlling the client devices 220. Host system 210 typically includes one or more host devices 235 and one or more host controllers 240 for controlling the host devices 235. The communications link 215 may include communication pathways 250, 255 enabling communications through the one or more delivery networks 260.
Examples of each element within the communication system of Fig. 2 are broadly described above with respect to Fig. 1. In particular, the host system 210 and communications link 215 typically have attributes comparable to those described with respect to host system 110 and communications link 115 of Fig. 1. Likewise, the client system 205 of Fig. 2 typically has attributes comparable to and illustrates one possible embodiment of the client system 105 of Fig. 1.
The client device 220 typically includes a general purpose computer 270 having an internal or external storage 272 for storing data and programs such as an operating system 274 (e.g., DOS, Windows™, Windows 95™, Windows 98™, Windows 2000™, Windows NT™, OS/2, or Linux) and one or more application programs. Examples of application programs include authoring applications 276 (e.g., word processing, database programs, spreadsheet programs, or graphics programs) capable of generating documents or other electronic content; client applications 278 (e.g., AOL client, CompuServe client, AIM client, AOL TV client, or ISP client) capable of communicating with other computer users, accessing various computer resources, and viewing, creating, or otherwise manipulating electronic content; and browser applications 280 (e.g., Netscape's Navigator or Microsoft's Internet Explorer) capable of rendering standard Internet content. The general-purpose computer 270 also includes a central processing unit 282 (CPU) for executing instructions in response to commands from the client controller 225. In one implementation, the client controller 225 includes one or more of the application programs installed on the internal or external storage 272 of the general-purpose computer 270. In another implementation, the client controller 225 includes application programs externally stored in and performed by one or more device(s) external to the general- purpose computer 270.
The general-purpose computer typically will include a communication device 284 for sending and receiving data. One example of the communication device 284 is a modem. Other examples include a transceiver, a set-top box, a communication card, a satellite dish, an antenna, or another network adapter capable of transmitting and receiving data over the communications link 215 through a wired or wireless data pathway 250. The general- purpose computer 270 also may include a TV ("television") tuner 286 for receiving television programming in the form of broadcast, satellite, and/or cable TV signals. As a result, the client device 220 can selectively and/or simultaneously display network content received by communications device 284 and television programming content received by the TV tuner 286.
The general-purpose computer 270 typically will include an input/output interface 288 for wired or wireless connection to various peripheral devices 290. Examples of peripheral devices 290 include, but are not limited to, a mouse 291, a mobile phone 292, a personal digital assistant 293 (PDA), a keyboard 294, a display monitor 295 with or without a touch screen input, a TV remote control 296 for receiving information from and rendering information to subscribers, and a video input device 298.
Although Fig. 2 illustrates devices such as a mobile telephone 292, a PDA 293, and a TV remote control 296 as being peripheral with respect to the general-purpose computer 270, in another implementation, such devices may themselves include the functionality of the general-purpose computer 270 and operate as the client device 220. For example, the mobile phone 292 or the PDA 293 may include computing and networking capabilities and function as a client device 220 by accessing the delivery network 260 and communicating with the host system 210. Furthermore, the client system 205 may include one, some or all of the components and devices described above. Referring to Fig. 3, a communications system 300 is capable of delivering and exchanging information between a client system 305 and a host system 310 through a communication link 315. Client system 305 typically includes one or more client devices 320 and one or more client controllers 325 for controlling the client devices 320. Host system 310 typically includes one or more host devices 335 and one or more host controllers 340 for controlling the host devices 335. The communications link 315 may include communication pathways 350, 355 enabling communications through the one or more delivery networks 360.
Examples of each element within the communication system of Fig. 3 are broadly described above with respect to Figs. 1 and 2. In particular, the client system 305 and the communications link 315 typically have attributes comparable to those described with respect to client systems 105 and 205 and communications links 115 and 215 of Figs. 1 and 2. Likewise, the host system 310 of Fig. 3 may have attributes comparable to and illustrates one possible embodiment of the host systems 110 and 210 shown in Figs. 1 and 2, respectively.
The host system 310 includes a host device 335 and a host controller 340. The host controller 340 is generally capable of transmitting instructions to any or all of the elements of the host device 335. For example, in one implementation, the host controller 340 includes one or more software applications loaded on the host device 335. However, in other implementations, as described above, the host controller 340 may include any of several other programs, machines, and devices operating independently or collectively to control the host device 335.
The host device 335 includes a login server 370 for enabling access by subscribers and routing communications between the client system 305 and other elements of the host device 335. The host device 335 also includes various host complexes such as the depicted OSP ("Online Service Provider") host complex 380 and IM ("Instant Messaging") host complex 390. To enable access to these host complexes by subscribers, the client system 305 includes communication software, for example, an OSP client application and an IM client application. The OSP and IM communication software applications are designed to facilitate the subscriber's interactions with the respective services and, in particular, may provide access to all the services available within the respective host complexes. Typically, the OSP host complex 380 supports different services, such as email, discussion groups, chat, news services, and Internet access. The OSP host complex 380 is generally designed with an architecture that enables the machines within the OSP host complex 380 to communicate with each other and employs certain protocols (i.e., standards, formats, conventions, rules, and structures) to transfer data. The OSP host complex 380 ordinarily employs one or more OSP protocols and custom dialing engines to enable access by selected client applications. The OSP host complex 380 may define one or more specific protocols for each service based on a common, underlying proprietary protocol.
The IM host complex 390 is generally independent of the OSP host complex 380, and supports instant messaging services irrespective of a subscriber's network or Internet access. Thus, the TM host complex 390 allows subscribers to send and receive instant messages, whether or not they have access to any particular ISP. The IM host complex 390 may support associated services, such as administrative matters, advertising, directory services, chat, and interest groups related to the instant messaging. The IM host complex 390 has an architecture that enables all of the machines within the IM host complex to communicate with each other. To transfer data, the IM host complex 390 employs one or more standard or exclusive BVI protocols.
The host device 335 may include one or more gateways that connect and therefore link complexes, such as the OSP host complex gateway 385 and the IM host complex gateway 395. The OSP host complex gateway 385 and the IM host complex 395 gateway may directly or indirectly link the OSP host complex 380 with the TM host complex 390 through a wired or wireless pathway. Ordinarily, when used to facilitate a link between complexes, the OSP host complex gateway 385 and the IM host complex gateway 395 are privy to information regarding the protocol type anticipated by a destination complex, which enables any necessary protocol conversion to be performed incident to the transfer of data from one complex to another. For instance, the OSP host complex 380 and IM host complex 390 generally use different protocols such that transferring data between the complexes requires protocol conversion by or at the request of the OSP host complex gateway 385 and/or the IM host complex gateway 395.
Referring to Fig. 4, a communications system 400 is capable of delivering and exchanging information between a client system 405 and a host system 410 through a communication link 415. Client system 405 typically includes one or more client devices 420 and one or more client controllers 425 for controlling the client devices 420. Host system 410 typically includes one or more host devices 435 and one or more host controllers 440 for controlling the host devices 435. The communications link 415 may include communication pathways 450, 455 enabling communications through the one or more delivery networks 460. As shown, the client system 405 may access the Internet 465 through the host system 410.
Examples of each element within the communication system of Fig. 4 are broadly described above with respect to Figs. 1-3. In particular, the client system 405 and the communications link 415 typically have attributes comparable to those described with respect to client systems 105, 205, and 305 and communications links 115, 215, and 315 of Figs. 1-3. Likewise, the host system 410 of Fig. 4 may have attributes comparable to and illustrates one possible embodiment of the host systems 110, 210, and 310 shown in Figs. 1- 3, respectively. However, Fig. 4 describes an aspect of the host system 410, focusing primarily on one particular implementation of OSP host complex 480. For purposes of communicating with an OSP host complex 480, the delivery network 460 is generally a telephone network.
The client system 405 includes a client device 420 and a client controller 425. The client controller 425 is generally capable of establishing a connection to the host system 410, including the OSP host complex 480, the IM host complex 490 and/or the Internet 465. In one implementation, the client controller 425 includes an OSP application for communicating with servers in the OSP host complex 480 using exclusive OSP protocols. The client controller 425 also may include applications, such as an IM client application, and/or an Internet browser application, for communicating with the IM host complex 490 and the Internet 465.
The host system 410 includes a host device 435 and a host controller 440. The host controller 440 is generally capable of transmitting instructions to any or all of the elements of the host device 435. For example, in one implementation, the host controller 440 includes one or more software applications loaded on one or more elements of the host device 435. However, in other implementations, as described above, the host controller 440 may include any of several other programs, machines, and devices operating independently or collectively to control the host device 435. The host system 410 includes a login server 470 capable of enabling communications with and authorizing access by client systems 405 to various elements of the host system 410, including an OSP host complex 480 and an IM host complex 490. The login server 470 may implement one or more authorization procedures to enable simultaneous access to the OSP host complex 480 and the IM host complex 490. The OSP host complex 480 and the IM host complex 490 are connected through one or more OSP host complex gateways 485 and one or more IM host complex gateways 495. Each OSP host complex gateway 485 and EVI host complex gateway 495 may perform any protocol conversions necessary to enable communication between the OSP host complex 480, the IM host complex 490, and the Internet 465.
The OSP host complex 480 supports a set of services from one or more servers located internal to and external from the OSP host complex 480. Servers external to the OSP host complex 480 generally may be viewed as existing on the Internet 465. Servers internal to the OSP complex 480 may be arranged in one or more configurations. For example, servers may be arranged in centralized or localized clusters in order to distribute servers and subscribers within the OSP host complex 480.
In the implementation of Fig. 4, the OSP host complex 480 includes a routing processor 4802. In general, the routing processor 4802 will examine an address field of a data request, use a mapping table to determine the appropriate destination for the data request, and direct the data request to the appropriate destination. In a packet-based implementation, the client system 405 may generate information requests, convert the requests into data packets, sequence the data packets, perform error checking and other packet-switching techniques, and transmit the data packets to the routing processor 4802. Upon receiving data packets from the client system 405, the routing processor 4802 may directly or indirectly route the data packets to a specified destination within or outside of the OSP host complex 480. For example, in the event that a data request from the client system 405 can be satisfied locally, the routing processor 4802 may direct the data request to a local server 4804. Li the event that the data request cannot be satisfied locally, the routing processor 4802 may direct the data request externally to the Internet 465 or the IM host complex 490 through the gateway 485. The OSP host complex 480 also includes a proxy server 4806 for directing data requests and/or otherwise facilitating communication between the client system 405 and the Internet 465 through. The proxy server 4802 may include an IP ("Internet Protocol") tunnel for converting data from OSP protocol into standard Internet protocol and transmitting the data to the Internet 465. The IP tunnel also converts data received from the Internet in the standard Internet protocol back into the OSP protocol and sends the converted data to the routing processor 4802 for delivery back to the client system 405.
The proxy server 4806 also may allow the client system 405 to use standard Internet protocols and formatting to access the OSP host complex 480 and the Internet 465. For example, the subscriber can use an OSP TV client application having an embedded browser application installed on the client system 405 to generate a request in standard Internet protocol, such as HTTP ("HyperText Transport Protocol"). In a packet-based implementation, data packets may be encapsulated inside a standard Internet tunneling protocol, such as, for example, UDP ("User Datagram Protocol") and routed to the proxy server 4806. The proxy server 4806 may include a L2TP ("Layer Two Tunneling Protocol") tunnel capable of establishing a point-to-point protocol (PPP) session with the client system 405.
The proxy server 4806 also may act as a buffer between the client system 405 and the Internet 465, and may implement content filtering and time saving techniques. For example, the proxy server 4806 can check parental controls settings of the client system 405 and request and transmit content from the Internet 465 according to the parental control settings. In addition, the proxy server 4806 may include one or more caches for storing frequently accessed information. If requested data is determined to be stored in the caches, the proxy server 4806 may send the information to the client system 405 from the caches and avoid the need to access the Internet 465.
Referring to Fig. 5, a communications system 500 is capable of delivering and exchanging information between a client system 505 and a host system 510 through a communication link 515. Client system 505 typically includes one or more client devices 520 and one or more client controllers 525 for controlling the client devices 520. Host system 510 typically includes one or more host devices 535 and one or more host controllers 540 for controlling the host devices 535. The communications link 515 may include communication pathways 550, 555 enabling communications through the one or more delivery networks 560. As shown, the client system 505 may access the Internet 565 through the host system 510.
Examples of each element within the communication system of Fig. 5 are broadly described above with respect to Figs. 1-4. In particular, the client system 505 and the communications link 515 typically have attributes comparable to those described with respect to client systems 105, 205, 305, and 405 and communications links 115, 215, 315, and 415 of Figs. 1-4. Likewise, the host system 510 of Fig. 5 may have attributes comparable to and illustrates one possible embodiment of the host systems 110, 210, 310, and 410 shown in Figs. 1-4, respectively. However, Fig. 5 describes an aspect of the host system 510, focusing primarily on one particular implementation of IM host complex 590. For purposes of communicating with the IM host complex 590, the delivery network 560 is generally a telephone network.
The client system 505 includes a client device 520 and a client controller 525. The client controller 525 is generally capable of establishing a connection to the host system 510, including the OSP host complex 580, the IM host complex 590 and/or the Internet 565. In one implementation, the client controller 525 includes an IM application for communicating with servers in the IM host complex 590 utilizing exclusive IM protocols. The client controller 525 also may include applications, such as an OSP client application, and/or an Internet browser application for communicating with the OSP host complex 580 and the Internet 565, respectively.
The host system 510 includes a host device 535 and a host controller 540. The host controller 540 is generally capable of transmitting instructions to any or all of the elements of the host device 535. For example, in one implementation, the host controller 540 includes one or more software applications loaded on one or more elements of the host device 535.
However, in other implementations, as described above, the host controller 540 may include any of several other programs, machines, and devices operating independently or collectively to control the host device 535.
The host system 510 includes a login server 570 capable of enabling communications with and authorizing access by client systems 505 to various elements of the host system 510, including an OSP host complex 580 and an IM host complex 590. The login server 570 may implement one or more authorization procedures to enable simultaneous access to the OSP host complex 580 and the IM host complex 590. The OSP host complex 580 and the IM host complex 590 are connected through one or more OSP host complex gateways 585 and one or more IM host complex gateways 595. Each OSP host complex gateway 585 and IM host complex gateway 595 may perform any protocol conversions necessary to enable communication between the OSP host complex 580, the IM host complex 590, and the Internet 565.
To access the IM host complex 590 to begin an instant messaging session, the client system 505 establishes a connection to the login server 570. The login server 570 typically determines whether the particular subscriber is authorized to access the IM host complex 590 by verifying a subscriber identification and password. If the subscriber is authorized to access the IM host complex 590, the login server 570 employs a hashing technique on the subscriber's screen name to identify a particular IM server 5902 for use during the subscriber's session. The login server 570 provides the client system 505 with the IP address of the particular IM server 5902, gives the client system 505 an encrypted key (i.e., a cookie), and breaks the connection. The client system 505 then uses the IP address to establish a connection to the particular IM server 5902 through the communications link 515, and obtains access to that IM server 5902 using the encrypted key. Typically, the client system 505 will be equipped with a Winsock API ("Application Programming Interface") that enables the client system 505 to establish an open TCP connection to the IM server 5902.
Once a connection to the IM server 5902 has been established, the client system 505 may directly or indirectly transmit data to and access content from the IM server 5902 and one or more associated domain servers 5904. The IM server 5902 supports the fundamental instant messaging services and the domain servers 5904 may support associated services, such as, for example, administrative matters, directory services, chat and interest groups. In general, the purpose of the domain servers 5904 is to lighten the load placed on the IM server 5902 by assuming responsibility for some of the services within the IM host complex 590. By accessing the IM server 5902 and/or the domain server 5904, a subscriber can use the IM client application to view whether particular subscribers ("buddies") are online, exchange instant messages with particular subscribers, participate in group chat rooms, trade files such as pictures, invitations or documents, find other subscribers with similar interests, get customized news and stock quotes, and search the Web. h the implementation of Fig. 5, the IM server 5902 is directly or indirectly connected to a routing gateway 5906. The routing gateway 5906 facilitates the connection between the IM server 5902 and one or more alert multiplexors 5908, for example, by serving as a link minimization tool or hub to connect several IM servers to several alert multiplexors. In general, an alert multiplexor 5908 maintains a record of alerts and subscribers registered to receive the alerts.
Once the client system 505 is connected to the alert multiplexor 5908, a subscriber can register for and/or receive one or more types of alerts. The connection pathway between the client system 505 and the alert multiplexor 5908 is determined by employing another hashing technique at the IM server 5902 to identify the particular alert multiplexor 5908 to be used for the subscriber's session. Once the particular multiplexor 5908 has been identified, the IM server 5902 provides the client system 505 with the IP address of the particular alert multiplexor 5908 and gives the client system 505 an encrypted key (i.e., a cookie). The client system 505 then uses the IP address to connect to the particular alert multiplexor 5908 through the communication link 515 and obtains access to the alert multiplexor 5908 using the encrypted key.
The alert multiplexor 5908 is connected to an alert gate 5910 that, like the IM host complex gateway 595, is capable of performing the necessary protocol conversions to form a bridge to the OSP host complex 580. The alert gate 5910 is the interface between the IM host complex 590 and the physical servers, such as servers in the OSP host complex 580, where state changes are occurring. In general, the information regarding state changes will be gathered and used by the IM host complex 590. However, the alert multiplexor 5908 also may communicate with the OSP host complex 580 through the IM gateway 595, for example, to provide the servers and subscribers of the OSP host complex 580 with certain information gathered from the alert gate 5910.
The alert gate 5910 can detect an alert feed corresponding to a particular type of alert. The alert gate 5910 may include a piece of code (alert receive code) capable of interacting with another piece of code (alert broadcast code) on the physical server where a state change occurs. In general, the alert receive code installed on the alert gate 5910 instructs the alert broadcast code installed on the physical server to send an alert feed to the alert gate 5910 upon the occurrence of a particular state change. Upon detecting an alert feed, the alert gate 5910 contacts the alert multiplexor 5908, which in turn, informs the client system 505 of the detected alert feed. In the implementation of Fig. 5, the TM host complex 590 also includes a subscriber profile server 5912 connected to a database 5914 for storing large amounts of subscriber profile data. The subscriber profile server 5912 may be used to enter, retrieve, edit, manipulate, or otherwise process subscriber profile data. In one implementation, a subscriber's profile data includes, for example, the subscriber's buddy list, alert preferences, designated stocks, identified interests, and geographic location. The subscriber may enter, edit and/or delete profile data using an installed IM client application on the client system 505 to interact with the subscriber profile server 5912.
Because the subscriber's data is stored in the IM host complex 590, the subscriber does not have to reenter or update such information in the event that the subscriber accesses the IM host complex 590 using new or a different client system 505. Accordingly, when a subscriber accesses the IM host complex 590, the IM server 5902 can instruct the subscriber profile server 5912 to retrieve the subscriber's profile data from the database 5914 and to provide, for example, the subscriber's buddy list to the IM server 5902 and the subscriber's alert preferences to the alert multiplexor 5908. The subscriber profile server 5912 also may communicate with other servers in the OSP host complex 590 to share subscriber profile data with other seivices. Alternatively, user profile data may be saved locally on the client device 505.
Referring to Fig. 6, a sender 602a, a recipient 602b, and a host 604 interact according to a procedure 600 to transfer audio data. The procedure 600 may be implemented by any suitable type of hardware, software, device, computer, computer system, equipment, component, program, application, code, storage medium, or propagated signal.
Examples of each element of Fig. 6 are broadly described above with respect to Figs. 1-5. In particular, the sender 602a and the recipient 602b typically have attributes comparable to those described with respect to client devices 120, 220, 320, 420, and 520 and/or client controllers 125, 225, 325, 425, and 525. The host 604 typically has attributes comparable to those described with respect to host device 135, 235, 335, 435, and 535 and/or host controllers 140, 240, 340, 440, and 540. The sender 602a, the recipient 602b, and/or the host 604 may be directly or indirectly interconnected through a known or described delivery network.
The sender 602a and the recipient 602b are each associated with a subscriber. To allow file transfers, each subscriber sets certain preferences for permitting files to be transferred to and from other subscribers. For example, the sender and recipient may identify screen names of subscribers who have permission to send files to them or retrieve files from them. Typically, each subscriber will be presented with a graphical user interface that permits selection among various transfer preferences. A subscriber's transfer preferences may be maintained locally at the client or remotely at the host 604.
In general, the sender 602a and the recipient 602b communicate over an open connection, such as an open TCP connection established through the host 604. Typically, the sender 602a and the recipient 602b each include a Winsock API for establishing an open TCP connection to the host 604 and a client application for accessing the host 604. The sender 602a and the recipient 602b connect to the host 604 to establish the connection.
The sender 602a and the recipient 602b use the connection to communicate with the host 604 and with each other. The connection remains open during the time that the sender 602a and the recipient 602b are accessing the host 604. To access the host 604, the sender 602a and the recipient 602b each send a separate request to the host 604. The request identifies the associated subscriber to the host 604 and to other subscribers using a unique screen name. The host 604 verifies a subscriber's information (e.g., screen name and password) against data stored in a subscriber database. If the subscriber's information is verified, the host 604 authorizes access. If the subscriber's information is not verified, the host 604 denies access and sends an error message. Upon accessing the host 604, a "buddy list" is displayed to the subscriber. In general, a subscriber's buddy list is a user interface that lists the online status and capabilities of certain screen names, i.e., "buddies", identified the subscriber, h particular, the host 604 informs the sender whether identified buddies are online, i.e., currently accessing the host 604. The host 604 also informs any subscriber who has identified the sender as a buddy that the sender is currently online. The buddy list also facilitates instant messaging communication between subscribers. A subscriber can activate an instant messaging message user interface pre-addressed to a buddy simply by clicking the screen name of a buddy on the buddy list. If a recipient is not a "buddy," the first subscriber must activate a blank instant messaging user interface and then address the instant message to the screen name of the intended recipient. When necessary, a subscriber can look up the screen name of an intended recipient using the intended recipient's e-mail address.
In addition to exchanging instant messages with online buddies, the sender may participate in group chat rooms, locate other subscribers with similar interests, get customized news and stock quotes, search the Web, and transfer files to and from other subscribers. In one implementation, a sender 602a, a recipient 602b, and a host 604 interact according to a procedure 600 to transfer audio data.
The transfer of audio data extends the functionality of instant messaging by allowing the sender 602a and the recipient 602b to communicate peer to peer via audio, i.e., microphone and speaker. In one implementation, the sender initiates the process 600 by designating one or more recipients to receive an instant message (e.g., a text message). If the intended recipients are "buddies" of the sender 602a, the sender 602a may confirm the online status and capabilities of each recipient prior to sending the video message by viewing the "buddy list." After a subscriber composes an instant message and clicks a SEND button, the instant message is sent from the sender 602a to the host (step 605).
After receiving the instant message from the sender 602a, the host 704 authenticates the instant message (step 610). h addition to the textual body, the instant message may include header information identifying the message type, the screen name and/or IP address of the sender and recipient, and a randomly generated security number. The instant message may be authenticated by, for example, using a reverse look-up table to match the screen names and/or IP addresses with those of valid subscribers. In the event that either the sender 602a or the recipient 602b is not associated with a valid subscriber, the host 604 reports an error message.
Once the instant message is verified, the host 604 determines the capabilities of the recipient (step 615). For example, the host 604 may monitor and update the online status, client version, and device type of all connected subscribers in real time. The capability to receive audio data may depend on hardware (e.g., device type), software (e.g., client version), and/or transfer preferences (e.g., blocked screen names). To be talk enabled, both the talk software and audio equipment must be available. The host 604 then reports the capabilities of the recipient to the sender (step 620).
Upon receiving the report from the host 604, the sender 602a displays a Ul according to the capabilities of the sender and or the recipient 702b (step 625). If the sender 602a is not talk enabled, then a standard instant messaging user interface is displayed. If the sender 602a is talk enabled, but the recipient 602b is not talk enabled, a START TALK Ul having a grayed START TALK button is displayed. If both the sender 602a and the recipient 602b are talk enabled, a START TALK Ul having a functioning START TALK button is displayed. The process 600 continues with the host 604 sending the instant message to the recipient 602b (step 630). The recipient 602b accepts the initial text message from the host 604 (step 635) and displays a Ul according to the capabilities of the sender 602a and/or the recipient 602b (step 640). If the recipient 602b is not talk enabled, then a standard instant messaging Ul is displayed. If the recipient 602b is talk enabled, but the sender 602a is not talk enabled, an instant messaging Ul having a grayed START TALK button is displayed. If both the recipient 602b and the sender 602a are talk enabled, an instant messaging Ul with a functioning START TALK button is displayed.
If both sides are talk enabled, both the sender 602a and the recipient 602b have a START TALK Ul displayed. When the START TALK Ul is displayed, a subscriber can initiate a talk session. In one implementation, the sender 602a initiates a talk session by sending a talk request to the host 604 (step 645). The talk request may contain information including, but not limited to, the message type, the screen name and/or IP address of the sender and recipient, and a randomly generated security number. When a the sender 602a clicks the START TALK Ul, the START TALK Ul transitions to an END TALK Ul.
Upon receiving the talk request, the host 604 authenticates the talk request from the sender 602a (step 650). The host 604 may authenticate the talk request by, for example, using a reverse look-up table to match the screen names and or IP addresses with those of valid subscribers, hi the event that either the sender 602a or the recipient 602b is not associated with a valid subscriber, the host 604 reports an error message.
After verifying the talk request, the host 604 sends the talk request to the recipient 602b (step 655). Upon receiving the talk request, the START TALK Ul displayed by the recipient 620b transitions to a CONNECT Ul (step 660). The CONNECT Ul informs the recipient 602b that the sender 602a wants to engage in a talk session. At this point, the recipient 602b may ignore the talk request, accept the talk request, or terminate the instant message session.
If the recipient 602b accepts the talk request by clicking the CONNECT Ul (step 665), the CONNECT Ul transitions to the END TALK Ul and the host 604 establishes a talk session (step 670). When a talk session is active, users can talk to each other. At this point, END TALK Ul is displayed by both the sender 602a and the recipient 602b. The talk session (steps 675a-b) remains active until one of the users clicks END TALK Ul. After one of the users clicks the END TALK Ul, both the sender 602a and the recipient 602b will display the START TALK Ul, allowing either side to initiate yet another talk session.
If the sender 602a disengages from the talk session before the recipient connects, the CONNECT Ul at the recipient 602b transitions back to the START TALK Ul. If both users click the START TALK Ul simultaneously, the host will ignore one of the START TALK clicks such that one user will display the END TALK Ul and the other will display the CONNECT Ul. If the sender clicks the START TALK Ul prior to the recipient 602b accepting the initial text message, the recipient 602b does not display the START TALK Ul, but instead immediately displays the CONNECT Ul.
In one implementation, a talk tool establishes an active talk session using three comiriunication chiannels: a Generic Signaling Interface (GSI) channel, a control channel, and an audio channel. The talk tool uses the GSI channel to establish the initial connection.
During this connection, the local IP addresses are exchanged. After the initial connection phase is done, the GSI channel is no longer used. By using the GSI channel, the exchange of local IP addresses is only done when both users permit such an exchange, i.e., by clicking on the CONNECT Ul. These actions protect users from having their local IP addresses automatically obtained without their consent.
The control channel is a TCP/IP socket, for which the IP address and port number of the remote side are obtained through the GSI channel. The control channel is used to send/receive control attributes of the talk session while the session is active. For example, because some firewalls will not allow an external connection to a socket on the inside of the firewall, the talk tool attempts a connection from both sides of the session. TMs action allows a connection to be made if there is a maximum of one firewall within the connection. If there is a firewall on both sides, the chances are that no connection can be made and the talk session will fail. To work across two firewalls, the user must obtain the port range used by talk such that one of the firewalls can be modified to permit the range to pass through the firewall. The audio channel is a TCP/IP socket used to transport audio packets. This channel can either be UDP or TCP. In general, UDP is used since it minimizes latency. However, because some firewalls will not pass through UDP packets, the audio channel may have to use TCP. The talk tool indicates the mode (i.e., TCP, UDP), or employs an auto mode in which the talk tool attempts a UDP test and resorts to TCP upon failure of UDP. Talk sessions may work in either full or half duplex. Full duplex is when both users can talk at the same time. Half duplex is where only one user can talk at a time. A client device is determined to be incapable of handling full duplex, for example, if the CPU is too slow to compress/decompress audio simultaneously and/or the microphone and speakers cannot be opened simultaneously. If a client device is marked as half duplex, then any talk session used by that client device becomes a half duplex session, regardless of whether another device can handle duplex mode. In one implementation, a TALK LISTEN button on the END TALK Ul supports half duplex operation. This button has two states: LISTEN or TALK. If the talk session is full duplex, this button is not shown. If the button reads TALK at both the sender 702a and the recipient 702b (Initial Half Duplex), the first user to click TALK is allowed to talk and the other user is forced to listen. The user who is listening has a grayed out TALK button (Half Duplex Listen) and the user who is talking has a LISTEN button (Talking Half Duplex). When the LISTEN button is clicked, the user who is talking allows the user who is listening to talk.
The talk tool that enables the audio transfer (talk) functionality may be any type of client controller (e.g., software, application, program) loaded on to a client device. The talk tool supports use by different OSP and IM clients. The talk tool is responsible for responding to user interfaces and translating user commands into the appropriate actions with the client device. For example, the talk tool opens, reads, writes, and closes the physical components on the client devices needed for audio. The talk tool also controls audio and control channels with callbacks being executed to indicate status change. When the talk tool is loaded, the talk tool determines if the client device is capable of handling full duplex. The talk tool also may allow the user to control the volume for the speaker and microphone. In one implementation, the user speaks into a microphone and the audio data are recorded into memory. While in the record mode, the average level of the speaker's voice is indicated on a level meter displayed on a user interface of the talk tool. A slider control is used to adjust the input level to an optimal value. After the speaker stops speaking, the speaker's stored speech is played back through the computer's audio output device. The speaker level slider control may be used to adjust the output level to an acceptable volume. If the user starts to speak again, the talk tool reverts to the record mode and the cycle repeats. Once the user is satisfied with the settings, the user can save the settings for use in subsequent talk sessions.
The talk tool may support additional functionality including, but not limited to, multi- conferencing, hold, and muting. Multi-conferencing allows more than two users to engage in a talk session. Hold allows the suspension of an active talk session in order to connect to another talk session. Muting rums off the microphone to prevent user feedback/echo during full duplex mode.
The talk tool also may include security features to protect the integrity of transferred data. For example, the talk tool may compress data using a proprietary algorithm or may send the data in a proprietary protocol. To further improve security, the talk tool may select the port numbers at random from a large range. In general, an instant messaging talk session is similar to a telephonic session in that it has the same three states: not connected (hung up), connecting (ringing), and connected (talking). As described above, these states and the ability to switch among them are supported by corresponding UIs, namely a START TALK Ul (not connected), a CONNECT Ul (ringing), and an END TALK Ul (connected). Fig. 7 illustrates one example of a START TALK Ul. As shown in Fig. 7, a START
Ul 700 includes an instant message box 705 having a START TALK button 710 for requesting a talk session.
Fig. 8 illustrates one example of a CONNECT Ul. As shown in Fig. 8, a Ul 800 includes an instant message box 805 having a CONNECT button 810 for accepting a request to initiate a talk session. Fig. 9 illustrates one example of an END TALK Ul. As shown in Fig. 9, a Ul 900 includes an instant message box 905 having an END TALK button 910 for terminating a talk session.
Fig. 10 illustrate one example of a half duplex user interface. As shown in Fig. 10, a Ul 1000 includes an instant message box 1005 having a TALK button 1010. The bottom 1010 is greyed out or otherwise disabled when the other party is talking.
Other embodiments are within the scope of the following claims.

Claims

WHAT IS CLAIMED IS: 1. A communications method comprising: enabling instant messaging communication between a sender and at least one recipient through an instant messaging host; and enabling voice communication between the sender and the recipient through the instant messaging host.
2. The method of claim 1 further comprising receiving and authenticating a text instant message from the sender at the instant messaging host.
3. The method of claim 2 wherein authenticating the text instant message comprises identifying a screen name associated with at least one of the sender and the recipient.
4. The method of claim 2 wherein authenticating the test instant message comprises identifying an IP address associated with at least one of the sender and the recipient.
5. The method of claim 1 further comprising determining capabilities of the recipient at the instant messaging host.
6. The method of claim 5 wherein determining capabilities comprises identifying hardware associated with the recipient.
7. The method of claim 5 wherein determining capabilities comprises identifying software associated with the recipient.
8. The method of claim 5 further comprising reporting the capabilities of the recipient to the sender.
9. The method of claim 8 wherein the sender displays a user interface according to the capabilities of the recipient.
10. The method of claim 1 further comprising receiving, at the instant messaging host, a request to establish voice communication.
11. The method of claim 10 wherein the request is from the sender.
12. The method of claim 10 wherein the request is from the recipient.
13. The method of claim 10 further comprising authenticating the request.
14. The method of claim 11 wherein authenticating the request comprises identifying a screen name associated with at least one of the sender and the recipient.
15. The method of claim 11 wherein authenticating the request comprises identifying an IP address associated with at least one of the sender and the recipient.
16. The method of claim 1 wherein enabling voice communication comprises establishing a generic signaling interface channel, a control channel, and an audio channel between the sender and the recipient.
17. The method of claim 16 further comprising attempting a mode UDP test on the audio channel.
18. The method of claim 16 wherein the control channel comprises a TCP/IP socket.
19. The method of claim 16 wherein the audio channel comprises a UDP channel.
20. The method of claim 16 wherein the audio channel comprises a TCP channel.
21. A communications apparatus comprising an instant messaging host configured to: enable instant messaging communication between a sender and at least one recipient; and enable voice communication between the sender and the recipient.
22. A computer program, stored on a computer readable medium, comprising instructions for: enabling instant messaging communication between a sender and at least one recipient through an instant messaging host; and enabling voice communication between the sender and the recipient through the instant messaging host.
23. The computer program of claim 22 wherein the computer readable medium is a disc.
24. The computer program of claim 22 wherein the computer readable medium is a client device.
25. The computer program of claim 22 wherein the computer readable medium is a host device.
26. The computer program of claim 22 wherein the computer readable medium is a propagated signal.
PCT/US2001/008558 2000-03-17 2001-03-19 Instant messaging with additional voice communication WO2001072020A2 (en)

Priority Applications (5)

Application Number Priority Date Filing Date Title
AU2001245826A AU2001245826A1 (en) 2000-03-17 2001-03-19 Instant messaging with additional voice communication
JP2001570058A JP4467220B2 (en) 2000-03-17 2001-03-19 Voice instant messaging
CA002403520A CA2403520C (en) 2000-03-17 2001-03-19 Voice instant messaging
DE60132433T DE60132433T2 (en) 2000-03-17 2001-03-19 IMMEDIATE MESSAGE TRANSMISSION WITH ADDITIONAL LANGUAGE COMMUNICATION
EP01918787A EP1264469B1 (en) 2000-03-17 2001-03-19 Instant messaging with additional voice communication

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US18997400P 2000-03-17 2000-03-17
US60/189,974 2000-03-17
US23991700P 2000-10-13 2000-10-13
US60/239,917 2000-10-13

Publications (2)

Publication Number Publication Date
WO2001072020A2 true WO2001072020A2 (en) 2001-09-27
WO2001072020A3 WO2001072020A3 (en) 2002-08-29

Family

ID=26885660

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2001/008558 WO2001072020A2 (en) 2000-03-17 2001-03-19 Instant messaging with additional voice communication

Country Status (9)

Country Link
US (5) US8041768B2 (en)
EP (1) EP1264469B1 (en)
JP (1) JP4467220B2 (en)
CN (1) CN100401733C (en)
AT (1) ATE384399T1 (en)
AU (1) AU2001245826A1 (en)
CA (1) CA2403520C (en)
DE (1) DE60132433T2 (en)
WO (1) WO2001072020A2 (en)

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1239652A1 (en) * 2001-03-01 2002-09-11 Square Co., Ltd. Teleconferencing method and system
EP1345397A1 (en) * 2002-03-14 2003-09-17 Avaya UK Instant messaging for called party notification
WO2004049683A2 (en) * 2002-11-22 2004-06-10 Intellisist Llc System and method for providing multi-party message-based voice communications
US7401098B2 (en) 2000-02-29 2008-07-15 Baker Benjamin D System and method for the automated notification of compatibility between real-time network participants
EP1638306A4 (en) * 2003-08-07 2008-11-26 Tencent Tech Shenzhen Co Ltd The system and method implementing network telephon communication by applying the instant messenger
CN100438544C (en) * 2003-09-12 2008-11-26 腾讯科技(深圳)有限公司 A method and system for instant calling using instant messaging
CN100450136C (en) * 2003-09-12 2009-01-07 腾讯科技(深圳)有限公司 A method and system for instant calling of instant messaging subscriber
US7984098B2 (en) 2000-07-25 2011-07-19 AOL, Inc. Video messaging
US9043418B2 (en) 2000-05-04 2015-05-26 Facebook, Inc. Systems and methods for instant messaging persons referenced in an electronic message
US9049159B2 (en) 2000-03-17 2015-06-02 Facebook, Inc. Establishing audio communication sessions
US9083661B2 (en) 2001-09-28 2015-07-14 Facebook, Inc. Passive personalization of buddy lists
US9461950B2 (en) 2000-05-04 2016-10-04 Facebook, Inc. Providing supplemental contact information corresponding to a referenced individual
US9619575B2 (en) 1999-12-01 2017-04-11 Facebook, Inc. System and method for analyzing communications
US9628431B2 (en) 2000-06-26 2017-04-18 Facebook, Inc. E-mail integrated instant messaging
US9727631B2 (en) 2004-12-20 2017-08-08 Facebook, Inc. Automatic categorization of entries in a contact list
US9736255B2 (en) 2003-03-26 2017-08-15 Facebook, Inc. Methods of providing access to messages based on degrees of separation
US9742615B1 (en) 2002-12-31 2017-08-22 Aol Inc. Popularity index
US10122658B2 (en) 2000-05-04 2018-11-06 Facebook, Inc. System for instant messaging the sender and recipients of an e-mail message
US10341289B2 (en) 2004-03-05 2019-07-02 Facebook, Inc. Systems and methods of calculating communications strengths
US10367860B2 (en) 2004-03-15 2019-07-30 Oath Inc. Social networking permissions
USRE48102E1 (en) 2002-12-31 2020-07-14 Facebook, Inc. Implicit population of access control lists

Families Citing this family (77)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6826407B1 (en) * 1999-03-29 2004-11-30 Richard J. Helferich System and method for integrating audio and visual messaging
US6253061B1 (en) * 1997-09-19 2001-06-26 Richard J. Helferich Systems and methods for delivering information to a transmitting and receiving device
US7003304B1 (en) * 1997-09-19 2006-02-21 Thompson Investment Group, Llc Paging transceivers and methods for selectively retrieving messages
US6636733B1 (en) 1997-09-19 2003-10-21 Thompson Trust Wireless messaging method
US6983138B1 (en) * 1997-12-12 2006-01-03 Richard J. Helferich User interface for message access
US7043530B2 (en) * 2000-02-22 2006-05-09 At&T Corp. System, method and apparatus for communicating via instant messaging
US6760754B1 (en) * 2000-02-22 2004-07-06 At&T Corp. System, method and apparatus for communicating via sound messages and personal sound identifiers
US8335994B2 (en) * 2000-02-25 2012-12-18 Salmon Alagnak Llc Method and apparatus for providing content to a computing device
US9736209B2 (en) 2000-03-17 2017-08-15 Facebook, Inc. State change alerts mechanism
US7624172B1 (en) * 2000-03-17 2009-11-24 Aol Llc State change alerts mechanism
US7844670B2 (en) * 2000-04-03 2010-11-30 Paltalk Holdings, Inc. Method and computer program product for establishing real-time communications between networked computers
US20020023134A1 (en) * 2000-04-03 2002-02-21 Roskowski Steven G. Method and computer program product for establishing real-time communications between networked computers
US9356894B2 (en) 2000-05-04 2016-05-31 Facebook, Inc. Enabled and disabled menu choices based on presence state
US8122363B1 (en) 2000-05-04 2012-02-21 Aol Inc. Presence status indicator
US8132110B1 (en) 2000-05-04 2012-03-06 Aol Inc. Intelligently enabled menu choices based on online presence state in address book
US7957514B2 (en) 2000-12-18 2011-06-07 Paltalk Holdings, Inc. System, method and computer program product for conveying presence information via voice mail
JP4568442B2 (en) * 2001-03-13 2010-10-27 株式会社リコー Video conference system
US6999989B2 (en) * 2001-03-29 2006-02-14 At&T Corp. Methods for providing video enhanced electronic mail return receipts
US7554938B1 (en) * 2001-09-28 2009-06-30 At&T Intellectual Property I, L.P. System and method for providing an instant messaging function using a personal computer equipped with a wireless digital packet-switched modem
US7216143B2 (en) * 2002-01-03 2007-05-08 International Business Machines Corporation Instant messaging with voice conference feature
GB0200746D0 (en) 2002-01-14 2002-02-27 Mitel Knowledge Corp Method and apparatus for establishing and maintaining voice communication among a community of interest
US6731323B2 (en) * 2002-04-10 2004-05-04 International Business Machines Corporation Media-enhanced greetings and/or responses in communication systems
US20030210770A1 (en) * 2002-05-10 2003-11-13 Brian Krejcarek Method and apparatus for peer-to-peer voice communication using voice recognition and proper noun identification
US7353455B2 (en) * 2002-05-21 2008-04-01 At&T Delaware Intellectual Property, Inc. Caller initiated distinctive presence alerting and auto-response messaging
US7123695B2 (en) * 2002-05-21 2006-10-17 Bellsouth Intellectual Property Corporation Voice message delivery over instant messaging
US20030233417A1 (en) * 2002-06-17 2003-12-18 Siemens Information And Communication Networks, In System and method for signaling using instant messaging in multimedia telephony-over-lan conferences
US7603412B2 (en) 2002-06-17 2009-10-13 Siemens Communications, Inc. System and method for collaborating using instant messaging in multimedia telephony-over-LAN conferences
US20050043951A1 (en) * 2002-07-09 2005-02-24 Schurter Eugene Terry Voice instant messaging system
US7720910B2 (en) 2002-07-26 2010-05-18 International Business Machines Corporation Interactive filtering electronic messages received from a publication/subscription service
US9124447B2 (en) * 2002-07-26 2015-09-01 International Business Machines Corporation Interactive client computer communication
JP4151356B2 (en) * 2002-09-06 2008-09-17 ソニー株式会社 Program, information processing method and apparatus
US7496625B1 (en) * 2002-11-04 2009-02-24 Cisco Technology, Inc. System and method for communicating messages between a text-based client and a voice-based client
US7640306B2 (en) 2002-11-18 2009-12-29 Aol Llc Reconfiguring an electronic message to effect an enhanced notification
JP4218336B2 (en) * 2002-12-12 2009-02-04 ソニー株式会社 Information processing system, service providing apparatus and method, information processing apparatus and method, and program
US7945674B2 (en) 2003-04-02 2011-05-17 Aol Inc. Degrees of separation for handling communications
US7769811B2 (en) 2003-03-03 2010-08-03 Aol Llc Instant messaging sound control
US20040230659A1 (en) * 2003-03-12 2004-11-18 Chase Michael John Systems and methods of media messaging
US7693952B2 (en) * 2003-03-27 2010-04-06 Microsoft Corporation Availability and scalability in a messaging system in a manner transparent to the application
US7116976B2 (en) 2003-12-08 2006-10-03 Thomas C Douglass Adaptable communication techniques for electronic devices
JP4547597B2 (en) * 2003-07-29 2010-09-22 ソニー株式会社 Information processing system, information processing apparatus and method, recording medium, and program
US20050039134A1 (en) * 2003-08-11 2005-02-17 Sony Corporation System and method for effectively implementing a dynamic user interface in an electronic network
US7729688B2 (en) 2003-12-08 2010-06-01 Ipventure, Inc. Systems and processes to manage multiple modes of communication
DE102004061782B4 (en) * 2004-03-04 2015-05-07 Volkswagen Ag Motor vehicle with an instant messaging communication system
US20060123120A1 (en) * 2004-04-08 2006-06-08 Thomas Merkh Methods for establishing and validating sessions
US8027335B2 (en) * 2004-05-05 2011-09-27 Prodea Systems, Inc. Multimedia access device and system employing the same
US7631042B2 (en) * 2004-06-30 2009-12-08 International Business Machines Corporation Method to update status on multiple voice and text systems from a single device
US7921163B1 (en) 2004-07-02 2011-04-05 Aol Inc. Routing and displaying messages for multiple concurrent instant messaging sessions involving a single online identity
US20060026245A1 (en) * 2004-07-07 2006-02-02 Ivy Cunningham System and method for data organization and display in an instant-messaging interface
CN100376101C (en) * 2004-07-08 2008-03-19 腾讯科技(深圳)有限公司 Instant speech communication method and system thereof
US8364081B1 (en) 2004-07-12 2013-01-29 Stragent, Llc System, method, and computer program product for using a cellular phone as an interface for a VoIP-equipped computer
US7356567B2 (en) 2004-12-30 2008-04-08 Aol Llc, A Delaware Limited Liability Company Managing instant messaging sessions on multiple devices
JP4544417B2 (en) * 2005-01-06 2010-09-15 日本電気株式会社 List management server, list management system, list management method and program
US20190268430A1 (en) 2005-08-01 2019-08-29 Seven Networks, Llc Targeted notification of content availability to a mobile device
WO2007047246A2 (en) * 2005-10-11 2007-04-26 Barry Appelman Enabling and exercising control over selected sounds associated with incoming communications
US8015247B1 (en) 2006-05-24 2011-09-06 Aol Inc. Joint communication sessions
US9602880B2 (en) 2006-12-29 2017-03-21 Kip Prod P1 Lp Display inserts, overlays, and graphical user interfaces for multimedia systems
US9569587B2 (en) 2006-12-29 2017-02-14 Kip Prod Pi Lp Multi-services application gateway and system employing the same
US11316688B2 (en) 2006-12-29 2022-04-26 Kip Prod P1 Lp Multi-services application gateway and system employing the same
WO2008085203A2 (en) 2006-12-29 2008-07-17 Prodea Systems, Inc. Presence status notification from digital endpoint devices through a multi-services gateway device at the user premises
US11783925B2 (en) 2006-12-29 2023-10-10 Kip Prod P1 Lp Multi-services application gateway and system employing the same
US8019055B2 (en) * 2007-01-19 2011-09-13 Nokia Corporation Media instant messaging for mobile device
US8086495B2 (en) 2007-09-10 2011-12-27 Prodea Systems, Inc. Device and a method for ordering product at a premises via an integrated multimedia service system
US8649386B2 (en) * 2007-09-11 2014-02-11 Prodea Systems, Inc Multi-interface wireless adapter and network bridge
US20090125594A1 (en) * 2007-11-13 2009-05-14 Avaya Technology Llc Instant Messaging Intercom System
US8422397B2 (en) * 2007-12-28 2013-04-16 Prodea Systems, Inc. Method and apparatus for rapid session routing
US20110302506A1 (en) * 2010-06-07 2011-12-08 Peter Noyes Method for Multi-User Collaboration on Visual Content Based Upon the Exchange of Session Data Objects Including New Parameters
US8516128B2 (en) * 2010-06-23 2013-08-20 Microsoft Corporation Handling of a communication session
WO2012057753A1 (en) * 2010-10-27 2012-05-03 Hewlett-Packard Development Company, L.P. Systems, methods, and apparatus for enabling audio transmission within a communications session
GB2494027B (en) 2011-08-25 2014-05-21 Ibm A computer-implemented method enabling a web application to call at least one native function of a mobile device
US9319513B2 (en) 2012-07-12 2016-04-19 International Business Machines Corporation Automatic un-muting of a telephone call
US9645789B1 (en) * 2012-09-17 2017-05-09 Amazon Technologies, Inc. Secure messaging
US9392394B2 (en) * 2012-11-07 2016-07-12 Movirtu Limited System for enabling sponsored user identities on a mobile device
WO2015136671A1 (en) * 2014-03-13 2015-09-17 富士機械製造株式会社 Display device for working machine
US20160014059A1 (en) * 2015-09-30 2016-01-14 Yogesh Chunilal Rathod Presenting one or more types of interface(s) or media to calling and/or called user while acceptance of call
CN105208056B (en) * 2014-06-18 2020-07-07 腾讯科技(深圳)有限公司 Information interaction method and terminal
JP6593008B2 (en) * 2014-10-07 2019-10-23 株式会社リコー Information processing apparatus, communication method, program, and system
JP6531436B2 (en) * 2015-03-12 2019-06-19 株式会社リコー Communication system, transmission terminal, communication method, program

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5848134A (en) * 1996-01-31 1998-12-08 Sony Corporation Method and apparatus for real-time information processing in a multi-media system
WO2000060809A1 (en) * 1999-04-01 2000-10-12 Multitude, Inc. Apparatus and method for establishing an audio conference in a networked environment

Family Cites Families (322)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4837798A (en) 1986-06-02 1989-06-06 American Telephone And Telegraph Company Communication system having unified messaging
US5008926A (en) * 1986-07-17 1991-04-16 Efrat Future Technology Ltd. Message management system
GB2228162B (en) 1989-02-08 1993-05-19 Philips Electronic Associated Mobile radio transmission system and a mobile station for use in the system
IL90277A0 (en) 1989-05-12 1989-12-15 Shmuel Shapira System for locating compatible persons at a given locality
US5583920A (en) 1992-04-17 1996-12-10 Bell Atlantic Intelligent peripheral in video dial tone network
US5327486A (en) 1993-03-22 1994-07-05 Bell Communications Research, Inc. Method and system for managing telecommunications such as telephone calls
DE69400115T2 (en) 1993-06-22 1996-11-14 Vmx Inc Electronic messaging system with integrated voice messages
US5621789A (en) * 1993-09-01 1997-04-15 Teknekron Infoswitch Corporation Method and system for integrating a plurality of call center agent performance enhancement modules
US5548637A (en) 1993-09-09 1996-08-20 Precision Tracking Fm, Inc. Method and apparatus for locating personnel and objects in response to telephone inquiries
DE4332945A1 (en) 1993-09-28 1995-03-30 Bosch Gmbh Robert Positioning and navigation device with satellite support
GB2319137B (en) 1993-10-01 1998-06-24 Vicor Inc Teleconferencing system
US5657461A (en) * 1993-10-04 1997-08-12 Xerox Corporation User interface for defining and automatically transmitting data according to preferred communication channels
US5574934A (en) 1993-11-24 1996-11-12 Intel Corporation Preemptive priority-based transmission of signals using virtual channels
US5721906A (en) 1994-03-24 1998-02-24 Ncr Corporation Multiple repositories of computer resources, transparent to user
US6026403A (en) 1994-03-24 2000-02-15 Ncr Corporation Computer system for management of resources
EP0674271A1 (en) 1994-03-24 1995-09-27 NCR International, Inc. Security aspects of computer resources
US5742905A (en) 1994-09-19 1998-04-21 Bell Communications Research, Inc. Personal communications internetworking
US6009413A (en) 1994-11-10 1999-12-28 America Online, Inc. System for real time shopping
US5533110A (en) 1994-11-29 1996-07-02 Mitel Corporation Human machine interface for telephone feature invocation
EP0717545A3 (en) 1994-12-13 1998-06-17 AT&T Corp. Interactive telephone networking service
CA2139081C (en) 1994-12-23 1999-02-02 Alastair Gordon Unified messaging system and method
US5694616A (en) 1994-12-30 1997-12-02 International Business Machines Corporation Method and system for prioritization of email items by selectively associating priority attribute with at least one and fewer than all of the recipients
US5650994A (en) * 1995-05-16 1997-07-22 Bell Atlantic Network Services, Inc. Operation support system for service creation and network provisioning for video dial tone networks
US6026429A (en) 1995-06-07 2000-02-15 America Online, Inc. Seamless integration of internet resources
US6181867B1 (en) 1995-06-07 2001-01-30 Intervu, Inc. Video storage and retrieval system
US5610910A (en) 1995-08-17 1997-03-11 Northern Telecom Limited Access to telecommunications networks in multi-service environment
TW366674B (en) 1995-08-30 1999-08-11 Motorola Inc Method and apparatus for marking messages in selective call receivers
WO1997010558A1 (en) 1995-09-14 1997-03-20 Bell Communications Research, Inc. Method and system for providing continually updated personalized information
US6108704A (en) 1995-09-25 2000-08-22 Netspeak Corporation Point-to-point internet protocol
US5737328A (en) 1995-10-04 1998-04-07 Aironet Wireless Communications, Inc. Network communication system with information rerouting capabilities
US5774670A (en) 1995-10-06 1998-06-30 Netscape Communications Corporation Persistent client state in a hypertext transfer protocol based client-server system
US5790800A (en) * 1995-10-13 1998-08-04 Digital Equipment Corporation Client application program mobilizer
US6085223A (en) 1995-10-20 2000-07-04 Ncr Corporation Method and apparatus for providing database information to non-requesting clients
US5948058A (en) 1995-10-30 1999-09-07 Nec Corporation Method and apparatus for cataloging and displaying e-mail using a classification rule preparing means and providing cataloging a piece of e-mail into multiple categories or classification types based on e-mail object information
US6560707B2 (en) 1995-11-06 2003-05-06 Xerox Corporation Multimedia coordination system
US5880731A (en) 1995-12-14 1999-03-09 Microsoft Corporation Use of avatars with automatic gesturing and bounded interaction in on-line chat session
US5960173A (en) 1995-12-22 1999-09-28 Sun Microsystems, Inc. System and method enabling awareness of others working on similar tasks in a computer work environment
US5793365A (en) 1996-01-02 1998-08-11 Sun Microsystems, Inc. System and method providing a computer user interface enabling access to distributed workgroup members
US5802470A (en) 1996-01-11 1998-09-01 At&T Corp Automated wireless-call completion using a paging network
US6065047A (en) 1996-01-24 2000-05-16 America Online, Inc. System for providing subscriber with access to a content area customized for the combination of subscriber's responses to topic prompt, subtopic prompt, and action prompt
US5878219A (en) 1996-03-12 1999-03-02 America Online, Inc. System for integrating access to proprietary and internet resources
US6343313B1 (en) * 1996-03-26 2002-01-29 Pixion, Inc. Computer conferencing system with real-time multipoint, multi-speed, multi-stream scalability
US6311211B1 (en) 1996-04-19 2001-10-30 Juno Online Services, Inc. Method and apparatus for delivering electronic advocacy messages
US6014638A (en) 1996-05-29 2000-01-11 America Online, Inc. System for customizing computer displays in accordance with user preferences
US5870769A (en) 1996-06-07 1999-02-09 At&T Corp. Internet access system and method with active link status indicators
US5983369A (en) * 1996-06-17 1999-11-09 Sony Corporation Online simultaneous/altering-audio/video/voice data based service and support for computer systems
US5946617A (en) 1996-06-28 1999-08-31 Telxon Corporation Cellular communication system with remote power source for providing power to access points
US5835724A (en) * 1996-07-03 1998-11-10 Electronic Data Systems Corporation System and method for communication information using the internet that receives and maintains information concerning the client and generates and conveys the session data to the client
US5919247A (en) 1996-07-24 1999-07-06 Marimba, Inc. Method for the distribution of code and data updates
US5850594A (en) 1996-08-26 1998-12-15 Motorola, Inc. Method and apparatus for efficiently transmitting addresses and messages from portable messaging units over a wireless communication channel
US5764916A (en) 1996-09-27 1998-06-09 Ichat, Inc. Method and apparatus for real time communication over a computer network
IL119364A (en) 1996-10-06 2000-11-21 Icq Inc Communications system
US5940488A (en) 1996-11-15 1999-08-17 Active Voice Corporation Telecommunication management system and user interface
US5867494A (en) * 1996-11-18 1999-02-02 Mci Communication Corporation System, method and article of manufacture with integrated video conferencing billing in a communication system architecture
US5951646A (en) 1996-11-25 1999-09-14 America Online, Inc. System and method for scheduling and processing image and sound data
US5867162A (en) 1996-12-06 1999-02-02 Sun Microsystems, Inc. Methods, systems, and computer program products for controlling picklists
US5987113A (en) 1996-12-23 1999-11-16 Northern Telecom Limited Long distance phone tag service
US6166730A (en) 1997-12-03 2000-12-26 Diva Systems Corporation System for interactively distributing information services
US6175831B1 (en) 1997-01-17 2001-01-16 Six Degrees, Inc. Method and apparatus for constructing a networking database and system
US6212550B1 (en) 1997-01-21 2001-04-03 Motorola, Inc. Method and system in a client-server for automatically converting messages from a first format to a second format compatible with a message retrieving device
US6012051A (en) 1997-02-06 2000-01-04 America Online, Inc. Consumer profiling system with analytic decision processor
US6963923B1 (en) 1997-02-10 2005-11-08 International Business Machines Corporation Method for file transfer restarts using standard internet protocol
US6750881B1 (en) 1997-02-24 2004-06-15 America Online, Inc. User definable on-line co-user lists
US5920692A (en) 1997-03-24 1999-07-06 International Business Machines Corp. Method and system for a remote notification service for a multi-user server architecture
US6260148B1 (en) 1997-04-04 2001-07-10 Microsoft Corporation Methods and systems for message forwarding and property notifications using electronic subscriptions
US5943478A (en) 1997-04-04 1999-08-24 Flash Communications, Inc. System for immediate popup messaging across the internet
US6014135A (en) 1997-04-04 2000-01-11 Netscape Communications Corp. Collaboration centric document processing environment using an information centric visual user interface and information presentation method
US6002402A (en) 1997-04-09 1999-12-14 Symantec Corporation System and method for producing a drag-and-drop object from a popup menu item
US5893091A (en) 1997-04-11 1999-04-06 Immediata Corporation Multicasting with key words
FI104873B (en) 1997-04-16 2000-04-14 Nokia Networks Oy Data service in a mobile network
US6199097B1 (en) 1997-04-30 2001-03-06 Sony Corporation Method and apparatus for collecting data and storage medium for data collection program
US6014689A (en) 1997-06-03 2000-01-11 Smith Micro Software Inc. E-mail system with a video e-mail player
US6134432A (en) 1997-06-17 2000-10-17 Bulletin.Net, Inc. System and process for allowing wireless messaging
JPH1115756A (en) 1997-06-24 1999-01-22 Omron Corp Electronic mail discrimination method, device, therefor and storage medium
US5870744A (en) 1997-06-30 1999-02-09 Intel Corporation Virtual people networking
US6195354B1 (en) 1997-07-16 2001-02-27 Nortel Networks Limited Route selection for path balancing in connection-oriented packet switching networks
AU8496398A (en) 1997-07-18 1999-02-10 Net Exchange, Inc. Apparatus and method for effecting correspondent-centric electronic mail
US7117358B2 (en) 1997-07-24 2006-10-03 Tumbleweed Communications Corp. Method and system for filtering communication
IL121501A (en) 1997-08-08 2003-04-10 Icq Inc Telephone-status notification system
JPH1165960A (en) 1997-08-27 1999-03-09 Matsushita Electric Ind Co Ltd Message server equipment using directory management
US6259891B1 (en) 1997-09-04 2001-07-10 Hughes Electronics Corporation Adapter and method for use in a portable communication signal receiver system
FI104604B (en) 1997-09-19 2000-02-29 Nokia Networks Oy Updating Internet access point settings in the mobile system
US6636733B1 (en) 1997-09-19 2003-10-21 Thompson Trust Wireless messaging method
JP3733218B2 (en) 1997-09-30 2006-01-11 キヤノン株式会社 RELAY DEVICE, ITS CONTROL METHOD, AND STORAGE MEDIUM
US5951652A (en) 1997-10-06 1999-09-14 Ncr Corporation Dependable data element synchronization mechanism
US5951643A (en) 1997-10-06 1999-09-14 Ncr Corporation Mechanism for dependably organizing and managing information for web synchronization and tracking among multiple browsers
US5954798A (en) 1997-10-06 1999-09-21 Ncr Corporation Mechanism for dependably managing web synchronization and tracking operations among multiple browsers
US6081830A (en) 1997-10-09 2000-06-27 Gateway 2000, Inc. Automatic linking to program-specific computer chat rooms
US6006179A (en) 1997-10-28 1999-12-21 America Online, Inc. Audio codec using adaptive sparse vector quantization with subband vector classification
US6269369B1 (en) 1997-11-02 2001-07-31 Amazon.Com Holdings, Inc. Networked personal contact manager
US5893099A (en) 1997-11-10 1999-04-06 International Business Machines System and method for processing electronic mail status rendezvous
US6151584A (en) 1997-11-20 2000-11-21 Ncr Corporation Computer architecture and method for validating and collecting and metadata and data about the internet and electronic commerce environments (data discoverer)
AU1907899A (en) 1997-12-22 1999-07-12 Accepted Marketing, Inc. E-mail filter and method thereof
US6512930B2 (en) 1997-12-30 2003-01-28 Telefonaktiebolaget Lm Ericsson (Publ) On-line notification in a mobile communications system
US6249740B1 (en) 1998-01-21 2001-06-19 Kabushikikaisha Equos Research Communications navigation system, and navigation base apparatus and vehicle navigation apparatus both used in the navigation system
JP3855430B2 (en) * 1998-01-23 2006-12-13 ソニー株式会社 Information processing apparatus and method, information processing system, and recording medium
US6233577B1 (en) 1998-02-17 2001-05-15 Phone.Com, Inc. Centralized certificate management system for two-way interactive communication devices in data networks
US6144991A (en) 1998-02-19 2000-11-07 Telcordia Technologies, Inc. System and method for managing interactions between users in a browser-based telecommunications network
EP0944004B1 (en) 1998-03-18 2008-02-06 Sony Deutschland GmbH IRC name translation protocol
US6484196B1 (en) 1998-03-20 2002-11-19 Advanced Web Solutions Internet messaging system and method for use in computer networks
US6070171A (en) 1998-05-15 2000-05-30 Palantir Software, Inc. Method and system for copy-tracking distributed software featuring tokens containing a key field and a usage field
US6327586B1 (en) 1998-05-27 2001-12-04 Wisdombuilder, L.L.C. System method and computer program product to automate the management and analysis of heterogeneous data
US6219694B1 (en) 1998-05-29 2001-04-17 Research In Motion Limited System and method for pushing information from a host system to a mobile data communication device having a shared electronic address
EP1086435A1 (en) 1998-06-11 2001-03-28 Boardwalk AG System, method, and computer program product for providing relational patterns between entities
NL1009376C1 (en) 1998-06-11 1998-07-06 Boardwalk Ag Data system for providing relationship patterns between people.
US6161130A (en) 1998-06-23 2000-12-12 Microsoft Corporation Technique which utilizes a probabilistic classifier to detect "junk" e-mail by automatically updating a training and re-training the classifier based on the updated training set
JP3434209B2 (en) 1998-07-27 2003-08-04 日本電信電話株式会社 Communication tool use status transmission method, server device, client terminal device, and program recording medium thereof
US6212548B1 (en) * 1998-07-30 2001-04-03 At & T Corp System and method for multiple asynchronous text chat conversations
US6223213B1 (en) 1998-07-31 2001-04-24 Webtv Networks, Inc. Browser-based email system with user interface for audio/video capture
JP3865946B2 (en) * 1998-08-06 2007-01-10 富士通株式会社 CHARACTER MESSAGE COMMUNICATION SYSTEM, CHARACTER MESSAGE COMMUNICATION DEVICE, CHARACTER MESSAGE COMMUNICATION SERVER, COMPUTER-READABLE RECORDING MEDIUM CONTAINING CHARACTER MESSAGE COMMUNICATION PROGRAM, COMPUTER-READABLE RECORDING MEDIUM RECORDING CHARACTER MESSAGE COMMUNICATION MANAGEMENT PROGRAM Message communication management method
US20020112005A1 (en) 1998-08-25 2002-08-15 Charles Namias Video e-mail kiosk
US6917965B2 (en) 1998-09-15 2005-07-12 Microsoft Corporation Facilitating annotation creation and notification via electronic mail
WO2000016209A1 (en) 1998-09-15 2000-03-23 Local2Me.Com, Inc. Dynamic matchingtm of users for group communication
EP1030244B1 (en) 1998-09-16 2014-08-20 Mitsui & Co., Ltd. A multimedia direct communication system linked with http protocol
US6317722B1 (en) 1998-09-18 2001-11-13 Amazon.Com, Inc. Use of electronic shopping carts to generate personal recommendations
AU6410699A (en) * 1998-10-13 2000-05-01 Chris Cheah Method and system for controlled distribution of information over a network
US6363392B1 (en) 1998-10-16 2002-03-26 Vicinity Corporation Method and system for providing a web-sharable personal database
WO2000024154A1 (en) 1998-10-20 2000-04-27 Galiad Computers Ltd. Secure messaging system and method
JP2000161918A (en) 1998-12-01 2000-06-16 Tsubakimoto Chain Co Method and device for detecting position of moving body
US6529475B1 (en) 1998-12-16 2003-03-04 Nortel Networks Limited Monitor for the control of multimedia services in networks
US6317776B1 (en) * 1998-12-17 2001-11-13 International Business Machines Corporation Method and apparatus for automatic chat room source selection based on filtered audio input amplitude of associated data streams
US6192395B1 (en) * 1998-12-23 2001-02-20 Multitude, Inc. System and method for visually identifying speaking participants in a multi-participant networked event
US6748421B1 (en) 1998-12-23 2004-06-08 Canon Kabushiki Kaisha Method and system for conveying video messages
US6425012B1 (en) 1998-12-28 2002-07-23 Koninklijke Philips Electronics N.V. System creating chat network based on a time of each chat access request
US6535586B1 (en) 1998-12-30 2003-03-18 At&T Corp. System for the remote notification and retrieval of electronically stored messages
US6330590B1 (en) 1999-01-05 2001-12-11 William D. Cotten Preventing delivery of unwanted bulk e-mail
US6606647B2 (en) 1999-01-11 2003-08-12 Infospace, Inc. Server and method for routing messages to achieve unified communications
US20010013050A1 (en) 1999-01-11 2001-08-09 Shah Niraj A. Buddy list aggregation
JP4085500B2 (en) 1999-01-29 2008-05-14 株式会社エクォス・リサーチ Vehicle status grasping device, agent device, and vehicle control device
US6449634B1 (en) 1999-01-29 2002-09-10 Digital Impact, Inc. Method and system for remotely sensing the file formats processed by an E-mail client
JP2000259514A (en) 1999-03-05 2000-09-22 Hitachi Information Systems Ltd Electronic mail destination management system and recording medium stored with program for performing the same
US6421439B1 (en) 1999-03-24 2002-07-16 Microsoft Corporation System and method for user affiliation in a telephone network
JP2000284999A (en) 1999-03-30 2000-10-13 Sony Corp Image information communication equipment and method, image information providing device and method and providing medium
US6574599B1 (en) 1999-03-31 2003-06-03 Microsoft Corporation Voice-recognition-based methods for establishing outbound communication through a unified messaging system including intelligent calendar interface
US6374290B1 (en) 1999-04-01 2002-04-16 Cacheflow, Inc. Self moderated virtual communities
US7082407B1 (en) 1999-04-09 2006-07-25 Amazon.Com, Inc. Purchase notification service for assisting users in selecting items from an electronic catalog
US20020095298A1 (en) 1999-04-19 2002-07-18 Frogmagic, Inc. Blind Gift Method and System
US7233992B1 (en) 1999-04-26 2007-06-19 Comerica Bank-California Computerized method and system for managing the exchange and distribution of confidential documents
US6879665B1 (en) * 1999-04-27 2005-04-12 International Business Machines Corporation Method and apparatus for sending messages in a data processing system
US6747970B1 (en) 1999-04-29 2004-06-08 Christopher H. Lamb Methods and apparatus for providing communications services between connectionless and connection-oriented networks
US6564261B1 (en) * 1999-05-10 2003-05-13 Telefonaktiebolaget Lm Ericsson (Publ) Distributed system to intelligently establish sessions between anonymous users over various networks
US6393464B1 (en) 1999-05-10 2002-05-21 Unbound Communications, Inc. Method for controlling the delivery of electronic mail messages
US6571234B1 (en) 1999-05-11 2003-05-27 Prophet Financial Systems, Inc. System and method for managing online message board
US6907243B1 (en) 1999-06-09 2005-06-14 Cisco Technology, Inc. Method and system for dynamic soft handoff resource allocation in a wireless network
US6400381B1 (en) 1999-06-11 2002-06-04 International Business Machines Corporation Web places
JP2003502776A (en) 1999-06-22 2003-01-21 オディゴ・インコーポレーテッド System and method for processing and presenting Internet usage information to facilitate user communication
US6389372B1 (en) 1999-06-29 2002-05-14 Xerox Corporation System and method for bootstrapping a collaborative filtering system
US6301609B1 (en) * 1999-07-07 2001-10-09 Lucent Technologies Inc. Assignable associate priorities for user-definable instant messaging buddy groups
US6507866B1 (en) 1999-07-19 2003-01-14 At&T Wireless Services, Inc. E-mail usage pattern detection
US6400810B1 (en) 1999-07-20 2002-06-04 Ameritech Corporation Method and system for selective notification of E-mail messages
US6549937B1 (en) 1999-07-21 2003-04-15 Microsoft Corporation System and method for multi-protocol communication in a computer network
US6525747B1 (en) 1999-08-02 2003-02-25 Amazon.Com, Inc. Method and system for conducting a discussion relating to an item
US6430604B1 (en) 1999-08-03 2002-08-06 International Business Machines Corporation Technique for enabling messaging systems to use alternative message delivery mechanisms
US6557027B1 (en) 1999-08-05 2003-04-29 International Business Machines Corporation System and method for managing on-line discussion having multiple topics in a collaborative data processing environment
US6795863B1 (en) 1999-08-10 2004-09-21 Intline.Com, Inc. System, device and method for combining streaming video with e-mail
US7424543B2 (en) 1999-09-08 2008-09-09 Rice Iii James L System and method of permissive data flow and application transfer
JP2001084320A (en) 1999-09-13 2001-03-30 Oki Electric Ind Co Ltd Workflow management system
US6785554B1 (en) 1999-09-15 2004-08-31 Qualcomm Incorporated Modified finger assignment algorithm for high data rate calls
US6691162B1 (en) 1999-09-21 2004-02-10 America Online, Inc. Monitoring users of a computer network
US6539421B1 (en) 1999-09-24 2003-03-25 America Online, Inc. Messaging application user interface
US6654683B2 (en) 1999-09-27 2003-11-25 Jin Haiping Method and system for real-time navigation using mobile telephones
CA2385833C (en) 1999-09-28 2016-10-18 Parlano, Inc. Information flow management in real time
US7308422B1 (en) 1999-10-08 2007-12-11 Utbk, Inc. System for recording and distributing recorded information over the internet
US6788769B1 (en) 1999-10-13 2004-09-07 Emediacy, Inc. Internet directory system and method using telephone number based addressing
US6807574B1 (en) 1999-10-22 2004-10-19 Tellme Networks, Inc. Method and apparatus for content personalization over a telephone interface
CA2288573A1 (en) 1999-11-08 2001-05-08 John C. Myers Telephone based access to instant messaging
US8601373B1 (en) 1999-11-16 2013-12-03 Ebay Inc. Network-based sales system with customizable user interface
US7171473B1 (en) 1999-11-17 2007-01-30 Planet Exchange, Inc. System using HTTP protocol for maintaining and updating on-line presence information of new user in user table and group table
US6489968B1 (en) 1999-11-18 2002-12-03 Amazon.Com, Inc. System and method for exposing popular categories of browse tree
US6941345B1 (en) 1999-12-03 2005-09-06 Nortel Networks Limited Real-time, text-based messaging between devices in plural communities
US20020065894A1 (en) 1999-12-03 2002-05-30 Dalal Siddhartha R. Local presence state and user-controlled presence and message forwarding in unified instant messaging
US7191213B1 (en) 1999-12-08 2007-03-13 Avaya Technology Corp. Instant message notification application
US6678719B1 (en) 1999-12-20 2004-01-13 Mediaone Group, Inc. Virtual workplace intercommunication tool
US6347332B1 (en) 1999-12-30 2002-02-12 Edwin I. Malet System for network-based debates
US20010032246A1 (en) 2000-01-05 2001-10-18 Fardella Anthony James Method and system for creating and sending a video e-mail
US6901559B1 (en) 2000-01-06 2005-05-31 Microsoft Corporation Method and apparatus for providing recent categories on a hand-held device
US7337210B2 (en) * 2000-01-13 2008-02-26 International Business Machines Corporation Method and apparatus for determining availability of a user of an instant messaging application
US20010052019A1 (en) 2000-02-04 2001-12-13 Ovt, Inc. Video mail delivery system
US6580790B1 (en) 2000-02-09 2003-06-17 At&T Corp. Calling assistance system and method
US6559863B1 (en) 2000-02-11 2003-05-06 International Business Machines Corporation System and methodology for video conferencing and internet chatting in a cocktail party style
US7043530B2 (en) * 2000-02-22 2006-05-09 At&T Corp. System, method and apparatus for communicating via instant messaging
US7058036B1 (en) 2000-02-25 2006-06-06 Sprint Spectrum L.P. Method and system for wireless instant messaging
US7958212B1 (en) 2000-02-29 2011-06-07 Microsoft Corporation Updating presence information
CA2401324A1 (en) 2000-03-03 2001-09-13 Qualcomm Incorporated Method and apparatus for participating in group communication services in an existing communication system
US6714793B1 (en) 2000-03-06 2004-03-30 America Online, Inc. Method and system for instant messaging across cellular networks and a public data network
US20020056123A1 (en) 2000-03-09 2002-05-09 Gad Liwerant Sharing a streaming video
US6791583B2 (en) * 2000-03-09 2004-09-14 Sun Microsystems, Inc. System and method for providing spatially distributed device interaction
US6731308B1 (en) * 2000-03-09 2004-05-04 Sun Microsystems, Inc. Mechanism for reciprocal awareness of intent to initiate and end interaction among remote users
US7634528B2 (en) 2000-03-16 2009-12-15 Microsoft Corporation Harnessing information about the timing of a user's client-server interactions to enhance messaging and collaboration services
US6757732B1 (en) * 2000-03-16 2004-06-29 Nortel Networks Limited Text-based communications over a data network
CA2403520C (en) 2000-03-17 2008-06-03 America Online, Inc. Voice instant messaging
WO2001072002A2 (en) 2000-03-17 2001-09-27 America Online, Inc. Shared groups rostering system
US6868074B1 (en) 2000-03-30 2005-03-15 Mci, Inc. Mobile data device and method of locating mobile data device
US20020023134A1 (en) 2000-04-03 2002-02-21 Roskowski Steven G. Method and computer program product for establishing real-time communications between networked computers
US6799039B2 (en) 2000-04-17 2004-09-28 Nortel Networks Limited Network resource sharing during handover of a mobile station between cellular wireless networks
US6564213B1 (en) 2000-04-18 2003-05-13 Amazon.Com, Inc. Search query autocompletion
US6785781B2 (en) 2000-04-20 2004-08-31 International Business Machines Corporation Read/write alignment scheme for port reduction of multi-port SRAM cells
US20020021307A1 (en) 2000-04-24 2002-02-21 Steve Glenn Method and apparatus for utilizing online presence information
US6912564B1 (en) 2000-05-04 2005-06-28 America Online, Inc. System for instant messaging the sender and recipients of an e-mail message
US20020049717A1 (en) 2000-05-10 2002-04-25 Routtenberg Michael D. Digital content distribution system and method
US7200634B2 (en) 2000-05-10 2007-04-03 Chikka Pte Ltd. Instant messaging account system
US6920478B2 (en) 2000-05-11 2005-07-19 Chikka Pte Ltd. Method and system for tracking the online status of active users of an internet-based instant messaging system
WO2001097088A1 (en) 2000-06-15 2001-12-20 Orion's Belt, Inc. Method of and system for determining connections between parties over a network
DE10196385T1 (en) 2000-06-22 2003-11-06 Yaron Mayer System and method for searching for and finding data and for contacting this data via the Internet in instant messaging networks and / or other methods which make it possible to find and establish contacts immediately
US20040122810A1 (en) 2000-06-22 2004-06-24 Yaron Mayer System and method for searching, finding and contacting dates on the Internet in instant messaging networks and/or in other methods that enable immediate finding and creating immediate contact
US8001190B2 (en) 2001-06-25 2011-08-16 Aol Inc. Email integrated instant messaging
US6781608B1 (en) 2000-06-30 2004-08-24 America Online, Inc. Gradual image display
US6699125B2 (en) 2000-07-03 2004-03-02 Yahoo! Inc. Game server for use in connection with a messenger server
US7117245B1 (en) 2000-07-05 2006-10-03 Iris Wireless, Llc Global communication method and system
US7047202B2 (en) 2000-07-13 2006-05-16 Amit Jaipuria Method and apparatus for optimizing networking potential using a secured system for an online community
US6772188B1 (en) 2000-07-14 2004-08-03 America Online, Incorporated Method and apparatus for communicating with an entity automatically identified in an electronic communication
US7028263B2 (en) 2000-07-19 2006-04-11 Research In Motion Limited User interface and method for viewing short messages on a wireless device
US6839737B1 (en) 2000-07-19 2005-01-04 Neoplanet, Inc. Messaging system for indicating status of a sender of electronic mail and method and computer program product therefor
ATE502477T1 (en) 2000-07-25 2011-04-15 America Online Inc VIDEO MESSAGING
US6968179B1 (en) 2000-07-27 2005-11-22 Microsoft Corporation Place specific buddy list services
US6405035B1 (en) 2000-08-24 2002-06-11 Telefonaktiebolaget L.M. Ericsson System and method for forwarding messages to a subscriber device
JP3829050B2 (en) 2000-08-29 2006-10-04 松下電器産業株式会社 Integrated electronic components
CN1346222A (en) * 2000-09-26 2002-04-24 英业达集团(上海)电子技术有限公司 Method for obtaining instantaneous information from mobile communication apparatus
US6640230B1 (en) 2000-09-27 2003-10-28 International Business Machines Corporation Calendar-driven application technique for preparing responses to incoming events
KR20020028108A (en) 2000-10-07 2002-04-16 구자홍 Operating method for electronic mail service displaying status of sender
US6757365B1 (en) 2000-10-16 2004-06-29 Tellme Networks, Inc. Instant messaging via telephone interfaces
AU2002214415A1 (en) 2000-10-27 2002-05-06 Enotarius As Method and data processing system for managing, tracing and authenticating electronic data transmittals such as e-mail, and for extracting electronic addresses
GB2368747B (en) 2000-10-31 2004-12-29 Daniel Victor Pavin Method and system for determining the popularity of a subject
US7039676B1 (en) 2000-10-31 2006-05-02 International Business Machines Corporation Using video image analysis to automatically transmit gestures over a network in a chat or instant messaging session
US7725405B2 (en) 2000-11-03 2010-05-25 Yahoo! Inc. System and method for agency based posting and searching for job openings via a computer system and network
US6732155B2 (en) 2000-12-01 2004-05-04 Microsoft Corporation Dynamic controlling of attribute-specific list for improved object organization
US7197513B2 (en) 2000-12-08 2007-03-27 Aol Llc Distributed image storage architecture
US20020112181A1 (en) 2000-12-12 2002-08-15 Smith Mark Elwin Multilevel secure network access system
US6668173B2 (en) 2000-12-15 2003-12-23 Motorola, Inc. Instant message user location tracking system
US6912563B1 (en) 2000-12-19 2005-06-28 Digi-Net Technologies Methods and systems for proactive on-line communications
US6993564B2 (en) 2000-12-22 2006-01-31 At&T Corp. Method of authorizing receipt of instant messages by a recipient user
US6701348B2 (en) 2000-12-22 2004-03-02 Goodcontacts.Com Method and system for automatically updating contact information within a contact database
US20030009385A1 (en) 2000-12-26 2003-01-09 Tucciarone Joel D. Electronic messaging system and method thereof
US7222156B2 (en) 2001-01-25 2007-05-22 Microsoft Corporation Integrating collaborative messaging into an electronic mail program
US20020103801A1 (en) 2001-01-31 2002-08-01 Lyons Martha L. Centralized clearinghouse for community identity information
US7299007B2 (en) 2001-02-01 2007-11-20 Ack Venture Holdings, Llc Mobile computing and communication
US20020147777A1 (en) 2001-02-06 2002-10-10 Hackbarth Randy L. Apparatus and method for use in portal service for a team utilizing collaboration services
US7159178B2 (en) 2001-02-20 2007-01-02 Communispace Corp. System for supporting a virtual community
US8219620B2 (en) 2001-02-20 2012-07-10 Mcafee, Inc. Unwanted e-mail filtering system including voting feedback
US6941466B2 (en) 2001-02-22 2005-09-06 International Business Machines Corporation Method and apparatus for providing automatic e-mail filtering based on message semantics, sender's e-mail ID, and user's identity
US6714791B2 (en) 2001-02-23 2004-03-30 Danger, Inc. System, apparatus and method for location-based instant messaging
US6430344B1 (en) 2001-02-23 2002-08-06 Fitel Usa Corp. Communication cable having enhanced crush resistance
CA2440159C (en) 2001-03-07 2011-05-03 Netscape Communications Corporation Integration of e-mail with instant messaging services
US6542817B2 (en) 2001-03-13 2003-04-01 Alpine Electronics, Inc. Route search method in navigation system
US7512407B2 (en) 2001-03-26 2009-03-31 Tencent (Bvi) Limited Instant messaging system and method
US6934917B2 (en) 2001-04-20 2005-08-23 Koninklijke Philips Electronics, N.V. Automatic selection of favorite media selections of a user of a media presentation device
AUPR459901A0 (en) 2001-04-27 2001-05-24 Sharinga Networks Inc. Instant messaging
EP1257110B1 (en) 2001-05-11 2013-09-18 Kabushiki Kaisha Square Enix (also trading as Square Enix Co., Ltd.) Method and device for a messaging address directory
US7190956B2 (en) 2001-05-15 2007-03-13 Motorola Inc. Instant message proxy for circuit switched mobile environment
TW512284B (en) 2001-05-24 2002-12-01 Ulead Systems Inc Graphic processing method using depth auxiliary and computer readable record medium for storing programs
US8311887B2 (en) 2001-05-29 2012-11-13 Fujitsu Limited Methods, devices and systems for real-time instant presence with advertisement (RIPA)
US7380126B2 (en) 2001-06-01 2008-05-27 Logan James D Methods and apparatus for controlling the transmission and receipt of email messages
JP3961784B2 (en) 2001-06-01 2007-08-22 株式会社エヌ・ティ・ティ・ドコモ Positioning device, positioning result correcting method, program, and recording medium
US20030182394A1 (en) 2001-06-07 2003-09-25 Oren Ryngler Method and system for providing context awareness
US7552081B2 (en) 2001-06-29 2009-06-23 International Business Machines Corporation User rating system for online auctions
US20030004872A1 (en) 2001-06-29 2003-01-02 Gardi Michael E. Electronic direct marketing
US7366756B2 (en) 2001-07-09 2008-04-29 Telefonaktiebolaget Lm Ericsson (Publ) System and method for securing privacy of chat participants
US20020049817A1 (en) 2001-07-12 2002-04-25 Eatamar Drory Storageless system and method for unified messaging on existing mail accounts via standard internet mail protocols
US7673342B2 (en) 2001-07-26 2010-03-02 Mcafee, Inc. Detecting e-mail propagated malware
US6785681B2 (en) 2001-07-31 2004-08-31 Intel Corporation Generating a list of people relevant to a task
US7266583B2 (en) 2001-08-20 2007-09-04 International Business Machines Corporation Method and system for providing contact management to chat session participants
US7035865B2 (en) 2001-08-28 2006-04-25 International Business Machines Corporation Calendar-enhanced awareness for instant messaging systems and electronic status boards
US6910189B2 (en) 2001-08-30 2005-06-21 International Business Machines Corporation Method, system, and computer program product for electronic messaging mail list management
US20030046210A1 (en) 2001-08-31 2003-03-06 Vora Poorvi L. Anonymous acquisition of digital products based on secret splitting
US6677976B2 (en) 2001-10-16 2004-01-13 Sprint Communications Company, LP Integration of video telephony with chat and instant messaging environments
US20030084103A1 (en) 2001-10-29 2003-05-01 Comverse, Ltd. Method and system for third-party initiation of an anonymous tele-chat session
US20030093580A1 (en) 2001-11-09 2003-05-15 Koninklijke Philips Electronics N.V. Method and system for information alerts
US6501834B1 (en) 2001-11-21 2002-12-31 At&T Corp. Message sender status monitor
US20030131061A1 (en) 2001-11-28 2003-07-10 Active Buddy, Inc. Transparent proxy server for instant messaging system and methods
US6646903B2 (en) 2001-12-03 2003-11-11 Intel Corporation Ferroelectric memory input/output apparatus
US7032007B2 (en) 2001-12-05 2006-04-18 International Business Machines Corporation Apparatus and method for monitoring instant messaging accounts
US7359943B2 (en) 2002-01-22 2008-04-15 Yahoo! Inc. Providing instant messaging functionality in non-instant messaging environments
US7167910B2 (en) 2002-02-20 2007-01-23 Microsoft Corporation Social mapping of contacts from computer communication information
EP2375689A3 (en) 2002-03-01 2012-01-11 Enterasys Networks, Inc. Location discovery in a data network
US20030187813A1 (en) 2002-03-26 2003-10-02 Goldman Neal D. System and method for identifying relationship paths to a target entity
US6800031B2 (en) 2002-04-15 2004-10-05 Microsoft Corporation Method of conducting an interactive competition
US20030212804A1 (en) 2002-05-09 2003-11-13 Ardeshir Hashemi Method and apparatus for media clip sharing over a network
US20030225847A1 (en) 2002-05-31 2003-12-04 Brian Heikes Sending instant messaging personalization items
US20030236835A1 (en) 2002-06-19 2003-12-25 Levi Ronald M. Network communication system and apparatus
US7111044B2 (en) 2002-07-17 2006-09-19 Fastmobile, Inc. Method and system for displaying group chat sessions on wireless mobile terminals
US7275215B2 (en) 2002-07-29 2007-09-25 Cerulean Studios, Llc System and method for managing contacts in an instant messaging environment
JP2004102547A (en) 2002-09-06 2004-04-02 Nec Corp Communication system, communication server, and communicating method
US7185059B2 (en) 2002-09-17 2007-02-27 Bellsouth Intellectual Property Corp Multi-system instant messaging (IM)
DE60315679T2 (en) 2002-09-19 2008-06-05 Research In Motion Ltd., Waterloo DEVICE AND METHOD FOR IMMEDIATE WIRELESS MESSAGE TRANSMISSION
US20040056901A1 (en) 2002-09-24 2004-03-25 March Wendy A. Method, apparatus and system for representing relationships using a buddy list
US20040186738A1 (en) 2002-10-24 2004-09-23 Richard Reisman Method and apparatus for an idea adoption marketplace
US6996520B2 (en) 2002-11-22 2006-02-07 Transclick, Inc. Language translation system and method using specialized dictionaries
US7418663B2 (en) 2002-12-19 2008-08-26 Microsoft Corporation Contact picker interface
US7313760B2 (en) 2002-12-19 2007-12-25 Microsoft Corporation Contact picker
US7177880B2 (en) 2002-12-19 2007-02-13 International Business Machines Corporation Method of creating and displaying relationship chains between users of a computerized network
US7970712B2 (en) 2002-12-19 2011-06-28 International Business Machines Corporation Displaying strengths of social relationships between a user and other people
US7949759B2 (en) 2003-04-02 2011-05-24 AOL, Inc. Degrees of separation for handling communications
US8712397B2 (en) 2003-02-10 2014-04-29 Guang Feng Method and apparatus for controllable communication
US20040179037A1 (en) 2003-03-03 2004-09-16 Blattner Patrick D. Using avatars to communicate context out-of-band
US7406501B2 (en) 2003-03-24 2008-07-29 Yahoo! Inc. System and method for instant messaging using an e-mail protocol
US20040215648A1 (en) 2003-04-08 2004-10-28 The Corporate Library System, method and computer program product for identifying and displaying inter-relationships between corporate directors and boards
US7412491B2 (en) 2003-04-30 2008-08-12 International Business Machines Corporation Method and apparatus for enhancing instant messaging systems
US7127232B2 (en) 2003-05-08 2006-10-24 Bell South Intellectual Property Corporation Multiple access internet portal revenue sharing
US20050015432A1 (en) 2003-05-13 2005-01-20 Cohen Hunter C. Deriving contact information from emails
CA2526187C (en) 2003-05-20 2014-01-21 America Online, Inc. Presence and geographic location notification
US7069308B2 (en) 2003-06-16 2006-06-27 Friendster, Inc. System, method and apparatus for connecting users in an online computer system based on their relationships within social networks
US7124123B1 (en) 2003-06-30 2006-10-17 America Online, Inc. Intelligent processing in the context of away and offline instant messages
US7512653B2 (en) 2003-08-11 2009-03-31 Sony Corporation System and method for dynamically grouping messaging buddies in an electronic network
US20050043989A1 (en) 2003-08-19 2005-02-24 Shifrin Daniel G. System and method of facilitating content delivery to a user
US8131803B2 (en) 2003-08-19 2012-03-06 Research In Motion Limited System and method for integrating an address book with an instant messaging application in a mobile station
US20050060377A1 (en) 2003-09-12 2005-03-17 Chen Chien Lo Transitory messaging with location information
US7202814B2 (en) 2003-09-26 2007-04-10 Siemens Communications, Inc. System and method for presence-based area monitoring
US20050080863A1 (en) 2003-10-14 2005-04-14 Daniell W. Todd Providing indicators in group email messages
GB2407731B (en) 2003-11-03 2006-12-20 Qualcomm Incoming call screening, control and prioritization in a telephone device
US7436780B2 (en) 2003-12-17 2008-10-14 Time Warner, Inc. Method and apparatus for approximating location of node attached to a network
US20050198173A1 (en) 2004-01-02 2005-09-08 Evans Alexander W. System and method for controlling receipt of electronic messages
US20050197846A1 (en) 2004-03-04 2005-09-08 Peter Pezaris Method and system for generating a proximity index in a social networking environment
WO2005086723A2 (en) 2004-03-05 2005-09-22 America Online, Inc. Passively populating a participant list with known contacts
US7934210B1 (en) 2004-03-26 2011-04-26 Adobe Systems Incorporated System and method for updating one or more programs and their environment
US20060075044A1 (en) 2004-09-30 2006-04-06 Fox Kevin D System and method for electronic contact list-based search and display
US20060168054A1 (en) 2004-12-13 2006-07-27 Ebay Inc. Messaging method and apparatus
US20060167991A1 (en) 2004-12-16 2006-07-27 Heikes Brian D Buddy list filtering
US20060173824A1 (en) 2005-02-01 2006-08-03 Metalincs Corporation Electronic communication analysis and visualization
US20060173963A1 (en) 2005-02-03 2006-08-03 Microsoft Corporation Propagating and responding to announcements in an environment having pre-established social groups
US20070156664A1 (en) 2005-07-06 2007-07-05 Gemini Mobile Technologies, Inc. Automatic user matching in an online environment
US7561041B2 (en) 2006-09-13 2009-07-14 At&T Intellectual Property I, L.P. Monitoring and entry system presence service
US9063981B2 (en) 2007-10-01 2015-06-23 International Business Machines Corporation Method and system for searching contact lists quickly—by group name, tags and/or metadata

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5848134A (en) * 1996-01-31 1998-12-08 Sony Corporation Method and apparatus for real-time information processing in a multi-media system
WO2000060809A1 (en) * 1999-04-01 2000-10-12 Multitude, Inc. Apparatus and method for establishing an audio conference in a networked environment

Cited By (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9619575B2 (en) 1999-12-01 2017-04-11 Facebook, Inc. System and method for analyzing communications
US9819629B2 (en) 1999-12-01 2017-11-14 Facebook, Inc. System and method for analyzing communications
US9813370B2 (en) 1999-12-01 2017-11-07 Facebook, Inc. System and method for analyzing communications
US9749279B2 (en) 1999-12-01 2017-08-29 Facebook, Inc. System and method for analyzing communications
US9749276B2 (en) 1999-12-01 2017-08-29 Facebook, Inc. System and method for analyzing communications
US9705834B2 (en) 1999-12-01 2017-07-11 Facebook, Inc. System and method for analyzing communications
US8417729B2 (en) 2000-02-29 2013-04-09 Jedi Technologies, Inc. System and method for the automated notification of compatibility between real-time network participants
US11075861B2 (en) 2000-02-29 2021-07-27 Jedi Technologies, Inc. System and method for the automated notification of compatibility between real-time network participants
US7885977B2 (en) 2000-02-29 2011-02-08 Jedi Technologies, Inc. System and method for the automated notification of compatibility between real-time network participants
US10164918B2 (en) 2000-02-29 2018-12-25 Jedi Technologies, Inc. System and method for the automated notification of compatibility between real-time network participants
US9432315B2 (en) 2000-02-29 2016-08-30 Jedi Technologies, Inc. System and method for the automated notification of compatibility between real-time network participants
US8930406B2 (en) 2000-02-29 2015-01-06 Jedi Technologies, Inc. System and method for the automated notification of compatibility between real-time network participants
US7401098B2 (en) 2000-02-29 2008-07-15 Baker Benjamin D System and method for the automated notification of compatibility between real-time network participants
US9049159B2 (en) 2000-03-17 2015-06-02 Facebook, Inc. Establishing audio communication sessions
US9043418B2 (en) 2000-05-04 2015-05-26 Facebook, Inc. Systems and methods for instant messaging persons referenced in an electronic message
US9461950B2 (en) 2000-05-04 2016-10-04 Facebook, Inc. Providing supplemental contact information corresponding to a referenced individual
US9621493B2 (en) 2000-05-04 2017-04-11 Facebook, Inc. Providing supplemental information corresponding to a referenced individual
US9699122B2 (en) 2000-05-04 2017-07-04 Facebook, Inc. User interfaces for providing supplemental contact information corresponding to a referenced individual
US10158588B2 (en) 2000-05-04 2018-12-18 Facebook, Inc. Providing supplemental contact information corresponding to a referenced individual
US10122658B2 (en) 2000-05-04 2018-11-06 Facebook, Inc. System for instant messaging the sender and recipients of an e-mail message
US10313297B2 (en) 2000-06-26 2019-06-04 Facebook, Inc. E-mail integrated instant messaging
US9628431B2 (en) 2000-06-26 2017-04-18 Facebook, Inc. E-mail integrated instant messaging
US9071725B2 (en) 2000-07-25 2015-06-30 Facebook, Inc. Methods and user interfaces for video messaging
US7984098B2 (en) 2000-07-25 2011-07-19 AOL, Inc. Video messaging
EP1239652A1 (en) * 2001-03-01 2002-09-11 Square Co., Ltd. Teleconferencing method and system
US9083661B2 (en) 2001-09-28 2015-07-14 Facebook, Inc. Passive personalization of buddy lists
US9729476B2 (en) 2001-09-28 2017-08-08 Facebook, Inc. Personalization of recent contacts list
EP1345397A1 (en) * 2002-03-14 2003-09-17 Avaya UK Instant messaging for called party notification
WO2004049683A3 (en) * 2002-11-22 2004-07-15 Intellisist Llc System and method for providing multi-party message-based voice communications
WO2004049683A2 (en) * 2002-11-22 2004-06-10 Intellisist Llc System and method for providing multi-party message-based voice communications
USRE48102E1 (en) 2002-12-31 2020-07-14 Facebook, Inc. Implicit population of access control lists
US9742615B1 (en) 2002-12-31 2017-08-22 Aol Inc. Popularity index
US9736255B2 (en) 2003-03-26 2017-08-15 Facebook, Inc. Methods of providing access to messages based on degrees of separation
EP1638306A4 (en) * 2003-08-07 2008-11-26 Tencent Tech Shenzhen Co Ltd The system and method implementing network telephon communication by applying the instant messenger
CN100450136C (en) * 2003-09-12 2009-01-07 腾讯科技(深圳)有限公司 A method and system for instant calling of instant messaging subscriber
CN100438544C (en) * 2003-09-12 2008-11-26 腾讯科技(深圳)有限公司 A method and system for instant calling using instant messaging
US10341289B2 (en) 2004-03-05 2019-07-02 Facebook, Inc. Systems and methods of calculating communications strengths
US10367860B2 (en) 2004-03-15 2019-07-30 Oath Inc. Social networking permissions
US9727631B2 (en) 2004-12-20 2017-08-08 Facebook, Inc. Automatic categorization of entries in a contact list
US10681170B2 (en) 2005-08-15 2020-06-09 Oath Inc. Systems and methods for determining the popularity of a user based on aggregated popularity measurements of other users

Also Published As

Publication number Publication date
DE60132433D1 (en) 2008-03-06
EP1264469A2 (en) 2002-12-11
EP1264469B1 (en) 2008-01-16
US20020023131A1 (en) 2002-02-21
US20130073649A1 (en) 2013-03-21
CA2403520A1 (en) 2001-09-27
US9356891B2 (en) 2016-05-31
CN1448019A (en) 2003-10-08
JP4467220B2 (en) 2010-05-26
WO2001072020A3 (en) 2002-08-29
CN100401733C (en) 2008-07-09
US9049159B2 (en) 2015-06-02
US20130073650A1 (en) 2013-03-21
US20130080550A1 (en) 2013-03-28
US20110320553A1 (en) 2011-12-29
CA2403520C (en) 2008-06-03
US8041768B2 (en) 2011-10-18
ATE384399T1 (en) 2008-02-15
US8429231B2 (en) 2013-04-23
JP2003528543A (en) 2003-09-24
DE60132433T2 (en) 2008-12-24
AU2001245826A1 (en) 2001-10-03

Similar Documents

Publication Publication Date Title
EP1264469B1 (en) Instant messaging with additional voice communication
US20190028673A1 (en) Video messaging
US9571560B2 (en) Direct file transfer between subscribers of a communications system
US20170339079A1 (en) Passive personalization of buddy lists
US20150222575A1 (en) System for instant messaging the sender and recipients of an e-mail message

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

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

AL Designated countries for regional patents

Kind code of ref document: A2

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

121 Ep: the epo has been informed by wipo that ep was designated in this application
DFPE Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101)
AK Designated states

Kind code of ref document: A3

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

AL Designated countries for regional patents

Kind code of ref document: A3

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

WWE Wipo information: entry into national phase

Ref document number: 2403520

Country of ref document: CA

ENP Entry into the national phase

Ref country code: JP

Ref document number: 2001 570058

Kind code of ref document: A

Format of ref document f/p: F

WWE Wipo information: entry into national phase

Ref document number: 2001918787

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 018082122

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 2001918787

Country of ref document: EP

WWG Wipo information: grant in national office

Ref document number: 2001918787

Country of ref document: EP